{"_id":"@balena/jellyfish-test-harness","_rev":"4509-79f00cbcc7e152536a480e48427ba5ae","name":"@balena/jellyfish-test-harness","dist-tags":{"latest":"9.2.12"},"versions":{"1.0.0-add-integration-test-harness-bbea8d6c0c9bac9d77e247c46ed32f105691bdd2":{"name":"@balena/jellyfish-test-harness","version":"1.0.0-add-integration-test-harness-bbea8d6c0c9bac9d77e247c46ed32f105691bdd2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.0-add-integration-test-harness-bbea8d6c0c9bac9d77e247c46ed32f105691bdd2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c28f0685e0efbdaef6f9d62c3a7d410e31949cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.0-add-integration-test-harness-bbea8d6c0c9bac9d77e247c46ed32f105691bdd2.tgz","fileCount":18,"integrity":"sha512-Yq8oaNPoGIM51kB+OC0QU53UYI/iAr3wfJTpFvsGy3v4mGyt7qvck62U4x/1aCb5iCHEs9mpcehg9W+RIi6Qpg==","signatures":[{"sig":"MEUCIQC1QBJSUPJiYJNnx/z7T9qqkPQ9scaqLcDIyzjb1bbGhwIgVhnf/2+rJZwDdta8/EB4VZtPC1igoGwS+dxxK32SVAs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40912,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgK5grCRA9TVsSAnZWagAA77kP/jsjmWk22RP1VUJNtb8X\ngc4gILXDwMuuiCbeXOMaP6YdDXmRwTz+Uy6GD58wbY3//JqHmQs1CGMfy5sn\nKH7httNso3KfhBA5891Ta4TiyWJhnRDtdIPKw885e7Z9RB2VWCbKipMTkSiB\njbwOWQJ9mWm3cDVHn4ODrzU7tF40krAlUxYAvKmZ9U5Xx7Dbh1kVCKEagSoJ\nsVxozAivIe9P9gkAnIJapgJn+aWSP7v0vN0eHbZ+OzuaNmeIFR+BIvQ+oxSG\nM4tLTo9Cj9cEGKqxltZx3+FNjLAPpb6grhwOhUu63cW1qvBS3NdawgBKjyAs\nr2Rpdh2CPuUE13SlC76PUDPgtuAI7W6gGS6rE/1Xapc4R99E26Qs3SPca3Ew\nlsgdjo+psqkI57s8ka3AHea2T0c8d10Q9RYn//1CI1PPi6iTJYOUc5u8WaT8\nKUCLoBzuBfqGOgJxLO+Ba1+3L+mAseLYPcgiAhCeVHpxAOBcg7S5Z9OH/mUq\nToIVo1eydzug+WsLeJf5GVyJhEJ9ZR/fagY/G6U+trBR+YlJh2KIHWyfFLLU\noiiIVb67JKKYUlP2ISVgfJaPJuhnYdMqFUtYBe1qTG6iuFpD0oCeXyKkR/UO\nlXnoz2PEXUmNoL8lnRr2tdwdJ449YT94g58HvNNN0h9CrrfaMKnZyLwfr61l\nHEnl\r\n=KuOC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bbea8d6c0c9bac9d77e247c46ed32f105691bdd2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.7","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.20","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^1.4.35","@balena/jellyfish-sync":"^4.2.12","@balena/jellyfish-uuid":"^1.0.61","@balena/jellyfish-queue":"0.0.408","@balena/jellyfish-worker":"^3.0.18","@balena/jellyfish-environment":"^2.4.9","@balena/jellyfish-plugin-base":"^1.1.16"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.0.8","eslint":"^7.19.0","deplint":"^1.1.3","depcheck":"^1.3.1","lint-staged":"^10.5.3","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^6.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^31.6.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.2.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.0-add-integration-test-harness-bbea8d6c0c9bac9d77e247c46ed32f105691bdd2_1613469738837_0.1498556356627183","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.0-add-integration-test-harness-8fd12f132561e4fcca3ab38f4aa930d8f8132432":{"name":"@balena/jellyfish-test-harness","version":"1.0.0-add-integration-test-harness-8fd12f132561e4fcca3ab38f4aa930d8f8132432","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.0-add-integration-test-harness-8fd12f132561e4fcca3ab38f4aa930d8f8132432","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de71156c8e66caecae9869cc6aa02656a8dfc9a5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.0-add-integration-test-harness-8fd12f132561e4fcca3ab38f4aa930d8f8132432.tgz","fileCount":18,"integrity":"sha512-rmFHyCNNNrqISbyZdPYpJuMnREEM7Z3/p/1ihycWLmm1iSlIkdMSDJs+dJRNJ/wSurgEY9aYzh1qWSIMGJpk6g==","signatures":[{"sig":"MEYCIQDONmz4F3B81Nqv4Q4kaq1LWBAl19xsMa8PSATbZVfEgwIhAJbHYhI5CseqlsRufAYoKeP5e2nEMg6dVcxntPIK+B19","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40077,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLPNhCRA9TVsSAnZWagAATJMP/AluVMLtJPQXALY9wxuf\njua6GtRPFqUtcX5/+rICLsC6d3BMU34TGkvgre6mgjV6pha+DfREzE0Fzgtg\nt8u0Zwfyq5akZ1ILJgBFdJUbhTcAiua79N3kzBu+U5fuA4t5CONtjerODzwQ\nwfJedg6t+aKncDRZy9NIrOuHr67Ycsk379pn8lkz6+U0F0gSRBJx7k7RpoOA\nz1CfWPCQQHFfcqiCOnz4Lw4u1eIfCY8WrJqgcayh8PvRxqBlduupjAg1RWN/\nhaSMiN+stQBEECJrt76JrbLO4snepcVBKC8hWHx/13p/qk+YnBw5xGFdOa0D\nG1QlKeNGYmqn0N6h83dzWLBNq2/Tm9WOueau5Sag+mEvOiWyO2mVUiN/HbYB\nPMuMJh4YnUB+n30dXzaqFoqj0NZ4JHPlN4PbXTLCFdxXomz0oHidhFzc5Ppx\nyA021KrGIRYfFeF3Qxy0kT+Sye0tDwNQHiBuIJk/Dwahv+naQ0PBE74sMBRk\nWLLNq9z78s+y3+ur+b5RSXrlBpgKyeeR3oCxcfJSCKoTSowFgZTavDWi6kUj\nozFl6iIvAkvY+8D6Mr2VvDxKJaDhQoQP2CmKsOKyMzJ6aYSCFwmQSulho7og\nb+kyjjeIH7mjcHU59GG+v1z/OB+JcZnYEUpm/Wiv1iucRGrccmnUu5rWdO8+\nuq70\r\n=XSOi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8fd12f132561e4fcca3ab38f4aa930d8f8132432","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.7","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.20","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^1.4.35","@balena/jellyfish-sync":"^4.2.12","@balena/jellyfish-uuid":"^1.0.61","@balena/jellyfish-queue":"0.0.408","@balena/jellyfish-worker":"^3.0.18","@balena/jellyfish-environment":"^2.4.9","@balena/jellyfish-plugin-base":"^1.1.16"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.0.8","eslint":"^7.19.0","deplint":"^1.1.3","depcheck":"^1.3.1","lint-staged":"^10.5.3","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^6.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^31.6.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.2.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.0-add-integration-test-harness-8fd12f132561e4fcca3ab38f4aa930d8f8132432_1613558625535_0.7270162903674906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.0":{"name":"@balena/jellyfish-test-harness","version":"1.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a7a76a5c1967feb48ce0aa02da43c28ef73d9dad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.0.tgz","fileCount":18,"integrity":"sha512-DrV/gWxLDm7Mn8YONKzdtTzP4yYYaqVCBwZkDiSGrvwfiV6im5mciofQl1P5nYHAC73FN9qUq2621T7Oc5dlBg==","signatures":[{"sig":"MEYCIQCdaOkemT/2hCJbKe787raLEbt9vffcpHaKH86hst0rlQIhANBR0tIrNGFYYPeUhCtQxKVIdz7zlYf0ZGMFmFtPhbYk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40007,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgLdLuCRA9TVsSAnZWagAAnIMP/20FT/ZXbPX0xf1VGvCi\nedjFZrkSTk3U/nId5HmM8vywA7lxfbRNXGZO11YOoMTjROd3XhEZ616v74v2\nfN4BiAn3j9zPW7T2+8Aruoa+iC+3rS7OS8yBU9JASJwUGEd/iBdZ/dF2jKrS\nd8dGjeVD2zn7oky4wr5NjTUuu6RfLbToX8KbicNQr1VnKu4NGc6HJDVmhzR8\niw/CVpg5hUTlz9Z8g56KDUBiyJ3vHHVRXYlEhXPymbuOq3LHVd+2Qk/UG5g6\nECEaEw3lS2YatT/6zcRxliMBp7aItzf+pSMhDTYHYuLEE+N7xhL7j0SsLW/D\nTxfaZvlofOWvUpjiQUBmPxIltSePBOFy0qmhJIr05np/QDiT8YOL7ZhsxieZ\nuoXh853efgxDpzvkqVq6iRmwiYn6wW8fWwe7Ijclxvlq662D+cY8g7c94+/b\nM0hm6PutwawSKRdcWhJFqLH4zgWrS7JxUOwTYB6SUBfOyZqK5hMUsMXkpYWN\nVJEJkKGA+cYKgLWmy3GskxbsZK/0LbDCVvHb2AwHDkfmwI+Y88DfEp+zx4Ky\noGtGdg9ivk0HouT0ET58afmL3ZfiptLeC4AuKIclVffCmXrKJ4OK25Pupj1P\nsM1WJWsnzWge+0fHzK00d37wY5eHfQTKTmVWRvPV1g9KspGmoU1fG5G4VbYG\nhya1\r\n=rY7c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b3c3ca8e5db66b6c2b55e71f4e523a3676286f0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.7","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.20","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^1.4.35","@balena/jellyfish-sync":"^4.2.12","@balena/jellyfish-uuid":"^1.0.61","@balena/jellyfish-queue":"0.0.408","@balena/jellyfish-worker":"^3.0.18","@balena/jellyfish-environment":"^2.4.9","@balena/jellyfish-plugin-base":"^1.1.16"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.0.8","eslint":"^7.19.0","deplint":"^1.1.3","depcheck":"^1.3.1","lint-staged":"^10.5.3","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^6.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^31.6.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.2.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.0_1613615853712_0.7023185000281296","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-evaluating-links-40d43fc31c2e302eeaf104d01200f58fde7fd255":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-evaluating-links-40d43fc31c2e302eeaf104d01200f58fde7fd255","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-evaluating-links-40d43fc31c2e302eeaf104d01200f58fde7fd255","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"89961a7ead8bbce1ff01f146e898d7b557616aba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-evaluating-links-40d43fc31c2e302eeaf104d01200f58fde7fd255.tgz","fileCount":18,"integrity":"sha512-0u8O7cuJGq/210aAF6DzWn7eY0iL+p+jU/Kgfl40khrgwiYeazbMMMc0t9cK8yliskuROWxK7Hk4k85unWRqfQ==","signatures":[{"sig":"MEYCIQCQN0p9lvyoZG+GEbPkuFX8+kGsVLt4x1nZV51yulhNTwIhAPMeF9W067GkwaJ9chRF+VydfsDGQWmlOzXtDA/KRzT+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPnKWCRA9TVsSAnZWagAAgi4QAJgVStlqZ6QJJjx4rZcD\nyT/bAlb/ZAyYGJPN+KaL6hFIqbFaMjssWniJQlegmR/eK2Y6SzxIxPHXITeJ\nEG4evHW5ez6zDU/vYLARgc+eiALt10YNOYVF/yN7IOGyiNIDQCm5wmR+2gyp\n5mX4N01eb4fl5A33o/8Dbsz1JeWuoF4HqxES4uOZy4thQ82AGkjewEONedp+\n6ZZ1FOHkr18QL//dMzpiwajVI/5Ckrbp5ruDVTFcPYH5hxwHZhiZaC4v1VBo\nEEeoeoeauv+NhNk8anqpyZ9OxHOuypj0YLOCDkQ7BRKgj/qkfBsc8oP3T9bX\npbaQ/iP7mtqt1GuYuhWu1ODRg2OXfzoqqpn46wIB9+k/keMpZqc5p8FaT39F\nc0KHVwal2oBGhYBoNInu8y4A2vGh7bce1h97td7kACZHZUCy2s25zpyP/mg+\nx6peaL413yxr4mFZL0TLg/PMutqzqgc4GCdaKZ+PlN0+gDSYhPIrg9vOmdOi\nBwSSuLgQBKgKvIxXtar4r3T5Es+4z4PgXMK/vQJGoaiSGr2XgtXv/FDdLFuJ\nZeoX6LEEYPT9+XwIL5g+a05rxVcuQxlPD6ET9s+VddQ/vPSTUxmbn4WUamG9\n723p1bV1jt6OvrEB4OVBrSP21KJZDX3zgN3gYoxqY9GfrnlEuacjbZVQmelw\nzT+T\r\n=48Uy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"40d43fc31c2e302eeaf104d01200f58fde7fd255","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.7","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.20","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^1.4.35","@balena/jellyfish-sync":"^4.2.12","@balena/jellyfish-uuid":"^1.0.61","@balena/jellyfish-queue":"0.0.408","@balena/jellyfish-worker":"4.0.0-evaluating-links-33f197c4073a9468d5502d0e55a73a04f435ae8e","@balena/jellyfish-environment":"^2.4.9","@balena/jellyfish-plugin-base":"^1.1.16"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.0.8","eslint":"^7.19.0","deplint":"^1.1.3","depcheck":"^1.3.1","lint-staged":"^10.5.3","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^6.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^31.6.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.2.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-evaluating-links-40d43fc31c2e302eeaf104d01200f58fde7fd255_1614705302231_0.5495952255904575","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.1-test-trigger-contract-matching-54aec625c55121119684c9d30e297f5db5be4b14":{"name":"@balena/jellyfish-test-harness","version":"1.0.1-test-trigger-contract-matching-54aec625c55121119684c9d30e297f5db5be4b14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.1-test-trigger-contract-matching-54aec625c55121119684c9d30e297f5db5be4b14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c6f5f2690b749eae20e318ccc76b325b0facadc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.1-test-trigger-contract-matching-54aec625c55121119684c9d30e297f5db5be4b14.tgz","fileCount":18,"integrity":"sha512-66s1r9wqs3mKNxNgnJSVBVeQEa0fWstfbFLnzdl2IAvUMl8SeIJqQCWv3F/pz5qjs3zQdesdWALAbrJ5Iaebvw==","signatures":[{"sig":"MEUCIBWz2/6IsHdZKKWTGuJvb9cgN/UMhGz61DJ0kpsJvvhXAiEAwdqS6nojWIpCsCaTbizJYwOGssWoajYQHlG279YfNYA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40219,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRZDGCRA9TVsSAnZWagAABXIP/0AOdURA+wLS8+k639bj\nexGjPpEQDAkx+WHO/52istCgBG8/1Xxc1MtQBJYTqdSO6pzUzzjPHfJYK+pT\niZqg3kYceXCh/5mJtGD4xY7ovUqcSapPreBd1K3cUbV6bgGZVyjCLXY+GEvx\nbZ4aFrx7+ruy21HVWGJobjiu3tv0O5uWQCSFqgXwy+GA8pkt3+Js4E1OGvOg\nqRiU3IhDEX7NV6btzkJ1/V2q/XI3e/X7+DT5pAo3xLKCBsXpecDXGIsUaXkw\nzXJ+cZbWRkn7hqxE789ds508BsSPwgdUnICcBSZS6as4pSe9wF8qrXmNb2rk\n7BgnNwNwTHVR5of+gTMuXxc8jeS3OhBqVts5YFesnHv7vLANGYoviU1VEttd\nhInwXVBSCCATRroM9oI043pLQLIPKOlZtfQpzsbGlgoh/xILZj9/NKWXlc/C\nWdOWyxA92a0N4diFcYbG5Re/IL/gs/a8aGdUPYSHBNCt56kZtjmAs+Fm+G3T\n+kbBwksRGC2kXZAH8IQHop4XMaqUPnRRq+9nb7t4LpSsrBSGCZN+uOFkukwK\nsvmCSNpwJFAvNnW8ZLfH5ElGRd7Qze3GA0RJU01p7eBhCXYk67mmnrIsUf3f\nNAz8UJPoh5/rX8kYWqL6kS7kMddqVKzwt2pYIA7hb9FuNNT98eGwCcCgBrHx\nrwvN\r\n=JkOQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"54aec625c55121119684c9d30e297f5db5be4b14","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.7","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.20","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^1.4.35","@balena/jellyfish-sync":"^4.2.12","@balena/jellyfish-uuid":"^1.0.61","@balena/jellyfish-queue":"0.0.408","@balena/jellyfish-worker":"3.1.6-trigger-performance-e3a400b4f37b1afaa7855f5c50df2cdf378f9151","@balena/jellyfish-environment":"^2.4.9","@balena/jellyfish-plugin-base":"^1.1.16"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.0.8","eslint":"^7.19.0","deplint":"^1.1.3","depcheck":"^1.3.1","lint-staged":"^10.5.3","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^6.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^31.6.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.2.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.1-test-trigger-contract-matching-54aec625c55121119684c9d30e297f5db5be4b14_1615171781438_0.6574724233949982","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.1-bump-dependencies-manually-f6ccc95027669bc5d0073a66fad16f724a1f841a":{"name":"@balena/jellyfish-test-harness","version":"1.0.1-bump-dependencies-manually-f6ccc95027669bc5d0073a66fad16f724a1f841a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.1-bump-dependencies-manually-f6ccc95027669bc5d0073a66fad16f724a1f841a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c8f46a01c36cd27ceec259929a6a1aba73e9429","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.1-bump-dependencies-manually-f6ccc95027669bc5d0073a66fad16f724a1f841a.tgz","fileCount":18,"integrity":"sha512-W/GR8T/Mim2k30osujos7Kufxgw4evvd6qrJNRVkBvg//yNq7QI4p1gWhvrL7AeFu0/OWhVe5jMY4hu9BLauEQ==","signatures":[{"sig":"MEUCICwfgTknHAm6nsRTeLr3uIORGrvFEknxJyT1LdTpeK3YAiEAgHuR2tXkkpJ6MghrmT8ristfI9yoiL0FHeGRUohaeNU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRZeFCRA9TVsSAnZWagAA5/YQAJJ+72j30oFOzrCzeb8Q\nsyR3sDjKE97sYt7vBo9TEdB40yLJdNdPCB+SZW4LV9EajoPVrYOpjfN0j0XE\nhTc8v14drClhDmwJXsU5bVAmeTQKZtJc7+uu2SfnZU5BI9GEPBYP+m3Qj3Vf\no09vOlnYom1pmTHxOgXPhukDiTYV0AD+l/Cv6UfQhao7OUwCv1LIQ+LK/TgE\n5eocarIthmCn/rd/jrO16dmZSs7Alv6EwNRO9oZ6fdjjR0MrUPJTwMwJYOl5\nPe4ww0IK0JHq5uwC7QZQKcnIqMMJzVPtGBilWsbeW+UM7jL6prMg5PWFsJUF\njRs1vx0GZGUJ7jSYQ/HJi4jZGl3r6AmjgJT3Nus2928HGeDh8TQpJVzlpMqm\nFNAlzEnutIz19Oh+T1g6+HglR+4alzS84c8c2LIDMhnDVnrC7oUomOQsnMaE\nvLx/UNIFTsLkq36Lo0EUtQUpjORYGHgaaKe6AQlqWKsMIHYEhwbZHA0qaKm2\naWcEAIwSgpbHK6hUr5BaT5eFXo3MECmTmj64LWoajwgNFTTrGz1Mqo6yuBT/\nBZkLy8ve52+8L6IqYbIPAnPgsfKvM8IUBzaptvWZwqVYCkqzOio9wgs3PpNb\nfJEPfsfIoWnKIuP5msbY0OhbswYvnvHnkgjL1yy07VkY6NkSrij8njGGZtJN\nk+dj\r\n=/Zoh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f6ccc95027669bc5d0073a66fad16f724a1f841a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.5.5","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.5","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.1-bump-dependencies-manually-f6ccc95027669bc5d0073a66fad16f724a1f841a_1615173508547_0.8449488753383756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.1":{"name":"@balena/jellyfish-test-harness","version":"1.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"488d3f04535eef297bdaf80e5ab61f0377a307ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.1.tgz","fileCount":18,"integrity":"sha512-7lJ5FrH+3i1HUUm4ZBWV1FnIjBRTG/FecOLfLVKwWXeAl0u79fB9k/URqw3nZuOEolIfDqufjxQSySulMNiPGg==","signatures":[{"sig":"MEUCIDFUPZvth/bQRiBCdFtTNmq0lwMtmcuB5dY8+AV8APTVAiEAvZkY2WO5wrbaJlVe47xsAfpd3V/8q6y0JURN3v/82qI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40090,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRZgxCRA9TVsSAnZWagAAXskP/2G7LouV2EVqLK86kvVM\n9BZ8Y13ONUkg+kaPdJZT8jKKQFan33xMniS+h1swWThhUGdtzT9aa0vuy2mw\nfPwyEd7lgPa9Gaz04MFmBZ7vGDJLsAfIbleIDWY2eMpa0GyUjCV7K8mQBMmG\njRoVt58gt3pO0a2Y+dFzH1IVJ4TCyyyTCHffBwD27AK70zl3iXd56xlrBeAs\ni1YV0QhRzN3pCFq4lSxS8bZWcAWOVcUYPh0XidL4uKvkN9rri+LozirnByeb\nwoSyHMHwkE3wljxei3M0iYYZqwfwV/UjvXnFFhFn/29UJZvbxvgbcPCFnE5N\nlAh14RuvWp7qPgZ/EnbYFIZh2xyWbYANiFN+8/R/zbsYAzPxf+VOjRHkxm64\nsBdXm+UsWx/NzCTpbD61w6acZpwL32jQAGhdM19DH8QTSJjeX6keWMJ4VctA\n02kN7SGiBmlay6SJP0zqTlxlc2hsjydUCbhMsNnFKo7i7MlPSorauZQTgJUu\nQlbAjjy6sSmnDrC5E3LTOxEmNNuqeTcFHONt15gb+lydd808gk2lIzdWAqgX\nTMN6VR2aLVYYwEpKn5eXRTZ1sJLoKreok9K/F0taHldOpXMzOfef2lPK6+8S\nvmj4ZBR8atCoViqXQmPSlVJq5eCI3yDhY5jOfIFR/8oA1KaohoFlCt9mts1O\nmZlc\r\n=UgKC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bcc73c83c67937a902ce23774c84ef53e4749628","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.5.5","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.5","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.1_1615173681235_0.22043302650726915","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.2-test-trigger-contract-matching-19cfc0d87965b7f364589b0575e6b95494d12e9b":{"name":"@balena/jellyfish-test-harness","version":"1.0.2-test-trigger-contract-matching-19cfc0d87965b7f364589b0575e6b95494d12e9b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.2-test-trigger-contract-matching-19cfc0d87965b7f364589b0575e6b95494d12e9b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb5e56a6d815255b913053d899896d336dbf43fe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.2-test-trigger-contract-matching-19cfc0d87965b7f364589b0575e6b95494d12e9b.tgz","fileCount":18,"integrity":"sha512-rxcDqk/7vHefTevt9NoLHjoWuduHYXCMZ7kcG9StcGr6WJrVAo38WiisvM7h/NgCQrpTOgOffhSMZHQqQEom9g==","signatures":[{"sig":"MEUCIFiAbBIZ730sRHUuLcuMNcgCrDGE0VYikfi22PfVU5m9AiEAtLgtRhH2hs5sgPqY+mgp9FBiPCXgP0WX9AFgizjRrbI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRZmLCRA9TVsSAnZWagAAXeUQAJLHY0L7rpQ+Qbz33sg6\niAkvwccn6ENm5RVOZJuQ3k9QbuLolRESa1QADCsb9uHz+FMm4h8OEiFEyxT+\nGkNeQJOh/fvHs7F5hZobVMWC+2txcgPEN7dhFpk4pxdnOEpMzPiX0IjJBDif\nj2VPLFH0rIB3svRERJ8Hhz/yOp8wjOuZv9qPGCQ3Zhk/vNsJNhPT4LvQp36k\nK51swfFPagXjDgccizoUM81w/8A94aCi0It6Z4ksqRzN/sBzoM8G9uV9sfoZ\nBotv0jKZtxlIUG7dSdtSaXTJemWL+gpiMM+ISStJDFe5ZSFvi8wsbWiHtOEu\nek6lQNMSCahU9DuC11QDLVrBmG80bbNYOfuoVYqNoQDHUVmNgm1Lq7/DyLlj\nAdASEetbCc5C47e+IZaIuM7Tdu4fZW3JQhdfX1gPjLCZViw4dYKno33fYhPI\nV+8DolSESUQ8ZP/9eAViKP+OsZZuOp1O0Htdo+fKPlJWnJNVErZb2QvpurCM\nQBDKyJX4mB/QVdvAzanBx2w+tlumEum9VNWclrvxsZTccEws2CWb7S6PuuZ2\nQXwuilLuFTTLjQ+EzuG9Aca0ttOOHwxJs01SxKQ3gKrg7R8anfBg99y84f//\nrKA/uGCwmEG65tcBQq2G1jmAxqEZNyB3WPwQTf3meJkUSryd2diAwRvQoHby\n2fMt\r\n=+lMP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"19cfc0d87965b7f364589b0575e6b95494d12e9b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.5.5","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"3.1.6-trigger-performance-e3a400b4f37b1afaa7855f5c50df2cdf378f9151","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.2-test-trigger-contract-matching-19cfc0d87965b7f364589b0575e6b95494d12e9b_1615174026936_0.6225213072590194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.2-update-renovate-config-1cb25560e0d4448707c994217fb8aa3a5e341e80":{"name":"@balena/jellyfish-test-harness","version":"1.0.2-update-renovate-config-1cb25560e0d4448707c994217fb8aa3a5e341e80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.2-update-renovate-config-1cb25560e0d4448707c994217fb8aa3a5e341e80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c6a39ecfa8159347fc54f4d41a3077d740f488f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.2-update-renovate-config-1cb25560e0d4448707c994217fb8aa3a5e341e80.tgz","fileCount":18,"integrity":"sha512-C+I1BGXQy06ihawbta6NS9R9FPTNw/E3Ttwy76LXO0LOE1mSnj/mrOjNMVFUE7nHQoUsnvbCwRVC+jHKdMtS7Q==","signatures":[{"sig":"MEUCIBn9+bXBLcG+ZnDra6YSNFQwm3OiAYYnq75Ave8whYO/AiEAvWK7x5IgylupGDpgPvLtUNzJWvIUHwlkokAHFHNySXM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39378,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRayTCRA9TVsSAnZWagAAxQ0QAJt7FrEG1aVwN5vuVNRU\ni4b6eacXzvXBXR52DbvPBaeBOxr5TUTC9aNKbnfuAww9O3dU9+RcjcY/2Vii\nmCfGEL77GDLqYHhnytyg/fp6T4Lp33Cu3KF8HMiikE2Uesp6NAKZaChvi0tI\nQRdaeIqOB5Zj6lq4B8xKT5HMVNCvHjDkdre+Qd9ag1q8wQBZ3Jd8tOddL+7N\nvMGnWu0YQyQTiOz/PXZbOGmvpNKRFUygTuDezOC2/b8u9IV5mvn79XHSiAcy\nUl4nEQf/WsWuobqX+0ZhnP7u7R8h0fwcyu/O4lBT5NjcR7iCO8iLs5QARmXB\npzPJSWju5Z7R3Zo0mKP8GeKsArgaM4vzu3JzBpnjcVuHy9uUlmVPHAtaGFuO\n7Z97DsI1AUIfR7pNUO5rigd1lQRtX4lfJofqXHmNeocWPf9nvwltQMXJ3Xmk\n9jvu/rFMd1+LWIH1ccsc1zStEfCgMJYDE5r8V7X55fczTJfTSqGoE5qYS7pM\nfjl+WdDPMI+C2pMCEILdRcfs+sy5MpsiZiOHP+eE4jldVoh0m618etBy2sLD\nTEzaaQAYM1mmPKEiupwu05xy3qy5xb4nBDFuHg6xs1bdRFDF0WVp8ciZx91y\nlGxYHXTlLATSi4mMajWR49+6P2laCXnSzUwebsEsQAs4SfyqUrSgGwBdvIV7\nHLpg\r\n=5SE0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1cb25560e0d4448707c994217fb8aa3a5e341e80","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.5.5","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.5","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.2-update-renovate-config-1cb25560e0d4448707c994217fb8aa3a5e341e80_1615178898889_0.9844402694037198","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.2":{"name":"@balena/jellyfish-test-harness","version":"1.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"67102700d0197081bf893f543a8c8837e071d4c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.2.tgz","fileCount":18,"integrity":"sha512-Pfr1DS/dU0x0pIe5uQ/vqixKQVg53JXv8tbgHLqeU6NQnuCT3UgJzD6cUVRJvwbwAThUkhbJTaJlOOLk7ru9yg==","signatures":[{"sig":"MEUCIHN9bcELqpWuzYuJGtbfvNDg8jrPXf3FHnRVs/SCk1vZAiEA8sQzCwGVWnW4T711byr2HJbsT5ul28PXCH1g/KknEzY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39314,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRa1kCRA9TVsSAnZWagAAAdwP+gJD1WCJb8hGPqcKUHij\nGMkH0UthZX1AQ54I36FR/15S5fZZSPaMYRlkKmB9uZeOQ24ETeGHY1+vOfqV\ng4CU/lp1szmYTtviofn5ZC/WMy2WCdgJDMQ8jXu9QJjq5tq8r9wNpfTVHtYv\nBs01RcotipgP+ZQR/PlOOdKJtbLkMaIOjERzvhWN2u7duOJ/Th8ohB1JBau/\ndLO2aAadTwaDuCRtVlQdEMrz0F6aFdINO5Q95LO1qElz1XEUlj//eTzJi79z\n8XJV+gG7eG6U36mfgnyNSkWpBk6yAxcusevh8XHLIW/vWkwgxBlv3EwzaN9P\nMGP1aRxn1KF8Xmc2ULeNKrCdTRSljMeuKzB3V+yIwTtebfWwey/4q6fvnWqj\nKRr/x4JKSVyJqfL5whCeuQL8P3aFVFnA3FI9LpwMkFjNCgpv86lA1T+I9zLu\nXqBjlNDcKcBylo2S7fNSAnJK/EMQYZDEd3vPYgldwRavXPeVfNB6Jt2TzrvV\nML5gEP+wJwUMvUYfSLFT4biabNDk36hTWZLQxhFekA5UZ61ZNIe6AOY79Tii\nSc7q2YV142q+0wNtbYz2i4M4dM6ok6ZaRux9n5IYiZPqe0rWiv4OKVk2yo24\nEDHfqJiJ53GIokIO1Mp53RlOn7fuGNjp4mPNZMjz7VPtVbAjdnCXutXc9X9N\n/mWc\r\n=/gvf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"93a602e1403229a6b8e103252e4d4847384ee607","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.5.5","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.5","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.2_1615179108510_0.47637720155330765","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.3-renovate-non-major-2bf0238d2bc416351bf91282bd8875f0b9c6b508":{"name":"@balena/jellyfish-test-harness","version":"1.0.3-renovate-non-major-2bf0238d2bc416351bf91282bd8875f0b9c6b508","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.3-renovate-non-major-2bf0238d2bc416351bf91282bd8875f0b9c6b508","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d8bf287c93b97cae2ccbacbb204e99935d82fe9f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.3-renovate-non-major-2bf0238d2bc416351bf91282bd8875f0b9c6b508.tgz","fileCount":18,"integrity":"sha512-ol99HVGYpR4PhSp2S8fCmusY2nv2ts4WkVXLyiJNtjw0Tw9qbSaYP4os2/P+kfp8zKFWBLU/KfX3lkiiEOo1ug==","signatures":[{"sig":"MEUCIQC9oT/E1uA+XzirK1PmKaXs4kBQu/cqsHdgjNWLpc1fvAIgOelWcQYxiiW4LXk5xKzDlLoEQqC4rCk5lBb58ut47b4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39478,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRehGCRA9TVsSAnZWagAAZaAP/RU2kGIZ/MQwCdMeaKYt\nkyC8qT65YBfjDwoV/8XDUB+HF1Bs4l7oO400UsOzylms5ImEkZorGL6TI8hA\nUDfetEYDlUAVzB2djElDRhcxvtFZ5dy87tuPOEP+Q+vlXTKyaSbRgpWtnyKG\ny+5cWCfYenPg5XpVYXoSwuVNeAfieGQty7oT88u4nZxbRa1Pj2/heiKJfYKu\nbHifs2nGyOQJ9KngG3WFUv0gA7Jjq5ACEsl2fRQjKyKLKrNFckYeL/4XBq2R\nACw74YDiKEkG6K23G5FLe5rcN1ifrNFmt6Xda2BvHJXZ+dnTUa88XbY4Kwoc\nuZSDMEvOAUMDP8qtek5Vx8Ouwb/9PdzN2j1a8s6n9PQkn0i+ueqRToIKH5ih\nqsRVxedYgtuFKbkfF8fXUH1USmNgJILQlQLEFkFDe/R1TgHwYwiNF0ncX3YX\neaDIPrbI8h2H7EamqUMU5B9+YGZ/EjeH/LUBucB2eqYuCzl3WWehSCrllWOz\nkKRbkXFeXQC5ndLiD5byzXi7MP6eKM/lBgeEsAyLUUWVyarsWqHcc4CiNG7y\nuhmWsz1IcxlenwQYxYTKoSb2tgOEUVQfBIGPQ2iyIrnm36dUwC/n5O+u2Wxn\nyZ0j/z+LgPZceQwIoiZFRX6B0OeDjPSgq0/MMpVzdzLXEni31uLqYQjNcL4f\nQUN7\r\n=9pmb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2bf0238d2bc416351bf91282bd8875f0b9c6b508","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.5.5","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.3-renovate-non-major-2bf0238d2bc416351bf91282bd8875f0b9c6b508_1615194181708_0.2334130908870431","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.3-renovate-non-major-c221de5b461b5ac174ba271b852862652a33e590":{"name":"@balena/jellyfish-test-harness","version":"1.0.3-renovate-non-major-c221de5b461b5ac174ba271b852862652a33e590","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.3-renovate-non-major-c221de5b461b5ac174ba271b852862652a33e590","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5a14806ec9fd155dbfbea35dcf57b60a2339477b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.3-renovate-non-major-c221de5b461b5ac174ba271b852862652a33e590.tgz","fileCount":18,"integrity":"sha512-uyXIAfJSnUVM/3N4Dj93Yq6kahFqkBXQrOqQdH5Vq4BUVcaMACctldBMfHkGstA9sE9t1hzt4QPeKt7jTlWNPQ==","signatures":[{"sig":"MEUCIAKqm2Z5hxcLQr8ou1vl3VHVM+niy9bjCmAfN2cikqK2AiEAlhP9HpM+FvlISBp8+ddIHY1KklulpY1AnrhLlJv8O+s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgRvNsCRA9TVsSAnZWagAA90MP/26ayVCbq7uc1LkRaru3\n2VO4bUy8Le2yeHiyBEK0L/saVGxDwTLbJfQUumMkahnvs0Vx01pEW5vI3P6S\nblLbdnHqC0L/G9BEiD2hGUgNERdkQEFYbK3bRY8MgHJdOwid2026GgzNb+Ft\nwMCvjMbuyU4F2c0zB5QNmRA4miFJfykAO1OWHf12YT3xAcJcz5HU3//zi7cp\nzJiuevw9koIZpz2coUw15+o+g6nQyQlyhWu+eEB9wrjjp+ByDqy6onQNpJDI\nQcunHJkq1boPjnuwXUc3uHbzmhZ1Oj0ia0snDHxR27EKpNyI00yHsbqivzk0\nP08wdbloZ766d8EmbT/MBH6vb6n+1umr48+BqsWxOWzTwsmpagU+oZ/3BABZ\n/ILWfwNI+qLkpzNoQE7bisPpnXocQrBZUrsiNEyiKw/MmTJNPAA6y+ptWqqa\no0k7oBA/rACF95fJFl1vUn6Vvxsrno4BbYE7+DwzbfO26TPDaQgyT9XSUkEE\nGRKHMQYyYa2siFcBk3qNXNuVcvU0e45Y5XgwL8Ly2atv1eDW4gB06yZOrm7s\nwbKzVF84D0+se8onvlYR2BbCt6UQodPVpQILN46DA9/mGuNsFji5bK6VNAPo\ntT0GogfAu4/z0kSiCRBMw0y5L18ZM1ykXO5e0kw1EQGAz0JeszTYU9WjfT91\nW4cm\r\n=wJ7c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c221de5b461b5ac174ba271b852862652a33e590","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.6.0","@balena/jellyfish-sync":"^5.0.38","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.3-renovate-non-major-c221de5b461b5ac174ba271b852862652a33e590_1615262572229_0.6735963478719937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.3-renovate-non-major-7aa509c3140527ddac116f7e27905c66ad9a78ee":{"name":"@balena/jellyfish-test-harness","version":"1.0.3-renovate-non-major-7aa509c3140527ddac116f7e27905c66ad9a78ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.3-renovate-non-major-7aa509c3140527ddac116f7e27905c66ad9a78ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"54d6adea10b5f1233af1285fc10f0cb9c1d8e1e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.3-renovate-non-major-7aa509c3140527ddac116f7e27905c66ad9a78ee.tgz","fileCount":18,"integrity":"sha512-4/XlADKjXKYIZ9r9mtXjS659noCNMZlb5VGYF8WBXjQxiIKzHkMaqn+ByV3BVCpmfkPOUGXNKPzr+3o4nblM9w==","signatures":[{"sig":"MEYCIQDbVpDJMPRUvue0QTf3GbEDaP6jYN33Y0cqL3eHpbkBigIhAMUWSMJ7MlLFMmObBR9ZJVGv7TOKkWwZ5GnjK9fv4wux","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR1APCRA9TVsSAnZWagAAG6EP/3u93WjPllp47oYRCdOy\nrjjYJCD8b97CayFLOC+orHdRlVZ84r6ykezgC2gZFeUVBRIqfbBIJoJJUoq9\n+mKyuh/g0dlrhZ9cMGUgevsO82UBLy2fUtLHA5wGVC/f0BUOqdB9bxqN1Ygc\n8PrGu4wdOdCj2ZGXHGCoIXl48DEWk36hOWfMXR9O+E27mT/TS2x5YYFdjIYb\nKWysexaiVRzy/b1nUhHoReDz0BcVKnEJiTItIgy+u52oVVw1l2IzUrUab9lO\n62du+W4Cu8YO1nFI9BvyFXIncSgJ2qpQdSZZmCq0WlTAmAwbclMW/5oryE1l\nySquAjOZx9SIXWKgWn/h5jHNj8lMiirqzlvIVSoYSml+D0pz3vvBfXbwLc6i\nK1mGX4ZaaZoQLa3KqbGZLS2E750JmPnBxrlBivwPnZAdtJKWdONJX3nWfOSu\nXzqRn3xEmut9qo0iya5zz0ZzV7rhokIhEWBZIjcmFeDz1fD/uClDe3+Q0meE\nd8rP6wWQLCMLmsK3tst9v78ns7r8+K9zi8oDpO8oUa3zdQYUWKW1fvYH8qRb\n/LLmiqei1Hf98zPdnhytGXfIKNgqrYTJA2PZsBzYJ+I1fSRxX4QUQdNkeBc4\njpG8LcJAK+JnpE9sCIBVyg3ZjOaqDaXa06ARg//ZgjM5oe2u+YkSLfRW51IK\n+vum\r\n=4b7j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7aa509c3140527ddac116f7e27905c66ad9a78ee","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"^5.1.0","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.3-renovate-non-major-7aa509c3140527ddac116f7e27905c66ad9a78ee_1615286286817_0.15844171195224788","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.3":{"name":"@balena/jellyfish-test-harness","version":"1.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"553e662655f778fc7784f9a77c6059c9d8a1257d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.3.tgz","fileCount":18,"integrity":"sha512-9ymKzZ30FRHS7DVDlKEReVg7rUadFMdTt/twXeQZpJwMY7j6/U0VSaT2cqA36bbn4wXpz2r73t774Bs/rM/5Dg==","signatures":[{"sig":"MEUCIQCB9FYHINJJKixQ0FWtTY6Y530oCW4VxM3k4oyfWm3ENgIgK9ZGFdcBsyC64ThA0GjKpTPqNz5LoSSVEsnvop/b1tY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39381,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR26YCRA9TVsSAnZWagAAf1YP/RETw0NmuEhDbIJd9vVe\nHH4CTmAH10mIpjvTFO0UkqSsEPZtwBig7CKasnaybIvTnJc3Ag7zwngaVI5N\nVb17I7Ejdz77CUP6XWqZPpR51ewht4RLZpytjLOcmdT3JBKeAOBIlLGMHJ1P\nFnaGSn8kBvy2k2uKcE8eL7NMwbks2g2CBmssAMIHO7QYzJnMlG+PC1PhkMSj\nUXp4ZMvu0YhaNY0pD87pfNse2Q9FPVy1lA3LT984XwBOBvuEUlxykfMmGE2w\nRu4w7RkSxV8FH6RDgeSeSSgqF6Hm99XvP3Kxe5ZDIS5QV2UHqXlREyrNMK63\nx4bQyl65NPqkmol1QFE5ja00CpWFNS/QNVOY3VISeAoiWAjIe1DCw8ruczPC\niheUdmTXMlznIGTyy83t7s401Pse/On3FClwHlOtyMUmlxtMbowaUXufvOEk\nckwhbH7rms9TW0UgeJuKz0Q9xa+vglVldcqPhzMW8Vr63p7n+CqXjuUN34GC\nQNTr+T2uAzCJfGgwCl8uyjM8uxHLnz7BShnP9fIF9Hvee7r98RTlly7Truie\nsJseOLaqOcqGaH39HfED6ALwD9WacogPJxEEHM/gGEQdEUSZrzPppuweGgnN\n+VKVEOhK8es7PeOGWGVWrPwjAiJoOdo/Pyo6R3Bo03z9WqfJ+tvIuHVzyMhf\ngzHu\r\n=9RWY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"627d878eb3d26cb33c6601891603b22d688e41f9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"^5.1.0","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.3_1615294104254_0.7037018150763283","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.4-test-sync-1-da839bdf947b8b28f010c2c3ccf6ffbc09079425":{"name":"@balena/jellyfish-test-harness","version":"1.0.4-test-sync-1-da839bdf947b8b28f010c2c3ccf6ffbc09079425","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.4-test-sync-1-da839bdf947b8b28f010c2c3ccf6ffbc09079425","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88aabf35399ba3aa53fc17fb309a247cf9f325a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.4-test-sync-1-da839bdf947b8b28f010c2c3ccf6ffbc09079425.tgz","fileCount":18,"integrity":"sha512-Hgv/Ps+pVP4nIl+rwX06QBaeOhLp5CdfKNPhKo4PHg0OVqcmyLNf9IUXDjiEwrKlDgQW+6ZhrZESs2LmJdk/EA==","signatures":[{"sig":"MEQCIHBAhQHLcDZj1g5Orrqls5fCGRXnD7OAbWb2mA/+MfHOAiBOD7RCSBvJ3z/x6wS43XA+WTxYsby3QbJDOi5tSjGq8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR3BgCRA9TVsSAnZWagAAQ7wP/R2bhCGrCYerUIUBx9OJ\nbjMYPMmWC++LT1jPSoAWWm9oj5O0Uu4oQuSroN5KeZ5rL0b9AL6j2mBWPI2J\n4cTI6PdXUlMN3k9/exCDrZfQEWKRF4++fjFJ9KiqLliLgKojF4YJWCLZZGOT\nn835oF1H6RrHABS3xFixknCmc0HRgDXrM9nwtp6ef+gU+egJxdichl5bc80M\nPOZvbqhNobEABP4kJ2OlZtm0Fij64ptzK3cJJPcYZhiG0ug53Db/QMMt3czc\nmZhWlioJPSm7o6e/58uB+YdEV1WPF1MtX5OmnQdCkFoC2pis9hNmiN5Ic1Gr\nTLhJwW57pTQt34CRw8HufgrQtsLhqglYWbUvWGOzw4ad1FL3qARbGlIp5rcB\nERrU0n+Gopvek5hlYIEeMMl8MEDemJcmpmlqnzd+IzVjb9jsA+VENt4MhTwh\ndvzS9FTSMVqf8WHhTVWhriBftAPSaT1hqc7jUnm6ZOwwVd0P1GlA9KmWkp8O\nKLB+faY1D0IzRu7b3fzUV2wJ4hCcI9qLr9IDJEaUMvCjA5bxwLoFpn4EOcSK\nQ0Nc4zQkVE79+Gyax2qycKsJgM3aRqo1/F3G6/h79rf8WMooKBwTvE05ZsWA\nCzwzdnG7TNCv9NFhhOtxlnN1Qc1U2craFmfMx7tTYBGnaNovKmutgsp4yLvu\nkycc\r\n=munF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da839bdf947b8b28f010c2c3ccf6ffbc09079425","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"5.2.0-pipeline-importcards-jsonpatch-4966443b29c634ccd134eb2f48bf8cbb384a8160","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.4-test-sync-1-da839bdf947b8b28f010c2c3ccf6ffbc09079425_1615294560236_0.25323774570675495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.0.4-test-sync-1-9c97d45e2955a8339aa409d484241679f6d83dee":{"name":"@balena/jellyfish-test-harness","version":"1.0.4-test-sync-1-9c97d45e2955a8339aa409d484241679f6d83dee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.0.4-test-sync-1-9c97d45e2955a8339aa409d484241679f6d83dee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cdfef1b67c8d0ce30f589100f958bf4ca394e7b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.0.4-test-sync-1-9c97d45e2955a8339aa409d484241679f6d83dee.tgz","fileCount":18,"integrity":"sha512-hrOn7y0GmXB6m9NlkVRowfdcUBrktw9QRAfIfBmpXlpgbsd0I4CikPShi7EwDlNzZz/o9jp4I/Wz8YWbr7lv0w==","signatures":[{"sig":"MEUCIF/Qh2nb3jXvv4uzDy/mbGj52K52Gi4UlZrRD0yfmedvAiEAm2ImeR7Gbo8tm9uOHwe+NAdS1VobLpvqxRBpQU+qjTk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR5CVCRA9TVsSAnZWagAAiXsP/RYZ/44ebq1oRqRBRcCe\nsdyVz51GKUDzI8r7tAJ4mHAYSvCamE22EaeEuEqKWo17xz9p6wx0D3QE3Zv/\nun62N487vbnVPI3KBS2VvdNDO36JdKNADPH53wr7VQ2/Rlk7XWyFw3RHQtbp\nvOiJpQKnSau4xu5JLwRxP8W5W8LExEICTPBBTujZLnQpuRIamZSgt9CZX7di\n5zJt/1iZxF+mRABEQJCDGkl9IUG0Bd1uoiR27CSsbbTILwt56kVBxELxhdOE\ngekG57n6GgT2v1h1Wv5vKCkpzje7gzEKO3mUH/oZZyYrPrQQ0Lpqd0h025yD\nVmbTPRozbNs1SrhDALhHLrmqsac+QD0CdZC+CKZTDkpROusxCYLFgjkzCvCL\nzXQuG46zryPTVVtfqb5dJ5k7ZlXj9HPauRi7Zvqky5u1xUJPEiHFBOfBSI4b\n6o7Tivj+QnsdTEspfNrjnJBc/rCuoKEof7t8zUf20XTxvsChR94eIsEQlTha\ncDEwFxojHPNW/NSLzWuZyekTiWEEcHxVfCtTjEY87KqPIrzFfpwmPO3MKQ36\ns0wqGPKQabD/PfJdKnX9cQg/vCfAZG7zLba3p5LK1eMUCIrgswVTZXKfY/6z\nAJoVwwtiHvMuVX29/HsQYuwGOXX0MR6lVChjjjCm1vBItVC2fP9lEuPAQshn\nALH6\r\n=Yhtb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9c97d45e2955a8339aa409d484241679f6d83dee","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"5.2.0-pipeline-importcards-jsonpatch-27488abdbcdd22506bf84bfa4433c579ba7924e7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.0.4-test-sync-1-9c97d45e2955a8339aa409d484241679f6d83dee_1615302805347_0.6649265867844607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.0-update-sync-520-f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5":{"name":"@balena/jellyfish-test-harness","version":"1.1.0-update-sync-520-f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.0-update-sync-520-f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d24472206abaae116dab6ecadc4a38b336111227","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.0-update-sync-520-f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5.tgz","fileCount":18,"integrity":"sha512-nhOuGaDIbLjbF5A8VsLU0EeqmCi0hi+eYNT2fOnwVt7IAB7gjazIWQDd5eW24Bq4WkXZQIj7LQ2btpr3iFZ66g==","signatures":[{"sig":"MEUCIFPKqnj/5rJx0TSDQ+HIkNGYyRyza6rcRtrv5e7NCBF9AiEAjxagVspptOaeUnAHzi2qk5U1YxPcjlmU6gNM5vsZ/rw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR7F8CRA9TVsSAnZWagAAEDUP/3DBU0cRC+aLFLN0VsHN\nqVrRamjVuZ3LzuTKlW3YBnc/eXSAJlezUvrlVSM37sIk9BXtPVT5Fuq69xmq\nPA5tGLKim7atW19qcscMj/09WIa9pxisIzsuuXrKp8FmirFMj7zoPp/qBtRP\n+X3tEz0Nhsk8LG36B6cDjg8wDuW02OyPBTp20M8fBQNn0irObAlW2nfLfKtH\nZ9I1ZG0YtfPkk2uj3S1pEdFg+bTgM8T0/Wbg2pRmwqJL4Hnu0m9ftHMreEuC\ncHhXIebLH9DTXYTYe3g6Mouqcgzs2GmormMhDL4fAVF+fHrKly7LHDnQPid3\nnrMoP7Lc9L2H6LYUuzaN1vffHJVXsgml8OJLNcFioceEAnVlOW31slN1I+Em\n6SvYbm1jZObEsDwNiNWKaXvn9aeT1Z4QOkhJesX8NOpUEizG9xXh6SapezgX\njw0N8Ltc1sj3Ct4pzc6oYKfTyfyd41HYuyjrTV5ozyNY5Jb7SIS6ZTKelwRI\nvnb/AAo7Ol0/O7WrPNwlgUUeNnUWN4vSfCXtRn8YfXY6vQMbo9ObhcirnyW7\nXQb0Q8PxyjO+SekqCfsHMN+Qqrr49pfBtjvHeqNPrdBt7qIHK8+kCE/+LvHd\niHkrDfExrcgBV3lRNJ5ZexDuBwEJMFLVRBRoG1PQvfBpwuyASmeXqOEGwe1A\nTldJ\r\n=UKhh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"^5.2.0","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.0-update-sync-520-f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5_1615311227803_0.9664438448714012","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.0":{"name":"@balena/jellyfish-test-harness","version":"1.1.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79864b07e71e7c95256e671928551f4d84101887","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.0.tgz","fileCount":18,"integrity":"sha512-vKUGbds6yHplTgJh7NMQ4eluZ8WseMSfJ64+MrmldTba38koDZtFPvGmjwXIrty2moosLdPjQULeJuI9VECIiQ==","signatures":[{"sig":"MEUCIQDQM/TdNLziAX8vmYnYLDQiae2D4pEfQP6n3x3GHfO9QwIgahmdMzda8YaUphU1IY2BNFns9jidt1iBCgJh//n9O7o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39456,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR7LgCRA9TVsSAnZWagAA19sP/jcbv5u52h+u3xdoZToh\nfoCCL22s7YyHqDNhf0aXOOsQsNPCVDdNayttOtZDlGWj/QY6qyROzQgwstOE\nUu3mhAGLukbYSpLqrESQyECsbhmdvjxvbQnq6CrAzIn9CM7+vAbs2vFv4epv\nwCaYrTBrDqg7dqY3TP2nc5Uip5RYFbds+C9JGLD60GsD2PxTNpt+e7ach8iz\nic55TM51CVZuW5SjXqIrrXXtDPh3R77kx3jOsBfoU85l+Ab5A0Zjn0EbRVNU\nIlAu1PZn+bs/9uqCRuJUD4pPCKF1tn+EcOPfi0U0lRuZlbfi4xllWcg7a2EV\nVO+eb3ifxOfMbNWZXt9WmZmxvxqhenzc0ZPhzHomo+Chl8z4RUTzKhcoVD9u\nNhObRgNg1CJypMQpTJYCqyl5f5qC10OHu2EQbC2ZEwLs+MDxJDjTURRKR/4p\nI2Ku94HH7DYxUPJMDz5pE/ejZgic6joV3UVYQGbgy/m7so+rKyb/mxczqI+Y\nXAXfaAToLFiuOlEZnZBOrmy3i4mPiS2w+7vk/HTGHUu/T4uRub3M4eYCmfSf\n4ickBqACZ17f+Kk35Ezrku08zbYwDyb0D8wXUfP9/tQZ6j5+Q5PUlDLvQZwC\n74pWiEFYceQiXXk8VwZgapleg8kQySMxwAz5j/NYUzNAlkj89sMRM5SLMKS7\nMoU1\r\n=q7ju\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d8876df737db1efb403e2c4889e6d65756a55a75","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"^5.2.0","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.1.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.0_1615311584207_0.4809992357638375","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.1-renovate-non-major-80a2b52ad0a14ea31139663be89d46f9b37297f1":{"name":"@balena/jellyfish-test-harness","version":"1.1.1-renovate-non-major-80a2b52ad0a14ea31139663be89d46f9b37297f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.1-renovate-non-major-80a2b52ad0a14ea31139663be89d46f9b37297f1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eafd3831081f0228f3eb5156b338df395862f19a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.1-renovate-non-major-80a2b52ad0a14ea31139663be89d46f9b37297f1.tgz","fileCount":18,"integrity":"sha512-fV5OgeC4ScLyQra2CF+sRAkBVpPR/Qo3smdtkfYrSJL7BR32e/XTTR/I9eiBbLft9Wnqj9NLBR0YAO5bVJjndA==","signatures":[{"sig":"MEQCIFm3nBtJ41J2y4Eum5V2d7XzsWDMUhMQ3RpKNV4NTZtSAiAwPuUtfuutGjb2BgChGECcb5uuqb899dbyWRef5bUPKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSH5WCRA9TVsSAnZWagAAbD0P/0Bcb3bdupmKP/bo8avH\nGBsoLJTYEMldZV4VRW0Yn6jOw45gz2i6InGvU45jhuxMiBH0Z333hQGn9vet\nWUwnSdfhghTfFMdPkmaZ9r+rCH4JFHj5hzu7S0QFPUNTvSHiUWv3oNvsGvGz\ny5wACnefQLl8FbbdP6283XIy9we9C2mEbusBrP0y7YdzoPMIHPxPB/E/XRGV\n0crylV9acBZtb9UclwK+P2oN1BZ3EjBT8dWRljA1j2Gw12T/QOAtBe7VYdC8\nK85gVSYk3O4c01N6GPp4Wp01CGCw48Uvf2F/dEr8YBLgPLRfAEZP8OX0f5nl\ny/64+lvHZsYv8WnhNn6nsCDPG0R/I3UAUx4T7IoajzEVWC+HCHTZdUzRsn/S\noiJ7sFrari+jlLzedt3GDbK5RuSgzCTw2Mc1dUotjZNZG2Qrl3t9gU7CQPL/\nsQ8NW2PdHn+zzJG/Pf1b5frd20ILqjUshNWmm+DZJARb2spCKWJyLNqXpc4T\nKKveXEODVgUY4HPv6rIuLU/Em+2i312VxbKUc2ouyljvzJmb8DAfCKUFJWDi\n9QMIFuXXD8XArH4LsJ8G9HXGhWyR3Ck6SYcmn9purpLbyROWoki4VD43xjXZ\neQTB+TqtIyZjShz8iAGOKydPQLpi7Er9Rb2tephmOqAAsR349abIaorHSkop\nR5E7\r\n=U80o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"80a2b52ad0a14ea31139663be89d46f9b37297f1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"^5.2.0","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.1-renovate-non-major-80a2b52ad0a14ea31139663be89d46f9b37297f1_1615363670285_0.31605791725311194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.1":{"name":"@balena/jellyfish-test-harness","version":"1.1.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2b47ad2615c2361a0ce944c845581c915a2a917","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.1.tgz","fileCount":18,"integrity":"sha512-aRENBo6thpcNrGDiWUXxMeHtU5pqoSRhCh7KzGRGtgLni195E+v+r7uMF10o5BA5F7dRROiFyA/2Zonp51Z0Gw==","signatures":[{"sig":"MEUCIAWcP1P0RHBSFF7feGT4pyq/3toNkEUZ1k9c/gJOYq8RAiEA3OeN2XA0JupYCTekE8cy0aPqEDJLl6i60YB0fDvuxgM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39556,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSH8OCRA9TVsSAnZWagAAPloP/RuYwejtKdI8kuf96XGA\nWSfe2t6T2jv/DjVRDBZ0W1/mEZOuo1hDn1q1Yt5IDe/ng7caZqn+OaV3Uu5Z\nMrTMOtbAzPv/qk3aakCjtF+lU4S21wj4XuzqttYNI/PU530wbj7T2wq6RkHV\nANq06AzyCRv3/VpP2P8+UCXkd+3SGANpy0xY2DGEao7rXLD60j3JjNsnQTml\nq0Ftjcr80b395auPSkrz8Pw0CWQEZ/uV46R7mxoLOOJrVkMnYKYVnWAb1owz\nwn34elVDxyfETOcR/AYCnZHajZm8/IxdBMvREon58EOKUhRXCB1m/E2qoP/9\nUF7MOMGOII0CA6Zi3LRDe50BGhHkDt+PYpyATHDSJslFy1AhffTQC8cdbJIB\nIfdz0HKusO7YzUgFczgRvyhrWVDHjOKm7TbP1rFQJhLlb6SL3SfEMLyOxGjc\nuU9HMe5H8DNQUa1qDliuo9k5aKwTc9CiFXlvaQy5coQGU4VbHrXUy9m6sSiW\nERkYNK9cthz5DpoQ1lfEE23my+TmiRDNzU2093EZtI0HQq3KdnX70lbbhVPd\n/GUvxuzebw56NM2UqzsuH9d9BuXFQzPemPsgWhPH7od9704s7cNFhPFAyj/m\nKk3/gxXSf2LTG3a6SKGaKfHOSGCvpOb+atSOnacBVH8IQGrkkwZOacdHdq/B\nEtVQ\r\n=qgpI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3039ec5af6ff8bcd63619af863d46f66e9e417f8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.7.0","@balena/jellyfish-sync":"^5.2.0","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.459","@balena/jellyfish-worker":"^3.1.6","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.1_1615363853597_0.371689753799733","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.2-renovate-non-major-d424a59cc9ffd7894e28baf97ed4f7d27015827b":{"name":"@balena/jellyfish-test-harness","version":"1.1.2-renovate-non-major-d424a59cc9ffd7894e28baf97ed4f7d27015827b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.2-renovate-non-major-d424a59cc9ffd7894e28baf97ed4f7d27015827b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b1e8e3e59eb4afddd5d47404d321d6086d14123","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.2-renovate-non-major-d424a59cc9ffd7894e28baf97ed4f7d27015827b.tgz","fileCount":18,"integrity":"sha512-Mj+Q7lf24IrMsZV5JGfFIFP08UPbF7Z60VoOXPQvAMWSuF9uOK44PU67D6QFZ99KsW/4CS2LXXRskZRtvyUjlg==","signatures":[{"sig":"MEUCIAHaXLaE7nk5ldgMfElJcSImDwEc84NWHC/wJ6k4KQN+AiEApKR68AHbQ4ouVHSlX12SZJlcJyucqgyR1Nirm928dT0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSLiyCRA9TVsSAnZWagAAbYAQAJXUSddFZkJk4FBcDEUm\nSfAD215qG0nCOnb5uVKUxWWO3CKTsp+Eg6wa0lQOH1GqxckHGUyokdSAls5a\nHOZEQRnRC5XPrJypvCQbPG1GnenfJ+auFqKtvJ0sIWyQ8H2bR0E7B9qR3Jxv\nHIZpf/RKu12dSQOXoFIHtWr2A8Z4XYU6s6gM0LP/1dfovaO2AGYnrdEMKZSs\neB1Z3fNOjxU8LYqEETNh1k07IPpCTc6U9XABT7lLWpFlm9Ixp3UEWVaNJTjq\nzavPdMfN5vuecLRoLCCPh1Y1Y/qnpSpHVSyVJHKOqI6WitbPP/EyW9oXDl4I\nm2+wbe6O/vV+rxGdt4pmd6N/UN7qn8ZbXag30hV67k0WRQilHHWuZ2eKlXso\nOZemdvu48lfwq9Ztz/uiChi4qLrAyXCHbgvg+87giFIVjSRM3Hcc77z0wcMl\nqlpFRyN3hQdTGd60F3QFy1BH/qbSv6kF6mQ82Ihl467z/2PRFmnJ2M1W/0Zs\nLEnCEViXvZi3A8zTip36ko6AfDiRUA4D453bxHb3v4PLHrPVO8l8l21RWqaB\n0Al+Zdk7njxP59nSIHkMGXoXkpcRz3NMJvLn6NvG84CTAh1fiFNX5S5UFJVx\nJbCao5S8ZyNCMgutx7IG2eep04/tXhmX+gxPmqV5Vmk+VcDjC6/D1L5JRtcA\nmMVX\r\n=Dtuf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d424a59cc9ffd7894e28baf97ed4f7d27015827b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.0","@balena/jellyfish-sync":"^5.2.2","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.461","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.2-renovate-non-major-d424a59cc9ffd7894e28baf97ed4f7d27015827b_1615378610489_0.3323362307617739","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.2":{"name":"@balena/jellyfish-test-harness","version":"1.1.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4949b07d3119dc864527e23293827dabb48fab63","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.2.tgz","fileCount":18,"integrity":"sha512-kwkdWq1SjwJ6081M1uZBMXb6SK1C4WJTicukfHZ/yq6sJ1VbXfYbrEBDwPYR9WA1jxlt+AjTPq6iThOH2Tmugw==","signatures":[{"sig":"MEYCIQD9taaLjnqLMobNEu+f0OH23/KQ6okHJEe/K6tNzyc0fgIhANya++T4cnGaScOTrPa0qIAat65dFc7/paDYEdZSEowd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSLnHCRA9TVsSAnZWagAA6IUP/3MMBuYSMs4wYB0qOqWM\nCWiOXipJc6C9ROxsrzPeFFBFeMMys2RUsTU/XhEWAuVFacy5F2UQ7LMEmXyS\nyql6rCdcpJVqqvdcNksIyIekbnBESVWqH6NZvs2eWlUNxhM3qcuYVifKrZb2\nD7O2Hp2HlOaSAqoxQXq+WZ99uJ4IhcUzR1bCvyCs4tvHc5fwxM/gopjsTjHi\nqH1B5s6RaJzzqP2P5vgownPIF8qV99ZQSCe9xyzhCUAl7cnQunD5yvQ2pfVl\nahr2Us27GXRx17UxysdV3oAgoZQPwCV9tmkXf6gP9unv+Mglqj27CiRzweWw\njQ+EvPpmmsKPuVv9CCkMBZdHQUImYoPEINASHlK8tgvH1jfwYUgBMs4VwwVD\nweguOJpkcD4k9maG6U8vZPrhbaNbW6elWIxxVqom0HBToU9EQUEbHv47K54H\neUvVSvGoifqXTN0fqzyMiuWBw+9pH+EHjTxRWli/tDf1Lvpq/v4RAzqPwqCF\nI2kSbKWfDH0HR6sPeLgNdC5aTMM6xYnCnrx4QWJCGQYDv/tZnoYlDUNigwbL\nqlve40xZrZagCmUpvIeJ2DmUdBXPa8ojgppwA+1J8PUCTtVRM2ty1rIMlXff\n8sCUwYqHBOQOWASBBvTaI88LYaRWLNaxd8qJTJiAM7rHqgQ4F44e6vETuKa7\nIMIE\r\n=Djmp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5aa0ea3b582de9f61b029449a5935dc8ad8be5a1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.0","@balena/jellyfish-sync":"^5.2.2","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.461","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.23","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.2_1615378886971_0.47962686441194946","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.3-renovate-non-major-3329635c2af5a393610bf3835dc1d49f48d20678":{"name":"@balena/jellyfish-test-harness","version":"1.1.3-renovate-non-major-3329635c2af5a393610bf3835dc1d49f48d20678","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.3-renovate-non-major-3329635c2af5a393610bf3835dc1d49f48d20678","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7261ec5cac77462b17c8cc9252aa5950a3e1529c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.3-renovate-non-major-3329635c2af5a393610bf3835dc1d49f48d20678.tgz","fileCount":18,"integrity":"sha512-5nfzrDegDJPAV5hc6zsoyn4CVLRiCoHJ++WNIzqEUh24RQv5pBjCaNLSPtj7+C0FHcADZ5QxWdKJX/BQi2DDSA==","signatures":[{"sig":"MEQCIDFVObscPgfq+y5vI3y9NooFVQ6W4SiZ8A7Qgj6+nrpPAiBPppyUAihy86L7ttxOAv3w/uoFGCn39ehzAW4XZf4eXg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39794,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSWf/CRA9TVsSAnZWagAA5lIP/2HYhbkcclsLx/Y0NlCM\nCHX6ADmI55tvuB/25fDlBeytYiI7nApZOB+mNSJZvyN0ULEkkvdZzhr82d+/\nkRtO9Gu4cF/UGkn44Ug98j+jF80X94MMCio+i4FH30ZtqzYCDAIifMeB+3xB\n4j49vs6E4YGOVirS2Sr2thh5n+NqhF4qwm44zyt6slYCxW59Jq3raWLHl8YI\nQ19KSqIxuoQgABb3mD4DKvooMKWiNyqtxL95krUYwgB/CvZrA+ZVAHstFZaS\nwUm9YfGfYmurEr5LGSyX9vzSFr3gIekjOhjTRQRnoWVVi2YYYBJnBFtTbm4F\nbTX+RV72Kad9+5yPjaBdm+KFkqwmMqa/IhRUdf1DslZkVX54qmJOzLMxhCHO\nsAUr6bq/MxHA0FIoXRDD10OwCRjVah8oo7msr6+a1lrEQw/AWTibIza79nmq\n7hnjox4CfRjq+lu5chJD+CtOfiX0nG8TyNGm82RDtlem9oP1R2EdtHnUdwMR\nkv8FbBow+6PJzQX7xMojuoV6JB+t95YOaVUiO7V56jutpr+q4I52xSfMd1lp\nh96Fv5GdheRVGPM0E8ouCxlKNUTVYa9Vj5l4xQpPjffJy+W2vqzE4OCYJSb5\n43qNWLMuDL6M7WPTOfJzWjpOFlMlo+Gx4Z9u+mX2ZHr9YEsLq/MWyMPVq8L4\n/C+U\r\n=jxu+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3329635c2af5a393610bf3835dc1d49f48d20678","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.0","@balena/jellyfish-sync":"^5.2.2","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.461","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.3-renovate-non-major-3329635c2af5a393610bf3835dc1d49f48d20678_1615423486863_0.01291050088846668","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.3-renovate-non-major-72e568779069ec8ddf67774cf9fd6192b4003a30":{"name":"@balena/jellyfish-test-harness","version":"1.1.3-renovate-non-major-72e568779069ec8ddf67774cf9fd6192b4003a30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.3-renovate-non-major-72e568779069ec8ddf67774cf9fd6192b4003a30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"52a7d71a5bb3652bfbaa1b533cfcf3372e985526","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.3-renovate-non-major-72e568779069ec8ddf67774cf9fd6192b4003a30.tgz","fileCount":18,"integrity":"sha512-FapbQEodDfHEKYp63pUmCQr3NGgVGA0NIEm2lAhFWdstjoUphPVhSnZKAemWJogwk2Q72OHMjm1L/x2D+ZKFNg==","signatures":[{"sig":"MEQCIByBSbDmUTYqsGELz2SFGv30kw9pNeoPbV/8/fnheGM5AiAA5oDLfHw1E2qUOWJssf6YFjirdmZFmXiuw0/9Is6gMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSWkPCRA9TVsSAnZWagAANf4P/RLYSme3dkVBmW761cav\nG8dmofdiNYmdtDQN1kBAc5BnCinJBDJ6zAXwF7FcY5o5uDh+rvZ/OqoB7wCd\nWig6zbZ+SfHx001pKcWtuFye6e5vSz7ThSqrUHO5GE4VqlM8hTMpovnh6gCR\nNpUYKipuVai2+mNx6hI3XGr962WD9CZybRYW8t4GYU2rPAt3jkEdsjmaoHgm\nVVpddUMNhvGSS9E0Pn0ssmSdM7e0f3mvD7YHf1LU6lmpT3XChuZ7o9llB7wL\n8rROkY9AIpeTyh8Swp1nlJ5NOCktX4q7cf7WhhfGtQcwSiUDAypN1mNM6heU\nxwkNm2OOTQHbIIhRnkOvoZhsMxxNv/aP32n5ZjIxUeI+w0oYGBwGWq6h3dXl\nxXqHbsl8Jza91V1G99m4oAvKuzR4wKIorX01ytKn8AvSsgQq1Pf2ZR1Ss2BK\nDiP2DTg3s74HbSAp2OHvmsEQauTmCr61kTTz/2pe6Pns1MK/Jkg4FZg5cvsF\nlpdpO9FzFVTKF0qhD5DK6NWxqcLiX9JjT35nq6p7jAnRkhLI0CRdaIedP8qf\nHfnJ0VWFYkMXkP+eU6Da1FbDL9UoT8KUyW0s7QjlWa04QHDt4ImljUkQhYul\nMs5y5JP/tc9/TBHwjLEl1+Gfm5va3f1Xoyh1/pH8sEKcWVnoL/SJpC2nQIgO\n6jpM\r\n=Jcwy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72e568779069ec8ddf67774cf9fd6192b4003a30","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.0","@balena/jellyfish-sync":"^5.2.2","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.462","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.3-renovate-non-major-72e568779069ec8ddf67774cf9fd6192b4003a30_1615423758832_0.09498746555732218","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.3-renovate-non-major-2a19c562b46e31d35d90c0285469ee6daf65c6f2":{"name":"@balena/jellyfish-test-harness","version":"1.1.3-renovate-non-major-2a19c562b46e31d35d90c0285469ee6daf65c6f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.3-renovate-non-major-2a19c562b46e31d35d90c0285469ee6daf65c6f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a3a75b4f282da143b374ff8f4f07198fc6dd9cea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.3-renovate-non-major-2a19c562b46e31d35d90c0285469ee6daf65c6f2.tgz","fileCount":18,"integrity":"sha512-61cAXA7coLmUCOmcGStahd0N9D+cOCmbaO8wfiOBPtLUl+ioMQmvLN0Thq4LsbxqDO4njCI7FMMfe5Re2q4X2A==","signatures":[{"sig":"MEYCIQDT+eHcheSc/BSqiiCR2eGPSUOIoARhHh4qB2U37ThkJQIhALGYprsAaeepcn/R3GqqClfh6WOOM5RvcfIKBuq6a0J2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSWo4CRA9TVsSAnZWagAALB4P/1fpjqZg6PoGRHhXEFgy\nHSEIMaNzclNh4DpWpo2vaHdS7+7xhool8Wnr7cUnU+Myjww+JjIbncaOOP4A\nLyYqy5I6Mn2duE13K88w69seYLLcgcjXIPAwhtpkT1/z6JJWMxWbL4kFHx8H\nKImel6CVgK1m2b2DOmmrsk7BVD8i3AvgACGRLASyAwfwgsGf0cLl1+w7SPbb\nYzC9t8ZM/zlIvhU4EGC80WMFSRlcj6bUqsQ2V8UNRuRLUQZqyGt+pH84FheD\nOzGiLlo8MXPgp6ddZnGiJhmuiTlywTURG3KZ4cRLZJ9lRHAJ1f6GJPj89TrU\nddXOy/wCXqlfdBddBioGbHHJu2Dh26HsstfD6/zYJsFyg/kEwOdq33wdtVKJ\np3aseLNbZzC4TZgBN5BMqLvN+e4AjtP9U7vTidxD7W04F6+1XnHMR05Dd5Bl\ntiym8IwmGlGNfAk8G00efOCrZhLmlAbdfvR9S0DUj7BPczvd1rota3m8Sym8\nu0laq1ytMASbbGhN1hGZ8Tf9HGR5GpNCQ8umZeejwz9dRkqPiifDXeOOgt2J\nLknjLXP7kQ7Wvyh02ocdQEMlVSCatIC99pn+CbMyWWjG16jkuXUAYWfA6Y/2\nMQott6L5BoO0mWt6wW+MB9YR5A/jCs8+ZtgJeKM9NLO3gF0PeHB+7S4La4av\nqbdn\r\n=rZIW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a19c562b46e31d35d90c0285469ee6daf65c6f2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.1","@balena/jellyfish-sync":"^5.2.2","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.462","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.3-renovate-non-major-2a19c562b46e31d35d90c0285469ee6daf65c6f2_1615424055972_0.16354349300245707","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.3":{"name":"@balena/jellyfish-test-harness","version":"1.1.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"845991e63bb6cc852a81c690ef58d0e3d6690a31","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.3.tgz","fileCount":18,"integrity":"sha512-uBGVV+oSX64pNr4wnVdYlzXbfQ5pO8I8ZiahNY/V9CdXD0zvy71jCEy0XuiEC2qgXz09+rEsI1VROajCeLZtAA==","signatures":[{"sig":"MEQCIG4EI+qYA2ccGnFOQyqaaiGi/UXPONHhw4PO9B4m4JlAAiBQCwcTGj3guydlJh2P+CGMWXyF4vfr5EvmRNhryAkVxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSWrwCRA9TVsSAnZWagAAHDgP/RdZLPLKuocw7tWaLX5l\nbXARcL7boW9T9CN9qr8C+KBnXbo52lnKWMfCyw0TDLcPBPGtxrOIWhXEkOXR\n+jIYOFPzOoe4SFkOCnllgowvybQ5IPFqY40Nk0bqftayV26eedtxCkyNOd16\nKVStdWvrUUjikrLEa5QvuPXQTzjEJZVl3ng6/0XGK0UYsrSgOkbgYZ/FPTIa\nFYnPdG37KYiCb/08/5rjyqGhqW0i46mNCYtIQJLSkV523701XJioqzx6GgGv\n2WELRh80rnoA6q3bFces2P84iDmqYC0Gi/5OeVttUYYHl1A0P/zm/49XUqmb\nanE+VcNehewzIok7oeafINVQ0nNyVj+yi87QzBqhAwiUHxMt33U/pRISeuBo\nLBOUcwEmcKJ2QYiWvUHZSC6zcl/60+P5R16FpexFYad04uwO8uOo7IcUfTNb\neLi+gzitz62uF/5AkIO2dV1JYLK6l86vfR8YKtotAOzNC0EQ11N3+unDJl02\nK1iwzYZYYBfTUv+yFfGD0pk3YUEjLWyiY+xAQP1yruHsCqw/NSvVt7mKdi2n\nSQyA2eWKemphgpPAgauipO5lGZZG4Gf0xji0e6Vy1bTm56xbfCWMIOxDGME1\nqGatvhRvtZcD4EeX9y25EGElKHkMHJ3j+Q3PCvbrjo0SB1vPqxr7ksHycoIG\nnSdf\r\n=MxWX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b3ee4bc4347d7c95d7dcafa595b87a3de45afd82","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.1","@balena/jellyfish-sync":"^5.2.2","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.462","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.3_1615424239871_0.5601790114871921","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.4-renovate-non-major-9ab154858f9571e0e59ca993b6c50642c807130b":{"name":"@balena/jellyfish-test-harness","version":"1.1.4-renovate-non-major-9ab154858f9571e0e59ca993b6c50642c807130b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.4-renovate-non-major-9ab154858f9571e0e59ca993b6c50642c807130b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2fa4be9cf67bbc6fa5f4b8a1c0cdffe81241b60f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.4-renovate-non-major-9ab154858f9571e0e59ca993b6c50642c807130b.tgz","fileCount":18,"integrity":"sha512-Krx/XG20cNGjC/6ou9D3zcWt8TkpFeSptHOTTbak1sh8c9iBLVR+Og/zlqRdXOWdcNzLmSqlJwi9D/yOUpuTgQ==","signatures":[{"sig":"MEUCIEczqr4JfnXvyLVrMaTcHa/fjVRBBkYVXfYNSfxAFC16AiEArEhn4XFgg/L8t5xHl20LLck4xJU1YBdrxHKUw3iBKjM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSX5YCRA9TVsSAnZWagAAqukQAKGwOYNnNjLHLcxLrrKH\npirVudQJZwaS4wP1+2Drv/nP87592wMzVBLwA2p/1hpUuAWaZJ4vpJyC7teg\nyUwTRxdrAalxH40TcUtMv5tDE1O8OsuGxfL1kJGFJ7wFp5vQBceuTedgIzFp\nCQ/N47M6jzgoTcZ/BLkX4glIcx3yzKiGLrUGxVYxOaIdb3x+UCny2lC3Ahzp\n3PDaBRCu5sMAIt67MDN3DRtG1rTyarjg7L+swcIyCSeEmrKTWBP+mR3y/Otr\nGB0uZtTWranPmliYLkX4Sjv8/Pkx6ib6sV6xRi/pvVieC4X5J1hagRx2Dzq/\nJ6Xq0QkbXWTUFt76qQjJBQwTwH2rlNzQ+aoPmBVImI+5y/F2P9Ti4XgZiAJ4\n8pVa7awpMLPMAxX0R5eCp/qP3YTc5mpPQk7YG9FJx5a9sAOunA3eVvLMg4M3\nOh7IyzztyQxuCIPc70t5LiZ3D5soGBpH16XFs4Z7W9mz/nTznAyv8IMNzAoM\nPDET2fQd1NLmD8CW15ViM0OShL6ltdnurwp5ndRT0vcGxGdT3r6x7gSqEVJo\nFsSXW/1hjQqxBQE+5x7HWQ6z8GkFMNjsTTZRhbv12gJqFwpkmz3TSLjWKGce\nbTDsRpg5wH3VeaV7P8oxeCEZlsC+5wsyTu3cQ7bN5YFnxXWLjCEF5nbrwADm\nOg4G\r\n=Wk/p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ab154858f9571e0e59ca993b6c50642c807130b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.1","@balena/jellyfish-sync":"^5.2.3","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.462","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.4-renovate-non-major-9ab154858f9571e0e59ca993b6c50642c807130b_1615429208027_0.5833653916324786","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.4":{"name":"@balena/jellyfish-test-harness","version":"1.1.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"75eb6415adbe4377418c8f7d297ed93d73bba81a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.4.tgz","fileCount":18,"integrity":"sha512-9tc8N0bdPld/YsItD1dZypuoA+Q8fQ1HAPhGgmOAgAckbeG8x964JMmmiMy1aKFlsqxPW2ejVzFg2tFGGkk41A==","signatures":[{"sig":"MEYCIQCHIZCS/Zd+hsi/ZlIH1qnHHK0Xspn5BL9pMUAFo9y6RQIhAKCiBwgVypIO1wpFqhqqfLB5RygMU/6ZwuBpaTKAj/vp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39794,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSX8aCRA9TVsSAnZWagAAKfsP/A+2qoipevlGfHJjM/WI\nfbRJP8iFcFZg4VPuqJl5vHAMEW4+uG/rZfwqGV0HiVU1H3fFySc3uhwVUfMv\noVPipDNL5HzS+7ZqDdhLdvQsZrxK4HuBJ/FmTntJ2irbyP6tC9MbPLJs6ZLR\nc/VQhVvMQ4k8p8earZcBleSmKcemlzBbLaQrAYPKjXtp3P6A8ytbX9LkOZlQ\n8lUeCvPOMKO27KjijjIK1uXCXkHkCcl/a7nJMoBsRsFngtfo3fKCahDJATly\narQ5aapcBbmNyXSEa68fsqjlNyXA0z0emAg1eAX8SFx/a3m/cD61PHOxziYL\nP5keMKqVxkp0Ik+YbyMQuJ/3W3pTdDNYbVoNAf9DMTUo4C+zRymxEHI8o/oI\ndN37lfVaUAXnDSkipk9G2lOu2chghQnNYnKwlNd1NKwxol19aNdpqPMlX6vI\nU0ik/gM78G+kGdWbH6GXGmAsmBy1WJa5xT463lFuagobI7erjy89CMUIQWG9\nRIxRzqQsTtZPa1ICYB1MGfg8HVNJlRS+ahjX0hWnnwAge6ffvjLrmzK/XOLf\n5JJEfCi0oJRWSj6w/Xh1DNc7TiEdsXyPG++QTiO65sUlOV2n0pcy2mliaJA2\nvC2KNdnIRFycaNU8eStvucYpOp9FU69uyA5lZYEHdL/l9uR178cc5R6Vgi72\nyTI4\r\n=ZHt0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"37f315fe9a9804569cfecc99b2858e93e8c148cc","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.1","@balena/jellyfish-sync":"^5.2.3","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.462","@balena/jellyfish-worker":"^3.1.8","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.4_1615429401774_0.05205404081986198","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.5-renovate-non-major-5f8fc199a477f54bb52316efeb4cb9049f4a7546":{"name":"@balena/jellyfish-test-harness","version":"1.1.5-renovate-non-major-5f8fc199a477f54bb52316efeb4cb9049f4a7546","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.5-renovate-non-major-5f8fc199a477f54bb52316efeb4cb9049f4a7546","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7be5fb7cc1904bd57fafc3a420698102cdec44ce","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.5-renovate-non-major-5f8fc199a477f54bb52316efeb4cb9049f4a7546.tgz","fileCount":18,"integrity":"sha512-OaQQ2Muei6+a2qFZK2ZdCdYe9wrSHoXEviN+0E41rbuwkPo9CBKSMQviicjyZwIhbfW8iR6s+xCslOWtnIxFdQ==","signatures":[{"sig":"MEUCIQCYBXpcwkkVW/dQSTtN9SBHpVg91P6bebF8Xoj+DC/07AIgTwUXp1sQxTVJLhAI4UQnptVt79PgWn6L4gT+1zYG9yw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSaQECRA9TVsSAnZWagAAcskQAJZGMXuaJksCfi7xWM04\ndIqLK44xyp1FLaMmCPxK7EScgBpRjGNdkkHqVicrXaa6oTFtUWO2IP0U6Lk9\nmuQ3SUtHFtS8H7NIq1lUWRP2XJT3QnWHdEM/a85KJpTqLW8Aa0xPOfMAVhIE\nZWha8eByI9fKBLSH7Rrefut+VqXfLQEBQGyIsuB/LixU3pUdqpI4UjMX4umi\nGQc/o8jKnlgbo/RMLFC+TcPESRvREapzdZ3F1flIO6m6Bpq59/IE5gpgZ4RC\n3tQx0ad0PJ6thxjILN5+YuetyQY2ePEn3oVJ29nDQUXSWD5GMjNDSVKeSmgY\n4Hg2Gg6hAyjd7wH15Q/VRT/mFemf4/CCAWNkCAl1yCtZey47dHAa4tGnjypS\nd9lrq+AghtCz17BBx81jiqrQB8t3ZE6jlXWiFBbPim/fi4VIRbhZcq6ZISWw\nfkDhauCBUVLPmHNvej9AM/T9gSGEpZSkrDFi+m9S1XwHGuUYZE3nV9ay3ZjG\nIkrMToQb2mIfTTASD5WlwFw1XDW/+VfdkySLGycv/RpNVlm6eXY3IxuhVcOx\nJPow6LwDWwPiwySX8t0n0OaOpWXt3V59djFE4dr5lYsdL0NLozehtmfiE4Ke\n4p287FFpwrnpwrNGfC2QHljlfGAJs7PNJQgPuF4OhrjRokK5W9Z9NdPqysvf\nEhj8\r\n=Tljp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5f8fc199a477f54bb52316efeb4cb9049f4a7546","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.2","@balena/jellyfish-sync":"^5.2.4","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.463","@balena/jellyfish-worker":"^3.1.9","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.5-renovate-non-major-5f8fc199a477f54bb52316efeb4cb9049f4a7546_1615438851768_0.745481845252485","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.5":{"name":"@balena/jellyfish-test-harness","version":"1.1.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8f101515540aea7c5735e5677f92e54d628d521","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.5.tgz","fileCount":18,"integrity":"sha512-GaY/u1EZxTUrnYYhgBW1G2CutrJBIFuyYvo2anQiqHMymH5fpB+lIu9ll6+S5mmgEzwQMtyRtJZGvhA/6CeM2A==","signatures":[{"sig":"MEYCIQC957uWjxeUlrMeZ862kJ2rquJbvfDO21CYpqASP3BV2QIhAOimYwzailiVpPSHUG5eL644uEQ6C01zTcRf0R/aGkXc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39862,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSaTECRA9TVsSAnZWagAAO5oP/2AuviTwUUAUPOKcyK4s\nofR++0OQgpRe2oq28ZZd/ZXaSA8YvX3Zuz1Bf/Zjot8pnKYujzLu4J/IBwWa\nVb1paD+HBRhT7v3uIBWxI9d443k1Ost+qTJTPKaK/fP2w6hgcIncN/wd+HqC\nAH0vjlY9nZNeIGqYxiM9ADYasna+S1vRzx1O+eG8saFl8qQEJWlvwnrAT7LQ\na0Ud3m6hhOVdZ+eZg2O9DYrEukK0A2YTjpBTbPO43mbHYFqEbRrFmpDsVLDH\nh+R17Em/rQ66dgdE4O5X56W0fGvtzkVNkJwq9hzOBt9Dpt0GN0QqnubJA88k\npWRTFux4ZdlMulNtJCCxX/w/VGlHkiCN0csoBqITEP2dLp/hIpFUnQpwREJe\neWIitJLJeQIdlvztJ1o4xLhhni/mFFsOaQzgvq7Qvp3VnYgn/k2fvWK5MYXP\ntqTl1YAqEE0fpMi886SwKr9g/hbPeJFUpfYszWymssgEeF1NbqtQWfLf21gN\nw4O8dTRN8XbUTU2TeihFuL+TFNx8vMrMjC9s78bGciOlXHR2kzJC11/y1MFO\nokwp+T4qnjcB2yossFcnU2JO8JHvzlXAZGD1tKfU+Jug1ksizOx3i+RzgAy6\nIGEU16TPGOrMDpFAGF/lpeeqcxjgiwOwEYbro3ICNmavcLYPOKa3m/OdJScb\nZEQL\r\n=aXrn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8a3a571cd378b60ef4558842b7844c2fc4a2e2ec","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.8.2","@balena/jellyfish-sync":"^5.2.4","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.463","@balena/jellyfish-worker":"^3.1.9","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.5_1615439044179_0.6808226629635803","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.6-renovate-non-major-066bd286f5095cdb59a07a7efc34625b74686ca8":{"name":"@balena/jellyfish-test-harness","version":"1.1.6-renovate-non-major-066bd286f5095cdb59a07a7efc34625b74686ca8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.6-renovate-non-major-066bd286f5095cdb59a07a7efc34625b74686ca8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15739be75d0210d026f636528bf013640d9754c9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.6-renovate-non-major-066bd286f5095cdb59a07a7efc34625b74686ca8.tgz","fileCount":18,"integrity":"sha512-1lWpLBMpioRbZzpxgDnHcdtXVKI+NK+x0evfiz2yuHphp7Fsix1cSiU8U0rdKN98SN5aWs8rXd0VaqlNxzK+8Q==","signatures":[{"sig":"MEQCIDcv2bHb5B1KS9gN/Kk9kjydOGMNLctxKHnM2Vwxrx5oAiBA5uPh0q1fJSStRCrZY9Blm3yVBtO33z+2X4ixGImfew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39990,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSgqHCRA9TVsSAnZWagAAru0P/iwCMe1mBXY03M7nh9ia\nYxm/Azm7sdH4ACbXmJGQcOIYDSBTBc8A7FhemBvvYW5EMJYQMT13JZRKuOiS\ncO9/zpE82fJqRuRJrbtMvWT95pEASir9H42CXbRv6pzvQO6x8r0+SdpBwpl3\niecxfHrTd2LHaOoSGhnqRUb8cMnhk78dxT79XeoIQGr0reQ8EBe3HHDNdGmr\nqJVW0tN9ZzTgL1aZW2AuohlVIhqpKZvRcp1u4JJbp2OE3T4Zf3jwiFzU9pAj\n2A8M+aC6lq6+ho75D1GwHu+pZrHxbLTyQ/P+GNFVJsOCHmEIYOwctzrD2Fkq\nbSqjhGnd+DBPd6YmwEfYxOan6aEw4hX38weU8JQX42dMsWP+fD3vZ2SlOo86\n9oJ8mjCreDs3h4CTPlck4ybBQM84Nbj3Tn3MDOYGVCxXrsTzvDS4UG20S8Sp\nqeciX7GrPITX94zmtOrWQR9xZMKd8mDIjpPoyaIa+LOKp0NQ75LE4wNYiVon\nhru5x2y59kyII5Hi3aafpmPVdNrbNKLSSddvQ7lTco5LJMft9759dcCgtRJ4\nEgCT8KoRWmyYQjw/02xs2FJ17F89SpVB2Bwdm8xJjvN6HlNrVTIlEI/jNCk2\nRlnty5vOkeImetVTO02hQX+UaQhxOOSbWBxvIwynuH18oH0OJLyClaI1/b4r\n4G7w\r\n=3Xur\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"066bd286f5095cdb59a07a7efc34625b74686ca8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.0","@balena/jellyfish-sync":"^5.2.5","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.463","@balena/jellyfish-worker":"^3.1.9","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.6-renovate-non-major-066bd286f5095cdb59a07a7efc34625b74686ca8_1615465095149_0.4855859833032423","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.6":{"name":"@balena/jellyfish-test-harness","version":"1.1.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9174d4cc6566b39bab0c40902ae92154510ace6d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.6.tgz","fileCount":18,"integrity":"sha512-fBR6Gve7GqXq07xosIDd6xCuwxAmhXduw0tOCsaoPM352Lv8EENKvS5gs2udoCTv0oLZ3gObNdIcBprv/VLJng==","signatures":[{"sig":"MEQCIAIp5KQdxLEZtFvleZxsf0xy71g4NfJ5NpFDmt6JClZTAiBzOKOyqcXU6xZyblPkUYvlIxcZOa6qsVqMDPUG9PsHKg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39930,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSgtcCRA9TVsSAnZWagAAzGUP/jPKhnLMvFTEsxra6QMj\np8npspWEckcL7+3/EmO0cCfP8W0/bHzFfFaR0bNtoQ6wUMOMGJZ7Qmn31icZ\n5z07UwiLQXat8IOcZjQBxnPgejRBFQcRwjdQvVxgU+K472YFYJpCG/LXxyte\nciPebSJLBZSPkigO9USOdblxU09oDeveBYQRI7Xoqil6uzcpojNo3iAtL+sS\nChqifjVlnffA7wBelc3qDnqUychPqahMNGveDGnYI7iuuPsh3ZIBV7jGKdCd\nEZdaIO1qL3YRg3EGGCSUQpmgGA0ZPwc5V92Q+xqpIrPwh375Czgbt2vc5eLq\nvv1lk5Z4MCggfwqwpQ+y9l2sc1H1n4q3S0blpuDQtyt+Du02+1lELk/RIU9Q\nqilbqFDhUEBv+wN+D0brTDULdSUhy3pzTsPE+zgQYDtUVTpuYY28DXqDvyJ7\nTEjFX3ynQ0TQBzp2/oV4ZouQjpd/+y2jcmbtK36O651eaZgxpZ5ERImX/3/V\nIgoA+0BnNxHjAyPjbRnuGMardghxa+Yv6WfcVeI3HDbVeZQ5OOjQRv+EL7U/\naNmE5Nl/t5J81LtS1NlmeR5ZPIXKrhSfOnhGUxNWFFAk2aBcYvzqtI5xDPGN\n3AfkugBFJW+GM8VaNP5CWjG3lG6IXbhAUh1fDbN5J/3urOpBRCzonxhkqvjl\nVAuQ\r\n=kteC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ad7b033113400a4db89f5e176b0786052306b17c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.0","@balena/jellyfish-sync":"^5.2.5","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.463","@balena/jellyfish-worker":"^3.1.9","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.6_1615465307891_0.5649030769047334","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.7-renovate-non-major-cdda5bd97bca54c465769efd73d0565d327c6cea":{"name":"@balena/jellyfish-test-harness","version":"1.1.7-renovate-non-major-cdda5bd97bca54c465769efd73d0565d327c6cea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.7-renovate-non-major-cdda5bd97bca54c465769efd73d0565d327c6cea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"375839b2a173240ef84626f106dd02341ca1c02a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.7-renovate-non-major-cdda5bd97bca54c465769efd73d0565d327c6cea.tgz","fileCount":18,"integrity":"sha512-/0JFJ+JUfyaIBJiqxb8b0i82Ql/lk577NBjscYd/yT80QJHyV4kjBY2TGBIL/rIeoIINHStod3H0YLzcIOd0Mg==","signatures":[{"sig":"MEQCIDg17ZNHKIZ0q4t0A4NTyVn4Jze2XGUlQnOuh+SN3Us9AiAzpBaZH2fzq6CLRBjxNMwNNeTnjOcZ26DElMn9qB8qWQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSi7CCRA9TVsSAnZWagAA3AQP/j7vhiq3nyXnHQbZfUEG\nRYoKXteuvjAmCBjF0SaUXfMrmVK4nQb2NbC7FzEfdfKmQu7UTJMn2Uq/GtEe\nqWBtj0gGu+XUU6LPwzUgGFFVaYZy6T1tTgsri0yFFBygZ+BSoVr0mdMhgtEL\ncdZIBHTdq1MlQPlUW6ygEe1OTUVFxDdxlSeomDDrFEACm4ELyREwRwDNZtKJ\nIiQHxpfhNOI8922D8tJQxrJKdhSFcxUQIj+tysaky+0jZFrb/26bzfX1J2EX\nkJSpJjV7ct07cyT3cpJHyj9Aev2Cn4cxD0LcoduLjlnNH5NlWBgq58jDe1kF\n+l4MhiEVT7DWYqXqppbBFew8IdpfEjZdau1uAYxzCsVj2wN6hnUeP25OWlwo\nQUif5CiLmVIRCLcffkB8fB/rN4uXfwn/etoK5A86xlSi1INMEQU+qa4+dVt/\nXbfPBTk4AfLmntmWEq1EH41tb+/k5cTA5AdUT2i/eTjzb7wfB77u3RmFqgEm\nGGdZvU2KtVWU/bNU6yjBTEQaKJN82lY1ObuBpHQtuJXGvSiVtOhfXv7KuzIg\nRhOQdA6VRfjQTj6ENqcN8ulLAcSick0Jhqk53myXMeKcys+DoSiPK4Q8tdFM\nNnbgp5MyDA0OEJqjb6o8vnip1MfTAcI9lrqLN3gNcMsrEuc3xzr+dHPd9D14\n8Qpf\r\n=PdBJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cdda5bd97bca54c465769efd73d0565d327c6cea","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.1","@balena/jellyfish-sync":"^5.2.5","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.464","@balena/jellyfish-worker":"^3.1.10","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.7-renovate-non-major-cdda5bd97bca54c465769efd73d0565d327c6cea_1615474370155_0.3971364615136346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.7-renovate-non-major-41d947ed9ca1ea9e128870a0a1719285e3dacc87":{"name":"@balena/jellyfish-test-harness","version":"1.1.7-renovate-non-major-41d947ed9ca1ea9e128870a0a1719285e3dacc87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.7-renovate-non-major-41d947ed9ca1ea9e128870a0a1719285e3dacc87","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e1602a46d37b00a4461d45a2ccb0209e5ab2253","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.7-renovate-non-major-41d947ed9ca1ea9e128870a0a1719285e3dacc87.tgz","fileCount":18,"integrity":"sha512-0rixTKwmh5A0O+4doft9iYJQBIkg40KwkUBcvoHzMf5QM4jl7+Q5HoahM9erZzFqbuY9c8rXmQxLIEhMiNGrFw==","signatures":[{"sig":"MEQCIHfe9I1O0jDAuupAKRCqCzEWynzIRr//cGSPHyMJQnNkAiBKhy85yoDrPoZuzHUSW7r/xWEhABfGa6Lnl2/GTO/DdA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSjAiCRA9TVsSAnZWagAA/ksQAJmIDqBBwmjhZt7lXVOs\nIKseXcgkVYpngfe2I/eUPz1iF32ffe/PDMYaAmuaCtF/QJAkWjknoN+Zfk20\nE3hpMV7LexNvc69MGmPUOYU4LL6550udTrVvVsqrpSp0zGb8UEEeWakrrtlu\nXR9A+czimgmzJTx3TleKdbSj+0SX2yt7OZV4u7yIUZ3x635NZVndu89IZGZG\nFxqaYewU9bWq+yLQcZnGAZtZhIVbEj/2XW+UcAgdGP9x+Q2KvhsY00J+0bTd\nprjC9oUzIg6Od60/WspxnvqWU4vs2V/PfEYG6YtZW4geTQQmrUrbHXLE/n6P\n31btlu4YhD3G9/cGR1SZEXn6t2RE7Ww2Dr1pBh0XXpRjvVsww8OsEL/hbw1S\nmvdh+dWAzJ069tPD2wpQYhL6bSeIyO2KnnHjsZsk7qld8v9x5xuqD37YpwoG\n8OPRB9KbplxkTVZN7026ADiwnMVzkhSfEJ12GEn9Cgx92DrKPKjZZJEUG2w/\nSWFtSw7w8vokDDe6qOeEXF02eDJzT2vttzIKD2JigdTc7XHS8lEQnUL4snWl\njGCv225FEdrD8a7entN1LtS9Cvkr2gha2yvSJcev8mmJgindxUn6MW3wxaJ3\nHa+ioY3imErmvvIROvW6nZhVPmEDwRPIqHaVNghtxhuCi2SGQkXt40TzMEJk\nj6f6\r\n=ywzz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"41d947ed9ca1ea9e128870a0a1719285e3dacc87","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.1","@balena/jellyfish-sync":"^5.2.6","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.465","@balena/jellyfish-worker":"^3.1.10","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.7-renovate-non-major-41d947ed9ca1ea9e128870a0a1719285e3dacc87_1615474721673_0.762799752081067","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.7":{"name":"@balena/jellyfish-test-harness","version":"1.1.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"444dd23b08bbd2872edfd3b85316ca2b00dfe94f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.7.tgz","fileCount":18,"integrity":"sha512-cxu8rnMtnfikbgfzZs9UrwOSnMQbiwmjKR645dWpilFmWEuLxKObVOB1M6QH6J0vBdX5jprJTcqEFthKJ4SKVw==","signatures":[{"sig":"MEQCIGk1DGMT1DZn/wISkngNONRIXz78BeSEG/FStx+oRZp8AiBwr2cmQ+uj5FYQ3ue97qM8wN4oJ3/7b9EK9ADI7q+TVQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":39999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSjD7CRA9TVsSAnZWagAAiaEP/0z0kBHMthXREdLwHxbO\n120+R0ApUt5Lwy38ryvrdLD0Oh0SPnZAOGbqmGfpv9Oq8PdzaxSMSlL7t0az\nijjCODLemvsQZ5fXg68UcgnDsquINdosyCiq/nktX2nZgUAVQYB400ULx4D0\niqGDla3hpSGPOpvCmfZY5KeLKGAhtTYdeRlzxPsRJtOanLM+IXjjuGFZYmYi\n0axyNoQa97LyN9ckw0tJPvZeYpyz+0AtlP1270g2Kis8kfZpP825QlMd9Daw\nxLa9gc+efupbwfHcYl2T1ff0NdtfpjVnN4GL+wnpo9AHqgOAAoi/dE3bawoZ\nTmP2yIgsTCUXNRJiD+uWqBXYLPTr9YsnwfkMnCNu8iQryhw1S1nTyprg691g\n5PEJNQZfvEOgqULhBmfTX+jgx5GhZLJYxEY2bsEG5vn6gPFQgLoTpgZZdFzA\nyIafTi7bQZ4d1Pdiqm6T9llEnJU855BavXQkF06yHEK0V8PFthUg8I5Qs9my\n0WRp5BWb5/1o4S+3w12jygVOQ29Vj8cbZU7hbfK5iYmYDyuCo08Z4PyrmoC2\nPT0pDTsxLbVaLvKkJKjT0Wuj9DpiTq9ADP3B8rBj3sn1HCQ+fZlOOoKgsxbY\nNdhUOMky7ZT9Uvfft4YJqoCNFqZKt4KKwRofoCQr51Tso4erASIiRPq+ly2X\nIH8n\r\n=hsmb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"40bc2e48338164a1aad77bd5255819bd42e2881a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.1","@balena/jellyfish-sync":"^5.2.6","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.465","@balena/jellyfish-worker":"^3.1.10","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.7_1615474938946_0.4435586203608186","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.8-renovate-non-major-c8893efe2ff5ddf1b0f4af10933420b48ea72146":{"name":"@balena/jellyfish-test-harness","version":"1.1.8-renovate-non-major-c8893efe2ff5ddf1b0f4af10933420b48ea72146","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.8-renovate-non-major-c8893efe2ff5ddf1b0f4af10933420b48ea72146","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0df2357692c61a2325c00a3ce5b8eddee560b90f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.8-renovate-non-major-c8893efe2ff5ddf1b0f4af10933420b48ea72146.tgz","fileCount":18,"integrity":"sha512-ZDrJXfrcu6XWZ5vFd3WHAenDomB4RsC/KONyL4u9lJoThC89WWqRuxD4nU8s4UF6ab+dP2bE0NAvmOt2RIy8SQ==","signatures":[{"sig":"MEUCIQCd7W+9u1nRQ7O3LjHF26aYV86PvwVW77sOF7I2XI7SWgIgfh1NWk4MUmghqpMjeg/I99gapXV+GOP607m8Hl1mtfM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40127,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSrfCCRA9TVsSAnZWagAA35YP/3GbtLlGAdxErTwP99yq\n6gnzfxY2G5owpjv9DOrQzJTmPGGekh8SRDFhKJIiYtO1Ueo5rUQekXBlFbKC\ngR8GCDRxg3OyjLCmQrrLaYT03ILlbpyqtQUrBYaiZlGV2HuSudUgFJvBEYjY\nPEty0rlQOcbfGybVtIpv325h9tkoZ5jXMGnt/fDmaaLkEZIt459jMr2At7HF\nA0T9ms3NGUNeTM8vXaPm/JJ6F1ka2K+skcNPxDxlTejGMbsCE4W0cfdsqaGX\nkDlG3Nru69Fi3jYW8+q1p8kell7gPQEBRASyTDBBWq3GtbQv54wNexxMBD5W\nhrhbu2jQ9hIyvzOffHxCwxNVOERvpXfWdsd5nuhr5ruoSZedBnqAwAYhgCx3\n5bYcqQf11Wr4Meudsx9VI0JxJSpBJCv8PY3aYrfF/dRUEzvL7ZUXGx28bKGH\nIa0J2rn8nXnf5zXWo4K/O1VBRc3I2kzCq+WzRRJknfOpBkL9FlX6Ir2ynacr\n5olY1vVGAs5dQcXDyKEs5pIzZIwpPbh/ygNtFylI8JOPclL9GvuNp64YZViP\nRhmvcBSjjGewD8H0slIJSRC1wdeY9yYQXqYYOUBeRxgXxA6UXBarzFz1MMvl\nNnvVDUfzekeqQdkl36QviA2v/jSZ88frasMMbwQPOoPZ3we/5nuga0Rbf0zc\nW8wo\r\n=2qIg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c8893efe2ff5ddf1b0f4af10933420b48ea72146","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.2","@balena/jellyfish-sync":"^5.2.6","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.465","@balena/jellyfish-worker":"^3.1.12","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.8-renovate-non-major-c8893efe2ff5ddf1b0f4af10933420b48ea72146_1615509441958_0.5263650996526621","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.8":{"name":"@balena/jellyfish-test-harness","version":"1.1.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b03dcff00a30a65ff28ac50b286470ba2591adb7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.8.tgz","fileCount":18,"integrity":"sha512-fmIkXiyiRQS7Q55ljrFfYlfktx2Dh+hg03YornulwDSBmPzbDuB7cBL3tQomCKwcQR2nv2iRFN/4yf2vv7PlEg==","signatures":[{"sig":"MEQCIE6SpmUVasGkEfex/+Gw9EkZuBAw0a2FxiyPlowWOoRHAiAIseUnlK3jJn6MePSK0oK9TOl5y4VUQYmauajDwtOA8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSrh/CRA9TVsSAnZWagAAVIkP/1krL27UGUUNVbPSTfxK\nR4/DkNsBIbRcSmzwFrNWJ4mgjrp3P6HUjMUu8yfVEH/LGWaxAhYlHzZZk2QE\n1zQDP79GLI1fIlBZ9pZmYm5hPku0FD6vqvYbR0Lvyg0gJuUBseNXcL/EY+vX\nlsLrkkx4hdCTQAgw10cm1iSs90Hk58n17qqeKUE6S3jJ7/RL+iRT1Z58pOah\n3xbTAp/oFxd8qznZNLmfQLJdPiUxFONmzqrSDjtr7qzSGBx8/k7YhRofWZda\n6wrZmYYxD5k57VUgiLQUGqMEwCWF9tNqeKNbQBhli+ukXhxeM2hiVwjwUi3l\nnCbRgwFF95ibVz3wNvO29LXni9n5X2mG+kGiMCYwN0MoK0V8IJLe5kh1I5Dt\nvn97A1sO/RK6Hx7OhzoPUNNEFoWucZuXUAc4pFw4xEYaihLn/jo/nMUYCrIa\nv4tU4bpL6J5Z8t6UqTzY/Pr5pVKVXjeasZsa5lowXiRXgjiAuBoSxbxETm9q\nPKQh2D7vVioHXV7EbT77zE3n36/6Y6xemIesAFXqwVsi5k6lGyo9Gs1vJPjs\nH0pM/4MQfyKdSs6p7iIgvR5jMWW7WXqHnVvgEV5vKBpXgTK4pinn5QMW8+hX\nvhpE8mx2yzYt+JJD961tpiHu3YHwSnQH+dV6TLQyDRv+FlwbDQ2Ta7z1XcpW\n6IdQ\r\n=m8rZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0729c8ab7d2febca1eabde100a218760854d1a6d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.2","@balena/jellyfish-sync":"^5.2.6","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.465","@balena/jellyfish-worker":"^3.1.12","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.8_1615509631319_0.13855577327143642","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.9-renovate-non-major-7605f40b362a5a35f8cf61c95d778f0e5a77d3e7":{"name":"@balena/jellyfish-test-harness","version":"1.1.9-renovate-non-major-7605f40b362a5a35f8cf61c95d778f0e5a77d3e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.9-renovate-non-major-7605f40b362a5a35f8cf61c95d778f0e5a77d3e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a9346f5112e51cdcbf020c126f0b223d25e1dc17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.9-renovate-non-major-7605f40b362a5a35f8cf61c95d778f0e5a77d3e7.tgz","fileCount":18,"integrity":"sha512-Zsix/agpSfkvDXcYIE77MxljK+900Dy50syXXhrpfoomGNrPRNZ/gvGpthZQJT2jOPlT6owoShMZ0RsC6U0FRA==","signatures":[{"sig":"MEYCIQDgZ4Cb06I9luopASYAOESBM4d+LiLhaZrn9MZZaV6jwAIhAJjDBBh+JeS/32TBy3Y2Q0wMdhesfuZ2yQOX58ywCc2m","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgStggCRA9TVsSAnZWagAAhH4P/iNY6A9CDFd6tcYzcgMW\n+6Ej8ZO6Ukn4XGjchypxTrimDdxBgEFczPQVvw7dK7vvx173/Agmbb7chYKZ\ng3hvfth/T3KiqlmM2RQv69gTVV9022HpNrdnx0oeDaerxHVtSesDzBEWPPbp\ns3VIfpU3svgD/BxAOZBd7ZxGZoHU4+VhUdGsO6gJFQWk+ST0SC6Y5tySoKot\nU1JzCnwPBqVMD71MMIH9wH/bmHt4LKOepJ+s6AYt2vHZFf6Gfzdf0IukLYAP\ns68WJJFOTjIaiquEQEIsNQgJzHX/Y+Q1ses1Mj302EjtHy999OjL24UVWCNJ\nZGlCxd01AINxc2TaQAiKegurcYaXtYVBj6BJD+DYqx9XbZJkO7G3fRBKBfHa\nfwBBUU227NV+gPAh3/41c5aGkY/y06ZZpUw9VCWis75jYPTa88BaUm8Sf78x\n3yPQFgNV4E2WleV8WSOSr35DdNBLW3VDjAZQUPK83ZnlnuTCeYTyShucPKzL\nKzt1n2P+WZECxOHIgZuukJBCCWiLvcBnl2h/GgpdC0Kyjsb4W/1MAcAlkITl\n31mf+lzKi3nKmuHpRv7Nx+bVPR3fE9pOH+3mNhUtZbcXx8Osx2PmsEHEghxH\nHQBARCYa8CFY/NJdvuc8x+IUd9+5GYjwqBbxDkn4sfRYOb8470wESqb/XghS\niYPb\r\n=9G8W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7605f40b362a5a35f8cf61c95d778f0e5a77d3e7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.4","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.466","@balena/jellyfish-worker":"^3.1.12","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.9-renovate-non-major-7605f40b362a5a35f8cf61c95d778f0e5a77d3e7_1615517728074_0.45364025334557856","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.9":{"name":"@balena/jellyfish-test-harness","version":"1.1.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d82c93baf4079fb54e69f2c4ea8f58ff242f491","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.9.tgz","fileCount":18,"integrity":"sha512-yjrxbyixeRUvINDuDdy2OuA6bKMl44m/RcuGZa0RmbWmOUtXkZhU9MN02NL34YLHnZAl78XRCVfM473XbtqxOA==","signatures":[{"sig":"MEUCIQDkaWUOOou4ZstKpCjWt8ZhHNBeheNmZhw5MfflfAnSQAIgUTr5bdnZh/DZYDQfUZ9ze5HnSZlxKIljQ4GLMFuKqJU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40135,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgStj6CRA9TVsSAnZWagAAKH0P/RC09C8mgkZJuCBpBvyg\n+Z+WM77yacghvpGNzoGlSy/b14B44gbs0mIAxF30HwmZC0Fn4QMiDoGgr7DR\nsEBX6bDgayYeE0GCdEMe7po2huQTSurpGxUQObzAW5hl8Z3UOIjtKj4b2Fp/\nGzb1vf/Qto0yF8vyOp2WMANDCgF1tixS2MEmOxlZm59K4JMf6sEAoz8VPKwF\nzfYs9eHR666T5ovyMs9CdlvOMm/OK9pBnzm7EAaGg2fQA3nLPzMVqnPKLjlI\npZgKa+bbYSS+bfj6jRNoMcd0vsYHv4vBz8KTnif+tJbw6uOF0CQxbfQH9tGy\nsjfJqMVaLSGPuYOrs8Xl/nvSX/K2du1r8v/1pTeXGLeB3Iq43V762ZQXX9sw\nd7Axzd5GfpQCoyxq5Jq7rPXJj8X4OYROBDn9zO149XOUEPH820FLvWEDmZtk\nYeFTtarurydttbepxNR/98ZveHlzrC+vyRsiRgzzt4gI6S6Ix03qWoGdBF/3\nycwDlp0MP6FcyBlldGNtD/cNWyidhbLxl9h8gL7F1E6XxBuJTfjPtISQptF0\niDK3MylINMAIshvtZ6coVI1tC1FAG0NCEVM2E3PtyYN0yVnTGq4L8rcEoDKE\n9U+sCViJuxcnP+915aUaJEUEPWqdZwsdFGkov7qzN+YH9h2xhqq8fI1QV92m\nV0+O\r\n=7Oh5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"758cedf6a1400ed1eaa69444ea808117a4024bdd","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.4","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.466","@balena/jellyfish-worker":"^3.1.12","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.9_1615517945602_0.3828418039211454","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.10-renovate-non-major-cd2ac4624315b2d3292516a8761d5076645742bb":{"name":"@balena/jellyfish-test-harness","version":"1.1.10-renovate-non-major-cd2ac4624315b2d3292516a8761d5076645742bb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.10-renovate-non-major-cd2ac4624315b2d3292516a8761d5076645742bb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab4c25da001273512fe787809c419bdc6b684b6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.10-renovate-non-major-cd2ac4624315b2d3292516a8761d5076645742bb.tgz","fileCount":18,"integrity":"sha512-iNCazhLJJ71sJSSB5O7+XM4rvvGvPm5LKwObKM/P64eXoTKtd0UwbQbZOOov80kur2ZUfZhJZSSuuJLBmjSRYQ==","signatures":[{"sig":"MEYCIQCuMx6RU1gKiWanUdaM7nAPwF8k9rdV55BUIwPVVug/cwIhAL6G+oTqChZXSkW5OttmEyLeOkuNtAeTC65MQUzN0twu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40265,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSu+wCRA9TVsSAnZWagAAjG0P/3LWRGU6bx1aAcxhdUPA\nGc/Ql0aQhPN7Lsexo3A1PmLM1aQLm01LtlqmJexNWMW0fahOCeOufqg0xg4h\nso98JzDMS6/2XRisY9qM0P/6kjOuJ3c30SbJzdTHSswhHI98UKntfeiZQrJQ\nndce+Whwt7UxNPwv1izXlUDkmaR54eKZJM7faYITVeYvpfmZckBpmTnWX6O/\nTR2boT4dBbonXEIRN/2cEo0tKE3FADc31QHiGd8ZnSFlPh5az7RObMcmiaGq\nXMg0U7NQM8TZjTHG1Mq5mj8flJnLQNevvqLpSPrU9iFaTJc2thLKQ7TU6Zxs\nugtq8CLw7RYIACuaqxY6UJ78t7MgAPmy06fTE6ZPyrRlrkYoIn3GlRTISSkg\nIBqng3WF0tjytzxd0YSTzuKsPdI/XWeyzwK9lmeLnn3MEzozjxE9XfDuILXc\nXYmJJ49OxMoBkBWZyVFWHCliYxsYH9gdAFrrokzzYY/sFFk+N+MpFTx99BnP\nZhZYppUEF6bsx6KZiiI8Es6j+wr7otN2IZdjspeAFarr+GWPY7ddHTb4Fu+p\npsNScI3PfHxCE0do2DKgm+t8KggFeLd6FAurW4x4uW3aBPu7T3NcCtT1AlCC\nvGJYX1J5/CBxTmRft4No+uY5bBubeROz57q6hdjSnsDP23GA91d+V2NXced5\nDIkD\r\n=Fm0D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cd2ac4624315b2d3292516a8761d5076645742bb","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.4","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.13","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.10-renovate-non-major-cd2ac4624315b2d3292516a8761d5076645742bb_1615523759673_0.32560119288681144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.10":{"name":"@balena/jellyfish-test-harness","version":"1.1.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4605934bc9cfb3987752c0356704f114adee04f6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.10.tgz","fileCount":18,"integrity":"sha512-/KrKaQ8v83QN33uvC6teL/6l6xXu2AFB3eigWLs5iQ8CytiHuL2iAO/dJA2sbMOQ/PckgHbNsNudvFMRf3fQMQ==","signatures":[{"sig":"MEQCIFaJq3/FGIlYX3018uZF8ouauRaQpS4TLF2DKmLwVTMSAiAUCiQdNG87fZVvqsIxtQ+ACHHAsN4/bX0WpUE3NyX4lg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSvCECRA9TVsSAnZWagAA5c0P/RAzY0t9wtPAPeSiAbLS\npW2fNXkBsWuyqgBs6SGSDQGIwL3pS1D5DwMrbGkzBmYKrch5zJ1nUCjgr3kd\nz3Yh+EswW+bTTr+9baHzV/QK1Q6BddfwQjsiQnMv2AARASRA2HPTZwo8csBz\nvaw7pVBLomwThnFP79gQLvgLVarOkAuv+wQKFxb+PspVb2KnU40FGnPRwkPE\nVu2+7cJew/UnJ2jobZaGS+fq4rxfsI0ir8nI1R7830LhpJexfxZCaV40WBit\nz7VDKjbELXBIH0+iVTrt5LR3kX4LfXsgHq1dwhUGBdnQ7xGbWv788L7FRr1W\nPA2dl1IEJI4eLt3PfH3u+6ii6+0VnWNdtdpyY6JOnixcCaKw38YNA8hwQgOQ\nvnJPY65yiv/z5tQhO6Mr5JOUzuL1+fmdxfRMTsuCwxCnbb07qbGARSk/Bkag\nzidWKIcSbNhLyKHNpeVMZzRov6iYbbPLwZBpZtZo+dqpM5iKYKKz+3Z4RzoS\nru3FiyJkm5CghpBL2WRVWTNAYRHgxHUZ9DR36rFzfEuqkn79THuGuSDUywyU\nGlusSO+7A78R9aGphi4cwLCRbs6DXLdt6KZwx69ikef0W23oPiLPK6nODQIh\nplbPHNeVRzsBTCqx2t3GFGLQ+drzuSFy+FvK/tpx1TKbV+w2ouWUhylrKMzp\n0Kfy\r\n=+sZj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"546590cb0b32fbc9f5a361b52bd4728cd8602167","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.4","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.13","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.10_1615523972128_0.005437569616708604","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.11-renovate-non-major-75a3f81da06dd2d228478f1fb53805a4c4f759f4":{"name":"@balena/jellyfish-test-harness","version":"1.1.11-renovate-non-major-75a3f81da06dd2d228478f1fb53805a4c4f759f4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.11-renovate-non-major-75a3f81da06dd2d228478f1fb53805a4c4f759f4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fd6711e48349bd355f41d84615d9f9383dca6dc3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.11-renovate-non-major-75a3f81da06dd2d228478f1fb53805a4c4f759f4.tgz","fileCount":18,"integrity":"sha512-wjCz3HMKEjv3C/Tp5txv/d9Q7QwBij6YVUjyH7MF7lkVXrzVjQHpYJ2Djlt3YvSf1bYuQbubuHdQkpVXhbKoYw==","signatures":[{"sig":"MEYCIQDp81CoGe95hWaDufmf26ThYsH13MHYxt7jbj8TSWAFMwIhAOAGWIKwUhMLtXKFFb+hbGU9dlYZegYbI5MWtHlFk025","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSzg5CRA9TVsSAnZWagAAR2AP/j8bH0VrR+LHM/rCSkxr\ntXbdbQkgSRR7j1dZlDxqL9Rgd6MU1fTZ8uQMQteC9DoWW4OamcsaIc7VueyW\nDcql097Xqn+aFbfPV/HRbrmi2hUpAfKgApymjLWeMiSu74nm9BA3buTPxvTe\nzOQrJRK8ymhA75XdTQx6BnJOVFD8N4g/+nwbY6cmg7ftVp8P2IflK3K4sprx\nFJCavcbq5r0zUcjAHE72AwX24e3FHLziE8Ma8+vsRvS6QdwTeW57pTxu7mcV\nGHfT+8CLRm8uLYvj96cMhE8VO17tGlQej/Phmuw1/tqf050+RQtQAejjXtu8\nFEww6HHaCJmPbonaa0sil3rjP9RMQSz+WkABvYeaGaJKpOfGtrxYBg/tIUBi\n4xLvLOOvsdWvwjkP7CaqS2o5P4tL0rQ3ML2Ym5Aqgy0MMndG/j8IiG4frtXP\n0SmEe4G7TQKTE73v31GM498qkbleVMoBpvi4ftgCFQDYuRpvfxbB27Hy/QQ4\nszKOT8xs15/PH5NnvK/EitePImSZzS4VM83cq06kNUF6oPLL2zV2lsoRz/V8\nQzLPNLjztGlQ9ziTEVMRoom+vPMxGTfedOtAMZPMUcOe/pAKeL4jkSoc/Ggu\nWGftBKzU+rcOkC+7R7t05FvOFTQrG75YouLozEDokN2YX+Hxn3ja4uSnG05g\nP7Kh\r\n=578n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"75a3f81da06dd2d228478f1fb53805a4c4f759f4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.5","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.13","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.11-renovate-non-major-75a3f81da06dd2d228478f1fb53805a4c4f759f4_1615542328806_0.6237038778962418","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.11":{"name":"@balena/jellyfish-test-harness","version":"1.1.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"826b6d960e9817859e31d1962c385dea77ae0833","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.11.tgz","fileCount":18,"integrity":"sha512-XrKPVggfECM1TjbuNsNzny0Cd6bQqzYuiK8CXP+JETFuOsfD8s3OgnIYR9MPL8YvICFm1C9uf8qRdLB1ZWQWoA==","signatures":[{"sig":"MEUCIDRAcGepYXKQv8kIcw7sgzztZvqIPVSDuRe1+AQAYltnAiEAsnRwZMuKVJYFDM2WWMudywggxEuVnhG+EX+w9ec2suw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40308,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSzjnCRA9TVsSAnZWagAAYssP+QCK+DosdZbcZZjAitxc\nlXAN/kwnGVhNtCMJi2P9vXXipK+e1jy1xba/8scrWDofI0yDrxMwwmoc+KBk\nLRxzLiT1hkZuaOma4AzfxAZuZiNtBTOWCQ80b/oauMo8oEmxcUpLc8DM70r0\n5q71MNe2BL4dArehJuavzr1qxoNLVcvPli+6wHj+FgIwBKgntAMw440qVmWI\nQ0txVPMiln8a4huUY1BHg+ewC5Yrd6t/Ws/9eeux1iplc8Yma6AHWs2D1Fhr\n8UL4RpsDz0+GtdYK6JHxiw7HC2NdHTSh1On8KYqKpHwseu68s6ZnI5Oa40NN\nDuRi1dJDnxAiHVZsELMxjjlqobG+a/LQCgEsVmYDGPhZJrwBnrgg9xHEpJbK\n7rgIHMbtlzrE2F2ojxy7N/MHzvb8m/Qu/12EXv9PBMeGGQjI02B8apjU90/X\nLSs6JR1Pn95NichwEDipYAJTBZxLX7M2m8Hxa7Pfmu1oVGKByvi/ZZe0tN7C\n/80KmNrd0vfW0bZvwX8fEboozijf7sH9RgGcOYc+yHFjgaqzR2kgbRPyylAr\nyb485I/dv39Yy2Q1UWgnsyTqpoDb2qIakPpJANNjuTRGLRf+AqYhdsWYVAMa\nRUPiZVzg5RG6voy/kkqZc31OVp8kd6iFeuGcpoDZjRJFds0zC4RmmUtFUddZ\ntjeS\r\n=gX9h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b24e081badcba654521fa47550d8128ac6452ae8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.5","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.13","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.11_1615542502757_0.8229900785949305","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.12-renovate-non-major-86a99eecf673ac8718fe3b4923f992522d4c6899":{"name":"@balena/jellyfish-test-harness","version":"1.1.12-renovate-non-major-86a99eecf673ac8718fe3b4923f992522d4c6899","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.12-renovate-non-major-86a99eecf673ac8718fe3b4923f992522d4c6899","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc67269b00f5cab9a49ca0d9257b900a26f52f1c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.12-renovate-non-major-86a99eecf673ac8718fe3b4923f992522d4c6899.tgz","fileCount":18,"integrity":"sha512-x07udhkj694fhHmnT5QvSTLJkt/qV5nvZmrHql0uwjyvWDKpYKu3oo60uiL39Jy9ydrVmnhOI/Y7ljEmuyGRog==","signatures":[{"sig":"MEQCIE0Ddl+j1QcX74d7kGIN6JHd2D13bLr+XLyXExqd6behAiAMxBH0yODJCo6yLIhTZZg4OYBIfr9L4xLZMyig2um3jg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS11MCRA9TVsSAnZWagAA5coP/19U12n90xpO9C5ZpV5/\nwmcExYI9WtTvp4HArN3F22kjogLXuc+yaKujAoO4m0x95vyGcZgzS2/el9HA\ns34cjLZtba24eWtLaWOgSQq2z100r5+PNdYfciG0Lqab33ji3XdyLoHwqnDk\nGlcm2uN67Is6/JCI634I+Gbx84ZVIDLDmN2gqZ1J3yak0nQAcDoSMBj9oKn5\n0ujQ1hTLeO/z6dUEBbHAqWE3gQZNrquX461upUi4fdixEOGUDwhW25GjqCEX\ngqdt2oneHVuvD67d+icThRaO7BsjWdYLtvzJNKk+5XSUm27qjKOGhukjb1BF\n+0tVyg3A5nxMAgybjFpLRXPlxo6QFiaEAP+iKdv353U5Dd6LupjUcLZkkOXf\nfOPw0/1t/AydsKqD0VKHTwWxHfxCZi3FMFjeQ6dQcsYLBs9L7WPug7uAOOHr\nVJuss3/F9HgSw3yd8E32/Wi+X6VbdKich0dxYSRRiVQRy5shI5ILiObucdTW\nVf1UEWXWuD+Vo9Pz+ySxn6xX7LkEuH9y36gBOlJTmdqoQRMvHUedtXswm0Xh\ncrUPXaSpi47Fg4fiBddNyMCJjT3//7uQ5bcay96RGdeiwHGMDV3J85y3gypX\nVBsszAK/NwIqmFyPLNV60Pm3esxD5eOhL1OFP0GTL7Jf0io4B5S7SYNAZ/Lk\nKObw\r\n=lQhP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"86a99eecf673ac8718fe3b4923f992522d4c6899","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.6","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.14","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.12-renovate-non-major-86a99eecf673ac8718fe3b4923f992522d4c6899_1615551820379_0.16160255349642205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.12":{"name":"@balena/jellyfish-test-harness","version":"1.1.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a67ca19372de8b7a32a0448b5b780571d1b43049","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.12.tgz","fileCount":18,"integrity":"sha512-g3b3VrNMPfmMH/1MLR1T80QW+vPN7JZhKLAu6eCjOUOnGMQcvm9t2oyOy77kTY+sY0SYpOKXnqlCl92WJB5ajw==","signatures":[{"sig":"MEUCID1H/25qANXGJuJfD607vk1INMOucyf8fCIy0+gWP76XAiEA3stFZdLa4/hGK1fZ/+5qEVLa+eLjrvEWETC3bQurxJI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40377,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS14ICRA9TVsSAnZWagAAk2gP/RgLsjRSrUGSgYWPThnx\nVgezizLuJ6DvjTjh7EP/RiG70QAlNFiKJloGO1S2923ASEAqGbWhxAv+RsAe\nh+8h4oW86zpMA6xLPSZVW8UznWM01YJcr+TVxCryci2OHjaxXDnnCV99T28E\n2KPcXN/bkiXW6fzG8sGmaUteTSeCorKYaL5Agv6MP1vTWqe8cO9BA918R3rk\nkTnvG7W29GOhdiJVfMhtuzjknNLAPyPWFycUtVCHI+WDg4WbM62EStVcMz9U\ngOfE+/806LaNBVnWZxChIaSIMNjDIIc0rnzXIqpCyMMAjP3x6TmqsHGH06Jw\nkX+1TCwVaxSjNTCO+D41eXhsmuGL6tXmG8USYNH/bULjK7rwA0c+EdnwPW76\nURuZupSTH25e/aKubHiFQifLJhaR2bfVbomK544d6yCx+GLuqfqq5qCV+Sq6\njp3kTzfNM6fhcCh95dX2jbX1Kzg3USc19JaF6HOwngAwrGEc3GIyQcCsgKlT\nHvG0owbAahZ7RHD1cEbaA7Rs85UyKV3bF+2orkMo4CNA1FChIyLV4kDUiRIY\ngdHbW058Noe329caPaJdtSgHyIJIQv9jAVmKVq00WEwr07Bm3JptGztT7Ksx\nv6d06OM520AYiSn1PTOGoaT9Q1M2wZEChnHXrFSomJqD7KDuU9GvAVhiF4Gg\nLCdy\r\n=iZzk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"781f77b17788a43b42efbdacf27ef5fea1f78e06","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.6","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.14","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.12_1615552008539_0.9238838773700133","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.13-renovate-non-major-923428c21d7eb24cbc4972b4dd8698a865eccfb7":{"name":"@balena/jellyfish-test-harness","version":"1.1.13-renovate-non-major-923428c21d7eb24cbc4972b4dd8698a865eccfb7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.13-renovate-non-major-923428c21d7eb24cbc4972b4dd8698a865eccfb7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f23521cb424a7171c8ff21958df0619a75de611e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.13-renovate-non-major-923428c21d7eb24cbc4972b4dd8698a865eccfb7.tgz","fileCount":18,"integrity":"sha512-Ltc9hJQUEDLSHBIzx5DecXttiKHVSpY76nOF7ZDfvOQSVn52hVcw15tYHbs2yAZvseJS/hzB33wrFNGISAOmPg==","signatures":[{"sig":"MEYCIQDVKY91a/RcgRWgJ8RMC+qO9Rlr8+7VflbCkCMYbWGswwIhAKIuK/hD2BrS/EafbauepSGrNVOi2dArn9A5+uiAbx4j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40543,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS83YCRA9TVsSAnZWagAA41QP/1PoJBFGPWpB1z4FvhBV\nRDdNswHY+HAreJr8nY+MD4muNrN32aD8GWHT2AiphuguRxpCjXlmqgCgQaMl\nbcSd+wXgYRxxDw7YRpM4wbVcBreoFP8a0Y4NL/y4WwTvMLTOzta7uc7SOYQG\nf0d8q0dDJv9bW1fftR4YpceAtFN4fxyfUWLzjmeRLx4o8M8D5Zlj6lLEdHK6\nBu5Wyfl3rux7zAgReYB4QDzJbSfLYU5Cg+oM/Sk0tsDC7DskfQKAGRVJwYPm\naDSK3XIJ27Osl0/2cz92yLzOb2JzgCgb2a6SV3Q1lWqwRuVPgfqyPAq5Q4LY\nvl6ehPT6BY1CbE21ZyWRzmKE6N4mr2f0kJfs0N8ysWs0FFAW+j9v31Hgiw1V\n3jH1E/dfDQTfxxG2Lw28E0+3D9x2DyBxdMOGau+XJ0TabUJfaD+B9UdyVpna\nQVWMyTE94fnW/Zjn9AjMlt/94MU3j5cjvFGzFOnvEjIa9EE9YH7IEBf5W8Ol\np6MvNFr99jW8eZR0ord1lDLenx1UOPIk0bQnlWxNI07UO7+knSfSA9OuK2Bm\nxsCsZ0+sZSfXoSd8rjf+7Ec6aDcL0u19ffSe2+n/i0dh38lIV0CYmqP9BUyy\njBO2GMZyAszbepucjJ76W9p6iX5CoFQdrF8QdtaUcJE783W7bryd0AfHI271\nBzLV\r\n=v5PW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"923428c21d7eb24cbc4972b4dd8698a865eccfb7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.6","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.15","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.13-renovate-non-major-923428c21d7eb24cbc4972b4dd8698a865eccfb7_1615580632292_0.30661872075093055","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.13":{"name":"@balena/jellyfish-test-harness","version":"1.1.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eaa9aa61b4698458aa9f056cd4acb15cb3ca414d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.13.tgz","fileCount":18,"integrity":"sha512-lexCefby0QA7oBsJvIkabtbsIfasmLK4iylySCG6pHJVcI1TA/kJRwNSbBSYkY/z4GmbOyRlJOrJUBIzEcVVdg==","signatures":[{"sig":"MEUCIHB6e0MpZ373QMw47BwvI6RiSHsxzQZchWZxgj23Ry2zAiEAtgK1zijnZs6OUHReNSZy46K3rC+G2zXShXs6pqWyWxI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40483,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS86ICRA9TVsSAnZWagAA+QYP/1DSxZkoamGxlWihA809\njKyGnrufUV1ZepNBWnaC7uNDcQCEeGltGYRq5oiqeC0vzwN8rgam97jz6pX5\nETra3vGKmui4O4FFa5y13Qw2fmVVFOm/iun4NuipU1++KJzlfIEXjD6YzSOB\n0+wkNlaPjs0RzUywWctZiFaCloX1CnHvWszZKio5tC6/ZPFgD0c12dqL/dzL\nIDZ72n4TtnKhzBP4PHj2UxLOf/eGCSAh3DskcZK8+yv8PcYi8ADzbbpMZnBZ\n3nI6J8E560W9XYKEsPmCoOQnZ2wgm8I1h3Rht10HrO8C86R9LCDoZrPKRSsc\nGv4F9zCo+u4c9RGX2uCIe6yqIB5mBD/wJDNn4luCcZuoCmVQx/UZrHcyCGY4\nD+ROGPDGLYhG3OnNeUREP+HbcoRBMi3egAFPe9CqDGG+LyeN8sozKUZwbLlu\nx1b4zb7JjtcaHLXjxp/LbSYJ7tc3rWZY/dDqYl83KyDLaunlM/OMjsxFtcDe\nX7wFMOP32R/xh0pJuhajIdoGuSEgarKBFg7R9WxYlvSV1Oz3SY4qqz2nxJM2\nmmrDTM26YY0euk1tiLB7hTOtNE1UhAxJj4aWVhusHJfEq4eVIXFxA3WDnFPR\n+iBsgf+ld1j6cvqBSJEF4luyzO1WkMU8XHtEpSR3yBsk9bGnFkeXuYsYPhNK\n9uf0\r\n=zaTH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a5d20221aede9663243fe364a139c25287e17ab","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.6","@balena/jellyfish-sync":"^5.2.7","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.15","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.21.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.13_1615580808201_0.7393145533122711","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.14-renovate-non-major-b87efc52a35118f9687ffe80124cbdb773ed862e":{"name":"@balena/jellyfish-test-harness","version":"1.1.14-renovate-non-major-b87efc52a35118f9687ffe80124cbdb773ed862e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.14-renovate-non-major-b87efc52a35118f9687ffe80124cbdb773ed862e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b61439c7bc1e94cede110a69b3d67ce0de48444","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.14-renovate-non-major-b87efc52a35118f9687ffe80124cbdb773ed862e.tgz","fileCount":18,"integrity":"sha512-XTzUt4h1Q3ZufqYVk0i4ostfsGyp3tvPVD/kvVX8e/0P5GcUBLX0LR1SThtbCMZe9IbR6whua8KRVxd5/Z4JtQ==","signatures":[{"sig":"MEUCIQCgzq9j6BkginqQKqKiSuP4/EtK6vu1QUipjn3riukU2AIgabWb4SUG07pT68Nixf0irxdIy41b6zUQNLG7onbfcyE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS/mxCRA9TVsSAnZWagAAL4YP/1I7htDMjKnR9/aicxoI\nlm3KiAEW+QOdVr4bOHZCRS0+dpxiwqbR4PkLkvcgP12xa6cbuIaquwJ03Bcx\npxW+mmtxhpWlObQezJ0utx1d0OrSBJOAw5/GF+4EHuFS+PDV9HbCHyAtDhVg\ndUwtQcghtSeTb5xniwe5NopX88PuHmaME9PPU5euTm9s5g5+JvRDU/vnA4OM\n2L9NGXDwcnlu6sJBps9+Mr7x7Tx0c4NFCq3jxKs5DHDsDh72h0jMP0tNJfYY\n3XjaMsgQ22GZTQQVpb1veRjoD4yMZhMQMZea/qCvQDgD1UIea8CLbIZSEbpT\nim6IDJZc/uDYtgRqOJCJB5m+opkmcnq2CQVRx+EtCcvkxzkOBQSOiyRyrl3m\nDiMVMkrOONDNS1A0JwzF0c+8Azv57dmYyJvn2m2lzNEkq/gynp3xjYpYwJOb\nu4D3n5tQWltaWD9byRYDHOByzaDFNw3VXUUPtSbrblGTfE6D1X0bwoPGxUQU\nXUGV+fkvsitB5D/ey+gefP31nrMFcrCON6/qn08s0PsFRnMkyzq88T3NsalP\nhxXZMIHDLaZPnKRG/HK0PIm49HL7LCaom/GImL7vEzMEwicjk1hiNFC2DQbg\nHQQoTSA1JlFvU6BzxOxzUECFMz9gprxydyJq0uExTanp9iFoIp871YarqOXZ\nhB4g\r\n=MRda\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b87efc52a35118f9687ffe80124cbdb773ed862e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.7","@balena/jellyfish-sync":"^5.2.8","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.16","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.14-renovate-non-major-b87efc52a35118f9687ffe80124cbdb773ed862e_1615591857161_0.26941295378337826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.14":{"name":"@balena/jellyfish-test-harness","version":"1.1.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6c7f67fd55298b5c0af25b530fd1849c15c1d983","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.14.tgz","fileCount":18,"integrity":"sha512-FRP5/4b9dsKYAvNiUgja5Uwa5UmH/8MGAZB+T8Eg46Zf0dZH22WZyqK1+P/NSrXRu0svvtoVF7E2W9X371KOWA==","signatures":[{"sig":"MEYCIQDJwqE5MMm/W3mCAyMGF8Q543aray1RFOs6cCwFmk+QwgIhAIjOrEo8kE24PHGsWQ7nRJqE1lrUZn3DIwidJ5k2PNPJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS/ptCRA9TVsSAnZWagAAHekP/iZZ+lFsZs75nCQYEgby\nzMVSqCkCsZizCew4vkIfCAu2TyYHNOZ5n7VCV5ABuRg0kphRtWTDjaviTTK6\n1b4GHnivSPPs34KyTygmAHuR1d+1zx+4/YoqxVqDrOkQLio4UN8yU5IWjxan\nib5QrvcUh1DmuAxiQuyZkvxAvQvWf1IKUc1r2lgTTxzSg/3WFLUBVSdV+SwC\nqUWK20VJZFcA2Ctg0lFi6d/0UOMLJrO5WpqQ/R90Ik9y4N3c9VbeHoYVaRKs\neMxPvD9PpevHF49qzlWIwawiZ8B8B1meaXFF81s1JLyZx8rBAmKZr1ZoDucf\np/eL6GfbDBfM5h1x+XhekWAp932o01LtO2PJfLCE8QCMR4tJUhtUANNzu5ym\nJnNAllwpkBbaRZX0vv+bvJJrMHwJnnTS/FasXCsSjQDIpkN2KTr+CMW9Kxuv\nAQpr/TvE+xYb8f7JfzRJ3d2xAqI39cuqywKlJHv9DGpNknWUn23+OECRBtoV\nbmwVRtIIPrBkdzGl7+lbOlPNmKlLApLH6QiUzXpEmDQddCSJhWteg4qhr+lP\nkCdeQGwiDu2NOUJqAE4No8Nk1cDr9oU5galPIMyyOIE3Gkgs6xjrTaMYIRqj\nJkGPA4gxg/0TZuo2ShxBlY1h7FTwdc3NQIa/o71MTCjJQRPHC1GA4JsrzrdG\n7604\r\n=gCMW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7907aee1de15e8e5e833cf9ff86870c76a0b6dda","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.7","@balena/jellyfish-sync":"^5.2.8","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.467","@balena/jellyfish-worker":"^3.1.16","@balena/jellyfish-environment":"^2.4.24","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.14_1615592044647_0.04199765597112792","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.15-renovate-non-major-19f497b78f9bfc0abf84c18aeb28a8c215f7edb9":{"name":"@balena/jellyfish-test-harness","version":"1.1.15-renovate-non-major-19f497b78f9bfc0abf84c18aeb28a8c215f7edb9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.15-renovate-non-major-19f497b78f9bfc0abf84c18aeb28a8c215f7edb9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0efee63a51dcb639eb6eee4da792c64cb7af9274","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.15-renovate-non-major-19f497b78f9bfc0abf84c18aeb28a8c215f7edb9.tgz","fileCount":18,"integrity":"sha512-x2mrHS6ZQ+YP36JsdBfW+mfmtzXK5UorfwSylqykOm4PhqnpCmSI1Fsd8p8bCJGiapY7q3E8/4e9dHxzjEQBnA==","signatures":[{"sig":"MEYCIQD+Rtw0JatO2muvCPG4rayS33SaqCvf4LA86+bV8ViDBAIhAMJvT6jfXpt1lDGOMZEODDlQs3Otj9rQzexnPvAl3y0e","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTC4OCRA9TVsSAnZWagAA8o8P/0VsgX3I3s38tQa6tWtz\n1DPgfqDqexq3hL6u7YmTG20j0IPxgdcCW0xurJe6HrmBfzdLyfq2o9DNo23b\nwqBm01IAzRwYP9CQlrKSLtRV9wWFYTqg19Aj4cVJimm2O+B4Lqvh3api4vax\nKNKP9ltn/IURL4PIG4SfXXUVCABc7b8vDMzZWDi4FAlXCBWJOhZx8z7gY/dn\nbZXJGGPRBiDff+4Q5eKK3YBAxQUwrYzfM0ZiJVb7D5v8DMl9aAKsP8FGrGPS\nl1VY56qB0elyJAVd7SJhL+CwJxlEqWmOsYln/y+kfb1O5+xSbmiOB1/JP+6y\n7bYc+g7u5RRkqPoOKU1/dAPeOUTEcKK2irjTvMcSyakTQPmFbA1JVSwfpHZX\nex8chOwGUlaB07rksBsCOPYjb7zlaUu3TBYTTsyHKnv6Z4eCrgBcAdZydDpQ\nAaAOzfsF8SE1aAo2/MHTfLmNQ69beqA6Gb8VZ6j+IzhO/bzy9YAreXyQvCUd\naBy0MYYQJ0mrM4+8rcKNMb22x+wwDZx9YZCpBu9c5aJv9Lybe1Pe78lHZ8AS\naVpPPRNS5CdO0EUcRWBm+Wss5xuGjUVnybqJYxj+WJYkEGb8GKUBU7bUZB4c\naX1LijgW1leKWZPjPPWkPWieq2OLombveGKf1/6p+szxqfZItHM8t3NdM5nh\nExoE\r\n=Lpnf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"19f497b78f9bfc0abf84c18aeb28a8c215f7edb9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.10","@balena/jellyfish-sync":"^5.2.9","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.469","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.15-renovate-non-major-19f497b78f9bfc0abf84c18aeb28a8c215f7edb9_1615605261542_0.17119047832635625","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.15":{"name":"@balena/jellyfish-test-harness","version":"1.1.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c210c6e2593655e0ede543446adc53ce7fd7606","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.15.tgz","fileCount":18,"integrity":"sha512-AbiGTrJaUy/nXEi4wGSGFyDy4Z1TdjflkjLA2hqvvPS3c3LLScmJdx5yb8yQdo/NjiedjMQSNi9Kj1+u7dQFVQ==","signatures":[{"sig":"MEQCIBdJH3Mtr9BoHnIJ1JMtMnAcFdCDR84bEin2XjWUZHAVAiALJmRk+x1F0oA7o8lRO9Z4bdFeCkf0mvW5nW5hguH28A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40622,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTC7HCRA9TVsSAnZWagAAVgQP/0voaivUPi+iPtyx7b+S\nWeyNVwQZ1Trf0p8xyH3+pC1wJZSnCIuaz/z+VvOEa358VITrZ+ysZ9IXp3Hd\nNnrlKRhVFy6ojfAyMrCz/TCND/7oJXRZeFAaiBVb44HVIrk3cAvxCvaTDIGk\nrTGrVsgWqqlK1tpHykY8FwZNy9hb9xRPz7dn5ZFl+9duZjVhlYTx00afkZWg\nqZ2FfW1tO8w8zXNDDsfC5jNSjuecUN/lSwhaum8fApEUETPDOGy88C/jTxfR\nq9YzwzbMBEnd9QBDEbLuZjureH8CAyysW4SH52vngOMwWIuetT3FkMrdWs07\nWOPr6Y1o3VRdR3eaPR1hwqxRVt7CRqeD4g+nft3m5vOJ/TKiHQ4hMGgjZc7v\nVaHYhb4dSvYB1zo2bXTi2JtfuzILLuzHArmHkkK7ad6MtmvMNm5fQjM3vBWi\nHufXwufw/NDZjih/R14Nf6HppoNjDP5VKpzUeqy4TI7X54gzLsC2qQ0EYSkB\nSBjAVRc9t3VFGE+fOIUEziBdYBz9F70tlpsWER++//IAb6VbdQrq0D1c5pJI\n8JZcdH6sSBHkHN9jCAW2F3bW/dgj4bxJoDi6CsBdzKxBKMUPuReR6O5PkrQh\nzTsRGIPfFzJ8HXBvZqSZcXYDgURFvC0K17uqI2VvrNBNGThOYCMNUdlqDXRB\nC+wf\r\n=WhA0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f31be5022447ce795c0e69e5093e5e7e628dbcf5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.10","@balena/jellyfish-sync":"^5.2.9","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.469","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.15_1615605446598_0.12490356379899525","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.16-renovate-non-major-16dc0035038c7e988064b4bc4df0b382d7b47922":{"name":"@balena/jellyfish-test-harness","version":"1.1.16-renovate-non-major-16dc0035038c7e988064b4bc4df0b382d7b47922","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.16-renovate-non-major-16dc0035038c7e988064b4bc4df0b382d7b47922","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b5e3d281d82aebefbb09dafcdc53f63a12bcf91","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.16-renovate-non-major-16dc0035038c7e988064b4bc4df0b382d7b47922.tgz","fileCount":18,"integrity":"sha512-72KHzEk55EPvA8ogPK9i2h3oRDcbTjIsM23HTq0HwMC6DV8iYlfUxLEZHXEP3ogifnTsxl6N07rNgmjClMN02w==","signatures":[{"sig":"MEUCIQCr3bzmlK6OSXkn3dEh7ntZw2pH6BP6qiBwTvG+PjANUwIgOywzUi8vlQ51fEVmg43onzODq2azwqned0EgJSvAvoA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTF0yCRA9TVsSAnZWagAAYDwP/2g+qymAgch/dRHbJPhs\nsjCzvwk4w3RRZyKfn27bJEqNrbmQhekziaPd4hb9nyLDWyvOaM1x8cwwp/TV\nALun3YxAImwFP88MHUpsKn4jUAj5/0EtEgSoEMifZ8+Zoaj5/iEe1h/zWlcG\neBiVBlnLvlkv5k5LGue0uVNae/YuvY2E/w7NpRbuR6rYr0E9Ux/G+c3VWgw/\nYNNTeZMTAIs4GCQmRAK+LjvtXy36kw2vlO9ZGgfb1XPLEqhJ4qxI7McnBZ+W\nF/GlEF7kgi0sqbVminPrhD9Yn7cqdwC0sPZqXffZG7w0fJbyOcRUfQbYuzHl\nx+QlCaBxVmXE9NIGuKLN3V1uWK6+QWIK7bW7zkSLdZQL+iadIcCK0OoF17uy\n256iwQFfyfKnEnE25aPeYyZBm5aICA8u1sUbGzI5poel1bnXTOOTi+jL54EF\nZbpVFHX49dlrxEP6Cvs0hnN7Jj6l0/ufMnDDqbAvjStOUPqcibTho5gFB092\nt3zrOy52jL62h8Azb8FtNc0CulMROVeY5jSjoyfD3PzakqyizDdvj0nYcoj2\no1EqSYzgk4NHkj49CkEBvtHLUD+uQLHNJK2XQL8S1iViwUAweBGxTNFKd6TJ\n8Nx4CwR/m/Z8by6uzkELeBvfQomJVryFJ9AiSeCe+8pN1xRiOicvw6oO8Vl8\nGl7h\r\n=b5P8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"16dc0035038c7e988064b4bc4df0b382d7b47922","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.10","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.16-renovate-non-major-16dc0035038c7e988064b4bc4df0b382d7b47922_1615617329648_0.28623537707379776","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.16":{"name":"@balena/jellyfish-test-harness","version":"1.1.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61cc522afa720aa2b903d706eefef5b62073c696","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.16.tgz","fileCount":18,"integrity":"sha512-trCC6hGHyEtuds/uJav3l55QCDWJpc+B7K4nUImBCZJx6Xnewpr1VyCLhvErbpTOmDkNtt0cupux4SJ9ADD8rw==","signatures":[{"sig":"MEYCIQDY8PmarIyZKutPKa4mjJyiWiA2Gr+6vIuAtE/68HEq/wIhAJn/4SpWhNK+FNgLgRLKCmnvuShGQTcc+Y07mXiIgv//","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTF3eCRA9TVsSAnZWagAAOA8P/jT2zbod2MTD0tVyU3nq\njF9dYOOB25eWfeEej7Z1o0XBX9J50uPPA0aarVmFKoJjyCAHYagBnmrHSpR5\nT3hXNvdAt1JTaOUidF0jfTA2htbAdWDJOUqwcMlpqkYp5SjyDmATlwuE6hFV\nbWgvfpUg3BhIAfVLkfTOSEYY8kDKJskvwMjYeFqxlhIIhdpetwV4w4QlfzPd\novgvFZvLiWWUD4wRSFW3E4erk5Lr6rb+kFKNFejiJwSjBeHxu4xkYrft8PSK\nyVK3atAZByplaaLMBaGMzi5gYJrIlwbkrta+3o/TqXs018whJisL+6EsghZP\nDrxOWBCn6spwX1JYrG281R5PGBSJMSWyUdtRLxvHterrbK1OY24eDGAGt9Xn\niXHhrR1xJdCjHVsZy3mPeJpRWTjp2GPapKAfO8hJ7rTwfOV9t0R/CoJU5AVg\njnxEYkdxgEVgoqhRlmMiOnwC37lMOgUM+ZsrFTMXJb8xqmv7fbXClx8298mv\nHBonsm+FnHrS/Pr+21A3PlRAoF5PeclTdbQrLJp3WoEWmVb+1q3lxay0wckP\noZMDEU9imBl4fnUIvawSNQMEwHaJ38jIuI/4PU2HTL4sxy19XWLnx2vFKmD0\nOmKQvqgOg3ADQA1Thy8bq11mBAHUZ8aslqE7TTWkalkrk5Bq97G7SwznxWmv\nKB7B\r\n=4dRj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0785fa41f358d184a3b08b0b0e8eda673a59b077","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.9.10","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.16_1615617502137_0.6874137410484622","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.17-renovate-non-major-da3b5585c38b00c1dcb574437efeaa7c4d37f9b8":{"name":"@balena/jellyfish-test-harness","version":"1.1.17-renovate-non-major-da3b5585c38b00c1dcb574437efeaa7c4d37f9b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.17-renovate-non-major-da3b5585c38b00c1dcb574437efeaa7c4d37f9b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27d868f649d53572e5bb61fc3199d47a9c24ef13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.17-renovate-non-major-da3b5585c38b00c1dcb574437efeaa7c4d37f9b8.tgz","fileCount":18,"integrity":"sha512-x2pZX1Ka23kGWclNFcnUlfLMuwLoYRZWco8xYjKPS/RPewANgAfIBZG18EuRBqY4EQhUUNaTx9ZEUiwyaxjIpw==","signatures":[{"sig":"MEQCIDiizWctg58wxJLVcz2S836f82yc/APqrM6Qv1O8m+wAAiAlOHAz/OB+uNCzIS7ZKq22nDoJVeD8JLTvWKZdA8AZOQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTMB6CRA9TVsSAnZWagAAvoEQAKCDNIDtKIdIlcIJhJ/V\n4J7I/cMTvka9RVeLq0v9OcoU0veYBSe6Fk/1FtNan+NTVKRBjvLnbvKsrWA2\neOOOyvRY0M8h8kX2u1Xfij55YMrI5NJWLma5PcqzE3ENzYTnX38J3dVHD1qx\nD1zWNw8doT9qyZ9SdDYwgMv2au2jVTN05O085OCxmIiy6Jug9YgBMrv44gI5\nRWu7ZrmvUDfsAFmy0lsVkOveVRBfRfosktn7KCezXCMhG0ZvRZSSWrbuAtzn\n1cxRHnxU13D5Uwmc6zwT26tPKhMyqF2ek+nDze7BqcNyg69BruW06eBJWy+R\nryngletRDhN3YBnxpLakaAICfXxOGkWhlMl6I1cRVb2tm/Mu24Z2SEY2opzG\n69AW/LwyfTk5GY0t/u8r0gtv7BOopuL8ueBSBDYefRy4U5/wl6n49iSVjiLv\nGBGJMFoZVDxqLGAWvk3saNQ2Ack6VArUMlH29ev31vNWJs57bcV4U9L135p2\nNSfauPDApJaUyETkMKcl/Pe62OUG9GWLyM1lIZN2wB5IgebV611W+gf6twPn\nkqp76XynG88MXSTkye3iVTDpoUZzOPV/DV+bTm8jOpJzfCksYNP5GpvMUeR2\nlH2yoK9OcilRthUth8UV4jtuCekOPi6ERGf+GKMXtS+q2QiZgAJPmTRsO1S9\nFliS\r\n=dt6R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da3b5585c38b00c1dcb574437efeaa7c4d37f9b8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.0","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.17-renovate-non-major-da3b5585c38b00c1dcb574437efeaa7c4d37f9b8_1615642746450_0.5452865895168599","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.17":{"name":"@balena/jellyfish-test-harness","version":"1.1.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad11583d0cc9bab7b50b7eedba13be90eef7a215","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.17.tgz","fileCount":18,"integrity":"sha512-YZS0FbY4W9y7NaEVC8Dcrk363WGIMCcPFgPios5Ud7jF3/4o8FuBoq3mYEphKX6W76GdFevEIkkIIuJR7xEX3g==","signatures":[{"sig":"MEUCIQDpYmhO209qJ7C+jKza7TLC8gzSSFf4Ab2nmOZYJQLGTQIgKkANIz4+QgSNCNBgxEw49CkmYT9zUmpvAEjDoUFBX7Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40796,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTMEpCRA9TVsSAnZWagAA9noP/33XWgAqEufUxcKHyVP4\n5CDa3qFcX0ILuAC1v1Erga68P/TKzN7gTdTynJhrDwXi26rs59x3H3ig4kHL\nLf2g8xJjddO6AxUYSIvAsWnbeV9Q/cg8ob4WUoXKGpIV65wBn5J/DIUibOEH\nC+HFSTJkhHCNEHywGhsll0+mv3uiv6SHGTP6zR/9TGxrr6o60qNehDHQvyg0\nN7CHpz+p6d83McZtlPCamSy5u57JU/iUVmSPj+9sUD0VWxyHF3CZZqhpSYPc\nDWlV5h1l5SB9Tq6AUVv0Ar2x6c/bNbRYkrNv7SGrEJK1mWdKJmWLWZH3CfWw\ni7SwI4mKXu9FhoXZ4b6OdZnDtUaytWO7D4DRVdGHR/ozetL1EUWl7LDoyqVR\nwvrm5RjzgnIE6JpThTneJdck1xvKCBb5/723ZXperQw1521SjWOHRtcK5sAv\nVoA3HHtwGkDB3R+NeZJOfZnL69YeYtrp6cIPGfaewQ8T0KV33x2BmsK2pGdy\norSfz10e3xnuJhJx0dqOQhBfnk0V7ilLU/twAdN85dbxfSBDss/DFULeuN6z\nn/Rp21am1EGcD38ZCvbOXSu4urv+5+xfUJVpcUMK5OqgiOuJKPz3iBtt6UqX\nrDHTczhNTeq+JQsqv4JJx7J9fH5C4CAxSTDGx5/2eKGZTLaFwwVGtroBBfbT\nTjzG\r\n=K5LJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a56dc9645e635ef466d9e83252315f8790097e4f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.0","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.17_1615642921035_0.32056240147304504","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.18-renovate-non-major-6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2":{"name":"@balena/jellyfish-test-harness","version":"1.1.18-renovate-non-major-6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.18-renovate-non-major-6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc40626b2ac9d84a55f71d2369fe94f4ec8bcd8d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.18-renovate-non-major-6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2.tgz","fileCount":18,"integrity":"sha512-T4NEiJ3Mue2Y/4AUU86HQWGZfwhMXm3E7w9qTTHULU4pOFpGbeSGaXyTcodsh7rjS6vQu/7Me8KipaVGCiOsYg==","signatures":[{"sig":"MEYCIQDAaUYxbSGO7swWpNekoEjBxTtKUMmi5ONaZY58dMoozgIhAKo+lRJ9d5JsvzbGPieaeHPfcxG0pl6dZ8P3hnX3x5w5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTNOSCRA9TVsSAnZWagAAN5AP/RLdVB4AOC+zGxQ2+MZF\nBcKAfIsMIbHNlScd3IveXGHb5nmvoUMHzjvAw5FxF3TY44vXO233m7qyi1JZ\n04qVobZPNQUP4+RKSP8JMINkfFGX0zMw4PyMhet6If4K0ohDdVeUQPd9xxEr\nbxasnwF6KJVMGRcnwAzwdsaadrKzIJ9jFrrKbfgqeqwad2kU7rA89sOzLNRF\npRUtH35o+PoMBAumUnj19ONLSaJflZv5QTDLfGPa3zUxVcniezrAG1qbuOc+\nMQDOCr6gN27nJZ1uqj+Y+byrQH1ozZPYpAdpfP8rPOD0QLs/ppJBnNyAEhez\n1YpftKjMJ5y55iZ276qc9oqv2dk0UtDjU0UBTOpK+qgPGn49mQFNfNEnmcYN\nZrtAfai1HD6zWPFPzbd51rdg1vD7ZnOZX8fEfeRL++nNaSwQcvieLXt4+mCs\n10QjSF5KlbaYToE0TiC5+lvzDNf+068uYsQ1AOzVx5raFWMp1hP/nyyZDjXl\nfe6vKhrEkNZkozdX40apKJbS+AVbd6qfXVPoSfKJkeoZf7lpUg4NEntph5Md\nocZeNTc+OoEvVsozg47LSeo5P7gjTSKLZ2QcaJZMUoK/ua31g3gJXvSAioBe\ngb+lcY0XkTC+vKuX9Q+Ej/bJL3nv49vS+XMSznGioLzE9tuBZ9wh0Zlchdks\nPR9S\r\n=Zj8t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.0","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.18-renovate-non-major-6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2_1615647633783_0.2704916094422909","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.18":{"name":"@balena/jellyfish-test-harness","version":"1.1.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"027c82feda3ce061267ae25d488caa832c4d0c4e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.18.tgz","fileCount":18,"integrity":"sha512-4aYZ9pfLUF1avrYRl0wLeSNbY5TRNquestBJRKhC0oE44YxUYcQV0Ffp8qVe2KTiLWnzui7bYjFsTpknFhn9zQ==","signatures":[{"sig":"MEUCIQDBMwXLeMh8OOjjNOwJjqlTGLD4WAEu4EbOlnVyeLcmqgIgbKDeGMrPclHjl0cBp2WKaNNT/NUGlgC6b8mXY00RHvU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":40907,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTNRYCRA9TVsSAnZWagAAPx8P/jqAo7KKu3LSxboOZJuO\n/OX4LMCak1o0V3huXA3+tV5eeejhOPvAvJyQAtD9AXbMf+isQbg3neExuTpC\nBMiayXSc/9JW5RtdFftSl2JL4rn+KFx1t6vKIIX1LDoVspxjj0ULlCpv4Ojq\n4EV6LjnnU6PG8x2TMYlmKVe3UvNBjp5NFdxwegpLnyHUs8bEr2YFGunYSjIO\n+kL2X+qM0YmJYI+tgLH6XdnOfZRrMKvtD6P8pFJY3x9ssEK8Ors0/m/JS+12\nyHHQLFpuVlvIwhMCibkuS63Esj8SIfTBp30PElk42vCqv3BVw4P/E1tzW0pC\nU7kNtA5aoWTD7ZYUhSI7tLL9FOcPZKqmP2Jkv/YP2QtV9W2n1F4A53FnlZMQ\nHlMiRD8ERwG79Lrbwi/0RsQNMEeWMVxgdf+CRqsMddrdPvCCOM2MDM/B1pC3\nIV3glUMaT9bDErKpRToVIpY8jJAya/1dIw/2x+aIYXeIQwvvfgX5ifIVGm2O\nWnPCUk6hpUkY+kImXkzd0PnqgD8H75s/H0snvPu1wai5yJpA2YtZeGoh8+S6\noPlVvPsq10syERW2qUwy5wUplXSUcJXWfSuIxC2NC7SevcfVC0ukcLY+JGa+\nf7SpuHR+iYOUKMlIKd8bSplaq7QyEs4nDPyzz/1gs3xHJx6ja8uHqB37Wanq\nBl5G\r\n=ENwL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c3dae651381ef04bdaa4e9838bdad8b2559d3c50","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.0","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.18_1615647831557_0.37806246256738607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.19-renovate-non-major-dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d":{"name":"@balena/jellyfish-test-harness","version":"1.1.19-renovate-non-major-dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.19-renovate-non-major-dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f6452f3c4415f508c5e20769e77562af22c6321","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.19-renovate-non-major-dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d.tgz","fileCount":18,"integrity":"sha512-qLsMLzPc3cBG6NPFJzU8SRlTcfSm0+eWkNw7YIRR4jwPaULt58ee/QYBuajzGUvEZ5Uw1Tz/peDSxZjq4km9aA==","signatures":[{"sig":"MEYCIQC4VyyWheB2/PGYj6plsYfKEeg6hIMIz2gQ7HZeHA+hBAIhANUzss2cDUwF+b5T2eByhS/iAn9tKNMsXDlhYFkSV+Ks","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41071,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTty4CRA9TVsSAnZWagAA/vkQAJGddSpU6SwB1+kmqY+g\nYknwyo75YLtrPwv92CSoqjqgahJAJlzBFyDdO7ESe0aM5tFvnAzGFHVLOKPU\n/m8kl139qy3ZZp6/xn31t+e8EJQbZ474trAE+kBXYt+RVygD1Q/gCJ7L/tkv\nWdir1dtgenmPQfD4Upeqe2Nv/TFrs0leIkN8Cds5Gfw0rzrXcHyjlDF3k4fn\nFgmW5HbtSKwpUMSybcGXCaSt/LoUvKsUaG5X7bpghpJgZ5Jp1wfhpPeC67Vi\nOU71LLfaENImCp8fFB0ABpUWX5W2XroHyL9QoCl+RafPMR6k1FEF6iln+dOI\nDIoLWM9MCBUoU5nW1g+m1HrQzl4BcApIL7VrTZIQDd/Hm+VLRP1EkvLkCaDJ\nmYbI1noLpEvWE/9lrYXZqh0Q6jK/xkH97DVGSICKOgMNse3h/p96a6PXfaBl\nO6I4bFMcx3apFbSIBXRp6WVCCACmgKBvFgIVjlV4IakbTlEnB12/9ooFL+72\nZ7YX5eOh/qqVfS9o7bsrPQXx+Lw49MoXCBaKIxgWWPXyJOCsJvmfvMuUQds4\n14TetqCPzqkyUtfExSM9ijICWchx1FceyQzbHbIoKjmnPfZTU9Fs01JA2bgV\n2lYJ0HfeXOIA1nPrjb2i9482yogf3t8ObYDkrw+zoDHEeMMaL8K4A26Bp6Ma\n/fqa\r\n=eST0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.1","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.19-renovate-non-major-dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d_1615781048089_0.48650777581239146","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.19":{"name":"@balena/jellyfish-test-harness","version":"1.1.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.19","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9af3a256bb9d070f2a40a24bdb85e99a3855a1a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.19.tgz","fileCount":18,"integrity":"sha512-fhe/lIR0KiP0xqC5sJ7NRcROcCF9zBTUlBf3zquj0VdOsUorsGf0MQS5dyf9DpuFxiCjZzeTO60GJpDOt8r7pg==","signatures":[{"sig":"MEUCIQDcl5pOclGQqco9myyV34E+8vxLwUtICPDIoyOsGZnPtwIgNZcxFHhAFgZG8ItW0vyJV4u4mTgMM/NiyIB8VqB1IvA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41011,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgTt2KCRA9TVsSAnZWagAAELgP/R+351M2JUVHD7RSz198\nPpbWsEp6vKic2UX2pIPQNDGMUCggp71TNm6sEuzA/RkSeRiexD14j80+B8sX\nFaLyP1WSMe8jnEaPxPLivc/vnYsu5L9EgLs5w7X4p3dhRviwGk+KFZR4cSGD\nNAFlYUd2dhb+ejELDMBaM9qS3uRfeBWm/sLptaxRaMurqf1noNPrMw/UH8uZ\n1tYr0XYjuYG9a1CEUdNFnYyCAKDAA5DddiZJocyypsUMzArqWoK0rCeC0elJ\n9zIagjb4kU+R8m+3/faaxol0mzl8yRpYfvYmgIqsJw4jq8brm3j6sjqamrFa\n1ZJgCoySS8zL4KH79ekXGmEx8TtIqFFrW25mWsJZ3na4hpiWZQGnd6PXg2/t\nxnXcju0jR1choA+At8tUXoBJ4q2aID+TJuI4Xg0iFq9XIWdBkNogSqrEfJoV\nthlXiwsp24UjJkFHSzPeELMW5ZnZLTfzrIMQNMyighfamYz4NY7Tz9yZ+KFt\nRF2+Kk1xAKyeEB2L3wvq/8HEbODIYlDguEc1UctP+DPPodCIDF333PtXbahB\nx8Gz+6oml8vmobKgXaV3PqKt07rduMoUZmc6ByUis24csZ0bSBm1s/5ZZsej\njksO7dbATf8EAwkE2UG290QdszpbxH+CwQpq36QquaGvbVjcLJigWRvJbwFL\nzQ7D\r\n=6dDH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25a089f8e6347f17693f4743bcf8ff650eadf9d3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.1","@balena/jellyfish-sync":"^5.2.10","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.470","@balena/jellyfish-worker":"^3.1.17","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.2.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.19_1615781257889_0.524259525587462","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.20-renovate-non-major-dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59":{"name":"@balena/jellyfish-test-harness","version":"1.1.20-renovate-non-major-dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.20-renovate-non-major-dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d14db7bec77d2ce8ab615f05a71b6d16a9d4c1d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.20-renovate-non-major-dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59.tgz","fileCount":18,"integrity":"sha512-q8RhviXFLI8oXExUpk87+icWJZtctl0d+AdUVpk0cgHr/R18MzMHgD9GUZBYfwBBvTlXqbnRctkKbiWd7oucxg==","signatures":[{"sig":"MEQCICzRpOo0DoaImGhjCXxjfdi17CICz2Bo9CqE/RMQrq8eAiBebZmZjfxEr6p+U9o4F3vhnEvFktjgxhs5vJJs24u2Iw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41140,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT0y7CRA9TVsSAnZWagAAW18P/29jtw15SZLyoAcy5YMV\npJDJZ55pF0PyKCXHT1F1SmvUEarSZVNMK8+M/O+VTRyX/BW/1FeSss/eB2wM\nCLB8VgOooPtaYrAcAP6Lr/++viHCPoe7T0a1DlNgxbvrt/mceBq/VAaJ7FlP\nIEfxZqleo4GQNZWdW0VWIcgFkjliaw8NLhtExTfPyjGEiNIc+fh7rY++bJLm\nxXYuKU+EOWVwd0RDOHHvw3lf5DS29tuZvudZ5DUcUnRwcVwWBMam0m3bGhno\nv3+gmxub6BiMlS82NPoibAcuopo2Yr53G0rP1qCtv8D/KK64D7fU9F5/qaRI\nC2O1VUu+8aoNKg3VHvYZLaC6LIY556354pVg3a7cDWO6idYyRZ/RcE9+011v\nYwTCCZQgqn84P7ZJ65EqbqpKO++qkZ08OU+geLfpGU0n1Rnx8EY90YZOyUlO\nFeAYVDppDCNqixhy3qlHr5Nlw6fhmdQrwfDOgheeYMaNY9B35FMxPLmePqom\n9FYGuU9eh5JQMBsuVgMt12BX58UpGQv141WSRmrgsU/khaJGZXu6RMMPXT8X\nQHJkrjckAyzDP1LFMEl4OmOJ6SYnC1Nv6lM1WY0pkGG2EiDHLfo9NRXj8nGz\ntRWtgGyAjPMEia1V2vGRkJU6YQprBudUSl4dnrlAA8GsXtWtzttRcCzwZ7I9\nC38M\r\n=Nepk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.1","@balena/jellyfish-sync":"^5.2.11","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.471","@balena/jellyfish-worker":"^3.1.18","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.20-renovate-non-major-dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59_1615809722947_0.371522109028698","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.20":{"name":"@balena/jellyfish-test-harness","version":"1.1.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.20","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3aa614e9f364c83be5e6ea1b71de7bd68db2f4a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.20.tgz","fileCount":18,"integrity":"sha512-Lgv9by5k4c4sfLZ9LhVz684uW+80wXmgpD71og1okWAV8cU83I/vo06HOtX2AH8Ma8l+LozYiUAa1EAP3XY0XQ==","signatures":[{"sig":"MEUCIH4uITKQNWu3tG95tucXsdUf4F+T9PPVZAbOqe2tO6PpAiEAu4kz+w33RfK/+UIOhG/lALwnTpu22Rw5FgoE9bvYfe4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41080,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT011CRA9TVsSAnZWagAAiXYQAKKDjdKByy+P7Dru1pTH\n9ygE7Wqn7VZQmXiGrpEEYit1N7/iu2mNc7SRXOgxn3h+eMBrhmsCzBrNme0j\nbgl3RqoruGTF3MvebNFgw5a4y5gGh+YitkdTdR+9csg+VckZfRAismzXDMcw\nv0CSPWyTQ36rLGV7ETRrxWCk0iAstedCaTe96PyGBM70pG/yPNT5r6U7PQHk\nmJ4w74IfH/WVVyi/xsoJL7gv2q+KjxrJJYbhuBaw0KsriG8lF9j+lKXWb3SL\n35b6cbJ9gErf/PEYzvzfgGMcH/B6sIa7W53yxRwr3L45HXImnzztS61adqmJ\nch9hbP3h/5d424MVmJuYu5roLKsINkIbzj8WNHn8WItkh0p0ukZuLsbW09Kk\nCsfOLzTD00eDzsMH+pIhcdKmNmEQglbxLdqz/95Sw6cU7ekqLR8xDIRqWENi\nHrtr9JU1uwlqM/sB/rtyCxVbSBSQiqYrSDWwlG66WwyVRrTNlZiAwAmC2dls\n96GwmqyAZ1EqaQF3m1qETpEknqvzMmn7k0AKPZA8YsiKaRisIl12SnCsNsw6\nW1wVSStId8l9W7gy5tZkcpJ+opW14Hqf+GCycQiSuB4P8RhIjIg9NLzdxLCx\nAFPIVvho0Se5JASPZuHFA7hafeynuvZHI/e95vAdXkJNkHGygDWs8ake0r4R\nv2CX\r\n=9uA2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"424d9d0cafafbbfcbd3740f5775dcf5f50625529","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.1","@balena/jellyfish-sync":"^5.2.11","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.471","@balena/jellyfish-worker":"^3.1.18","@balena/jellyfish-environment":"^2.4.25","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.20_1615809908941_0.7045651762681437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.21-renovate-non-major-a3b98f2459daa882fc2e7687c16c8bf69d64d54a":{"name":"@balena/jellyfish-test-harness","version":"1.1.21-renovate-non-major-a3b98f2459daa882fc2e7687c16c8bf69d64d54a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.21-renovate-non-major-a3b98f2459daa882fc2e7687c16c8bf69d64d54a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d9cb1a048d2a7182b0c0ad4dd4e2aac41c74074c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.21-renovate-non-major-a3b98f2459daa882fc2e7687c16c8bf69d64d54a.tgz","fileCount":18,"integrity":"sha512-8Zt/ypX0r3/ONtbD2eq+xybP0slEygbIJqtHBJkuVtPHLyQxkAUUsWY1f4QcLusNv34p1dYRImddpGsDzaP7gw==","signatures":[{"sig":"MEQCIGIEPmKP8vDfr0Oqyb6lNk+AFeVwUz2ZvnBSK54/Tr0tAiAW2lUNRPqNeg5u9mwjW5XyHlCjTJl8kWf7PPEfhusZIA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT2+qCRA9TVsSAnZWagAA2TQP/2exaa0cSxXe66mxSvAo\nH9M1na+CSe69YBArZR/EoIsbITKqWf2/IbipD3OjSRoZMVmvRDGX2NX+F5kh\nCZgWs5sJl9cco3CYWfVgar79M/Sim0KXG27c0utzgPcgw2dPYr14iP9hsbqK\nQpf3PZPKV2hVL1xWVYgB4ccRf0FA+K9aw8ELhtDRNKjHTdl2p/eVm3M41l3E\nsHtdzz3HNf+jOXeF0K+Tnbw5t4R1Jfz9FnKtFR2gxH3ya6c6SMYRCFZBdjrF\nYEYMLMdpmPmh0ja2DiShA7KFw7rMB7drpdj7CU00IMRBG5nmA+PTZ8KWD3IK\nECNMok+y2SbOTy+ravIOC2Xobm8brv097+mhq/90t8NSipt7G1DxYT9N10g4\nYbW6iyl7YoHPSD/sFzmMcdOi1HXGfx0hm3FeIJbQ8XdWMCzt4pW68IrDJNyZ\nPeuMANY6TGdBnJhxftIBr89rm1UEeGRD8ULccuVJctODo/K9/rHZtnlNUsmD\nR8+atLztOfDfvxeNYT45twZ8Pm0sIYNpSRlzUcks4YpZJOymnNgiBbNzvao2\n8H+GbKyKTGwMnQE3U4t7s9XHJKaUiCZ0eCTTlko0CoOBH7rp2FQQbHaxUuAn\nbK/ebYuBOq6HY13QGUInLzYaxkeAfGtFI02nbqEXgl17quw9rY8BekUjy6cm\nVCoq\r\n=u5d1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a3b98f2459daa882fc2e7687c16c8bf69d64d54a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.12","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.471","@balena/jellyfish-worker":"^3.1.18","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.21-renovate-non-major-a3b98f2459daa882fc2e7687c16c8bf69d64d54a_1615818665644_0.4916553254171774","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.21":{"name":"@balena/jellyfish-test-harness","version":"1.1.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"892c4da7517335b0a136bdedcb21d2bd55a579ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.21.tgz","fileCount":18,"integrity":"sha512-XuXypJiCr3AxHSh61k6QJ8nvuLugATAfqwQ8l3Ay4d3ebhHc88043nuuFs+LxwR/11HsigfbBEOu6ea7QGkhbQ==","signatures":[{"sig":"MEUCICMf29QJLvFlOE2Zek97Sjvp6eZj/5ms8FPO2WG7YLSeAiEAvuYp1blxD80C5JsDAqemm44uXOkKxp0BViWqZFct7yc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41149,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT3BlCRA9TVsSAnZWagAA9AsQAJDyZljuezCzKevNVH+E\n2bIGpfOd/eR6J8EpJsYuXdVCAWES/wdm6gnPopZssSLdnoib0Eg1a/Vx+S+H\ndUDl+nELSZffd5fM9J4ehQY3UtqZNEfi36YnDeHKLJrQ+Nk+8DupwncfVPYh\nJRbJN6x/TIU3dF8WfOYq4rTTiqQ+i7xGYJErPg1gZkIcyl3Y3AubKz6S6Gqb\nr8PX4angx6WVt7bJHxFEM48khpODLP5x11eTSQ1HvzP+MxWqrZT4gfPEdDCR\ni3hxJoi7GSCh0dOK0IQBk7FTHAVb/o57SXqlf6kqgYVuipK0id/Mo7o2rqJO\nIWcXNx3LqRWM27FEBzis17PjUyIzVCnEuNEZF8RDtDmuLgH4OniY4u7txMiV\nsZX4YymwN09VKnfKEUCaYIwTJK+xCYWkZdrIaJBGlF82YokQeOVHxIME/YFi\n6BJv2m7ikXXNRFYcdx5oiEvY2mSV7IsL5ehUf2zl0w2VASABmLT260O49Vbs\n2oaZlVjGGMy/Z/IEnWg1JTrNd+t5DFwzF6kFGjo9AWpKTdOzCfzAKP7uLbtf\n9sl3nSfHJ9+OK/6Tw+Uo1MUqFNn9Rl9qDxoKQq2uvBDhEs+/+W0SIrQuVC89\naE2rddLMnGTijVulYiPqlfysufEGi7L4W0RF5LgOfyJoyGqx+DuGmeEbtbPO\nIsV/\r\n=J/O/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"32baee5ff4fabab24a43b6523568160a317c6129","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.12","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.471","@balena/jellyfish-worker":"^3.1.18","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.21_1615818853318_0.963038585750432","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.22-renovate-non-major-49ab71303e8a9b33fb042db735fbf293dfea6995":{"name":"@balena/jellyfish-test-harness","version":"1.1.22-renovate-non-major-49ab71303e8a9b33fb042db735fbf293dfea6995","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.22-renovate-non-major-49ab71303e8a9b33fb042db735fbf293dfea6995","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1baf42df23a3a812a8128d05637f9573c0017a1b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.22-renovate-non-major-49ab71303e8a9b33fb042db735fbf293dfea6995.tgz","fileCount":18,"integrity":"sha512-5yStr05A39MVN7uobjnAst1aRx8PiHIql8N61UYIClzl0KzXuXaliPJFnqzfePLJ38m6E3Attmxj0O3n+qU7mw==","signatures":[{"sig":"MEQCIFTfIWwwsj4yVIJUBMXex228lLSvOOQpi/vRW2FDt/KaAiBYCzBL4756lKUJpS3QPvqK/iHKRkosIJv1FoslWlMAcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT6GGCRA9TVsSAnZWagAA6T4P/0IMIeG/kWzT0ExrShHy\nzqATJQJTb8Re2ZQpmi+kBqb3pgiRYdxopcheaXFg0WovEg4pvol7a5afQxn+\nfDigguiofiz2xld63iFw9FP8vSvag9P/lSi0ScnBzUfk1fpTztXur6XjtBQW\nrlg64hhue/kOIVp+xyQdD2siGVKwI0+XhtykSJr8JDskww5gL/PWoQ9sFf1/\nv9955g4m7FxwYGIqQuqTg0JlCH5cBvkmnr8QTvaiMm64w4b6dPXW7zWPVflK\nH0g3CYBw+/JDDUrAlIi9XeLk6Kd9ziF1cK4DPiGF6zXtLW5fIAHcY3fBlTUH\n9Ps0soZ2+3asvLzqWwUAL5QnkXy+8rJRSfP1y/68+N7P9uInIhFR17GzpP+b\naoEf7jUCtJzcPNdn4J0mYC4WLTjwWgWNKzCJ3J3dbGm5AFFKgr6uGxS0MpSq\nqOUCXk1Ul951Ix14bFWEHu6Z193uoqWzTxeNvXZVDl8Azw0r5dzgP4hKE6FU\n0QXKnqy8j32YxKtuiThqvlJCO4gikInmpyQvT0fUIjPF2PrL5utCnDOFqWCp\nzHhzlFSMgFoccVMs5sjcC4qoAhna8SUL11q/WRhhp16r9GxQ3xZIMJrjhLYE\ni5sO/beUOzgJ5b7pCFWcvYJiYR27UCnxE1AUVZif9lg9ExVaxV0+vExclzL4\nH/0o\r\n=OgQ4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"49ab71303e8a9b33fb042db735fbf293dfea6995","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.12","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.22-renovate-non-major-49ab71303e8a9b33fb042db735fbf293dfea6995_1615831430364_0.03904599537103359","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.22":{"name":"@balena/jellyfish-test-harness","version":"1.1.22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93c5acfeda0b766ddacb464b7193f49b5c420706","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.22.tgz","fileCount":18,"integrity":"sha512-vzaFVEDjptSfVa0GbdKAyLErWyqi8zKxKY3iSLKohYThocw8a/GIyn+2Za65MI/99bOZwmmLLPaCcyPc3FoExg==","signatures":[{"sig":"MEQCIG0J3HwIWQcCilml39/leo/1CtGReaKuGO5aALhZZdbjAiBBi2MyPul2oSOyIKj8Hy6x0TX9JKcn0TaglRffxprWUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT6JXCRA9TVsSAnZWagAA4vwP/2IIPI4F/99hlXVHr820\nD/mmcKW7m7Psyd+vaYa1mDVGgR5jQFyKxCfJ2itzxvqr8RBWPWY7Yd+OvPHo\n/CvX04Qbg5u6vbDpcLiFuMK/o0tc6oZJN14hM+1/8IFhxWd/R7iPaV/SIFy1\nzKAyjOcQ45r753FpxTkhCthsKdbz3pSzgwDcVI4CgtcOUd7QzKnIVqjfDdUf\nYnkhbftad/VKtipbLqiNhK9rFpU2a2a92Qtt/Z2mqXq1dNiV7vI+O0WVJlpJ\nVar5oPQgJ0xYkSV/Acd0SdyPV/JiXDDWybVPSv9JQEFEjGaU8BP+R+O5tv7B\nV72r8Q/UaOtGi5xVsvxy0jmdGQjMXaAm2QQLguLFtYYgaxy2STP8Ew7A7uiV\ng1EFCXrogLZ7svcytdZCobT3W4kNCEXnRrel6BrkYpRM8wdJ9llF2VmK2tNa\n1xONS9Q3wH6SsENKXee4+US03HoUNTkxgLRNuNfwyHOu7WumdMA23zq/Vezg\nV7UDgvbFM4+l3lsiOd/CU/6fDf5nXtMseWQ6spxSRpctTUNyVQtSvghmKLlJ\ncuxcgAS6JJC0gij6b8nu6FQInbHWndtOLYcpLrszp0CBqbs91ZJ7NG7GzEZZ\nG1sf1recknWIYfHFxpVWwhYstA+bxZNg7+2wB8+C/2x747CXZz947XyliIwM\nMVBo\r\n=hm2J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5f91ef9de2d1141f1b6a55ff8228f1e436886b21","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.12","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.22_1615831639094_0.6980642294115527","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.23-renovate-non-major-6b1622ebf5ef506156101bab0cf5cc598a1b5c78":{"name":"@balena/jellyfish-test-harness","version":"1.1.23-renovate-non-major-6b1622ebf5ef506156101bab0cf5cc598a1b5c78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.23-renovate-non-major-6b1622ebf5ef506156101bab0cf5cc598a1b5c78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"706aa4cea12dd3bc760d8395b7cc5fe0058de97f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.23-renovate-non-major-6b1622ebf5ef506156101bab0cf5cc598a1b5c78.tgz","fileCount":18,"integrity":"sha512-lSbWNe1V1MZRUcQRYHfa+3HUVUjg9AgigEnSRnizoEahY7JJBybE2jYVMWKtdjAwZvO5zEmy7iagt3FGjFprDQ==","signatures":[{"sig":"MEUCIQDPSVcbo+cG899qDZ+K7SdNe6JstRv5vgxMIifIktvkOAIgO9H0vBEtUBCZ6SIxTIGT5wnxwKf/Ak7IG/ik/x69KiE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41382,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT8lRCRA9TVsSAnZWagAA5yQP/iUiFRToajX+p1CQpUlB\nCIuYdpd5/zAVLNHDWzhpZfaDiU3oh2Ajw4LDdTvnx668yWyfdp/fwFSeqfVM\nkqmI5dzyGOzk0RGJ5nGNNnn465XTdFX7+85jBFMPsSz/8vjFUtFfwxLuVinU\nGmRDnfQKEp6vr823Yi323PIahtVM3B67ZIq6vyNOSi4HPBtfi1zKI126D2Xj\nEQznkhpqKFd69pFEZa2X5khJqFu2X2D484zLg2lR7GboDHuARalEEI2gxMAH\nqnrDLR5Cy3nhNLP1Lo1U6JSpwymUGa5j0NeEzQwedAAtJXbjMTVnS8sJapNh\n3gB1bWJF8slGm9XllYyCh3/Yv6U5sdKOEja/m7pcCa5qkTpwhTyCbO1tNv1f\n29HB6ApDFTZcEZ9N1GMUpIV5lAq8LvReQOTdNAq0T714E/1Fl98E+3C6/Nct\nOsluFA+e6PgH42EinVWtt0Upeq/to/9B+hdC2m+0WCBi3ck7nkiCaLTyemRO\nqNhM8o0oLUT7MzVtVjM0GS1dep8vXgNeYt3ktYw7IZIDlacOdUnjsBWJAdlM\nvx/FYYMPpc5Mee4hyO2qoQ3jG8bN0+0PZrOmeF7BaeLMNajyJITrw0ps6Ysn\nd4SY07hyA26R+mr9F2nHUItzJ7q/RqAta4DWzHqliVsD1aZMfxN1/7d/1Jea\n1dAo\r\n=5KpC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6b1622ebf5ef506156101bab0cf5cc598a1b5c78","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.23-renovate-non-major-6b1622ebf5ef506156101bab0cf5cc598a1b5c78_1615841616893_0.2895498570375665","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.23":{"name":"@balena/jellyfish-test-harness","version":"1.1.23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce31b9e21a570fc3f9354ee8f8c5d73f41e46103","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.23.tgz","fileCount":18,"integrity":"sha512-SMS/ksX3TAc41aQptBJWj2Lf4h0/2HbS+spXSTmxecdfcP8nRXxsbox0a4s5PPUGCBR+2XAU+sxWkUkWCLQLAQ==","signatures":[{"sig":"MEUCIAp4cRPTUxdeoWUSTtEd/b9BknL4QFCRFXKM+VP+QZQGAiEAin+tyLxFdyhRl6BZuWDKbSwqKEb14ky0c19ov8M4+h8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgT8o/CRA9TVsSAnZWagAAU9AP/AhPRzA9nLeRYtKKfYJC\nXcqQpYpBN62XeeXersDTspB49DDXJJVpQqbKtGC81ki6G5XyjnmAFDSyeSej\nUuPsOkvX9iJF1YUIJ/Mq7ZJJhuKrZ/2O+pNsq3/vM7MnbJl1bjd8OTLWl6/n\nfFnnQ/IN8cP5qJ9kHuN4RQoyQ2l3VGR3M+zleYx2BwN2XnJXwX61GeVCCV5v\nGa36q0YAT4XaARwW690Wngpt9z0qp2rdlhWDq4CdLgGBQ4Gxfx7AJwyYwGBE\nJFXpkJdj7CCEL7n7+ST3qy/Aq90jrtoOEvyXWpHiYxyk2yOWIxTOnUX8h9ih\n/DCbFkPW/suDZK2PVi3wbqtpM6l4/Mg4Dk2sG1keWxEYcSqJom1gtriQWg6+\nK8dMS5FfmGUrTtA3NfPN1TCp/wdYkQ4jLyPD2luEl3U5E5ozFvQjOwlK7R1c\nNgXfS7O0nRBwWW/hnfwRdWX6nC97aN4qClQvxQfu9be6coXbXtC5kFo8ESjF\nzxcH9SvD8DAFOErQkFQSLXjYVUbg/AvIPhUuuZc4Zsi75YJoLF1r0P8ao4Om\nnKXEqzPVWXKlzA5eWDx7zFnzhD7qeR4m3L0SY54MjkV+Eopjgav5kMbFCH9u\nb7Z/3nFgHK2sdWRLkr1D624RjnL8TlYiUaziC72RDxCNOSDhvaAedB5+y+gH\nrkZK\r\n=sA2J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5197bb5f70116555cb59c1cb716c474ca8a253ba","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.23_1615841854692_0.5111663624525538","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.24-test-env-c69025449cc29eb6de6caf43ab8d1811ae6a57e5":{"name":"@balena/jellyfish-test-harness","version":"1.1.24-test-env-c69025449cc29eb6de6caf43ab8d1811ae6a57e5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.24-test-env-c69025449cc29eb6de6caf43ab8d1811ae6a57e5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9a4acffaa05dc96f429334a98de645762246f214","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.24-test-env-c69025449cc29eb6de6caf43ab8d1811ae6a57e5.tgz","fileCount":18,"integrity":"sha512-4OmTD2669Orp6n6kGxgQScxYbchCCngF5gnEKr7Fg5DkAaVsTlnYlDWssM4YLVekOSF5HNxb0akkg2aQbljiMA==","signatures":[{"sig":"MEQCIBN7Oi6mUkbhO6OCOsR7JedGhzO/RL/MywAE29N1KDvDAiBs4k6co9knlIDzrlyi0+eRsqagAtTevVCOSkEzhliU4w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41500,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUAvhCRA9TVsSAnZWagAAU7MP/iK9aNYriCQZxhewzwcX\nmBai9Ljv1SjaICay5Bpr3gyZBR7oWzyh5cHoFt/Ftkq9H6pmNq5ej8+HJIwu\nlhApTEbOZ8Aq2OPpESQr66xS2aw7i93/vQdpItdP8sN5NQbs37qKWKBvYaU0\neyxx/SRxJ3GEhHYpo80TqZlPFL9RkNB6uVj7yjcf7ldQG1Iwmk5mSOvc7TUU\np7irSVa0w09H7ceSQaWTSswELUaMily8pbdZq/ISX8VZhxjxg/mNhYcdFLIC\nMYn4tbrj/Idl4hPEjoyIcS/6iCghlLvkcM2H1s4BO7cKm70wxxYMet1AiBGe\n8ihKv8FJjcEACj8CwFOt7SXBBbrbPMfr3vF7GYvjEI3iXd/3ctSOcWYxf9Mp\n70giJBxEAP1J8oQNcRzl3tVaRqrPytHTNOQhbUgFDiK09jSKc/RN8dJtPdVK\n8DTJH4vaIgK7bqaGZxgyZAHQOldPqBieGxi3LCYffZRxnuG5Ct/IC1Qy3H3j\nkLWek9e2vRkQBMgQA605BmeN9MWwPD0yjSp2MFj4ODLm6s221OSdDSEqx6bY\nKKA+jwhIzwPtSDLzUO5JNVw4L0tHNetnd4Uu0DK6xprhtkWFl05JqiQKPzIZ\nNyNSlnuTwiXilq/YNQhx+Qxr8F2a6s3vEfoJ23vc/Zdjx69hSrYAcmiZ75QT\nznrv\r\n=/FRb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c69025449cc29eb6de6caf43ab8d1811ae6a57e5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.10.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"3.0.0-use-env-c22510a4bdb76bc44eb7fd425cbef8cb77012f82","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.24-test-env-c69025449cc29eb6de6caf43ab8d1811ae6a57e5_1615858657149_0.11322489265969016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.24-renovate-non-major-0d79e75f8907438d2915b65bfcbd0f9b62f427ae":{"name":"@balena/jellyfish-test-harness","version":"1.1.24-renovate-non-major-0d79e75f8907438d2915b65bfcbd0f9b62f427ae","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.24-renovate-non-major-0d79e75f8907438d2915b65bfcbd0f9b62f427ae","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"664e99b997d28ef40511766aa974f27b0e880a4a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.24-renovate-non-major-0d79e75f8907438d2915b65bfcbd0f9b62f427ae.tgz","fileCount":18,"integrity":"sha512-BtsLo1DmGHfwrAATiXcVB17kHDOLiLq2jDnixyqMd3/iGAt0YZrTg6kG/d30mzWdyneEb/yLITDnGhhgeK0kAQ==","signatures":[{"sig":"MEUCIQCqhZ4Pif9GYPsqDpSrYS73yLp1JVVT0Kv1U2RC4vYgCAIgXfYJEbs2+v8oB7CA8OPPUEjmzLInA9ri8lcDIsJwvSM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUDdCCRA9TVsSAnZWagAAgAUP/RO7Q/42q83eBJ6kDXQK\nWZW+A0ns918Faaz/rIDGuiptk+q4oq9p5W0doeAlhWlPZciVVcg2wCn4w6ui\nnsgIkOKILR30VyRhMJFkpYqT2AuvN4zMqXVP4OH5ZSCLNUwe2h3kud+QDDBe\n5ipcyITdyrSHClssGqM3D031U0oA2z8s+0RHd9UmOZTONIKY2PcrT0iZh1lP\n2SolMgjOFaKEr8yYPei6bMt+dgjaa4DEnnSp5VW2rIndPRyxOigqQWpCz8Pm\nPWT3PuBuaZlMtB8sb6IDP5ontuRJhS9hCX90kaYQyxyXlnOIPDYoKPefDp4R\ne77dEDV825NMqQWiNK47f2E2FYorqCISc1PF40PpKgIBG6GZe1UcBkgcv4V5\ncAWHDPC0f/Jk5Gy2jBo4SaKmqV/kESPsMi0dadPXYtkGP+d+7x7TvQ0d1NjW\ns0dIOWfo9oCqqk7tSWpf/jtkZeOz7BMFT9i4v1yHY7HYN/iKguTROWLdkvVB\nAwlLyIaxels+QKq7CVl7Nm746PCitmb4yb380zpJkU8XCCQVxjBWmNyTNr05\n/Y5vQ6g0jn+6dCNWkyBT24bhIvA8R33xDVWtlKACe8HuhstfpznQ82dExbUA\nW4U2M9MhYkcJxbxk1IeiV8VRAB6TiHCDYpWLdb7kVSzaEyY/NVBo7wRkYd5m\nLEYi\r\n=IQKy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0d79e75f8907438d2915b65bfcbd0f9b62f427ae","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.24-renovate-non-major-0d79e75f8907438d2915b65bfcbd0f9b62f427ae_1615869761919_0.23563345395249913","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.24":{"name":"@balena/jellyfish-test-harness","version":"1.1.24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2e3576ef7f1ccdc5117720324f1c1cb7ee5f67ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.24.tgz","fileCount":18,"integrity":"sha512-H6kl3ANayk42WUT/7mA5GlDJIo6MTAx1LBqQN5JUSvznc2gKJ3fYkyFopkwQlRUZKUR4bfH2RaxnCnSdLmv5zQ==","signatures":[{"sig":"MEYCIQDa1QT7r7tL/FxDGlELdABosrFqg4dOWP888gTBpnrTJwIhAN180cdTSw+teKYMdh6cZlXvwt6MAfiINv1zR9ACthFE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41426,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUDgaCRA9TVsSAnZWagAAZNEQAIYoc+1k8H6ySHvk56/u\nEGWH4RZFcdXZahPQff/Th0+bO4u5+KA+wUQc6365vHV5AtGVATZ6yBfEDrUm\n9Jn/NWdQqVGH58+OQb2bDTnfvAwQ90cDFddj/iSfTrhE7zVvfEKrDWH/B6XU\nlUZeyEGgG5Dz3whUCLjvNUWAKnxdN9whN9dLcTAxeHnVEnCqOovNZY/mNyM5\n7kgywfCRLpv0Tbzl+zP9CXrIHIMU1YN7ChfeSv1PR8PdZTbBt38KJnQJ6anV\nymcickd2HuA1set5udkYGjnLRZx0EOP/DNfsytVPzoc8s5zHUS4MTC4hAB3K\nBL/RrFSFPpimTeCBY4dLLNpBvxmfV3BFKqnwQYMFqgbEPJaG8XaPCaDArIhB\nFILvB1tnRYYWt2X1ssLZcsLnAuqtMbM/PrbgejClz5QFz+hGc3itzmIemq8O\nrXthnLVUlavfixydYRGIkS9Dff5BWd0fGWfd7YbJUnZ0OLCcX4jyu5Ae2IyW\ntoo1AexQlV9tAbot7W11lt3sVoZ/shGBlhJku0Bo0zrPAusJbqx05Z8QJ8hi\nnywpgdr1sv/pjegygtDN8hrZKG3KJoAhXFBu1d+2DoO6j2FvsmD8VPWQuBgO\nMvHGMHI2mQb4c8dyMX+KlsuUDrUFaB3MWixf8UO18W8bNCa1YBsul+WSph+P\nVF4a\r\n=/mYS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d46d77639f86d4a715939bb02bb76611a164e5d3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.24_1615869977528_0.39619241280731177","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.25-test-env-2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541":{"name":"@balena/jellyfish-test-harness","version":"1.1.25-test-env-2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.25-test-env-2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b7486b234ac30a48a9e5341c5faaa537cf8c4c5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.25-test-env-2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541.tgz","fileCount":18,"integrity":"sha512-S/NBNJKmXWVl3DWTf0XKmG+wz+KY+hKAJ3zt5BoUcTy09BzqpJaVKRU/1Zn8PAWk7jlWc6ist2ASSU0a7qWItw==","signatures":[{"sig":"MEUCIQD5U54blC/GeJbvIS60ztYg2SEK2oGJywAcm4S/17xpbwIgfpGyAdF+eL1WBIkGA83iJLxYOYk+S+BHE/9MIQJL0ZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUVueCRA9TVsSAnZWagAAj/wP/iF75e1gPTKwIg8+uoYp\nKS000O7JSMcCd8/48TDlGbBFwculHTmGbM9p5F8NmOw0fuzMtWlQJIMrLn0a\n0vGuwYdjk4K/7WP3ORkFfj/zpMSCh7RdE8tZmtuSh06wTZkvqIdOHuXM8lOC\nODXtS+lvG7FJR/p1GK6V0sBjXrRkCI4U3TGMiFrW2fy34bFS/jNiJ/VUJL1K\nTC55mb2tt8Toz3J9wcc5u50d2SDJPpPxkZmgtGRcdMBEfcRxqDyEJq16sbEU\nnTdPB9zCRcFFAXRcpdV1AvVio4gvwiV+UMOwZNWIxVIPy99tHxgw56iRTh/+\nwbZRb0cWjZjOPIyGG9L3DdlAQ9fGXdjwt3/rYUWyyirYwxfjLYk1plKPsnM/\ngYM24aI6wh2NUFdFkBjs3zZvsPPlrpHGaFzuaX+Z8pOFcCQHc3EvqATTdto7\n9mBq2SA89LO6UV+egkD4GG9tSt3jjJXUWAsof/02la31qEolvV6XMwKoQc1g\nWjmTNg2CP1tgUCCv3tI+DfNQkMNv/B8nbV8MUa2CD/i07RtBsGPCHSczezZ3\nFAmypjDnBVNMuNxb87eymsDhTmWazsSzjKQxgbrN09Ga1ZeSev91w8vMM6g2\nAPubSxFdmbAe3j+zqh8gAIOzWySzzmySDAnFHpMI1v5atFeo4VcMUtJfQSXm\n9FfV\r\n=Ublb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"3.0.0-use-env-b7ed20428860fd0529eee6892dff41c005b8ad10","@balena/jellyfish-plugin-base":"^1.2.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.25-test-env-2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541_1615944606098_0.5868608916160356","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.25-renovate-non-major-b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e":{"name":"@balena/jellyfish-test-harness","version":"1.1.25-renovate-non-major-b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.25-renovate-non-major-b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"472ff4206d2b239fe4d9f50e37a4f56f3469735a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.25-renovate-non-major-b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e.tgz","fileCount":18,"integrity":"sha512-PgkEbwPBdrUrlOr3zOwTuJkpIJZOeBMLciE2NY4k6sAhf4hI2Fdk+33fAALhkzgEYUu+keTdm3zs8UfX1U5UIA==","signatures":[{"sig":"MEUCIEbEnONiLZis1aYPiZCG3Gi09xmAQPNADQopJ6f95NAtAiEA75oNhzOYEKyCePbfap+TF+uSnJQEvmttjq5o7mx5JPE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUXVxCRA9TVsSAnZWagAAPSwP/AoAdmv2zkvo69Myb7n7\nCZhL58B5q3CeP2Qf9pJCnFQlivTgeQUyYa9/EaPMktN5kY5gz1qbOaxSZVHt\n20saOBcfVxJHyQQpTkkIrC9N+dk6pJLU/KTwJFqIDO0yocRhioh/0EhNkMTe\n6NYI903+u89F1rhrcpfD5W41Ae3xFjls5uaetkhYyypXLdgrLlCTOMvd2j6Z\nIqWZI8/ak4FoZycL57gjsu/r2hqzjbqgv7k7RxprIiv2AHFTfsQaKZDSQsxD\nVDj9biRgI8zHDXKSONfBbneYVnLu/YfGpt6j+14qjMo10UcipOwLE9XtIVvv\n1KwOdO4iU0X2bfJCMV740fscnqmQ5IRplp2cPSNox+rNOpg49sTaTHBZcaee\nzz0md1vGTswc9Mn4QN/uZh2ui1VbEJ1jEuu9YyBiTugPwizfMKj78crKDHdt\n5fz4LJaHFkgZNbQzewqyZd1aL8W1Zju/mjV0kCZBk+3y1MqTWJcKfpkGnAvQ\nkjF0yLKVgwfRoWFcBkmiUY2wGI7R0ZhAVMJ9cKJzGuLr8/nsK1uQklcKmnur\nLYpMrh6DUcWkL+8lkmK1ynOe/0RXJtArOd4qF0jRwSKl1JKY5m4tj4V02MEB\nBEiOJ783FX7uE1FgecZQWGuteesGcgyMFVHHHlkL8K9iwDCiAJclM2BC70UT\n7YM8\r\n=ttZc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.25-renovate-non-major-b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e_1615951216584_0.8597254068516911","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.25":{"name":"@balena/jellyfish-test-harness","version":"1.1.25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e04ae410d6debad2a55680350a260420dc7028d3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.25.tgz","fileCount":18,"integrity":"sha512-e/IZA6R5pj9f0fzgsN6HE9yBwwaU42OmAcxRYcbUPs/6RDdeR/wwhJqnquHrSoHmMuUvdVO7RWmQepgVneSuRw==","signatures":[{"sig":"MEUCIQDX/t+58SL2m/ntU9ytcCv7U5lZivcAGtBShHXw03wsmgIgdxg7QnLlb5Q+SglpSLvRtZa5Qj0QCi9xwUMRPQmkeQ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41537,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUXYWCRA9TVsSAnZWagAA31UP/R81qEosNLFz6lqZWYPF\nGXIBPrea6DIhxjML4Ul+mzWjp5o7hg3TPloWsB02Otm2tUyj7vj/WCFjQ82K\n1i4hvwPqXSe7mATHexP3wz5qt9RNps1v+jP9f0edtiKP1UYGhrEN9qa9Vv+I\nidqkxYexs+VtpHaoj+0ppaDgoLpfYi5sMfTgmarOM3NKOzBOqdEgVDkKG+au\nugFKtI2bad2KCGUcuAFHtqflXkjC54vaSdGJlchjf6SfcBNqFnaiAjARmYFZ\neVKZfa6y8je35A9zZWDMXJWZoyaewzattYvocG10Q3+7sGO9OfFOyK949MTY\n6MF66Fy4Dvk/7K6zNYFigpzz1GoWmj3oQ7ZiTrCcnbmBkHFGGf0hMqkcFiwm\n0C0yxnVxVMXLxy/L/I1aVDla9Q7TmdIILZddh7EH4VzU3yZU/7gl0Sh5NNUe\nAWqGmgtK21zN3255G1IOO+Bg+HhFn3f7lQ99fXMk5CtFvvYsPRyUwYThzT/G\nwoPbBaQ+aYUycZDaKn4rwR859iSHHrmVPpRgdWPkodxiCWrRJZFhisex5Mpk\nOlk2Vsh+tBepDnW2qo5+6Ln0bLd+6P7vAZGf987oUinDaGeqXSRaHDMnBQOJ\nqXxolFTRZxq9L8FXzyYsBL0I+pZZqhNrJ9lBRK8w+KQeN0D3KwnAjn5bMg34\ndvAE\r\n=SxO1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f72ef50b1545bdba132944b5f55bb8e8c7783f26","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.25_1615951382146_0.9972889488056607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.26-renovate-balena-jellyfish-environment-3-x-0c733fc0224028804d6eab5d6fd1ffaa511c6467":{"name":"@balena/jellyfish-test-harness","version":"1.1.26-renovate-balena-jellyfish-environment-3-x-0c733fc0224028804d6eab5d6fd1ffaa511c6467","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.26-renovate-balena-jellyfish-environment-3-x-0c733fc0224028804d6eab5d6fd1ffaa511c6467","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"86a41e74f6ba992af57b5c2f75fd86990863ac8d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.26-renovate-balena-jellyfish-environment-3-x-0c733fc0224028804d6eab5d6fd1ffaa511c6467.tgz","fileCount":18,"integrity":"sha512-6Awx0CYebHajYBsTrJ4VZ3FfT7TGVG1Zww/rrTjTb8ZQskGSn8PcxAnL/K3OkBjsnddx/FAOaY/Gtl+2O2gr7Q==","signatures":[{"sig":"MEYCIQCEUyOHDNTBLJ/EH63GBF+RZnyaYQKEFjsD2WPfT0EmRwIhAP2POb2gsLnfkV2pGt3ArPFh0R8bqszXhHHSKQdzV1J6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41725,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUcpdCRA9TVsSAnZWagAANhEP/2Z5dwDLKpH8rp3TEz0i\nQRxFx9dgNiGL84y7Hw124/G/BQQE70YgpkFRJoKMSMoqA1NzrmVuYLuuP4ZI\nqEm9zxmJWDgK9RaLCUUqDFU9KkRunqn9hEThpipiqfZb/yn7ymfY7TyEiiZf\nk5Dbbo+PFRXGeMw9OuRKX4GzuZVgfZaBcm6u7LACoZsEVqLonCLBh9yuHbnp\nmwy9JIxjW1+wpisKFtuXU+WYVyOdoSSsrN+YgCrCq/np6VjUr68bxt5c9hIZ\nV0tlDkhTZ6ngTU9Ord8JQAlt9054HhnZgFn9wrFe1zGpY89JGjpGd8u9q2Rs\nxWcuJycH4oqMK52LVRQTIgdaPKlrZCpNHYxWDsPu+bdAYlbSCtNAT6593JpL\nAdGgesLWjos/r9ME5zDw6UWa2a2Ff1W20G6TLo5GWUiWLd/MyZenlsmiSvlf\n7zy8eEPv7JOyF3/oipoI/Dh6LtGzWVJt3oU0fjJR2IAOIKVHs0TEd+pAHOvE\ndqgaDnkzVKwAC/pCJEsr6Uv9EBIybTZ7XbLNizWra58lODZcR1iZql4To3e1\n1fOe+/YB0GDAFqjVlXWIIb6MLz73IzJspxreAD9GcBYxY0ST8lPCSzGWIa2w\nxIHlPQ+PkSi8+XLDTHozsNCTyuVezdjbNviHNCC5QmA3svHVosAtN4uSorSr\nBFHi\r\n=VmCr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c733fc0224028804d6eab5d6fd1ffaa511c6467","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.472","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.26-renovate-balena-jellyfish-environment-3-x-0c733fc0224028804d6eab5d6fd1ffaa511c6467_1615972956957_0.3786609486308219","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.26-renovate-non-major-138bcba370c5a4d8354b583534a1000c7b1bc743":{"name":"@balena/jellyfish-test-harness","version":"1.1.26-renovate-non-major-138bcba370c5a4d8354b583534a1000c7b1bc743","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.26-renovate-non-major-138bcba370c5a4d8354b583534a1000c7b1bc743","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"659de696ac92fb725db1b45d0b1909f717cfd6a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.26-renovate-non-major-138bcba370c5a4d8354b583534a1000c7b1bc743.tgz","fileCount":18,"integrity":"sha512-ZPQuli45DfyOH041VOUs1Enx30Ofel2nCFcgfiHKsni6zJvP0RFk6ZpSgbuMBmtomuWT9xJ2eNJu8ihvMdq1eg==","signatures":[{"sig":"MEUCIQC4E6GY0s24hh+5Tuqb4olroAdntUH1iU8fVp2U2ENDkwIgLOGoDsGTkmHyaGhPhweBZVw0JVOBjnmCTVPVYZEN8fY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41703,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUkCkCRA9TVsSAnZWagAAZDQP/2VFAFNkDMYlFUvTTgN5\nIp/WepWqpU/OZ0bk3PE2osp1EkZT4KoPCfX3kuq0WJ3yA7HAlV1gklTJUnum\nyblZnjqcTOC4Jk5z8DBPtux5zu7yEIx3tIMCgA3inXIM0Nv/VLbDVzj7v5+O\n4Rw+NFHxnrrzax3FJ9MDSdM3OfeP7CrifFv+IoFJQfefKrKWGISLGK9+oOuF\ntPcmIwW+uWva4lMNlg7m6an3sWDpHYLfnr3oHeQmpneIDp7pRxuWLQ4/CIKH\nqbqVM+lfrbKHQMCpsFSEGKfdq5tWjVHVN617pFcoQTHW7S4WeALvgU/zNSS4\nxFc0nresb63x/+JTPgklUT+VQMImeCZYA/RNwoP56m6F7Z4wHbne7u9hbRYo\nrutvVX8613gFbZ8VDpEHVcysS+C/oZyf1JtEgM2/SY8Fc9t0DxOwzFB2ke3T\nh/Z1qdpqtl9S/XZW78GCf+/G0mYAMJx4WGePQeSympjip/YvIf9I5oVKI9Ba\nTbekpIXWr62nLiLZ3Qh6gXsAtDunRRvhTnelXJ2taYql9d0tf46clB5cy84g\nSyml/psPB1knXo2VqemFJvQQjLSu/55lyn/w8pufKUqcL0OYKsQZRtjN6vSC\nvWI6ecTvm8BZwgy7/k9TK2BIm8PuZz92s1FP3k65oAG7cud8cbWfTpl71Z//\nUGBB\r\n=kdMP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"138bcba370c5a4d8354b583534a1000c7b1bc743","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.473","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.26-renovate-non-major-138bcba370c5a4d8354b583534a1000c7b1bc743_1616003236232_0.5785136079715936","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.26":{"name":"@balena/jellyfish-test-harness","version":"1.1.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf13fe7dfef18484270bfe177654ee2d92186c60","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.26.tgz","fileCount":18,"integrity":"sha512-3iqsSazWQ6++pot+fsHojVA5mYcAxD3azxS3pvO0kTDwS+nn92Qo3N2qTknRmmK8c7NIbKW6FFlMjx1KJZh83A==","signatures":[{"sig":"MEQCIDZB85Ir8fjtHXgpf/vsxza67qSuhR54jimxwZSjZ2/MAiBNtXNQCUPKK/b538IRmeVy/3Ps6W8SvlkfQlg4aCVm2Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41643,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUkF1CRA9TVsSAnZWagAAxTAP/3VhETIchrX9pNlwAw/C\nLwjNB7ZZyEFY8VEDoXs8Opz9zJutuV2a47EClkQ569jd/OycUDqackAF/O0H\njRDqonOf1wdNH7K668+kyu3jmECqjrzl77g8s4pKeUnEXs3zkjVq/QRQOLFA\nbYyAnHHi+dfY1BK25aAwWmaDp/yhBLPtwXoR6/1QIJoH9/bb+8xv/ybaG/4q\n1LV1aBZahMz8m9MxBk3Q3m5t7p0o651vPyedGltkeLBbI02SRwks+IY7D0LQ\nh4drtOm52E9xR5ih1WZM97LKe2cYcisW4H7+MV0bn/FcAlwPNmrWflPlvKpc\ntNw06UME2XbHwf1ZlAlQQYhBfGHLvVEYMIShRjev6m1ZbSnW8KXxDba2leVy\nBFA5/iJaIS+/qjwCxn8xpk8p5wBEWVo3BVkM1tteJ7QzQkQSOxP82EmrtfXr\ncN+3HubfW6dR9VRCva88+exs1SeBBW99t/Ul6dPEbeYwooeAFiYj7U9Vole5\nDh4ueVGHIqPwETX8YQ2KP5CQTVIRmELEJKq9iBbnKicBa9UKr+U1bVZf3fXV\n43XT8+sUhNM3gBuery12dqZal/t22IepPLklYtYV2CG2uNSOf6JQYANyB2TW\nVB4LZ//fkqfC0+bTHvhKKx+0bSurTyQ0yaPydP5yuxUNLcupn1i5dJb9kcAo\nE1iz\r\n=9bSy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b0c097c6ca692aebe89f0c496f8d343404261be","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.473","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.26_1616003445242_0.6096599105969016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.27-renovate-balena-jellyfish-environment-3-x-766dc4c8663e332e61f683d94267063a0905f43f":{"name":"@balena/jellyfish-test-harness","version":"1.1.27-renovate-balena-jellyfish-environment-3-x-766dc4c8663e332e61f683d94267063a0905f43f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.27-renovate-balena-jellyfish-environment-3-x-766dc4c8663e332e61f683d94267063a0905f43f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"868ec07ef733fddd379b4811ed5f5d19d5398769","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.27-renovate-balena-jellyfish-environment-3-x-766dc4c8663e332e61f683d94267063a0905f43f.tgz","fileCount":18,"integrity":"sha512-a8pYW1l5m/Uaki8cbhlDHyY007F66UyZi/Uq9VzLsQi/GWIu5IuePqb95X9sBgXO34Gu2EnlftXisisbioo+4Q==","signatures":[{"sig":"MEUCIQD1hxbqTaSVZWOSZAMAkKuNETq2m9zExOz6hqh9QrfnSQIgJJNLOfwI2Y0WEqi6tidxhpk/Wtr/vjin6Y8+HusH7QA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUkIKCRA9TVsSAnZWagAAUkMP/Aoaxq7BokevgbCb20EF\nW82BJoGHgni1I/CleKVRPTBPGGX/JcQN1pEv4E218arLjiqkrmmouKrHvtcL\nQ3c3L8oCdYdrc+lHJbH7/yiiBWYnMMooYiBrXUh2URoraEEDNS0m8hxJ98NT\nGLjyiWpSQ4AxFFLKg+tyPgDV1PBgzX65CyeVYTfnaNRlo8bV4mIo3EL3JIDS\nO7eE3rDVIR3p+uAt46T0YhfcTkhBDtJGkUUGvklqNvX+t74IDqDwoUaXrYCb\ndE/LGXaElalrS+d74abRZGIfFU54A8TwQOMkqw53nVn59KPaYeiHmSvF0QV8\nrxkuazG3eP7CA5WU56Ks0hSi4c7A8wgC/3+owHoIAHKQbFJdA5h/v7JWAtlW\n1GrW+F5KMStbsuNKPjFSL/C4jy9uJh0uP27WF6qtdtc06lZJPXecol/UzQlf\ni4G42TeqF+cXhXz9GrgCHTTnVMCvRXdl4JBjocy1HjqC7astu5qnccARO+Pu\nk9wUKA20SpvFrcSExN0U7j3HGpznwXnIcRvusZx+P7V6+9gacCqhEa9dYEpc\nyFZl2YS+wGDY1d/9omsFvKzRY6t1vTA7clBFopTdnf8ZqEuoqOZO4TVdBqBd\nLkpqoeiYYd8jqbGr6vR2jIuhoQ/Oz4g9NzEwqut8/5lcdLGxmGCxheErofqa\nI7P1\r\n=Ybc4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"766dc4c8663e332e61f683d94267063a0905f43f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.1","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.473","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.27-renovate-balena-jellyfish-environment-3-x-766dc4c8663e332e61f683d94267063a0905f43f_1616003593648_0.42636234045302346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.27-renovate-non-major-e55c18e33c1fbe17b13365aa1c252384715a95df":{"name":"@balena/jellyfish-test-harness","version":"1.1.27-renovate-non-major-e55c18e33c1fbe17b13365aa1c252384715a95df","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.27-renovate-non-major-e55c18e33c1fbe17b13365aa1c252384715a95df","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"332a17332eec6fc25e6a54b9f482ac6575711393","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.27-renovate-non-major-e55c18e33c1fbe17b13365aa1c252384715a95df.tgz","fileCount":18,"integrity":"sha512-GKQP+iJiGbiQFwAmD+mVpiUeo3IpD2Q00r1zdPrDXqYzg95eCfdA72s/uIznsHYqM9o6EPKNJqAfwXBhpUCUcw==","signatures":[{"sig":"MEUCIEh7v03jBHwX8eZmzJjArLickNxjLkMjLi4Gc6+NhDWWAiEA4yXGiyIyuYnZ9tRkp3A9zXzDkOZlqbAVHD7FXY7I1zI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUlzKCRA9TVsSAnZWagAAyz0P/0/+fwAAm7+pefnICeBs\n91XGjI2+ghMKn1PP3MJL2xHzbOOIivFsOWCGRBj6cVkJDKe3tyTl64AsxZWb\nLWqJh6EI+zgaCfCrWF8G1w4u/hQG8AZ0Fy9g+xrnr9WsnoJ/y4I5uu315eOk\ng90P7lTj9SdIllxDkYlCNc7M+k6RDTgZ4K2K4Hlq9l5KBk/84a2+k11b4qhW\nRn5ud+847NuxPp1dEGHO5fcGVgXc+kDesfJEZXzuM+gcloiJ9BQ/QL1QXMVi\nVfIHUbBMm/mYY2h8UcmKMnLVutwibbiAwlHafD3ZfRPcV99BYQJdiOOoplR6\nOdu0sU8yrnF/FCidYno8Ezbgj/WVLSUxJvxbZyUvUWbcfzoOxTDkVxJ1dfM0\nDY5pWa58Q5QbP5mLuWq9qlAca3fLpI/cO89zSBZiBiwUgCjUWaBYfRkiLRC2\n3mBMCLL+8CnGrmY+e7kWnRy5VfE2nMZx6fQITVjMGasXZ5x3MJ7mDAPLBCLj\nXXNeUNAPDlCp61FZT6yBMY1442/jgAzDr0C0TEZ21MDKATw8w4AQi9rg6FwZ\n9oM96E1Z3oD+lojLIybWAreKfrxpCcxLoX77KkvOO6CV9Q6sJxWYSXo3Ubca\n0vc3vlBWEk9JdMuakg591bmbsPmNPCqSgUFWGj4ObXEFppYIdI2zK1VsuSct\nbQoR\r\n=EY5w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e55c18e33c1fbe17b13365aa1c252384715a95df","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.474","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.27-renovate-non-major-e55c18e33c1fbe17b13365aa1c252384715a95df_1616010442101_0.797796800890495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.27":{"name":"@balena/jellyfish-test-harness","version":"1.1.27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f60da9d1e4bbd1f592b1d6e0b5ffbefceb5711ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.27.tgz","fileCount":18,"integrity":"sha512-5YKnSpVTKl/NHHS/wOGI5FIDb3g+8tI8VrBKtp072dh3S1csIps8luIABeL1pjOhSM/xPx+k2Occs+Y8vM9Edw==","signatures":[{"sig":"MEUCICqKtWg171WWtacqWG23qdA+UyhJYLb77otIk1WoDUAMAiEAx0gf+3+D3z5plpn4Dg6h4cBaHvJm9GN/m6WNFxLHBjM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUl3wCRA9TVsSAnZWagAAlPYP/1WpllN48sIJKL9fMZRd\n2O4379tcQ9eVb0966Yptapx35tbasdoz0Z93M25Cp+AY1wEPT8Z44IHc9Br5\nXb7jRdaSPZZET47z4ua66fqJj8ErTrHt5SWNLpbsdVQk9MmbJWWt1VlgKBC6\nAiM0Uq0i6D1a0TZRL61ijt5IX3UCHtgAX6Jl4poeCQ9apogZx2FKduLI2JV4\nOYpVHuNtvwJvEVD0FXbb7JMYzO1bJdeMvSsB97uto3I5nM9xcS0SrYY5e1ze\niecwNxdD5HxYqBIYy66DTdLdbQZ32kCOhy/GBHmsLRil4nFLvAVzmyg/993d\n56es6bJFmxNf/JFrlnKBTWwAGo84QwYOu5pD3dvGmVlRYckf784g/PLnoRo4\n7EnGyX17UQD4u+HUqEOXNrUiHAvYkmLShRRFJBs2AYoGVoEpldwpvFayJkIs\n5tgZcZ3Yaxc+wD7bdoOGchEuYJ8Zzr7Nb57zsaUw5THFAp6oJ/mhniTLQYW4\nVeujE3ojDoGG+IzVXTKRIBMGpHdnHOTX/aW9sFzxCieLAqUPDgxr2h8IH46J\ny+yxww8JH68gdP4WcQGVvotl82x5bMny7XqCjiYc9urMQ8VHwqQ5mLrFt4Hi\naSp+zbtRyxZZz81voeIiIMt18CxphYHB/060uriPTV9pV+6xTrmtxSMYfuzF\nsw1E\r\n=Nn6Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7d91fdf2885412292d7967207cbef732b44544f3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.474","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.27_1616010736337_0.034413906113555326","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.28-renovate-balena-jellyfish-environment-3-x-b53b81b6b6df332571cda82fad2cb0f2a886b707":{"name":"@balena/jellyfish-test-harness","version":"1.1.28-renovate-balena-jellyfish-environment-3-x-b53b81b6b6df332571cda82fad2cb0f2a886b707","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.28-renovate-balena-jellyfish-environment-3-x-b53b81b6b6df332571cda82fad2cb0f2a886b707","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"397760b58251126c27fad7621996b85186b60e49","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.28-renovate-balena-jellyfish-environment-3-x-b53b81b6b6df332571cda82fad2cb0f2a886b707.tgz","fileCount":18,"integrity":"sha512-nFgzc7cPs4kp2wbucCtosvzMTslbDY5NWogeWVJ2HwoKRai1POWUQmarrK5l50EJ7ypk8q/ePMPjUTExwtZocQ==","signatures":[{"sig":"MEQCIFVT21s0CMnwbRR9KgH4iLeUdJVYgCmjF86yM5ePvzZvAiAINZ7RhHA8EtDZChmxnfa37cro0K/4KzHNP+XvBcG8sg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41900,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUl5oCRA9TVsSAnZWagAAjsUP/1J5U2UQNizUjOcikUk3\namPFydapSg3T2/qHjbNxmf60grKh5Dp6ugajse74wzOWDIXPd1jzXDjLuFTD\nH2UR/wha4lbcECDL0sSe8HqKCN9mhmsLbYkkywlT/oxyVhVC5IcywN7Pr74G\nY+HVrTLzwaONXuINs5eiOI+F9XGf0AsTgV8+Pd3eQA9WDuK6S88IyN+/GIei\nAL9C92cxMbjnYxCMRWD6fnUJOgIEMwa2AZLHIS50GMvmiVTaVaxVdIUNFcFL\nrDXWBMIEbkb+qK5KsOk+1zFOKkghtH+xZ3uVu5XKfVpRPUyDJG6Zfkv4R5IZ\n+YN1yBPphJB5WrY5xznwYUqH4/i/piy87tTVRT+49Rda7GirLBimHd3Cw4r5\n+o7KQCts5HZ0d8PLewq0tpYqHiwhHxegon3QHeLNlKEauAJteUswnJwyRXJv\ni2qPKqCaw8nfjJWKUwYUyCULbyKm+Eqsp9qT7HuiuYYu57dSfkPANnZugdEu\nm1NPuT0g2xBoRYBtO35pkmDDlniRSaPlA0EZhUmvjmjibToaXTS1qZu4TU/P\nEOVW5FyTOfceE+cNg48r+VzniIMnN9t/S3qfxAA/iwoAmhr5aCgOMEPKJT4o\nFvVoNs1djLhLvPVscCAJ4OBYgVtrZpygD/tLuoKkCun+JydVztuFK2va3FbI\n/2xc\r\n=cebl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b53b81b6b6df332571cda82fad2cb0f2a886b707","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.474","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.28-renovate-balena-jellyfish-environment-3-x-b53b81b6b6df332571cda82fad2cb0f2a886b707_1616010856308_0.9404161886106746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.28-test-core-versions-2d95ddf0c88503712e1161ed50c1617586a574c5":{"name":"@balena/jellyfish-test-harness","version":"1.1.28-test-core-versions-2d95ddf0c88503712e1161ed50c1617586a574c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.28-test-core-versions-2d95ddf0c88503712e1161ed50c1617586a574c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6870b445b6a9fe119f7cb88fbb5cf1c753b059e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.28-test-core-versions-2d95ddf0c88503712e1161ed50c1617586a574c5.tgz","fileCount":18,"integrity":"sha512-4X6+rUts3YVXqS+v19c4tNaE+SvGpEo+OkoxLq6sV/k9uVV7/YrdoFVCG0rM1xl+kniOTDg+S7JXkdg0fTio1w==","signatures":[{"sig":"MEYCIQDRtxYICxvyhjV69csZ1hG1dR/B1cwtxB+TIL8fPVnVzQIhAPMtHD+vs3x4JZvQJ2sYeFY2j20dTH3uyOEVU9pHHUEG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41910,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUqGfCRA9TVsSAnZWagAAboYP/20bO1DtXXHFzFB+rVYT\nhBeW3wsB6tMmkaAlEenZ2ljXaep7SoQ+MqRoAfRnBi9T6aLs2s/7yPmvoc7t\nmaY318sWwvs1HaS2BXjU8E7MdbzIUhRh+EYfCLQQQNFdr+WQHPIbdNoM/ec1\n+Df/piJS3ZnYL0j6adpLRaac8xNrz1uz43EGKNcZP8mN2XaC5a2KoJTDNNdA\neYuK7zc0BBRVKmLG8aPYlFtINTfNsfbOkoeOCTriNtP/d9D6o9xO+DhrvGuB\nZloxWbG/5ARXlfjVoC88Np5LJTxGKCxxlhNADxvj2iTet0NyXzdtvlV7EPAK\nW3pfZIMEaukHUMA0gPpqBXe/S50zteU/Hq9Pe9mRdcIysf9U8dGUU4/lELhb\njTepBVADzHYIW84W2rJ9uVCeWSDRi/5CRPf9/sHEfyOEW5Vhk1alaYApjTJH\nbqEV9+iRyKUDVA4GErhQcwZ84m4CvivGkmahhKk3Ijpx1b4uoI3TX/EewnFL\nyTm6WIeZL3pQQzPyrqvlsO8qIzBVU29+47lAb1y0CkjHXr29R9IRcF7QmpIA\nIAGw8364eXdk69Cy2Zl6944aSUKC9952rM6Wjmehv2LT2/ndesIgHrw9YwIg\n+gZ2S1ghLgExuQp9sFmZRldBBH/vgomHZR9sCH0+XxIRqcde/SKzng2NIY+f\nT3Sm\r\n=7s4M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2d95ddf0c88503712e1161ed50c1617586a574c5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"2.12.0-5508-pre-build-versions-4fd557a0782a5c4ff7555a4e6f0a4ce7944e6029","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.474","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^2.4.26","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.28-test-core-versions-2d95ddf0c88503712e1161ed50c1617586a574c5_1616028062854_0.7238843601079317","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.28":{"name":"@balena/jellyfish-test-harness","version":"1.1.28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.28","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88b296843054a8b442cc815b900d9964908f22eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.28.tgz","fileCount":18,"integrity":"sha512-LNdgOg3loEAWckj9YnEUybX5rNlleXBovzgNbOrtd8b1tHn9Oy9LbJnbeQFoHYbTsLpPr5N4OxWmA5WyK5d7AA==","signatures":[{"sig":"MEQCIHlusEzaOIPl1BFYyfNIeiJTSJw8R1bHire5mPEKHUDoAiBVcKvsaIRCBcoeLtXuONA0G0wHTMrniFFoacJ4uVreGg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUqK7CRA9TVsSAnZWagAAqpIQAIvwhlm26BMPgHOR5JEm\nYQ+7gZt1rkSbW2sEkcq2oSkx05zm3HztFlpkdW6XzcSevHEdqd+rWKb/VmXK\nt240yeYjVN572j3C0i9Bi4hjxY+DPG0gDNCR+cROiXPBP+rC6yNnnCFmSoge\niBKjg8tI929ijRUKkaEqeXspalCowWX9k1/HTCzb+ctPUfgALyEupLUkkVsA\nk/7B0WzR/LmRGo/dX9zH05mIuTE+4QVCiKcy3MBeoSVaDD6ky6g4aiUQLhIp\nV2GVZ2SMwyTK741KsHaVGlSPCFQAy2mn9bz/j0ROF7byH2vvbwCUqrukit/h\nortrEtETanhbuqtT40oYaKdh+kZ/5cnVuDn2+YsukLSMvxZKNwLWroZRbDVF\nvYLE9TeYhSqtz1mv7Djuf8su7DjplCr4ZYO6cqJENylyOwHiTJXfRGFv+N9I\nZl1uU9lsbU5/dtT3MPfrFpiZg2Ur2A5ebGYQKmDtaq+vW97le7nVRZ3pvZao\ndMGW31MYB9xVhyt1TGjOYwyITRfM68qfDL346M45zk0CNaI4U9/gr5H4EBLA\neboXWlEkqQaENt0pWE2HaRVJXm+Tflf3hwqr+t3/q/L/+b2C4LgjaoYM0zJM\nUEvTdPEMSnzeD8HaVNo/MrYsFbhFsovSoOOL8mbuDGeAAljrX2kT3gpM8+Cb\nDvXJ\r\n=lbl0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c0a65ed92d63799ca1fe5b358b8c47623e9149e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.2","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.474","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.28_1616028346943_0.42526378202027026","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.29-renovate-non-major-40e89169131476ccba0502f515f3848574ff6371":{"name":"@balena/jellyfish-test-harness","version":"1.1.29-renovate-non-major-40e89169131476ccba0502f515f3848574ff6371","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.29-renovate-non-major-40e89169131476ccba0502f515f3848574ff6371","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9613cc57acad68797f191115edb44a336269e12e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.29-renovate-non-major-40e89169131476ccba0502f515f3848574ff6371.tgz","fileCount":18,"integrity":"sha512-jsROTkPrzFM5CBY18G4pCMAgevUIgCatO0dt/LYJSHKez9Qd2Q8l03zlVbIBdW/5u5Leh4JXtKUvpmJwPctkDQ==","signatures":[{"sig":"MEYCIQCrHNMyE7bQ93HNcX5cAR0k+HUAOjJcl1xIHZkjB7Vq1gIhAJI3zuggrvfoioQfwNOxRyWdNHzj9kiA3QMTrz76fYqC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41946,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUqQuCRA9TVsSAnZWagAA0uAQAIX3GtYHeixhyu8CVBNn\nX4jMQ0XMKG9LiWY+zJ4qfXKPlFvktRm0014+pJvxPr5nu2CdhzqD6nev/KO5\n+ZWQg7W2If+t8jCoFLts4K/id84T4fBP5JQklG8fyCYd72dybyRyFyQd836k\np4QLJqin8hVgUXIW41ZNtSyDU1ztcX51VmwYqMpvgSp3R7C8HexRlwclPHI6\n82f7Dh0pX1UOhMCv6njipkC/Wxmxmo5pBa730HDmi9r4+xXVrOyjRMP/sN1W\n/rQTadvhAd1mCXo7BW9BG4TwcD1c89v/oSTuugsYW33Yk7vdif/Y9NOr8O7v\nNJsrN54U9V11kSwDXWx+EFj8w4NCIgHVNuFW+05uh3PvzaJwkOduQIQdY1xg\nTOAnXqugQ9TP+1lX89I16+iz0oEcMY1UKC+weOEVkNKno8JSoD7x16kJaEZE\nWpNRJNCDIuJwm7qEdlQt5x2Lpk7vaWVmHcRm9UKMatIyVlJZc/USbohNLr87\nOnkcZJe02NOwxy0mQSmauYzs47xcTAi8jyQtxknRmM2eoCGXobrL4n1bJyWb\nxN2zSG5hbNyNR8K6XgOsFOSDU9qyG/IXgqofO2hCXMz4P6eDo8BgiwmpDrHw\nWjzu+vi7TqS06viL29aNmm5rF+az+N2DYSTzPTQNrwFLTaf6Zsb9/jIBwKaf\n6Jfs\r\n=K7r1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"40e89169131476ccba0502f515f3848574ff6371","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.3","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.29-renovate-non-major-40e89169131476ccba0502f515f3848574ff6371_1616028718303_0.5172287889115597","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.29":{"name":"@balena/jellyfish-test-harness","version":"1.1.29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.29","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f6d21ed0b427f8c62972b4ccfe900be7fd3ed81d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.29.tgz","fileCount":18,"integrity":"sha512-hAVaR3bO94C4WXsH5fq+tKQl8Iu3DqDGxnDcy059+bWTiqm6tIjeLoIZQiDoN89I5ABHJInXA9jUlwlYzhujOg==","signatures":[{"sig":"MEYCIQCnvn5fCjL8OqxTmJCTmW+iVf8Ga6j0SuYrI6H0n0rZxgIhAP09CFGK3VlJVbQO5buynG2L6gUtfla6dWulRdVATY8q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41886,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUqTtCRA9TVsSAnZWagAAICsP/0zOqYqPc+VMfBiD6+7m\nKLeqIPQw11T9jmyJY6yDecWOieW2OqnCAr0xCRrlAQ5OZo4/HEkcBLusnC1x\nahYIsD//9ZU1MNYEEs9uGgbRw8hSCIxgdErQLtX7iQ/BkzmnXSnZ06sudbkE\nl/WKS9UuKcBQjadmZkznGkRGECfM1rstSK/PHxtkv0FCo0TEYN+OjHQiZNDN\nAAMYtxj2v5nOD+oNAKrQzQEjMmVnr/Di+VId5pFTXXnHD8ynE6O7HhiSNHj4\ns0iM6aJlasbhuO9sq1gIliX5e4UTepO77LEUA7Yy2RLlFuhHJMkpdFI61MF6\nsRREYH7LpdblpRn1UzezOGphp9Sj7mpf6Df+UdRHer9ichuAKpKL38y5196z\np9rEV5PuW8APvRkTVNeTCvFSoAOx/0chvh3aHsj4Hd2qces2iB17l4LnbJ9Y\nHJTSIE/tJBt3eCQHbtp3dI/fBipeFUqkgU+NWdEym6YUMV+U7n0V28Mr6NLC\npaBWvrTVvSXlO17I0cbGZ7mt+2wUbrffTccOSthYpvAJ/6pkIVUhfxD/VZ3g\nxqxynqXiRbiW/kt2mlup76aGQXLFLJaL/TppBJlWQy/IS5LMaXiAbiomhMoq\ndZgxHzp2H0vX+7GhrLao8SlDrhzgndAvkB8QG3kmhdzDguGrGTA7zSHxfAL6\nCYeN\r\n=kmGC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab964e32753b9397b69a240a74bebcf711dc96e7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.3","@balena/jellyfish-sync":"^5.2.13","@balena/jellyfish-uuid":"^1.0.71","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.29_1616028908551_0.814087295013106","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.30-renovate-non-major-1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8":{"name":"@balena/jellyfish-test-harness","version":"1.1.30-renovate-non-major-1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.30-renovate-non-major-1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00c76964dbb6370200b65113477128c88217999a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.30-renovate-non-major-1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8.tgz","fileCount":18,"integrity":"sha512-UMg/T7sX22tf3F5u0wAtq45yRdrRNZafCTSMnHj1LjUMvu+6DikntX3q8ECCDIuVdjj3BQJGf3RbUli4/6h4vA==","signatures":[{"sig":"MEQCIDTXgtlNz7fq8kT8I3HQX6yddUsFZYdLYviNvfzj+AisAiBO/kO4ct08P+GCaBlqXHX30+vDxb+YkkMA3fel9LaMuA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42015,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUr/jCRA9TVsSAnZWagAAZvkP+wUVnkeS/kmarxQQ/lvT\n8wwlBamh55/Sb2A4M9x00JyYt0kTbmLUQ+yR/4NTi/zzxR8U/ELVZL1xlJGt\npAJkjh7ifK6EUmsvHmHsZc6X4nfuNpD8hzysd3s2cN5lLXVJ+epdcRXS0HGB\nihOgmSb8I/YMRb+ecada3/C8B0rDeySpHl3AgNBaKXsNXI+AYYVU/fwoeEzM\nLThJFIKXD/7NNwb2hd+iIYH+ntE6NxZzVMOlif1whjv52cHLjNWm8F4yoHqy\nRw0KaVZIh820RKoI86/atokVGyvl7mBhFhr8IVr+tJdpFwDvswMPW8gZ/6Vq\noLdTjAL8SbK35i7/PlMjz/By8XhZmm2DSRzMpn/z4hIRi38/YLvFJJFKGSNn\nc5yrMxsJ5klMzcBy86jtrLLydDy2XIw3K2WK91+dXdFgGtYrIaRZnFLtwjpo\nGi3Jy9iFHqw/H+6Z5pGVCGEv8QDWWxS5LkVLRElcWbRTJzyD8LaSfNgwuSWg\nTAxzlHljRT9gJQQx7A1gZ2ubP9y191BrUAlekWV9HfnDvE6073pMPq5JYtxx\nY4rqrpxVxwZV3QBJjmJcBRanzu1dgxOBQ9urzLnAgtVs/beDp4lbS0tJyryb\nZPpAH4hjYWDDG1OhX1gvBmD0ejb8jabiX6L0bt/xUQNWBrAZD2V+FJCO+Tiv\nVUjc\r\n=kE9S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.3","@balena/jellyfish-sync":"^5.2.14","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.33"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.30-renovate-non-major-1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8_1616035811149_0.6779984125471687","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.30-renovate-non-major-6d67c15125ceb0e6012fd8cf8dabff8a5d040f32":{"name":"@balena/jellyfish-test-harness","version":"1.1.30-renovate-non-major-6d67c15125ceb0e6012fd8cf8dabff8a5d040f32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.30-renovate-non-major-6d67c15125ceb0e6012fd8cf8dabff8a5d040f32","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a853d0d847a7642c38b9bb16ad7504f25333fb3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.30-renovate-non-major-6d67c15125ceb0e6012fd8cf8dabff8a5d040f32.tgz","fileCount":18,"integrity":"sha512-fZRKn9gfv6xRI7Suh7jhbUp7jeM7niyiJtws3+6fbTIupW12rsLjx/J8OysbX2cgBRc9cseaQa049b0xvjOVIw==","signatures":[{"sig":"MEYCIQCDeeuChCj7SLNnHFJh9pXfqc6UkGbmnbJOoBXdElLzTAIhANMWqHVxxlG03DZzNlDicwDg81NhxgzS1bVu8qQ5Rg2d","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42015,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUsFGCRA9TVsSAnZWagAA3Z4P/i9NwaaUbJGFhZQZ6POS\nghzGH4j29gH/MPLvMG3eQ9qHiCKrmHV1t8yFiG4IgWb8+Ujqg0iN0xg5vOXp\nlqzC4JGiMgAwn+mIM1M0n+8hcKuDbQSkc++U68j4Or9LmSDqgYf+Vl/237UQ\nTlSAwZGHMQ3yVuxgxsZzlxTXQCfKNle5Zm1ME/GsZbGH1d3YsjBX2hGgDySd\n/WEci5SfR+zsrpWShNxXVrIfzWU/g+/9gB86QbqvoB3H/Zh0a3W69axqB/6t\ni94Rr+mXtP/ZRckTlJ5D9hUN8PBKpoWHqPAu95mjn/013CsPg7vmf6kmQNIR\n03a3XEoKf+ZVTa66MXQ0rC5ooLg7E/TncWxNly/VDE/iVKZo5Yb3nahG/xKG\nbwI0xF97G9weT1eCtml7JUroKcg305cjsS30lwmGlCl74p0iqOWKBM+gn/8b\nBM6bg9DsjyclfD4AKrpvmfw4ON2wjNJs+cewhs46gTBTTinocM2YpvWkL0at\npw3Kvy74vLaj7NLojwp/FvweFKbmx3SHAyu0AtRXa2igJi+DzOZmD5JSSTHz\nXoGhzRJYyPO/D6yIcYBYx6GbT/gTSVzjelICQlPw+IIJLCGm8Z4iYxyTBolg\nzVEFxaI0TA4RsDx9mL0NqM7aZ94BjLN39cW0p3CxfCqQOBRrc2MKqllenuqW\n0vPH\r\n=AkX1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6d67c15125ceb0e6012fd8cf8dabff8a5d040f32","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.3","@balena/jellyfish-sync":"^5.2.14","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.19","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.30-renovate-non-major-6d67c15125ceb0e6012fd8cf8dabff8a5d040f32_1616036166348_0.43743177177897774","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.30-renovate-non-major-7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6":{"name":"@balena/jellyfish-test-harness","version":"1.1.30-renovate-non-major-7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.30-renovate-non-major-7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"adcdf0acc60938e424f1e3c3bae1216a0911edd6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.30-renovate-non-major-7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6.tgz","fileCount":18,"integrity":"sha512-xo0IW1AAKG5RNYArf+iNyzgg8HknDB5EIoH1WtVSRkmokWEivNTMlCka6yqFPdFSON0Zg0eXAC2Djy2rF6NwKg==","signatures":[{"sig":"MEUCID+RTLDvnHQmwmKGyiphSXo4YVaPCWtL8WoSRH1vv4FrAiEAt7YZ4s/3jXtj2N2x3W3oPTUmywxoYCJ/MZSsfpgcXJg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42015,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUsKtCRA9TVsSAnZWagAApHcP/1TLaCJ6KWraXypr1HTL\nOWy6swAl+A4o6E0FkFIWlpKjM/Fk6V8KNYJS+db6+4UI1DJIbdeRGTLY34aM\nDnRKB1ytFVyvEP6yxgK2zhX/dyCJSANe5cM5d0/Hfv5VpJ/FDu64wVnwqA8B\nCfsj97PGjCYHCIkB9UN41FYr4TJbs4OQYw/eOST8ZhHd1I0uzoegE1HSknOT\nuFDBTmCsau+/8V4qlbSQWtf/eb50mv7SNZlU4n0UFRDmKCf2m7HUZjS/RBaz\nJTyKGM/Tg6b9x+/TpqD5zZqIGoP5FUeI/qqvCWORu3t53XOQ1OZ+p2pJ3nrR\nj/dQ9UgSPI3RmH1m5yFumkRnJR8UMTZ5WQDR7mqgZPvjgjsswwqtYT8xEryx\nx0N+V2CAzC3jKemVmBsqGJl1xk4QeUNM3n+iGcPWqFmrUihkjBAQImjCJeTy\nGqcOLe99E2eq/+WTM4tf4XbvVXqdMgOujpC0pqth9kcv2N8GZY59741arj/1\n4puJxIenODbk3xfk6KP6vGzXCBWmZeHpNkrp/MQnTusHKzg/cOcVV65iUMsE\nJy1Pg5/6OWbwJP9RQgR8Gdw7VCEq1B+tK2IbkTvJN+pasuPCgNBHZO5gJgFp\naGDho4l3OopLXw5ipY5q4Lb8hGKHaTj2HK0ZbStCdhCLE1n4QybEwdHy9iag\n8VRS\r\n=+WWV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.3","@balena/jellyfish-sync":"^5.2.14","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.30-renovate-non-major-7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6_1616036525447_0.7143163741681957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.30":{"name":"@balena/jellyfish-test-harness","version":"1.1.30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1a5d067f20ab5a49839f581fd288a1bf6dfa3439","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.30.tgz","fileCount":18,"integrity":"sha512-njEmQOWKbwuHHBgvYzSxB6ar5rlZxsHkNul3gD139wgUJfDCESC+uYhciOuHiJ+HZp0B7sJV6T6kt3lFBQVPtQ==","signatures":[{"sig":"MEQCID228xR4dgmvZFvkkwIqWanzBa2h9j3xZmEkspJ1fn1yAiBQl+NJC3GlFf5h/Gl6UAGxBLj5dc/LJX0P2lK6VIPhRA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41955,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUsNwCRA9TVsSAnZWagAAFBwP/0y4KB33tKu7P+kCxms8\nJwud/cA0QgnVZdkNXJBaq+2hGc0RdUKddsMEnhkyKZ1LDWf3Bu2ZPpPVRlFd\nfqLPUsIl2REymIRcyrV/iyEo5775hkqW4PZ+ihrPGJVQiEqefRvYnyvJO7Gr\ndXhSiWn1bpnkA69PjnSCEiPh8ZIY7MwzXDPk8Xl6nR9Ph5oH2mwU8JVaz0d/\nQXMKIYY3ep+lNlqI/sdB8QW5BiIFtQhjogG+RoQktJbyGelCADwfSgFC0/rW\nQhgP+4cy5/Jmqv+NLSl2BVzjWty6W6H8jLhr94irGG7T0RVIwUyisiI11k3A\n837iWNoXsAQeJzmN1ZypAOVXJkYJtoDTenJyT8yp2JKYqcwpXM4anQ2yq6Qy\ndNS0FgQvPnk9Zuh6hZv0fwul0P/xdEd9gAC0ug94gQT3mniGMzWhnfEUnPvh\nQKSs+Sd8GpnUuLM8hZ3scoY6XWl/lF6mk8b1syk9x1IX7w6spGg3ePhtScjB\nzyAxPx1pm0nooKMrEbJPzD6EY32zIL4UjLS9/V4rTS5Ygr62vecctVaiyOH4\nuroZ5r3Lq9ARdEMcJP8lVXZvSeQsfHZPY7Op1T4Wnb9G8xAGwn4n5QrYRoG5\naqWNGBHMIG7nsRKfmOIJJRHjg+UpAqyaaslZFG1QKXJPhHV6xhOtLp4WoiRi\nuCbk\r\n=75G4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9c30371b83876b3bf8196ddf56c89659f9d565c1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.11.3","@balena/jellyfish-sync":"^5.2.14","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.30_1616036720498_0.5245331561488937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.31-renovate-non-major-eb84f65242a12fa4d363d23ce469521a862cac94":{"name":"@balena/jellyfish-test-harness","version":"1.1.31-renovate-non-major-eb84f65242a12fa4d363d23ce469521a862cac94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.31-renovate-non-major-eb84f65242a12fa4d363d23ce469521a862cac94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8621e94b658abadfb56a2f50cb9bc8fbbb7edd39","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.31-renovate-non-major-eb84f65242a12fa4d363d23ce469521a862cac94.tgz","fileCount":18,"integrity":"sha512-SlvLmqGRU+a8EBwYjE0LU7ldy0J2ZnN8mw6fAK4vyt/Y9j2wCutJBxbhGflN2dTZvetdWMMVQWsPfbOfdWs77Q==","signatures":[{"sig":"MEUCIQCW7osSa1TNjpTBxiNFqG7YuZShE9BDvTdOXoddBMCHbwIgRZ1GbWpyEBESP6PkD1Hep4DdBzO/+mTFi2Bo46BAt2s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUt6MCRA9TVsSAnZWagAAC5MP+wWYdOrf31Vdb3X5BI+h\nXZY66plBUb/+p2QFtOeD1Nt06bYtdAPn9ICRx6j56LrI1ysvgXAMH7SJiOC+\nvkKOxkC+CkqMfJQnUI53SLjEjjmFRksQLW0ltf4VaCOpD78zaGgXNfpmS8DP\nZtnUnYWgySb7xmyDceTKVjZBrhJ5jCUe+A/TjUZUiZimX61nsvjVsED+XBVx\nVI5gB2BlbdNrvRht9bSQoosutKBLV+JNrSxz6Gn5vmMI6U53upDt+4LTeUp+\n4CKTUJVg3M3HVYmn/vpTx5x6gL5GYPEtXGTdNiExmGDF5EQTgy5mvSyVU9Dm\nRAaJqFClQ+ZJ+N1v5uQnillNZW9P97zYaG18SuOKHljFSigR/YAY5FAN7YIa\nt5fNavYBCaEcpYD/JXhD6qq8p2zXz3vEMi7edcUNM7oIiH9U9T/7sftmsw41\n2xd8J7bKO38lnSIb/vJpO9JJTw7M1vtUgA9yhCOw0rLcHLtC4JeRFg65sRsy\n7y5iZqi7cSYMPTvFi2+LKK00HbJkxNcX8//qEXMz5Lm/ogJ8xdPqJ8dKh7k+\nooyL4K9hAf1Yq8TythodeX+BGRRVyQ4TggrUOI6XuZnn6f3lHxl88YwWp8eJ\nz/CQemf8FZRChFpPF2Skl7ZRfpi+uEl0WqQEcDZqOCSz1Zvbdw7kQsCFM1z7\nh2Q8\r\n=6v0K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eb84f65242a12fa4d363d23ce469521a862cac94","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.2","@balena/jellyfish-sync":"^5.2.15","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.31-renovate-non-major-eb84f65242a12fa4d363d23ce469521a862cac94_1616043659657_0.812629100512918","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.31":{"name":"@balena/jellyfish-test-harness","version":"1.1.31","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.31","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3980fef08aceff5dae356fee1d44a62ef52df6c6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.31.tgz","fileCount":18,"integrity":"sha512-G6GdaoRqYq3efhraYPYblfPBoULD8Ysk7BfmS6weOPRRA9m5gRm7Z6TRZFKUzlCcyb5ybT3AcHfSIdk6+b38Vg==","signatures":[{"sig":"MEQCIGdta2BbPsJfHOY8rY3d1F3EsVx0xRyeQ5LHCh7PMHuHAiBD1EzQ+p5fY6isvTTSNOqXiOPhjln3fDqZYrsSwb87Cw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42024,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUt8sCRA9TVsSAnZWagAAvRgP/0f/k4wNgEWgLA9eMVqD\nFq2LiSvX9f7UCzfY8EeBMTSFxx5/DyO8Wa/vuiWbLsbODG6gnoMm72cAP3Vm\nuGeY7qmherXRjpCW/pcORWeP7MybBOWIntPSbazKzZ9sW2xp6lMszFubonen\n4fCDkcshSXm1WgJw8MJ3RAPMRFKmc4TCtSotlyeIA0IrSgO54yqvFg2p+fxR\nq1iXxFLgQ+Be/6zBzeb2vhQ/M0gLfEzpc6bJP/HA2Cd2DmFy0Wcc/J75g74+\nALj/gKrs5O9krQfl/uiwgcp+e9cCWqfp1Tb5IVXoiAI2kgyhdXB1Hg0+vNwe\nc8GEYQd2xvPz1S8wEdmtw41D+F56/kx6vEi1k+VeYi5Y155UqZRHq7hSvEzB\n0HtotGYGZ2qYOvP6J1JzDAWoWnkJjSdH5EI/QMDrmReLnNtCqP1SCNlF2eRd\nL1GKSiIGfS4yL01H9us1m7GRBlXKHuAESPiUpyU6lmSRlcrP+0IjnVslqHhm\nzRUc1UEnbYJ1Aofhs//btUivRCVbY6A7B8saCw2QpGvsyHjtVXCuO5VRCjma\nLQBPU0oqhOuzjxZkxZ/mdKW9KnZzkDHWPvaBflJSCJinLn97eJtlPNg4aNKr\nbbD60hVJJMpbLPNMM3R2R0zAzai5JJ8cbYcgsw5Kg4ZnaJa130P0zM69OgAL\nyBmu\r\n=+5J2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4a95dca2da5c9cb0f33e568db9b43ad0f960ab48","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.2","@balena/jellyfish-sync":"^5.2.15","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.475","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.31_1616043820280_0.9781895362552289","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.32-renovate-non-major-da538724686e60ff1978ad6f3da0772ed8b97f5c":{"name":"@balena/jellyfish-test-harness","version":"1.1.32-renovate-non-major-da538724686e60ff1978ad6f3da0772ed8b97f5c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.32-renovate-non-major-da538724686e60ff1978ad6f3da0772ed8b97f5c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da136df4f27898c8b4c020a7ede6a2fb79d20ea5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.32-renovate-non-major-da538724686e60ff1978ad6f3da0772ed8b97f5c.tgz","fileCount":18,"integrity":"sha512-gw91SuFxyjNhXgwQ9fzzbeNhv2FU6JQsqwm0OAmk23EKEP6tQ6yFLLc4S7kX6aOVWzKPOpH/5FM0jfiJNqnZ8w==","signatures":[{"sig":"MEYCIQDzBCSzNCSa1AvF1RHY+9JdcUs5Rwpzo57OJf7MxVDP/wIhAIGB0qOOd48PWz4C7Ye+GiZhZbedzo5qhM7YWpzNUiOF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42153,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUxzwCRA9TVsSAnZWagAAfUYP/2/mB+i4UfI7XglBHr1h\nAKQaYcuUeTwQ2Vb4838z9lgsX48lK4Ud6/sXBbzKtPf3WaZng5hIwz3duuUd\nodQTPrxSh6l0n24iuVz8Fsj9tKDf4xuW3GIdvgw9UpzQqNRbZLfRKd7cShRz\n49mEdlO/ieP4ghlm/RHtCqRiEufkhlnfEjX0oEF96ZzdJgMqW6vfYjw0sxVN\nm8ivBG7egiVLwksBWQo1BfVr7yHg2OP+5yN2TKpAZtTUq9cnfkNwmrhGlOgi\nXxF4m5/R8K556aDbhYYCLfI1l6DGfMdOd+pSOhMiyhIKbNqGvfYsusUpMUQW\nwV50Q4yBvr9cPt/SHCZROoE1RfGx/qMpipU79ojMIsoUZj5qDTMgrjcVS/oY\nui+Sc8voW5ILezkTyQlSK5hAMoWGyKH7WsGjJSIHOw+WDyV2DrgEks+NOM/J\nye26ZQW6Cw74PlJN/tEwSZpjNhSOi9x7I3ekpOlgh2GOho4Myt/88mgKgkg2\nmHWzd2W0TRiYK3jvJzh+99vNW8j2/fZcrP8jthvzeQAIoPX20ZdpvuBc2nMX\nO/3Uo9OtP62eKvSLXSPY1mSVErq9oGWYdPvdSJ5dIfHBJ0iJAloT7GgJI45s\nffDrjEV5gJai1xvDtXuJlWNSuEOw9hrvHbSxWItJyzi4o8K0ch+BvVDbXI/r\nmJfX\r\n=tmgx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da538724686e60ff1978ad6f3da0772ed8b97f5c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.3","@balena/jellyfish-sync":"^5.2.16","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.476","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.32-renovate-non-major-da538724686e60ff1978ad6f3da0772ed8b97f5c_1616059631757_0.177295518265699","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.32":{"name":"@balena/jellyfish-test-harness","version":"1.1.32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.32","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1170d0099f583e3157edcb8ea5138e15e97473fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.32.tgz","fileCount":18,"integrity":"sha512-57gc3LfnBMXxY0DLoTsRhb/trFSneOBdzv9XQXgLn97M0v3hVTG/TmBJoR9A4pKiO7GK7P06PoMpwSN55c7SaQ==","signatures":[{"sig":"MEUCIHAyavjdUchN11PHWaPZA18FVF7/ZyXEqOc7Yg42s34UAiEAti/IGw6CrhfSshv7QTfQpEu7EzhEUrs0nV8XZAXisM8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgUx2bCRA9TVsSAnZWagAA0rcP/3LJ9j3/f44snjySK7mA\nXSSzdjMVECsxJCnsLRZAKPJskM9m+2oajlDG5svBFTC6RwPZk4Sc6UIIGrYm\n65aavy087kgtd2ljbvs0G5fmElqY9aCYa0sDRLSubdB3GMeR+e/eOGuVQAGF\nUdSQjdm4q2AVsRx7sBTWtHVe14sG4AyM1gtFGZmCq+Esq5bwx6YMiLsu40H3\nglX8fGQagPvkO/OAQpWe4tiCmK7x7qoAif1GyosWZRw+qB2EWoiSmnL0fvMe\nQPPvBYUFP7F4on2xAv7UlEJF+2X2ytBgI3vmme8pARYoHV/QPMN62WE70SS2\nVIu1DkupwhFicNSQHmFD4T4PGJaU+Petp+X+NcTDYSF6RakkE4CBlx8+sGsU\nUajgvmLA4bKQUkU7xzFdb7yBKt6jYASDDHJU8Nifp94CkdzWFpojvVFWf/xN\nO68cD/HYE27sikEw4JL1tQcyYnUHhJQr5u+GTXsoWZrODNoWCrWKtxvzQXdO\n8UfSN4P00pe+9/Jq0KRLBBu6UXyfo21+hqwyF7R3Y2vj4mItktYhhXQfBWbL\nMDj5p9yls1vO5SEm2yE/0mzp3PXT17LIbHTIknQFwxxqQIgRJujcG4554DJV\np7qyK0dBAF5lsKxZUyqKiHrE331KOXY1Gl7CVQmToTExIZN71Y++i2i4/+U2\nIagj\r\n=eXAB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c97c5e57f36a49f3730761b3a1d1010f42e7ae29","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.3","@balena/jellyfish-sync":"^5.2.16","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.476","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.32_1616059802688_0.03559564699363582","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.33-renovate-non-major-9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93":{"name":"@balena/jellyfish-test-harness","version":"1.1.33-renovate-non-major-9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.33-renovate-non-major-9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c3d2901087b32da1780014c765a192aa3bc96a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.33-renovate-non-major-9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93.tgz","fileCount":18,"integrity":"sha512-uaNLCdnxv9Dl2GtXf1k77XuXkwx+kCBes3M/U6C3bzg0bsMapq6cHaT+V4RSLUI7kO5WLBvbDqwHM15ptyy4Vg==","signatures":[{"sig":"MEYCIQD0v4i1bqWWXex6vixKWz2KD2kdGxKdLz5gJS/xsDU5wgIhAIuAliJCiZ5LGcG9+CSLj3ZEIUMRFU3+utN8hqDFVyCK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU0DsCRA9TVsSAnZWagAAyE0QAIrSgVbVNd7cz/Yv62E6\nXcJge7/BgQpTeJmty+tlIshjscNgbVJ0PI4brQkLNH1eC7WY5Y3iphye+MJB\nWS1htQsxDIBQ7kYn+fK34aT8ZOI8grK6ixJmnnFcuhdPrisRxjO6XPwO1uEX\nCgVQ0K6URXvI5/kW7WTTUMRcWC6rkCW9FkKgEHmwvckY30kIqgKgGYjIOiZ8\nL8o+mmqm/lINlrVBw7IZ3+tUP2I16BsP9C5hfPNU9HLvvTvBxvz1y/9TTUkQ\nQnMthKlTPWuijdahrB22qXR3Kv0r0hDNXDXdPd9B4KG5E1y9wP4shwA520J7\n5eJCRK/HGzGSo7GmVTkQ697SjQk/tScygvX+Zc6JN/CzTva0IZg42O9NsITC\njuzcz4wTn2k/+r+5iRNLZgAITCa/Elo0cfk2Tq4IpN4jJtqYS0buUWG69OEs\nxNnxl4d3XmAG4vVOn4E6RoB3M2fC+DzCLXHbQZ7bq5EN4j41xdTJhKU0Zbxk\nspJzMD1DrAUvoyyLKK6/Cd86eP5U+QkC7TXWD1U6DBMYL9p2CPG/6pn6m1sS\n/iIFsIKr3DxLVeRZzqIjAf1RZEe9BeLJmhYF/kY0orZ0svmZpuo2UII0qaxB\nIP/hGTS+br+L8xcWkMSlCzasZMyYYAYhc0RtlYge/WAkCBLXp9DOtgNzG+eK\nOtxq\r\n=okqP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.4","@balena/jellyfish-sync":"^5.2.16","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.476","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.33-renovate-non-major-9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93_1616068843786_0.47197080822947024","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.33":{"name":"@balena/jellyfish-test-harness","version":"1.1.33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.33","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bae454228d35e1f6cf11dcdce1c5fe4ac1d4341d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.33.tgz","fileCount":18,"integrity":"sha512-zYiL5ARSyVexFO6oB3bUpNIDg9QgqqvVKUXkVEMLYkmkeVXL9btyKGFYSB6uAaahbAOTM2rut+ckpcpNZQ7Avw==","signatures":[{"sig":"MEQCIG++LV+JJhSgvTYWBGaAt5yK0rjG0RGM0Hl2HaySgt6uAiAIGnEWVoyg+4a47GX5/JpPC9w1ihwYfJKibNUsKUzUlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42197,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgU0GgCRA9TVsSAnZWagAAYesQAJLNWyLZxMh42+nj81mN\nQKY3yH0VHrehGHxrHAVR0cDVaM5BXtyj+SxksnYxwc6m0qiQs4lYFJz/dg0Q\nykhBcUwbv/tbT/LZgCkQHGNWdUyecffEdo8YlZkihsn2oFBfIXs7tvWmmot0\n4REu+s8fK1ZNFUr87LMJLq2BXG1Sd/SCAB47UM+iL0jRf5k9G+iZ9Ci7npyC\nt+7oFLZKy8khI/UvnpKJzydSLyXNIEdVt+EK+vbBp+ZAqcMgHBulftinNVQM\nPq9kQsMAFjjMSmW+iEAGGFuRqxrPESL+FTDXWkWZ6dfq0NjEbZYMEd2obTF8\nsNkyv290G8THx8xHikxpADPG2JuzUnPaH54Y9QiA0OxPQD0L/ycK1xdAw9SS\nvTjgz7ME8ebNx54ZiE/gRVwP5d2jdZSCq1QY6CSKgz013OXkceP6sYT/Gm0G\neTleXQX8o44Vi0SWVLcOuUeF6UzrJLSiTJIIkgw+8Na43Dvef47yCe96tm2j\nks+WfY6EePga7yKV365Xqi3r3gXEvppvkb9UqlgTJDFmHbSUEd3ttapowaPS\n9AKLYbFWPmfMhzaba6AKcV7QbRg0sNRZKFbZLOpVbCh/+lUJ/PrwiZjp4kNO\nnI6MYhpjLttUDdccjWreWjOZJJcBpEa5TaHbawR2/7x9ufF4VgoqwI/x1YM1\ncXsj\r\n=VzOc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cd23ccbf33454e751d93247e1aa3e4cb2bef852a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.4","@balena/jellyfish-sync":"^5.2.16","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.476","@balena/jellyfish-worker":"^3.1.20","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.34"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.33_1616069024074_0.9144524411726849","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.34-renovate-non-major-c44cabaf15164b2ad8d7c9e35a96d760f6c35e35":{"name":"@balena/jellyfish-test-harness","version":"1.1.34-renovate-non-major-c44cabaf15164b2ad8d7c9e35a96d760f6c35e35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.34-renovate-non-major-c44cabaf15164b2ad8d7c9e35a96d760f6c35e35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e2e9900c67b7bc7605bf7133579f75a75c6ba46e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.34-renovate-non-major-c44cabaf15164b2ad8d7c9e35a96d760f6c35e35.tgz","fileCount":18,"integrity":"sha512-yMyPayRMPf7EwMfs6BExir/tb+/7ycuU6/dCY99YLE7KFr74UgmenI7f8Ce+df/Uc7yYWecUgCIkyHu+PG4TGg==","signatures":[{"sig":"MEYCIQC6yGhvMI0xPN+v/nuUaLUs8DiKLRvwdcK5R/1AyZGj3QIhAN//fFlHpcdykO007Y+aZnVUBhtgEF1uu2Xu9AMYTwUx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42326,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVR0sCRA9TVsSAnZWagAAB9UP/A/zK+RwfMIRrTa34yAm\nbrc9TD8oXR4ebaMQXPX16W9z45L7ZuTuo7UTAP8a7ffvEWNRj/BRRaq89Roc\ne5hBWO+AbzqGNivTWpSR8fOtTuzbpqot8cVhioM+u/uxH7b/BIAJQkN89I9T\nRMlM3xSdNnmuFoOE4wgUE9uzHr3uABbAm0MMGpuBePKj+JEYYui4VYoiMBSI\nPudyD5lR4FSExyM2aJ1HTlFjddJ4LCNgd+SV/CMIpNksqPrNfLgKvhNkmIKb\nEfSg8LNDMfGgR46MSzb1MFtTfsRsQKu94YbuCXN62nQNqUNUzWW+3cOpOKvt\nbWgXTtkWysN+KZQeIOrY+sylW7cujGGowilcjAfdqVbvfl6XIXldRHTfbFbi\nkBv1WfeOaVEtreW+ZfK0cjATeSoMQtO0bhZYorbZY2bDfKbA+VXIaEXYFDqb\nKIcagM0F0UQvZKdaHmxXcGLaWg5+NkU7xJOlnGPL62Oy4dEu3c80E9gBtN65\nVJUeSS5xEHX6Iq+RuxBkP61X7rFC38GO3AI+CQB7ujyUz8rcMJxLR21lzKmJ\n6eDwNsuNUVmlE9a6wp/CVesPcU+yDBPdxqArfqWlfqjfnmtOHyEtUOzYoeL6\nAEQ0yv+i2oRiGtZ7Cm5+gVn2JAgvGHHl+7EVFTO1HzO09NBeTL/YO1UOUthj\n86+w\r\n=HtIP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c44cabaf15164b2ad8d7c9e35a96d760f6c35e35","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.5","@balena/jellyfish-sync":"^5.2.17","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.477","@balena/jellyfish-worker":"^3.1.21","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.34-renovate-non-major-c44cabaf15164b2ad8d7c9e35a96d760f6c35e35_1616190763719_0.9964909718209507","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.34":{"name":"@balena/jellyfish-test-harness","version":"1.1.34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a48216aa873891e513b6b85a75226d62639fddd9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.34.tgz","fileCount":18,"integrity":"sha512-ZViOvuu6jaSbj5aT/6jvMrPfjX/8mMxyz4LhiRQl/Dr3XG10p0gdalx7VjK+9yPGxys/DtO9OFTfT899WjXfVA==","signatures":[{"sig":"MEYCIQC5ZmbevwkWyiwRw+ahMwxcEMKBorMnoXOZnf0lGB4bhQIhAI8Hue7aXWhPGQE9q6XLTMWmES7POwiZ3KXvmYS5W2OB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42266,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgVR4kCRA9TVsSAnZWagAA2RAQAIActQkyZ0Q3ZE0/Ep7a\nlJU4FP/3VMJATyVLE3UHgcdz1W0GRrJlN71eAmXg+xf/8V4WN9euOvPbmy65\nieysb038M1q7ubfEqf8YQgmB++tsjCpHiznyPfxX4M2FNl8a5k1sagZDMNuG\nUui4XYQEku2B69gC83Qij4XOQkgSjY06+vcswx9yewda9YBWJkIZd2bSYRMZ\nuFgP3j48ikwfNtMOyoGMjQQqjt6OrPIFE2Iz6hDcGafUJaxHwW+kiVlXE7W7\noHQDTHIrA7qYdfm4MMk/1LsgaNY6PlpaaiX/gmiGf2Rtu0pjp9zY5PIzIrvs\n+12uPbhcScmBzaQxSZK8SL5bOpX5vGIQcwI72vkwIg4RDXAzPRvovG8FvLrW\ngfo9Ib0sdoKLQLciROXSWsQL9cm7fX8muOUsBpi43ftrALbwsy2qLvJufb15\nL3HzAfFhrMmFDYD/bmTpAuvvI/zVVo1cISDG5zeZdMmHh4GPBbRVBPUAOFwE\nMQeKJSzx+e1Cp94k/J1SnOJzR/mS0tMlgW4GFxL88NE/n51l+hj3dXI18T2x\njhSdBESfjBrHMjMIoW+nloYrO+hdd2S6aDTZ2WNMjW8ywD9xlFFoBR0Ca5pu\nDD53HF9QnHa6/eRVnpj+d+GcxPh14OOBsCQy0j9hO+HVoEH1cvOiMjs6XolU\nrP4D\r\n=QBoD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"249ebd5389e6991903badcfffb69efc5281667e1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.5","@balena/jellyfish-sync":"^5.2.17","@balena/jellyfish-uuid":"^1.0.72","@balena/jellyfish-queue":"0.0.477","@balena/jellyfish-worker":"^3.1.21","@balena/jellyfish-environment":"^3.0.0","@balena/jellyfish-plugin-base":"^1.2.35"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.1.3","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.34_1616191011821_0.22774694197509882","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.35-renovate-non-major-40dfa3a68a0e6ccfba0327010368bdbda951c327":{"name":"@balena/jellyfish-test-harness","version":"1.1.35-renovate-non-major-40dfa3a68a0e6ccfba0327010368bdbda951c327","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.35-renovate-non-major-40dfa3a68a0e6ccfba0327010368bdbda951c327","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7731605f63024b9790b62a77a5b9b4c7ebe8babe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.35-renovate-non-major-40dfa3a68a0e6ccfba0327010368bdbda951c327.tgz","fileCount":18,"integrity":"sha512-nYT5lHIuUVN+uoYPR91jB7AxZvkvOFCyEfJslqYh2niOQulHDlQ40BVFQRSe/leETFbrwHeafaTkdaw2u6vNUA==","signatures":[{"sig":"MEUCIQCbOJjG3zx90jEAIl7+/jGyEMUHQifSQP62fhZ+qrfVyQIgOlSkiFFzTHSFFHL/ba30JmJqQoCcjJjZP2vKXmfM9Bw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42395,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgV7KlCRA9TVsSAnZWagAAr7UP/R9O+kONYsVgHr2cX47P\nexhiO/w/O3mubOsG3kSzXK+I6LRQ1mkCm/rzV21gqc8DwL7CdxA4bEmJvaIu\nfNwqYZzSrtgwzk+Ic2DMhGmNOqOncsr9OUdvV+A4USiF3E8LT40AEx2SRLJI\nauUvZJWgkiCrnhPmjeKM81d2afbo5e7E24qfrYAMn3Siit16Ulyb9nm085VY\nD/S0AC99Fl8zrSFCzR9erUZQf3GHJ9Lt9WlhjtNXjW+dHjGRtj58lip1oDMG\nJWy6HHg8b9EfQU3qRkKfa6ZQrHblmD2GWCVxXU3iyanG+W2AxQp2scFkBd4B\ntFsZv2i3RmNkApo4gaPW7nYftIgreXgnkPoB3bhSn+epe6JABzexXwMaYwrP\nLfBZ1sAvv9gRD5CtnDmgXccLIZoGzMT66PTWhlMgkQfGF9CbPusbG5+rRBcA\nbM9lwvoTzhOjnreRyoLKspr0tv3SrwD7VqE0OHnAxd45DHEmcFe79uep9W1p\nMTn7v1Y+lHziMaOionRk7Ff2mIesaqermcwIiirXQgBtnDzi8BG0QVxok01O\npPoPLX+sKN1c47k6mIBqA4L2kJ47SZ9pieUQsx5CQvMTQIQqwqUQqCKS1L74\niDPp5Fs0s9uHd2z6nxLJ+zKoiuRrO/uQmvbtnrbiVjCJqiR7jy5oK8GwPhc2\njYCg\r\n=Sk/3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"40dfa3a68a0e6ccfba0327010368bdbda951c327","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.5","@balena/jellyfish-sync":"^5.2.17","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.478","@balena/jellyfish-worker":"^3.1.22","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.35-renovate-non-major-40dfa3a68a0e6ccfba0327010368bdbda951c327_1616360100560_0.7777017536124564","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.35":{"name":"@balena/jellyfish-test-harness","version":"1.1.35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3385ed787a7641971a6000c55e66ef777709cf32","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.35.tgz","fileCount":18,"integrity":"sha512-1IEJdZCdkoDRAzobVuk+d/f36Taxjm+dTggdWUdgY+Ok9//I21GENVvlAE/vqrGMgJF4oBS+8fUdV8M7OBcO/g==","signatures":[{"sig":"MEUCIDMxjYBEAUTQsp++Wo/vkJ2ZyQJItkOogw+skHe1QvCLAiEAzM8znGKtclwR+mMFgZMw6cGBUuYUZpP6gUV18MY8iV0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42335,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgV7NaCRA9TVsSAnZWagAAFG4QAIvveCVobI1fDYx1Q3f+\nWREeDkb65SnQxbwSG2FKq4jLc5/011StRLOgIX6cwrCP64fT1q/nOVfkN8PX\nZBX8i3Fen9msZ6oRozfrNYSie+WonreiFlHA1F3LqX93WM6iCFf4rbCUUNlP\niiQXSrE0wHJhtyPFuDlwN2WwlzKJ0opk2z376fNNdZVUHD6PSNAN1Ws57DR4\nUTSOS5zvPp1m5xWDgEvFoyrE/j+3ALak+hYLbmZnFcJTsIMFEdafJ96V7drO\nllOBLHjI4XilwDO5nad8nPD206mYGsi4IlNZcs2bJbsr8Xh6S6s++MSH24mo\nWgDDu6DKcy/bBLpyvYC9vG43h3MRwoVZkXTDNFr/IZSvuQTOI0MPmvbS8F0D\n0VruByVdVMFqJwvV0FIyxwd9o+xN0K2LQRL39OVQxyBRLhyN71i5sXCT09rH\npQp0ZH+skKioFM4H6Y2km6rwXwsBbF8QVQP5UYoh7ECAE6oTPnwL9CHmxjv0\n08YSyEKaVLXB/PYADoeh4jL4FOb09VZl5MKRhagKYE8XLbuo4CfkvtBNXcNB\nXfDdKCGT3CuljthuuI6x9f61aAdJgUemFD3JkDL1t7topua0Y0PJGjpoHpqu\nHT6v9lJTNhdoIymiGuN//LWcwjU6t2x1FC+UMGU/hFs81gjNyArhKmNma+2G\n31ps\r\n=mkyX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a0db251d625015563df518752d32ef7684587204","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.5","@balena/jellyfish-sync":"^5.2.17","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.478","@balena/jellyfish-worker":"^3.1.22","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.36"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.35_1616360281154_0.2985228514370708","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.36-renovate-non-major-0fd7d097d7640bab531e27fe3b1383b8a191e96b":{"name":"@balena/jellyfish-test-harness","version":"1.1.36-renovate-non-major-0fd7d097d7640bab531e27fe3b1383b8a191e96b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.36-renovate-non-major-0fd7d097d7640bab531e27fe3b1383b8a191e96b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b8649781b0321804b4aa7d6f7a489e85cbe7ce1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.36-renovate-non-major-0fd7d097d7640bab531e27fe3b1383b8a191e96b.tgz","fileCount":18,"integrity":"sha512-lgXVQaHCu7itsuN/zGlGb+ZB+3g3958eW82EaqE/9bUl990g+9rCIJ3xoAu+4InnOuPbctADgGtpa14BtlafGg==","signatures":[{"sig":"MEQCIDMqwZILbsygd2c0MIBwHVAI4ofQveD6xIC3SMgEIGj2AiBL2vp+MDB8lhnDK5D7RGWqKspYbnJkaYXXcmRY3/KaJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgV88HCRA9TVsSAnZWagAAo14P/2qieI/Gdpa5Uw4fo5eu\n4tdSrWFUtVbblxWH0VCWMKETXgsK0CKiFOrQAuaVyTqEOevmXdbFf6HTDVIa\nhiJZWdVGc0wjN/1hN4n4cAuSKRbqD4Y1hGcoK4PueZ8z2w43cis1/chensFE\nBpHpoBY+i373UtnRTA5/4XjvDNvpDFpUkxH9JFB/OOpmUmyBphuAh247Exw6\nOAROMi4Zk9LTINv1hfSiAJ3jXxgTYdnXiFrohCIuPpic0ikspT4Mb1XZPV4B\nzBVa4soq9cOq6XjdIWr45BtRKlLjyH3KnUP1FungsvULRssHzTdm9InnI4hZ\nf4LFd8S6XK9022BibuRbZt/At9XFfG/00GMTqR04acWJrcCeTG3MIRMJn41r\nCFivfN49kWlvH1semHOuRiPVkQJz5vArr+vDvA75zhHrG8Wh3QHjdeEs+aO3\nNlgMZ1rK81NylMMatKp7GTmT8WX+g5dFu976yKbSfKbDYyPnp+oX+dF53T0R\n7RhK8cMZf0wDk7RQCxA1Sift8pd3iLRouHAVazt5o5HVpdhcSEZqFCHGqQVL\nP6VhZ5KnJdLJQxAFEnezLWGnc6ILKP7MRrEeBAHQHENcjoI4Vx6iWG6DTX/0\nc9fBnUCsIVRgyiKmnfwn7QCliGhBLF812tdiQ5AlP8JChzo6kqgaHUcjivsn\nnzEE\r\n=QGmi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0fd7d097d7640bab531e27fe3b1383b8a191e96b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.6","@balena/jellyfish-sync":"^5.2.18","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.23","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.36-renovate-non-major-0fd7d097d7640bab531e27fe3b1383b8a191e96b_1616367367544_0.9489713524143306","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.36":{"name":"@balena/jellyfish-test-harness","version":"1.1.36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.36","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98c06cc9ce7c3c03463375472b82e55bca00eabf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.36.tgz","fileCount":18,"integrity":"sha512-j4Wokxj+Wzp4KaAnYiFbLJ2LHcXhbq2bg94FlhC19chBHzh310LWcidfEsVII7vsmvsXrG81g25Ypa/vgNv4LQ==","signatures":[{"sig":"MEQCICy62JmzAzBIMazFBm54/NdWQkuq00nnYZDmtztFZUWQAiBvR9NKy69xvTUVqCOvsSykxgCEs+KwNU5rTOPjQ80REg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42404,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgV8/MCRA9TVsSAnZWagAANuwP/3MTz5lhbNtPCSuoenIL\ndyANFTBF18G4OfvRoeJqtU+9+wkYH1OAYMCTx9NShgnSDfkE55O2LFxEJFDp\ne+ZEzK6P5jKM8qWssMHALPRu/sHxMs2CCuBVfOgz3QjNBuG4TB2ufKCjzX08\nK+5xIsF6/YYrWMFpulaJAH83wyOlFfjWrCQPQpNVZsmLImDSVCPKd5K2/anB\n+hQakgcYGxz4sWmglXkV6N/+juoUtZAjOQHc51rHOmIpvOtrCR2O5BRf8e6A\nMEGOvh12ipI5QN+5RLeMsvBwqMl8XWiMOjQUbwQ+m5/GbDcOlHHgAg4Ko2sF\nbB2X3A5ATVA1FQRJmc/isg3P5iWYDn9Es6xejpa58iz/Apvf102+yhdbA9Wn\nDTzHHZ399yRUvskGML28TZcn8cFR5hwrohh0+ACf+HalQL5J8uA28OodIprE\n0wlPJkM9MOpVcWLgw/GExnGgY15XServ+B2GNo0bm+uhNrmWIWi/KAJkEHoY\n4018pMK69CElOPxRSMrhEDuLuZqO7JDpPEYKcMd7rfuQE6oWRG30kt/Tf8dj\n92e29e40bnB2+Y55MW73C+Ojd6YSu+UU4ANq5aPQ+thirJ3Hbb0fjz9j1rZ4\nEfrZN4/AJi9ejf9Gpk9cRouxtvjKPzx2oXasXGkFzyKSHrUB4x1x71Rkj8ba\nXuG6\r\n=VsdN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7554f6ace18e9ddfeedb59fa1cf653de5c44d703","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.6","@balena/jellyfish-sync":"^5.2.18","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.23","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.37"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.36_1616367564345_0.5750052402354835","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.37-renovate-non-major-e7aef7f59ef43885e599c254e34e3e5585dfb8f6":{"name":"@balena/jellyfish-test-harness","version":"1.1.37-renovate-non-major-e7aef7f59ef43885e599c254e34e3e5585dfb8f6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.37-renovate-non-major-e7aef7f59ef43885e599c254e34e3e5585dfb8f6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"84f9b8133b6d80e0bf709ad2b5821bb1b3c64555","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.37-renovate-non-major-e7aef7f59ef43885e599c254e34e3e5585dfb8f6.tgz","fileCount":18,"integrity":"sha512-opjazJlm34yEQfClz6waOUNShAJhvW2tDR8VcRbWx/EvGdTcw66bfDXrBHXZ+CenSRCu+917dZx5HV2fnrBk2w==","signatures":[{"sig":"MEUCIQCpwtwby0w5py94Plkh69ZiIg9xKjZYhizD1GGrjhZFWQIgS3urgsJ2umRuCnn4p1fkY6Lac5Kr63r3pTxLq00yxdE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgV+XwCRA9TVsSAnZWagAAgmsP/jcpDfgS3h63xAztRfk1\n4p526W96eK76Om4A6ebW8qI4vqlQxFgZXXez1eJE4iFWVzh6HcBVgVE16at/\nUc6jyWb9Cpp2zNfo5ESmSP/p6rU16eK9R3/FW60SgGY6LGsegnOgdsUjaRsS\n88F2PbMtCRPsh09kDQBkwUrNsIrJvcDj1m4gLtcGaeGf0gUHuOs6+ub5ybMY\n9Mzhtmh8Qd5grzYbgtG0X7pUi1Te6jiL5VmEcJpOmpP2yJL7lxIwmxh4qm7W\nUNYfo/fmwiRWVDqiq/yghB7xNDi/bATvUlT0KmwCxXZnwdyBse+C4Bgv8mlW\nhiHgJXsvBJ7bTb1t6WufD/C+qU4UGeLGU9VhgpiOEbMzY5g2o8Wc0JkCe7p4\nqC//oCUPPheoFU/MUBambhrpHPk/BxLMCsmbXY8FH2pum5Otm+UCvq4yweQH\n//cjF9I+nTSTzxb7ixKB4JPoFoqViu+yxKCFbXimsO5QpaeRnp8x5QGDLPfJ\n7OLTLmX85A6cCFu2I5a89TkdNwycX1zj8XJohJWUfOTp7DTO/Y/6TGRKEKIU\nZehqnvB86OuDcBOjChaKkaHBOwu2QFscCcGYXKNxJorqId8s/ZlS3GcU0cVc\nSPmeGHWXx/KjDyjXMjEsSZQ7h01AkYHbDNHCWOXXkk+u2xoBIIhjt/v5UENG\nQG0u\r\n=1TIQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e7aef7f59ef43885e599c254e34e3e5585dfb8f6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.7","@balena/jellyfish-sync":"^5.2.19","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.24","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.37-renovate-non-major-e7aef7f59ef43885e599c254e34e3e5585dfb8f6_1616373232254_0.11539117531256293","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.37":{"name":"@balena/jellyfish-test-harness","version":"1.1.37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.37","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f0bd0819422e719bc0337a8c152ace810cd5b49","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.37.tgz","fileCount":18,"integrity":"sha512-ud9IicPczZQXTmAYsULtCABBaScz/eHe5KgO8m2Ws9wf053CmQxchirrBo5Qu3CR07ByG8x9+GtW/Hq4RmoQqQ==","signatures":[{"sig":"MEYCIQDDfHhc/+RH+zxdMnbVwVLvWZaZCPA6PI3Qcdt8VkojNQIhAM/BGuf7PstgZuEQjDNwH51NISoUujkhrhZmnx5uZHGN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42473,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgV+avCRA9TVsSAnZWagAAvBYP/2CU3CSnae8J5hIgquD7\nrPZlrwFXQ0cjNNxnOEejcG9q0kDCde6mlbESa2/cI5QBRVfS04wRSrGrYCRD\no2qXyOrbS7UyXxLcMg0LI3/WqZUgqotA9HMZpS2nvNxiMeLdT7iTs9UzgZeA\nmCA0umphsyjFchE0IGpnn4IN8N8/LGW7fRJyDgMSgXuhM7o/zUkIjSMH36CT\n76+Bdjuh3MNBoCBjI8hSqCSQDsYnjjN+OxMVLdGdb0eKwXz12HOxLcyI1I3Y\nduuRQ3pg/TY4jkMbCjvGK52AKcUhzNbO8Ado2PkiFoJ9KvBcsCHG/JCuve07\n+bCKPljvMvjeY2lkUERqtJY+TMM56LjQ6Ru2cg1zH5aeLrkSaPs51d3F0TC2\niAMtMH9a0Bdq4LVDcMXmr+oCHkvlsHI3FMRWTKy5CDmv2AU1GNINpLOQNWaS\nX3ybcA71+4kPu61IcBiV0uCan9aQGfOGuhAklTJJWiUbwo/A6ioG8/EVhpIK\nUOZc9/M6nX+VrqCu6JTuFTOxYaGJChlC9QutMETfLH1tdehEdpI2qwbTNxnu\nAXBU0cIbbe1YDBzQjSKb1zhJ0pw4zuDsRSeMuwPhc7Na3noWVgQCyTWciVB7\nzXtPoqwqAMULidsji4car+9M+8BWcHTAreYK53L1Tsccsk3e2StpicIQjx0J\n9K43\r\n=QHM4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eea82062df7bcd2c9eeacbf335b5f3aa6e4c181f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.7","@balena/jellyfish-sync":"^5.2.19","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.24","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.37"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.37_1616373422980_0.4823154894373449","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.38-renovate-non-major-da11515f1708f0764182ef885eae6337c81d574c":{"name":"@balena/jellyfish-test-harness","version":"1.1.38-renovate-non-major-da11515f1708f0764182ef885eae6337c81d574c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.38-renovate-non-major-da11515f1708f0764182ef885eae6337c81d574c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7afd2124c2f4e8aaf931524af7d38d339d72cfea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.38-renovate-non-major-da11515f1708f0764182ef885eae6337c81d574c.tgz","fileCount":18,"integrity":"sha512-DELkb6ChXs7ZrkEVtskZ6HncGHQylJ6NVZH0ofuBx60qS8lgUGP9BkdZ7HCx2PwvZT0cVtpANUPAlvVQDCrJzA==","signatures":[{"sig":"MEUCIQCWDMuHwV5tKGx6NGewG8SnnIWUsCtZiapQIViq8oIUzQIgC0XwO+YrBUCrFzRBhR1O9x2Izh0996eYDonp0cKEXnc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42637,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWAZxCRA9TVsSAnZWagAAGuoP+gLM1FuLkyyEf6rY7+6A\nTD+3jyUF6FCjbyVGXRjLwwExe70trluANZPOrsBZD44YlFaXxCl9bl3bXoO4\nx7WCjR5t/pQI+i3/3l7VKUphr50qYFd8iG9kls9tu2oimhzzeGQTjtPhvg6D\n/ALVLu+LM+ACcfs4f0facXo0Qc5+7+LvPHVkvBDXEcnb1RzMzFP622B07PRW\nHclESzqxqRD/1rJ6rZB9JXWxKNMeC9Ih7o3qIJP4C2zlLIACopPtmFvVWUQD\nZbI29wIACfH6pMLZ4g3AbX3zV/T2/sQKpXovaaBYUBVmM92ZdmlGr+Qp+zRp\nrjlJMAKGXf1Y2eMJD2rrT3PsPIrqoy/iGlxNTKwVNWkShKccMWLs3j6q+cTh\n3cBnjful+XY86ZUSlgbfaa2qUT+A3/I3BAak9R4BzyTQKehvS5PnuHGMHkit\nkstbm7elG0JZzXTHqLwMz55IcOFq4meaIYVB4iahsT4UEhRHfYXGYeLQfKIN\nmvQc0RYjMLZVWZz6gQTC9MuVbcH3SMaozKnLYrlhjUfobz9p4vEY6owmOQrM\ncIJbbtA3wtpPN5fdTrtUB4IMYIMXiO9jp/LwgdrRwAWnrBUp3VFPu7CI7evn\n0ZYdCDSwNQGaCxEo4u18izoy6fZrqB/Gxeu/HUzmZlHI3IS+aYSh/XSz+6t8\n7rDX\r\n=8yNt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da11515f1708f0764182ef885eae6337c81d574c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.7","@balena/jellyfish-sync":"^5.2.20","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.24","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.38-renovate-non-major-da11515f1708f0764182ef885eae6337c81d574c_1616381552999_0.5220534997307715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.38":{"name":"@balena/jellyfish-test-harness","version":"1.1.38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.38","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d2e91d936409cf5e5a59a1f60d0775d1d4e048d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.38.tgz","fileCount":18,"integrity":"sha512-3+DGp7sJVT2ZwsuEuZo6PKv+Wqurs3OoI31b6WvW+uRrbJbsvHvimMNqjY9NCqLDiFRUrspYSLgoXudNSfNA/w==","signatures":[{"sig":"MEYCIQDQOWZAkHu0pSm6gpq8Wh3gLGHRxQZKaRdPgKi0zaxaVAIhAMsUMahPTlSorUxZxyTFKX+iCu8WXJWU1xN9y5+3E51h","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42577,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWAcpCRA9TVsSAnZWagAAvoEP/1P/j0I4Q9U8o18IA74i\nUZiMvD177Y7Uj7brCLlvqWL7MYvd4CZnfXSG4djgK0OE7SE4qpoQUD6zzzVK\n07r90hlK8O2fDxng8aKCz5N7PnrQJrAsD4yOAlTUDuiqY8kz0HacU+cPsITo\nArMYIvljEZVrLD4HM1acFSekSv4cAqChHdylIZr54BDtL7AbqfWQoBbT6ZHM\nQSJzglcyjjHHKJCYZwHA97qRJ+1x53rvMkBOe9bk4luKNMQ/6Rsf0nj+19kf\n6aRH6uAyY77X+zmo2BQyGAln3fCB/K6ii/X9s53dOtqMZJwbF8MPIDMxuwlQ\npui3/5q8fnGehnYT3vBd27xmG3ZGp0cGq64yl1lgbof4+h6SKxLy5cQzaFNR\nVw8J2coJQC4BdQub1+Ydz/mF6H57v8cztv9/n+IDrrSHVyGLT1cNc5nIuKpd\nSahIfCYT+QnP0vc1fOiJnENOKqXzWNydZn2jLwQK9LgSoxUqbkM73SA00Pol\noXFGpiR6MD+0VQd/gJRkCcwzkP+2kQjkcv3bwJzHK/tiE3lfDR2hQs65rvYT\nXuCQXN56ZriDVo2SJhJ/4WFha9dJztiakqSdJByiNm9oz2oxo0mbTcXEXFmV\nVVG5Q4c0e93PwQir65Z9wlEmLjhYyNoOn2tGfBvxMmBKOSXSgA3NKH++uHGu\nC5V4\r\n=ivQ7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0152ef52cc918d41643ea05418e0cdbfa619433c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.7","@balena/jellyfish-sync":"^5.2.20","@balena/jellyfish-uuid":"^1.0.73","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.24","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.37"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.38_1616381737148_0.041052700872080905","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.39-renovate-non-major-207e7120aa1ec9a5abb970a342e2eff55e2c2737":{"name":"@balena/jellyfish-test-harness","version":"1.1.39-renovate-non-major-207e7120aa1ec9a5abb970a342e2eff55e2c2737","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.39-renovate-non-major-207e7120aa1ec9a5abb970a342e2eff55e2c2737","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5bde8b3b264dedf92a4214a4df1526f75b3c6365","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.39-renovate-non-major-207e7120aa1ec9a5abb970a342e2eff55e2c2737.tgz","fileCount":18,"integrity":"sha512-/niFwVLRgt573bSZh5BWG/Ks8onZOavvVkec+1gY0Nach+R9DLpny3SMyxIc773l7w3+9km62kfCPKu+50rn3g==","signatures":[{"sig":"MEUCIE4NL3WayilL4zC1T+sclkMsxVQQJiClc1K3cBEQpC2gAiEA69cdW+ig4Pw0nsVG2clt9KJlFBmlozGkVHvLrcDoKaQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWCa7CRA9TVsSAnZWagAA0mEQAKBadIv3wJN+pcN8nBIm\nJnCzPy4IAETt4yKfLMxxjAfqg/9jP4BJpCqWNXokKJk8e7siQMsCh69jO+B8\nOhalSYLJBN8ooZu/l16RFcGHzlkEZav6CoR/mLHpauxgoKlUjSIQq3j/Pt6H\nFLMLc7Vk275JonC4q9w9d6QuFViJ2A92Pmj674QDTU7e5RAbL272H5hY1SDT\nQc9g37vzAddZgRxbzBOuHjmA+5i3K+ZafkXMFNVIfzExvJJFpJEij+SA9S5H\npz7xaKbXaajB8ZJIhJ4epo3Res8WwZCJKr6o99++p03UmF1m3n8SOqzMpWwb\n1UXAH3kzG1CtC/TMLVVWz6f3VK8pYspbldDrygbeb3n6YM3jFa5vICxF7qES\ngXMQPE+2jxXGbOfHADJo9gEFo8gaY+2jE+CCX6EWGpoG739NHTe+eEyFF7Ks\nEtL2FykgoeJWjTWpSYvkqQgETggL5e3yM3yIdO21j5uHV260PrHlLd5+6sUf\n1J76v87xnvwlFr5wjwGNttqQTb7SuocaDVdSSzOwsWdmtStF9LX0sEPfBhIa\nKZn7yWPGh9yZaR2gCEf38KJddRluM1N1z3DpMJPUeRA7PK5+OUMP1TfZq923\nsqzNrp0fysnn5kAUlp1B9YxMlOBVXnpQGtGtWsgol3eSWuvJW5nOw6JbUO64\nWQx/\r\n=6M4Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"207e7120aa1ec9a5abb970a342e2eff55e2c2737","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.8","@balena/jellyfish-sync":"^5.2.21","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.26","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.39-renovate-non-major-207e7120aa1ec9a5abb970a342e2eff55e2c2737_1616389818647_0.6136641989640021","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.39":{"name":"@balena/jellyfish-test-harness","version":"1.1.39","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.39","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"932bd0def6abe7cac85ae63bb7535388b0ea8f1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.39.tgz","fileCount":18,"integrity":"sha512-gHfvh3wCgBYhNiCLDBDmGM5krCxXuWmst4ysWL/E0P9AcKK1/bLuWMmn6Xw0VXkys5N1SIv5tJAbXiDeukKnlQ==","signatures":[{"sig":"MEYCIQClZiQjYwZlpGF1U/uy7sQ3pbTZK+WCTT9Co0AS7pgT1gIhAI3Wo6xRmar7fgGZdVv1q2paX9Gy+4KysTKUcblPm19P","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWCdqCRA9TVsSAnZWagAAouIP+waN6qiLlIRRW3aM1Zeg\nQKae6opFzsaiH+iHYJbOm1/M850woe3f6yFA4iYnv217AeykxZN6PIrC8kAu\nlLTRtKvfbqCFQhUWte5AQuu2bv6QeOJ1XrDe4+uLofhc27C/YNmD8qCzD0g4\nTJKE7TMYp4JLC6a0W+WuRlATaRjhL9jazICo837lWSQzzrj8wommpbuB49I3\nWhzmOMLFUHi8VwT0w/9+sd6XbCWAOA2k55W/c702pCZznYbt3jOnnXlip4gp\nRZYX1YBeFltSsmahizrB2Ar8RdEWE9V8GAGawwyNVQayL/ZTEKx7Ow6bBsz0\nnhtiMuUANPR+5M4Xl0+EoA3Kwe8Xrsqy537xdPNCXes696vxUEEAcgavxlh2\nPujb1sI0HCPgewknmNSd/9u9GxDsGBT/gxuI003giPYlUDgDd75umPtEE4wR\nUz0O5ol+D911iGRQ4Qm2Dd+AooSxtyBMYW6OBIeKQYNM1VIq14X7bEyXApGK\nWK4fTpIBBVKxf/W6gbJToEaiRdpVPnO9V5ktDFehjv8Q87ogZ3Peq7QST4jx\nZ7ktpv82G9hA8q+YjR946gNR6RXJCFVJEiujGhGXV7CJrsZ95eQohDGtdMP0\nNpSSEV6yjtOZXQQxEmjqIY9TT5PN7qPDDzqWis3d10KvqzaE2SwZzO5zSa+e\nm8pg\r\n=/h1p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c9c66cf594bff2e95874eaa588c62f1e64f3334","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.8","@balena/jellyfish-sync":"^5.2.21","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.479","@balena/jellyfish-worker":"^3.1.26","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.38"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.39_1616389993787_0.43835699753620316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.40-renovate-non-major-854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43":{"name":"@balena/jellyfish-test-harness","version":"1.1.40-renovate-non-major-854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.40-renovate-non-major-854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"16bcbcb915a9d6e123f5e4323bedafed560820d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.40-renovate-non-major-854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43.tgz","fileCount":18,"integrity":"sha512-z4OHpDtEfxf8hFPlWIFXprelvHG1FybPAY+PF8Py30H8/o5RBmvhWPSrMlW4UPsXSrKGglWJgJ7m5vy0bBxbmg==","signatures":[{"sig":"MEQCID5FFd+9srSleLsX2HCpCaaaH+yKYXaam45dsRjxOnJ8AiBOSKJh8ROLJZRGsqKPIZ7aL6A8flQKmeNdSjuo/a0QIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42775,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWHAaCRA9TVsSAnZWagAAykgQAJVCVCvaAreKa5vyZJE2\nmHnyp/r32aImTMWPt4kt+oQsGMxPHkS+Y/vuj8/OUCVV5V123s2oHqwULHxe\nFUD18fiC3+Cs1sDK/K6MaglGSGg6Ytw6DJG7E8+R0lGdJz0cmB3jk4Df9JnV\njp4dmfojo3ox5yyHeKOaPZsSTWf0a/OYpuVU9iGwGxsaMUipvSq6mRdAcCEo\nGdLPsRTYfzWE5uezVxh825iFB2ssKPlZE9hJZ8TUxiq3SrcVPJqsUnrfYXwB\nS3W695TkkJbwY+tPnkelv7Lg0tR9iCFn//CA8VmCvI1DqIilO7R6kzzs0REe\nRxFwQgvkwqpRJ+gE2prMdjUWnzm1Iw5BBFL/XNMfPL5zgnaZH/Q504SsnC72\nTVX0yDpWtOwUK+C2h7tru+dFk2F1fJM+zUnDfU2kSOrOzOLVgkMYsup3U4Dg\nGYGq/aYmhseGdc2aOj3kx8mmOW7xldSK/kI5oTPh1HGpMqIgnUJC+vzXVld1\nxGd6RzHIvzrfe8t8cSjYmH89FVAMa8LDzYcvjFwTskESY3XrSuAf18qIlLW2\nPhxCK3/UJeNNuFG+8CPLglHDpPyG2KkpscYyXHXPcPgHynGOOqvpW2Fupc1c\nb63HiuBXsEogf6l2qpe9S3/ZJBdd18ubOZVkPDQqW+ZKrSPFXFJbECz/48pR\nbZgc\r\n=6XwX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.9","@balena/jellyfish-sync":"^5.2.22","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.480","@balena/jellyfish-worker":"^3.1.27","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.40-renovate-non-major-854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43_1616408602303_0.385482195489244","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.40":{"name":"@balena/jellyfish-test-harness","version":"1.1.40","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.40","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81b1037bb8be8dc1ddfe7ac62cf5979ea620fcf8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.40.tgz","fileCount":18,"integrity":"sha512-7cPUulzIMEseBW4++PBWWAAGz5Yl5nTJHRD/73YOZiakGVXv4Nq0lFlAAjMr3xOd93QY4l0+EWCjmZcRQyahWw==","signatures":[{"sig":"MEQCIFOUUg2PP22tuNhOHBGdsUMxZBDSOta2FkBNnFXvPgekAiBjkorb9TlOxu25RhvRkFZ4Sc2zxHS7K2dhjctJex5Avg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42715,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWHDKCRA9TVsSAnZWagAAfgYP/idFnk5FCfdceBMF+4fP\nYUB2JZYjUwHgu/K2+5cIBUc/bfD36o1spz9Fq9crU+yypJxzJZy8T3jrrBA9\nvSj94FZF0ZlJbPgawqfHeXZOxEnGOlGIKXafZ8XxhbVXMFvmeeFs9QXTv1Mm\n93MvuNuxswygcgZ26RvaNMaaIOYD3IWCon3HXJuXT9TKcBz0N0YfkBfvXuQK\ni2Bq8ZvgYVkPuyQGDXi2f7qovuUmivDsZTo09t3qQHxz67SK8azUYPmkf989\nmFha/4KwOdj5eku24GRME2q2Z6opPrw5rCWfJD/JsFne+Zqd3Ws6xE5QOk5/\nVdppfagsY0wFkzIHz1LWIpjeqPvcg4E33Omc6UnmVjLFeldh7RrwT7FV4vE8\nqsd+MyN+S7GPH1ta+XnwuUVMoER0Lb+pBGtyc9r4OqedHHb0lRzLGswUAPWz\nm2bqt6OpnoKd/VTp7OVznzK8LJSAnAiodPFK6rlgzdW5MFSsv679ALushQm0\n5mho6hg0wzn2e8A7oQr2yJtWSbtAau2BQwuf+rkYtGyLeCJnhNkgLLgtFLmg\nJMDH7z+ublQjyWw87PAoxWgoPfE/wFKCKzXueHpnKet5akBQGhYqnOwfebHi\nEEcIYYLWOSBPOcy/gGnXWtav/o6f61guR4D6F1yXsX0ztWK1PxXLdaUFixdP\nReLV\r\n=Qnky\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5a84428596daf50752f79587b919a8fd5ce7bc80","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.9","@balena/jellyfish-sync":"^5.2.22","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.480","@balena/jellyfish-worker":"^3.1.27","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.39"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.40_1616408778368_0.6214304112286246","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.41-renovate-non-major-efe58e2f770249261d4cd96c35a08dcd77a26cd7":{"name":"@balena/jellyfish-test-harness","version":"1.1.41-renovate-non-major-efe58e2f770249261d4cd96c35a08dcd77a26cd7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.41-renovate-non-major-efe58e2f770249261d4cd96c35a08dcd77a26cd7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee08d5caedeb351ebd71dd449fce13c683598e5f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.41-renovate-non-major-efe58e2f770249261d4cd96c35a08dcd77a26cd7.tgz","fileCount":18,"integrity":"sha512-+wB+vuSfWtV/Wo4f18o4Mt/Og8oYOrjbTy7HDZSqXnLKCuIJFUqVxVxKSihnKrNQ1uh28eYLO+y88yOjLkkgyQ==","signatures":[{"sig":"MEUCIQC54VoIVDviAtzk/kmWwii5s+3Wm2poi7FugEpeXJDZ3gIgBf5DIedg9hAxzz2p4UBxXS2+3wZuQu15uGgeuJPUnhk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWHGaCRA9TVsSAnZWagAAMoMP/R9s7F0IGwhfE+uQguWQ\nGw8shaBPwrXBbZSeKWRPtYdhOuez6wPGzGaEV7hFFUnxt9vrqcH3MnDzQycE\nIFON4LAwE/3hsZou7F3Nb+SwnNgUq5tBtVrXikmBKaVqrHfzc8YwRdxzJk/a\nx3cHDYH+iQqLZ+LD6A6FEnbGxXWUusFuvmrCT2CfxYbU59paK3IIWDD8LPXn\njquG++es0uQaDGzypfCqJtGEzgQGOJ2HbgElhHkhWeJun9jRDLNQC5ev2/ir\nyJp4epavuWqeZvENE3gn+8CI9miFEVSig4Q6SAvI6sfUTc1v8ghaSbkU/AdD\n8u9IwK91GHUWx+NnU2G+Iu8jHThZzpQb4P4jVSTdBzZ3A5H0y2MzigDBW+xO\nmzUxWTfHFiLUPPW9J53X3CRSK434fkyRfy93t3vijYZiCU4rih9xObRiDBk8\nxcw2R36SbsvalcjchbPYRGSeheDa8slekxDGbDIsMi5CpdwK+e04eigIR3QW\nqhuNTst7y1AHZyfUGsMM7vXRKUG4Xlr8/RrH/Jm5vu8j4qGBeezTmP6QNtUt\nCA/lauKBnYzrUqFeGk0ZL/zVYNg1TMU2Q0+4UYnFqn4jxeAWGJThQKSICvlb\nSEABfmBt7Os4ePqcy0hMEMXWW1RtF/xR9jKKX3U7JIQhEj4oBr1UEN2/FMhv\n4/TS\r\n=Uglw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"efe58e2f770249261d4cd96c35a08dcd77a26cd7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.9","@balena/jellyfish-sync":"^5.2.22","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.481","@balena/jellyfish-worker":"^3.1.27","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.41-renovate-non-major-efe58e2f770249261d4cd96c35a08dcd77a26cd7_1616408986525_0.7058145614415294","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.41-renovate-non-major-b75ebd1429e2c741ca77348e89075090613bc8a1":{"name":"@balena/jellyfish-test-harness","version":"1.1.41-renovate-non-major-b75ebd1429e2c741ca77348e89075090613bc8a1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.41-renovate-non-major-b75ebd1429e2c741ca77348e89075090613bc8a1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"515521f975c8d97236ba63cb3197451f61bb8010","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.41-renovate-non-major-b75ebd1429e2c741ca77348e89075090613bc8a1.tgz","fileCount":18,"integrity":"sha512-nTMI3nwrY6j15zRQvLA6YQLqUi0bSsd35SaFOrfDcWUNMDTz0cuuviHsQabOjV04NE2gTePJGvg2n7ANWnXcSg==","signatures":[{"sig":"MEQCIHMheRoZjHU9TTPtl/eEqf9UVH3Gv7mDM9FEtgXsWm2dAiA0exB3HO0dWW3XEiitXA7vfYqVPL9Z7hgnRg8MOJdFHg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWHL6CRA9TVsSAnZWagAACKoP/iVfqQnsz3bC4RIAVG0m\ncB9ULxbOxzBBV16iLdUbg/r1rsH+DZtZNm7gYXAv8TYaVxD+eb/VCWf+FPDW\nUcGdByQ3KjYmcuVQ6ktbXclUZ1X/p7Bt5ECDBn3iwpZvMO3UE0VV62HgOqCK\nhrBt6u9OSIv8c78kh7FLnEgmJ8pzKzQWUPzw6y61WDzj4rZ0OD2PSeensmOQ\n8AV2aWe1z/ApbfHcevxVxO1R+TEZ3khMVmNX44nnsEs8hFkIRjzCOPxkuE7z\nJ5e7WD6jpaG7xz2MwAFCxYiK2b5Igs+AXYBDA7Qc+8OQZPtlZKJAfnxUEoQ5\nwzoekpSetDdb21rTScmmjOW34s1PZxXOFZrIvxNm+HyAPi5wVI4jKeMGb9qk\nYxeF2hCWYBbrn96hzemdu9pbim/Mb/hfBFcww6NJkjDCaLzEA/sSlUZBHdyR\n82b81u/bJg7X3S9j2DNxXbXCS3blI4BkfC4CleddAhuwVXpZ7gfVzm4ohs7v\nhCu7+SOx9fxgVE9oCIk2SGVBhzhh6LmWD+FnKmTZGk9qwyhJC78a+FR+ypCd\nVv7e19GRjdikXnFh7gxln/LfnnGrnIDccDLIr+AMXsew47HKw8sYFAKK+3cO\npmIgECx202yLmm8PyFHOQI7bFVKzgR0jfrstuwu9jKL7tnUPJgqG9M/VUk0d\ndBqJ\r\n=Ap0a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b75ebd1429e2c741ca77348e89075090613bc8a1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.9","@balena/jellyfish-sync":"^5.2.23","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.481","@balena/jellyfish-worker":"^3.1.27","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.41-renovate-non-major-b75ebd1429e2c741ca77348e89075090613bc8a1_1616409337851_0.8498795324202224","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.41":{"name":"@balena/jellyfish-test-harness","version":"1.1.41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.41","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"359397bb9a4ebea506eebaa104656e863011e477","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.41.tgz","fileCount":18,"integrity":"sha512-8Iq2Mqdh7juAZkkR+qd2zDwmYCpddP5MSq52oHXiRgYQ5flwSJh0kMfyQe24w/Tnm4cNA7ya7UDbMMDPsFAleA==","signatures":[{"sig":"MEUCIQDEjBm/ajO3Y7e1a4ER4p4BzhvF17zhx+SReWF9FNTPwAIgXeel3JQOM63C2YG6yGZ/FHZT9mWCMQz0QHFF9tYyM6w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWHOqCRA9TVsSAnZWagAA5qUP/212lB5+wLd7zSP2wJZB\nlgLujVALDxoQkT+VKUNGJ1pcldKTUVIe7aC89iLV0CU6WdgnNtf9tkiCE34w\nejZVGqI1xDdpxfpJunaQM2O/7Q/dvSUHz82tj2V17Wk78rs/7g9+Axs5doJx\nIsw1IhqruwPmvTTUvulR/nooeP/HFfejfqlZD1VZK0bL2N1qwO6EZE50MCnJ\nT0Hncdw5of3q7N1U3vV5hflNl8Np/jA/is/445IKyH87YKOx3ejEdPJubXyw\nUW9i4pNUAxAiCsoIrFLR8GnXLxMmkWsVYe5j92ySQyD+DvWNYZUxa0SUOg2Q\nQ/y2bGLoY6vhSXB4FZH/1XEpBDybAbbhLBqpDylzkGY3maCehjujiIoS41Nt\nxxGSHiUuglG2wRN5pHrpUpQSoIEbd1O3ajUVSHdEBtapMYNm5EGJdiVKuDQj\nfEn5nb+A/9/Pd0e4KUC5omRx9Q4w8esr8CZ2mEfnZFbsaBTx918vyvRSvSrX\nxuxfOAadVp7FzmjudrHp9CjhIZ3c8SCpfci9L0V9p9sEaJ7xD1BgqIMjl4vD\nWpwbA3GXZarU35nVd0At+3hESc9P/PGVl90d+N2W3W8lRvInEzH6ShMJzHN4\nluIDSMO9N2Bmd77I+iCjjJuXsWpp/lHHVsVnWcQXVh47AtdnzFRTP0wQcWRY\nBZqe\r\n=h5C1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"534d65ff35a5d227e9aaa5f6a6e3d0f6d810ee35","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.9","@balena/jellyfish-sync":"^5.2.23","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.481","@balena/jellyfish-worker":"^3.1.27","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.39"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.41_1616409513629_0.8651624473226396","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.42-renovate-non-major-0aac8bdfeee6e9873430bdd06a969018220253f8":{"name":"@balena/jellyfish-test-harness","version":"1.1.42-renovate-non-major-0aac8bdfeee6e9873430bdd06a969018220253f8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.42-renovate-non-major-0aac8bdfeee6e9873430bdd06a969018220253f8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a4f0b1c28cc7f1ad0c10b463ff83e4ac1de558a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.42-renovate-non-major-0aac8bdfeee6e9873430bdd06a969018220253f8.tgz","fileCount":18,"integrity":"sha512-BV71nNWlK0lyg44o+o5SXDMXDcBdJa8exktbAZuQiuLCObvuS70CvreI9nQ8HFcZi6Hb4VkYKo8cBTb10b//Ow==","signatures":[{"sig":"MEYCIQDR+9TobnUJYngggiWgEJQZbjtP3MH9nW9izQRCxCu0PgIhAPzA7ThfpRhB3KaM05rdfQb/tpghmxF+88ePnwaFDNox","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42914,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWJMNCRA9TVsSAnZWagAAPaAP/iTfztuhNDNiJ0OQ+PiA\nPVf15g5y7tV2zNUEp3f6BCx1O0O2yrE8w4gmtWcq8f6EtaeVYteSxZzkcAw2\n0u9cvMlewwAm0wcgX35Dw4A+Yf5pgEDcRCcp+osBV8cOqzFbf5DseWAuBT1K\nabbcT8c/gCRGZZWOqRRsthzdWCO1T1awJX1Yq5OESzJ3fe5fDrCjFPTQGDm3\nIHG3dPZPLZ9vECdr9POp4eeIGI2CSO7tceg8ivyGsUJR9zXgLsLo3te3d3M+\nlNvufpqKuT+8n5GL1pJhOH7bkDpdU9cMyV+FzTzNC9omCUurTUFfjDyjcBeO\nyGFpp1MlKbZks7jq64Y/lbDItObJDZoTl649aSScyjUFTrR9izArVyTb/6Z8\nRKqTVtTmuQ9AgBfZsAFW7tnmaUD45odcAM77UjkppaP8N89BBNFKrazVgPTD\nYAYqcnrMJtwPpkRsIHD8wlDksz4LGOsm9X6uDxSENDvZ4B5xkIq37gZ6KRIX\nl1O/1ZkmVfo2OvxomR22r4y7phMu5jX+gtOKxuBq0Xp93lPgzsX7vgSeEMxc\nXXJzvyju4OCuiegZhHtS6XRxiU4XEviDrGIMR72EaKKkgy+YIHi5CogDAVGu\ngtdsEFZ1M8jtm2rBXQkKJMnbDZu0zt0Sw4JVGloQEYn3rsYhg+t+D3+AFIoq\nIsjt\r\n=1mIh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0aac8bdfeee6e9873430bdd06a969018220253f8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.23","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.481","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.42-renovate-non-major-0aac8bdfeee6e9873430bdd06a969018220253f8_1616417548599_0.9668477429053621","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.42":{"name":"@balena/jellyfish-test-harness","version":"1.1.42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6413d56c988934e16c4c0305212bed631867d84b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.42.tgz","fileCount":18,"integrity":"sha512-yey0wQJYZqtjqHoaHExxp57Xd/u6v4NgUxR6mAj6DfVEHH1+EMs88xoLIikYyAwEyRozCilmgAs3uvpy5xCDfg==","signatures":[{"sig":"MEUCIEP+COETWYttphRob6U1lwKc+OupNLfD66PSS3oKKPQUAiEApjTpmDa5fhitnlbei7cdbiizwp9Q3Qf8huE/Ql04/c0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWJQyCRA9TVsSAnZWagAA2t8P/0/AaWemFAv1uRjdbCKO\ns93FfXvqvSJfLWhb3x+/LTtkRNHGUIs6D7u9roiVI2mZDkJSbPiF269L9ViP\nopFWx6xXaAKbCAoJYDhV7sXM2x0lWXNNkWzaugtvQ3LGNGlGHYAZ0TB5H5Y9\nYKeEnxRZpJzopyL0KVNaJoNUAZaG++1dhT6ty5iiUtZouc0LmALwLmAYaIS8\nN/izxdW2O4SCE6K16X/rc+okDk71GI0Ks9Za7w0VKhabS9uiiNrN2+knm0Ba\nkfRItcpra6uxPZxJT34Jbgwyf4dv71jinnwaCrVGbnCpBtcPhuym/RINecei\n0756Aft46MiYFo8300/Au6DxgOa7JVgzUX/tZSiiwAos55OlzbWM9ydNGPBI\nAqpIhBhmyyE1EH2VCeZnd5Waza2bAHbjQWZBQxaexhAXnE4KRy3+9QDDq1ga\noxq75uo2CHBlBoPB6BvM+JgEEKomDaA0EKkm4hCDow+jytaJbGd6iovJnDYR\nNUWc4okSwZCETis6lfyeTIn+5e+kBjMbCM5eVwXCGfhGzg5qLPxtDDK6445k\nIbGQf0T73Ht9QapkIfCY96GLR9g+He0ZJphDv3Nt6Jk41jS2wJ8i6RwaySTA\nfq6+NxaUjcmKRNLQkoYg/kEBc6IqzrLac+L+NeLtht8wmU7O12gSOQJNFynw\nUpi9\r\n=dYvt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4df1f702b507f26c28678ff4d7604552a9df04b2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.23","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.481","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.42_1616417841849_0.6081011237971066","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.43-renovate-non-major-297c35186afaffb1319c4d1c4c4dde0cdb036f46":{"name":"@balena/jellyfish-test-harness","version":"1.1.43-renovate-non-major-297c35186afaffb1319c4d1c4c4dde0cdb036f46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.43-renovate-non-major-297c35186afaffb1319c4d1c4c4dde0cdb036f46","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"69e3eca7e9621be409f281eab3727635a0d52a41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.43-renovate-non-major-297c35186afaffb1319c4d1c4c4dde0cdb036f46.tgz","fileCount":18,"integrity":"sha512-aVphTn/AQmX7rOKu21qWTw9MY+wHJOrMEoYv5CGDAvbDRO8zHcjI+DXAGcfxt+Ii8Sr6AByDS9eX+NtJrZxE+w==","signatures":[{"sig":"MEYCIQDqh9RUK/62yn0PpJeUi1cAqFuSdEPKmUy0iwW7dxuwywIhAM2X9BCCv1/ymfNPqnx3BPw8PX1AUGcO6fLwyknymwYw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43020,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWKVnCRA9TVsSAnZWagAAwbkP/jJ3q4g+DOYlYDjpnW18\n6fTcKGJdXJHro+jJJ1DaTMU76f2Aa+SGEKhTFuQnhYMz6179LyBePiz+ka4h\nox7TeIIngo3Qco65lnekuVZPNoAxPdtKlzBkQyjGnIx47ZemkBMSYbMvp9iU\nvXYkxsZcF44vf0Qp05SE09GWOLPJNxt1boImLLQKF/d5za9DSOdvHTeFAvZd\nLJaCl+V9lyIOgigGPeiQpSqAaTcr5voBGgI638IR67kpO70T/bUvVMw823sJ\nxbt5uFPOHRVwyd6tV2UP1ZIazd4NmHteqURHbmTEzIsyLFxdtD/wVDoAb5FR\nKnpf/B0M9jCVpHFvpdRlEWp/XioYs87h3mVA1UXzjs1UhBEl0QQLKU1CJqnH\nZqicVFlyFBqVX3unLPGd90oqheiNsz4a9ZY+8sJAKrY42Z4hgmvRODZXHdop\no8rUtdoG4GbT/Iqe7GH/yxlH8QXoYjYHGMjFUV5RlPOccLFyf8u3WaEt9U3D\nCnemIEUsNYxfotcPQd7x4Tb4QKW7QadA7uwfuKqaOKE3jDfErmbInd9nyB0B\nnKDiwylpwLyb/fwuW8RSdDRcLcJccOSUsaxKmqQ2JHpGxZ90iz0L2NTwTwHa\nyYlXmSSR9hq4HBUdyQMKtHgHHyQvbPkyc61yVC222limAiPYr7cO+nVZetew\ncOH1\r\n=5dwn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"297c35186afaffb1319c4d1c4c4dde0cdb036f46","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.23","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.482","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.43-renovate-non-major-297c35186afaffb1319c4d1c4c4dde0cdb036f46_1616422247460_0.44843309213121674","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.43":{"name":"@balena/jellyfish-test-harness","version":"1.1.43","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.43","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a235cd0ea3ce805f7391d4b68bdc4efa99870511","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.43.tgz","fileCount":18,"integrity":"sha512-f6mm7Q2w5W4962HvT8KbNr7Jfmidcf4iwTAz86VG2oIdoq4BKyapyBnUME6GeF4LX8Z2eOg/14Ey0Nzt+z6o7g==","signatures":[{"sig":"MEUCICXpPWK6NaL8wYnKkiFJqzHEJUgxM3ec/VBc0g3V27D9AiEA13sp3EtzFSaqo8SWfcS7Mpt0cS3S2fRo6IErcTnWd40=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":42960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWKZKCRA9TVsSAnZWagAAse8P/3xAGjxdy9WcdhorYB+c\nQBnWlEakHTd6bpfoHkNh2UYXCZ1+g2aMQFNuaF1qswSG4sNGWbK8y3pPpfJa\nagN2HBCfAbxLQu6a62Wr05Hm65hiE/Emut7GPR9m+Ce5XWv0KIisgDmzD1xN\ngxbHo0/YHQhV4LXK0IelOkX4b3+0fJapL8wwhF5QlDzfW9OXJMQ+4Ot3MPOz\nQ+Nw/x7xIMSJKdBCl4aEXFd4luYb1yMIItjNvk9YUfO/+sykDKttAqF9KlpQ\nqgWceFjGz695Xy3BNMytoxwp3MssTfvGlgbDxaFuBThTZydCw4e7A2tWzvTl\nySBQWw5PRErutdXStQrDeguKzW0WekLqHVOhAVgE996WoYhKJhMA5LsWMxpQ\n3+zyC3gVcXk4UwD5bdit7jt4ZEc3Uv6hsSc/fWRfxn7kgSu/hOcNdiueQTZY\nZLcbfQoISzdO3rLJvc6tG9RPF7gQCNhJjaBYvJp6EK4MAZzKid3/JOfh/36Y\nG/GE2Buq5hZOmtpUF2/EQpVCS/OvFNsDcVpuX3eL1dgYvw/lzd+B07+uKRIL\nGI4kbamB0xnrDigkZS3NKAuIn0g1nGiKdt8MvmXAm+pn2nLToItuKp8iy9pV\nAsrS/5Ft3zSWP/Sp4RVY4+Hcmkstyjp7Xd9i54e6HPwQPKUs8QmLA5b7Smul\nGWoe\r\n=7DMf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c9af7c127c01ee9d61051a2fd3f4dfae8a37721b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.23","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.482","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.43_1616422473987_0.5588553684306805","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.44-renovate-non-major-fbef477e6d8abe3049afc6b511edcf0bea8c713d":{"name":"@balena/jellyfish-test-harness","version":"1.1.44-renovate-non-major-fbef477e6d8abe3049afc6b511edcf0bea8c713d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.44-renovate-non-major-fbef477e6d8abe3049afc6b511edcf0bea8c713d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a7168ba73b60694679ecf22b02cd371607b03b95","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.44-renovate-non-major-fbef477e6d8abe3049afc6b511edcf0bea8c713d.tgz","fileCount":18,"integrity":"sha512-O2NZ68m+NZDuaAMFQ47/gaFXzP6TW73h/SfiCEAL71T8meLat+I7Cqv0N8NiKnfyiSht1VMwhqiDHjVH1iM47w==","signatures":[{"sig":"MEUCIHR3fXrWWywODP/Yy+ACnODPaeoC80GeCqNIdPXZxAlCAiEA8h5I1JucN7tfvKpkOzL82ZB9xvNcznNeAN+VRwGWlYU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWNG+CRA9TVsSAnZWagAAwscP+gIaNGXIdClqqDW7P7OF\nTE7KcVcmGQzS+KlfhS8/4tr3gZTCnOm2/HblymsgkFQbiEWIqwRtdanWaoMu\ndp2q3CyQm8Uw+kg4BsOp7FRMQ/0+lxkUFSNHXOpa2ONIANGY2vo5+Ntl35Wh\nIeQtp+r2ETvxEsxZOdmo+LVOrxwgpHS8rzMn7JFYYikxHYt6e63XQC/dg62F\nXWSlprhwo7patw+X92sO7jENF8Ov4aHd2gAQxxGbtSM7aJ325Rxse9C9JjmK\nxSGKU7H5TE0PcnQoZruOJWVAiNwtUd60tEzh4+yduaQ9vzlF2WYs6L+FGA3P\nQ/mmjI7ZxHxJ9hfsytyDJCOzHkURBjFUCfS7e6jNshJEbVFXqwpUm0UNfaHy\n/Kr8WK7Ul3UNLqYiQYCehIQjE6kX1ddiHYaFzWpdIYWb8en8MGoYOYZTfl7z\nYZKTkTIPz10ze0fAeHL6OJnxmCWyvBlo8WUDyrHnH6X5XEN8f0OGbN88JVzq\nlQGl5rkRXMIcV9bifKK1CoSLOp4IjoV4l+QHT/pFo9iEpYjBW3NDVci8oUi+\nIzSOAw5xxoj9HRjAlsAt35cAYJyiKCgRVkimiH8jUZ4Hn7II3Bivc20+2VPA\n5QMOZO90OjtnFyq63BtDESHLFE0Q67iZe5FLvczqFzy5LFOCvwvqpuxUj9Bl\nUwDe\r\n=262E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fbef477e6d8abe3049afc6b511edcf0bea8c713d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.44-renovate-non-major-fbef477e6d8abe3049afc6b511edcf0bea8c713d_1616433598369_0.14952709786913987","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.44":{"name":"@balena/jellyfish-test-harness","version":"1.1.44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.44","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"72f0b7eaa36a12ab2c84a9993696b2a61d957c00","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.44.tgz","fileCount":18,"integrity":"sha512-rjH4NdZfHgYrU5OZVYtmrCiJI5mzhMzwaYsE4tJ+2IKGpFTXcIPN/nke9Lqm4sBRi4bnPYjYxQKX5QKEgmMh1Q==","signatures":[{"sig":"MEQCIBZ+5TLHDvPYd68M8QI4a/1JF/FtDjhoDIknIy+dIimzAiB/tqXzCM43luUJethr2rmDvQ6oLM6D4eT74F5wF4n4qQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43029,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWNJpCRA9TVsSAnZWagAAmw8P/ioNAJm0SVtUiM85p2s9\nvCGOshbyj+Zwcmd+LSREgwMinB01FXRqEbjaVduWPVq/Gu3DnYTmoLzM76Iz\nvs4aIQ7/0Oqp5xJfTyl4EheX6MKUMIwQvz63sZ4V8JKJYFPXSs/1hACZykM2\nPR+8RZgcuhwQ7uHe8y5IYzUGo6KO76qgHJIwMkO13HSM+dqYVzOUngdXi4Te\niB7MGB7Y0HJfL6f3Fhe9k/O/wo6ZKj5b8TKijTHpPokziRGFJPz94DwM9qp3\n/PJrepGZ88bhsdEK8+RhgE70bgSn1uMXHsnl7oYhzTMy3xoBkxfOo8nJW6Vv\nnsLMIGeiKoav3MgPr1pxtle7SprJJNegxHHFciZWSNzeKejcxFUTfeZskz8g\nhKx5H5HeVtLC80fIV21uXjKwwKAZBPnQCr+jykE30FW+uusxOOkhkG9uJ1oq\nEcjilOyT2tnc+6cCpRoUfL+ta+uZUCWQk8xxjsgo7TJvij+zGVFqNOhJ42V4\nJrqKecaS7pnEarpKBuWTm+Ji1rcLuwbKpRMo8bzMnX/rPDjJ8A53S6YZNNuZ\nfUyqc2EGORVEYzfjDpaEue3NqQueegTYjDa8NiHeMuq7hCaBMQaBuD5nATnB\niESR3AFkTJyE2NuOMpD/zSfJH6sElUWz9XoMp1Tok2wAiEnuRHSs3MUsY1/w\npd73\r\n=dGoc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c2c9a442aefc5c1b0cd5b90dd6a8d351967f4961","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.44_1616433769077_0.14034171893585756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.45-renovate-balena-jellyfish-environment-4-x-b1f2855a3b3920aceb47e70c9e927793e91aab33":{"name":"@balena/jellyfish-test-harness","version":"1.1.45-renovate-balena-jellyfish-environment-4-x-b1f2855a3b3920aceb47e70c9e927793e91aab33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.45-renovate-balena-jellyfish-environment-4-x-b1f2855a3b3920aceb47e70c9e927793e91aab33","maintainers":[{"name":"somombo","email":"somo@mombo.solutions"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09b8003f0ef9169e588ed1e481de1c98adf9672b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.45-renovate-balena-jellyfish-environment-4-x-b1f2855a3b3920aceb47e70c9e927793e91aab33.tgz","fileCount":18,"integrity":"sha512-MPiXNdPAhThZyU358XG5QSG890qIGtVb18LXsylbyf1DFwGi2uuB4Y1ROACfeID2s9d5ydRkvm0Cc57t06fL2g==","signatures":[{"sig":"MEUCIACTWz56GrFADRCVdwjSwCZGN0Cd6ivMGPSfsuz+Ad48AiEAgrGEkaePGg/aPFQCmI1kdVuIAx1z636kQAXlbMfTpBw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWUR7CRA9TVsSAnZWagAAFvwP/iol2/DFUmhfl3wREkX6\nEo5knTh/h1z3SzN/yzPdnNr6gvtwrLMtc3KD4PaN0j2ov9iSvqjLwdDiFuAE\n6DJV0uQxPPBGYsk267um+myIT4l4DG6zTCr0nbiHI1LG8n4hkOOg5wn76x4B\noJ/G1p6W2MYlgvyfEEIdnQ4kPtbX/36Rn7L+bseImGT251DE+TYoKraXjr6p\nOTEzg6778R8AlHfZFEFyfJAPY//KpRRTT/+We33aIRSmhS9vLrLPKZ7EHQwO\nTgfvGQP7zUN59/azi0bgD93RoE6Ce5jJwOHMOaxQMewgug33mxfaAigMFJNs\nD/H9RQJMPrFQgDNFRaZUGENGAsDOxdwSZ4+VJmCWdPVzcrtQYgCgcbn9KCwc\nredVcBmfSwZkUpreDMyS3vhN0uOEG8rjdaWAH/bVdfmycS8lar1+Ocll2AdZ\nkeycTSDKjtG9GH9wNpdW/43WRJGFxhgrBDV0/OQdZVrTIN5X82eM0oxqU4mT\nFYdnRwbdQo6kIRDlkltViHwfgy6vXMII6hpUe5JXkgUjae8TyCpiC1Jbc+S2\nVFMxaTigaQVleraiBW+gTUnhRl6WfauofpLzPo/mlae94+o36ECiZeGwv8s+\n5YIb+lMvGAkVo1hwCMw/Y97ePgxvzOy0IE8EIi24pt0X/eNCGIzn8BT3JTHy\nApjL\r\n=w52o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b1f2855a3b3920aceb47e70c9e927793e91aab33","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^4.0.1","@balena/jellyfish-plugin-base":"^1.2.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.45-renovate-balena-jellyfish-environment-4-x-b1f2855a3b3920aceb47e70c9e927793e91aab33_1616462971289_0.5658140076275715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.45-renovate-non-major-01d9f89c34a1c0314f57f5f4cc091f6996801ec1":{"name":"@balena/jellyfish-test-harness","version":"1.1.45-renovate-non-major-01d9f89c34a1c0314f57f5f4cc091f6996801ec1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.45-renovate-non-major-01d9f89c34a1c0314f57f5f4cc091f6996801ec1","maintainers":[{"name":"somombo","email":"somo@mombo.solutions"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"757c8583bc2601fcb1d1e07a40241c8b813169b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.45-renovate-non-major-01d9f89c34a1c0314f57f5f4cc091f6996801ec1.tgz","fileCount":18,"integrity":"sha512-nUKBF9cLASlC/n/KDhf9BUyQmtVDj8L6BRWGznAcQzgV2d/Oc93wfNPIwyMumuZJblWfG66qnFC1zDtrY2ceNA==","signatures":[{"sig":"MEQCIBTFOXx90KVJcuvg4Amt5MVIwluqrX7LNSJ3DKF3l1B2AiAUlOXQfIVerXOE8BM6cAD1e4e72qxGzRMdu0VXPImBqg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43200,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWWEBCRA9TVsSAnZWagAAKVYQAIrFBS9mKFdbF/KVDJj2\nEAgFIK7H2627iPYM97d9Vwrph+/WaQnZRD0rjOBQKYYiOK0YyNWaO64cg6+p\nwwwz/r/I8mTD3pqaPbEPNTAr3iik+pDoj3eBQtz79kzfRafkVhq6oH4uAifJ\nU5XCVvXv1v7uFJVka15piCu1Fp3BLzmK6bftoFvHLonkV/70fRX8eEzGA7D3\n9GNt46fr3RFZRoiis0qunFpjpX+N0MGXaWO7GMs2luwlMlm2FlgMPwkuMvvf\nZ3e/hpLgJ4CLa+SY83E8KRZo8NPHQloUBKQidiCpGgJ7gzu/mXmB95syhQfI\nU07rqgFbUYV5TqZlJNRr0JEuxt9kmIXIsB48pesV/GyIlPxr4T3ujrCKv1Vv\n94b1ZsEwjT5t7l6w4nG6G/nPnr/VueFoM4/JP76MPsfNKP+o1hzWhN/rCYxY\n+lOBTeeLSiUuwDyWVCjgkIttTLf95sed31h3zwkGBffDj7m04IEwwQfQJdg1\nxTiWZMyA6aFhtwSV42+VQdlWS4Kzna4iqcGPCWTjkYgPp4tjeFWyJQBW/T1t\n2hrVWWN3mPqqt/e/0m6OYr3KzU7ujK/s0+8xN+EyXSiZ+Lo5E9TZpu9LZtKn\nnK/T6gNfxZq16eTgTDscfXKmKCeyBw7vEhOFALLCvQQVMQzjUjzyB0JIYL2n\ntRtq\r\n=dxbb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"01d9f89c34a1c0314f57f5f4cc091f6996801ec1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.45-renovate-non-major-01d9f89c34a1c0314f57f5f4cc091f6996801ec1_1616470272827_0.16818726007951867","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.45-renovate-balena-jellyfish-plugin-base-2-x-a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948":{"name":"@balena/jellyfish-test-harness","version":"1.1.45-renovate-balena-jellyfish-plugin-base-2-x-a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.45-renovate-balena-jellyfish-plugin-base-2-x-a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948","maintainers":[{"name":"somombo","email":"somo@mombo.solutions"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e3615603d4a267ac1453226b0326c1946b4bbb46","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.45-renovate-balena-jellyfish-plugin-base-2-x-a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948.tgz","fileCount":18,"integrity":"sha512-AjFbQWiULTEtypr3d2i+vOOGLr8OXtoMzDUZxpa/es0jXF7FGAw8uAfWXsYKuC5hCWW9BFcpSazpRvqXQ2xPxQ==","signatures":[{"sig":"MEQCIEk2qPHv4Fn7HmI6yEQyIEkUxKyTfhUy5kjJWYQt7u4DAiBuKBkRB1tyOHOPIHe/+M1qPfqy+5Pv2cOns6t5T/GJrg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWWEsCRA9TVsSAnZWagAAxLsP/iT4WKA67QyswQ+Jgp77\nKt6zRWrPqhnTt1d3VakbnUMTIXkuWfyyYVFaIkbVYnTK4m9u31JimXr59eXH\nqrF+kZh8IOyMQnNkvjlPgjVrBT2X9EwK0JtGjQttDVBzrNKFiRhVf+DA/gHu\njOzBCSoHTiDZJ+q9/VHb2/7X2yexVP6FD1WzBkzTpCu4ajGsW5uFvfKyjUIj\n1zmSyc1ONgO7PLcDzEkItJLju28ykUAJsrrMF0WIPnlkVkxmUeyifd3xlRGO\nN8MSBLfSNVDT334szxdJkdgR44uotEUAJxZg4I+yFoSZ9+9SY9vZ+ZxS+8DB\nb6fb/CdlQJ0N449lvkd5uOdxgy7rVvCMJP4tVOs/EzvMskPlIjIw3E+eLM2T\ndwmMbnj0jINxhix4FFUGCbjY2KdeBfW2zerRdpviyVZUEDkUztXs/s4C+cqG\nYSnXqp4ql9DASatmLYuHJ4/zHwIeN+Jba1eZEqMmng7mWvTIAVkxHpm6e+xm\nbUNZ+KAgyZh9pVQ6usKqG/Z7fsmzvJwjg1mw+dd3I05odH0Hzq1Nt/h2i3Bx\nR1y3eHHq87zKdxb1wMgAhn2z6Ug+PGdJg0B4U4bHVeFdK+kePnphc8CyksUn\nYuKnjc2psWgFnQin0ZdIez2jRbPcNt5ao+a1M9nN0nNaOExZJhp3aiqIDX4A\nTqLB\r\n=btnn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.45-renovate-balena-jellyfish-plugin-base-2-x-a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948_1616470315968_0.09293193343616202","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.45":{"name":"@balena/jellyfish-test-harness","version":"1.1.45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.45","maintainers":[{"name":"somombo","email":"somo@mombo.solutions"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"815988c4aeae7b072cabd5289681ad0343188385","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.45.tgz","fileCount":18,"integrity":"sha512-Z2HVOT3BXYeFtVn/8cUi1GoRP3zMZjyTdD0w27ADY4bAHjPCQwlN+Z0VuBsZZleLtwWrcwS7WUBQqr5zGi2WGQ==","signatures":[{"sig":"MEYCIQDZbFjh00klYJ+uWDFfNanOzSjdyjKyd7gwb3Sq9rSpqQIhALbz7fhJC+Dlm8T6huzSRycOyuvZpwMfNDcGGqKzJfG0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43140,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWWHWCRA9TVsSAnZWagAANyUQAKLbuXxym/mKSbfdc+GF\n6ZKyX1OUaQ7YrKuzeSfUdV8zp4Su81ZjFkfniU0UWw+6Y2OqeWgVO/Ru45Ti\npASTnN9kGl9qKDviMKg0VzLN5w+HnvjbDD11gJgB9dh2dnpI2cJqvxdABHgs\npIdM4NuSht30YPM5Hsk6T3HYRDt2+U9M+UynBApXGi5x72w+U7WO7jvGHHhs\nAziy6phplBZ78i7UIRg9RPMoV8UnME1yoQHAUnWMroYlT31/pjBxnVv/N84d\n5zoWuVbuoRuPC0gKbByI5FHQ59+Z8EmDv7ofayVrTrhg62MSJygwGrQu2IK3\nuScJtr6Xa63pTWg5vt1+NFZSsvWGTvGzAdFd/sOgQl0ksIEGkGtwoIEQ+xeA\nqgyiN5ZqMsH6nj+lv07HFl9jm9iK0TvgjOvi1WcFp8SCHSgJ3yqDoWZBsMdB\n5rY/ldiP1pkXO+J6WnTYWMqjR/qAkNFmKOmU4tnckPDNtw0bbTIDWcPYEsQ1\n9+SE4lu82zPAfQOK8pvY8rerl3do6qp2zjxASdzChoJMcE5IeG4eUZs/QDeQ\n/ATxDr4FAH5x6K3MqFGes0HKp61Hq6EopNvaUBNGHMqTcFNlwfaQA73RfWhe\n15aOyIisqQGPA44u7P3+OvajhCDMlxRhH0epDgi+uVeRfnaeWEJ+4TOecMx5\neIp2\r\n=AvGu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"79cdc8016802a14511d580affe7eaa725b1feeca","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.45_1616470485556_0.3459738138015669","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-environment-4-x-2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-environment-4-x-2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-environment-4-x-2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70","maintainers":[{"name":"somombo","email":"somo@mombo.solutions"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01fda9dce42bbea602d848907c61dc9de1107cbd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-environment-4-x-2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70.tgz","fileCount":18,"integrity":"sha512-ezRFEB+gqfuT0UJY1TtyI+3m3EBF24Mc/PuHHI0N6VntEp3fyybyb0z4iflP2cmjdzow24xVh14LkcrxoiomIQ==","signatures":[{"sig":"MEYCIQCzRbpEYehaZc3FLsK2+wzVr2x5A5Xzxd+2Dw6zTuQvowIhAKaYfnfxAq6xZu7drFf0vX1CBqPqoO3zGzSJso4ghvbF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWWKTCRA9TVsSAnZWagAAFnoP/Rdup8c+SgRbBcqO+mA6\nUD/gCMmD77hhiJ++Tj7iB5AdJ98LmES3bC0lnEe+QaU0ObFdsyKDnpq5d5L3\ntSri31o7AgDQXTyxlFcc/QIyJDhB4GpH2tS0o9SjL3wVuvrwD+YKmfPI+47U\nKsMIXYI4R29AuVD0YFmEDv+7Ps1lkgzO+Q93y6j2SYnoelWgw9mxL1m/FPw8\n3tnMJzzAt2R1INwizI/P4qiI9GDJrzncYCvoqaZwFo7s8tv6nV5FfIcTpw8b\nXu8bSzoNFEpJ1cV0DY3XckU4Wq6IjawKhlYBxn/Yg7ogtz5aV55pMD4GpgH9\nXa7N79CYuz1yHAadKvI8DTyWSyebHSM1SD0/1eZhnphroeknPpN0eMJuZYN5\noFYxVP0bJirpt6yWY+fWa6vuONXauIH0wReKn2xXZczFjDNjqz+Vn4sOsXq0\nu435yXNDIt0z1lPi3Muoh8DCScULgBguYbrl82k2oTECvi2CH+1SgWrY/Zya\niPBuGtFuxagf4Gpi7lurkyoynrSUb9NEUng3zaZbf5Vug2JUAF5gY6SOLEsB\n5DAaKd0jmj87nXh6SLNJqS4aFTnMgE7WpkJ5mqxTX6t3J4RdJWQv+BQoHOuK\n/Se2DABu8V0EVn3L5X20lm6GnSafbckXevueD6ga4hkOaxu/OijYxTqQ4aHj\nPt1q\r\n=RK4b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^4.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-environment-4-x-2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70_1616470675251_0.01640056368332643","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-fc25de7ab241867a63f0fcb9a4c19adf75e5f539":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-fc25de7ab241867a63f0fcb9a4c19adf75e5f539","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-plugin-base-2-x-fc25de7ab241867a63f0fcb9a4c19adf75e5f539","maintainers":[{"name":"somombo","email":"somo@mombo.solutions"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ff291c13881cdab557fd0bb6030d7b45a5aae12","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-plugin-base-2-x-fc25de7ab241867a63f0fcb9a4c19adf75e5f539.tgz","fileCount":18,"integrity":"sha512-kWVihWpRsSsbLIoHPbc9QfFkHiW2Ct0bzug1KNZkXDhJtedPMOxfU3i5tRr1JHVk5QzdG+EezZgwCX3NYpqrYg==","signatures":[{"sig":"MEUCIQDDtTsv/Lq0L+K9QcPm6mKoX+sx8QkB7HZ2NOLHfN/vlAIgSUN+MwpBSWSFRmak3cluErqPOOwHlLYDnQSsg98zlZE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWWMvCRA9TVsSAnZWagAAgAkQAJIKKKTAtXoeoKAWqOCy\nSLOpo0zw0MDu3G+cisGwwlFp7oWDLFLscIQR8bvCh8OiFmHmPZcvd7JsdnMX\nTnRV7rlvgatvahWQGqIoJTmlhGsYy+GSEvgdxZZJsZem7qq4XLtqQ2+eARMn\nyJN/zW/W/f/30ZjZV128iWsqNmMCHrDyKyVfajfUlL1SQ5bhZPOVmGI4ebLs\nX2/VS3IO8lHAbMj1uQz/2YC4BeM3iFe9V9jXDM0JUBgP0xvMkxRgJq1/o+qq\nurAUOQxLZnGoeI672Xp+FiE/fx75famGOUeLowLzLr5DGMrSOoZoGP6TrB69\nqqMr+ArASXJGxBNJjA0/jEd2uApiA5t4qTb2YZ0cV62KM+okimTnxusQ+7Bw\nfpLx16mF1dYcauJyonJ6yHf2GZvcdNTtVqm6xi5HoU/hEH3lZgF0RNmWVdQ3\nWxHfTbh9siBOISVaeq+LmCZ5+i0+afEopUaN7TBhvyaZC920DNDNlnChTHKL\n5+WBt9vAqxgoTUa0biXppL0vdgT5VLnQIhc+bnoBnZ3EP2+Z2/Nazeida7Cc\nIB8ww4eL0KD9dM0zGhzTjPr0gKprs5XwXK7npPHQ2l6BYGihpv+9MD2Y/X89\n5fEeiN5LtHZiPMIP7Q21UZ/0brnnpl+ciP9eKIdySORYS9n8rokARxzUOUZy\nhR1e\r\n=xShz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fc25de7ab241867a63f0fcb9a4c19adf75e5f539","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-plugin-base-2-x-fc25de7ab241867a63f0fcb9a4c19adf75e5f539_1616470831511_0.8227084568764509","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-d70f4d998aa2a0f910792b6167694b47f43ca96a":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-d70f4d998aa2a0f910792b6167694b47f43ca96a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-plugin-base-2-x-d70f4d998aa2a0f910792b6167694b47f43ca96a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f09321fb9c77fa01bdeea6b9fbfa017f4da194d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-plugin-base-2-x-d70f4d998aa2a0f910792b6167694b47f43ca96a.tgz","fileCount":18,"integrity":"sha512-7lPR43FADodvPz+VGR1jdBzhSELvrqykYS4hv/d7Bq7u4wW+skBFyVVpBTZZe6tMXNmN/gOp+czx18jWsCJlPg==","signatures":[{"sig":"MEQCIH2Mh1u+B72gCO/RqehlK07SY1OzpVdKkSP87DPQVck2AiACoDqE4liBL/V5f4/6l8DreFdycQ9Y0985Li1HzGTtNg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWtLnCRA9TVsSAnZWagAA5NIP/2sDpNQwnh5lBbjgujQs\no1Uai+93MIW7B66r+MiBRc3JzvGguwFo8XwTSTPJhPs7Z9oyIxlgcLECVBY9\nf2gGaLH1i7+zps32rQAa3TBNMDP8RW4LhRDLfSvk/uS55NjMv6dtF+ez39TU\ns3W2SK4oaZvm7yEiFI300V15SvmKktdxVRJzm9aJLBAbjLdyn7kB0aRC6OJv\n7omiseyzxcfpswKNOgr43d3vKjxm6mgwqxyvr7hizI+r4p3caj12/zsz7R8t\nGBJ3exkTG+IidDjjbITz+wLcpRgqXkJcKD1vGQhCKqJq78dzBM8RgQEOIHo3\ndoODgcUWfUeoSfCHsh6mEBYjcOYg0HC1idQQBTW7QbkBAGQ7Lke0vHNq40fp\ngY9KQERXD0dag/jQ59IyoH3+pXlwbk0rj5ftjR6PM38oSFiSKPqBxVHeAkEO\nsWBhujrU3p9K32xcM0KiFZqlp9aeeoDuUl3Bu4B8BhGJCWQRUJQEhT+ZTpzL\n/oE05YzCs4StIYDvK1xshWk0xbfTLdExYa+IBgZKqCm31zE09dmnYUFghUmz\nNg5lMISpHc083RFjRLsmj0vjuNmce3M8I93HCZC1a2TQlfezLCJmEUe3xdcr\nfoC2F99/aZe7v7Iydvvrr8ixLKYouRgGyiZsWsczlHOVeHkV4NmehJhU6+C5\nzDy2\r\n=JDB4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d70f4d998aa2a0f910792b6167694b47f43ca96a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-plugin-base-2-x-d70f4d998aa2a0f910792b6167694b47f43ca96a_1616564966558_0.3801928031006969","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-plugin-base-2-x-ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d3ea74bd84013f13d1a045ec4387520c9a5fdb5f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-plugin-base-2-x-ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb.tgz","fileCount":18,"integrity":"sha512-OSv0R3WNnYxhMoyJcAS4WGYn596HgJEeZ/l/ZExVb/625QDvgZxnqT9PuEa1MMTUvCQitEIvqeea4HrA74mMaA==","signatures":[{"sig":"MEQCIG6R4vt7u6JQlCjMZB3tRStFOmos/Lm6S8A28OV/4fNkAiAPNdoXDCsW1LP0d4DrQqgO7kxvcpLkf2C2DB2D5K0lJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWxb+CRA9TVsSAnZWagAAPvwQAJ0gWQ/rGmDRROnRDA4Z\n/DRIXq+KS71A0BrvBWjrKBOAdXjI2zNpJ+YZF7LCTH47zFgGBmjaBkigzPzR\nZgGAxx8Gbl8ZfG2RWFlsV34AVV/CfYt4MmugPPTT4JP+YSzWbFLdmmaNF9Fk\nSEUDCX8CTcSZWPmTIBekoVyhLXUUNuu7caooZG8y1hK168sKw/KG6DYjQGWO\n3YcN1PmCAMWc3LCkPnDu/Du6gK4TROIRmR7w7RPKnrmI0RVbloX7Lh7Jl1Am\n0I51HbWYoEbYt3dAKtItNuhwTQSYlibWuEEGXPzDHcTo7ta3SaXaM8KXDIYI\n/w0JkjgEKuGrP8PcQvWNLzxOvDO6l4UqNu0lmPPeLNYpHIjWZMoRfMhGRlmJ\nHfaUpUV7bsTCvETvG1BDeMAxn3eCGt4dQPRudJOiEcKBPxrjW8ozL6Ur99xa\nlAE5To3pFMEtg7te1SF4EHGLsWnQu4TimuWe38aQO2affNJYMELlZXOI3Lix\nUtICdXQKDoh28Xenw1KStX8aisoank3S56JTcVMAC1odCdevsP26RzjoChSy\nIkqWqC+V/s+NtI3sfJ18uuZWdwO3Gr8dAdDtVWZvq6mbKRrOzbL++/FgHnKE\n9TeTZU1jJL/deZjxj0ZqVe8J66p1AX1SJe+ytx5idISVeQ0bnL+fbZzwyjb0\nKskF\r\n=0V60\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-plugin-base-2-x-ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb_1616582397566_0.7455379744309139","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-non-major-83207af0351c4e8c05a36c37fad7c2e3ec1576fe":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-non-major-83207af0351c4e8c05a36c37fad7c2e3ec1576fe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-non-major-83207af0351c4e8c05a36c37fad7c2e3ec1576fe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"38a1d3b84bd681c84d86f09177ca3f65dd37fb00","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-non-major-83207af0351c4e8c05a36c37fad7c2e3ec1576fe.tgz","fileCount":18,"integrity":"sha512-mCHvnQ22RsKn8yPoMkST2fgcM7L9St44MXi78H7Cr4hYAYohCWDURbl9Fc25kP1yYpqA03pMYXX6gGO0CDm9xw==","signatures":[{"sig":"MEYCIQDIznSTwJS94PSTcpyg6LX1lGv1Oo7xVBPy27BqZ1Gz3gIhAKmwnczvv4VXSYrEINCJhNvjURZXtVrHCaXdZnxQFoul","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/t7CRA9TVsSAnZWagAArZ8P/0yknemquvj12I91TDNb\n7ewYFfV9dMCqk3uqnFr/9M678dAERtz+RDILF3JCHcYp0Nc4cY39FG1xRjvC\n+X6Cg6507gw8fPdDli0i6FXcSAomKT+0LcFtT0lEjHd+vGST4OPkfV3NltbC\nbad6084NN+FDoX6YsUeY+ZuQVceERKK1qUtkQh58XjBi4fGfT2v1pHhGPO1u\nGCz0xku5QnTSHUOqfNm0coON+2zyL9HC0t9+moWU751osqLBzRYGnYwmpBZt\nbF3sKYbiUBCk5Vx3bbLV4zfpXZit3X1+Nucx/Nn+in+WY3P3872DZgkpniB1\nSPLvKkc39J7XYcPqfxzpwSiFS7aiOpdj1ZOQWegN3CSkX+OZ80Zdg0dQtT/O\nnuo/TGpjB67ZPeAA8BD7Ft891CieUfF20FTElenATRrrFuhaCp/DvxZkLFJv\nAK+oC7CMDIdDj+45TgJnf12yyIpjGBR+0oVZBwhgwucI+OjWhbyhLF6ZipJj\nSLJclFemBVha61jL+imkTUwEmq1pmmhgq23REetMU3AbNy3J9aMMzXmBXnBv\nm4K2OOlqFp/M80fAwsbgyeAnB2So+6GEKNBP7UDTnjfss5hD/2dTrm3ccj+J\n9ZGZIiUNMFhO+4iLvcPALcEmFowLalN4t1y7TD8/Np/BnDMdPTCKa4zgGqB5\nWhfS\r\n=drdI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"83207af0351c4e8c05a36c37fad7c2e3ec1576fe","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-non-major-83207af0351c4e8c05a36c37fad7c2e3ec1576fe_1616640891406_0.6727965527576338","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-environment-4-x-82a17582998aeb36f9d898b18b991f4dedbe3a5c":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-environment-4-x-82a17582998aeb36f9d898b18b991f4dedbe3a5c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-environment-4-x-82a17582998aeb36f9d898b18b991f4dedbe3a5c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d47c4cfda6d4c723eadb1d0c7d8347205833b172","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-environment-4-x-82a17582998aeb36f9d898b18b991f4dedbe3a5c.tgz","fileCount":18,"integrity":"sha512-vBp8YgBoDruBe0wjrbTfqfBpyzrBYy9rymsjvDpWvQIDoktigSZeTXK0i34dthpBu9ePk/3lvYczob4aoxKbDA==","signatures":[{"sig":"MEYCIQDYUYVSEIa4nD4HW1nCSOonjhIwMxfZCsXUlQyovo251wIhALIsaZTheQ2JqZAd+EmRbgtFUCfHDbEY5vmNFKGXP2LO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/vFCRA9TVsSAnZWagAA6WAP/0Sq+ZTtBG3afiQWhki+\nikbaDWAi6Bg6MtxJk/j/ZVFHK1xhmaoiPYAg4rSl/ifpV+OXhVapnWM5W7Wr\nzbt+bvAQAXR1tzYgs0oCSSxLhNaoo7o3sILi4cGzaQBQAhfF9UD2+OyG8HkU\nBJDMFKAuuCHsshJEKG7FDmatAEVvE9blD3hX1pCP3PG0uucuSHfeqzss53sa\n5rduUOug8pwtNqn+6pEvv5+avtjvAAHWczyPGPNH+eUniuQOQjMc7EthE7YC\nMe1cZy0UqgxfYDDPctHC4EjB2XPQ026jeEhyFrqSoKBV3fOvUu3CTo6aLGg2\nnPV/tOUNHKLtOjui5HaT+h70zY3t71klThQEyu2G1Rqtmiz2myKKLmJZ2kbV\ngUCVpGyF20xWLoSXZaCqh8WrTuiiagUS2MUlxas8MNcuVi8Ed50y9+LRqWTJ\nvndMcqzaxKXPFXoOt/0JkMn4KlS3yWF8o7+uFIFq0vLNE0Gt/m+bTRDEGdou\nqKRJI/JUVoPSH22yBl6gD2B99/zSjWKwcbPcmL1r7uJU1mQHxpEVpZ4iUWAJ\nmv835r+VWdfgG9ZcjBFvJTrJpB2pd66YaTzAfjLh8ltXcxGVDN+CDXRyMKKK\nDbl7z4+gScv3EbrVTk2H3DVnkE5JHCcAtT9H2EGJve1TufXsLzXwcoDyZ/z9\nvbu9\r\n=tXLD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"82a17582998aeb36f9d898b18b991f4dedbe3a5c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.10","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.74","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.28","@balena/jellyfish-environment":"^4.0.2","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-environment-4-x-82a17582998aeb36f9d898b18b991f4dedbe3a5c_1616640965022_0.45968441077861644","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46":{"name":"@balena/jellyfish-test-harness","version":"1.1.46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"11cd1e0cb55feb6b07cef7a26658b36c2f00a602","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46.tgz","fileCount":18,"integrity":"sha512-D5Rj3QdWLdMqtIBQePTIkb35ZIAeTOhqZ0mzw05ZR9BnJHuBhF7E0LhKCAIRjVwuZ8X5N0Q0SBn/vjO6Ivsw3w==","signatures":[{"sig":"MEYCIQC9K68ixFd2DiFND2uDO7Icpy50mtR7nsoZr4SvuBtXdgIhAKFN7ALT+qyTQoXmwsuUrM9EI5UZFgnodIzAG/Kekywj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/w9CRA9TVsSAnZWagAA4JkP/2dmgkEpxHNQWUEmJ7st\n0nD1vLg/o6n1G4Bso1hlUk10/y7d2TFuyHt5VPQgmZhziUudE0cZL+gko9zV\nDzF/skBSo2VQaLMGVWl13GaO0V9uQ0r6f160axjAVp8yCGwId8gD4EV514QI\nfERdszednuvsCS7iuToelitcf7hoT0CuXfKxEu/+beD4IL2JINnlGVzJ50rA\nnRwlV8GozNH2lD3BVZBylKI3Jy/o9//IlfYgViLoqt0Vv3GpDjJzAsYqdXgE\nVtQ5IlkBHlzfzD6gBrEpU9dOL0l5H6w0xc7oeQXKSk0YFefLybCOP8SrGB/1\nKAGYEhHDzPsrI3CEDr1zm9wXl1QCkrzXX5RhGuoCEHLcDXAkeiE+55aXq7vs\nxO/poUCbdgxXGg0cq/raUzz3MSOYKGqbUzvKb318W3btJCrRIi9O4rwYGeyj\nn0csRRUD6uUY+jvzIGUniRb/V/bj+znBVA8lXDMf9W7GdcL2S2mJgwa8AC4p\nD7H63NTvTFUSaYGqAY7CNECAg2iFe46idlni/B4U9/E1Ct31Q9F1uFF4qC5O\ntqInfpjqG5+HlWMjF1ffVguNmy8QPgVbpYjRPa/PLcbLJGMQRHPqzJOqSwVK\nyMCNEz/PYpdKD/la9Uv3bMN6uLa/9s0aLDBxgn9HKqXINprvNzIRlFbcYmgU\nTJDj\r\n=j3Qe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d6c6a5a4963e913a72597c510dc427f900099ab","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46_1616641085385_0.0943294205780707","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-environment-4-x-2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-environment-4-x-2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-environment-4-x-2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3cb3b19f58c9d43dd7d31b9b71a0e14e102f3e98","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-environment-4-x-2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c.tgz","fileCount":18,"integrity":"sha512-/Y8NsYg4QJ+S4jC6vWb43rDjJ2uH37ov8m+FH782lEGSNmYjdskdhYtnRTpahflMGOVRd26zNxnMEDFbS659EA==","signatures":[{"sig":"MEUCIHedkpmF5W3tAk6IhGlluKb5nehBMlRuhSnryXHJqv/aAiEAmQ0p9QurLHaPQzSv9Lzy9nMwcifmvPiULd99luVp77w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/zZCRA9TVsSAnZWagAAuEsP/Ats3eBKSO6E8yjxQ3ih\nTlAHWcZ6YDC8wO0eCCdGWd8D6rJXr8SmycNdWZTW3V+VvQkQmtECBnuGkkpC\ngzGQr6XH48rRMpoYaaOookRHOxJKArLvTkJeAu3sx6WtQ9cgAvcA/llhPbQo\nicPPZ0iWV432MV0/U/LB6EWvVODsxWo1PbUpFbhI1HJpxHqUodXK5ikmTYJS\n4thhstxoblDEFkV4e6+EkkjjJlfZP7RKyeMFvgf3uPEiTP3lt6awoEYtUy9L\nqM0xmu9UPWOD6Rdevbk+XXtPO2wkhhMpdtnLls9znqZlnS92KuY217VSAg5a\nAgUxO3jQ2mTyRfZXIvoeBsssMBvn7EXH0tX4IHz9JB3aREXhKHjchAOobHyl\nrzuNomJ5ZSGqeu27SKWRPvdV/EBsjAOb6gTaCP1/GQU9sbRayAy/64e6pKCU\njNge7NMdzJu8yljfOjn70FF0mL3nJX2r57rRG4Cbje/1oZcqBGnPhD//SZrA\n8BoYOHcAmF5FQbJXXTrTCbTK4FZgT61BtGCPhcHHzqkZSo9+KsI8Kwejlvn6\ntngDAyxaVrhiSxq7THxz8Oh175m4kryJuxm7E7J3e9N41FWJ8tugQufh5Ko1\nZuRuZSez0x+4n2Isc9hJjl5qaeYbE8MS8JXyfLeUTqKkETJqOpHIKwsseiXZ\n6oQQ\r\n=P2zd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^4.0.2","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-environment-4-x-2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c_1616641241544_0.7988322780057235","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a":{"name":"@balena/jellyfish-test-harness","version":"1.1.46-renovate-balena-jellyfish-plugin-base-2-x-bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.46-renovate-balena-jellyfish-plugin-base-2-x-bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"faf13f48dbbcfa939aa9518aab8f4a1818272996","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.46-renovate-balena-jellyfish-plugin-base-2-x-bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a.tgz","fileCount":18,"integrity":"sha512-4xkDzmwlgx+v3U6A/0E/Txicx5wHEZl8LO6M4o7ywI8kVR49fZfgoz0/2w01Wk/RXIlNDJ4oQhSOsHzSS+Cb6Q==","signatures":[{"sig":"MEUCIQC4aPf0E7EtdUQvSNm2bc1uqs1+7REdLOdgARkltZM2KAIgfFXHZ4JlbCEqLIL7dXWvRx8Gtk8HayeEqqupuS7Vn98=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43369,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/0uCRA9TVsSAnZWagAApCYQAJjFtiBimv0CZn/QtEvK\nT0Rpcg/UXiKKxe91dzwaqwKnxAiiL0cnRCvqF8XSO/4NF5ywBZkmy0dx3jDH\nICi4whui2daBg9C3r6cVRE31uByJejhFyEhpxhDPJ17oJUh1coiul+22D+U1\nSzXEGCQmUpJT6eGEfUiOUPAHpyK4oGr34msOTrOfdhdlBzIGWk9g0uPe5NO2\nqDZdDO+FLUEgeHyPDJKkWOOrIYFOQmaA+GFDgoTpb7BErDqAdMsyW3q08oKa\n1m0hevOqnef616RtK7qkTWVncw5hvQTqHTFGZXjN6ZMs66b8PzrxMeeEggFy\ngDx1vQ3eLHSPSTJVuENaXWWOVMwl++CFXd3EPSL/l3b6ZW5eognfyL6nmC3B\ngDZ6QR03U03l166ibg+g1b14/Ur2UzOH3lkOs6scHY1RohQLT90j1zGtLwAk\nf3nCSG9wntIPu0/YlV/DnD4sUuH1LU+f9fEGAZ04jmeSj5bMHrn6tvkC+U+q\nbfWexn5hp3fxfcmznv47DG5kO1X79AfrmuUhbkK72R+Hwi1rExPCxJrSOb+o\ncsNBDgf9ve1MnUPOHfEeJKP9dRvqi+0/pQG6FpQ6j4LI1YS1oSSspwg/k93U\n6AhK5y0hbQAw/KY3cIoZInYd9EImbaayGnMlLVka13wWpwDrhtCA2kTY0aNA\noqlc\r\n=NcCz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.46-renovate-balena-jellyfish-plugin-base-2-x-bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a_1616641326006_0.10973162728064745","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.47-renovate-balena-jellyfish-environment-4-x-fc38f3be46e301d3d882160965575307b3b9bf49":{"name":"@balena/jellyfish-test-harness","version":"1.1.47-renovate-balena-jellyfish-environment-4-x-fc38f3be46e301d3d882160965575307b3b9bf49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.47-renovate-balena-jellyfish-environment-4-x-fc38f3be46e301d3d882160965575307b3b9bf49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"910daaee224900628edb3b13123d20a20123ea88","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.47-renovate-balena-jellyfish-environment-4-x-fc38f3be46e301d3d882160965575307b3b9bf49.tgz","fileCount":18,"integrity":"sha512-PU/UtlKGPynhIadK/Wjj2TVoSwDVGzp3WjfG/QsAdtNX9ovDtDMRZZ6znOQLb6+jfs6mg/0i3ECw1zB5voZyyQ==","signatures":[{"sig":"MEUCIQCcY1UDdjtIf/IQZls2zyw4MpU7JkZR1fEAHyA0+WEMHQIgdhCD98bUT6bWOUJt+xGNNwO1z/BjUZPVvzAGsX8Qnuc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/3PCRA9TVsSAnZWagAAB/YP/0zjQZq93tNRFuKlayvV\nm02LOzzLcLbobHak9W3Acgdq2FfpTme1ADM3Dy+yvyCyG6AldNc7eX2JH2Gs\noyB3OdZezQhvAxJlZBa2MQ9aSUcl6DUXk7hD1HcuEGERS6ofgji444qyLttv\npVj02jquwxJBo2uCg4+lWJ9eyTnwLRaMzX2o96KqivPG+McE2PS2AXe6PBp4\niU+RRameOxYmkdHuJeKNSUTKMX22Zd3Hn6wtZusm7QoLsm0gqPU+FY4mm29m\nA5nmBkJEUjYkR+W3mTvOk4E+hp8A6wttFsPnTUZ+oxLpvCzsFW4CCygcCE/J\nI6Y7FbUSpPwDHxwikdM3z7WE8GAQ8QS24RCUAzXYBeETfw0bGvls9KVgYiNB\ntIabCMKSx57aXlCUjEMhzXrY+306vOZorujfVgHKxDAIh+fHq1KBY6W+DW+B\npND4cO5BqoOPt3Xgo6O41jVFaDRWADLZuC08WerBMJdMeqdyEHFFODSifVjg\nBHwqq2g5fVMWo0gjingpoxVYpBJ3rkXAtzLCEcu6dD9oem+QiF+73BnqSSee\ngTXhEsUJKqFLhiY61ueTfovSCrTay7Fuv75XA5dcY+CVtZSjDvmoLTQyCP8K\nLsc5Sf0wOYXq/9RPvSjq4nEQmsN0c9Wf/s9aWzDhaUbdHoSsMt2JhIBIpmiI\n1n1F\r\n=zRRY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fc38f3be46e301d3d882160965575307b3b9bf49","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^4.0.2","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.47-renovate-balena-jellyfish-environment-4-x-fc38f3be46e301d3d882160965575307b3b9bf49_1616641487081_0.45689229498530426","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.47-renovate-balena-jellyfish-plugin-base-2-x-7861174f9bbdd543557b7fb439c3920d60707cd1":{"name":"@balena/jellyfish-test-harness","version":"1.1.47-renovate-balena-jellyfish-plugin-base-2-x-7861174f9bbdd543557b7fb439c3920d60707cd1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.47-renovate-balena-jellyfish-plugin-base-2-x-7861174f9bbdd543557b7fb439c3920d60707cd1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"616ebc3e8f240525631a36a1e778fa0bae162def","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.47-renovate-balena-jellyfish-plugin-base-2-x-7861174f9bbdd543557b7fb439c3920d60707cd1.tgz","fileCount":18,"integrity":"sha512-dQMFeH7bTI06tkXANgwskRr0Wbcho91QVtxTP9ZkySUEdCu7x4QzGyGiI6KovOIC2KqKma8cS1MHCg/D3gCnzA==","signatures":[{"sig":"MEUCIQDc8ljg/Zs4lJ3RvW7n0NEmXocI6Gq993Kx3vjMrcqzYgIgAewWiYdq8pDTd6yJxJ0Bq+l6x0gx7jynwa5ZD+VFlhY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43397,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgW/4JCRA9TVsSAnZWagAAk5QP/3X0esHrjpavl5maZWmW\nwdYc26kudJPyY/ZpSFywsokR8GfGrxPj/NjMaYHq3oMbxKYIspI4jnWgiCUm\nC5JIhuyzCyeo1CQm2evZpZU40qjNb+ryP7pNLcmQ7gWyhCv5rDB88Kh0sTxD\naFJBbSLZ5G4TBlsc/p6LFnOR7EQBvg0oqRIPTI0PkF3kbhvAS7wubVTdk37A\nJxHkEvC6E86Iyc3a0XIhV973ocNBFYcVEOaSyMLYVyt55sl0a95ArG8wlI4D\nUI3JGZG8xkg00+o8/z+mmKloKWkMvoSOK4mncbUGpfHsY8gt8E3IgYEfuAgh\n8HDHybxhSknKmMJcBhR3MFPSTGuQLsUfeaMgieoIp2tDw32Ze0rKkUAqcjyU\nnedrF2NAn0SIUSTv+rwT9lZnlBE42oWCB02u4oD5CLZ8Gj4EMgVnv+FBxKcc\nSEE1Q5ldgnx7jw70mArsqFAhnfjRNRmQXFST6tF3R+iBc81Bwyg8OjV9JlaL\nlqyoGnaWZV/W41rt9+8R+NIlirTSxfcwTIOb1L6uthSuyMpeO0Lagx5VZuun\nsUa05R2z3BhsZuw0f4Wb2CaHbuFAayIuvlCzmKT5O9yMeUWReAB4gsaWrKIQ\npIbiWtoAdHPNOCY8EpX6GIo7xsbv1hpwoEASpXCQSHJyNBsppRyM5DSSlE7s\nji1g\r\n=mt8t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7861174f9bbdd543557b7fb439c3920d60707cd1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.47-renovate-balena-jellyfish-plugin-base-2-x-7861174f9bbdd543557b7fb439c3920d60707cd1_1616641545404_0.4176675082520296","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.47-renovate-non-major-49d8c3f18508b784540549e5bc00156e5134135b":{"name":"@balena/jellyfish-test-harness","version":"1.1.47-renovate-non-major-49d8c3f18508b784540549e5bc00156e5134135b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.47-renovate-non-major-49d8c3f18508b784540549e5bc00156e5134135b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"02e4b09a5ac0336f6e57ac18c2c8e0498bdfec87","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.47-renovate-non-major-49d8c3f18508b784540549e5bc00156e5134135b.tgz","fileCount":18,"integrity":"sha512-t2DuuV3CEa10hd32dF45U10vmBbUKJVk3tBCeC/JStKAu9Biz0kWEWBkUUzXHuzSpMsqwlyOSGfYsE4bOgu5PQ==","signatures":[{"sig":"MEYCIQCJB01soDMTnMqpWL1bBBkpNijiO51fwfoRTyeebt9CKwIhAL3bw3mR4IUWpatZhX76syCiW6aG1q6ADio3vXgRQBHb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXBHiCRA9TVsSAnZWagAADI4P/1aHL0Uh3/Zgsu9QTruD\nW5zt8ESTH7ODW2N5uMVb5HmSHTPiE1VQ+ahYJ0FjkLGD1qU1w8zewdK733Mk\nhZC5eiXl6JWpL/GB/t2nWPqieavRx9ATqjLNOYuGKPWXnoc5jZPpHfRSqMVt\nfPtXiQZsKAGAexXY2FVDarxaO54fK5v9hOX3bPKjgzdJNOkZf18cJGLc/a+L\n5oN/mZCcXGV14JOw5ApTfmQqUCX+hjxEnZO8gdX4L7gWflJ0/fYXd/1Iw2iR\nyuvrnlGMvjD+mxFTLwtCatH5h5ewNYtak7a9ao/lr2qie1OcFRwqvsLZGuAV\n8JOrrGFRGKVLnBoanWZckI8IRKLyIadMIIM82HzxLd/y3G15XhRe3+UTzjeo\nM/n85NAijfzWRAddEoFgSfr9yo+JD0sqWU0HTn2dEl9UtlPDKv+UM3Vh2dfR\nA1DJ3GrkeEqX6GZKG3PD/pdRUmpeHtFtWJHbx41qtVL25jK3xgmJWlMbNkda\nqgWPL6ZqND6kLnEwDrSWhqFmBwLACTnCoq9EAqao1c0c6Rg+54ujSo+kvYRQ\nVYXfuO7yJs9xWxzNbEwWR8QP+gxrRuway0RnnFHa/Z/jyBSSzUS9ksAi+sAu\nhdpl+0ff4Xp+NYjwJ1ghYeulLHQio/1a6+ijYqmf/T87vhtCK+TXsMOX20uj\n9/8a\r\n=5Izg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"49d8c3f18508b784540549e5bc00156e5134135b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.25","@balena/jellyfish-uuid":"^1.0.76","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.30","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.47-renovate-non-major-49d8c3f18508b784540549e5bc00156e5134135b_1616646626571_0.528657848577271","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.47-renovate-balena-jellyfish-environment-4-x-de4e18b5fc9359b30ea4482bf50b318209f7a6ec":{"name":"@balena/jellyfish-test-harness","version":"1.1.47-renovate-balena-jellyfish-environment-4-x-de4e18b5fc9359b30ea4482bf50b318209f7a6ec","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.47-renovate-balena-jellyfish-environment-4-x-de4e18b5fc9359b30ea4482bf50b318209f7a6ec","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"048fb0a58945497ebb31bcea7525775168689477","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.47-renovate-balena-jellyfish-environment-4-x-de4e18b5fc9359b30ea4482bf50b318209f7a6ec.tgz","fileCount":18,"integrity":"sha512-POlZZsvV5hZ9VNs7YO+J4TzAOnanVEnLuPOz0bsCuQnBRg5u4+LEZrZ1cYqmCKy2DJe4hp50uxYSaM4HhJs6sw==","signatures":[{"sig":"MEUCIQCd4YeUiGtGyvwSRIRWKdExH2QqLE2uQ3lh12nWTYEx+wIgbdngteqFLNWP5YKjNi0s8Vj1LtKSqrTbqhlOytBPOUg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXBItCRA9TVsSAnZWagAARk0P/jurJjlaBN2rXkrGPZ7z\nbqygDHBE43HrQ6mKwH1GDC4EJZV80heL/4lIU8Smwnt8qvVMcO9aGH8uYhWP\nHN6WAXLV38uKBkINcrgUCdza3ZVRtIX5fgR3tJvRvxBdbmkeYA/8nhLxZ6rI\nIoseOQzGutRQQFNuaTWXhC05vWqjBGCIZ4DoegFzeqZ1DxxevNNISIuSCMSm\nv+EIYNjWbhwP3Ri8GcsIyqC7sgsYFDD1PlW7SR4cJkbL8w/0I+IqTPVdLF6J\nHsGXTbUvhBdAsv61RqSc2qPs4QztDYBlFBX91qBE+AisqYdQzwwpy+meFlNq\nPeNYLwR1kO8puzGXIm8dIr4GVRfp5ZKO9vgjmaDJCvtb4Ez/rBMQOfZKWYOi\ngiSJrni6KZtr1vc1fFi4VdmQv14/C4w5/vfGQi86G34pzb8MWBeyd6d5EBbQ\niisRUFxEkuTHmVVbSaJQwJ+YerrE4W0PkM1QaRdHCFLFpG0OiMaQQrDbXfZD\nxZeo+SxPiUVoA9gNLgrKVadbmUf4xvxtdynNQ31bFmoQ4fO+UW+fewYwMEDd\nusa0tFSNz3TP69pzIO9F5QwHLlFoFp8yj1f8EuVT6x32sCCLu4XNP091a6MI\nb46aawB/OLKrDeY4xTNCLzWFETG0QrIyOfbVda+h6OveKoiHL2plLWNSHIcl\nFhLz\r\n=X7i+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de4e18b5fc9359b30ea4482bf50b318209f7a6ec","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.11","@balena/jellyfish-sync":"^5.2.24","@balena/jellyfish-uuid":"^1.0.75","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.29","@balena/jellyfish-environment":"^4.0.3","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.47-renovate-balena-jellyfish-environment-4-x-de4e18b5fc9359b30ea4482bf50b318209f7a6ec_1616646700478_0.330513602473854","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.47":{"name":"@balena/jellyfish-test-harness","version":"1.1.47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cd480ce9607f3889931472b7bf96bad4b1b86b38","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.47.tgz","fileCount":18,"integrity":"sha512-nyiGL2utLchdbOoiubz3DTzNqGV6zDSPfowl8+6O8d9k41K+FQsl1xfnNr8WygnaRuzkcfgYZ5zse9jKv198Pw==","signatures":[{"sig":"MEYCIQDVxXAvrBiCfm+Lwb8rLTd81RFp93epWCmqvZ39L3L/fgIhAL2Av5XtgWI+s/sqT/o91wzCuXuvToOF9WOnPjd1yWiq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXBKKCRA9TVsSAnZWagAAPLAP/1qh0z5UBV41/yoTDq2n\nv/46z3KmMODzixmrkWdPY2mkQY/qs6Q16uX74+7Xf4dldb4AddYIbnYIqFJO\nNbnN1mPrSZMkCEIbIJPs1HWLMV5P7VE7mDfHL39qoe0NB8bBDnkH9tbT4JB9\nC8jcVBKERG4b89IhyQqLWdJDCtqx5p7Gr7aXaLu+k540f6gzUKVFA9KWMkr0\n5ejvmfPrjUH1AV1pvvKCJvAzM/YXIAnz8t3YJCofZvx7ufqCtOCmwV/3ma4B\nQt3A+Pe3q6xhRPpcatQCqRRAWD1yYg21WIE/ReGlbrRj/mI6HMWQO4SMOeND\nY/t6fTKdsVGEswo1foQqtlblAG0yU+Uq12ntiFn1UG0QDilxI6mceZ6A/37/\nrvG4NP6mseNNc7aWwmO/J00KDE9lsDOhUKBXJ/5MCGpAYVCEN1Bh2dBlgRYD\ndVKyWBW4npK7d0Sr06dRB8X+tXtmH6JIe8TkP0902McaqfCJngN2/zVUS2po\n3X3793X6XvsmrVBedD4nhfa2/7WWTlXv0VkD1IVF+i4gjEvEu2Sg9VdgbX/P\nl9rq4X6fV2VFOmaFa3qOpyLYYfwHYBcN6hEW24I+CFk7LAel5UM38732UBDs\n3Arnt1YAF8Qbu+Ha2KnMmB7UZPp1PLPgO+tO4ihXQCLX2NeM339J/CrbxGsS\nyKFN\r\n=Ho2u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1fc9aee529472e7999d8476f85948f95346c24d8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.25","@balena/jellyfish-uuid":"^1.0.76","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.30","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.47_1616646793565_0.5317788432523229","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.48-renovate-balena-jellyfish-environment-4-x-b5706a787e99b62615b4cfca8810e2bf11e268d1":{"name":"@balena/jellyfish-test-harness","version":"1.1.48-renovate-balena-jellyfish-environment-4-x-b5706a787e99b62615b4cfca8810e2bf11e268d1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.48-renovate-balena-jellyfish-environment-4-x-b5706a787e99b62615b4cfca8810e2bf11e268d1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5635656974f9758ef1199877590693c088f4f41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.48-renovate-balena-jellyfish-environment-4-x-b5706a787e99b62615b4cfca8810e2bf11e268d1.tgz","fileCount":18,"integrity":"sha512-F9xKJeVktrN0kGPSOBouPjxDO70e5YK9uZh86YvtVUxV6MBtmLUCTzkFLHZVhgitr/TH9c9LVKsIo+MS6Ovyzw==","signatures":[{"sig":"MEQCIHOOWQ3+548C3zY/zDiJjUWTA2WDqb5Aegvd9w8TDck+AiAlNbd9JRLjWiZjeSTfjV0C+3pExfe4ncfugFvEVYSznA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXBOJCRA9TVsSAnZWagAAklsP/2oYocSxjMxEK62Dk3Qr\nhcu87lPhjjVSYnNGUxyAHgNvVLY513zG7ZXGi15mg6nmCle72+ZQT4lbo6mh\n15A+ImuCAYfM9BXV8EyWRrOWmOeERukemFcarqM1UL39lJcvfE8jBH8fEI4K\nqzLgEoHmQaWO4OPyXdqRtaNIZ+tGueHbnxlyz5kBdem44QhazbR0SbTRmp8B\nFnnQ8Jvh6/XZFdDUKwtyc4ea40QZUUMQw3ttBmTHll2ZmKJ6XH7U6Kfw25q9\nNYav6waC8YK4wnU0eLJAeJ7f5sjbg18VF+qVo1yYz8qPIXGNoqTePmtqWEOZ\nujJb0Cy55qkEM1vTLOfQ1U23CjlyJjhN5Bwnx+p+hb4xPUoOi8/X2371iEy5\nAUQMG0vbUB4DJ7T7ObYQ1haBktAKjgZ5Cgdlo4nTQW6BgSK1pNVD66ElD2W4\nHxBSLb7++4IcRwa0j4ukf2YmK9geOgvHXKauo1mxSwvhsCgPmlzzh1GYYZ/X\nN4Q54GgZVv6BtmTeIAzMtu+ahIksswJq5Hp/Ary/we4ahXjBT4bq2O8ui+uH\nN3ppV3BEeRe+Bbg0u89rFW7C3/gUYWwUVBC7cRBQKnp8qbX1oSzuYBMwsm08\n3rsqhhN3Ae8sw2GO+xmQPJt1nfshBgTSFowtdlSZQup9bocAOneYECcxVPhm\ni2tK\r\n=FlNv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b5706a787e99b62615b4cfca8810e2bf11e268d1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.25","@balena/jellyfish-uuid":"^1.0.76","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.30","@balena/jellyfish-environment":"^4.0.3","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.48-renovate-balena-jellyfish-environment-4-x-b5706a787e99b62615b4cfca8810e2bf11e268d1_1616647048804_0.055805532202721775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.48-renovate-balena-jellyfish-plugin-base-2-x-d7b03201632ebd16eff13b4af0675c988314141e":{"name":"@balena/jellyfish-test-harness","version":"1.1.48-renovate-balena-jellyfish-plugin-base-2-x-d7b03201632ebd16eff13b4af0675c988314141e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.48-renovate-balena-jellyfish-plugin-base-2-x-d7b03201632ebd16eff13b4af0675c988314141e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"123dd6028a8d42ec1ea98b670f0494303d7d924b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.48-renovate-balena-jellyfish-plugin-base-2-x-d7b03201632ebd16eff13b4af0675c988314141e.tgz","fileCount":18,"integrity":"sha512-RGnmehoeTcDnL13u3CMSp52WKug5TbaNBmE/pipphuY/tqNCmuRy3I0T6+Fan74aIyuz4tn54++MypKYdQPFYw==","signatures":[{"sig":"MEQCICbQAJarEfi1yOQa3xX2gvZz4CewWTCzXn/Ojzvpi4YZAiBevnUsOi3/+/Gnt88TwwqzFDeb6GwLN+sYZ6m5cY4ecQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXBO7CRA9TVsSAnZWagAAw3oP/ic5mhxWUc2rrIcRy4gA\nIAliTccoDadK/UGNVFA8wJftzIpUq5iWI2iUYMnzQW2gKf3hlrd6Ok30wrNa\nzHTZeqYqsL95Qh+TAgcRFl9gDcgG/yij+5+3fHj+rT7ReUMlsrQU8xc30IqJ\nHwphU+OaWPXrjsKqBmyLchaEYZ1ZdNNbUVTrYA77DIqYSZ9tRCejiPMIr7vz\nhsA1SGbF89Elb+e2o55OWRCW/027eeUUS6VU2JNE9p8b8IatBFcgLUGGLTSO\n2UwNSTS21P7LYLgFhXNdd2ro8HYehYEwbmmxJ0DyL4OpU3RoavS6OIO4Hsdk\nE37ekc2aM7rZRV+R0MjJxf7ey8A8e3607dwom4YeN0viL9ZPzc5AJGJggpcN\nkxu6Gt2Ng4LV/NiV4XfyR7gkYb+irwcUXQFxdHNncKJ5QFfcprHz47PS1LYJ\nvRNGLFmlLErpztq60AleQiabNGf0MdQSk/ohxTitiGNJ6CXHAcJvS303Qs+C\nFkKkSQT8RsCcRd4VZU204bZH6ZdyFU7gpVEexgSqmPbsDzfrraxK/mWeahdE\n/cF4MHEoOJFsYjGG8RPggpEX7szh1cItLMHb0o8eoxXFuJCTy85eGZm7ty+u\nz2pyomoPgMnmr7/PEU0nRmiQqtI2J4JE76jfbFENVqygWPYgITFnDLol7Fp2\nhdAV\r\n=j3Jz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d7b03201632ebd16eff13b4af0675c988314141e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.25","@balena/jellyfish-uuid":"^1.0.76","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.30","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.48-renovate-balena-jellyfish-plugin-base-2-x-d7b03201632ebd16eff13b4af0675c988314141e_1616647098849_0.5077562357649015","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.48-renovate-non-major-e9b3398e2b8d39a572037681acdbcb040bef57de":{"name":"@balena/jellyfish-test-harness","version":"1.1.48-renovate-non-major-e9b3398e2b8d39a572037681acdbcb040bef57de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.48-renovate-non-major-e9b3398e2b8d39a572037681acdbcb040bef57de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5013c6b26197a05672216e97e9415c23d51caa4a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.48-renovate-non-major-e9b3398e2b8d39a572037681acdbcb040bef57de.tgz","fileCount":18,"integrity":"sha512-NnHL+VvjRnlkFmZKZUZEdcHUTCf5itgEQVQuB2ludZAVXkvZWIBNd01ukDmhZrahZuwwoBqGxdrDdg+/NjoZow==","signatures":[{"sig":"MEUCICw9E2tNK9sQr6GdD/s+/kH9BxiqzgRlvlABff5ezln8AiEAgexh8XgIeVhMuvxwLaIgPCrRZ0Hv3wE8SzWskAlBCMY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXGFaCRA9TVsSAnZWagAALogP/0mlFISq4z1kJkFR5Mtt\nT66qBEM72uku5irciWfahqmYX7HmsrbFDI273akP7KDFfur+aO84yCu3vUFF\nuOhNqA+266jl5woP+iw4xz6QWy53A4P8ooWt3FoWFsnc65EGuGpZpScUCZBI\n7Kd0zNKiIGP7PFRHUbo+fijaW+a5bbgyaBwR6081551ueZuwmN/JzvXg0CR2\nSwiuq0LepO4QKGOQ7hBu0/ngLs1ne0dM1dparGtD0GxPsF6QmX9mDejZFvYz\nALWbLyhxez0bqsFFHxo0OXNd8+YsS5oJAlQEsr2qNvUaiMbLqUrVeuVEH2oC\nDro320LdwxzfLEQi5ljsxes6lZ8AOEsEMnZDbTAod5WJ/VkEmU9Zp+ZGfOaT\nqCesNmC0215LP5yAIo06yw8iWDIACPqlx0uwH/TsP0sEHiCIu8GnH4SZO/0E\njLG7SpGl1iU5gOtlBIkSbP7PLl7TJNsWiNQPZb+DN6OajWYve8Pe2bCJusMt\nt/0rnYwF8aCHKIs0/XauYT1LHZ5IbNaf4CKs6l018PQQukL3wuiX8G1ESZLJ\nWmcsLXG3HCQwF4XhOpe6lSGvt88dJBey3ujVgUNP0YQRsw1usTJUBiNuMS+T\n2jHF7bJb54FORrgxqPpVIKefxk6tREiMRMjR/kpypL+IIyTVJu/GJlZLwfax\nrxYG\r\n=sw7/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e9b3398e2b8d39a572037681acdbcb040bef57de","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.31","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.48-renovate-non-major-e9b3398e2b8d39a572037681acdbcb040bef57de_1616666969964_0.02831694827475073","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.48-renovate-balena-jellyfish-plugin-base-2-x-5dcdab1a5c4cb39881c54b6a67593a3b208bd75b":{"name":"@balena/jellyfish-test-harness","version":"1.1.48-renovate-balena-jellyfish-plugin-base-2-x-5dcdab1a5c4cb39881c54b6a67593a3b208bd75b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.48-renovate-balena-jellyfish-plugin-base-2-x-5dcdab1a5c4cb39881c54b6a67593a3b208bd75b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9078e68f15099b4d5369273929cb046c5d086827","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.48-renovate-balena-jellyfish-plugin-base-2-x-5dcdab1a5c4cb39881c54b6a67593a3b208bd75b.tgz","fileCount":18,"integrity":"sha512-fgy8NxIDHPq7Md3NDZL3TbJsYWaUmvon5eTeehkvwtK5cH8/YzSwxDtHTGvfYPmqHkaOVWjBcBHvjD5QnGc9pw==","signatures":[{"sig":"MEUCIF6+8KGDtkFtKIXLRoBkZmmvJo9owwjJaOXRHUQ+12baAiEA9oamobP1q6+iX3M/lWASpB09edYYCqb4M8sN8QQmirs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXGHHCRA9TVsSAnZWagAAdSMP/ApJQSubmyFN1VI5OJLD\nhtYkYUOE1i/1Qbw1VhEgypQfqE72yWf3W/3NN4EMU2cQ+NXB9jqsteKb5qQ9\nMVHseZgZj3CHVxsFr+Os3jVfVzDaE1MEJNG+uvrkpB0MNrV2HOFn403VEhHz\nhvAj2jE0lGR0E9srCaGFyVbx6EB3NeCIvWQQPYWJkerCM2hdbWcM1HBMr5xw\nQ5lb7Y+d4Gwo7r/SnaH2yDnYYX11fxRFr8MW8QCCdSh8n8B7NlNCtO1SMxfs\nY0QTxd2s7J4UkC+aMDlHKDK6CW2zVgmNWcz4LBFE8Y4CtASh/Ga8jbwhE83f\nXQ6huSIgAHbZVO2yJ9RwJRta5UTdWs3feDnuLAMKeHlt14/17hxLam8bmP/0\nfDm2aio/CoAZ7WcFDoJvqty+5jrOelE0XeRzVZ09xdMXjgmLb1fvFd57WPOB\nvEV667YBJ7xFhxIFBdDJJpVrrREg9o+hcJKnuWwJCiCqr7LrJriE1WlW2DBZ\nGGc1c0VWwx8Xeg3ngVrkBSzDBwxNRrkg7WA1BYgT3WL2vPLyQzwc96uYHGgR\nqAdaR24Jk48u5dRiN2mQ6NXZu+SZJId4N5C35gT4hamRK4tqIzXbavAw6wlN\ncymraR2WWT98yM18BTLval8HysjsKFWCFySEoSSx4knXdWoKYj7NCuuE9tef\n06JR\r\n=fNJk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5dcdab1a5c4cb39881c54b6a67593a3b208bd75b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.25","@balena/jellyfish-uuid":"^1.0.76","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.30","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.48-renovate-balena-jellyfish-plugin-base-2-x-5dcdab1a5c4cb39881c54b6a67593a3b208bd75b_1616667079037_0.6464336801766362","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.48":{"name":"@balena/jellyfish-test-harness","version":"1.1.48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.48","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3b2a0ba2de56af2face455392f53b6b8ecacee6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.48.tgz","fileCount":18,"integrity":"sha512-lXIo4ILQquTQBrEYh4mMWc81/5lSCjtJDpPIPyK2KYXlHe+2cZOXerEs8tyUAReqv+Rz/KSBYXrfhTkKpbvPQw==","signatures":[{"sig":"MEYCIQDYpW92ZnN9ZqGJjSEectGU5bA9omQJvtw/gT5W1ySFEAIhALwbs34saPxsNyyFsDXAcVonnVVrTxXvAFpZ6XPvSvUW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43347,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXGIKCRA9TVsSAnZWagAAIzIP/0FRR6nN1+B54ezBfaFR\n5OUov+gWDFoAecD98ly66wECAKnPNvTrutCtGFYOoLEemwa3hkv8wZYA+3RE\n0sCYw4meEnc7xADge0ckYEo5ssvWuen+o6dn/Tuew32W/lLX6v3aKROV2eGZ\njR0ORvMxe5/yf5YOzFRv4TE5kTiyGHweFiCnILQoviMmf3+dEqCP5EXAUAe2\nwdmGpip+1Rsy2t1AVX5n7KwZB1TM3ZJWuOiAWIC4hGbIOstmGDNukQjBHFmy\n85LzZQx5d74uVEKOV9zwM0LjWV9EXP+7PJJ4zgFqKZKljCEgiMvPwovcboPe\nhRpSCT1MGHaMe8Nvwo1YdlX1dR854Fo9osoZTYmcYDS79EfY4hU0tdIK+I21\nj5TAh7vjlICjPyluKyNZpvLkBwTWxfUEVFUIePyDkkCI2paYtDivqtNL/Nqq\n3msV1DRxhboahPXfM0idZTTustIX8v30xlmGZwAm4jQHJSbLGVK+7eEt8h8J\nSklXFjtRTtv09nPjajzrGT6SXyqSj1N3KvnOq9OY4bvynzd7fvk4iT3PVkPk\nSJDgnHv4jYOgAPbqUdto0IlGMHC/l1T/qv19VX7Hhhz5JZx7J+6hKfk3OvOV\nhWzCxK/4EZxc3E/qWSshCG0n1ZpBJTq9RDrDlWs0YNw+sVMrgstHpWEnteAP\nJ6Jo\r\n=TBeY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cec68ff7bd6ae157173b990f759d5914dc7942ea","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.31","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.48_1616667145855_0.6483070690964916","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.49-renovate-balena-jellyfish-environment-4-x-ef7f4d15755856d36058ef3ceb2215e255d038ab":{"name":"@balena/jellyfish-test-harness","version":"1.1.49-renovate-balena-jellyfish-environment-4-x-ef7f4d15755856d36058ef3ceb2215e255d038ab","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.49-renovate-balena-jellyfish-environment-4-x-ef7f4d15755856d36058ef3ceb2215e255d038ab","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a8ed32f083d0bb9f29d1048059c62018849327c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.49-renovate-balena-jellyfish-environment-4-x-ef7f4d15755856d36058ef3ceb2215e255d038ab.tgz","fileCount":18,"integrity":"sha512-5uLPhaTrBv7XZOvOokGgrqEoyLf80evc3ouM/k5kVc2KK2CV50BV5QNv5+ZIBISwNHyLjipKFiMumX9BlHpAsQ==","signatures":[{"sig":"MEYCIQDGQhFndunXDQJDaNetEbUw/2fVIdhI8Zmnum10Rj51NQIhANG1qULPQvKeyq9a54e/6yhS+JPQcqQCnYNthsy8RyOa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXGLzCRA9TVsSAnZWagAA7bMP/3rtBayRa4LpiV/WUwCe\n+lJQ3vt5xz4VhUuBxbTV70XutodujHO2QyZa9QS40uS2oYnKaSRagvKveNGi\n5ecjZnXsA/bfkPJXwrrBTXhf8niS0CojmMs8ajL3usjNH+8mJ8rKfUy0TqM9\nKA37/Z08/iUtsKSLJ9fFsIOqXoh3ozQ74+Dc7yRYI2XX1KvkrClR8q0kyfIL\nONXXupuuobBllBuWJlcMPyjExeg3uo9R9orN8KW4jFRIlwRhyPFw9R8gNbmZ\nvweRvAV7WR4/s56CaFPLwhHb6QRPl+9Uzt++FArYh0D20awPZIlO8nQj9H5I\nj+Yf4JBk6/2xyT23omu3zr+puHD6bVxEknRz+bj9MQLBPAA3veNpSo89mZrc\n3GvbwZzdkn/Ba/3B97YM2c0O4liQRPgxQkMLWwmLMyx+R73KGAltfCfUnZRg\n21jL9+cXSyD0c7+hvPNiFjDs8vQvSVUAS1Y7wTmD3arDSuwAaOj3amqFES6k\n3AQHeFTVEA2bpf3B/KNk+N9BGrqYRNngtyagvvmyiKdPRwXHOhHPsjtWvlMd\nbiaB1ixCB3156IKdDFB8Yz1hxe3qh1dhV/riwjo4H18797GW7eRpEPla1aD6\nH6zgFXMiGQutP04Z6liODKguMacICHk2jvjNPDG02bDTgtba0r+6hsUJZxXS\nQQR/\r\n=OKwt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ef7f4d15755856d36058ef3ceb2215e255d038ab","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.31","@balena/jellyfish-environment":"^4.0.4","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.49-renovate-balena-jellyfish-environment-4-x-ef7f4d15755856d36058ef3ceb2215e255d038ab_1616667379336_0.4098499151887629","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.49-renovate-balena-jellyfish-plugin-base-2-x-a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1":{"name":"@balena/jellyfish-test-harness","version":"1.1.49-renovate-balena-jellyfish-plugin-base-2-x-a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.49-renovate-balena-jellyfish-plugin-base-2-x-a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9672b842fcffcf87d06e29d98428025e7b3f6959","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.49-renovate-balena-jellyfish-plugin-base-2-x-a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1.tgz","fileCount":18,"integrity":"sha512-86gqK452MUwtXnvCQRUobKfPoVWk+QRAVop7jawmERIiA2llTz5gbZsFCX2G2Oxn4zLoW4ISiTb97FKdvdsQXg==","signatures":[{"sig":"MEYCIQDzPDtV3WOUS3e6nTSyIRPoDLuBLCkuJEtDzSFeRZLltAIhAJnD12p5Et9OANu39ByW8oKFTHVnz4Yz/nCnbOrmds5I","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43535,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXGMHCRA9TVsSAnZWagAAOggP/2e18ziLDuqOfGD1hW6v\nC8Sh+nISaxLkLzbJKZQcB0pXtBqM4F8ZTVttBK0QKF95Kt8Q0D8NWIQEHVV0\nN5/mgmc1SiL/KQuEB/cV3Sut0InlvLcLVw9IlTyTLNBSwZKSRLFHP6lFW4on\nVhaoQOvy+lUgn6l3AOJHPvfb+Zc6qxT0Jxfew7QAF7sXqoMpGidcejhQraDd\nFL1dMD2XzjL+meYib/RGaOgt7FEeWX+6ALdBkYa2cLBUvU66uTfd8mhYL6bH\nI+Is0fh8ZHQEetLv/khexkKOn9OqGdb9Zb1kHF3d5YS+Po0dhNQLCOfaOy2D\nPHuBEHqMpTqb7/nIZt0ZD2X5oKKRa32lcX7DPRXG7tWUaniCIWt4ZDQeJO9P\n6aTxIiND9xef5GMoQRn6KHjDHYg8l9rmbYxDGaEjK+CD5EwAbLualpeEctDb\nSH70GboWnrEfXNKhVLPH1VmLDi4yuOrkqXr82PRGafYCYG/YaI6gvSUJh5q6\nKSAgpITzZm+9JkkEg1XcvvpMCMn+IOuxfeQ0YYG7978aRwRH0X5HWCgOI1Mh\nvPOURv7ZD2ampeBeTu6m4yoZPu4LPtXmdrct7P6qD9gG+91dvozmr6a7PXIv\nRVWsCuQ7ebIwZA3CJbCffeIH8mI/S5bfdOfXQzyDKNVjPCRlHfOOX7ZX0YGP\n4BfY\r\n=Km2g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.12","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.483","@balena/jellyfish-worker":"^3.1.31","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.0","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.49-renovate-balena-jellyfish-plugin-base-2-x-a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1_1616667398870_0.622354343474","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.49-renovate-non-major-96f7e5e401b10651fa877ab3e024d2051b052d8b":{"name":"@balena/jellyfish-test-harness","version":"1.1.49-renovate-non-major-96f7e5e401b10651fa877ab3e024d2051b052d8b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.49-renovate-non-major-96f7e5e401b10651fa877ab3e024d2051b052d8b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a4d093d5232ad1b553ab88fdd60299a0dff91ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.49-renovate-non-major-96f7e5e401b10651fa877ab3e024d2051b052d8b.tgz","fileCount":18,"integrity":"sha512-5mGB3VdMR1o6ERwVpECekbx7r3QJA7qBsUT7mmuHBZep6FGtwrxcsNlIJ+tmYiKAp2L6/weyPZhOZPW4Uf7hGA==","signatures":[{"sig":"MEQCIHRM9SSP53pRw5tzohYB/lrhMTDtLBTe/nUyRtIsWyKYAiBQFAFiOH6EqD8RHrM9zIhQZzVLlFfalGvhcEDH4f9wRw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43476,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXJE7CRA9TVsSAnZWagAAf9YP/2Bi1wRdIHU9Unylf24o\nOUTblx+RrqNQmL25dn79N7L7KrGzSWJraHiYAgZ5MMG54+eJb7PCOaD3KYZt\ncJRryQQfgHzvUdCLNZ322hkIJ7A9xbYVpfd+9QKAtFDXbgz66ORWy/1HNw5h\n4Jjrpl4nrS8UBSnvvophATfGVMR8/svs5vAr+tk4QEjAR48OEWJrZIj38AR8\njfn7u+t99cnHvEcM8tzYR67uiX6vRf0Bm12KOkVzWk6NGpQj9H74UL+Hifnh\nFS0o7DVM0ke2ETo8h/5qoD2sIjwe+Xa1odWUyLi4Q59i3jVCmrZTCvUZWyV8\nW8JLfgP9zS+j9rZgWa3+nJEqjARwJveEl8dEr4Qm+UIl5p3F8qOlA6dbywMi\nn19MYffbJSsAeuqbALdkMvZnLWUgGbLwVOCNArcTVIYXBcju6KPPj2ONLsyN\nAQGfHaImYsCA0wVdpq8KGiZNRCP/tPEpxjIGiMCzzBOt7gY7z2gOptPCD7C7\nRWwXFYJGvbc6brMAd2gIFlrg+ruvJp6oWYFUVoxZ/X9uyXEoLLLN7pydOS0m\nu5C5DL75P+7BamMfXOynYHTPklawdodA/M1o2EZSRhZQ8SqavAxerNkngSc4\nLbFiaFxt0mjXYNQ3WPBfTuKdJ/DQJs1SaIrGH34pJwlh5UxZMlnznzYg/XXg\neXpH\r\n=SQy6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"96f7e5e401b10651fa877ab3e024d2051b052d8b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.13","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.49-renovate-non-major-96f7e5e401b10651fa877ab3e024d2051b052d8b_1616679226525_0.07949255372097719","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.49":{"name":"@balena/jellyfish-test-harness","version":"1.1.49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ccb0e33a6c3c009d9dff2dcc38d824d5a16d2089","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.49.tgz","fileCount":18,"integrity":"sha512-WW9BgsCE8WOfD2qOwEIKYb9f4eJ52x69zy/shxESrtNm39IxEWHvybtYbyjm/ibXGqhfsrZ7tlxVTHfP+MmtCg==","signatures":[{"sig":"MEUCIDcwOB4b85SdQF36vWHIqz3NODMXgK6QCdZLiIlg8AeKAiEAuEIQvYjLq1G0+/AWWZb4iExfudLNN17y6ODCPRN4WSI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43416,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXJH+CRA9TVsSAnZWagAA/ggP/21svjj30VO4x7eq5hTm\nSsnqrX7aYlV4INVg6RGdMAUn7vS9z6gNECzK7jMtFjGsUy5rMNEA6VEkTN81\nLYpp89XeKFxiCk2QSJ3ZVgtEunbFDidliemjQAj/0WtdvJkMdLLot4Dg++bm\ngH88J2c215S3bbHey3i4dL2AbWAiJruMwNaOS3scgH+Y3Z7JmrKKmUOTsZVl\nh5uTRPdUBAJzFmSfem9HbLjlbtmhFYyzb0yCA7dANYRmVa8PSo9hvPHV1iKr\n1iHR3uLuXheC/60Wj4+qrBEe3OZmdypRwgThtsROtqavTluLD84uum3u8gwt\nNTQC9GFcltd9cVgini/xGqV6BtHNKurDwMGcs9WaiZV6Imku/E4HRm28z6YW\nuSWeM/7z8eAK+zM3yPooOvDV0nPD6hgXoOgTRFArLIT5NyWL/U6bDxQSLuzM\n+MEWUYv7Zx4nK/iUze8CEpDtNMvmlWx8baMzzDOdzI/k0Gxb8MuDA7XAYZGd\nKm0r+KoHby/wUBOWgvm193TNfGniYrdPFnTW15hQbItk34vrvPsNVt7saZ24\nc9ASS2sLmv6YQrpPP4i9Ff0EdXOO1JFUuEy+Vwko/4wySk0lmXitQ75jyC6p\nNKpeTT4fG2q+liRxDjdX8pqsQv6+6HIRSd1xjrxkXplimjr4wjJaczo/0BD8\n4cfl\r\n=6Ago\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0846bfa1c39a2252ca105704fb46b1757faa6463","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.13","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.49_1616679422358_0.28960751606851476","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.50-renovate-balena-jellyfish-environment-4-x-dd32c4aec9d36fec5aa0311dc4b48abe45153a95":{"name":"@balena/jellyfish-test-harness","version":"1.1.50-renovate-balena-jellyfish-environment-4-x-dd32c4aec9d36fec5aa0311dc4b48abe45153a95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.50-renovate-balena-jellyfish-environment-4-x-dd32c4aec9d36fec5aa0311dc4b48abe45153a95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"815f23fcac2c94a88505d4a88d5b0241d56c23bb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.50-renovate-balena-jellyfish-environment-4-x-dd32c4aec9d36fec5aa0311dc4b48abe45153a95.tgz","fileCount":18,"integrity":"sha512-vmZUPgkMaM1Yl9okK6wvEFBl1O7E3tumbAlbU5VZZuyBetU6iH5v/W4aXmTL5/mD1EcBENI68nAdZPPE00RbMg==","signatures":[{"sig":"MEUCIHFeKtI20YpDfDeUxSTEMqG5JO35ygugWTD/s7WR3GQeAiEAz5Lwp7TH+pHG/lOM5RyoGbn7hYM5PC964x+hUQ9iGTY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXJLrCRA9TVsSAnZWagAAHkoQAIJKq0BwzMQ4SFH+Puz1\nNtSMdghieShluhok49rGMBg6I17+EGNLrCkNvqKCBaNCV/6JjH4bCuGuZo2d\nYZPQ5bDnZJgyj6N8Gl1wtrfmb7O/tkiIW3P8kacYHRzLmQUJq2PSacSOfBxr\nLkFQDhYHWY61uYEJHY1xfweO8tzHc3dLXrPlma4DfLyMkpRi19TGVCI0ByiM\nZCCOsPeMSyDgtHX+euWmKRk4fFTszaYItIG5/uxGJrhMYR7sGYO6DrsYNneC\ngEreRZO9Ywz9PZr+FZU+rBVptd6+Xv5H09Op5q85f3Gc+Scvm4ZEeHpX0hYp\nO+85aF+Dh+Cnhjk56Tq222Y/3Qftmxj488yIweyur4B9sIc+m7TJZ2AZD17D\npcwsOFWqzbhqSF6KcWKhgxLlkUKh1NuW/zricTLDbeVbuzLrxgmPiVnrbjjP\nBmgjzW45UwrWkDK3/y70hG/8k+3udes1aJKfvFVl2mifJ0wJgflhPpbFmjv6\n4jN5AhFxUQAuHLHAaumtiijTIVV3UWwOCma7PPQ1OtpHXb+bsxK8ld0NKEtK\nkYO22a1f2oHiUuGc2cCDRgMzbSI+2pL3Lv7iBPcZSMUs4blSSziRKJyeCsvn\n4qo2JmhAwaUjNnYF1vHqOa3xRQKrZWtuTchuUOOdk7LObVXeaIFxMs0xVHjE\nGUan\r\n=6kzb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dd32c4aec9d36fec5aa0311dc4b48abe45153a95","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.13","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^4.0.4","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.50-renovate-balena-jellyfish-environment-4-x-dd32c4aec9d36fec5aa0311dc4b48abe45153a95_1616679659249_0.6415326076925849","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.50-renovate-balena-jellyfish-plugin-base-2-x-a67ef312829bc89dd165a7b9f4ebc239e9b66c03":{"name":"@balena/jellyfish-test-harness","version":"1.1.50-renovate-balena-jellyfish-plugin-base-2-x-a67ef312829bc89dd165a7b9f4ebc239e9b66c03","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.50-renovate-balena-jellyfish-plugin-base-2-x-a67ef312829bc89dd165a7b9f4ebc239e9b66c03","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6dc0a1e581cde55e9dec5509ab9fab758aace36e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.50-renovate-balena-jellyfish-plugin-base-2-x-a67ef312829bc89dd165a7b9f4ebc239e9b66c03.tgz","fileCount":18,"integrity":"sha512-LtWAMndaau/Xp7mZT3+cU7hdooFzm/266cXSOVnz8wb6Dcr9z9cwBWk8ysLoPxanGzcaldA7HEnefeLTyrcXug==","signatures":[{"sig":"MEUCIQCI8XKwU+du2RnmgolL/ul1Lf7srfs0rJLl1tqQfOoFJQIgeKH3QFXqtFiPqaADLYv3uE6nnd4FV+q44wMsxDrUL8U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXJMICRA9TVsSAnZWagAA6QAP/1RjNNZzRH0XR3Wi2OS+\nYq3Y1WizaWUQ6TqTGkbD6ntrhPeDUxdo/kkmPBmJV9xNejpgpTfOeRuITvy+\n4lN2lfb3Y8k7O/9kSPNqqk+iAlrDdbGVDLppgrInrg0GiDq4oOSlsKOINRz/\n94swIjMVJ3GvQUf9XWTTMe+TQN9k7nnLubFqpmkcavKHvnWJeYOxiih3Dypz\nN5ig2YgMCzyAJi+PcHBlw1a8X/cHgaruSrPwB5wRh5ik4bLLV91xxo/eql8F\nR7MHXnvHLPYl+qOwa4aT1uTcq+M+01r8hmuDctKJghvVzqJBega1GYnsHbW4\nwRBZ2RPDMXodPiyKDhfKrffxB50OHq3BT4pDFBmcSHPtml4qzZ9hlrKDYn4N\nfWPJNrxJiJFwMhQVnQx4+nzTnWLdZ9lsakw12xHfdIu4rX00yxS008DxHSZW\nSlh2miDrVmrKFC5FZyz/Gph6SW/0oalBsZ9TkbYpnbSppJMYKn3tyDsrtNvE\npt0ogsFAzwo8Hw0+6WXsXpGwCHd43aT5XWYfcPJwkYUNaeOE6Ec9BdLwKzcl\nUc365pyRqi2ROQ2myECsw21FyjCCGwkdBNfV65MCTjvVEe/tDgKQPQlofnDg\nfoN4T3i/lpQ3LStD3YTAlup4PJw3jPzwy09ROZ/1YPH92SBes3no5AjBXgg5\nVZ7s\r\n=0zDN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a67ef312829bc89dd165a7b9f4ebc239e9b66c03","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.13","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.50-renovate-balena-jellyfish-plugin-base-2-x-a67ef312829bc89dd165a7b9f4ebc239e9b66c03_1616679687865_0.7082779110423003","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.50-renovate-non-major-392f3d11105eef22f83ccd34bb7eeda51d467ba0":{"name":"@balena/jellyfish-test-harness","version":"1.1.50-renovate-non-major-392f3d11105eef22f83ccd34bb7eeda51d467ba0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.50-renovate-non-major-392f3d11105eef22f83ccd34bb7eeda51d467ba0","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dd1a6fcd66a3041db20db62fd769d49a0dd0ac0e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.50-renovate-non-major-392f3d11105eef22f83ccd34bb7eeda51d467ba0.tgz","fileCount":18,"integrity":"sha512-Pd5x2H69xUb5yI87ZoX1IyTQGMxnKcAk6t0YoPSNc5sRSWb/fj+2L3OJi5vXSyhBKx8nseq7WULEhDdKwBz/yw==","signatures":[{"sig":"MEUCIFkpAONoJuTqFJViVn9IHWMbDYrlAMBLNCrer8bXs5YnAiEAx3FJnjZlI81DS/APl47rnmbLXi+6l+NrEJUW+cXSs7k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43581,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXL25CRA9TVsSAnZWagAA3PkQAKN5grtwS1bv9pxG1fPD\nlp9tcfOU08+wcZXm80YEfGmo9H9dMh+zDvNz455PtEZ/PQs9BfV0S5Zwgu58\nH9tPmOx5o1Yr2eoSIGcOLtaELxDS/Au3e6iNHbLAk/pUCkOaD8ylZGABlxjJ\n3yid89WzNMV6hvhBCw/XMZyw5v5uxweTHgnwJIuUy+q2RDeXBJWcFm2mJSXD\nQxYFBHrMrzQFibdSXqNNM9/f1IQbjlIw36ayKJ0+jgUg7CLLjwW0TXjsE2YH\nHOMAupFeVLgPCN58Q0TrlBSWQvrXWgYROgkUXSP/0XC+/TFvv3CsSrXTqEn/\nCukl+JzjlYg5hmphlPS8nDiRDElRSxBDMEkDsvrbe3rr7tu+8jBsLNQRqDgd\nLBIYfQRCSGe94eTuJQrVDgwb2rz8n3JBCYUJkBhtYmvYzAVr8RaYiR/tEmBO\nDktcrb2wDZWzWoX5jYCsXC9GUizOgb/DPV2hZLGqOqOfhv5hu1A316e2aURO\nyz7c5KZq5Yc7K9cYzFz8r2vgj4ic4wKDvwWy/LtHq/51UqsEqnVx4QbK7HN0\ni98wJxXg8RaUN44kHJHeCji92lhjOdmqC1g1GDAR95XUOJIimdx8VYc6yt4q\nxK1N1Rs4qads9p58gUDlNNJTv3YMW/OU64wVkmou46yj3SKhCFaf8L71PCLq\n25z4\r\n=nEQU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"392f3d11105eef22f83ccd34bb7eeda51d467ba0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.50-renovate-non-major-392f3d11105eef22f83ccd34bb7eeda51d467ba0_1616690616842_0.5628549399574558","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.50-renovate-balena-jellyfish-plugin-base-2-x-238cae02942601313de19255b20e22d764a45ac3":{"name":"@balena/jellyfish-test-harness","version":"1.1.50-renovate-balena-jellyfish-plugin-base-2-x-238cae02942601313de19255b20e22d764a45ac3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.50-renovate-balena-jellyfish-plugin-base-2-x-238cae02942601313de19255b20e22d764a45ac3","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4def308483a9c10e6fbf96e5ad3ad7a507c38513","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.50-renovate-balena-jellyfish-plugin-base-2-x-238cae02942601313de19255b20e22d764a45ac3.tgz","fileCount":18,"integrity":"sha512-2kC+qHzHsUszz/ZKyUGa2Te3LmMvPboLrLWDyOJcmGKoaLgkCJT7vN3/tx/fqxJ6xW7Y/wAYBbwib9rnjA/k6A==","signatures":[{"sig":"MEUCIQD9o6D2/yJIZpzxOYiAtyXdL0QZ3v+NuMxCRwfZ8pNgoQIgNjAmM8hUtIvZMdXuzd8CVJinq25awxspPAiplHAbU1E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXL4ICRA9TVsSAnZWagAALuwP/iKuGQzzVq2Q+eXDsFnq\n3+vRSCwZV6c3ZGp+SZ37+mmQGl4g9VNWrUGMVrkEr+PpqoLZ2F+jzkbDAoNe\nZUUJ9Rkt3dy8fQY4mwQkf/TzpL9f9MJIzhmleYgSq+AOGqUd7Kn0KsfRurc3\n8BIFhM4tD2A1tMCXMw1WZj2XTtyNlYELu7WWRVcarc2+iOJ9Uatxlr7ntRoj\n0g312thURjNq1dWr2tOY+Tuzn5gTfPmA9syZN9KJPZQeKj9IntY9E7ki/y9J\nxBKP/0E6rtWO3OGC0yq8+a9H8/d7P4WVgFyrI6ayoVSeSJ46YvNHT3/7bjWt\nBa0gLOtuSDBK35kZwlCjyDFgkBqJkw5xOKkX7adPAjhgGEwahj2BMtASSYwE\nbI9PCMf2auZpFHhT/wCDLGeFnu1qIyckjipQe64gHgb/25gipa9HKHgcLGIH\nxmQiEupjPgpv+UrP89QhBiiENdCab5/RFQ2UaH1l/2I9k3fUizbYYbWan1Fy\nhFXfrdW0nSzLlnb+knVsJ46E2Dy0MtJ/8ZGpdiwRaSNzZxmJTYqU1tcmPZXw\n1OG4xhlzRO/l9DiyLIJfcfjOj5iqtndskYRn67zM76t/GaHiicUPZaPuDqbI\nV6HxWQviJx5i/o1NZd3svWVEXM0C/JJQEEx4f/FAd4uS4orxOOJlqOVWE07R\nIQkI\r\n=nD0Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"238cae02942601313de19255b20e22d764a45ac3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.13","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.50-renovate-balena-jellyfish-plugin-base-2-x-238cae02942601313de19255b20e22d764a45ac3_1616690696211_0.34703833744397805","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.50":{"name":"@balena/jellyfish-test-harness","version":"1.1.50","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.50","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d015ea817fe38f085d7a066d7fa4f2b44779feec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.50.tgz","fileCount":18,"integrity":"sha512-ESfZXXxvg90e4f4grEUmB27GisAqfkdwnr/F2kR8UEEbY1jMe+02CNpyG0pWvL2oiNG4OE6004DX4aIh/XSl+w==","signatures":[{"sig":"MEUCICOnL+H0lcGgdkvtdq2RtSRYu2Kxz2ccpYvJ1by2xMmuAiEAgJGH+i+sO+8C1HpfUUZB5D/e8qLgLdKMB7CLpyIgMBQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXL6iCRA9TVsSAnZWagAAwLYP/RfO4V7VhKT0pED45D81\nKIZjPYU4k64MioFwa9N8Ke9pJ5c+4Kh911tTpqKtRvuRQXk0HKUtLzxy99GX\nWyZK/ZxwZjIeE01X/Yf9//sxWnPXnDUy3C/HAxV2usKhLFQdjol1EsoaYr3i\n0YKdGIdu06f9pv1d4tz2lEdXj7xLf8L3Y4jqdO0bqWehqhnQGW58VoMgFRrd\n1ncQIk7dFpkkXymzs5jao80geWh2hKoltJ7+SugtK0kfiMz3OwhNGZfl7ZcX\nYkGFpEWfj+YwDffVKVz6UctprdxO8h+XMm52jVjcknvbKHlsOY2ftuObMWA6\nsQ01CWm6Z4dUaaupyRsyRMqeqin6PYmGzlpHIclE69nEKBhIv6bquHdQPp4k\nGMw2ZI03u1B3HI+ES7NNcm0Gk8nuZDCIQEOGRT0LGsHEb3F32I0lx1barxRf\nQxnvE9p/QDH92kF2s6OgjcSzVIE/aQ4nwnGCJyvb9lcPbxqFtJt24e8jAXRS\nBubF50sLHN3HGH6Aik9XR/yxSvuZ4YGhgUDMcAs+ZB9aj2LoTub0RnbPZzdb\nnZ/Ejimh/4P/CL9YwRl+HuJ9aBEv9Om2t8qDmdcOesYxL7c83h/2n9QWM4ZP\nlJ4r+lbAqKsLzSTcYFF2vLPF/q2h0KaqItZkKJnWMcaa24BpKrIuqrqVQv8k\n8g4X\r\n=9uJq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6894adfc5fed1c90d29adc5190cd7bf3868e3b2f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.50_1616690850301_0.0596179442000786","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.50-renovate-balena-jellyfish-environment-4-x-11a9422aa2b9972b95f2ec0c115b59373a171dd1":{"name":"@balena/jellyfish-test-harness","version":"1.1.50-renovate-balena-jellyfish-environment-4-x-11a9422aa2b9972b95f2ec0c115b59373a171dd1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.50-renovate-balena-jellyfish-environment-4-x-11a9422aa2b9972b95f2ec0c115b59373a171dd1","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04c4f68e95dce2c63429806ec48b097932c75907","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.50-renovate-balena-jellyfish-environment-4-x-11a9422aa2b9972b95f2ec0c115b59373a171dd1.tgz","fileCount":18,"integrity":"sha512-LGK777ltWZiQbveJgb+dmue+cmvEFP+Aq0ng2p06ocNnaTiahaVy3+KEQXA9CWykLA/eN7TxloMNM8k9jZ13Fg==","signatures":[{"sig":"MEUCIQDuF2kRlxIwcJHEbIp9rJKNqtAzUOJzsnHOs5YpCfeYTwIgfauU3u0r5t67199yxB176ql8UzqYFyLcPWAiH3cQTpg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXL9uCRA9TVsSAnZWagAAXAsP/1rhJbFBXqGS72MPoL0l\nIjvyFYpSEq8cGKzHBoKvRw7SiSxR1eMamfJ8mA3HYavWQpR0+SMwoqWXTKzj\nCxdn6drcC+4+ZkiVNBEyrLMvSyOFKprwfjSZOIxouYfncf2dI0NEMEWE70DB\nAB5IZE56+CBhTtTPv8iNfZQy7eeDa9FHbIC1hc2sX7YzFok3SlabACyS9Fzh\nIpj8R0+FdWIr55I3p99zW2JsdZLbyFJCbQkcG3xaDNJ6AncUqjhXRAi8pV9Q\nxewSgzwgbnpfMK3LN/oA632ltFRZe2ULdPVPtaRiAaKhW8igqMA71myhvaPt\nTS8XlkzWbqToIYBr8kUEG3OgcCsC327QhIAODEBrVJY8zpOhIOSbnaVWBpei\nwT5o/2z0iuqdqJukiOp5ep+fjsTf9z/Eh4JxISuGUtQjJ0psATiHrKAjpc8o\nck1yfTnXRZUVMvh+nyUtVxsTHLM6rO6UINKZs/3Svo+hUA6giipWA2FmYlXg\nJMXbF8ZxoMPnenXUOY4ROaggiOkDQ+PhwNTGGd7YYBkJW8U74OlaF9hp/EpO\npOif7/zAjafhZzf4tD9wpHpnUIv/ZyV2U72KmXAvEaT52Js5vMkFjPTCaFbY\nAmcILKE81n4JMNHyT37pltY9U8bTeVCi5Lt9hFvl0RLsNl9qr+yyp18laqox\nTfgT\r\n=UOrT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"11a9422aa2b9972b95f2ec0c115b59373a171dd1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^4.0.4","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.50-renovate-balena-jellyfish-environment-4-x-11a9422aa2b9972b95f2ec0c115b59373a171dd1_1616691053649_0.2890620302659477","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.51-renovate-balena-jellyfish-plugin-base-2-x-746a5d5159ec36bc53ab3163947cf0818364c0fa":{"name":"@balena/jellyfish-test-harness","version":"1.1.51-renovate-balena-jellyfish-plugin-base-2-x-746a5d5159ec36bc53ab3163947cf0818364c0fa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.51-renovate-balena-jellyfish-plugin-base-2-x-746a5d5159ec36bc53ab3163947cf0818364c0fa","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fa3bf13bc10d33f1ba127c7d7191dd2c409b1da2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.51-renovate-balena-jellyfish-plugin-base-2-x-746a5d5159ec36bc53ab3163947cf0818364c0fa.tgz","fileCount":18,"integrity":"sha512-JT4esBLZCslsocx7ocekRqj8M3T0lNbf92XsMXC+sAJrKbXhcWxJ9JGRdiEy39YPN1Y/HFZmMIritTUHI//Zhw==","signatures":[{"sig":"MEYCIQDaus5mYVUGVVru3JTce2KBLpNlRzGLyhKC3F5kG7mCWgIhALymwI3PnoBp9Jty1V72xc/ScXvpQWow/FkO/2xiUdlt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXL+FCRA9TVsSAnZWagAAmp8P/2nB21VI2r+7DaAILwHo\nqVGVbfbnmuIEsozwfscCFAja9RacIdKJ8UMKdXx9VjGfTdsaj6KQllKik9pi\nA8mz7ha2o3/1RmOxumsPmflSOdg5N0G5hIQhQ9/Os+9YsBKY72LQyCRKJ5WR\n0zLR6+2f2axTdF32CGbuDzQm+q7MfazatDJ61O8jAeEYAPc6dSBy+mFBJ2vL\nqMocA4BZtyZbt3OVzCmEPn3C//dFDYymoFcX15PUj02IJs6G27/Jl2rS87hv\nuWOSVFGfURn4sd4YMYSze0Ie9jnJO8CZsVLDzgx21oG8Vc2t6E37dxP8Gq8l\nx/oidEn39hpSvu4KGX4MhOsxhSZFHvuspehZijtpiZIM/tihq+bdKExksj5M\nghUP5MLLW/VXy60qCIQAyu0nx8DJp1woyzTdN9wo0B51cEIADyi5tSGsiWFP\nh5skyrvLLQmetwwjgOjeD6dq5bwWPVTVrva0snToqhCbudLXE5wMmuzyij28\nUSCcUxrmuz40mq19mnCx9rm3sD7UuxAUNTAhTTzipvzE4iSCeERDEozoko00\nrJJ0aAtb9F8AdAs9PbY3hAM6O4tCwqke06uPlqZ/dysWqKclTBEi0krIoAdL\nIbBDefZC0Vry8uVh4ZDj8bT42fnKodfrwZyDZYU6UB18c//OJeRvHHGwu/bu\nilMa\r\n=+Yb5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"746a5d5159ec36bc53ab3163947cf0818364c0fa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.51-renovate-balena-jellyfish-plugin-base-2-x-746a5d5159ec36bc53ab3163947cf0818364c0fa_1616691076680_0.5211882328734361","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.51-renovate-balena-jellyfish-environment-4-x-8158ef675895b31827f4712fbc66fa3ebee88960":{"name":"@balena/jellyfish-test-harness","version":"1.1.51-renovate-balena-jellyfish-environment-4-x-8158ef675895b31827f4712fbc66fa3ebee88960","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.51-renovate-balena-jellyfish-environment-4-x-8158ef675895b31827f4712fbc66fa3ebee88960","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c529f68ffd3cb50674c7daab15f2db22a2aeb4e3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.51-renovate-balena-jellyfish-environment-4-x-8158ef675895b31827f4712fbc66fa3ebee88960.tgz","fileCount":18,"integrity":"sha512-8qqP/rEagS3hS3GXEdGI6tIjTEcvNsFL1EWSBkjH4z4h6UUuwbA+EIQUXCi1wmjql7lLd2dBncCsAFltsHkT1A==","signatures":[{"sig":"MEUCICgyc7zUzMGhga+QAdJiWG79GZ0ZCCq3vbzMV3jcwff8AiEA69dMfk7Ha/VNMoM2iLEyTCzpKPIVpZhQrqMxywrNEoM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXMAHCRA9TVsSAnZWagAAeXwP/iyQqhFjEZhuy8+Kv+6z\nlqTX8IxUv5iE2cnfx371fplcEP7iqWYCXpzaFcI1JIH0/fdnWkTbpypBBeia\n5RqmlMyI5QOWEg2JRxF+tz6Bz/A5jxPLmfedKjz/YbMMW/ZgVTL7oWgi5Daz\nv8GkHvTOv/HLfbZ+zX//TJGVU9sTFlT4GVeOdRkv4mwDlX5w7tKku2utXtx4\nmPXxHsXpulinf6jhnxgfpSE9MFS7l3KGvyS7bSyParE3p3GeJH1Xeief47/I\nLEtC/AsvMUAgt4NF9O6YAueJDce/3JXi/NLee8sAR8O/WJPd1NEJH/MD/V9r\nAyiM/VecSSNLBbiGrR71dnhRF7pt37VEW5l9jwRFb95yusGSzcUOxAzQEPtU\nm+7xdFjx+YTKEqDgBiy5cMnCfeSqFv/u9AKtPFOEBrG3gP5aO9VgzzNPUpNU\nqfmJB55SC22QgezXICICZh3TXhftDSr68qKbK1KBgq2iB9CimSGtT1lS/12t\n6WC64QHQ1Vt/psv/8kH1nzFkAnxoVNih5XyNip3mnwxKfLnDcg45mB+ufXbH\nAZxHxPE77mqWkeXhj+13BxeaYD8xKgR6oBb64v2tHvts4nJxLL+IA244MqCK\nxQZFBJknolelMhsLPebm2vwJkehhCOVnrKuUJcDTuiQwIAVu6YN2dMPy2rLV\nMrde\r\n=1mdX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8158ef675895b31827f4712fbc66fa3ebee88960","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.26","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.32","@balena/jellyfish-environment":"^4.0.4","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.51-renovate-balena-jellyfish-environment-4-x-8158ef675895b31827f4712fbc66fa3ebee88960_1616691206634_0.15814405037105006","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.51-renovate-non-major-b6c639f7321682f5e6f7a88172be917469e268d0":{"name":"@balena/jellyfish-test-harness","version":"1.1.51-renovate-non-major-b6c639f7321682f5e6f7a88172be917469e268d0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.51-renovate-non-major-b6c639f7321682f5e6f7a88172be917469e268d0","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d485b22ae9e9c9e475e181acdfa138fb9a921f9f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.51-renovate-non-major-b6c639f7321682f5e6f7a88172be917469e268d0.tgz","fileCount":18,"integrity":"sha512-P+IaFqvKqvhNfOO3EmiMV2MWjVr1cJZXM+LSOFCau2nyHdY5rlQjjDlLdJOfQR6L2EMOcV0ku0ER126jJZ8+eA==","signatures":[{"sig":"MEYCIQD5snId9x/Ed4Gy6G85WPGNzxQGwLtnAAaDgxiqYwow+gIhAIrTYGRIxcF3lKWc5AAPf53Wm0Xq86B2UuZ1TN50cKui","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43650,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXOKCCRA9TVsSAnZWagAA8TYP+gIsvWx/iRmFyD5/pW35\nRpNep68l//AVP+DC95WTOEXLYKhpMjDaedPSvAxQ+5dIivRcZ6EqCO8MFTdu\nS8Ho8Kweyqj5BSHuJ1FaqdGfW4Rld22GW74n/sRXDkr2OCFxGWyAUcU0YBqY\niemIrmQbjxTq3zxhA+U3DxGhWN0DOEBIcRjCSUA79fXfKTeDAHYLCLGliqCW\nTAMbZ3+d1BTAhRJDiO1nmq9bzphMcYWd04+ovbl8Os2INxW0GykxOLv+wCLL\nLvqVMQmHSn/yBCosQ51ADQkqAJVKygiSL6VQoREX7vvzozZ20CGBsj8tpGfH\n6+LLzoGW5RjtbpkhogjNo/EJSIe+miz4jfQE5o5qLGMfDsdl0NUJp/PHd35+\nGdya7qfuMLXIOdu/ehyXw9iVOFrM6GbT9cUZgcu3iVSGeL6QOUa7FrkFi1jj\nOjRgQ8g+zs8UJUWWJ7dM5xk5qDj5fHwX7EKromI0Opa4bd/WNZ9ch4Oy26VI\npCT/y1ImkSz2pk+DL/oObPVxXZDsKFr4Uz2juJK+WHS2dbVB60b3uF0U8jI6\ngclZiWum4cDiCyf4wz+ckGKq/V/eOVPYuuQGR/RkgHJn2Dcz5URmlJKFR7ra\nWkGYGOkhSE/O2AWapx3A2mbEqU1rdm+ICYh2QxRS6YvgjkrdUJfwZzp/b2Vk\nwtRB\r\n=4Jg0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b6c639f7321682f5e6f7a88172be917469e268d0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.51-renovate-non-major-b6c639f7321682f5e6f7a88172be917469e268d0_1616700033548_0.8028588904583414","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.51":{"name":"@balena/jellyfish-test-harness","version":"1.1.51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.51","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09c640f79fd9a41899785ece2f522d950c559712","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.51.tgz","fileCount":18,"integrity":"sha512-jiZa5W9TqJRSb98JvlUMi7Vjx8r7nTh9xAd+KTZZpLX0v8DbhDQlessFMumJpT4P34iJL7WwpCKP0DUcYoujVA==","signatures":[{"sig":"MEUCIQDwRnJhYICdXslu1udQAn/P+xfiTy95XQlRdUiAW6qSQgIgDeGatQ7TF4q6mOZ56g9sBoZzsMWdb54jfZBOMgs4ekQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43590,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXOMjCRA9TVsSAnZWagAAs9AP/20mte/N+0OQgZrFThDU\noHhmYUZx0WougaVu5/M20fA2uWpbxfSa3MKu92mBBn+KQ4ArBcurXLFMdKD+\nzQ46qJ7GhznXWe/YvhinbEABX0divy7Ow6bYNHRf6kVHB6hlLPymdxFiiZM3\nqVvWjnV05/cLD4kP4P+eiJF24a7IJyvcUYEzTNsa9mjufg/WLzlE9lwdOD+e\nTm586vPLWe/xkh7nqG/uol4p8K5DGfiMm0UjIQIA9Y+a5Yvxtfyz7V7xfCPJ\n0LYE0ZQoAjud6xO/9V//I+WCoQxpcrHjqQ5UHkO+Vfu8h+9I35ihOz5E1J/Z\ns5b8hcNQu+gSg0eepDNN4E7LouQLOybaY7WRniMVC6h93FXKUw1CSeK4mU7O\nMQcsCqKnMSoSTb10ty8RUrb/4CEZxMdQ5UwyTvpC6QN+Hx5apCJkjrn6jKC2\nffUrSHLGVyiRbRIWV9k3nnZc+Q3lQwQUUIstiZ2PozCF5yEVUB3ByJ2zVUz9\nsWUMP1LBV1TYac10r8Bza5um3Q3/Xstipex+LwnN4NE6sgqphhtX2TMLPAot\nd3hAD3idcgDyHSdDtEQp3E5elvsPavdyFn+9x0f35X72TrQ5TUN6HUETVaQ1\nCSgPcqNERhuv5O4XCyMb45FRbisj9ENXs8TihfpNsHt3677B4QUHEp+oB33K\nfu0m\r\n=XGfw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f0de2b4d28dc00ffeee70dae19c4ba976f3dd26a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.51_1616700195392_0.29574662266051366","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.52-renovate-balena-jellyfish-environment-4-x-4277b18766a3a5f9f2fdb8dfff0f61853207b358":{"name":"@balena/jellyfish-test-harness","version":"1.1.52-renovate-balena-jellyfish-environment-4-x-4277b18766a3a5f9f2fdb8dfff0f61853207b358","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.52-renovate-balena-jellyfish-environment-4-x-4277b18766a3a5f9f2fdb8dfff0f61853207b358","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e054d17183992e53c69afa6b115113934192cc5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.52-renovate-balena-jellyfish-environment-4-x-4277b18766a3a5f9f2fdb8dfff0f61853207b358.tgz","fileCount":18,"integrity":"sha512-BP9Rlaxzs1dEQsr9tiMQyuKxWeQrLzX6Zzs8PTwpKctbUCSQTHZFNmJqfsxlijxuC19+ahkVLtznX34OfBCXjQ==","signatures":[{"sig":"MEYCIQC+9i00auLmYQK413cLMbpxN1pLZve2b3Z6gVqUWTQnnQIhAJ7LoSI2dY1BPbhni+H+ZTRUcQalGLM1g39E4EZ2NeyP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXOQTCRA9TVsSAnZWagAA+JsP/j65qPO0ELDkJY27+e/s\nzUVAQ3XN5ywjk1u0sB7F5uhq0uEjrPG2HEUCSAvaG3Ms6BLWryXefmgLfOvf\nb7IkzP7+/6gqhdyALx35EC08BlXEm8X0TUWEv9qUSfgSQ/SiS+hVrC4keBeD\nORzkRA4/rC55Zn5mM0XFRVmvaG0/JHA8pIV3xc+SE1NzjRELKKQqbjFIohrI\nNzA7Ot7HgWVRMoVKxkaHqf91nXbgmdbQ4yefVW8MbOKX0B4foGz+3mlC5vmL\nOPAs5VQqClgQadAxrCUGgFt/99cYd3/yIzRMcEFjFmThEMu9NIBcua3QdDDv\ncz/iiwnpGRPXCU06IZnIOL8VAROx9LZ7q4OXibnYpNCYvpZF0toWej6Fsd7d\ngIUKZ1vLROSnS6+OZfZjDkQPhhcr4ydTAQnLEYbRgaxD1DkR16e6DFE/OxRA\n6JGyBmFbA6Dkp9fM379JIU9IFa1jyp8ZiRN/8UGicTZ+6qixbtNYOiiWtPf4\ntbOjQCjV8FImzsuSCqbBRCxfdHwBw8KNBkg3bXA3m9V6rmdq9nsV9ov1+mv/\nH8qhoVttyEFt++rrdlw+AV53AfhGTbmY9+D4ny+yviU8CbQ75AugrICFGegV\nKT3pyPe0fBZ4W8M1CzQBKduLyDwEQPAWrAC8cI/22LCgPa4AEv2PtGEyxYGh\nr4UH\r\n=EMb6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4277b18766a3a5f9f2fdb8dfff0f61853207b358","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^4.0.4","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.52-renovate-balena-jellyfish-environment-4-x-4277b18766a3a5f9f2fdb8dfff0f61853207b358_1616700434701_0.08480334376398657","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.52-renovate-balena-jellyfish-plugin-base-2-x-85f55673aefeed3a5837b663915fcc187daa06b4":{"name":"@balena/jellyfish-test-harness","version":"1.1.52-renovate-balena-jellyfish-plugin-base-2-x-85f55673aefeed3a5837b663915fcc187daa06b4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.52-renovate-balena-jellyfish-plugin-base-2-x-85f55673aefeed3a5837b663915fcc187daa06b4","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a5c51db2ae3c734fa1510ba7e47bfb094ff402a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.52-renovate-balena-jellyfish-plugin-base-2-x-85f55673aefeed3a5837b663915fcc187daa06b4.tgz","fileCount":18,"integrity":"sha512-BUmnI0Qrk4BEGnlLNm1pOLVAVh28nUzGTBX8jdPQBAXZZYS1hfJv8dzHisS33YQJHjSztb6tjcyPM/RLEzIJFA==","signatures":[{"sig":"MEUCICodZenvwGztzv0wwlE2YXcdSyo7eBqGzwIaIkQ4ChIBAiEAkpGDTItuZ30+dmMhlgvA9EQbKhCb9m1D+SWbc3qpsH4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXORQCRA9TVsSAnZWagAApWsP/iHFU7E/WLoASmVB6Tld\nZqv8Xp7Sh0pwjlIQ40eH6TfGqbx/dUbhDNzzvFWe0npLQc99T/ghPGngEpZW\n6ZcowHJ98CwTYUo6lUpsqOnnXOJ5VKk2APWWhjm6Fw8G9TvOUvNhHb7fBhJ9\nNQalDJLD5wYOx3WjtIrCMTwU2MVJ0F3ocILKbQPrygus5tJrpGmA94TG6Dib\nWCoMLA9t4EoW7UBsWLQqg/39cLvQEQ4O4x850VYiXASx+UCQODsIqPCarop+\nyoNpKbDGwW5p0oKMxt+vnXE58yY5R+hks7W7pdnslLJrF/nnIpvLEZtTMmAr\n6GBSDyTCvsCpTU5JH44rO9LMiL6q87SNiRy2MetQxUMs5w0FWZCwDMF8va60\nbM/HiE6WFuw5hIt/eIZisvsSswRNWEV5DQDel9v0i5Y+g6+drXypXujJNO9o\nT2dyCWkHtUolrHi9PXamdVokNsO7UqifWJ6k71veGk3EjDAhuzd+zfEKmHc/\n9Fp+Rrw7o35TXBpfobVLZUlNLcEYq/EJ6davMxaNGdPp4JG3NOamUbcB39vt\n2ICucqqio3CBfmAkHmk9AJgZVWpLcZGYQovcqM1j1XSPgHACRjLZQ+0wxdb9\nDdlmc09TC6H+kT4VD45gyaIDBvq6UZORDespCn3A3eM7FTH3mGaocsaQBEcT\nkXPq\r\n=AVEr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"85f55673aefeed3a5837b663915fcc187daa06b4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.52-renovate-balena-jellyfish-plugin-base-2-x-85f55673aefeed3a5837b663915fcc187daa06b4_1616700495775_0.33272750461336775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.52-renovate-balena-jellyfish-environment-4-x-d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f":{"name":"@balena/jellyfish-test-harness","version":"1.1.52-renovate-balena-jellyfish-environment-4-x-d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.52-renovate-balena-jellyfish-environment-4-x-d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f3dae77ac45a97c13b0ddff960a7a4459a0e36a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.52-renovate-balena-jellyfish-environment-4-x-d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f.tgz","fileCount":18,"integrity":"sha512-gfzPm3A8QSVsfNmiWMZayHMNeVSImkQBTfh4KlK7E+5bX70Ll5cdu0HA67tMSioPCdTYPkLYU507bYdjFNLzRA==","signatures":[{"sig":"MEUCIHx1thqA3bscKdO9Kgz/XTEhyHHLnYDVIzP4Hc51BQtKAiEAgm1qtyr5+HvPCBS51UdxlVPmiqSM85cNZDeXBp5guXc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXOVDCRA9TVsSAnZWagAAdJcP/jfqxCC5EEYKeRRB87jy\nvFLbOKVodavEIZv3KUBQQxODcVN2qTbeBDW5WJtn4BQ8jkpiDnfjIYGXmCyJ\nH7lRKY5UDRERJ8OPYrNrpqkDcEFGhgTOxbLpMaXNWb0VdLogI/oKz+2gz2Wk\n5AlJTRzT1xXx3rh+ZmgnGN1FA+Q6ffURRBRxwys7YGbYgl4zhndwQ1gCi/mO\nBbCV3OeFI293HM1xMzBq7BBI1djbnz9SPKIFRi0orQRSqwZP4btaZIhcew9i\n65buZsUb8lzEVqMomsY2zrA7mQTOCaEMGBnr/X1lLshydL3DQsGrMbFOOute\ne+O78SSBDhRXVltraakdpjAlFG6Sr1Jfku/JcgoTQmOnFNNk8DiBim7ezSkt\nKRV2aMlhsid7Zosla6CMW2uXcjp4Zq5oH7kNda4DO+kwLpK9DJI+OmvxtJmn\nla/zH6CoVomVd8LuyPGPn8CqeyE4wT/e09/pA1TBfrIPFIQ50lTvJWkrYuAG\nToeMgA+eungMG9nF0mV9gcJ9sBaXSldZfIr8nvNyuUuKwI01O7n2/KkyGYHL\nb+1dOZs1QkfKTBWxojD5f2+O3aeeDAnSkuMV+gRPH3QM/MhJ5F56DZ9Uc6d3\nMzzVXUQPdGi2283IuPtlGNjrHxZiWsRWGUmYcjEaTOIOPaMc+Cq68tRb9Xx7\n016M\r\n=RqPE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.52-renovate-balena-jellyfish-environment-4-x-d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f_1616700739131_0.3834386774590379","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.52-renovate-non-major-f03196561448f6bb2eeaed110fc8b56253e2bf6f":{"name":"@balena/jellyfish-test-harness","version":"1.1.52-renovate-non-major-f03196561448f6bb2eeaed110fc8b56253e2bf6f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.52-renovate-non-major-f03196561448f6bb2eeaed110fc8b56253e2bf6f","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bbfaa9116799fc760e32cd567db9606f572c0556","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.52-renovate-non-major-f03196561448f6bb2eeaed110fc8b56253e2bf6f.tgz","fileCount":18,"integrity":"sha512-z6ddiE0vrxBg4DnSrYqGCpwL1Rdtx3bG8/vwMIZyjsuGOHbg7mf0LQIxsG7+efgCr/scK/TfBo5W8RTKBLAl6g==","signatures":[{"sig":"MEUCIFkLyHLcw6SN9SlrCuAKCQPYdhdFknTVblGSqCacnim+AiEA1EqVjc/sxlcZJ5S8a030wsVZq+QyQBqny6qVJ8c/VPI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXQpVCRA9TVsSAnZWagAAyZ4P/2bmAGzO4gQsCyOzsWqG\nf2Y8cYtvnPLhF7hgriBwmRS9Key5XMeBkJ2UzHMCVkoKFXNy89n8ITjylT/O\nfrvjIdk6oyRt5BSCkzasvPCV+WUlSeJJLBFTsQmG+5uTaLlg8uLDCnM5maGO\nphb9pheWXCnpKWnlm20URv1U2s1ksM5mmJDDDdUN2/7ub9FdKP7zGF0iqNmU\nSq7svSa26ixkU1JrLbA8SoyNIk7mjpHI68x/PwkHjoZHFXsINgLFyUHvVXxY\nLrdCM0WthXkyN7dKIJak54XGzmnfOEheMd9FD6Od3GXyQHTfMQRgR4qIa6UG\nP5yXgaGqPycbBAuP0Y3iSQek7UMqBWVaj9TNO6+E8qBJvKIf22CsGXZlZSn0\negjWbDVugwbJg9YWMiZy+GJUSdfS9uVdkPMiStHdqPb31D9+9Qyl6nNcHw7n\nf2KlsaJCkF7/HuWd2MApYitkY2LSLrRZyaSj4ajAB0iVggG65jA86QeISoiq\nzPOR5K27xEVHaQmhMgmQ0cAKTloRyj2Ag6Ae83N/3OuVY8g/8kPDmXv2wfTF\ngPYNKpGw3R+c99RNddPwlMtQhpKuBKj1xipaWSIhhiiidPUwP6uKuOEogF87\nUPaDaBtvkDBrQfIFMoQpYLB+aDSf5+nMOFosFheJ5hxRRXBMyTIDiFQxiTlz\nS9Tt\r\n=VZav\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f03196561448f6bb2eeaed110fc8b56253e2bf6f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.15","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.52-renovate-non-major-f03196561448f6bb2eeaed110fc8b56253e2bf6f_1616710228833_0.635919427429368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.52-renovate-balena-jellyfish-plugin-base-2-x-cf46240292be02d98d815ec5ad7d52562d669ff5":{"name":"@balena/jellyfish-test-harness","version":"1.1.52-renovate-balena-jellyfish-plugin-base-2-x-cf46240292be02d98d815ec5ad7d52562d669ff5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.52-renovate-balena-jellyfish-plugin-base-2-x-cf46240292be02d98d815ec5ad7d52562d669ff5","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"92590886a710be4b79831e7d7a3ac66bb458e517","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.52-renovate-balena-jellyfish-plugin-base-2-x-cf46240292be02d98d815ec5ad7d52562d669ff5.tgz","fileCount":18,"integrity":"sha512-jrf1/Gd8iQU1nn9iskOuv/JM4bjFtrRPC6KbjcHTPZM6GO3xqs2nes8LeRN+NY0biGWnwuCFDORC8DhQxavoNA==","signatures":[{"sig":"MEQCIFAwgkyv9p8JehcQ/ronvPL3ssk2Uv8aFLJGyXy6fXaNAiBBWXJp3haRAcPjcHeR1v8Q/zxzNDTPfx8oe7PLXKrjlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXQqdCRA9TVsSAnZWagAAtGkP/jz314Lwh/HTazGLJzG0\nVY0oBgvDX49/XyG4yHTnIYOFgwo1n5QqlLGVlHKI4zGhyhjOnIiMxowGNvS2\nbmTjZQ/QY6ySqgplDPLk2GsB7J0zg+8RxDc34BCqN/yCvLQ1B/9kNZBbjKgJ\naw4RHAbjDt5Qe7pkfYotL6k4YSa4pVK8ABxCBFuNXVIViOUU/6AZc2nk9Cm3\nP8rQ+zqDFnH/cK8I3AakT6TatrXSsTf6Sp0osk85fnsTwnnK/Cq3AC6ZttjT\nH9ka2VkUinaggBb2kiND9BXLbZQMUyqLgiiRvg3PvmAgJjKWTyAba0Qvcuxl\nQ8sGoMXcc1JiwJsbHRi9Njn1/lASOKZXrCct9UMp8EoDJI8s9dRDZOWFtkws\nIOwtgllVcxOZ5oMBjkbudv/4aW+u+lUF8MfJwd+50HptGsynci+Hl1B65Kyw\nOEaImlNkMBiCIMGQRnVN0lHFqjlEQzrbBGwjDt42eDAVC+dwI0gNsA5RKuvr\ndpS2CSR0E6QPuhUGo/D/UU+KYrHJVLDRwHxcgpGqIbk0nmjZd9NkalHlrUr2\nutKUTYmMw/pJ2EppaH2v4t48DPxy5wEooPs27Qq9mpvA8HB1j37QhtriTvqt\nZvrBB+37yjh8sgUGdTM0R5lISuZ4ILJuuu7V62IcQPAmF3mfpOVZeEuubu8r\nzQ4l\r\n=ddI0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cf46240292be02d98d815ec5ad7d52562d669ff5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.14","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.77","@balena/jellyfish-queue":"0.0.484","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.8"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.52-renovate-balena-jellyfish-plugin-base-2-x-cf46240292be02d98d815ec5ad7d52562d669ff5_1616710300573_0.7150810897659685","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.52":{"name":"@balena/jellyfish-test-harness","version":"1.1.52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.52","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"70ca0ca987a4b26ecad19864f0e0cf45392f7ca8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.52.tgz","fileCount":18,"integrity":"sha512-yTUvNsLu38K5ec2QK5HfNCrlRmgnY9x8i2aUPM2eedEFK4tIiUTbyQvR6APvg26lMjmEjDi0p9Gwj2+UpQWRSA==","signatures":[{"sig":"MEYCIQD7a+kou6HAXK/0g6liAlasaYl1j2qPElEDlKEm2TgO6QIhANE7yAqjQv7hDnxaviPcMCtRd8AgWMhIYkUPy639wTld","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43659,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXQsfCRA9TVsSAnZWagAAs08P/jpgtp7axU/u/pryBExd\nDBRcRECJHlnekKEImqWaQImLuAgMoJBJL84ZICCiiYpF9ZHy6d0DWWTd2Jhj\nL9RM871aPHwQ3nlyjNzTK39dE60ux7cE93hFcNByFArI4XZeEdTOVJLPnUWd\nYp/yKmSy+uwmf7fceatiZKxEFQbCtMS1z9OWjZ55xVgiVxNjjTseP16rXbUm\nkIhAfPkkRFql1ZewEbo3CUe6V4pS4O9f0i1eXTJeiW8eWDvqheC2/PfTBw7t\nq6hwYLmP9Z34qX785GrddDxmUCRn2nLan0ZwdDsnbJNT3+/4QGmqIqbUqm7A\nyDBzBXT771wM6ZuOEQrvSD4WezXBK/VGaqwgrS5lfqE4Tnxk0nSRKu7bZwCR\nwkHfuIoIoLKeY8JblpZuS5eKttp+50za78EG8Qi05loJc1VWvedTXokXW9gE\nOs9Ig1c/NNuBZWhvvou9sfguh/gWdA6pAdnWfw+aKtTtV4Bk8IBFZ7xQN798\nI6Haxo2kgY1Jyn/Kzt1IJEpTgYQITMnS2ZAnFPP5cFNo2QBS/DqH/Eay/gDr\ncEzgcRU0KYCcydYWs3Iyvuhn+HGAjuFMVN4L5PgKnF/yQumhbPcepS+OzHQL\nX8jBpVR32eP+sOaQ3knzi6EBGRIHEdzG9wFVAxv3M44Hzg1kK29ivkSfl4b8\nTH1y\r\n=jC3M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bb024d5b340f4cdd3dcdb91e60851bf98fb35a77","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.15","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.52_1616710431094_0.8677741667875887","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.53-renovate-balena-jellyfish-environment-4-x-290c2f9e0c9aa7987764835d346d3f7b7b3f7d25":{"name":"@balena/jellyfish-test-harness","version":"1.1.53-renovate-balena-jellyfish-environment-4-x-290c2f9e0c9aa7987764835d346d3f7b7b3f7d25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.53-renovate-balena-jellyfish-environment-4-x-290c2f9e0c9aa7987764835d346d3f7b7b3f7d25","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b68cd8c8b39451f52d00fce2e90167eb9f48966","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.53-renovate-balena-jellyfish-environment-4-x-290c2f9e0c9aa7987764835d346d3f7b7b3f7d25.tgz","fileCount":18,"integrity":"sha512-x/AChZfnv/njHN1hLtM8HpD8On13ykQXSodraM5VVMh//LVvdKpm6QYFcpINqCTSeXt5GnoJMQB4V+nAzdfxMg==","signatures":[{"sig":"MEYCIQDSMyCB5rMB+2paExj4eeKw20LZkGyh6QNd+2xt0gIwHwIhAIhr9YfE1nUeT7d94IVddHLQjqF5uGd2jbAr8JiEzBZ8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXQwNCRA9TVsSAnZWagAARPkP/2Gpe6mFN4WlUhjZE9OK\n8/Js06jSgOefZNoI8TzN/Fh0tCyLEmdJn0u5vJ5WWtZKR4fiehS+cUflnP/0\nOtnBvnjO5+kME7jBBRWnQ/l6e3vPMzqwxA3SDFMeaYa/Rr/C8IAjnU+v410i\nlsVGAp1KVv7pTY+KBSgSxQ9CDQpW2c2czzfX2fkhkforLuUYYgfcZvyEvEQS\nCcgbtBxIiV2c9rdwO3Z5zg+trcE/WH16rx1VOSll3zZhf+GQ8MkP8I/PseSw\nkw751X4T/8OefrEuz+7r38oZqOHoxs+ZivlBMfnog7wiElPJ+KYyftKy9AE/\nQU9DPQtm7GzCJWqULmdEIO20Vq6DMts7IWS4vb05oAnaV9625LVyKx8eYLYS\nfUP39IRBegS+v+sRUtY6r15R7gpKT1xP3B3zOmdiYTM1pb5jcJ67BkBbVAvG\nPOpZJzWa7e+UI5uMkTydqrG0V515cWruXxP8y9OM+wnPei4wauAXmWhrq+F/\nRiHMkzRxtylfCH8D5qqETBllRf8F4H8pWzz/kOW4ZEVQKBxmsQILsj9zEkvT\njSqlNWSSLzvW2Y9LiZ0qaHN3rWb1Ty5iBDXZRs6irUX1d6Yh0o4FZlUm1+Rx\nEgyuTbBc3cfigZmySNKNwymZ8bySYtPYrlHmmbe8i6MVdxdKx116AgMd1MFE\ngpbK\r\n=A5R2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"290c2f9e0c9aa7987764835d346d3f7b7b3f7d25","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.15","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.53-renovate-balena-jellyfish-environment-4-x-290c2f9e0c9aa7987764835d346d3f7b7b3f7d25_1616710668576_0.1572329376380872","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.53-renovate-balena-jellyfish-plugin-base-2-x-9a0c122728c5fe973722c2dd1a907b6bf77bcf92":{"name":"@balena/jellyfish-test-harness","version":"1.1.53-renovate-balena-jellyfish-plugin-base-2-x-9a0c122728c5fe973722c2dd1a907b6bf77bcf92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.53-renovate-balena-jellyfish-plugin-base-2-x-9a0c122728c5fe973722c2dd1a907b6bf77bcf92","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a56cf9aab27b05ecc54a67dc3f8dcbc4229f393a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.53-renovate-balena-jellyfish-plugin-base-2-x-9a0c122728c5fe973722c2dd1a907b6bf77bcf92.tgz","fileCount":18,"integrity":"sha512-EbXy1ysohl70t8uOulCrPKnrwqsMyaCYQUdz5elMYp26AohdrigKWI7nth3les+HdHcp4zCqsTDzGiR9kc1Q8A==","signatures":[{"sig":"MEUCIBHXg3eTwerXyjQTpbIuCYQlu2/r7PElckl/8IERKOKqAiEA4IE3Q6JjXt8hiR/Y9el1dbldhXb9FAOpYhWfl1FGG34=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXQwmCRA9TVsSAnZWagAAGS4P/jJRUh79P9SPb4N7YqYa\nr40cGwjADMog06aPDHIEAlLyEK9pNKEZD+OIZXPMdlRbjJfJSYD69/X2RkMQ\nNKlBscxdfkjghfafRLVbQYil23W53d2bE6xbz9syUeZl0PWZdjDOCQCDEwJb\nnRSzCasCiMDzkqkkN2FWb0Q+d5Do84uKkN1tuq2+HWg0gawbGDdh+cKEZnYC\nsyMKG4Dhd7KhpwgQY70fQqDefMzQJOzdRKViaejS4U3or+2GwFiFE0i6rYhZ\nCDZt9N86+nkdZkkGHo86uuoWtYrSp/ERP5fTQSYV/WUOmHe5i0JV0U+U74Xp\nT7vidrp48fw5cCjQWYni9hYblrFgJ6DRRKINW7bonRVcZJXUsrit7LfgJ2cP\nV2lsN/EdMroAgMU8icf05gNfNFwG6g14rEspUHozWGmdkBilo7q2yrtRdC8U\nXCrBj4TITf1+pdCZFMYfbooHbfvoP4BeVWM8/7N6DZXxezLQgGux2O5pqhp7\n9+Wzht4rIzBFfR+xsJMI5lOIodr4P2TRrDX567jKgVN3hjiCuuWC5sNneMiE\nqd03yKkKhnmwdEvd9NfAuSxy7zUVQQC2utTA52SkozAJq3owWPC0O2U2Yf4n\nVD6xJ6sr8m0lulnQuFDTgZ1wdF02A2RDkr27uEHAQMn9mIKQEOR4F6HrHcn2\niD00\r\n=Ejnt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a0c122728c5fe973722c2dd1a907b6bf77bcf92","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.15","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.8"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.53-renovate-balena-jellyfish-plugin-base-2-x-9a0c122728c5fe973722c2dd1a907b6bf77bcf92_1616710693612_0.3514695300583792","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.53-renovate-balena-jellyfish-plugin-base-2-x-2313641e147af2b2fd919cad1c837387e994ea16":{"name":"@balena/jellyfish-test-harness","version":"1.1.53-renovate-balena-jellyfish-plugin-base-2-x-2313641e147af2b2fd919cad1c837387e994ea16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.53-renovate-balena-jellyfish-plugin-base-2-x-2313641e147af2b2fd919cad1c837387e994ea16","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8d7997f567826d3a68e09fc99045db5b7f9bbe2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.53-renovate-balena-jellyfish-plugin-base-2-x-2313641e147af2b2fd919cad1c837387e994ea16.tgz","fileCount":18,"integrity":"sha512-UqA4bRwwmxOiO556BdVyiI4fRZXQs+/3RRQ0H8PW8PdOIPsM91lDsJI3932jvIT9ilAoef324GgUwNSp5mzmwA==","signatures":[{"sig":"MEUCIQC6Y315uTPOD56xZNcM+WYhyjfwL4ic4fj43XvO2lKT9wIgS4A8YvMD/fjb6ZFLhGFkEYe3fEHgXUZAsRkGCSavupM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXTegCRA9TVsSAnZWagAA8qoP/2TC0MHoGhLNghgKCjAp\niK4PK8RcJasJes6YkwjSFjL4rpkM3yvR06gb6XrMkn7Lxwr3NeGEUqVTuZNa\ntaAzc9pBphspCMwVfiuVoUSdOUdsY5jrIgbKyKja2GgcVkO3qRmGujCtNWti\n4SYTrOawx+ryUrjCTcAs9iPrQtaZeEBlHRf6+IfT7qVbWrp92zRyrFjmd3PT\nO6NMg2fIanjNhq0IMFuX8h7tbP/UJjl1KDW+a2lyiLPaUXit+JUtneBC25Do\nCfSGk/Z9Thk9RlyYtp6QWd0CTHg3OpCCAKT5BeJYVyCkJe5zucmMXjtN/PoQ\nlhXqoAtZYpCJF50IvNG2HuVa4mrrm3/qBmrW0zkdPMpKr/zzpoXPfPhZJV+6\nQKCTZjbP1pmUH+5Uw2nUlhWyemuxwhR+Obn127FdAnlIf0PUzm69wbveb6gz\njxZJUJLDssb2Uk/4xwyW+OujCZKPiL2BA5Qs9u1wxPE/acBhUM+xhdKuiAbf\nnXdWzaB/aU4j1WObR74BKG4RYi3mT9qmrUYNm46Sh+f3m9e7UYQ0F8weR6k3\nl1gPuJOg47KhsE/SqlmaNcEMV10eZ9oyqFww5T2E9iYUFqlg2Jdbx7LSoVf9\n5/G4mCwDnef7qNyL5E1RLeTxXLOPuH0Bn0Y3bDsZdN26Dx7k2L0vENJqYWjV\nq9p6\r\n=KrFG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2313641e147af2b2fd919cad1c837387e994ea16","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.15","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.53-renovate-balena-jellyfish-plugin-base-2-x-2313641e147af2b2fd919cad1c837387e994ea16_1616721823573_0.9939001959923626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.53-renovate-non-major-2414f767e7213fd21bfa2bf01a464400653a9b05":{"name":"@balena/jellyfish-test-harness","version":"1.1.53-renovate-non-major-2414f767e7213fd21bfa2bf01a464400653a9b05","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.53-renovate-non-major-2414f767e7213fd21bfa2bf01a464400653a9b05","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df1630f4c940fa0e6e6dff548fce33eaa30b045c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.53-renovate-non-major-2414f767e7213fd21bfa2bf01a464400653a9b05.tgz","fileCount":18,"integrity":"sha512-K/5MXpvKMfdCoSFWmFeZ8H2wvrblldj8AG/s8/BwWg7DK0WH7cy8npuVCw+BzQk5xUObygHIylqBKzKRsBlMqQ==","signatures":[{"sig":"MEQCIDd8WkfMuzm2kyDuFMlXGOC2C47NcyNFKon8DZuXwfBRAiAfauUbzmDdkT7aWcy2iKYngldkxB1IcNYtD6Ah8XSCow==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXV4GCRA9TVsSAnZWagAAeh4P/iEJPGrohxIeH59WKhrM\nSZfD27GzOCRjnLDr7n7zM7+Nxc+3/MdXG4gOeDssg0PEDeQLronCR0WgyqoY\niG/RU3CrjJGJ1aSPNTyLhxbTcoYDtTENwVzZysupWN+MFyExmt+zNH2pJgRY\n658rCID/yyMsUN4OhzsCLb298aBUGiHrdm4nRrF2366lD1EJ04UgSmzlcR8m\n8WcVXkNU8NBj2+iMVdXZv2q//VrLkvnfMg7U6SSoBJlIHAYs2s/zdRA8HXRf\nkpGFxP7TRfUA3WkDwvAjBkjy7wcUVj0cdkiutBDLaiOmGq5MhdutfwksRRFD\nL91Ch3FRlKyJTw+TVxpZMN5tdHOrnDjTX9dgbuouGwnkp+FpErGx4P7tr8kW\nFGEfDfi/L7zXaW+mdMoDAZj83gaxV20n4wirbDhKtCpDSGn9w8ybYavs2Fcg\nZV9ItuuqAUjzFIDTggg/uqSj2/HPo7CeH3DAGMuNgxfmbFUsv2JGZzTfNeXc\nKzMHH8MavyycQnzB3Dqj2LwXrX9xxsJfaD5dwZlmyAKc6+Gs1ZP/a1wwQYeH\nsvlqDFHgrSjXI7mRtsukH3zwKIyjqxbQoVD5re3WdTjLMRrxC7f1D6G36Lod\n86LrjOy7qvwj7oau/PnV+w+/7riP03Dc3G1AbQp7pYIAkdcNfhMPkux8XI/x\nsoyR\r\n=pV0F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2414f767e7213fd21bfa2bf01a464400653a9b05","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.53-renovate-non-major-2414f767e7213fd21bfa2bf01a464400653a9b05_1616731654417_0.4435333226397713","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.53":{"name":"@balena/jellyfish-test-harness","version":"1.1.53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.53","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9688fe8ce2b98cb61f01befab1e2c13b39c42f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.53.tgz","fileCount":18,"integrity":"sha512-hdA0Rk0RJffGgkDhK3AUN2gBu49IekEYCRVmQxBSILt750+7TuFIBB180ESu/CiyUD3E/EwYQ13DU2Dilwpbrw==","signatures":[{"sig":"MEUCIEe3ZSAZOlkuQ8BT7dUoHgIGB4g2RgaEYgKX0sQE+JupAiEA+HqE3ZTB6j4tqdehfX0oFZ/7j1fsM82hiKs5QMO74tw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43764,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXV7WCRA9TVsSAnZWagAAuC4P/RzgIkSsTWvh61/s4dh2\n8YTqRekCDp7US+3KRudEzdCTPEHAOHn8l6Hg7pi1bi8QdLc57lZ2CZhIU5TH\niQiq/Bt9hAh+S6Ln/XAdv+ZwfvKF3KBDFMVlmBGNKkuCKm9tDgXr16duC3gw\nggakBu3Mxhebeb1QG1qg57kp1JDizxIpDN3TYYrYRqRuRclLgU+F7Rl9g8Dz\n1E6aFg+aJ3qlwh3q1MWBR+Eb1EBqWKbLbXO9X3NQA4dRTqYFegCxY2pRIkRt\nHr3+A638tC+LhGba43msn723wgX8nMpBz/n5e5PlkoSjqoVV++yW9FXfKymB\n6WJv3zl4klQljSaBOBizwZTQXLXDzSDCqlqNHhnZACM0oG/z+KY0zp6ROZRy\nU9uXbluxpfh/r8PoebhUcJsZ4GoQvW5s2IVr41JUdjnNRU8MH0M1WOtRV5Au\n0HyOaGrpbkkZNHMdOWkzURlnbX0hVxdlF0CdfS4fTUdPBPKRGgcCCe7O/+Kj\nURMAO6FNB7+bmWCwQqGrF+Fb3ZwG3zORxmU3/UlWcxUdfTGAX6qAdruZKXba\nzDmhnC6+eRh0FBhB7zTrDnYg1TVUuww5gLaitIE461+yAw66DPP2NAdsCoqB\nlcty8o03962wvEIcH6P12aD8zbKMFCm+yeSgLJQtAyFl9dp3N76uD2YbtQkN\nnGzw\r\n=8wOg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"56f0b897906fd6aec7d7d3a08b3bee59ebb0bb95","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.53_1616731862187_0.665040494006131","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.54-renovate-balena-jellyfish-environment-4-x-12471b17de4c517ef529ad1505d04e71d38e8e5c":{"name":"@balena/jellyfish-test-harness","version":"1.1.54-renovate-balena-jellyfish-environment-4-x-12471b17de4c517ef529ad1505d04e71d38e8e5c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.54-renovate-balena-jellyfish-environment-4-x-12471b17de4c517ef529ad1505d04e71d38e8e5c","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c28beef98e966bfac022f9cf53244cb501525c2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.54-renovate-balena-jellyfish-environment-4-x-12471b17de4c517ef529ad1505d04e71d38e8e5c.tgz","fileCount":18,"integrity":"sha512-8gJghsHAFb26WpVDQOfjJrPcY+5lrhB/AsZC+OelBmJA6GGTvBsRt4A3igg2MkA9NUn5d7mQT7rpTp+gd0hk4w==","signatures":[{"sig":"MEYCIQC+LRVwW1q+bpanjAhNIrADEZXPIZ34zz4FNOJfcWm9gwIhAOIe+cePwHP5Zad1FgLToobm1RwqvLlNlZfomwka3fd7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43953,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXWADCRA9TVsSAnZWagAAPmkP/2P+fkrcs37ghRoEEZ6C\n4BfTJmXoAgzLSTlXB8t8WF2YjBDNE80rwghpBAuet4RjRSeiolthQdFnK37N\ndsNS+yknptBGwwYDeYeJkJI4J4qsP32yVIWExu1Qqdo9YSpDgQhqjBc2jtkt\nZ+7TS2UOQ3Pi0zTz5Gj+4dlnc9p9uUH5p9EogGMrrWFUMnhZOtaWHdYJU6Z/\n1MFbqae4G3B8DZ19sT5DCctWedDILKv3dC3LHl+gN3bYd/w955KfPIzpkl6+\nmeGCe8aNCEDO+2AMuyi83+2ys4JcbtCf2U9P7dpUKkLX5DK8kG57fjo5owmL\nVm3etFDvOaXvsiGsQZlXb7ErLH5h7aFGTuGy5ByHSrz5SHTNyFAwuZxx+M+U\nRKxtBBXp6SYK+BBicytzBLEsTrhnYqOoGHHCKeA1JPfIy5uvj6UidkIcPRJo\nYWUjEhV4dJFVBkLFoYZoWmUphIQXtImL+1vl0Mn8wMiaHRmImKy4gAaOtlyw\nm/nQ9/+j6IfipJpPL4kBJ2q9+86L6/qbaeAU42tM4RPpVm3p6GVL5Bl4dls3\njn8StcmlR7JW6ynhsm3mhVyQlRZSAaNz/SSkd99Y1Vwu48r03TzuMjhR1/vg\naWtF1/hVSNNKUiJAHrOYQvUd8scHDAeLwEHvm4A8SB0b1IavMCFP4+zYbmyY\nnGU7\r\n=Zywr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"12471b17de4c517ef529ad1505d04e71d38e8e5c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.54-renovate-balena-jellyfish-environment-4-x-12471b17de4c517ef529ad1505d04e71d38e8e5c_1616732162507_0.3388801656540317","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.54-renovate-balena-jellyfish-plugin-base-2-x-d2c3d93f4a9b979770b982fcb7fb5a82462c863a":{"name":"@balena/jellyfish-test-harness","version":"1.1.54-renovate-balena-jellyfish-plugin-base-2-x-d2c3d93f4a9b979770b982fcb7fb5a82462c863a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.54-renovate-balena-jellyfish-plugin-base-2-x-d2c3d93f4a9b979770b982fcb7fb5a82462c863a","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"884a130b95b0e5a7125516f2d8ba18338c3ac4c2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.54-renovate-balena-jellyfish-plugin-base-2-x-d2c3d93f4a9b979770b982fcb7fb5a82462c863a.tgz","fileCount":18,"integrity":"sha512-hJWAHZGTydp8QK74ZhqkWxesHYRcLvHhnml/R3YpgFmvm6nmRYJvNsAe9w+7HuVWywe5FREZAwAWh1uoe4RzeA==","signatures":[{"sig":"MEUCIGq2zyt1vkDzlE98UMNN+yeBs0EeiKblJDA5DKHhh6T9AiEA1uoLlqnwCG3Wcu1N3+kMX0MyTgabmWhzGH5GCtBhjqw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43952,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXWCGCRA9TVsSAnZWagAA47gP/1dqsX1hZ3CAhKuCm/Zp\ngxkILoVxtujDY+m3JqOT4PDw56rZruhLxXYmFESWozzONj7ieATyo0iW/cVs\nXbuCU0IuHG24YRnPDjn1EeZw5ex+K66sJtdRyXPRn7/pCzPRZT09g9fK1VIO\nQmFIX2NebagebDYJZl5ciUPLcnLFiTwmU2BXap5CSsmuLVT69F8N7EfeW/pa\nKrO+6kSeGmOtfW5hKL1lW1UbGWaTUf/YNNAfw79EQqk/sWgzNvdSWXrDNT8F\n4oYnxu6vPlGOEeySSSWDpBVnb3Y2o2llvJ9es30Ql90IexFdF+/551rd6muD\n21zF9ODIx+AZurIUZdDTBQ5voWfaYVvbU1sKgJFpSEkoDbTkt9sXJogLAglT\nTTWo5NvUU6xA2dC3vYqLrIgB5LlmlXjB9XnAkdPtnQbOUva6prJYhY6gZfxO\nZinioTZiOZUmug/dOsVRmtz5/IHttHjqt+4lUDlLTge3PzFi3K9AqgvWuzzy\nnsV+hRNxuObUHwUWEcWNCQ6WM0rVHBeGtqKlkrzXcrht9Q3lyOifWFyzfXWi\n6UIv0onu+hWaHjnTHA2iimBu7HBXGDh7IvIzDUAUjNQLkSOz531JdoVIRrHN\nlbAosCQeB8DOZdCjnjqaS55uBF98ov8UA4U5Ea/GlWob2KpX2X/GlD4Y1Dhp\n6h5o\r\n=yblp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d2c3d93f4a9b979770b982fcb7fb5a82462c863a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test","postinstall":"if [ -z \"$CI\" ] && [ -d \".git\" ]; then husky install; fi"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","husky":"^5.2.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.54-renovate-balena-jellyfish-plugin-base-2-x-d2c3d93f4a9b979770b982fcb7fb5a82462c863a_1616732293971_0.14727373251343634","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.54-replace-husky-61714de10c467b4c6d519ab6fbe84eb25442e348":{"name":"@balena/jellyfish-test-harness","version":"1.1.54-replace-husky-61714de10c467b4c6d519ab6fbe84eb25442e348","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.54-replace-husky-61714de10c467b4c6d519ab6fbe84eb25442e348","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8aebe22f491e309cbe50030ce02e9b4d2b3b5668","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.54-replace-husky-61714de10c467b4c6d519ab6fbe84eb25442e348.tgz","fileCount":17,"integrity":"sha512-6noEYGyhgozwV63a8CQIJplUGj13V686wK3iew+cZX9Dl1QnpIgqIe4AqLBiiJsdEOskxe3o8cAdn7fuD9RSmw==","signatures":[{"sig":"MEQCIHRSqNXIVZuqPHQET5CdRWSFgS2rsO6qed6wUusivuG7AiBVvw7uuJtIrSIIZDNEEJarx8QuPDgRzPhlpKCSb4HEqA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43842,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXXcoCRA9TVsSAnZWagAALR8P/RkjJGmNtrSd/IDVQ2ai\ndqQ0uQ1Vkrm+eQm0h6wndyQvsFL5P4vm5U1OllNdSkbuKibpq0b/iy6F7lBi\nbV4OtoRaJYzEW/OEeRuXsqESYhq5lVzbd9qoyCLvOxPSDgcyVB31f6PAjzXT\n7fv/6SeYTmeZJLBqvOCI94ovvv/HenNxlHafNl4pHOAbhT8sienJZuIiEjQm\n846qXmp8OKiwtEsUz4Oe3madwqLyV//IjoDu0r7pkWZ4KT0DldHF2yV1XgIN\nbIAk4pBl7O1Be/ci0hS5iZVrsl+eeJl0SKPGxvOShyeyddPwQEWKFj9OBwvn\nzXUKxRq6edsxR9kNCEASJk7uNpF6BIILPYfpcyQfKaRwdJ3FKokcCyEIQ+Gu\nK0nQg6mw16ieJr2Zfjav5Jywwns+xYU+NjQXwYVEu54T/m+m5P+UXgOuigf4\nMQPTkhKVC/sPg8P45xdRGE4QfhHTfffWf0ox6ohmakW8uFOQqH5n/87E0c2j\nBWnRk9/JevWRG9xxRVsJxMk7LRHWayE6uamEsY921nuycTOfQV0uSAHyTMdF\n/CBM4/L9Cpnpv/k+pbpGj5Vi44avjCrn+pjjXtw230HDLVVDhXcZr1OmMVlT\nkdtNX7irma3lJnBZhCQ7xqVep4GBOsb4EnoPrlm8I2uQBhXNX28Wo7oeF9m9\nGlDj\r\n=kJ+N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"61714de10c467b4c6d519ab6fbe84eb25442e348","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.54-replace-husky-61714de10c467b4c6d519ab6fbe84eb25442e348_1616738088447_0.9381954233821668","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.54":{"name":"@balena/jellyfish-test-harness","version":"1.1.54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.54","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15aac5683b40bd90ee88164048c458ad7edbf8b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.54.tgz","fileCount":17,"integrity":"sha512-T5eGgRybm/9ybx1/Xx8xNHyi/D4kALI1vFoH6xzhxiYNUCJ7e3ZvCUnhaiD11+UrREYXVUvHOuwo4Bj/EVDwmQ==","signatures":[{"sig":"MEYCIQDp2rrueqEjJCv5t22BOCHnIg/JN0suckpFiAS1IQqNbwIhAMZQAzX9jxEERbvINGNVQF+lU0ySPFj5btEIdAeNyeYZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXXfjCRA9TVsSAnZWagAAlawP/jncGjGLXnE9NC84E5f9\nM4vvKGKWot5YXAy6B5s3u1xmoaXi5YjqBO44QZ9vinWmSAnwMBf6iaO9uNL6\nEFR7bk1at0H+W1Tpeq/8GLkZmr0QxNcUIlAubeeusSSp2dgaGyztcQNlfWbi\navmIfsSu3LctILaE/tjpihNNg2RPAgHXYM4MHEdgUokoYxxjjjqLJQAfXIYG\nAKXmeMDl6nkLgT5LSi8xX3DMxdoF5U3ZP2VELgCaePWX3Pjby8ly0wnVrwDr\noWY218hEdTzehy4Oz3omj10NR1XYgBXDdFaPRMAPAE88pxnRjK6lYmEg4lGj\nGP/KRtN8opoXIv4URBufICuaI/FXpZQwkroAcZVja8Rz5ElkdNpBFOaG20Bd\ngIY4Z+NzepHQxVI+tXUsHhWvyU9euUAHUSr6YcU76CaVxV3hcmQqEI8Ve3V6\nDXHk+C5Or6AmCG6QbhC7KRqmVZkqtLIuslNbs8uHXuk0MVBG+XGaE8Jx1eh0\n0tovIksimcc9ZfSNaSuR56B4SICGqKxbzwK07DnL6/wGZZ2vljY7ZOw4UwLa\naKOyPjDIezSWEmzFeudPwN04KWwOqPNBbwOLQHSeLtcSRDD1YcBPbjzFqHOt\nLqJig672K5FAhSplj8/o+iDyJ1HViv1nDPDoP9Yiq1sO6djL6kNaykkWENsr\njODV\r\n=5TaX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fcbf82d64f1ed0d2be48e9e136839772a477f2ee","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.54_1616738275321_0.8541721564062141","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.55-renovate-balena-jellyfish-environment-4-x-04624dadaae71ebc1ec354158cb76f03669ddab7":{"name":"@balena/jellyfish-test-harness","version":"1.1.55-renovate-balena-jellyfish-environment-4-x-04624dadaae71ebc1ec354158cb76f03669ddab7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.55-renovate-balena-jellyfish-environment-4-x-04624dadaae71ebc1ec354158cb76f03669ddab7","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be8e77e641543c03892061b01767487d5cf3743b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.55-renovate-balena-jellyfish-environment-4-x-04624dadaae71ebc1ec354158cb76f03669ddab7.tgz","fileCount":17,"integrity":"sha512-vUAuLGgM35iz1uOn+j/qQXd9wdjRyEsLdZh3zET5RdIJlYSpByMQNIgRN4Tf+wc4iN6EWO6p6MxmMaSBuqQbIQ==","signatures":[{"sig":"MEYCIQD7Mm5fWEhjIeoRdeoljPjo4GxSeSSv0ZAcZh45B2KRBAIhAPaGmzigJNsxBznFpA/guixqPmVyXKL6lzOsEEdigGHT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXXjVCRA9TVsSAnZWagAABy8P/0Qzd9DeDlgLUKzkJIL3\npwukLCPnOecahLFhQP4qkcHSbBzEuyUxDe9lJoQe8RHJjBp01Ill9D17GmlL\nBvYc9OkqlcuYYx8fCFMQboZINA5uEqIAn//hay4RwHBhmDmA3TTYL9jfkKwh\nMvb1vIo6JBBcjKJhoZPM5wZTTpKxUMUUCfsJ534QKndj91PUWf0OyrDgW0QR\nUSterfXSZ4rWJdPJUklymmE5kSKd8f1Tc1Dm95GgsmFTv8zhvMJBN3wtBgW8\ncS6+lkrGUBf+YBo7KMxjsdNBfjgIXy06MhZDGZRep/hu2y8k43fJ8EBFQs/7\nteNwLZ8LDHssiciQfGmEpqV+17UnnxiQnFg+NWsoHkuatw4l8hCBBiC8D8A0\n/0j8ory4Rf9scBqvtyxd3ArnNezP7v9T1DVlJrv9l44lSF4oi8G1Jielc+cO\npy8v1Oo81dkeZv/T2QuokUYyFt6JZeTPh2Ennj9aihFxf/BHLMxB1fH8fhpc\n5TdsBXKVzpVCXdmlb6TUgcUcr5UZOvlE2aLt+WmmMe7CA2xsjMvIX4+i1lRw\nVNIGBiLP4TX5X5DkIZdP+wDvNzDHwjL7vacvjb+qd4u6R5BnQ93WqqJ0Zavf\nUxnM0ruFmUYMD4Lpn+a+RLxnqwRz6NJQEp8eWzI8fGLx/UOEneDYldhp3yMH\n3/MS\r\n=Juwq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"04624dadaae71ebc1ec354158cb76f03669ddab7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.55-renovate-balena-jellyfish-environment-4-x-04624dadaae71ebc1ec354158cb76f03669ddab7_1616738516637_0.15709874053273865","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.55-renovate-balena-jellyfish-plugin-base-2-x-cf4a85bd5c6e4d98ca8c03311a35a52ee4510502":{"name":"@balena/jellyfish-test-harness","version":"1.1.55-renovate-balena-jellyfish-plugin-base-2-x-cf4a85bd5c6e4d98ca8c03311a35a52ee4510502","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.55-renovate-balena-jellyfish-plugin-base-2-x-cf4a85bd5c6e4d98ca8c03311a35a52ee4510502","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f028804ec4c0edf16aeb5b3c13cbf87f4cd4fac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.55-renovate-balena-jellyfish-plugin-base-2-x-cf4a85bd5c6e4d98ca8c03311a35a52ee4510502.tgz","fileCount":17,"integrity":"sha512-Gu6bt9J4FkWk0VeHRtIrut7O7t2D5i8FIHquhVXDsREFbNKvaX6/Tcw7Guo8vqvNxh2PcO4a4fCH4f6akBTmOA==","signatures":[{"sig":"MEQCIGlbvByC1BRnZ5QvYfbJrrFFgowZDOhqo3T5/4joGSThAiAYL2RirHDbI/k/3xEcrvo7vzsSFkBKUXQT8tAVITq3nw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXXkaCRA9TVsSAnZWagAAtg8P/ioiawtJD6yEC2lCfKoG\nm9c0cegAmx2fshubU/Z0qg9D8xz6KRw/0rm/ob/Qwnw/RxGSDJIsuxcjRpaw\naj4woWnGUe5geH28lxL+KDim9zBRK3rNFqJ2svA3ViMIxWzjhq4FMvEdkMAJ\nWds4qounPyYIOJlSgPheNDLAZdFK0NTQq4lMZMmnl51JvhU1Ny+O7nRLtyul\nRHT2Bg6Jz9rr8y/WbPhei1olf36iM8FpjVg0EhMQW21XiD4Je7Qlj3qQRCFx\n+bG63XoC6YFGF/idDI2h2kTODSXY6BfEWCYcxSh2N4U51mkKcqp3sLdSKPVq\np8qJ6b69SzgjZplSVbMSevzQLMJCFQyMQ6/M26enDCYRgIfa1hWRh4wVAVll\nJ1ReubcdcfdOL9H96mw5AKUbnXo/MuokTTz1lDV3tbyx7Gd1iyBttddx3X9c\nX5YF+R0+jfYWLRJnU/10B+4ijEbj2v2cLd92Ca3cC4zu1mak0NTi6nprXQLw\nv3RruCtjYnojdbV6jbQ0RJPLNE20N5+u25ww0HQ7MdaiHGwrhneSoNOaXe7a\nZUkunczOv7LLmn8iYDE50klmDvwhkHbnFFuf4smKkaiZjJ4l1OfviDduRAcs\n1GJgwcw2MhU9AOR/ITvd96lCQPuKFPeRQ3SbZNp65G85Bs9Ur4oyhZ1+vkoM\nYBIG\r\n=EmIO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cf4a85bd5c6e4d98ca8c03311a35a52ee4510502","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.16","@balena/jellyfish-sync":"^5.2.27","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.33","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.55-renovate-balena-jellyfish-plugin-base-2-x-cf4a85bd5c6e4d98ca8c03311a35a52ee4510502_1616738586203_0.2557387578406034","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.55-renovate-non-major-1b6dc405d34eb900dc9a7fd125e13ed464346a7e":{"name":"@balena/jellyfish-test-harness","version":"1.1.55-renovate-non-major-1b6dc405d34eb900dc9a7fd125e13ed464346a7e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.55-renovate-non-major-1b6dc405d34eb900dc9a7fd125e13ed464346a7e","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3a549f8569e46ae913cb95ba993f916ef75378ff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.55-renovate-non-major-1b6dc405d34eb900dc9a7fd125e13ed464346a7e.tgz","fileCount":17,"integrity":"sha512-2otPSLHhUyyXV7baaX4AcsBh6sDtc2z3j0w/KGn7Rd0df61BCX4KsRUTQWtzKzffGPtD9zINH4uQiuKqECXBlQ==","signatures":[{"sig":"MEUCIQCYJey/8T+x6kt1Mjn5TdE2idPNpn7TEsu9xNClR7EmsAIgTCMlS0xYv4yqvuB9k4U4VS6wkyRxFhTXggsgxeWvebw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXcSTCRA9TVsSAnZWagAAuV0P/3XTv3lRG11QU4CauXzb\nQDax48LQw2AW+SQz/pWmEcVVCJLXgVHKm+vXMWnCktF1r1/Ixt4KhQuzKbtK\neQmtlohNIU3ExtGQcBgNOvsXfZj0kSnymOcZGnt4FaqYCiD3a7Q745az6ZPi\n1dwr3eAAsNSvLDlBG90fAUbsIDy5DK1sQJosVpFP3vJLc/xDu1iPYN3JBxfw\nxhfixBEDwJKB4XsYCUx1JtpTwkzfHRzyZ1RuTcqx9fIWE/I2qa4fl7Ttu0gt\ngcST7EMP+kqx+hre14/hHX97JnOwKquIImD9/sItLU2DwrZZSdwAGnxXolMr\nP30Cxjv+dm7yGa0638f4pl2RmsAT4u98u2MvN4yL5c7LwTuYUCkXpJGZgUfH\nAIItwaZ4gRMh0gH6JE6OtB8N6dM1JL/gSL+iMhjoz6dkLHpZTMOmkUeH5YLp\nEmeeh5YNTBkwLQp/RfCB6UFUTqrD2PqQnO2LlOGXa5wDNMJiFHhkmIpIBz4+\nUNoO6qKB+NFwmbNO2Z2FPh6DEOEnE4wqnKZGvN1kTUd9lqTzTBdJeN96as2V\ntBccMyh5GuovQF73xV7GTo+0Y/rOth3FGVeWFOnJ08iTJSk7+0gYcYb47HHC\nZ1N96rNOmmBkHvpMLTw+DypnORWqaYTJosC+a9qp6MkruWSOLNjd+bIvUW0k\n/5LC\r\n=z3O6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b6dc405d34eb900dc9a7fd125e13ed464346a7e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.28","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.55-renovate-non-major-1b6dc405d34eb900dc9a7fd125e13ed464346a7e_1616757906850_0.20996750725529534","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.55":{"name":"@balena/jellyfish-test-harness","version":"1.1.55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.55","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3acf1ab3eb6fbae14e78c8a2cd7bdcd7d2d3d212","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.55.tgz","fileCount":17,"integrity":"sha512-eR3NZt/LFtKDhaGS5VmW9cVe5Afdmpccb7GsYyoa6WKL5g9ZLzUr8gJC7p3it4pOae5twrNJ0jIALA6uWDbUfw==","signatures":[{"sig":"MEYCIQCU1ByzOm+5Cz1s8TIGJh52vV1fU2jYa96k3YRE/5LadwIhAKBie7pJmz2mRebwAfg21Vt4Mpo5a2UohIdzsBkj2WpH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXcV9CRA9TVsSAnZWagAAvU4QAJZQLUrfH9t+NO3FdlkO\n8W4hBgvCcQDX6I0NrDIweqiWssboKuyXh0kRhcpGfyVU4PYoCQTW6nJ57zHZ\nLdAUlQVWdN/H8EUs+pJKNcu7DZ7Jsoak7ssDMMQVXPaG3XmaK2bxGQf+I9DA\n3JKzK9OsmBJTR4qKj6pBvCzQgSjAQWhwBxPOroMjh2hw6M0Vnt+ENKG598J8\nqzuVB0oLVQ/wUA/ZUTBIBB4BI18a0JptF0aIQUImoc5z/L3jPeZ6rQirHMVB\nx2Uamwk9388ISi8p0K5ZIdhrUQTRjvMYGS0YtCu3yi6UoNOYpsk1iSGAwRPV\nPC3aG8SaRv02NYtBxiwqGSjkQ+/owFwJTN+LE9xOk/T9lKcIDZLZAbhgayCu\nUCeTK09cwywB0O4nUkmm7MCCtReFxNyGBxRSzscfz4ryWyi27JPg4E/xNsQ0\nf8Usjj2JOsUJX4SySSdAC5LitEBOa+wm/IK3DWS12SM/79vYbwshRHK/gFBw\n7jZu4F65RoRgX1CqUoAfWSc67MIgC6u32Ok7qR+4IYLpfhWhxJH7UtIrLRz2\nSBZlAYrATxkPPcQeCB7SlJAPALeCSbUOPFV82PiR0qQwG0uC4c23W9RDxRKP\nxC+WOj/TKhMP8LC/YjHZuUS1NLj/SDW41Q7B+um0Ac7WRf40pLJi4qMGsrS+\n//uc\r\n=djn3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d467dc2a5a4291b344c5e6e99c47b3950bc18269","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.28","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.55_1616758140933_0.2918752397925324","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.56-renovate-balena-jellyfish-environment-4-x-7914a5871de09ffc0bdbd232d7f3929d19c3f9ad":{"name":"@balena/jellyfish-test-harness","version":"1.1.56-renovate-balena-jellyfish-environment-4-x-7914a5871de09ffc0bdbd232d7f3929d19c3f9ad","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.56-renovate-balena-jellyfish-environment-4-x-7914a5871de09ffc0bdbd232d7f3929d19c3f9ad","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"95b9bfaf2018c4ed0503b90d519b8a725c397770","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.56-renovate-balena-jellyfish-environment-4-x-7914a5871de09ffc0bdbd232d7f3929d19c3f9ad.tgz","fileCount":17,"integrity":"sha512-8Mm4OaDkcQ403p6fHDfp00h8cYe+XeOEV2oHYxqSSTOwSq85Sia0z1XMLLzcgLDBQUIogf/eOfdm8dYbaMLI7g==","signatures":[{"sig":"MEUCIQDTJEfK0oJ2P5zJL5XlFse/TBF5kRNy7lntWUgDqEhRUgIgQoWUyjOFg/YTPEPo75wZjUarWQl0ZdH0jqOgrXFjW5A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXcZeCRA9TVsSAnZWagAAHGYP/3/xdwOrwuF4XNh72TS9\nbtNvPTZfO2fQzWZykTcRDzJ+nCZL40rc7D25k2IRBCzJDzh73impcVrs+0DK\n9FPc94vOFIPQRJnrCKGOYBZEgpQyZqThBBYjW7jzxOhxfEiVOcqOUAK/ABvy\n9+0FTy0+k02r6hR/Y8AH4qxyERy6bkJ4Bh5+x750zvZ+NTscJPL/ca+ZWFvu\npKPUHvqxZZ2TzYrVQ+QgRTMEZoOaNM00rhFmv8/8Iz7BbnPZy9vRt1MQo+Hq\nSAX4JXiPZXR6/aNeyQX1LvoIBcp/7rO8+Pg5ey0wSku7OtPiDmVj3KZ3M2d2\ne1l1znpxCixDaOemgkC9ocxoWupzWLeXsylFhX0zXA5VbDiqBFUAoRXCnp+E\nFxT1iGokjV+DEJwmdHKGkj+AApBOGx39EYoDkAdmbHMkBzXCPLiSm81tTjkn\n002KPw57a6JH45YREXeVAKbSmFvOFXjGR0+qY8TQtvz41n4pDe6Cpk5hWyi0\n5a5nDa6Oh+3eGy/S2YCm0DqcIHFdK3lhgU1Dy/nlBxrHa6sDWJzpx7G8FOLV\ny+oqNNP8cUPyaUKvvyrnTkmnruvipYLNv8EsmD5rB+Il8P+YzC+fwR9l88om\nxXCxPDbdr6zmZTerGGuV6b8EMSjpLnNFADBocRPNBwVNkP+ngZ5Ko+/FHZd3\n2X/J\r\n=BNL5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7914a5871de09ffc0bdbd232d7f3929d19c3f9ad","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.28","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.56-renovate-balena-jellyfish-environment-4-x-7914a5871de09ffc0bdbd232d7f3929d19c3f9ad_1616758366013_0.2790956839865466","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.56-renovate-balena-jellyfish-plugin-base-2-x-c7b9d0713fb5588f15e53744591a2cad80d3546c":{"name":"@balena/jellyfish-test-harness","version":"1.1.56-renovate-balena-jellyfish-plugin-base-2-x-c7b9d0713fb5588f15e53744591a2cad80d3546c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.56-renovate-balena-jellyfish-plugin-base-2-x-c7b9d0713fb5588f15e53744591a2cad80d3546c","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e91d7af66ccb765d8d4903dc647ab1b224de309","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.56-renovate-balena-jellyfish-plugin-base-2-x-c7b9d0713fb5588f15e53744591a2cad80d3546c.tgz","fileCount":17,"integrity":"sha512-mrz8tkMHvCdbeKC9og3d80nwjFKIuqJH2szuWL/kirV/YHRdCuREgV6i+ENnLvyXhA68/LwJCkw+w/91lSzOXA==","signatures":[{"sig":"MEUCIQCqNBLFURsU1aawSxrFq7XVjJxKwUGiVvBMFpVJHoe0ZgIgV/zDs1FSFRuh3W7tvk50RdLZTTxsVxjxNWVTBo2Onto=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXcaHCRA9TVsSAnZWagAAe2IP/3+46nm7S41sCim6XQjI\nIcsgjC1iilORR4F6rrMtWbedqcmuNgPVofgxze0K817tNWF2Qohg5PPN+cvx\nN6E8/eGlGE9GKWV2YJEWDBZcw9sZWfyWteaXnewoaR6e0oMJflY4FTw8RsA5\nslqdNHI4mxT+UjbhWRjaVKPJAL7pD/TEsgNo+wjSKqorK6lMboNtnHFtcD3p\nZjXqI69t4P1vwzy4XBwvPATDbrPzEZWqFVzCVxsCvL4HFPmxg/UlNgbuG8g7\nL02/kxOwub+PBZ00SU1W/PIAJQ3EDYbHJTqOww+0E82zAeA7l3YPgq36dVk1\nmm3HlXTD8RQJqIyrMltZ1o2+KmnfbwAXGDWe91/b9uDqWlGBlZ3gCrJLoWNn\nFTZlF7ABw5y7dG3yeS1WvHpWahw4pyqiqw50ysEDHqDzNzpod81o0htbpXCi\nR8fbz+kHjBJdwoGBnBT8uwwWSV8LJ2S+tOG3OspldDWsFOjtBtay/1GmspRH\n8ej88oLqLoG4Ri2Yvn4i6dB+oE7haXR+/tR95Vorv+gl992Av1GSHRjeok5R\nvIB7G0G9h6a99TbL9b7BFIaUredVRT70LtVSIjq5fZSkUEaMtoDWN7CcvOXT\nj8Mw/c4urXxvM3GhEuJGAiSBBez+ARw2DmBW3lPcpNzUlSeKuUqy1YYw1WX4\n3yrz\r\n=oL1R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c7b9d0713fb5588f15e53744591a2cad80d3546c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.28","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.56-renovate-balena-jellyfish-plugin-base-2-x-c7b9d0713fb5588f15e53744591a2cad80d3546c_1616758406610_0.7545415142731879","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.56-renovate-balena-jellyfish-plugin-base-2-x-74a9968b492332aaa607648588a08549a0c52416":{"name":"@balena/jellyfish-test-harness","version":"1.1.56-renovate-balena-jellyfish-plugin-base-2-x-74a9968b492332aaa607648588a08549a0c52416","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.56-renovate-balena-jellyfish-plugin-base-2-x-74a9968b492332aaa607648588a08549a0c52416","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e11b870ede8e688f8e6d8c782c1e33c64932787","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.56-renovate-balena-jellyfish-plugin-base-2-x-74a9968b492332aaa607648588a08549a0c52416.tgz","fileCount":17,"integrity":"sha512-ihI9QWrYNWnFQ35VrRiklF1413O3usUHQgd3NLf3kbdq4VSdEqvJgHJn27sFNZqEMkIsc+4IT3mjvqJ0YrPlRg==","signatures":[{"sig":"MEQCIANX+zR5pVI2zjKpXpjygSEv/EPz/88l2/Gh1lIK6C4KAiAapaOZS1DpkTtwRdDPtROHfptlGiepW031uhQQ5phtdA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXgiACRA9TVsSAnZWagAAsOoP/R+FWtvHHQVW0+0H5MBs\nJSsBhd3mcpgyK7BxMbT2rR0erx0pW7NyaJkmKcBxN+4/6h15PVlhTXaGMH8l\nn9rQS1VaGSbgHAs74FVA21/5qj7WGM55J5HwDix/1dhHR0UdbffCx1xAbgA+\nnt6WZt4f5MzrmtWqhQuAv6BAvQJKmBtfHYlX0q/TnKHF8/FdWXeX6ZWFwRBS\nmBC3eY4a6K1GhwgqqbBIq9xdDryS0jai4/FTu4LZGg4qNuD+Awu8gWGps4ta\n1xmw6xmnxc52vU+cl8t8klLaWENgJFO+aOvt+twB4TdRqIONBPbCoMvbqIOM\nbzKqu3Ezm747xJohVOxIgDuVrszfwT8ykMVfBskCP3+WvydlXJetUgIOzHho\nY5GqGcCPV6XGKk4ikz5m9K9zzd3ZPMEI7odU/QKWfcor6Ltwof+5L8u21Lr4\nXnAQCWfY5MJfcwWjPygKmhoJzblCldXiBHqD62dh9dRnr55SxFZls2cm08IM\ndnQTDIRMdnbWjuhWt0ETABj9hwx+1yYOCwkuwCDLOAXMe/lNALiahAYBVMSR\nGCNRvBsru38tBrkv0p1nVfuozzvNlPz6blWczzXbBvUS0B97gKp/Nry0GUSn\nNTYuTvTIYDLYeCWJoXvd69sEETzonRT5K7L5y/7t+08LL2GJGi4Gh5k4PnB6\n7d5u\r\n=VL01\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"74a9968b492332aaa607648588a08549a0c52416","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.28","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.12"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.22.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.56-renovate-balena-jellyfish-plugin-base-2-x-74a9968b492332aaa607648588a08549a0c52416_1616775295968_0.23786714241823215","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.56-renovate-non-major-9912464379e8e2ea76fc07774add00420bc43138":{"name":"@balena/jellyfish-test-harness","version":"1.1.56-renovate-non-major-9912464379e8e2ea76fc07774add00420bc43138","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.56-renovate-non-major-9912464379e8e2ea76fc07774add00420bc43138","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"afa356d33691ac2881628d1569741e1aafc4c6f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.56-renovate-non-major-9912464379e8e2ea76fc07774add00420bc43138.tgz","fileCount":17,"integrity":"sha512-IxVqhGjxW5zs3sUPYfQu0dew0xAiSlgzvCA3W8nXnHYOeWFkGW1VJpvhOxtWlECOdjz1hYW2F9Kdz3hOzalI9Q==","signatures":[{"sig":"MEQCICQjP6P/RXMNqraGnK2gV6RRBBTGILHXxBaT12z4lVjmAiAslB/PuZl5+eKpMaWfO5676ran/j9fW/Inp0+cwCOrJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43985,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXmRrCRA9TVsSAnZWagAAZisP/2kn0TuzyZL/VQcL13Tr\n4G3s9eRBa99zLcqgfesYjCTNvLhhv6wQo92hhleA38IOf/RQ7mAq2bTSKkSd\n4EfyxfFZJlvrkGkNBKZLvAGtio5iqLVIgQLP4pGDTwtIZstUd2EDGHW3wNFU\n/LwvU0FKPzuwGsEnXFddX8MlMVKK8ZQ3dAFjk7Ekpz0rv97JaLzE20Xsokoo\nmcOuZEQZJV+fCC/DrHx+c9pxeN1clHkGSMeLEQ07IQRdy8a6iDpKSp+VSqjm\nehPy4lj0THizj1mhgJKk0cWaBEZh/j+dJWirUBZCuFFjghabCPOIHiqwXzH+\nf8Mt6piPAlp0LnVk7HON2tacJI7/sNcxmqSDQaA7nK2KBJAVeSAigTo4JWsS\n5DMJqc+io+t99HyBhVUjic4U23wDMWg4Ou8OT9Y63xwYCiGTNTKuDG/AW2ji\nWAZhXrcizT8JNYkj9sNRALP7bNLibbyd7XfoDIR9UOViIqsTdcu/XhFPVsdD\nWK0INwJjcDglk6DOcKyy9ZYw+rJ0UAYryJlfmvXpZMaRLvfMWUpQT8vU1KuN\n2CFzLzzrT3iCwGRr/4ui+hAH2JURUwlKtG3s+jW9U/ySbXCI+Cy+faCIItf+\ntvyFbtqlku0LUTKkmqPbKTQaA1VpCkThrxZSrb9kWjjmfES+JVnOrneqnzZ1\nQ3sS\r\n=v6ZN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9912464379e8e2ea76fc07774add00420bc43138","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.56-renovate-non-major-9912464379e8e2ea76fc07774add00420bc43138_1616798826611_0.3235110822970251","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.56":{"name":"@balena/jellyfish-test-harness","version":"1.1.56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.56","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"24ae162d6a0b6004834bbb6f22176874b1e5a9c8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.56.tgz","fileCount":17,"integrity":"sha512-FweGyLe2w+U/SRcsPWxT1Ce1jK9ztV0AbmRtGTYlEKNZj+RVV3mtF5gUK/sNno6s/hQ/Er8og4oEyjP4OCuimw==","signatures":[{"sig":"MEQCIE7Z6kpOOZ5iIZfqresRA/CKmUqDoJIGI1OAYleEUZifAiBBJ4hPDK2Qtr+u0z09tOd+0ouoh46xz8ux3Es3ohUfTw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXmUYCRA9TVsSAnZWagAAv5wP/3nHRPHgd/pXYERHCTrT\n6Y7lvzBqrho+C/EYEQ3h4X3dY5XCsY48Q5X8BUO4JC1xo+qy7RPxyovrZDmG\ny4NdiJRGhNIzIANmi5YNMHrBM+SkQ0L2IUR/fAu7P7KA7satsjenP/GR/dlN\nIT4RO597mLkEnMCIF8eRIOGtH5MP9Xfq2uQyzxtk2D9yau5w9vPpVnCz2GU1\nqLIfPyBi2urSVcgxrsDV38CYI6XqF1WWcHzyk3z+t2WBUwklkrq/egOLFZNk\nH/14d421NJSoUruTwozwqP5pszv9o/o9fgqUO4pEGR5m8SSK3jJ+E4iO5hDG\n/10AT6h3fxLdtcmNbK0m21oWTdIWkNymxdSEXRHzx8QFYq2+4FEcJek+K2g3\nuWi7HymmJqaHN4fKwwDqQu/SgV9wFPwwmeQvlwljo456gDbRFI397yh0v1bC\nOiiFJ2WqIiDuXfAcJQ8ACXcfzHz87mhlNAQoumuPsYVKZJfI7HZjfm/bLQTI\nkrV/JpW+IpH8x6cnMkxdw7cKRzIjnR3EIzZgyWUvTHDvHktqw/ekKjTmZX9Z\nIeaLulRGdGJlFIfM7NIrhAeqlvxm67hyszk/6RknFRuSwiFDe+Tq8BTE4apQ\nyR1UhqCBkyBhfQupm5+mFbO4HA7fyeu1h0Gw9QBIYonIHoI1+E/EOedRMbBg\n6WRm\r\n=dwQW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"13ada6a2860ceb5c828cc47b9fb1417971779fe1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.56_1616799000436_0.7435802973913292","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.57-renovate-balena-jellyfish-plugin-base-2-x-255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a":{"name":"@balena/jellyfish-test-harness","version":"1.1.57-renovate-balena-jellyfish-plugin-base-2-x-255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.57-renovate-balena-jellyfish-plugin-base-2-x-255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"63225c4d15ecd40fc2ccc6ee3b3fe0a943d30bbf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.57-renovate-balena-jellyfish-plugin-base-2-x-255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a.tgz","fileCount":17,"integrity":"sha512-qkwQ7oN4NrYbghr6B74Jqoh9RyH0VM3k3OEwom39+41JwkiQVLBtSoF2mPP3dEdztAJG2hON1nlY/CwTAUBErw==","signatures":[{"sig":"MEUCIQDpYlRxIvEZw7EZRLWI8Lp4rSC3G+dhWyUZ2S7FUubhSAIgUh49aDx2vVT+Sw+5oh4ZST++T2uxC66oHX62PKfrYWk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXmYCCRA9TVsSAnZWagAA4J0QAJCPzuKDkqj3WMQzQ+zA\nxkxAmQ9xpNFb9nqtY0NhgptOpfEOFB6QkCWVkvnlWdMgZaU5821ne5ZAZLaC\nTL9iBfn12ilmevNIlPFhCPQJo/3wROQ69blmuw99XU9aSZyGK2LPyZg+eGxi\nwLUrawx6tod5ASqOaNoJltwNNGmpT+We8ttgz0TKfjjMxJkTtuJFyRZRzk6U\nCSSxbACmDc5WgWlfEzjos+WdPXrrOpkfQgcqH1t8HZc+LQl1/78iJcFgqTlS\n/YLRaPPdMMOwgHvS3nFJKL4p7p7aR0B3MEH5cN0pBUBMN+u96HmUw/K/aBz9\nfpIESeGIz0WXC+ytT72UJhEBpyWh43T9FiNwpTU2Q2bv00Yv8iC4YndDaNr2\nzxW9V+pONLEE+PHOSpmcaJuFRbe8/oUPzgasrTQW2DMqEol28E/DKZJlsnwz\nYCGf2hVGy1QT9p8pRi2rfSuFFbSqqgGWTyERxORNulPj5uaGD9TFFUrjagRU\n6KSu4F4622HRO89GuiS2bQzMk4MUXfdxU6Tz4fQKcza5TWMHrM0wUb5FQYas\nqGzPeS7L3EJafnaV8ldC4tP79MCTdFdjasHLQr8qCpBG3NjpMbK2G5Hr9TGZ\nCW/H5Br1hp6aj4iz7VAtXPmyB99vdqFK2DducY6DfHlYLqMV3yzzjaB2CZhG\nPcWl\r\n=y1xD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.12"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.57-renovate-balena-jellyfish-plugin-base-2-x-255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a_1616799234199_0.36437494357698075","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.57-renovate-balena-jellyfish-environment-4-x-97af69eb1962c89e72229c696e74ce3d5f1f2a2d":{"name":"@balena/jellyfish-test-harness","version":"1.1.57-renovate-balena-jellyfish-environment-4-x-97af69eb1962c89e72229c696e74ce3d5f1f2a2d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.57-renovate-balena-jellyfish-environment-4-x-97af69eb1962c89e72229c696e74ce3d5f1f2a2d","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a6799a963414de66910cf75d6bf15f674cb81fbd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.57-renovate-balena-jellyfish-environment-4-x-97af69eb1962c89e72229c696e74ce3d5f1f2a2d.tgz","fileCount":17,"integrity":"sha512-5iVe6UxsZwhuVd73kSDzuyU2tuEeETmPv8gDhQ1lA98bdjjW1souEezbyF1zuesfGT5JPN0qIL64ajnTonUN4g==","signatures":[{"sig":"MEUCIQD2GPKqR4TuIAy7R/GL8tHIt04QaWLPRXj1WQd+kR4EXwIgMxDiS1Vg47DHfrrYhXjXFYP0nwWmGgDZghWkbWUV/II=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXmZiCRA9TVsSAnZWagAA3j0P/26/cg9P/ew49E9FJ9F/\nCDXLNdxLBhWpjzxfyb3sbdQ0nw5xmzgBoIhhqTgxoAYlab2LL31+YUchW7d5\n7Mf9/3Z780pCKrRnLDK8O4Aazv1M93U5BG4tp571kWGNfjUSGe01pDH0gS24\n01l/NAs6+1u9D8oMgoxEcOd93nSs+/CnQxF1YspEtFNvnWorhMuK3AZpWKUn\nJOYCA4H0flMiht5b5RM1CJSG4xiaziGZajHGid2u2QhzKnGwl5yJuJMtjZ7y\nG8p2/1fkD5MwoHFONWPq1eQTc/LThfBidb4GDmPmS4WQI7RfFM5xAFmFoSSG\nGBOTyXQyH7bFWy7w2RHXebwg7BpU8NKB572V48sFRMxfU0z3xvvOSvsvD3JB\nrSHDSga/8LEiROeBdm1FXqpnJ8YbcthON8RTdDJRfdGEpS54X6ysnikcb3I3\nx4xZVced9+gWtt57bPgGEiaPX1r8W7y1EKpFny7E1oiJnWob/aIkaVabaEQw\nRvoaCKjpQSHiqWHU9eW52/1RXallEvt3a4FT2FJ1HZlU8j8jFRwci/l7NUL3\nXrCrm6sCePJ90OPgjCafvLttCO7QT2uy9at3nlI+9LhJJIttL8cboi1cfCsK\ngJJg3Zq/LluDUKNFLEbQdAx6CHDaUpJsPqtJFrNO2T2XtzJxmM2MuGUwLguk\n6XN4\r\n=84hb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"97af69eb1962c89e72229c696e74ce3d5f1f2a2d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.17","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.485","@balena/jellyfish-worker":"^3.1.35","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.57-renovate-balena-jellyfish-environment-4-x-97af69eb1962c89e72229c696e74ce3d5f1f2a2d_1616799330152_0.7159042942427667","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.57-renovate-non-major-eda2a735f70abcefd79e78fb1219984ee914b8aa":{"name":"@balena/jellyfish-test-harness","version":"1.1.57-renovate-non-major-eda2a735f70abcefd79e78fb1219984ee914b8aa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.57-renovate-non-major-eda2a735f70abcefd79e78fb1219984ee914b8aa","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aca86a85a825fb8901d17e134b02fa640ae24e61","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.57-renovate-non-major-eda2a735f70abcefd79e78fb1219984ee914b8aa.tgz","fileCount":17,"integrity":"sha512-V1jryxVDgqj+/wZnaCGB6weVT/nBYy22hrSfiQpM0/FS4sPJZZvA0kftfe+GWuLBPjLt4b7aCdyI1GPMyCQoGQ==","signatures":[{"sig":"MEUCIFztXAQsXDEYjd93qrpyfV3OlVk4Xfs1RIevz9L9pDv3AiEApuVirAuTZyzOTKdivZOKwFHWhw4qRm//dsu1g4YmvH4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXpc5CRA9TVsSAnZWagAASiYP/i5OsOSAcXGEwQPT/y9g\nfz77Vwpq+O2etLYgh4sF0xof/5h1aXgYTLu3/aYddE3QpK2pR92H3YLxunmA\nACC9qQV0/+N5VafA9kF9FX5v/OpUbxmRGYBXqAxAd3s2wMsJaAYKpjYU2OxF\n7hVs4pgFQe9lYonF3nJOLRyk/XL6XFAFJLOblROn8Mao9FwMNXoo1K3hwpX4\nIVTpxbbyEVQttjgsKLTQN9zRdtCJSGOSACzxYiPCNfPZdJoBO+CAUS0qHn3D\nkLTrEJIuyCLCh9wk4B1dokyaBhIDOfPhRGCl4Ytc60EOk+2qyZr6jkjjbwto\nKzDS/DfSaVWy3fxddzdzBA+tZ6u1frwagjr0fNcEEbCdvHyL+E6gt5NCkFhE\nC7nQZC3j6U5geYGc42vrbnAlKNlUweVbfEl/tDSZSeZG81G5GK2R1JiDi1Vk\nX+zy/E4mwWFfLjJ2YiD0yivPGHclPrPHurR6TP3G4aUGZP6LOJvMvgB825zZ\nTMBEmMDk7AqVP4VRceFgiVlhBe6HWir2rv8RtxFlN2/eg8Jqoik086Z/247n\n3fx18F5qc+zWg160I6D3C2x5B8S87GiExvr9Us+w96gn9rglqOPENb8HoTM9\nzd2X5fmmwBzJAHsnst5uwdcka8mCbxAKu0emGPq7+WmaYiSPhAMXpJH7ZKJD\nX7n+\r\n=9Fut\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eda2a735f70abcefd79e78fb1219984ee914b8aa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.57-renovate-non-major-eda2a735f70abcefd79e78fb1219984ee914b8aa_1616811832603_0.8295057751660562","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.57":{"name":"@balena/jellyfish-test-harness","version":"1.1.57","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.57","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"504590247612a75bdf0e8469738e24898d11ecf6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.57.tgz","fileCount":17,"integrity":"sha512-Uq907LjOmAlQ7qLUmKtIww8O078Zplvj16qTXXAdTwlc/0AXTPrpZeBIpUmh4tNscsCADzUlmYIFiWvUo7h5sw==","signatures":[{"sig":"MEQCIAU4c/VzOQsF9pn9iX5aNVRRCP6gc/I+8w52BM0UGwfRAiAuxMTI2oHX+d7eps3MnruVUGcZipi5dSc+wwQKLkFH1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":43994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXpf1CRA9TVsSAnZWagAAIokP/0vMQ3GhwpNjw55PJxQf\nLnU7+Hw9N9og0wbvbtyomD7Zjgc7+8eLio62MBKLR38GrOiBDUXSefrBgTJ2\ngsHsu7RrfxJYktvoAvu12l9mY6b4V109csbW1O5jbiLBxXwr2ltwyYniBVfI\nkKXTmuEyVdTHBI7EQkcMr0dPdFQkRHa3tM3BWli8EWvDMlYr3xRGAXFBSj6b\nFeRgH1BEZT/gGdVY5/CPMTejhkx9+Nq0xtyhy+sFUcpv17d3Rrh2LbLfwwW1\nabzuvDmxDa855il4O199tAqD98hN/2SgC5A//OH8ZhArAcKBJ28p7SkV7Q7b\nOKxdqdKyWsEA9DAyBwzoiW10hKueAKaGptAoAr95V4jRRf+FQF/+6MBTTDei\nTuLF6AfSdHM9eD7GtUxeMqKjhH9xcpuYaOMB0HZKV0x7P/xXPv+RSCecYFZd\nOsKJsCVIV/CQr5d/Uug07T4edcWfMi7w0DrIYhKrqCdXcH7d+eEYCmm4TsM6\n3/KthSMOXr1AZFtTE6cDwCzGkFy3i14Su7ZYtR5ZEyJyTS1XhH3UIheaUqdw\n4DAR2wyKjvk8FB77HM0BVPAQ71aFNK51OMHlRzICcDFNtOK2YVHwUkZynh9c\nv1KO80BbBVqmDS0n+699GRup6mbomMjS9nvjSaMIzJaRJJvskhGQCPX7JQUN\nZBLN\r\n=aGta\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"54eabc332ae8fb30cb94ed435f5371e1a97dd85b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.57_1616812020265_0.2960025978436527","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-f095fc71d6a542b6dcb13e838da12ea3b6d485b2":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-f095fc71d6a542b6dcb13e838da12ea3b6d485b2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-plugin-base-2-x-f095fc71d6a542b6dcb13e838da12ea3b6d485b2","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"caec9a82d1d841a5e5f623c4d52d58a635b5f13b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-plugin-base-2-x-f095fc71d6a542b6dcb13e838da12ea3b6d485b2.tgz","fileCount":17,"integrity":"sha512-G0Kv/dfnXhkP/cuNZG2dPfih0o20eCxRelBPfQ0LN5tdBwkMMABLzuwnV4aJlOSMEbtKZ84H55X87Q857zyYNQ==","signatures":[{"sig":"MEQCIGbIS8hX1fm93zpdkmVXCqBKfCF+N3zWzVloyWcelx7CAiAkFQXI4viEaXCnIojdG/9ysZINCwTw+PZbYvceQxDgIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXpi8CRA9TVsSAnZWagAAYN4P/i0JX4NkQnnGkK6P55og\n+HJxhSVSIOoatWztFR9jtZYYmsBmRVhGV/ydL4Mmj6y3ZkG38EJlzWdvCnSL\n5s/tYt9oyRWliJoxna0vEXPYGMEOgi/rgO/to0OEibix/xhho4IdctDc5oZh\n6wJQtwMy/jtGNcdX/UFDPCoLw1N+RaJ5BrqvU2nnd0KPyN9AeR5dG8kt8uIv\nVtbZFJoRgfwAx+/eRHJPdo8/l3XbCuM1TH+KaPjiGaKIaG4EOi9OpCHD5wpD\nIgvsj9oUFvDDPTeosIV9rPGQNy+Ae4AOMp1s3TDRAurfzprBbHBXnK90I1ve\njOpWKM3/RbwtOv+3u4e+KeK3NmBfimpIpgtMY4XX4LrvJo0qtyiD81keoKmI\n/O1SxcxJ4qWeK2NmCo4ScARy7iHB57LKHDMZLgCoM7pJJ6oWu3BQ4HlOQAE7\nJ2ReydfS5qeC77oS+iDBmC/2dD6oYRzDz4VK8wUKZz6y/8qPUHS5Fv7uNXW5\nritPTyUDSdNKyv+nZNchATP/xnHlUA+iS53kiNcjWvq8Si1fCEDOuz0LutlH\nVaLEt8pMCmYGBcQiit+29Y1HEfOvSy/jGJYW4nbpByJYeUbyOdZhNh+Kxzgo\nv8UYbQ5P31uccHv8JQDG1+CZ7e4S1LMLOgNxMF7Do57NyCW9ObUDmAUyWZvt\ni63y\r\n=k+Xe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f095fc71d6a542b6dcb13e838da12ea3b6d485b2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.12"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-plugin-base-2-x-f095fc71d6a542b6dcb13e838da12ea3b6d485b2_1616812220047_0.9672101216552793","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-environment-4-x-897205464811cb422e21aa17e1df31e0069a5f4f":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-environment-4-x-897205464811cb422e21aa17e1df31e0069a5f4f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-environment-4-x-897205464811cb422e21aa17e1df31e0069a5f4f","maintainers":[{"name":"belodetek","email":"team@belodetek.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"947054e89159e252cffbba2cf892c984381215b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-environment-4-x-897205464811cb422e21aa17e1df31e0069a5f4f.tgz","fileCount":17,"integrity":"sha512-1/ylYvFH1vBNawYR0Spv/DxZPVIuefv/M3OJIIA1D9MkOjWO5SRtdUrVwmbfui5JtJeCndkwoMeVrr2QhtCpLA==","signatures":[{"sig":"MEUCIQCr8wEiB3QPy3yH0c4qr/Ia7xj4ChzQiFtTtMu7k49D/QIgNbpiEs5AiOkiZDpgDU9nOswggj6NGdvYHcuMQDjgA+k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgXpkvCRA9TVsSAnZWagAAvD8QAIRGFv8Q7d8IaoloWLDq\naXdG29aby+fU6mVjR1agWpekky11F2jDrRjhtJybvgvyUsXNXIFAraI+NRCW\nlKZjT9pHn+lVyFEHpVeMiTsOwfQBRxNouher2vJkp4Kqm3uzlmzo64tP5eka\ntKpTwOSXGk9Doxw/NfvOlWGQqesvwEHJTtrqxYUiZmOK8rLD14GYF8ubI+kf\nuA4QIqmNBPnZ6hWrgNa8dVQ2zPfAibRk8W+C2dWabHz8LWA1V7hjMnuO4fLc\n7yraVGAqILrgepIo7Amo4aZ4i6f0YD1KR3d5hKxRV9QI3TILwqlcJWlm8rCh\nbR7mxELSvULhL//trdr9GDFvxPXJ0Ygw2l57hFrw27uFlISYiDKF9r79GCKn\nIhsN+9tkBMqJpw7cW3ZNaKiKce/zSoBNwy+yij7H73AoutrqN3VvODq+bMG3\nlLlck/CNK71X7pm+LEU9bfY9WOHIs+pKweicDzLrbkKv2rcirhcpgaMatPC8\na/gAqcQHyA+giaDMoH2kflt4gw8kGTtrQnjJ6Vv/LfjGcEdPN5FnwVLDgcKD\nb9er/DwGyFeZpWsYbVFMudsL1sh06IW6n3HYgP7DRwvWoWAUjyi2Me1ZIN19\nIjYQaJyB3Ok7XPgopFBYe/S2+RLwl/TO29tmjRhsS7PobPwUHi9m9Hpc+cYS\nC5+Y\r\n=2Auy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"897205464811cb422e21aa17e1df31e0069a5f4f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^4.0.5","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-environment-4-x-897205464811cb422e21aa17e1df31e0069a5f4f_1616812333815_0.8036791262231577","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-0819184cbe130f4db65f7e620366f56c83d224d0":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-0819184cbe130f4db65f7e620366f56c83d224d0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-plugin-base-2-x-0819184cbe130f4db65f7e620366f56c83d224d0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ca6224979e21a049356cb2b7ef44b567a1860491","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-plugin-base-2-x-0819184cbe130f4db65f7e620366f56c83d224d0.tgz","fileCount":17,"integrity":"sha512-sk86Fci7z50ABFiySvxQqF0yzPFdZ2W64+IBsarnOGH7Rlvs1zj7obJl2v4Cs3Wkiyr/KZxTrmiiGQaCO54gEw==","signatures":[{"sig":"MEQCIA1oW167WK05NJHLXBCAVaJDO21wg7H1h+loxn8jCJ6KAiAOPIDl8YQ/X1mMspzz7WYh/OH046y9s81TiOs4MHMGUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYdWnCRA9TVsSAnZWagAA6d0P/3+df7gug7nkdzIX0dWh\n1jglyQfae/vqCQQAfhkVXzoWDNNIGAlsQLWIJH38taFSqlF0h4vPoSm1bpKD\nRcyYmnwvqRW30k0La3tSEenHc0d064HU4QYCVU1vk3P9tcN8tjw7wrp3HWK3\nsCZrTshsq8dvNzrRk9C9EEijkQKtW6BbeNklOxKOFz1nr1ogyfnOtuPyAPBz\nC85+Lmsw6TDHN39V0vXHKYGzPznBPVHyyNKjAqLwLDGHDGwDBoZy9CADHYuA\n6vg9eXLqqOeWTm7kcq13OJ3kPDDtJXtiWLlcVk6Zv/Q9wk9MPKgQ3T4Ct81u\nxxO4V60RvMLJPFNNcaKFziloj6/ki0l2gHXVVEWqAXV2/ATIwT8VihtIoqM9\nFsbBA4wHZz/kOBT+Cx3ZlBBORu2kUnyQPjX+ClsiQk0YXuuWAEtvM3gxUb8N\nCGFMTIs8nM0dgWCZcZhh2y11eY9nvBlus6e7/u2xahHjs2vW1000HOLlFMZ+\nY1JpnIf2FtuN2PxDEO/IfNYr4Lzgn98IBz6qSG7FGsJZDf2VTXADTwk7NR/U\nQsI8cUajNQmKwxBnv0jYfZBgMOxBparV8FjMsjIY0tPBme9m/h1EDPsVrEW5\nO+DNIFDSaBuxtf7Q4cd6EhjBjHgyPsj5cPyG2/Jr95642cbfsypQcwKe/V29\nS0xt\r\n=TUwq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0819184cbe130f4db65f7e620366f56c83d224d0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.13"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-plugin-base-2-x-0819184cbe130f4db65f7e620366f56c83d224d0_1617024423379_0.6110479682957777","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-a0b24e663af0005d89968b1d9929c02eb5a525dd":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-a0b24e663af0005d89968b1d9929c02eb5a525dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-plugin-base-2-x-a0b24e663af0005d89968b1d9929c02eb5a525dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"51ac204c79853b3b38ba82512cc7cc5f6b3b7c74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-plugin-base-2-x-a0b24e663af0005d89968b1d9929c02eb5a525dd.tgz","fileCount":17,"integrity":"sha512-Fxym74GzqL/es92dvqiC/eDnEuidJaesvfW1wvxyhDwfGpF+ysqKeWCTBY/Eec6efaeNXtj9xVWU5DMtXMQ7FQ==","signatures":[{"sig":"MEYCIQDMp3BBn1+TJ+00DMigOU+oAE69kHzBQVh4RSDd8rKq6gIhAOizYggDrYmjiEhjuzur9U+Ki3OGJ0ZsAoXc71WypTxQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYkBOCRA9TVsSAnZWagAA61MQAIiEXWT1yFg9AtOM6hPf\nOYZaMC7HngI0zgD+SXBmMSAQdGviVQGlDiEKoJJMy1g4Sjy2YTlppJBRh4Nm\n7ns0+dsa3H8TqjcaXYe+WWDzTqJAIM5RmQgLHaYzAjxmgGer+LtxpOlz98Cy\nQwj93w8Uhq1v7cy9PHvSWXrz7yfmDPzaIJWBtcQ4kLrrzGpHZgTAcpCuYBiM\nvzdD4hOciauQTnutg3f2iOAQxU4D0VAqskbYFemPYhtylC0CJVS8+DsXj/kI\n9tMNBNHSZz2n80AEjeN1QFlKeP56ICco2stAkGJ7sY7SOTvO9zgYXY9Hw/Md\nrQPIOXl3me0Ddby4ShSt1zFh+qAadiBcgQnFeQpGxh1prFrOgIRHF1vVAeL3\nH/R/sUJ7fc0iK1P7tReOE+RtOthIHK3MdcBI5P1FIpmMOVBOD3ypz8ZHobqw\n0APdDWkga4e593AAywKirYppKN9Od7mSmXlYcjVpd713/e6GUgbFN3DYEB0g\nO89tiji4b2syFO+2vrYBuvTqjDvbFtoGkMAVK7FAdaNk79dp40NHmw6rHBgx\nWqqS0CAB9WSAyFvYmrN3+4AvPrjrMZO3bmJQk7wZi0kbN6ePrVaKNTJEyxiX\nh3dJCvAADZD7avPaO5DKGtOfSumsO5AF00jQ76X4q25P1++T5QtJn/v+iuPd\nGthC\r\n=bS8x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a0b24e663af0005d89968b1d9929c02eb5a525dd","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.14"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-plugin-base-2-x-a0b24e663af0005d89968b1d9929c02eb5a525dd_1617051726201_0.4627708608493011","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-environment-4-x-ec2807f940160ce953f8ae9d134a19d722183f3a":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-environment-4-x-ec2807f940160ce953f8ae9d134a19d722183f3a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-environment-4-x-ec2807f940160ce953f8ae9d134a19d722183f3a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac58409de880ee9b985e5e06320b29d113855724","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-environment-4-x-ec2807f940160ce953f8ae9d134a19d722183f3a.tgz","fileCount":17,"integrity":"sha512-lwNjGL/5EHkIlADerqyB781UKncwrT698ElT8FXE7XO/In9C0mhSgWToAbaKAeGNMXxYtlhW/suDx0pYbUrSjw==","signatures":[{"sig":"MEUCIFR9DIQ/JHhXFpJFAVAetr65q+tzl4dFofCIa96jK9f4AiEAoZc3q7BCXZXMHDTC31F4lUti/qEJduMRXHFIzYgN/Wo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYwOdCRA9TVsSAnZWagAAbXEP/RhWqlFFCFudiYxvJA8z\n+nCduxemm2xZO8/tzY7jJe+wOwWiJ8ZtN3vAYd9c5drVmiKzNgEpq8qQQRda\nhNIxShcOInK4heJ1Lc7gbKAbHx2l2yfWPO3sJHejXyGnOCGbrcZiQBTzRfHb\nKBbXUVcRc5jsumwk84qZHC90GyjjTD8mNeM9Xq5gfE1SKMztdORLGs5pAv7Y\nls6ljc3oGI1giCbAA0Xifdd6whtoqKrS/2tJ7vKptwaElCaDeI5TP+F8TAmW\njA2wMBBo/sHWDCZ+du/TK4gGc5ic5dU52s61jgzooTeU4gIoYLT0pZLnx5Zw\nYuQlj8qBdFoCyXha/5aBZWUb4aRhQDLmi+lKTX7tN0hxGZE6r7QAFB9Kr48a\nSaVK4DLrJ7eUW8i/irA/r0rSzjY6dFwLBIJkhmVQUosEWX5RN69ckw9fsYdM\nc4jyb8dokzYRQ6Y8OA2ZdyAanGMPW1l4zGLz4A7dwnT6i0rV6KID5xdjxK0+\neO1FGpkrXvVfKX0d07ZES0W8BCWxwCJLCv/lZlIR3n5r6NtbljNH5FYIra6E\n2VYwYLS6SFKcjok4pPA+goH61PNm7XfwlYMMd+oPZ/YqOw1gfinh4C9D6ygv\ngnKntSUC40bAKpNKkiP+/dEEUENrzAQ5Dg2DFZSgyZRQwu7Sgf03xKCgxp3x\nMEsg\r\n=TcRD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ec2807f940160ce953f8ae9d134a19d722183f3a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-environment-4-x-ec2807f940160ce953f8ae9d134a19d722183f3a_1617101725434_0.3042774446521064","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-5475c7ced937d06cabe661c813b041a7055e066e":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-5475c7ced937d06cabe661c813b041a7055e066e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-plugin-base-2-x-5475c7ced937d06cabe661c813b041a7055e066e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3150452e5e5a3c8470ae2f1c82a57bdc3b946fd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-plugin-base-2-x-5475c7ced937d06cabe661c813b041a7055e066e.tgz","fileCount":17,"integrity":"sha512-mQwsQubbV1fomryfM+HNbt2q0gLnQHynuYQ+VKIPt8qXhVk3n0L9HFbuQs6oEclXtcxKrGAnRvl1khTOAdvByA==","signatures":[{"sig":"MEUCIQC1ubyqdfGpmBwpBJUu/dseCnN1DQPvwcMzG5Ho9ADm/wIgdRt3qemPY6ySfShe7RnIHereOxzlpjVJyhtrBVo2ygc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYwP0CRA9TVsSAnZWagAA+OAP/RntUzW3TsDInI5L5FsP\nd9u6hq0G8IIoWhzPaF9a6ZIUOM8ZNkdtpmmKoalMoNl7aiodonLePmZBLtgd\no2WsTJVALXoreYkBJDJ/iy4ktTrkeOBvWDHlE9AUM96DlYgT9ZwXVmP+tUIy\nDa9pcBqV1i834tV/hb0qRVCk09wBFAZQ2MCvu+dWSrGO3V6m4NiEcsvsicOz\nqMEZakw0t9IWpBAIa7sLlmagGhKPy69ILL1/RIapK5s/QoB+6Xh70e3ToyxZ\nxIyRdSN49lOcq8MBK+GsHwsolnBW+cvFDnRPZgmYmFZxDv1tQaWeWWVyAUpq\neuBVMF8no9/EKVsPNNadRThY4NYrFpcCuBxHU0XP6rWbzOu+X8i0kH/Nsdn4\n9qPTHOlHAZ2xpIDFcQ+pH7jQQ5SMgDKqPD+H2TI2XwpMQcpCNZyPuwji8dtp\nkUXKQzGYuB4BbBu3EF7HcDhqeEd4idz+OnNfNAYXXTnCAui74FD7ndDlYxXz\nmqAaI/CuiH5uyf7ft0zo1zweU2yuEvaLnKh0GUWkOwUErq9QvYzZ7q1XNIO8\n8C59WSaayx96pzw6G0mdFl+v1gMkBHwdywMXGOb1lf/KgoKaCh4S3c28IeFb\nb0ziHpAte69GB7ilDoH5V9ktM0t8WdojNs4LRq8bUZ79J0+C7cQnhN077MYQ\n8mIn\r\n=13Ld\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5475c7ced937d06cabe661c813b041a7055e066e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.15"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-plugin-base-2-x-5475c7ced937d06cabe661c813b041a7055e066e_1617101812100_0.7906375336939437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-1398396dbc4d48dff9692cd6b848083708aa5ad3":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-1398396dbc4d48dff9692cd6b848083708aa5ad3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-plugin-base-2-x-1398396dbc4d48dff9692cd6b848083708aa5ad3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8718f5a50f5e8a293791494075b193fe31611e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-plugin-base-2-x-1398396dbc4d48dff9692cd6b848083708aa5ad3.tgz","fileCount":17,"integrity":"sha512-xWFUDxG+JeT+vcyLL+6pdiE+rqqDDulM+N2i2oePyZoZBvC60JsePGX6IFMMvy8r9BdS91J6vQM9n70ItY5gtQ==","signatures":[{"sig":"MEQCIFhMq6by+cZ/8y6mO+7Cc56fJT7io3WHwKhA6zDSZdKZAiBzQnf4D3Ixi5HezecqzaEIatA+x/J7n3R2w5PI4E8RfA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgYxdkCRA9TVsSAnZWagAANmEQAJPB55OJGWUlTgqcHDTN\n1vKanj9cu3Mwf3SEJTndB9NSYzXKGOtIkqleDOaZygHyqkcsR6Yzg7ZO6BZL\nas3wXsq8YnqjD7b5z1mxjmVN+3JttmSSeIxicXQTVO2jDpzjIWtWLks/RqNK\nX0NBjMFp0pSgcHzbbhQD9faklPqNVVtElzm4k0b0yHDWGqqLTi+3iC3ZDv3U\nCyrNYuhrUEqA5PW2jsr31ay0Y5Gk395ORYIMDDqF57JZDXa/Md4AVKYdhalG\n4p8OuinjiHtG8bH+ixiE4aIZEv22a+VBA2lgdhZgenNFKPa++ourmHeWVbBN\nhWaSNVTOdod8fR7imcywy8LsGIoonbzIjhD16eNvzUUz+r6gCgnFsuPi32kN\ngrv/L6Ql5K0wRRC1g0DOEytJkb3qbZRewJGM8/NTp9k72vPftKIwDtMHc0n1\nY1fH2z0E9FGvgswM6xUBInjid3EuqqcOcbklj3AEzuk6uzuCKmd1qHsrfSmJ\n9tFuFJlyBdnhlRK1Sli9+9JhEFtXvOlCGfOqXD6rN1LQMPmnU+HkcxVdOdU2\nikdlISswLMK2xsVF7VKHN9wlTJ3MYEqfCkdS1vUlW9kXAJlGeRAd0koaMIsL\nKwvQzgzFeqvH0jIAnNJ3xQT5yjp4kBkRR5OR6zmr0DOdIL3/HA6MfosPvkKh\n6k0g\r\n=cpoB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1398396dbc4d48dff9692cd6b848083708aa5ad3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.16"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-plugin-base-2-x-1398396dbc4d48dff9692cd6b848083708aa5ad3_1617106788149_0.6424512908367122","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-non-major-926b47bc7e4179a7bc7f71bbbce4c5c912d380e1":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-non-major-926b47bc7e4179a7bc7f71bbbce4c5c912d380e1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-non-major-926b47bc7e4179a7bc7f71bbbce4c5c912d380e1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cc2ac35d08b0263f72af185834c9a3b99b684fb1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-non-major-926b47bc7e4179a7bc7f71bbbce4c5c912d380e1.tgz","fileCount":17,"integrity":"sha512-Szcb5SvtYEdlu0Goz+J+9EnVUXzZHg1YPUYJA6z+BeMJuxnMrmevh6iCNoKdNHHxnUC391H+ZNQBZmSOuty2iA==","signatures":[{"sig":"MEUCIAJ/u1bjpnY7Y0buLkSGF23u/kg4gLAgKIGMzqqTT9cKAiEAzI63srfe+rEJ9OsOUPZ1f0pW38Sq3HyYR2nrARpdzM8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44160,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY0q+CRA9TVsSAnZWagAAeNMQAINQ+8B8vxYSV6o/j/Xo\nJjEzYvAGJlhFLNVAFqO6vA6Rk/JELfuT0l10sr4M8Sz7JMA6YVfTYRkAjkEm\n2RDctqTTca2nK2EV2bNruT+QP06/xDkL1LaegMuvClEZ6NOJbDC1jQCh03B9\nYuo98AjfYENg7/RtsFm5NxfIkq2iWpQjOX4VmL8Ph1RWbZjZ9fE5XVtqPjBz\nwtMdI4YpQRoziuFOiwWQfhn5M/37W+UtLaYLqu9DShu/4RLoMNceybu2MoFx\nbJlcAXSwG/hWZfGRXOx+fdH90Lcoq24Wsd9gEpAos8xNEvlQTPxa34OXOin8\n7h1wnFPwMUVLLsXuvlkvtc4lHpxSIDcO81+KbawmHDE1Y6T1yUHQmpku1oat\nADUOPgY8hGXVI6qLfAeCmPKuhUHrhvs3WoUuPIyvR9bPoAFCILCAUPtga9TG\n+a79wTyIlqFNQSgf223+J02YFsEgYJWp9P7XFGuG7pAovCWpsTNfOb6tD3Qu\nk7I006dufs3hA15NYgLgeVtEebXvbBXiNtyo/J/O7DAfRBVj7KQATKm2RVxV\n1GT/RvmsRpXojoPiYgaJot+zHT6brJWWGF2ChYLLRkN/lEeJQGEb2mjB7PEx\nrVitDF2g7Y3VJSGwIgz9oWtVfNufuzXXtNCu1xSNQvB6GZA0Tjy+On0rYzY3\nKRi+\r\n=Yu5m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"926b47bc7e4179a7bc7f71bbbce4c5c912d380e1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-non-major-926b47bc7e4179a7bc7f71bbbce4c5c912d380e1_1617119933619_0.17248364895553014","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-66511eb2a00c69b57e34e34c060848dc8b50fc6d":{"name":"@balena/jellyfish-test-harness","version":"1.1.58-renovate-balena-jellyfish-plugin-base-2-x-66511eb2a00c69b57e34e34c060848dc8b50fc6d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58-renovate-balena-jellyfish-plugin-base-2-x-66511eb2a00c69b57e34e34c060848dc8b50fc6d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9ed5e867353e3e507e91cb0d834b171c18b71e8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58-renovate-balena-jellyfish-plugin-base-2-x-66511eb2a00c69b57e34e34c060848dc8b50fc6d.tgz","fileCount":17,"integrity":"sha512-yCCR8qHncb4irGKJtaxe3QLcUHF5BYjvyHUaKQm341ZDiyrXL642w+mTpAGH4+5F+JGGxvJBnQdP2n9qCeQ30g==","signatures":[{"sig":"MEUCIQCkdy+FhHZMSkGAmyWRz15ncIGcRbvMJTzVCRHTmhQHDwIgHCAaDOxXc3zGD67fbgBUERz1HZZ/j1y/8JM5cwvMuXU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY0sACRA9TVsSAnZWagAA/5QP/1pr0U7ht8bXGX5qVXMu\nH4PV8gVZqogW1taRvfCqzHdtzBsellL0QTO33Z34nllgHYz5LgEaClI/AtQX\nMm4iJEIgEEu6q5HpFgguO/inQkd0pJauplqbJYyA5UrjKpvNSgjTmZwGvl0E\nL9gbsIK2ruBAf7RZwNDU4Ho+cY5eCiYOryfSXtlt5ncOj6nTFOoD7xC61zVn\nzNoUafB3yY4eZJ5LY9cs6M+qg5iIv5pFC0mykjc5t5Hqdb7VAOwHUxrnINlE\neXI6kc5cPWmZMpZYjXuzWplgKt8XnQUPexDNuVfz7EBsF+16tziB5BVL5iTD\nEaYO4bWveL5CiDIqsSh83o/2ad5uCWpq7K5o6phtAKrFZeJIdtLCyKs2tGIn\nWMUgh1p4dHVZWIZN1fIkYoD+f6UeDnDzmsC/6Bh8EPCYgejgd5sOXP213fSv\nhdNK6ukaTs/4LAgpF0eCtfj9W885iUvWxr3htENAF8lUro7WAKXdHnJwsSk7\n+EbhC9jMqpa6ZSx5uewpesHYo6zUf4rfAjwrFebZ5BG6clKkmv3iZ69wwO4T\ndXhUjiWdV5oFaW88Z+DUNh/1TY+XBWNG1Rje58ydMBdfzuqUIfKg3ozEUS0w\nokFVq5SD/ARcAJm/30HIc7RoZP8goK6Y3QmUzVsw4IgfPnvpyDgAY57Rve6J\ndA5j\r\n=6B7N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"66511eb2a00c69b57e34e34c060848dc8b50fc6d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.36","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.17"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58-renovate-balena-jellyfish-plugin-base-2-x-66511eb2a00c69b57e34e34c060848dc8b50fc6d_1617120000336_0.20535248140530937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.58":{"name":"@balena/jellyfish-test-harness","version":"1.1.58","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.58","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1dfa734bbc3c4c1b306ad86fa8a47cdff7e6be3d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.58.tgz","fileCount":17,"integrity":"sha512-iDJNosdvEXqvJT9LB/oloHDnEvB8os3A5JI9GR8tgQrWzaZzk2Y8WoM0CtRpfOEc9yXA6c90SlDtU8VNqCfxWA==","signatures":[{"sig":"MEQCIHRWGEyNmE2l3d1zg8KyMsQjrzbf/S8S8TjEI4MVLQvuAiB5DsJDsgFkqG8bGyp/sLkNtuXI6CxMS1oPT+XOvgS7jA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY0uYCRA9TVsSAnZWagAALKQP/iu2w9IW0Q/E06ydEvZE\nM+p2ti6s9wcffrvD3hyPMhrm5E8gkCeBRDjeL58rLl0XXmNkt4zuPMQeK547\nKaMsI2BAT6/FwDdXU3DtDiH4nYOCQ8ii3CmY1UqRz8OGa8EPRXlC28lREgKB\nVxs4JokMRO6Xgtr/YfVrPZspHlspCMhk4V5L9AiyhcKpQnJAUDUR4KjVzl28\nxj+z5BB+1gDhfIVL7kLoqW7qjWjOgnBtGKooF29BtAYUonpziCZEPWD8TapU\nQGtCzSpChrDoi6k1D2k650nbqs5dTlEqNt5oRZ2UeE4FuVPDgVTkUf5GumRt\nesWE0C78I0R8Pb7Gra4+enEsjZxMEiNXGKZcr7SLt9NAuApqSvr1sU5cckar\nWnko8yvMmUORGe/CM13yq6R2x7wpL9ctLy6OzpcUhVuew+DPbVTm7AVZ+qsE\nxWeeqbylWtaGAVTzG5+m3zedrZ+tSqTSORk96YEJiTKWl1pi6B8QpzeHzLxQ\nzrK88U/OogNIE799ExyhyU199Y9eMkqk73LRhroz8HD700HGYnM7mwnPmf1J\nlJs1BcU8dVuuIaDWfN2QLk0SnnCP1rju5MdpoqTseVDvJsUvtB06uBa+iHjJ\ndRfB9F9uPXNjbw1xPPiLvSSxiaUycyDHWu6W2WgiNr+MiRmjAWBYxNcx0kxg\njkyB\r\n=U2Oh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"850bcd30be04dee2330ae6bacc751d75e2252952","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.58_1617120151879_0.5973092519926027","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.59-renovate-balena-jellyfish-environment-4-x-14f087fec609331239f71ef0ec0b8a412f61f919":{"name":"@balena/jellyfish-test-harness","version":"1.1.59-renovate-balena-jellyfish-environment-4-x-14f087fec609331239f71ef0ec0b8a412f61f919","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.59-renovate-balena-jellyfish-environment-4-x-14f087fec609331239f71ef0ec0b8a412f61f919","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3fb7be8c89c264beb47e713f9a45f8ba420d76ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.59-renovate-balena-jellyfish-environment-4-x-14f087fec609331239f71ef0ec0b8a412f61f919.tgz","fileCount":17,"integrity":"sha512-e5m83pN+5L22UmdiZYb9rUSykYmDXtKs0aGRWH2xRhQyZnlJkR+UPSoTiPyaQMz3uo8UOsRbfhXycC6N6hEPrQ==","signatures":[{"sig":"MEYCIQCUC+dRWS+YO+avLH/FxHEoCiOoh/o/YM6nhoSKpOZXBQIhAPS9CS0exKTK+EafP4eL2hjy0MjuY6XJ4CKbpoT+AYLT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY00GCRA9TVsSAnZWagAAtF0QAIb644dXHnR8T8qaAf9e\nF5W5ZPF3I6gL5fkVkKAkPUic1xIsXI4nWHF1Nujntl/86WRDoG+5CAoOF1QA\nfCA3UyBL+Sqs/O6qMY0NSCuM93n51l7QmOkI6nmmY4R77KjEwbeBrBgUEyuQ\nsz3MFHp7JH5Dfzph/VKmC8Gh/2spKPoKjxqDN4h85WJXs05rFybKN6KTaPKB\narQgvhMZecuFzQmnkhJHW+Z1vDl+fvBG+5Bo/LZ30Bzq0QTco7wsqCclvWOf\nMVangzDLqTuS50ymq+l2TjpAbBJv8W1qVygi5yBEPfB4igMvLLWX0JMRc9ay\nkhmsoneke0uZTCrazDvJp1X7rTXoQ7SVUuho0nwNGPg/MU5WFbZ6FmLLrRun\npRyxGIKSDzQvr/u7ghGz+Jr19555hqTImCMIaF1BPXmNCMBisVp+b6WaMisk\nEiNqKdOlS81B+NayHqqkqz8xk1xlO39bvJLFTGP//9r8hul/MFrzYDVUwF1P\nNHb2BFSXHbw4r0/XixQg67PDqkUX0nt/VxuBLKtNTXFSzUYuW5r5r5QllNtV\nOY6cvQaZD66s3sqwYtHOWpZmpscXXUu3CvW4kdVj1gKwpSDbWLdHrBxJi64w\nfgkfmiAjwfAWJ7Oca1ZUisMhUSzqVo31xa9HdtE8z5Zx4AZ17ODJkM77uxuj\neLM5\r\n=AcA0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"14f087fec609331239f71ef0ec0b8a412f61f919","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.59-renovate-balena-jellyfish-environment-4-x-14f087fec609331239f71ef0ec0b8a412f61f919_1617120518616_0.8870228512248408","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.59-renovate-balena-jellyfish-plugin-base-2-x-a0407daa73aed232cf1a92e295e6b7e31aa14c5c":{"name":"@balena/jellyfish-test-harness","version":"1.1.59-renovate-balena-jellyfish-plugin-base-2-x-a0407daa73aed232cf1a92e295e6b7e31aa14c5c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.59-renovate-balena-jellyfish-plugin-base-2-x-a0407daa73aed232cf1a92e295e6b7e31aa14c5c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb8763511b3f7a627933518a3a3cdecc460681f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.59-renovate-balena-jellyfish-plugin-base-2-x-a0407daa73aed232cf1a92e295e6b7e31aa14c5c.tgz","fileCount":17,"integrity":"sha512-u7iXyABZZSwCm1qR+7kOQdgmvwoNg918HAv8+NXb6S4TwyqF6dvUbLj9yNzmZBr6BlxV09EEG1xt1qwc3RD7ag==","signatures":[{"sig":"MEQCIAC9NMnHMwmTmgIHOTK7tJoyCgK4orrpAkxYW3R/lEY5AiAWUVKQJJ3C0V8F95FDqrAvtyO2xTH+fGozJHoVJAllPg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgY9shCRA9TVsSAnZWagAA14oP/2Ps/jAfU4zZvl7CK1eY\nFxI/hwF4k82JbgKl6Vt0h0Gnqm+DXtmbmjI3lZs9gIOKPgcboocJWEkd6vqR\nucBVtne02+wV/2/VG3ctUyR0X2Z3MMA71QZe6FD1+qMiyyky5XcbMBxEDxd1\nS0cmpRRxm5DA6CdRFiTr8QO3t/30UAYwdLweKyKCRuopW/aY3R5g2e04aPa9\ndfjaTqh7WXCFnCTkVVqGWzLPXRba9qNz4NKXWOx5vMyPJ/GGB50PfUroU3/z\nRR1MErfMZVPOEfQbn0vuzwkEq5uMcejG1OAs/NR0euUu4tgd7QY/TT0v7E0T\n/JH4mQDfEeXpb0HBNci3M5DrPR9Ys3W6RbmQgefu/ECWdkIGSaqF+IHpXFls\nNlwwAkz7dZ1zhkeHZaCa8cUf0fdSiNODS4hS8RTMj2tlCXx3ooTvYXL38DAl\nUzZCegy891YoCYW0CeRTYSOpjH7ECesjyntPGEAKYGPsX09KGT5O3fzEh37j\nsR2VDqtqyZP7jh63OsauEtT6cV/Rwf8MCzT3DWGP1+ru9oajmApMO9rkVcd7\nSWst6uBvUEH2HlC8BQ1nj3G4f9Htpv3gzJRroSCRH4brMo7gvUO93AdHY+cY\nlZDAQhvctSMQmSqHrCe1mgNWPVGqQKfplkrIwXaHHVyQxsXWCSyUF2nCC7Ij\niB+A\r\n=SnIb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a0407daa73aed232cf1a92e295e6b7e31aa14c5c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^2.0.18"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.59-renovate-balena-jellyfish-plugin-base-2-x-a0407daa73aed232cf1a92e295e6b7e31aa14c5c_1617156896590_0.5067539895001905","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.59-renovate-balena-jellyfish-environment-4-x-1849b2aa6e10667112e5df5f302cbcec040e7c4d":{"name":"@balena/jellyfish-test-harness","version":"1.1.59-renovate-balena-jellyfish-environment-4-x-1849b2aa6e10667112e5df5f302cbcec040e7c4d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.59-renovate-balena-jellyfish-environment-4-x-1849b2aa6e10667112e5df5f302cbcec040e7c4d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0206c91d6408c709ea4b72fd52dd0c4afe2a948b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.59-renovate-balena-jellyfish-environment-4-x-1849b2aa6e10667112e5df5f302cbcec040e7c4d.tgz","fileCount":17,"integrity":"sha512-2WirSP+B3nDi9rDIZd3h2Ywq0rmbtz1ToQS6fTmPcINVnCQGXjTyPgECkW24KfBN3GjCu4gvy35orJfdcqM6Sg==","signatures":[{"sig":"MEQCIC+mJvvfudtNq03QqWKmXeGy/RsfOpk3/mZoyGsHouiTAiBHo2LJTGJbHmDlagUGExNrcCnOrH6nyTpChxTnH7T7Wg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44362,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZB97CRA9TVsSAnZWagAAPEAP/2L5E1IAUzaJtaCaihvJ\nbTHXGMku7vGvxFxvWdwe8Y5RpyF+ZvIqRdr0CQnQArHIpAVTCK20IBSLcCNa\nHqzueeVtf6TXJYWxvh12avWD2EoS/SBrT98kPUufexLZQXbwZUOWVRmFC9SG\nyBavM8GqOOYiNnB9czznxJijE5jo6q852ikBSyDnwPSLeVYJDjtcQNj9cxVN\nvOu+nW9869uKCdeo6b0YxwEzb9VGbd6jyV7hFki7LZ30d6AaCLGvEI9fd0JK\nojy0RC3Wky5iaGCizxxpauhMsffhcAoAJ3+8j1u5HZZTNHcHNUsxzb1EoEpy\nUpmDSEuvq5WBgz612lx8zsv92MjJVJSSWNhTn27Cccm5dMnI9c59egL7qCJ4\n6mnVrzI7Cnv2Du87ksYZyBowCaSFqWbqpCjHTFAI579NxgvXs6wddP/Ai0rC\nVN9lZifyC4eYmz2Es+o4Nig6y8qX4HvVD0DDSK+nUMmT8eia6jbs+kWXA8IS\n6ypJV7Nn/igCNHGHFcO6ZZFFrYk2UH1haHjjcNSeJHXGRqZq6SUqhdTkR8sX\nHETD1es5NfmIVjlHsmavrN8sXdBwsPUh6H0wcpSiTWZ30qKps/jwKqq6RAov\n6KQqFnxE7uc7t051aWMC9nB8XhUl/1ZSKcEPu11qyBwbuIGVWyjdLss1KDov\n0USx\r\n=orRs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1849b2aa6e10667112e5df5f302cbcec040e7c4d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.59-renovate-balena-jellyfish-environment-4-x-1849b2aa6e10667112e5df5f302cbcec040e7c4d_1617174395200_0.1694194279616268","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.59-renovate-non-major-f3591b2ddabdb888f5eba926ff5a6532f20301d3":{"name":"@balena/jellyfish-test-harness","version":"1.1.59-renovate-non-major-f3591b2ddabdb888f5eba926ff5a6532f20301d3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.59-renovate-non-major-f3591b2ddabdb888f5eba926ff5a6532f20301d3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f5a368deaad226254c216c877f8a3411f7b55d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.59-renovate-non-major-f3591b2ddabdb888f5eba926ff5a6532f20301d3.tgz","fileCount":17,"integrity":"sha512-iqphWCwXtyOU7H5Eu5zzTJBU3/lmg0BXvsLobbDCKyC0AuYgSinWfL8nCI0Os50Jkn92EBcIQr9VZGX3TxKV0A==","signatures":[{"sig":"MEUCIHhrl11PC07P2c5f4k431IqHzZdrG8xocWLpX2DgSKSnAiEA/GhLw9NO43z1AE8QWOyPjATN4/B0Srf2ZGzNIjwY6kY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44229,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCAKCRA9TVsSAnZWagAAFtEP/A+OA8fdEGXBcZWuQoq5\nEUJEYpAR+oOWJxaDLfXT11tV903cRC843Nbb3vVB5BYgYn8Lb9iQb2cgzbqm\nHaNpaKjXIx/6iJSYBOTyWjVSnztTCE8AwmhRLFLeCAF0dCab283sxcwIvYdA\n8AYE952yoX4GRoeRlmM2Zgujktjv5FWm2W4uVGyrkA7RnHdh20vQY1U/rVC4\n854hdFdorVdY6H16eINyXply0NQpronmWcqN2GJ9Gn+9n3JJZof2HjyLG+Vi\nQT11YJZWHtO7DDGye+oqsmKDPatm+j3E4gxkhBIz4oJhMcm0wsGN/RA9JncN\n8f4Wf1B4nvaWwLyPPUbQjLoCF5sOgWMQKx6Y7f5eSSrWKQDnUfIYahPDy4mR\nrg2Y8hL8jciB+YIpVLBRJXMLgbjyg1aeeWzhctSN5s7IOPEZ6hXELgu8cVQq\noWMl+Jd95YVfoNfM7v5HlUgpcWpNG5t9GTklGB0bxhTSvp7aZjanLbC5sb3X\nP7aOmssaOJ05MQ7HnBWSDzIc0WyIusjYQWMXIZX7js+QQjOPtEtym5g17Lkp\nOdQV8Ddnoa13HgP8zcRz/g3hyL+yBsAFQ8Kd9snfOs43/+CyJTqvHtHbeI35\noFiNDnb2fEnAhK4qpHv2E5mHCRoOKfZI82gk9zctQm8abucwVVOfFwEkXyA6\naegd\r\n=D1HY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f3591b2ddabdb888f5eba926ff5a6532f20301d3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.20","@balena/jellyfish-sync":"^5.2.31","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.39","@balena/jellyfish-environment":"^3.0.1","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.59-renovate-non-major-f3591b2ddabdb888f5eba926ff5a6532f20301d3_1617174538475_0.05458138757596975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.59":{"name":"@balena/jellyfish-test-harness","version":"1.1.59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b022320b0e2aa686ffd80e24be42e023d26a29dc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.59.tgz","fileCount":17,"integrity":"sha512-l5jm2po5QJ/TMBii8GaVlBhBo/9P51NqNXC609tkZG+NmtssJs39AJAtrwvU106iUE633UVQU3qmZiLGELgy2Q==","signatures":[{"sig":"MEUCIAaqojdtdwPrAjBUv3gUK8Thqx8KULWZ+V5XdHjKhMnBAiEAzn2UOS4Pm3hqdLMK2Iq8/YLL2oZSBhHO1aIuCQ929HY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCBdCRA9TVsSAnZWagAA1iwP/1jHGwmwD8EMZZ87nVOG\nTZ9Ze1KlcfGQ6h17/G+u0RRzMBLAg+S0Pig4ajN0mcIUy6/CauZkKde+X6E0\nxP6fKyp9iIoxIs5h92kgjU1sj7EkvkUkSebk0RaRxfGkCykoRMb0979PtorW\n2oAed0A+n9xd+Vj8HRYqNQ/ZV9tB8qajOkFKMXfARTZdQril/H5+COYueGuu\n4mxMaOH4LqgkryCfXIEIqxrrQMBSi0xH1eEdV0jzdMtit1g0qQ9JEnLyPhlj\ng3eaoD9v/tODAgxqa4ABj5jw7c0nrDvsRoPsbq8S87ZIijM3zsSoNSBSVnAD\nPdiAxUD98wKDc2tgvpr3bsuRv0FRCZnGM+SNBGahEsEZIlojCRV+GiQUZbc9\npzYDIj30hMpH/HTkMPL6qJBa8QIu8FxDaZ1w3SrEvwHhj9yX6Y2OQQD3wjXW\nM5eV8HdRF6uI2pS8Xu53H/pWYX/2tqTSzB+1YSWziSaf71qe01T93EMKfEt0\n9eELEkbs7dCMgEptevhWkozQJV3E2fBLEtODCoyc34ByR86h/T9/Bb7yH0+B\nCSG9WHp63MRT4llAW03m7cqGEXUHVGX+jyBqdTlIshjKL33Nta0eyNvTSN+0\nINqlZ4zP5Huw6pcwZYHUNtqNSZETHtBouLvaWN9LXJvAAOZ8xCnLyTxZjJ9B\nO1r4\r\n=1UjR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"868ca1a83afc349ba3d8ef59469e4c1f1e0b64b9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.59_1617174621102_0.7812479447712664","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.60-renovate-non-major-69f760670af6d5d5c80e1065816fa009a49ed32c":{"name":"@balena/jellyfish-test-harness","version":"1.1.60-renovate-non-major-69f760670af6d5d5c80e1065816fa009a49ed32c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.60-renovate-non-major-69f760670af6d5d5c80e1065816fa009a49ed32c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df1063800e4e71bb5990730ba7ab8f3d9aa11fc1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.60-renovate-non-major-69f760670af6d5d5c80e1065816fa009a49ed32c.tgz","fileCount":17,"integrity":"sha512-Jhb1wHkFx/u2s8xmulY5PlyvW4WIsMLO5rZ4cFHIyz7BFY1RdjvR+vNbmUseShLedFbR8RX5b67iLW6E2BssxQ==","signatures":[{"sig":"MEUCIDkQMBRnMW6x9v6IauLUhmj3uNE2XCOOyJUga8csbz+sAiEA1Br/ALdkSynwX/dYQsCBl1n5p4AAZGeqbd1x7XFauMQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44408,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCEvCRA9TVsSAnZWagAADOoP/iNZ7rvTmbymGmVvjeoN\nxoWfYoT89JS+iKFHnCqhRtjtO9GE18IgW232dRYwH8dJmaes5wcRoUMU4Hik\nBgoch362oX3v3v+u1fTsO6OfuTXvbGa8KROKSuHaxFbR3U6/KubM9Tya79vr\nts1y4y1LexLmK5SwvbcqKBRcQ05vjqcjDu0B1MFm+Sws8h7jqmbwO0dOAfuA\ncPCuM5D01fWu1w9TcCLNhPctw1838GHrAq5y8HJBsemYGOXVrH5i0k3nVAFf\nNVMWGqcW1UayihGnu+XLXxQAD/0MUbvOnN8ekPFM7J2ZDMaUtAFFfz6PD19q\n7QYvg504KiWLjN4kfMDoAjjbyLOpiwRhySqh1sMGxUowuMqPazdFmi/j6WLT\nqs7ccyosJ+vNjO5/f/eGF8JxzEgEo6fJt94UHrzApPhD1TMqNWn3ZVQdvE+z\n2Vl2JDg3eNtDe4P1aCosPhz8vzIprZfM2AiaYnh+W8EkSQ4CfQlrG+qmwnGq\nFY910lGv6cgdS6miEfvA05ybiPPiWgxAgzH8Q/wag76Jzbw8DuP0Ilhabdo1\n5EpvEYdJHb3axoqFwEn7EHspleklycgZOY3LqPFXJYXMjq+08Q0sRwEEofIt\njHLRz4ItXtU6aLS5HIdJBkCqlUJK808zI5nw3jtZoLBkKHWWC1w8XwzUROCk\nIXt5\r\n=tAZJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"69f760670af6d5d5c80e1065816fa009a49ed32c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.20","@balena/jellyfish-sync":"^5.2.31","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.39","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.60-renovate-non-major-69f760670af6d5d5c80e1065816fa009a49ed32c_1617174830639_0.7889666251148613","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.60-renovate-balena-jellyfish-plugin-base-2-x-c48c55d67a7d573d3b4d9fa1cab292016104d726":{"name":"@balena/jellyfish-test-harness","version":"1.1.60-renovate-balena-jellyfish-plugin-base-2-x-c48c55d67a7d573d3b4d9fa1cab292016104d726","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.60-renovate-balena-jellyfish-plugin-base-2-x-c48c55d67a7d573d3b4d9fa1cab292016104d726","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9c7fdcefc6ee4895e068a77becd72eb9004aed1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.60-renovate-balena-jellyfish-plugin-base-2-x-c48c55d67a7d573d3b4d9fa1cab292016104d726.tgz","fileCount":17,"integrity":"sha512-0CUiveQDXQxj9ign6cAVrRtX0xYYqfZIbArCWsJ6LuLNkSJzC62k6FvZlvXycfv00GmSFT9/sAz6W2Yrvdwg8g==","signatures":[{"sig":"MEUCIB9ULd4Nzn1xbPW6jGQMQ+VDwh4aROh72cFEBUisUHmXAiEApASw711gIaLc+7M1cUYLnA5icJBpJZjKGnIXOoONM70=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCFXCRA9TVsSAnZWagAAtMYQAIB3LmHm6NlfdOtVxLnL\nurCpKSed0RaJgVA2p2NM1UEiAngiL+PsKe6aRYWl8iBzjmRlB+6KFr/RKxD4\n32luy6FPDUWjR2RUXL9DjmCBR6I3XBrnUZ///FPxpT5q0R0CRPjl72AUCGpl\nnSOEQxUPu2ziXRE4Dyte0smEpFteT6XUCICvIR9RpzfW1efqUKLTktV1OZc7\nHanDM0p6d5cBxZzUr1AnVagmE7mM5evhMD2zxPUzsLXQRd81EzsbtQzovkq4\nWMVx169Flyvtv5lrekWpJQByishX88pVlcARCyKlQdEqfPqaaVLCqS6Pvl2H\n8qTXAfEYVgdycBbgENNEwUT6D/2o0eYadN3qwngHF5EgBMLNgIYjoV0wwydO\nS7Le+Y1qR2aO/nH76v6/53tx9rjnvbySKaZjmqKDOh990bvN9Jco3kCYdMfY\njHR6mAYNxKyR/eDyrB9G+uu8bkoAyx9lhadJW9WDitDk97ZWN9afvENfcTX0\ny9ek47TqqswX1/5KTvsw0DuIn6jItDBxHzK+CdjEWIwRUZ+PjaoU0cu0aLuz\n7QGtCU+gdFUrL1jEtZ3Hk0+dXUI9rXBPegYqjzmBII+rSZrApPo2Xc/35zF4\nGscrFYv7yeud10czEsvF6Ckvx0Euww73Mm+muNDWm0d9zsVboOY9mVkQaOjY\neE0K\r\n=cVfY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c48c55d67a7d573d3b4d9fa1cab292016104d726","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.19","@balena/jellyfish-sync":"^5.2.29","@balena/jellyfish-uuid":"^1.0.78","@balena/jellyfish-queue":"0.0.486","@balena/jellyfish-worker":"^3.1.38","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.18"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.60-renovate-balena-jellyfish-plugin-base-2-x-c48c55d67a7d573d3b4d9fa1cab292016104d726_1617174870983_0.7986135605761626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.60-renovate-non-major-7e34a169ab7056226f4cf89f950ca045e12e9660":{"name":"@balena/jellyfish-test-harness","version":"1.1.60-renovate-non-major-7e34a169ab7056226f4cf89f950ca045e12e9660","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.60-renovate-non-major-7e34a169ab7056226f4cf89f950ca045e12e9660","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5bbcbd6c258481880cdc62bab9a604de9faab7ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.60-renovate-non-major-7e34a169ab7056226f4cf89f950ca045e12e9660.tgz","fileCount":17,"integrity":"sha512-5vPA3Lv4OAwdj2q374nVJNubZZP4xpWeTbECXbltDe7ZVGXStkWqdyfQCD4dYUvUGiTMjJwEvCLMjV1Gc2xxHg==","signatures":[{"sig":"MEUCIBBTlVptPJo0RZX73P5O1TtCj/5z0RTi60ZWpu0szcc2AiEA4UXUF8tzFln2puAvMB9NJGJ3GFnBj8CCb3rVi0vNzFQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44408,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCMPCRA9TVsSAnZWagAAfQAQAJavdARl2+54GCkBmPTn\nHinT6Zotu+LfO5Pg7tw613bsRQutnAZ2CFCEf86HMCIclazGoBtIR2jAvUN2\n0Q+FYQRFJ9NFVnnwLktXZT0K9CZ4zRz7UTXOy4/v7qIWpOGeYnK3ODq+9BuS\nPAjbY7YasIxeQvRO8Re2tS2zSvU/2Qmc5fWV51WBzdtkClhKTHOrFquYKhYI\nUfrd9BdZ8kBTyzne+R207GDRi8pQ5XoCoquwYUv0PVqz95H8828laMoce76o\n9yNGz8B/8qJlVO5W7wLlFJddEg0R5c9ZeJ0KFEyhF/HrnlC8Lh1TVSq4Nvxw\n8Aa21oKGi7WkvW7qTdSfeeER/k1IrB3LhL67vrBtl4GA2rEHagwOKqrzSoM4\ns2Hw7178CspfVQHiLhydke3UVZtGggGZ9gv9qnbtyZJDAYavwaLZbLkxPNf2\nyFOIfrSFIf7QUbsNlMhjDU9iRdmYUjUEaDc/VZcjtD76fMuwkhtIhdXEoq7D\nUMnGWOvmoKJ525IcJhU814lrj8KyOu5ga3YGeVYPd2H6n/zre27VM0viFD04\nH5VYhcGlvx6tE/LAqWxkvxdBWQ5W2O0l+pA0qoDUaNK4R3Cv+NX/v/eU2GN0\nksEKn9t+FgT8fn6eQLrcHPmiTPfZzbgSmd5foDB9U24Q5HXVUScBSZngdVRd\njoC+\r\n=FHfY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e34a169ab7056226f4cf89f950ca045e12e9660","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.31","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.39","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.60-renovate-non-major-7e34a169ab7056226f4cf89f950ca045e12e9660_1617175311120_0.8620192297076956","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.60":{"name":"@balena/jellyfish-test-harness","version":"1.1.60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"033d317019119c855759d552d9d82eefc30e226c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.60.tgz","fileCount":17,"integrity":"sha512-RGpcnXg3zhduMaqUviAfih8lDiDCbe/DmEKMk6geXefQW+fFZ/cbBQSjDolAVyqqs6Ms8cmPO/GGvw0XQPNbEw==","signatures":[{"sig":"MEUCIQCSWd59H6lqgxLel7o3wiBRIoxFnktXjciEJN9/mYKHDwIgdGZtjvygvymp52hE1pp0sEa/xEQh+F4xr7nliGBSKJA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCPKCRA9TVsSAnZWagAAIC4P/0Pm2EfML7YZzblVuXL0\nNtI0DMzR70kqELubDkG9jjJhokZutErO3dhlWq/JiR3NLkwOL4Oxe3r+JET8\n365GdM8NYWhnxkxI12H1j18yIOb/4t0jqKpFUq1s55kCrcv4A7yFTA1/jkKO\nY93QfSaDk5qO0P0qiZVLY2XKbbkTXjF1RWDmIKwcjrwn0xWh+9JOle7lC0q0\nVEDGyTKsxFJm7eGZnSK8AZw7GTmqHJH1q4Jp99JT7lUVEY6NyKCUqU42gZrc\n+SjyafoxNfx0akLe7GyDKepMNJsBAVBCt1qeSebL7ik5tRXD3M/o95qd75gN\naOmbhqL4MfOz/T++/UepZlI4Oz3Wt6A0EZm3aLfyLDn5cotyqdUv1FjcIL4S\nPQhHcCq78YyeCY7fFpOfLJ299Wzu4QMJvp1XRbYWYGGcKhbj0SJ9KqRItDsP\nJzB+lBGVNRylQvpOA6+rPVl4TmUn6cxMS1fuDv+ao0rbedm5egFX64T62ufo\nl0+M92vfCoX/X10mmXfa+tFQvzjHBabVGPJSZPcs3z0n4sZbZUC9H+T50Q5q\nM5yhdTB2Bl9ZFqjFauue40qOsbUmnPn/JhUbpJoNAAPr5ZsZmo/uPQXqV4rM\nj8K870MtsmJBg+ojzL4vkDLigUwRnfw21lQxDh6UGGoRcAWvvubJmS1OErhS\npk6w\r\n=uKdQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8cca9c9e7eebc691eb8fe4fcba16e58f4838943d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.31","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.39","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.60_1617175498010_0.1605885227523991","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.61-renovate-balena-jellyfish-plugin-base-2-x-dbbe9837f803582e950efee895542a074f2fedc2":{"name":"@balena/jellyfish-test-harness","version":"1.1.61-renovate-balena-jellyfish-plugin-base-2-x-dbbe9837f803582e950efee895542a074f2fedc2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.61-renovate-balena-jellyfish-plugin-base-2-x-dbbe9837f803582e950efee895542a074f2fedc2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41da812fe189aa11f5a1765612973f1de85990da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.61-renovate-balena-jellyfish-plugin-base-2-x-dbbe9837f803582e950efee895542a074f2fedc2.tgz","fileCount":17,"integrity":"sha512-t1dd4l/n7ZgA/libAQjPG3TTmKC6CaQ4NOAsHwZAf2uvK8fSDoAEr+3oUcAmxRFZn8EYGuB8pL9/YbdY7pgOhg==","signatures":[{"sig":"MEUCIBzIzljDMToRJlSBC24ssUDl+OXjjy/zHl3S8aMGll8dAiEAttWBZeaQrHfk4bUi5yV2/rVQl6e6qrpJYfzzWyktV6Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44537,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZCSzCRA9TVsSAnZWagAAjawP/iiwSnlJnfxscWBezO1C\n4iDyLJZX51TcVkX8vgwcKH2Seln/291PoBXuzuIF6sJFNZXNssdSxo2k+Cem\n5q61I7NajYG3ti2DgmEpZF5jZAb/ZEdttcX4ZuSs1gErVpCLHEhM9yI7ktPS\nEUKwqjXKsUXutO0vzyK0oTU2VLShv3inKEWFM1Ct2Uj+pRaw5f2HgbrVbCkN\n/BcU74uGPuC1PNk8+lxzxmHyx6xOTZpNmievNGgiOx/foE4lnapyc/DdCxV8\n8lWLuzioWwZjRI3rJ44QsiSoHXmM5HOH2uIUwAuoM1O4D6pH7GcINRglpxO8\njqXqeJR7/lWPHK+VQn1x+1SZoWf4BBO7N4aTmJKEaG6yVMYD/sW5KRTRkk33\ntwopxoI4jPTTrwLlqD2MH3vwklKSz/ZrW5GyFWIq2EssHaOMClo5abs7XFgd\nChuFKX2Qnm92Cz83I1LvhM8Z9AhwkyDd2sXt0RpH2GjaT+g7ea5oeBSrwAG2\nyS5DLgdI9AArkUIJeidgGBHgF5UKk4Cmn4SjVxpEmkypaYG1HnWdILiTjerA\nkrtE3pa9eWbH7S31Fu5xL8W6wDCrP9uuTXwwFMADexnxbLZKRzt1LscNTxST\nynuXfV6XtaBiqGpWrEbG9qgOxlExHV/hG1d7mYKJ5vlevE1FBInXUqhXynZl\nvDP8\r\n=QkBx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dbbe9837f803582e950efee895542a074f2fedc2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.31","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.39","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.18"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.61-renovate-balena-jellyfish-plugin-base-2-x-dbbe9837f803582e950efee895542a074f2fedc2_1617175731325_0.8383399646379592","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.61-renovate-non-major-efc4c51b0648509c584a38473ed65de9248ac0af":{"name":"@balena/jellyfish-test-harness","version":"1.1.61-renovate-non-major-efc4c51b0648509c584a38473ed65de9248ac0af","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.61-renovate-non-major-efc4c51b0648509c584a38473ed65de9248ac0af","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e2174e6c69196b7d7b3bd7fed0aefdddf8984e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.61-renovate-non-major-efc4c51b0648509c584a38473ed65de9248ac0af.tgz","fileCount":17,"integrity":"sha512-oGppfwKuEjJqS7yo84hg4AwA4Ee9+/uc+ZAW14dtk8Oes3aYHb+tsQeklvYix12uAk/QNlJb05CKlOZwtMFHGA==","signatures":[{"sig":"MEUCIQC5Hs5xuZWL6GW8cBebsIcPFPe/1vvB9VAv5cuU2Sx66AIgTi9Edyfv/mnNxloiS6tUlZek3H3hm8Lbl8Wb5WZ/ay4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44477,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZDq8CRA9TVsSAnZWagAA7EkP/jBhMH4pTP/deQfoRdpG\ny1nVJw+cIeI+6lUuAR2PmbCkAAqlqE4PgUV8AeApp22hpLCsljN1nCxsewv2\nccS1Z4OQQiVpktG/9coHgfs2OU1nTHEXXiyfemXI0mvArL7qvoaiY27oa1Qa\n4IB+hw5Sy8MBN/Sof1XSRuH3/Kkw8LvsJhqyJbnNtXDwtggixiTqvklD4Sls\n7JEg9TgJ8oT1g83alkgGRF6qvUgFcTG506y+yR/9eBaPcS7tT8DaKliIdLcI\nzTWRaf9EaprmzJPg9tzPWwJLLu+O9vygqrz7OA9Ga0An6bhaEdKq1dLAKUJF\niQ+gsSptad9Cjww0xbmbmyWkjy1e+h5JyFC8ase8W2Png3tCihigAQOOdbrP\nYn3Xw/sJ5aAlk2Ax28GVQk9MnuP56/hEBABL/PRT3lyhJLoaUH+8A7uG49+b\n/zpgi60G2zck1HPIKKE2HP3Kx141DGoZeigTS5HSmFJ0PTgr8mYPFLcP1H/5\n8VqfvpdFZwLJOd7OM5JKQO98OCdWWGJKj5/uIYI2qknnsp0Gsf2xnWDKh6p6\nUaZ+lBKwLuLJhfURQFexmLG3tpqaEwegHJGguM+IkoUGZT5s0M9uFNzNCjKC\ni1odPk4MYirIWRre3O0KjOX5VkAXzShhsTvH9S7MGe2vE6TxNqo6jRiYFTIr\n8OA/\r\n=MfEy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"efc4c51b0648509c584a38473ed65de9248ac0af","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.32","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.61-renovate-non-major-efc4c51b0648509c584a38473ed65de9248ac0af_1617181371906_0.3903030532979366","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.61":{"name":"@balena/jellyfish-test-harness","version":"1.1.61","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.61","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"92476febc452aa2914eecdc68a6c87a0ba9948ad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.61.tgz","fileCount":17,"integrity":"sha512-tb0DCtTLw2girAlJTHCaRlYfHs84r4YDXhj9Hu69t+Ph8NipMz6CqVSj0hZKqDJP6ip+95NqmyqpnkZ2pLKPyw==","signatures":[{"sig":"MEYCIQCDLbCN25SPh3tHAQRjfUM/CUaQfgmbnhb9/wVNoyU9SQIhAI1E6OdR9p6QA0OqW0KYM60HaOle+Dc8ZZrt9Mn7PWb9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44417,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZDuiCRA9TVsSAnZWagAAiZcP/3s3tm6iDrB/4P+/7yDK\nj10MnV8P9cBobQUQ57fXy/FCnfnOuFMouQ+8CVrz1j82DdMlgHH7t/3e+UDF\nG1Vv32YxvDNBokAl0ijsx8tc+TiX9u9ZjFeAXfk02jCSUM5mi4Ktp8ix9nwW\n+oCDDh43AAfPJLOVMdbk/800rcDBCDmKoe+GiDDPB+tFBGV8IEH/GGkMd9ox\nE8em7ZepmBmfxV4uCK26DOlFgfOWrDkXhyHxB31xyROYJmqOEmtK3Db5rKus\nL8ZuJghvTZg3a/2MzxkagEBpMn5t/uunHplw5p7tuW0cgRRyjXVYLUWnUnTl\naKtwtofPBMRDx22xFTAreoiVdFXFuEMnhASOjra+eVHvK5b+fz/w7hPj1X1W\nVQkoq4CxWSD7C7WCvPGAygG7RsW2N0CIVlVeJ8oVdtPOO+X/mhZ5zu+gFQIE\nec074LidNOsOBlTOZxNJPwZS6YwgJ6ySDxBJFPXP91q1gDxjEpjE3OUyHVFS\nKAIwppouss54chdEHHoDzMo3thwcREdaKOj2hQio3tuOes2vmFIXQroqSMdF\ng4c4COi/K2ykMYJ4cBs6/33HupyGOLgF1K75X+OVwuc2QCMGUzQJad9U8QO2\nWSGvKogUNfYC67ZUs5NKdVtARbVrAn1sB0yNp5rR4v7DJJRLvykXHtpf/KX8\nt2G5\r\n=0aao\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"66591dc34d68a3213b8ae9dd43d9e9eed0fd8ff3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.32","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.61_1617181601819_0.656283743440581","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.62-renovate-balena-jellyfish-plugin-base-2-x-629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0":{"name":"@balena/jellyfish-test-harness","version":"1.1.62-renovate-balena-jellyfish-plugin-base-2-x-629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.62-renovate-balena-jellyfish-plugin-base-2-x-629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"252366275016b1bfb3f15a61f91453187fb9ac5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.62-renovate-balena-jellyfish-plugin-base-2-x-629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0.tgz","fileCount":17,"integrity":"sha512-+F1MUJhc8IEh7df6ANCzQR7xalEgb5SgIaRIPTXClPPpaMrAk52Yd7tijdB2aXkv8t+ihi1JGsDMvYor7lP6og==","signatures":[{"sig":"MEUCIQDsOje85rqPepkFKnUpySKjC08nNXqInV4cwZAoziQUgwIgIJ8d5oAn3jE/1G8879vge73LxDM9XbQUB9TRC9O2JXY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZDx/CRA9TVsSAnZWagAAxP4P/2FTanh/vHRuV0la0m4s\n3YQmu/BqQpGk7NC6rgfE6pfzGmFpiB+8MGrXVMlPH5d8YjyoegKXAf/dSQRz\n0IDQPIOnZZtc/Hfjd74ABjSPEnIhLWol8GHfKgqt22EU6o9mqhiUbJuk4haj\nRzjFAI9KkFklXgGrd1B+oLeNqRPo31T/5awNwOGMekiDf3FhqJxRNUHtz3f/\nQjK30EPNSHFaonIUGnF+O3kQ71qD+hrXzgR6XAGjP5mkACQCPC6eUt3Pi0ny\n8FkfvFDiyDq2vdAyl3XcGX0IKmbVwJfAFqHENL8kYOYDZFXl/UCFegYUP2gU\nmnzgIBAFqJRWnUNfVfz0k+DrL6A/pr7RctTsnqJwtXdqjoayF+C5lyco6sQY\nP9VeO82CEL/ZOCEhKAzq+xjuLJGiTL1gh0mkxxyJ42zihF4DvA1Q1f7d8HwS\nTAWWn2LOu0sssfG/dw9YHv5yaaL5vlMvrkpY+pNK9hgOU3wLad6GYzR+4qWW\n+e+N4tvK8/81/OZvXxAO9JCtrAxl6+enL0jC8okvVVATU4TuuZr6CFDvXKos\nVkfX+mDXsND9khY0qfzqBoUdG9tFzPYxZs11idWoRSyQj06Cx5h9X3j2ddyR\nrB0aSbAwLxLxeXcQvCSTSPH9u2yu3p1kHfe9pypzyBFnKmkmBm+d7fGuymbL\nYzZx\r\n=CEfo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.32","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.18"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.62-renovate-balena-jellyfish-plugin-base-2-x-629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0_1617181822670_0.2560567972215626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.62-renovate-non-major-18a25a86ea920b03c9857bc81d6f67e3b3f5bd02":{"name":"@balena/jellyfish-test-harness","version":"1.1.62-renovate-non-major-18a25a86ea920b03c9857bc81d6f67e3b3f5bd02","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.62-renovate-non-major-18a25a86ea920b03c9857bc81d6f67e3b3f5bd02","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"75ee59083f36b12e3d36551cc559ff020057ed1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.62-renovate-non-major-18a25a86ea920b03c9857bc81d6f67e3b3f5bd02.tgz","fileCount":17,"integrity":"sha512-C7Uy4kiePBMrvlCBq24YcMSHkMQ+JP/du2AXUDo6Ig2FJbONV3SrAcaRVBids0KJZPxTNSzx28bnMUzih+RVUw==","signatures":[{"sig":"MEYCIQDgtYrLaJJ53kKN12kUGGjqw31rWlFZmAwlRdy7Phdp6QIhAJUgpLwY9xV6UBOzpLR/LL4o+GRAsnSCs4xNA8b5DBz2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44546,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZFugCRA9TVsSAnZWagAAG0QP/iqHKyu4UI9SqkXPFCuH\nrISEJLN6DDX+1fuYpL72p4jGtqrLEVfLFeOJl9bvUb/32gPqyNUGbJC/F+A2\ndK9ZXoWZAJpY2NO0Ug0UgbUTwJ7WNRBXMNbjOfBKH+Gqiyemh9BMNJFKJP1v\noMuLaNwwA8zHxZ9TdAH3VOM9UzJxVUiTDawn6Wbk4nrvN5KgaezHsRhZIGEr\nh7nUdrD81Dyuq/VLiMmRjxO4XpQBH6zoQm7HpWvkDnqnsu3NeBDlKji+zr2m\nY9YvETlupiksEUR5Kv8lkcbl2+cL3TM4ikYf7D+mqiaYx4/F3Hev6B2AwOYx\nfWGsZL19cmNoBlErzS8RWXigstb/j+Ua9L0C1MiaCZ+iYDOvrcD3iNpn6VZY\njxM21sitBTCBCPiLQqaqcnh1p7fWwf9L9/t4p2sLkYyfbzDbwG5ydKUSmmXK\nzdQqEI3ICuvb5lyjI0xBDZiI/0sfrUi3xzdH0MEmG0cuYYGB4IJ4asRwifGV\nws1s5lOADrcUO2+bqhR43A+tTEMWh4KIA9nd9xHfUkSol9eyRn3Ar3/M9AFh\n8lg6Sc3lA1ZIuLesOAXcv0JN573z5ve9J2T8uoo/OWsZZ23F3BevxND7QwPx\nQGYd7TZf1uoPO7PViAjDSdcnqNSus+5pPp70YtIu8u7gsQti/nwcBBL1mpTC\naU9l\r\n=NZO9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"18a25a86ea920b03c9857bc81d6f67e3b3f5bd02","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.23","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.62-renovate-non-major-18a25a86ea920b03c9857bc81d6f67e3b3f5bd02_1617189791913_0.37520021357689504","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.62-renovate-balena-jellyfish-plugin-base-2-x-50bcaaf6a02a4cd617bd60f571dbbc0a802023b7":{"name":"@balena/jellyfish-test-harness","version":"1.1.62-renovate-balena-jellyfish-plugin-base-2-x-50bcaaf6a02a4cd617bd60f571dbbc0a802023b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.62-renovate-balena-jellyfish-plugin-base-2-x-50bcaaf6a02a4cd617bd60f571dbbc0a802023b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9589cfbad80f064672035b78b5c548b9dada1639","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.62-renovate-balena-jellyfish-plugin-base-2-x-50bcaaf6a02a4cd617bd60f571dbbc0a802023b7.tgz","fileCount":17,"integrity":"sha512-h11NJ8evPyR9ZE50b/+oOYroXAAA6hzwC0v5dHdd9QxJQFQzkb+oqQmenI6uWrnk4RtlHqzMkEWvm+VmQMGGyg==","signatures":[{"sig":"MEUCIHmCnPGR9HczHI8Rhq3d9SJ4FRaNTidy1EWdAr8SYDLiAiEAlrATPlz0jJVKCuYg48SqgRMA5F1MOIi8kyMKn1W1H6Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZFu7CRA9TVsSAnZWagAAqjYQAJRr6vE/Zse0AlRYQfp9\n4EA+ON5ArQ1Jm23hDko0SYJrqOWy58rk12tVpU6s/fQm6ZLVumfm15NQeRe5\n0cmsbStjubTKjC5+TlisYKBh1/rnKA+lcyhWBBk/vCgONV4pRBrfX7veDZDr\nuS78/0vNH0co1H872KRwuq715J+YeXdCylRl4RGHThrLsxa6qW574AqogcdS\nNb0hnXu/pmVZJ5qpZTCyJUHL9HshqTrbxZOEmjEyg7U4dwSnDekH+AeotKto\n2iusSp6agUCCA7qBVRGGdgCED5OskyMHN2FSdCJ0elzEIv7MXhFEBV8JBfbp\nvQ00gH6v16X8XbTn0qGwdplw2Kl1EXq39Il1mGkYywodLZAjVon8RKlbM4KE\naEgS5CYqWIRugIYg1Z55mnDLGcG7fRt0MOV6zuknvn8noiFU3jIn/AM4ZsYL\niI7//z2baSJuGWTNLy3HCmmHOKcXmaxQ4PFoQJJPhALHkwz0H5Mpz1t+exfW\nJjfZtulwrMIHZGZniAYJ17el1lSDYGLAXQw70v2e5b4a9I3T/8zdPJUmpiQb\nxq6dXjayduNgL1eKdyyRB8XSpT1Cgm8kI564Jr1ZWmPFGAweiC9c6JLkCy+u\nkkhmAf0ew0RNFytOj4lTlhpjOQjeub52VWfo+iAW9k6ljXwrUg0cs55Ujr4X\nP9lq\r\n=Zy4s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"50bcaaf6a02a4cd617bd60f571dbbc0a802023b7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.21","@balena/jellyfish-sync":"^5.2.32","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.62-renovate-balena-jellyfish-plugin-base-2-x-50bcaaf6a02a4cd617bd60f571dbbc0a802023b7_1617189818717_0.42382431250787267","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.62":{"name":"@balena/jellyfish-test-harness","version":"1.1.62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.62","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"313d0a19b945a73777270b73b56aa3f90347f279","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.62.tgz","fileCount":17,"integrity":"sha512-LIsIrqkarNdYLgDx4Qs/RI5dH6V0LjRbZiDDHRQdkLpFnBBprAey1BohQcSuNQRUbu96CAZ/1fxK39A8bXMc0w==","signatures":[{"sig":"MEUCIQCBZHWhNVGETvujdqkXX0UKM5IUecyMmxoWXF6OfYaWhwIgd5eP12mIN+6t0+IAoY0sri02Z2oxcQhPn00vQhaZUWc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZFxkCRA9TVsSAnZWagAAelMP/2RoYomV4uv2jt7vO33E\n3w6UWvy2BvCMSpkpZUgiGVapULSOkBaVk8k17snx2uomSx4iHGRsFSqXABw2\nItxEb/PbUrmuzKVfuzCUqebhl42/WUGxahc7RsCnY9kCH7uf2R5CNt4FnqFh\nCGHNSJ68N+/a/nmrA1ZCs1N++cptM+RvydyuII+4SizeYaER9d576qpuCcOm\ne/bK6nuL68hqijyTOsmYIaKpk63pOAtzSMfVUdK+jZOuPRItaqp7R3rQ5Yhg\nzSQU2lDoelyV6MUO267iyXsYpPlK1vqd7qaNCb94QKAjPWg4m0kSYAus4T6m\nvcByW46kIOYowurCC4JuS9DF7hMg8nSJEZ1n3veAKos7v84A+71xNDbSNnEh\nXkdvO/klJspNFeBHPK4KFzydLEqIEFKAmfVnAzk51N1sHRRlcuU6HOpqtuNQ\nLLu75VlUJlS3MdC/iMU000pTCJECAzAsDYzEoyjL8Td/7e6FV50NW0kixoQA\neeV8x1KLyBL243VVIvf6qW3RY95jy6qsx+7LrM/er1tErC+BjaPKGXYyd+iS\n7P0lFe5wML54qm6ticAOZOU27LdJaz4kL6daNZkhrzxrDvdmfmsVV/PJd33i\n7xW1yW/IZRCyDlBL2+0zXV/jIP6OxIzhIvVLPBCmLslwq4uM1KDO+HNWVLda\nvV2S\r\n=SRwq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c7034b984e3f8998dde186e3a4631470e455640","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.23","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.62_1617189988005_0.82664137100662","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.63-renovate-balena-jellyfish-plugin-base-2-x-c4d5a03395099c17e54656b8101b65d0bc934843":{"name":"@balena/jellyfish-test-harness","version":"1.1.63-renovate-balena-jellyfish-plugin-base-2-x-c4d5a03395099c17e54656b8101b65d0bc934843","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.63-renovate-balena-jellyfish-plugin-base-2-x-c4d5a03395099c17e54656b8101b65d0bc934843","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a775cc6f77f73cd3c96b32f50eea79430c9342cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.63-renovate-balena-jellyfish-plugin-base-2-x-c4d5a03395099c17e54656b8101b65d0bc934843.tgz","fileCount":17,"integrity":"sha512-YRzJpjvCbyf6K3k+W8XEDBkOQP2mEGK66vZ0n3ghS9LsXk9fRlJztlmva/hbrgXJvbyNQQYp03yASpmR/ScFpg==","signatures":[{"sig":"MEQCIHKc5aeemgOJReURV/kB0Hn4DSdXAnrvealQ9zqnimbmAiA5asbM+PEjf1f7x1NuQjfjFX3rR2+4iir8ZM3/P/QeZw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44675,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZF0vCRA9TVsSAnZWagAAeQsP/jIRZaEqID5Yzvh6frOL\n4iyY6fu3+EaLAh8Ojg0kZxssYaJ3A+Tbq65UMK6JI1zR88YJeBdWuNTDmLsB\nn24CP189EegFl/jwHtWMZ5fZkEFUC5bHyYt77E2bSiG+KSIn9NGVvCeyj21O\n9drsYcVwsN2JyLFWwdfN8YVBNj8t0U6yfJv8Oe+699Zxx7ikyM8UEMk3y3XZ\nKr/0chkVrC76RwAZwMdswCOEfUxLp3WrQYhb/yOjdq0adtXdht1dRVTEfC2P\ntmla79EaybrJQiaZ7heRAlKZZe5ahhcCzyqNCXDYzbRx+OYOFZUPTfQCH5dJ\nV/MN1ewmTzPoqoGTLxaDg2UFDKqweT66jBwDXRxga9WlV03p84eMIujNekmk\nGMnmhbDEcYcKKNviwmiOxeC/NbnAE2uwbqKKCNt9taELJjayDvVpHoE23B2H\nju6G+yzcLNI/AfQVc9MkV8w8dbcy1HGM2NVCvbnZHbMxQvrT+Ms5S5h316tE\nad7r95uam9sHxDEPJ789WcMY1SG+0oCMbif072oArlW42lmTA4x1X3qEBybo\nsmz/Qo1mgGyskHRRzUmvd+QzksagS8pFFZ7x7t0SH2LnY4KWkQoAUza3o+se\nqWxnNh97NgOnn1g6EnX/g/sDdRbMEsNnU0nGQQrZckzNJ/DQ7lJbkrzjM8KD\n91D2\r\n=9g7v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c4d5a03395099c17e54656b8101b65d0bc934843","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.23","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.63-renovate-balena-jellyfish-plugin-base-2-x-c4d5a03395099c17e54656b8101b65d0bc934843_1617190190860_0.3603268351350071","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.63-renovate-non-major-f4902a4642f530df07bae136f1fd105f3a54a81f":{"name":"@balena/jellyfish-test-harness","version":"1.1.63-renovate-non-major-f4902a4642f530df07bae136f1fd105f3a54a81f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.63-renovate-non-major-f4902a4642f530df07bae136f1fd105f3a54a81f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dab6860abf4a3bb155d094e42425c83f23c9ef13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.63-renovate-non-major-f4902a4642f530df07bae136f1fd105f3a54a81f.tgz","fileCount":17,"integrity":"sha512-e2hKN5Htt1ZBdczJ31oWWwXad0mr/8JTaGEtZhVI3ousfPHDjPSSoNaPWvnLz1fQP6nJOwHjrJ6JSfs1qgP+HQ==","signatures":[{"sig":"MEYCIQC6dRmcq+a0I+jmQNlHjxbz0FZScZDzW1Ayk8gV6G5GKwIhAOysu7sMMwvM+WccF9TXMASA4WalGYpQfHd4jWQZLiG4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZG1oCRA9TVsSAnZWagAA1HgP/ilM7cqovTeZL2+ZZQHz\ntkY6IErhtF6jO3xo6Js8iwKGnT9vqQT6293xhrIC8+se+jxAh/cbvh1+ASEI\nEYxju2u3tz4r/fHJ5mlkExwYl+afQ8IMlNyMuoMd1BHhfjcwc9RoNoR24WMF\n8cgwlmRFsgSrtODh5NC3A2A9z/NLjHGlTKDZB4Y0NJDa9+ZTPjsZvlAcWQlp\nZ3rPqA9OyWtVInwU3bGbSEax4jDOxuAMT4SIf1ReFITtMqgP6nA48OuAprTR\nG9E53DHbkX/qysupfnmK75g2JBuG0BaN8TaR5hQxXD1bhlk8gS6wS0IzRBeb\nfHJeV6pCooG8EHwIG3rMIx2EOWiXG05sZ0cSGV+l9+J1yMLMdbzZJ3qJit29\nRVMAh3lwfCxJkmhIhXeFFH668DS0CiCscRax+UfyusHAsxRHP9JNay+CSWvP\npOW+wa6lAUFQtsa9UiAt7S5MBPfdotw2Cpx1K1uOItxEJmaTiB7KMBWstOc7\nHlDY+BiBV60S6tBumzOkF4z28Mxj+UXhhIMk5e8iGVwvIFlb6nSV6Kd9IZwN\n8znX0ab72Y6+9rqzF9/Ac1GUljC8bZVhKa0Nyl39KEG4bGOUCi8gL9GF2PGU\nGl6vvTvEpcgNT3A91pvYYG4Lp9Y9Dp2Sq21vHwe8f4F05HqH22x1i5L08bX1\njdZ3\r\n=UgPY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f4902a4642f530df07bae136f1fd105f3a54a81f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.24","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.63-renovate-non-major-f4902a4642f530df07bae136f1fd105f3a54a81f_1617194344147_0.36804797900642483","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.63":{"name":"@balena/jellyfish-test-harness","version":"1.1.63","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.63","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"31fd5b92bf66bbb28af36f31f61d155f72733643","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.63.tgz","fileCount":17,"integrity":"sha512-fWbb1BTstXIcV8LPDM+8FUfI6fU0XWOA1ZDjK/xpefj4y9CBsrlr7RKBOn5q5932UY8jDEALA4vzFZyPBkbITg==","signatures":[{"sig":"MEYCIQDMvugOICqeMbiFUux2e8w86RCCQ7cdzn1sSzk40dgqNwIhAOwYrGqhi1zQIPQCxUnJtFULeSERo8OOf245wZZpUJQS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44591,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZG4oCRA9TVsSAnZWagAAzpgP/ibA+mLQARnnOEBSJnYt\nlvW5PSKJ8CbFWUikpSpKx+8GDIXvuu6WGueiuzFH+kmsynaD+xPiqEixFlWc\nXhPBLpmbfojoULdJK2jrMSQuPcU2phSRpg7khkHvhBffRFj32UeYH9Fhi0JI\nT+X8D2kS3qE77UTY+Tl0PR0TLLfMXGJwaBjXolJz3FZPz8KAQO8K7AGcK1Tr\nZevesMCuIbXPH6++WcdmQnTYrzV9QD8N5hFfNckK/dmZbzo+GZEPCHb1fxuf\nKNXroRi1e5Fwun1WLvINnQ31iDU9AreB+C0jmhhw2Jw7/sALnSsKt9mvOAA/\nFWB+MrYzHDaKD0KHsHXdRBp0IcvTGQ8TY7f6varEKTGadBSiYEVanCVzHsP7\nLtje4PgaElN4fqhyjlEV+0QqmM2XwXl+zTq4jbFqxUuIp286q6xKS9hUN2I7\npHRtUcQjuQckpJ4/fyxVTuCw5leDCRCDaiRRh0ynlOZm4W/q+q2fCKoye344\n9ry/dcA/7g6zhy0fbwFh0juWclcBJQ3tokONN0aXsJ1+JY3ZwMdyRbEEkZuX\n1IOmdBOusSOKX7Jfq1bA9BzsYn9wxrBFGJOLBzhTRrcec/1FrQzAxp5S1AP7\nqL4/aaYFSStKvzKc9m/fjNB0GYnzLNOm0BAUZJYun9etTJcIxKwiyW/uY6Nh\nt6pO\r\n=VYd0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3470f0e37d3b9fb01fe8e153ef67e63720f2a115","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.24","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.63_1617194535870_0.6011463419008143","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.64-renovate-balena-jellyfish-plugin-base-2-x-84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183":{"name":"@balena/jellyfish-test-harness","version":"1.1.64-renovate-balena-jellyfish-plugin-base-2-x-84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.64-renovate-balena-jellyfish-plugin-base-2-x-84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd133ccac2a1e8fdb96104d05febd3edc10356e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.64-renovate-balena-jellyfish-plugin-base-2-x-84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183.tgz","fileCount":17,"integrity":"sha512-aYZQKbqPTrLnqhfOHH+Fhg8o1yJAsWmCBq+QevXrbHdo15pAnmLx66Twtf8O7mVviXwCmGVH4dr79rzEoGxxxw==","signatures":[{"sig":"MEUCIApnPsTThpMSq78AvE+VB35aGeZc0DXI2MlM/LzvCcJuAiEA2f2bqCLDK6DuZ+LPY0ldxcCULd/BMBTJciH0eaGxu6g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44780,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZG7ECRA9TVsSAnZWagAASD4QAKKLsCuMmlYDwequy9Ze\n+rd2ox7zYMDmxGjuQO7HoyNZhaIHIpoAlPKFLoim/RWBLa3VrJt7o9eE+V75\nCZzKNJLk4paphXgysXRRdyVMzwAa2qkOYNGJHuFxIVGU+vz9ba3I+Vl9LT71\nsEpu4Bp2opm+6XOSbwgxnslbqI4VXGEOCn2esrizKkM1TqdvBYednaV8tgrr\n79syoVsBaYo8ovGQLuqLWwoftN6JF8NScvoPG4ylJHL2l8NzMGTReiYGbuFK\nv4g8DWeN3KBUwUK0HY8EWcumYXZbMmv8eYhwkxvc++fRKvqhWCBkv2PkqCxu\nueE1UNNVGUehGa+/QNmR9uBg/32qswNYXa/ywEJ5ZMyxrPh+IHTr1PAwiE2X\n4sqGbEmeCdw2LnZW/bwkbwPTxJM2AITldygyIvMXwlowCBoyd/JAdVTHTqB/\nIw3RHB/yLAmonTvlDtbYGXZ8EeZMQ+GwYEBO3pJ3mE/RZKg4Cj8B20YXTU3c\ngcWnWEjpeTpGCa9ABZNY+tlLlGiJuJstiZLj0+hDLRqUxCLEsgywfFWlP4eQ\nVpwmUbqZ1YI4Vpdzechba13dZ8XuzMzW7bHicdq8ByN6FoYkPQDQV8KfXdxp\nkuAi+GCM2andZ/5puCWlD1zRksZ4X+PtwGU4kcsxaqrrS++Q8Q/oyOivMznG\nw3Q0\r\n=rCND\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.24","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.64-renovate-balena-jellyfish-plugin-base-2-x-84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183_1617194692128_0.8330648441998516","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.64-renovate-non-major-ba5ed53168b252e579fecc7895e3f6b632191956":{"name":"@balena/jellyfish-test-harness","version":"1.1.64-renovate-non-major-ba5ed53168b252e579fecc7895e3f6b632191956","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.64-renovate-non-major-ba5ed53168b252e579fecc7895e3f6b632191956","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"784dbee019685d636b88437a84fc6b8ad0fc0486","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.64-renovate-non-major-ba5ed53168b252e579fecc7895e3f6b632191956.tgz","fileCount":17,"integrity":"sha512-dOsXGJ4vs3KLEXl218RInG8ocwtDWX1db0Ryv/enuA4x2Yos+fp9vFO6BMCXXN5Va4mpNrqhOPDFQ0M8kBeZdg==","signatures":[{"sig":"MEYCIQDf3BI/NX20CxRxQtvADQ7lrztNmBEevqSHubTdhpTJ8AIhAPz6iALzYxzKAlYJjWy7QNqCPYQql4RA+fYERqvXCcV+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44756,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZQppCRA9TVsSAnZWagAApLAP/0LWX9wUlUYNMTGYC/v4\njgcZ1NBZLTXXMJTUDFAPveThGflF2A3cXWsstmjFYNVNM6vZR7MCxKwm/xZA\nKL+DnJqBWQ1r4cwJtiFU0Ql2n08UIq+NAvWOhvOK/1A7Et3LcrtcA4nRNPjb\n9Ga9Ej2TT1QMKsm3UJNZUWOMWdCRvfvgvtY5Cws2M+M+fkKRluPl1EvqpJzd\nJckNmt8oofl43X2Eit5vUc3TmNsODCElg9iroHCIgB9A5es0EsWtQ6SXdyXS\n6U7BVfRN+10nLDNUAhzBp8Xgis3TqyQ6RfGLNWRJKPvWh47Gnt5gC/WtmvUw\nhlu+M1z/4BT3v9LniHcajn6Q/+mSi7otR5BQa96RdosK+hLKQ24uiXBvJrkb\npMvciBnf6nzwv0R3GVurgW9J2HmVGaSCAx6qkXysSILSCvmhDCXCha0/ylNv\nwq5yfo0xfwcoujpKkhBJbDsSRS+pTj+Hz5uhEeuC6+AQ/rxNpUkwg9106+ia\nhvrvO4K2beL3cdbJclCnLQWzX/xqUkbC34RAMyOQpwyCvt6GYvssjYsQOTRe\nTNCMKIdlh9s2gXpaSmP6CPhLEYKshYIe5jxGKBbqiR75g3YUve2rnqI3CjaF\n1sL92jMEyDJglRU6i6ZVeQ3XrFdCAKgGvPJ/Z0XFuWm2HDc2xMD4kMfoCFvb\nlFZW\r\n=gzHn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ba5ed53168b252e579fecc7895e3f6b632191956","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.64-renovate-non-major-ba5ed53168b252e579fecc7895e3f6b632191956_1617234537378_0.3031576155117133","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.64":{"name":"@balena/jellyfish-test-harness","version":"1.1.64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.64","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c7abb5c839d16b647c843cdb613c305b3fbc8ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.64.tgz","fileCount":17,"integrity":"sha512-38hYRLFbjGQCrPgNi29n5tTiifjUYlHFZHybSUStqX2N4z9indE1zn8DJdSkUaBVkf+FhXIdncReHFAgsudqdA==","signatures":[{"sig":"MEYCIQCUgsUTtsga4L+do8d4F5hz3o9JcacEPAMhXaJzR0I6uAIhAMwq2/Ngy+vKjwfNj2Aya8T8waFl+wVdoox89RMHTGMw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44696,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZQsiCRA9TVsSAnZWagAATB8P/1avzt3iOkS+UgV6W/qQ\nGFi1VL71WnFyMhYdgGiICqjplQ4pDPWoGLUPt8JpChqFoWVfkgyfTu9oqbTU\nlwINvxBfVR3D2Se+iylkkbqks7YzYMe6zTh1Q4WxDSZG0CHKe1C4Yj1MRwr/\nt3fFvz/LYnXjxFNFbNPU0P0qcMnXg3adJUzPfh0+4/4HHlF50Na7yb/OROds\ndhQVOoqNHlRMTVSNsI8+VVIPMSNcbD9BtzuIAiF3u9z5mLPp4uBafaCxk8ML\n19LqYYfk26hFHSamRlYF0PontabZlFooXmr9fGkZBD7uE+i9F+OtjCv/2jwM\n1YgowJ7D3XOpF60haZF9LeWiR3Bi6qTtElUQBTE60rrFCi/rN43W4hynPunL\neQzBGoV4L08XP+IXAmNmTOK+woACN+yn4/Zv1ffn/T6cCRU7Vbeo3u1xdYn2\nSZq4lCf3U40PCXU69AMPE3UIW0ncqIbbQOT/qQ92vOv75OkX2HjtHlzL+F68\nnPhxiU7brv8PdhHSfzVP/oLbVip5NmG/Zjz+6orpzdG7bB3dNpahpl5E8Fhy\nfRAx5O7iYjGO8muF5xaAeTE/V09/HZzQz+uGKU5ajMUdUc/CCUSrRKgJERN6\nERsprNkp9bHz3sVdcpXOF2dgO8GwpWbQMja2MlvFxBYusvtNIlYzUDqP0IFh\nPsst\r\n=m1QJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bfc37d89e3fd1afd8def5cec724cf197ffae1cf4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^1.2.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.64_1617234722523_0.2214825647161065","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.65-renovate-balena-jellyfish-plugin-base-2-x-c92318e3dafde19285b95506b3f388080925f3bf":{"name":"@balena/jellyfish-test-harness","version":"1.1.65-renovate-balena-jellyfish-plugin-base-2-x-c92318e3dafde19285b95506b3f388080925f3bf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.65-renovate-balena-jellyfish-plugin-base-2-x-c92318e3dafde19285b95506b3f388080925f3bf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79d12063713c2c9a6ebe8c99116e7b55557da399","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.65-renovate-balena-jellyfish-plugin-base-2-x-c92318e3dafde19285b95506b3f388080925f3bf.tgz","fileCount":17,"integrity":"sha512-V4QdnViA2fbRov3IdYx+xmjlZBBSJbNqoYBIlFYtqHzKdsPZ2KKk7d/+PRegiBQcRNxrjNTKKoxp5kzR0QOfOw==","signatures":[{"sig":"MEYCIQCjhunsxNr4iQbzrmM1OGRwtZJWCiYvo95ynsKE5jynDwIhAImQL0x2Bh5DboS/Ufp/I83j7VRsNQ9ik3X4pB7bSHog","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZQvGCRA9TVsSAnZWagAAimYP/judV73s9dkSxUMOquPt\nZPBsuE6oxRPOvfMn9qUJzyfpEe9WE/fg4MMFpplo7Gfv5EbsZCBX7dBfWnIo\nW+MIYmcqHSY206L9CE70OCeqjYSu4LWOv2LYMCiNTRRpyBYOU9OXVNHqKf45\njjqkGwqfdi071hA7RcBYYAufEy3EOzgnv7LiDxmzh/p/ubt9nXulkC4gzE7d\nEezQVv4XZquPCN8jZsDt0e8rYo5ayJRwb42/Z8AReMfUZ61y8gUqibjjNl4Z\nyA90r9eMOziL33UAIdK/3w6WBIVkowsaaMytBUKLjHOw4JiQQ80ElctHAHmQ\njKmgTLlu5T3wEuEjIB+wF7Wrpy27fUqBwHWO2E79ibsn1Sh/VXthQkcdTs+U\n6cDTNHaZyHIT+akoq38FAoSYz5Aa1F2r1ykjKTQ0a9ufZVPsfWVtsCbBST1j\nzbMhswCsMPMSxRnReHk5DOlIaSfkYCKKHAW75IORSVXSYNreSe1O5OnUsF/z\nO5Wja+cIJM/VTzYpxuQfkIoW4ENYo/fCfdzDlyAI+GkLxSapd728NfhZ6pbX\nZtSiPb9fDkEltVhLLJIt7E4WGTa0EZ2fbp5uce4Vj2CUMVkTL+XasjWinQoc\nBLrAk8F8Zyezs4qh/cS6E+WuivccD9rdZUXARUI0LKWJih9R1Vuzp3yLgTJF\nWem1\r\n=gPk7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c92318e3dafde19285b95506b3f388080925f3bf","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.65-renovate-balena-jellyfish-plugin-base-2-x-c92318e3dafde19285b95506b3f388080925f3bf_1617234886252_0.5046559461642945","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.65":{"name":"@balena/jellyfish-test-harness","version":"1.1.65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.65","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3b5c0191253b2fab86fe9f36f8229c8b09fe0873","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.65.tgz","fileCount":17,"integrity":"sha512-O9901eJKEOTxr7JUwUBKRnGNRxl0IU5s2iPJzyKPkiqnD+AX2/gCCb0qUv+NiNFkQlo7LB0RYsW7LLBmudavGw==","signatures":[{"sig":"MEYCIQCC5zP8qmyrpc0TKKAXUHet/exRB6BA3pcvaPUtp07BnAIhAKvm7/+kSrMo6KyMEfyDnQg4vcJYl6lIN7OjbU1fSV2i","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44802,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZRgYCRA9TVsSAnZWagAAHggQAJUn2q70U1ycl6ELAgs/\ng8NwUXRz4tzA5aSZ2OHgiY9YsEQ5g1Adyd38ce7uqYLco4mOIvAyO6t3Tv+h\nXz+BHIroV9PxUEu6Pt61C5EhY5j7FWfcBZvmAfoXoeANLpvOHsUOAlwB3Nw0\nhAQ4DeeSS4WMJE/cOO3Mx2BmRe19LcAzpOtVLtXW/kOHmnyLpe5caJNl+dxP\nYUoriopPf1ftTIJsLKphPEfWEd737aHmxKjtq8hwobNPX6TEIZvN6pY7IMdV\n3+ZBTC6y3PxbskI0pVarBQzbRi5Ykf5JRaxq0ssI1+jfyVm2rqF2jl2vlDCP\nE93IiBE39P1TdDwLmgn+Umx+KgLoEcmPvRhxQJ0Bss+XfQnvK9mhI4tL+3gg\nX9KGNE5I//VbvDSi497sis2UM3qsuZs+tLGK/87tJ44Oe3Z4J7SPwXRZ0gVR\nZz6dXFrRaYWfyrCa17OdEXtt50zBHJdstDZ8btMcErtxDDPLch6OuZonbSI6\noA4s4YIxtBhcacW01Q4sxYq1o4HTuPPyL+7tE8h+xv1KJSUF69eK3i851O4c\nL5q427FQVfOjfS9+wuF1E0F9OrtTBMo9uoPioZFhv8n3XdwP+Ikvip2jMp4n\nVxfWcu02lXHrK6HNWpEra+Jj/Go5L93lRUu4rd8gMcpeTJ2PtVLuPgfuIo8+\nqQVN\r\n=O9hn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"456e5c76bfef99e7f6004c3b617fe6844764e891","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.19"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.65_1617238039470_0.7306495657529131","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.66-renovate-non-major-62084e611f66f71208b0b6968fd626db27485720":{"name":"@balena/jellyfish-test-harness","version":"1.1.66-renovate-non-major-62084e611f66f71208b0b6968fd626db27485720","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.66-renovate-non-major-62084e611f66f71208b0b6968fd626db27485720","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9fe97447bcdaff576807e25e029c999016ea0df2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.66-renovate-non-major-62084e611f66f71208b0b6968fd626db27485720.tgz","fileCount":17,"integrity":"sha512-o0HoarnT5UbYMQYNqC6LpOEgdkr7i0mSrtWeR7h5aksIuZu0K5dhisXz2Y2XzGs9nmvLHlQdoNL3Tq9rwEEsnQ==","signatures":[{"sig":"MEQCIGemPEpLObhJSPRYJ1edq0X5ZFc7G0FZzmysQpV7MqysAiBJuG9nAqSrWdabjKLNIRaxK7uWppBj83YS/aurGao7bg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44973,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZRlpCRA9TVsSAnZWagAALscP/2jIWzOslkPQVGtFx4HC\n1r1Gld+xqQxe5et484NSNMvkArnAeN589RmdeXMKTJz6dwwu9xJ/BqsxlzWp\nfiTspcUWZJcbf/dVEgLFBcqoJJGiRddIl3oP9SRM8+yfPB7D77pu3lPBsvVk\n56UplZoTZY+qArpfPdT7CcxuIL3h93hcy6y/dddJ/UctMBRrQjgv/hJaxqyN\nD6f5ITE8MNpGsmxmx2AEAIE0fJ1l2FTGJnZybS649uRzPwgsFYeuyOsV23Kr\nQvorkRaWdvQ7M2G9lqIbQW/ypxWIBP1jV/7eWrJa6IMPOdtpJGjgmyiolL3s\nNk2L5e/RLrCRSJjUGjBGYb+buN2GpLQpkH8XmTcVPZPsQx1nvSjf38zbuNp3\n+f2r0Lxgib3OIfk9dTdZ04zAleCR38tejdqEdOIhs/w3OU63SL/30GrMVnS3\nylRw4cAohKtbcqsA8HvhuYfwXmfc5dSFUHq7UK6QFDC5laI1dWLqdQh2uZiy\nTwmgk9by9ekoxADgilIBMt35dmIDDnwuVFFVIVQVfUNDART/SDsPAX0en6oB\n46RUE5aUqQIq9n42pJG036OuHP43hvgUx9XD/eK/BcMifXkxAn9yPlUpkIY+\nH+xu5YeO3VlRj69TuMqYbFMyX1Gv5UihpZSiiT9KImo5Zd7jmEIx6FKu3+Gr\npMD4\r\n=Wi92\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"62084e611f66f71208b0b6968fd626db27485720","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.489","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.66-renovate-non-major-62084e611f66f71208b0b6968fd626db27485720_1617238377286_0.001743376727623147","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.66-renovate-non-major-7e4b28069a54f8e472e23b17c6dd4b624ca8ceff":{"name":"@balena/jellyfish-test-harness","version":"1.1.66-renovate-non-major-7e4b28069a54f8e472e23b17c6dd4b624ca8ceff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.66-renovate-non-major-7e4b28069a54f8e472e23b17c6dd4b624ca8ceff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8ea500e851763e7c4a4f0b670513c4911d027fac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.66-renovate-non-major-7e4b28069a54f8e472e23b17c6dd4b624ca8ceff.tgz","fileCount":17,"integrity":"sha512-7AMH8fGVdHunloB7+Jgwl9Klkz7P2HywTKghT+Nug/Itq7nhJts4BEYi+iWk/BDFKsCNbFhuIy48dfBTD71eEw==","signatures":[{"sig":"MEUCIAg4G9lIT03K21GXuFTZdJp3YY17OzQdJK2skNlqjSmaAiEAyQ2wBmSPoCRrg14v0d7qp3MFU5aHWLRLLdbS5KRXkCE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZRrYCRA9TVsSAnZWagAA4pQP+QAhAf9s023anGNN1QUd\nUjZG1jjcGtu+aGLYQgFCFkaURL/pwLBplusu2DB23om4DwshSVlRHb+wKnwx\nPJmEaoXjlw4lbP06bo3/Zb64C9sXnDKQ28cSdbpSvVOAHXhpyZ1ekMKc72Nt\nJnnmUyimyU4qavXcphgA9+jm14JlafvihE/9WBAbhehAQhNtcuMq+2UXPBTP\nft7fB/J+ESqbNzyiKlVcN7bce+g+YnXoqnd5fKbnZNzJ0+6GkkC8g/TVUgmd\njKqkjQklex6pVID38GnfrIlu/NU8wd4Vx8JbgzAjU5MpuYN8tOUaqdd0oqZx\nI4Erti9RkxVu2r55vkVFVxoEuNcxADXyjIq1mGKV/4YUCyJRebNkV6jPtKkp\n1zSpiY49AGaOIcZ5s0LpwrY84CrXrKei3resiCxmjt4QOJADQ89gAyf648zw\nJQu8aiZ+zZ2v+2Omkx6T3+T0s2nXjJlX47uZxjNorVuhDFK4cCLDWf6q4TN8\nKavXLSAQAgCnvcblZAKHRYa+ASzfw/5PE+KlDFucjNTRJiz3Q9zpd/jJH0Bv\nbGra2ffo/9QNlEfHc22M5V1mxfvDwte2ZkHzZuNI8Qn/K5NXqm/GpRzZ8KOW\nvzAsitwDtEHaCdQxHo6kTRgG+/h95wdnoQcmCAQ47Y3s/WWKr298lH89kgAI\n/e8I\r\n=2JEf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e4b28069a54f8e472e23b17c6dd4b624ca8ceff","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.490","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.66-renovate-non-major-7e4b28069a54f8e472e23b17c6dd4b624ca8ceff_1617238743764_0.021345280365175467","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.66":{"name":"@balena/jellyfish-test-harness","version":"1.1.66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d17d4bb9c5e8d52977c6f8d5d2970384e389d58b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.66.tgz","fileCount":17,"integrity":"sha512-7gVmNIoIq/qXm9JocF+muq2YvK8IlIPcI2Qd6KjfaOcthJINd1Q9CVc1+Z2cIbLC8t+9sZeUvY1cxPtgnq3WpQ==","signatures":[{"sig":"MEYCIQCPmAje5fAKkz9V/qm1kP1U+KQZlQAYqof10Rqwg+k6egIhAOT9us4Rl9cEe7j9AwWTSR7VMBmMBycCgwgGRaKzV7pA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44871,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZRvICRA9TVsSAnZWagAAEq4P/RD6vWDo8z+ohiecRHUR\nHE/wNwIYB9jsNwAW+Nos2kNmepv6yCxkjRAmFVLiQVIwbqqAaOMkfkj9JIqi\n26VJU54OYoYArYzjXY0yaJifqDprNLr06XlxBOCWBXaEW+vzfCQFJc2NZ3r6\np7Zth2GQn/IbligkBpmVhOyOjIZWrY5iBCeG4yq1YhTsgRSeBJdBoHmdaeHm\nbhEt8EMFN+Sfy+T5WIiaxLrSOIChVsULwaWUOdN7ZqK8CTzD54T3owQ1eiiR\nFDo1dIsBDLtzSyYCvF4tqUsjSO/4dimDMaWwLpOYSpobmYJ1JoJF6T3szhe1\ndfIJgUrEXzxb5llIT1eXmt4kx94wUW+PLuSi28cvC4TgmMbzldg5L+WoUC35\nIw9Z7++X1puNzMkh7Mn/yTe9wVVmBDc7NnVhgWzhdrbKAukkYyIB8PWj/0As\neIehDVF60cxIXyGAdY5vWMrvKF++wVg40FqfGMh5nXSqSJ9JWb3QWreFh8V3\nAU3il39qWr+CUyvCzKK076cOINQuBv8GUVJRqEML9mQmDp+ALOlrJ+42XVe5\nvPuCIN8TV0UpXCg9fgjYrGXXH5c9rspWehxmqbO6gjuE1+uIwoTXNEsdacwv\ny5dnErQk8BrbzVLxGNDo8OjWquMSyPdGoxZ9vEXBUbId7xkzpGurwtj6Lgeb\nx657\r\n=4PAt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5fc0f3f7577bfbc382bbe56fd13e568d2e368ae5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.33","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.490","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.20"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.66_1617238983917_0.6146915624343687","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.67-renovate-non-major-7ec9bec730f9e6dffa9ab94334b70f5df95a0a14":{"name":"@balena/jellyfish-test-harness","version":"1.1.67-renovate-non-major-7ec9bec730f9e6dffa9ab94334b70f5df95a0a14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.67-renovate-non-major-7ec9bec730f9e6dffa9ab94334b70f5df95a0a14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d7039360b0628c418123e5d0cc854ce46d7e7b00","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.67-renovate-non-major-7ec9bec730f9e6dffa9ab94334b70f5df95a0a14.tgz","fileCount":17,"integrity":"sha512-vmI+y7I0ywmp3/LpyldtLMlWBOYSqcltneXMPhUX42GBWS+t90SdJ+QfxCWPOQOKGjYSzlPz3Xb5IWrx7P05XA==","signatures":[{"sig":"MEUCIAWWPiOaLUC4QYO1MhqS513+G9AhDUUrZzH0JlJO3biOAiEAyxoz63hx45DtXx1marvZO6G7hKxT9ELMEThwdc7VmJM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45035,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZRxzCRA9TVsSAnZWagAAXowP/105V0VEL/W1TImSQt02\n/x0XemstG9zhsdc0Ub3xWLAu3pELNMGlR0KJKCWz/I7E69r+nXTtXWYg1tUg\nNERM3juxyZjxrmtCebtwMeUhF8YcwN6e336dyOt6dzMxNYeF5OzMquLFs25j\nLJC4OqKmueJz1bp6dFk+VMPnJt0Ndl1qDRAw0I/STV5oVON7Kpt8v87BkY3X\nF/Xwkgnaehr4abYKQ6CoPDFdeVtusLm9beHa8wFPbKcPAsdCdgGH/vZ2COZ8\nU4IKhvE7W/D26VfFRn7j454tK9rC7ign+B8+a2vfMxNf1+dgtmgoa8SoA0Ke\np3vR+fjvEPusL0m541ZuSFHTb9Yd4iKuhMnrC8TTD3dSvHeY5Oe3JGEt/OJL\n1b6+Fx3lG5AVD1P40UTnu6tap4FcB/GEjkg0xMg0bhfsr2Q1YTo1e/vUSBMA\ni/2PvSrJZyL5MEZiMVWi4aWX4cVzfWLapkvNSF0UsgKhev/8S+3M2cH8+NSi\nwrvLcfn+m5CMAHQQ1ElyWGIDQClIuK7v4awPs6VunHTIhvadboaY9g8+jSLm\n1kHoO0conjnCF1E2GZUZG8abWZ4nvq6iRAcqIYtd4PQX6cebIC2jxOAZbAF8\nR//Tp/KorQmdorh1/q6rNpMajL5cwuSXfQbmgjIBYoXDCkVQ+WZpm/5RqX7d\nYD1+\r\n=RzJ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7ec9bec730f9e6dffa9ab94334b70f5df95a0a14","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.34","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.490","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.67-renovate-non-major-7ec9bec730f9e6dffa9ab94334b70f5df95a0a14_1617239154932_0.8222891234103686","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.67-renovate-non-major-3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260":{"name":"@balena/jellyfish-test-harness","version":"1.1.67-renovate-non-major-3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.67-renovate-non-major-3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b10e40a6a6083efc38c2a3c3b8a5809953d5551b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.67-renovate-non-major-3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260.tgz","fileCount":17,"integrity":"sha512-GuWvoNKm1TdrO4ov4BayqnMPaKZSNkFpM7mcNionKsVQ2Xe1su67dXxbuFQO7ljQbtuzBo5Ce581mmfyAi0Bww==","signatures":[{"sig":"MEUCIQDGtmTMQM4Buitq+ROQvMZNfkGxBoQ/ZAllN/QyF1rJ1gIgKohTAoDyPzWa9hZKYQ5A1SxM3wXlK7GV3Nl1bmn0GvQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45000,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZR4BCRA9TVsSAnZWagAAk7UQAI020rn7fvum5x2FCNCT\nHhJZC2wUsZ44MInmxVLj0o43T9UszjTzLNYoNhlCHD/r5+DeDu+rNcIGo5/w\npXcTPiAspjyd/e8M/k69oAXP2Z+SZL1IAS2VI/YP32FSnH0g+guEiqVSXAAP\nawTNPDT5QlAFS8JFxmB1iHt9Kp8tX9M8TmbzeET81zYnw1xaxzagPiioSS1Z\n88L/FmhYpHWBPtk6ETaOLuExL7yeGZHhKdH7gjwlO0COX5dLzmRQuHY8QwzW\nxAItTH3sT39KjCVxm0WWgnVQBvctqC47SbnSmksdym5h9dmr1a6iHVxGkz30\nN/nGXlqt3DBW0Zothsp9rdzdjb1IfPfQNsIn3UFDvw6XkTvOCtgR9hn6O6Lj\nUrzfkjA9pTrECEe0+yb3K2sIrgK9KP3ljLnvjj/y49i5dGVGq3+Vo2v6mwSA\nE7lKrJwAlJZJnYEO8Z+7MvnzR88UKYykY9hpKealO6cmXclv0VGo6oD1LCIb\nPIs7jUjo2HWMDfzy/T7taqBHF1CTXFgrwR1IrVveh/Fo0BFbeoH5JlW7aewu\nORgrCXxlyg+m9qmDfcKS29tbBl4xjKlxybhIwMVLDN5ueKzoQsfbNnhGba+x\nW9tVLjzkSYu3amJvro6wM/9WIW06pIAr99+GWU66jbRKwl64+sryN0bhHuX/\ntdKf\r\n=yJ6P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.34","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.490","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.21"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.67-renovate-non-major-3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260_1617239553177_0.459100906042472","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.67":{"name":"@balena/jellyfish-test-harness","version":"1.1.67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.67","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ead7b1262506e4b9ee08ae501bf1aaa92ac2ee6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.67.tgz","fileCount":17,"integrity":"sha512-R/or4m29Tz+O9rB6nx6BIoA5t6+vv0LldZHSpIjgkVlFlp/cElMBNxVdBWzlvHp0nJlz6zoO4+6CasRNohL7Aw==","signatures":[{"sig":"MEQCIDbddiYeOq6+/OqjVdnAby3tUc+mV1P/V2YO8zcFycsTAiA9uIrxNbufrZWn4pFkbeORTk3ZMWfHNluBzwF+DC99KA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":44940,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZR64CRA9TVsSAnZWagAAJUkP/igJ/92nJSodsg2wVQpi\nOg3IxNRbjXgHJNWktdVOgeK9WrO2uSzaUzWfckppYfZvsBRzhA/uQkdXq5ih\nCtwkRWsy9nYcxgd+R9qKhSeA6Rb8hjZMh7PHG8QzIAfxfKPj0DFbtEtc3fDn\ndIFFwBLxTTHm68gUgQbGnGAYoZnXZKhcKNO1HDaRTBntthBp2u9PWj0yYDfC\nb5KVxTasX79dd32XrJJuzZ5UnKaZgN0JQUS5Y0ra0cdUyWh5X+Vtd6zEUYHN\ntWqjPvBKWMgaDmujcdswehGJUKaOzXePXKtlbkNTwyxQsd4tc/arxYYos3zd\n1tAm8Rgf/nnZPlK/oW6X3pwGHS9dgVNji7vU8DJetoLRQt909o40Mkj92/aI\nLw0YW73Rp6QtMiE7Do/9ovW7+wCli4tjTtnHk/U6MMemdg8eZtRqqQH5eRFH\nqNdM21LxwyxbfXyC6JNk2Vf2WuGvAjML0nI8zmXPEKe+6yDauFARhIQvL6BE\ndsQPOSy+CSXmyle+nA3n8DKlm3uGiMHBQ1KFXt9reJJ1lqOYy1yEz/UGS1IP\niuMQs3HqQH9EsKzf+/e0vVRG/hLnQ/ldW6pf5MTzSFEqRk2NX2f3hA65TlzD\nbwNlZuC1Xp7K/ln6Tah7jTJURp4OCNEm19+//fgBIv3GujERVyibUpFBL2i/\nfYy3\r\n=LXrS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"afe3586103e33d4c947c1a48a325dc3be03a53d8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.25","@balena/jellyfish-sync":"^5.2.34","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.490","@balena/jellyfish-worker":"^3.1.40","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.21"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.67_1617239735723_0.7028117847429083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.68-renovate-non-major-5cf5b6a868fcec610f2f74bd8344461260c7316b":{"name":"@balena/jellyfish-test-harness","version":"1.1.68-renovate-non-major-5cf5b6a868fcec610f2f74bd8344461260c7316b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.68-renovate-non-major-5cf5b6a868fcec610f2f74bd8344461260c7316b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30f2b25240cea846bb8a1927c3212dd81769766c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.68-renovate-non-major-5cf5b6a868fcec610f2f74bd8344461260c7316b.tgz","fileCount":17,"integrity":"sha512-toagB96vtapMYpveGrk7AtmErl9LVCZT6+qcDKXC6Mqw79E7BAz+5YQSscI1rwEe/vfJIODkmvbbEs61WJ/vmw==","signatures":[{"sig":"MEQCIHfqEKUz4ZWtjqjZ84YzxJ6eTqRLuSddUquU6eDG8bKhAiBNqEAmJ5tQm2fzp10Ie9E8csPs2zFKd/hDCKI+foP85A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45069,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZVpnCRA9TVsSAnZWagAAA+UP/j00p706a8rdXYvL0InT\ndTUF4h1Nh9f80uuR5KdcfSNpVAkivYGi/TijLnLnuJDRZiIKft8ImhKGR6xJ\n+qZsGURvvd74WAj8OR0kdOQf7V+bKSRhJswyeuBE8E7BQ+yJOUHWDFhZ/JwS\nGwlt7F/PlPvRTBWrTJi3KAMi0Jxdl1MmSspR3GaTz+Wm686i28D9KJYx0T1I\n2pZuXI5tl7OJnVpPqF9zchEpQATNbelCSbfBYi4UDg290Nje4Nh1U9XHuA/R\nI+4JhAfo9S9XHPbE79Lik309KnfC3M4Kg8qZM4ethwNXqRHV94HtPTyhQOBZ\nclziMcWMzUjPZofrdnSIUIw9MQYycGQ2y0cuc0yHg7imV1Dpt9TnESrsvLkE\nAZpWgyhB/YvnPHqIw5IhilaDeJ0FNFkJGxce5XIgggEl0Ed0pGJkb7NK3YG4\nMu5CE54wLRP0NHbIR1UbByI4R1ur8g6eJQhvuv9djvUpxYeTKcY79AWPEyJr\nUhqI4ol+U2tcOaMKCxVZ1AKHJgC2D4fVwI0WJ5Sh/9rkj85YZuuzjTdOxcQ+\nhDzL0er4GKsPFoZQHjTrWUrDlUFTr6Xi1mBkpny0w3cfF4fOksjjMKcb1Qyw\nYc8fWtXiTYHa5xuzNoT03pRtIqxjJfBIuucw1Qs320sriWJBMEEVno5NPei7\nZYNR\r\n=kJfx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5cf5b6a868fcec610f2f74bd8344461260c7316b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.28","@balena/jellyfish-sync":"^5.2.36","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.493","@balena/jellyfish-worker":"^3.1.42","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.68-renovate-non-major-5cf5b6a868fcec610f2f74bd8344461260c7316b_1617255015356_0.8489612252777474","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.68":{"name":"@balena/jellyfish-test-harness","version":"1.1.68","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.68","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27727e12ef847dda180c3c59fa58627f039d3e06","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.68.tgz","fileCount":17,"integrity":"sha512-g9l0QgYmI0X3IUZqKJG0TngkoN8uAwVQD54hOGNhpUGHc1GWFAYDqxh+QCl7L5Sn5l510DOF5NoMv85NcJzLLA==","signatures":[{"sig":"MEUCICaJtIPLmb1/kEEVEdz3r2N41lgDLeG3npRRiphe39hSAiEAiuSQRl7j4MUsnGr41ANAayVQVHofk1IOgpP92rpMHzo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45009,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZVs6CRA9TVsSAnZWagAAK0sP/0oHrB7/vT9nyn24yGOP\nTLqRug12jKAxSi4zvvh8JdLVcwmVRl9necX8mRz04xNhL7x4y5JSTW5fUSVQ\naLv2kBxPAjI8SNOPNATvJO/78ixje3NA6XWKuPncBJG1xI+TjQ+EsWvOkp3/\n3aVJ7LkEe9o2bjIBEvQnGin5LIb0g0HNAvBEoDco++FG2T3bV7LgZPZBHiiE\nByLy5zTrO7jweVhCDTqqYFck342ep6r+mFbKNttM8pU3Jz6g8v42EKY4GYHn\noIjr/pZBktmkhcvjzfTvXOuXgNaX5LC2i/64Q6UEPcsWUzKLuHg+SlS4y0FM\n40EhSMg1TehyHbmhH/+QKNvpAsLghdib785sRNUXYY7Rv0VxUIJ6RpHb91Rk\nZ3PYFUVxQrpBBmQnyPfN9Koev76hDfMc3aUNV9kV715Rnt4JW2WNbVOmTo6D\nmZPxmudQJiNkaburBgXJKCHGkp9ns+B6eETsVcNUgB4SGIhwtjUouSzvt2CW\nqH0QNlrhnyWvkJPFjQ0XCAS1fuj9QUKvXwtsghRudPhBIYFZzpIdmTTwpvUM\nD8GMh45uJiRTdBpPR3JK0pnMRADiUxt4FdeapH+dUgQyT6ZrZVCMFUokyM29\nZ1gUQiPfQteP8U355FyYe5UrJzjFZNFBGfc0WXE/FJyPTH7AzNmX/jkUcqCV\nQtZd\r\n=UEnr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dbd7fdfa82e7d17ec7b23df2aa2946491286d46d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.28","@balena/jellyfish-sync":"^5.2.36","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.493","@balena/jellyfish-worker":"^3.1.42","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.22"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.68_1617255226055_0.3023935469218484","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.69-renovate-non-major-2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204":{"name":"@balena/jellyfish-test-harness","version":"1.1.69-renovate-non-major-2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.69-renovate-non-major-2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1076ea008df4d2e80877a6b4df4ed116c65ac1e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.69-renovate-non-major-2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204.tgz","fileCount":17,"integrity":"sha512-DvZAcoLKJFp4ktzooeh6Zrhp2zATKva0kH5RTMgS7zXNgOuW0ZTWBQq27rz6HWLMPZGvG8dgZ0+zPazuDeNgfg==","signatures":[{"sig":"MEYCIQC98JEcbSs5hFq5mFNCZbpwcD/jEtjlPb6Lq/JPmzbQsQIhANGyrhVU4j3O45wLCWY9SkhOb/mpLkK/MlM9Zwa1AaGG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZdH5CRA9TVsSAnZWagAA67IP/jZA0aIcNuEa0gZAwnei\ncO4zsmZ12sWJWIXOa7ZmSx7R0ZWXL2ExyGlq0ZN9WgFVqgmxim0eUl35IJOb\nQk9AWsvw4QQ6kaYdthyu0PRQrG2XpmzvSuMr8AQsOObgAlbOHOVCieD9IAu0\nKRgY7agM6ifaUGBfRkflTeZamc5X68hktlaZeO+ee8LRfh+A/s/k4+b6lKkH\n5l0eYe0Zsy2iVpN1xi+/xVOTt5eOYOjR//m64Ij1sg2nsjqSG+q5M04VKjWu\ntWFCGaT2JGBu5Ou2PJvGMD0TUjU/7eQ2zE4DW2gos8wywp2cgzD8WBme1iw3\nY5CFGces3XQ+QG1BA3//Spc9v1chllbYQZ8+CT0R4E1THOHfPvYDihjgWqPd\nVCepmUaFNQ05fOLgprN59Kxmckl2rkJyWmxnHgGv18Dc+dYxjOpq7JEvs6ca\nddQkkvmeuCz8T9F67sIOp/ttwXFPH3JwKng9s7MhHskyNOJyIye5/e0UTRWA\nYqe5KIYx/lDW3vatjVpPSwuGdFcI6ly61+HoY/RTitM5T9V1ry+wY/0xqm11\nVWA5PDke7dsZJbcID54hO0aPvvPzQ33DUMp9zNqkO+HOo9W+Koi0f73Tg4Ys\nwV3ECtG/ZRyRh//pOMqOClTUa1JFtJbZoR7yJ7EbyAwp6wgTmViasIOnD8rd\nGEoe\r\n=pLB8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.28","@balena/jellyfish-sync":"^5.2.36","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.494","@balena/jellyfish-worker":"^3.1.42","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.23"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.69-renovate-non-major-2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204_1617285624722_0.7657055343614836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.69-renovate-non-major-a95fb6c79cc54ad231bedc9379ec2452f2bf8f94":{"name":"@balena/jellyfish-test-harness","version":"1.1.69-renovate-non-major-a95fb6c79cc54ad231bedc9379ec2452f2bf8f94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.69-renovate-non-major-a95fb6c79cc54ad231bedc9379ec2452f2bf8f94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"014545b7a55c81d9e5e2425afaad994bc5bf8629","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.69-renovate-non-major-a95fb6c79cc54ad231bedc9379ec2452f2bf8f94.tgz","fileCount":17,"integrity":"sha512-MotHD8f3U36jDrrDis1ZWApKsTHJvcAu3zN3l3dDSna399PcC3WUymxb1uJyid6C9lvau0wPsq+ohGyOaKhmXw==","signatures":[{"sig":"MEQCICT7b8sii/XFskyOYBgA/VJaPW8NQJ0EvNqb9UJO+g+LAiASivibFNPeDLcjUPksOT4nCe+zgzL24KtdgXLWkP6cOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZdMaCRA9TVsSAnZWagAAgN8P/jEAK1YzDa+JGfxLxwly\nIHI6n+ov7PJU2xiAT9t49N/f3ivnZZhgWeF1+3UrAR0j66GSEnaxMpVGBnql\nd2Y6BSoE2fdfB0nge5VAPtiLDtWEp19xX3SBZePMPksHVDIdu4gqs2Peyp2z\nFw1ZSkXXf2GkKakWwy4V8uRBY6yECNHyR3nV93813N2fll3l0J0CZTW2NanH\n9WaikPBoVEAPwCjumD9FlfNCLMeuJmpV3Nktg9K5Tnswp5yY16UAa/3vDt2t\nXxeDQ+zG1lF89gAawg5Ts+JFv4BcGesF2yugRO8pvxLzAaEPOm3vcgOpSgcC\nY/3pbmH237wXVesyoSPjLY+RrBFuY+QT70ycQUTuOS9zQUQAy78IDsyOTpFE\nG7XAZvo96z9qDh7Nr0NKdr5pIQObh2AcyllIetdXuuJddYAAVzbjpSXAG24I\nQyh6XON8RexWnKgAWBs3G/mLcSZlD6PfHy7mX09NvWCOZRuBr4su8I7U5zJh\nzFxrgbaoXHXMCWgMcZbE/FK/BbUCKeRirY+5b5rVNU91v1WErsZOEZF4xply\nQR0md+75wMMwsuAlGIkWN3zw4PhVL40OdsBkMhg4Da24CMIZh98VxQk7HU0c\nGZEC1gzfIzhdR/dmIsEGpQLvU8CfZa4td7lH7STi4/4KLtn/aza4x1xXmU8i\nVY77\r\n=ixpG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a95fb6c79cc54ad231bedc9379ec2452f2bf8f94","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.29","@balena/jellyfish-sync":"^5.2.36","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.494","@balena/jellyfish-worker":"^3.1.42","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.23"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.69-renovate-non-major-a95fb6c79cc54ad231bedc9379ec2452f2bf8f94_1617285913621_0.4465008215229316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.69-renovate-non-major-679a7cfd1aaf2019d0f213b0e5c5af15b8139008":{"name":"@balena/jellyfish-test-harness","version":"1.1.69-renovate-non-major-679a7cfd1aaf2019d0f213b0e5c5af15b8139008","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.69-renovate-non-major-679a7cfd1aaf2019d0f213b0e5c5af15b8139008","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f552a6ec3ef64d8c0f026b9c04a15ac1f503fc1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.69-renovate-non-major-679a7cfd1aaf2019d0f213b0e5c5af15b8139008.tgz","fileCount":17,"integrity":"sha512-AtXSpwldBKmKELjh/PvPGbvTIZFC/8I7xO9Z3tMU6JwM7T6vqG//e3jISZrS97+7W+xF1WZ8+dsrvEMNJu5a+w==","signatures":[{"sig":"MEYCIQCbf7DnOsBR0cCpjRbqkALQ4RyTs3lubFmLLoyHhU1PQgIhAJBfezfWivqy5C+mRJ/sp9KyRyQWXjSiZmeFMEOFyjnn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZdQiCRA9TVsSAnZWagAAAsoP+wWJeXy2OJLVK8uQ03an\nVkXyrS6jVwCho9YE3GCg0g0MgFvv6hy1OOyTRQV77I1fyckdvd2XSVMqHkE/\n90P7rgswrsjF0yJRvwLs35Czyvdd6xKDasQFOe1BePs+DF+R+M9IKUR7B0Re\nbtZRsf/OZz3ww++4S3O2iXL6e2vBSA199/1v8K/kqq5G/0mkObM0bBcwVpgF\nPYzr9F4vw1mrJ58jWtJSWCHCQApq3vgaHgzmBGj6Ozjvy0TWfrGrMUFkjnVo\ndOYi/f6yIL9Nb6XHqygY/3+DUZ0hoQTvpFNIWRxB+fORscGklcoedov0BLlD\nIxJiax7GTKhFaVN8F8L+MSryYMkmfmG+MuyFXpuztHCK7uVyzYRLgv2sFKiD\nwzrBYHaQuGyJnU6cHqXDQVxCr2swaxz7xvXIrvWNFQtIxDo8RD5Ug71lk1RR\nFXZXJa8I770vHrzWwK3/F+JjfmHLPhrmSDzGEj+Im5e4i/46Ldphnwjpqxdn\nq9aSVweseW5iGkAt5OA8BXfvwsUDp/6O3snbhW56WqN2R1C7Slfb1drXrz1v\nee4R+u18qgVmh2e8qcpAs0XbNtrgjw9Al4QKC54HN1dff3FfkLezefbbC6xs\nVWb9k5NfwlBATW6NcG6YsQxfY2InJ71GXEvzf8mSvBrSb0ot4BTmUwx8rkfd\nMq4O\r\n=AFHf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"679a7cfd1aaf2019d0f213b0e5c5af15b8139008","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.29","@balena/jellyfish-sync":"^5.2.37","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.494","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.23"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.69-renovate-non-major-679a7cfd1aaf2019d0f213b0e5c5af15b8139008_1617286177585_0.07901317657395213","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.69":{"name":"@balena/jellyfish-test-harness","version":"1.1.69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"71d7f5bd34d73b9d30ac8cb5a6cd5118871b3739","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.69.tgz","fileCount":17,"integrity":"sha512-rhJeVrYV+A1mzQmUBLROdjzRNhxepZsR+sQjfzYlABN/fj6PsvnUvLuIfq6I0woDzeiNS/SgecJCxev8oNJWlw==","signatures":[{"sig":"MEUCIHpTVnnu18Mok0gSDObclLOmnvFklr+HWBR5/Oi9otKNAiEA0ee3JOIcPNSnsHeCOae9uy/6YgFuhSbHpZjoSs58DOA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45078,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZdWKCRA9TVsSAnZWagAAqggP/iNc4cN9AMJ12fB6Z4MN\n9h1Gm/e9rJwRYLP66Mp8hsYeQxw7ZLg2GMVsOWZa1/+o/9vn8FGJalbeZLFK\nlq+7L6fGSjr+zV59a+iK6VQUmz3ssF4tqnQY/DzTkQsGg1veRBq6zCqF3zni\n2kAMY91601m3SRxGHsy+b4UcnX0Wz/+thcv0UyP9+DVOz0ZeCdg6VZwtIdQt\nOo4ua3beF5TDPUEU18uWZBmJ9npfe+05YfT6iwcTaZpc7O2IvFr8IZMu277c\nuyOMNWkxxllYM8PfPpKLjqh/qMIBA+hld8qcj6uyO0inR8tzCVMOn/Ws2EKW\nR86QsVzt0NdIFCnaLoQTwwO09dDSpIQRJFDVOktyNfafTqZS6KyfvSZ+FNSF\n0HovS89CcE7jfxe0E5TiMhmInICvPUjp0AuTo/92eIK7wa6ZMmlHXzcUoIXH\nELW7jpLbQbIUsutgBR9hbRpech8ZESla3t7mPrrhmscjOYmIbHuOHyAuzkKd\nBY1SjzQx2A3EQyiJfPCzb2DkgHc6WCUv2CPpO5EUjeFa7vhmrzC53CKGdMRP\nuEJl0pJi37g44AC8d8PQAuuK8LU3cOq/gBqe+MQng8uxjT9ECB2AKWZa8+cE\nuf4M62gXSPDaB9ia494DKDQIlk60EyU+5EwR/lkaG/n1xUmoXTWuKzThP8Vc\ndCQO\r\n=LATy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"29c933f8e3e6e8ef85dfa451ff20dd36927950e5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.29","@balena/jellyfish-sync":"^5.2.37","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.494","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.23"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.69_1617286537834_0.08703627858545437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.70-renovate-non-major-253f160c04eccc84a502c516378210cf8a29b4b6":{"name":"@balena/jellyfish-test-harness","version":"1.1.70-renovate-non-major-253f160c04eccc84a502c516378210cf8a29b4b6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.70-renovate-non-major-253f160c04eccc84a502c516378210cf8a29b4b6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c75bfd452375049e78666b94a8bfe5f12592adf0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.70-renovate-non-major-253f160c04eccc84a502c516378210cf8a29b4b6.tgz","fileCount":17,"integrity":"sha512-nSerthfgsEsWSvbrEP2wGpYTlY0FLSogniLigdep9fs5neCpk3FmOLSIOMqvIJqRDJR4vOXUDf5xpNB7WIK1uA==","signatures":[{"sig":"MEQCIGnrGxL29EDW9c293a7EuSJB3HAZmNEoarP4FEkyjobZAiBj2i/MbH2MU73PoZefawIL/wRVrViJLuuBKeHAzefb2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZfWjCRA9TVsSAnZWagAA7mYQAKRmY5+YKQqUFuWae1Da\n3EfzIef1r0PCsBBuhVAL/5T5GXCG5palWPLsphXP4CBkCQN0qKroiS11Y9i7\no9hVFHjg2yqVTCBRdkO0CB7FfBQFonbFQNSYdn6BeKkcWChN2BBi3PmvI7UN\n80BTjovvSsOkOsQb7l2oG7Poksd2I2Gy9WpBcydAJM9G6ULgQF9OC5MdNNsv\n5Syu50jmAMv//JGmLDXRnFbLdKmeOVUVBn2sBArZkA+SSrB3qfFVkP5QnZb0\n0Yxx2+HpjM6OOlADpX43u8puHDF+fM4zkjqHn413FVQn6OSPAn9DJjRCQZIF\n6KDKVZxA9iA7Q8emC7rSqCOHW8suO4rWtHOdDAGJN2s3o0Tvo5+ozfDGU6a3\nNGg/kF1UHSXAcWgu7MQHPRcapNzqY0PW/EfS0PoSZqEh7HH0lRKFw6KRxZKC\n9ZMXIdpJFBVUZ2Yji1JpNglmaCdxwvHbVniRdJxLV9UDZ2CqYVWl6R3NFQr8\ndVgyMbRlXkcc/HlFuY62ChRM3/28lvKuW6FEFhDKHq5uF/V2v0zEBnh7lX1V\nNoiZlCZnLDMBD+E00hyOYNAfhOXqG74gyjfhBPmH4AyfEJNsiFI4ZDhDL/Na\nVynQg1REhpsC3IiROtOJlgnX/Pyfsk5BWXzNW8y5fh+X6tzxmjW0FU31b9Eu\n2LKN\r\n=pAd/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"253f160c04eccc84a502c516378210cf8a29b4b6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.30","@balena/jellyfish-sync":"^5.2.38","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.495","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.23"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.70-renovate-non-major-253f160c04eccc84a502c516378210cf8a29b4b6_1617294754896_0.6754295639393417","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.70":{"name":"@balena/jellyfish-test-harness","version":"1.1.70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b896a794db221bc3071653d7a3162acb9ecb2901","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.70.tgz","fileCount":17,"integrity":"sha512-YOZ33GWz7kxmJUSKMNkSLGHXMeLyFZoJKV8QRvyA2l9TKnfVmm5OCzdnBhaVk4kZIV/FV1yF7ZX2VOpAdVnGiQ==","signatures":[{"sig":"MEQCIAWFmcN09kAdhhSAe93/boWw/O0fmIXcxumvg0fYLpfgAiApYMcM1BK0PVvIcW2xvkgssWE4m3ywnbOU2HRE4YYsbA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45147,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZfZeCRA9TVsSAnZWagAA90sP/j9xmCyktQfMxJQigE/q\nhhJxMujMkvzL2JfBeEHrk7FvHYkjR9jJX1DTBp0l5UXumXabS6ESnwR/sGz0\n2l1JZvIFVELr8AwlERLyQhS0zsiJxP338UKgv14sXt6T1ndeD0hyWayp8H+/\nCHfcrPJKoZWY/fVq8+wWgCPbforaI0DiNgUMATMRU/3HMhV3Tkr3DOfEGj+E\nudEiLMu/xUqGTS8FcPUP6+1p24Q1dg83o6TvrXgpPO5T6W7w6Fee7/gWHNrl\nn40I9pOCNId3iv5SOky1JlXF7JPURnnsQzqYVzdZ1hT28uxnVccZ7WCaNuV1\n8EAF0Yjahc8ZxZTnioyiGDuKKrA0kD2xDCtQU1/7wdWouH3Nwq8bzkx+kT/X\nLVrwlO5KjG4lhLY+wD77+HJHnaBlffwp7wIaneq3KR/pEnYwrq2K1BfmM3F5\n3QqdU1r7XIVO4zEg2/HjqOH1Qjh+To6UDqg1gBJ22GDUKP+wYnyAKj/V7n15\nH3TplWWE/rboLniTMYbXtSXt5uNc7VgpLRl17sZxNoi4inQuI2vASOMZHa9E\nzlZMgWmH7Y2TdNnEX7liyOEy7rGzkTYERiBUm0FEnX3jqW7/oYwJHdrVuxYh\nPohupuB0DARmDCeGlCKaIBm4Z2v5NFwt7zZ/V7cDKeHyg1P5mwL4L+ykBOys\nXAPf\r\n=y41g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d31907e0dd2c79458f151d28a2b512d11983fecd","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.30","@balena/jellyfish-sync":"^5.2.38","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.495","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.23"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.70_1617294942224_0.010770852193779934","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.71-renovate-non-major-9380da43360204474251f10bd09e91f30dbb94cd":{"name":"@balena/jellyfish-test-harness","version":"1.1.71-renovate-non-major-9380da43360204474251f10bd09e91f30dbb94cd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.71-renovate-non-major-9380da43360204474251f10bd09e91f30dbb94cd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"487f391e9e23c1a20467a82dd1a5ba996c524def","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.71-renovate-non-major-9380da43360204474251f10bd09e91f30dbb94cd.tgz","fileCount":17,"integrity":"sha512-V6e8qPdv2adHUD2+rFbALpz26Ij++oWawF8VcMGrWnDiDq6G+9im7xGRXheIcUc5NV9hqkWA8IT2mzAqE2yrXQ==","signatures":[{"sig":"MEUCIFS88JYbGYVJLZehrd4s5Bq/BoT0Q/t+7AzRqoRDzx1ZAiEA/5g0Jur+rYdfY9teQ82UnoACR4sAu1cMrUCoajrUAJI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZlZKCRA9TVsSAnZWagAAefIP/0sP0vCvqwN1iiiGEMZe\n64BFK2/FhDhZ80q7HFONM62R9hWLYCbpaBzDDCDB4eKXkvX8yCn35/XVF5gh\nx6O+lsCOdpXxvhAIPjeCmI4JuiC7BdHQEX/etCchG7Tuj4CTv2iQWAJ7MyrX\ntsm4AO3aYD6xbtRaGxq1hw4oyXVBEwQOiMZ7UhmKRy7VpI5mdre4042LWp+F\nJc7kdqXrkxk6LMznAEid2fCCDex3prWRMSD2zvUUjdztFRkKQnjRCoIcFPjX\nmDDPl9I1kS1I7owOdEPteK2FAttjFpg8A9ROsgRMSgGgdRaO5Id6lws8k41Q\n9Ht7kXiXfavSyjHefcBUTj5GKEWs+g3xjBl5aAuTrOulP32lf8t9f6+Ai9f7\n5gfd1BiSYKEPNwDa3pzjeLUdC2I8KvOtwPUXIM21CN2CWfLeGn4mvTf49I2v\nvVfaH2J5vujtiPy8dkd5xbY+HdtrDT+xn/+2uwrvO6pzmFEy/JBEatbFmbqG\nAhpkmNQCZK8mxR7tMIYCFjq0K04DQyMvj68+nll3t5XgaZdRkl7kBxq1eoyf\nVjXWr8dJTb55Rl9JauNpeNDOBxzXS8Sk8TtQjdp8XVMy99NsV5jTI4rBZmfB\nMVtf+nkr6JAQ5nECaqOtg8FZCUae4u/2tqsoIHQIh3ZsOevJn+eYR0plk2FT\nzKSd\r\n=H9Oc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9380da43360204474251f10bd09e91f30dbb94cd","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.30","@balena/jellyfish-sync":"^5.2.38","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.495","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.71-renovate-non-major-9380da43360204474251f10bd09e91f30dbb94cd_1617319497739_0.8100525584744678","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.71":{"name":"@balena/jellyfish-test-harness","version":"1.1.71","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.71","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d096ebd6e23a7d91530be9abc580ce796fc2cb3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.71.tgz","fileCount":17,"integrity":"sha512-/5crGGB0PKlwyTNiDADpjCwq/yO58mSmLFqvraWAvQe1cxbrP5i45kLRwDkY3WMQ0jwh8B6Euv5nSlvg3IV2Vw==","signatures":[{"sig":"MEQCICypEolHWo+7UxgNbEsNmtpN939eAL5M5RQB4QEaVzo3AiALCDPuoBaYjb6+s2Bc3gwn6zARwrbcLUi+kXtBkPuVJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45258,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZlcPCRA9TVsSAnZWagAAijgQAJrL8WMDHDpWY2hRa3Ae\nQAUnnC4eZLPi1A81qiKY8alfNVCgAg+yhBBXvEMZibkxBqkWt83G1DKnnkvv\nBZluWW3WZ1HcwrAFE2NzU9WGevGOoyRUn1AU+fgnREqcvWtP+3/rw2S3tAmQ\nzIUpoN8jZrPdwVs+vBSHtdRza6/bkga45M1FUIljE8p0FPcPOexUlwKtsWJZ\n8wU9jPYBLqZ99OJm9VrecR97wl8kaN9CQ1D8F1OLcicVoXE3dnNMV1k3bora\n+/ugAaQEf5ey7FlQA1pCgOQ05RFPzGU87o7jSFW9YX6EXKnFFtEMdgnojPtv\ngR4G8M6SfEs3ErBiOEtij1w6t1YFdn6nvhpYKg9TBrSCFT9SHssahXmy6p4C\n+gm8lpfWc/VPLTFvZSjOzl4OaM6nZYSptfNlmG9WSF1P2hQSjavL7JwES/Am\n1mHh4+6rqbbyECc1Bb8/Fnnu0w8OODj4MAjPwN57uBPonCHFAXgvDcjpSs8w\n5D+2fZfd6diGkmmwqxX5IivJSqIG3IkHhspsYN0F40MSVTda4UKLdCUOFRj/\n/gBOKiCE20X5IWiGebM0WYnbx3ie8uCKhZl1eUK0Jb1GHLaa9dbDka7KnFAm\n0Rgs/3PnY2a3KnC7kwJQLMZemPn49IvCdBGFxcu7iZ2Km8oCZPugwjY5npRp\nIuf/\r\n=/sUj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47602041f605a5a3e8ab3ff19494fce2f5df2869","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.30","@balena/jellyfish-sync":"^5.2.38","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.495","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.71_1617319694895_0.029811181454281188","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.72-renovate-non-major-3d06a73ec6129aac266896223e6bd4b188a982f4":{"name":"@balena/jellyfish-test-harness","version":"1.1.72-renovate-non-major-3d06a73ec6129aac266896223e6bd4b188a982f4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.72-renovate-non-major-3d06a73ec6129aac266896223e6bd4b188a982f4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d108fbe65c1aa83dc823fc57b7e3fb6782ca202d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.72-renovate-non-major-3d06a73ec6129aac266896223e6bd4b188a982f4.tgz","fileCount":17,"integrity":"sha512-dc5uvWd2gmdVQBEvS5A+Ek5G+tFznDxOnXyW3x6CrJbHUy+Bv2SfZip7Pt8MCHE2RFbA5zygtSyk5ssE9aoPwA==","signatures":[{"sig":"MEYCIQCo5uHJ1p8qGcTOdGSM4cFIc2YcXs+r5RooJVgwTk+94wIhAPAbb5dqBEe7O0AKILlSZ8lTEKCuvu9K8cRXptqV4zyE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45387,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZmiWCRA9TVsSAnZWagAAZ90QAJ0wcosHKvql/Aq4/1WW\nGziaCI6paKlrwf0eifP+TH9TzT2syX3yIDqx0VSE4u0XoI3CEtGzxL6TNNWx\nDL9xIXmtXOs619vSzgJREkj8Q3L+OMjk2m2GFChF6F0eD1fJQuhTRhUn246S\nXpBJT9HogeEv3QvXZwTMQapPEdUVqWTK51DjGDmQ2YwrO/ym1FHWhAPnMqAh\nd1ELrgER+Q7vqclx6q/3ebpJBbFdLEYzquMg/Zj1q3fkK04R3qdYNvWIxKIU\nHb/C1dDeNfa3Gqj67klZqJKvdQ0OJcV8t2l0X367Y0HvdBZz1Wp4s1evtyYf\nOKvx9JtKXnAZYolYOMCPvR2vSd5iQg/VrzIkGodJVuG8OvGYryUzq/lx+OdT\nkZQA4tKODSr9klGyeJ4cocQ1ZYmHZpmF4SBI3lfiD4jRYsjRzP7Hu9w0WoE1\nHOvumKW+pFPojcpmgoLICAneXcKwJCmFYrzYvp+/Eb0Evt40OFal74cOBSQF\niuDLvXQM5ce6PSlUDdfTqiQzBltGUJtDTeVjtNSGaGrG+DTZplRP/IQDD+Yy\nJ5DfNkqzROqMoe9YLZRGSfyGuMlhlFBC1RroKH5BooOQpK5zcdyJHeWF8XSJ\nJdbaWi6JLYRO9mSw6TeBwurGAx+A4N3/FbiOQ3mpcrGZylT/caunf7wizZrl\nSL6S\r\n=g0BV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d06a73ec6129aac266896223e6bd4b188a982f4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.30","@balena/jellyfish-sync":"^5.2.39","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.72-renovate-non-major-3d06a73ec6129aac266896223e6bd4b188a982f4_1617324181941_0.8391646451262778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.72":{"name":"@balena/jellyfish-test-harness","version":"1.1.72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c73ae8ff694fbc1c3179b5546ac76d0d13ee6ea2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.72.tgz","fileCount":17,"integrity":"sha512-H54yaX9YqF4Nvg45I/ZY7ywYjeSAK3RHm52jHFpjM5ERxfTfjV0/Z7qJ4bFF56fZZpaM87gQh8rh60zfbDqAbA==","signatures":[{"sig":"MEQCID/JQZtGWWzS9D1YO91IgAYBL1dgZbCAScx10CSDScg5AiA6O+UUKWMZVq77aKlApMTvbTqfs9OzWSl/WE3yzszUNQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45327,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZmlNCRA9TVsSAnZWagAAdkgQAJ0VoIiCmuGDzbrjvmjE\naGvgHzNQ08RxchSrA6KC0Bb9wbYnbE7Q1y8tswWPLvFs9XgoyDoxmpz2ETCP\nfuoE2s5qV2zr3TlFI0qAqsuAqBp1V36RK5BjuOyLhCix+YP8NPEDlIXCrqK9\nRIt5uZzWzAq485HASpLi6dVFg+I5SG6bJumD/qVAALVFbPGxRV4GwywWg0qA\nYtQZiP91RDnSVMaIeLKKRsMHJ3jd0v0PqjwjV0naoKWY8mxMaVsiRpegYTzm\nqXdVdCT9SooH1RKhsHsAnVXKf+/kicCpiNwV64b/qSuLSZ7gr5v5Vp/AEjW/\nSquJR4tgJxEwCE/i7VPPHxAyuDRAo+uQHhujD7lg1F76BNffhaCTy5ptRP6L\nQbxJNahBIs/rZ2DHuk3KO3T5cwieaGX+buWIzHXDOiT78D2G+SxfKYGCTHSl\nl/v5dGFKPzvNg4gSsOkRiW4CoK8r6XPdWPD1qEVt5ys+ImC9JbMoxJQi8w11\nL+skC9xCNhanxCYNaxggSJL81AKxtAsAFLSjwacHLu22wgog6eyIKQAy33tk\n120Vka6JU2JN9gxCvRh5kj06c25ZPCxb6vWOkrmyMb639lX0aBMhoLCXbZ6B\n8HDOdkZw3ZK6b5BxZwLpIDEr+lXAoz6ZV3SVXMbQLhJYdG/u7P8ztt89e7Sa\nsZf4\r\n=CYTK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bd07b36b597aeb580ace203c52b8d86b4b2f181a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.30","@balena/jellyfish-sync":"^5.2.39","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.72_1617324364958_0.32508308218862947","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.73-renovate-non-major-1b339118edad495f0d6bbdb6716a9e39911f80c0":{"name":"@balena/jellyfish-test-harness","version":"1.1.73-renovate-non-major-1b339118edad495f0d6bbdb6716a9e39911f80c0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.73-renovate-non-major-1b339118edad495f0d6bbdb6716a9e39911f80c0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"07d4f83f1228fc37192129f7e81ddfbd13fd59f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.73-renovate-non-major-1b339118edad495f0d6bbdb6716a9e39911f80c0.tgz","fileCount":17,"integrity":"sha512-zIk28BPRq9IjBsCM8mFrzTdNTNmJClTEsyN21CMy8LegD8LRQMzPy2xIbB4becsfru+bqW6AsIc24cJURpWUGA==","signatures":[{"sig":"MEUCIQCyc9zD9YRr73zpo1xq3jqCSXGWb02hblq2qPLb2xV+gAIgE4M1QOr6Ya0YbongIpjhW6yOej24zYR/F0P71AnR7Wg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZohMCRA9TVsSAnZWagAA2j0P/iv0y8tE4o8M5VpCBAC9\nrY/FQfJcGl17zcXR5ZUx9oVAZt2dd6Dk8CH5vTaa46w7F0GBZ/vvHN7V8VLi\nSQlQlkvwz+5JEzpY3YyZQdigVcivU5jcHLCVr8inqTZl80J0jza8cu2b5w7R\nNR9PC0vtYjIsyvThcL6nv3pdeuaNJGBejXI6f74752LLDHpuk+zJGYwY6fvx\nhMYYdcmsbD+Bycbd84+vbmOofKAqn1tadGjdpyPodIjOeXZX5YEDi7IEBrCB\npj5GafQ1wMdu0V3zlSOB8577R8SJr1fiO19BXLyhkX28UH5UwMNnv4M+ZNCa\n48PD9Qrf4eGVAsHCY9g7lWD0YfB1JW3OMNIPAn7MIcJjIvbc9dac55igwegc\nG471NKTcPlUARNwFylxrc6XrLA2xuwigusJAjtao+UAhaP9rn2L5P/xu5Ngi\ncFOwle7jF95IrylRpUKg6qJchVLjllB9NLg0e+RPImRfQRjFUFrJO2PQAQPS\nbW8I9T9agS2mvPy1uzSoHqoF985lbgpKggmSGdJwksVWygWV64xb9R3XB5Wt\ng0YRHm2W3dq07qG5z5CBLucaXUoM+jJPO5CeYzf2QAq6RCh7wIpMuyfeiTIr\nL9VZccLRw3tnKbqM5INOyq/X4fE6qrGid68eCfkKmNJTgdLFfxXxrRc5ayRe\nuNg7\r\n=8J67\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b339118edad495f0d6bbdb6716a9e39911f80c0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.31","@balena/jellyfish-sync":"^5.2.39","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.73-renovate-non-major-1b339118edad495f0d6bbdb6716a9e39911f80c0_1617332300305_0.7902873096066161","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.73":{"name":"@balena/jellyfish-test-harness","version":"1.1.73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ad607c4f711aec22d61c95e4f6ac9fa09ce58ac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.73.tgz","fileCount":17,"integrity":"sha512-+AD72IfuqgjgcrRdvRXftcNPukGfX55PLRTye1lP/AMJDBWqtY/v/UWCA/vx8LMaHXi/MuZ/NhXy+ju9sG2WUA==","signatures":[{"sig":"MEUCIQCWw4TKcQDihrYfZTo3bfoOM4Oyl+k3eejr3QGLX/t33wIgG1758W2B757aDNYZBCOXxXwFtiipEuH9fnhvxI0VE34=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45432,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZokECRA9TVsSAnZWagAA5goP/RyYRP3vrVVE7c4+yPpr\nTvjwv2/hWVW3kLQU5B2COVgM9nCbOYRmrImHh8xTCorjS27XV11xS2AkPQA1\n13HwliySRtW7lXYmiGjGPRIquPKpjmufERd7zyRiuLp4TjsU0HHhxYPgpCnB\nWE0VLiBpLvbwyXtmoSlx9rZDjNNJU3jOgKRi7fFEJPPU+kb2QEPwjL9DR7/i\nuueOp46TXZj8UHFHcwMGmo1eeOFOxeJEld7Dfj8eWvwpM95A86c93uVhcNi4\ntcbBKZ0Jm29HSfjrBaUdpcOZD2+xNqUb7omo00bFU3f17H7r3y0/Z4T1k0SE\n/8g9lqjJ7O/Z8ZVWQt7iRVcWL2b7ogQAbiRWo3i7seEb3A0RbpOd1L1SYCSJ\n4WiSjE9xkQ59Z0H2MUEFxgHUfsAO/vsHh6S2tmPd6/1ebNm+ReackZhObvYB\n6CXcOwyniWW4P0Qw090iETDL0e95eD+1X7I2aJC9ZrFN0tuQDeSNbUjk8DmO\nTpwhy5vcjXoCLVEwIdrCZEeFSxGkdjLlrZRG4d+2euoH3gUUUv0zELPrKdbP\nmyhyZedMvKZJG3KU45W5//HfE1BWc+GeQdU8LxiiyEfQEGDVb4QQZSZqOVd1\nHIHOXva1pKAg4yb8fTAWn/IN3i4IZxgWxr5ZePi5AVPxN98Ycg1qjb/22c1O\n4Y0z\r\n=SpeY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7c23fd64b594fa1d59557c6d690338e2bb369b4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.31","@balena/jellyfish-sync":"^5.2.39","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.73_1617332483571_0.34043762615422346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.74-renovate-non-major-f2cac0a13268370622c75134efecd797a9e0609b":{"name":"@balena/jellyfish-test-harness","version":"1.1.74-renovate-non-major-f2cac0a13268370622c75134efecd797a9e0609b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.74-renovate-non-major-f2cac0a13268370622c75134efecd797a9e0609b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0953645dd48a7994a12b1290e1b4bca74d5611d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.74-renovate-non-major-f2cac0a13268370622c75134efecd797a9e0609b.tgz","fileCount":17,"integrity":"sha512-bSzxLk7WmCSIuVkE6bTPB4H66MlxM2B1QyzXj/AvfV8Y7UAsHv/qxcTYR2UTnHcn8yHx4yOHmHnd0P//EMGoHw==","signatures":[{"sig":"MEYCIQDENvaLDzALso16eDEvou+6gqqywGcSLdv+/ViyzaUehwIhAOgJuEEq2fS4c29zIOJin9jlF4HHUSS2iIopAjDr5kVb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZptiCRA9TVsSAnZWagAA68IP+wWFmD5kV7Ptxcpv6/iR\naYLHLRhWO9CUTwR9b4JEIjYq744khr8yAPgD7p+13e5fYXtvah9XnIcWswTK\n0SPttw1ohO8o4Wc61+M1nXdhsed90KwmGJtUQM2u5+mA6qMwhTWrZdOMU5ji\nQhcLiFznhtj68aghq9+0OW5/qJXrK4l4UtY7cvwcntt4aaG9hzF2lbit3gdF\nclWyLRjSu8doRtYQnzfcKg1p30SiBOQIkUTWHH3pugZw6WgOFMdVWWthau7W\nHZ7r/pAS/znvwORLkv25RBIHlj37pzj1i1UAVPbdYMZYYmJsBcEy4XFiZxnI\nsPcQvPa0Lg5qSmCwdZhxkIdww9TGhhm90Wyu6jQZ1neAV+hYHNt26w2htNrS\nnu0xpCtQxCSmIuHxBmCiL1mzR4tlVGU4u+T+DHt9CuX6RJ09Mh2QlTYusBA4\n75jsSYvAX8UrumJkeB/srzNHVB0tCOCGuFwNCElObRujBYTXW3ugg6pf9Cz6\nuZ31zEB2XETJcE18I9+5SM1ZNbb8uB98FpKzwK+jdAjX8S/GptOQamgGRpLS\nThoYTrt+CIuycDIWB7hR1T4yhmVpNvRCrGWjEP57EPw8PzJO8tAly+9Cqea1\njqaagCAUzslBTrgg65JcMNKxWdIZYwuYO8XL31KEjJ210v8KBnZiajp4vIXR\ngQ03\r\n=HLm7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f2cac0a13268370622c75134efecd797a9e0609b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.31","@balena/jellyfish-sync":"^5.2.40","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.74-renovate-non-major-f2cac0a13268370622c75134efecd797a9e0609b_1617337185822_0.6816088524114754","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.74":{"name":"@balena/jellyfish-test-harness","version":"1.1.74","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.74","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4348f6244dc7206ae25c18dec4014c0bacf62df4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.74.tgz","fileCount":17,"integrity":"sha512-rSEQb044CYl4hSztZZsVKgP3SNUAr6p6OBsrzJz9FxFU7+U1TBnToYnRZqosJuTNMeJGZORqTrBBB2LmPx5Hqw==","signatures":[{"sig":"MEUCIQDOQClp6msrIwowIWDIWZV2HIodV/XhuZ+79c0umhOf4AIgNc7vXzI/s/AYy6uIK9oGyUKQyfMSUgOmJv2grKG1sAs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZpzNCRA9TVsSAnZWagAA9GcP/izgI1kINdXjlkJkCHoy\n4CuV+TRZFch5OMcemt0Bh41jHL2QW8XQEFLJT4Lr3J+gkxV/Bz8AkrogoEfc\nL80JoWr0OaMfQIWtxFdjVRXbVXhEaWaHcb2GQudcuHS9deCUQ2jDf9DcZgtE\nGFCEbF58RYR9RRTsfBQPWR4y6htO1VI9f8GEl/ntA07iFbxWhq+Ie1lLJ1+i\nLM8d7aYVYytZOxXUZnRjmijCzIy/YJuVjEgEFmCzsyJEWI4LifEXmxN48SxB\nXbmSiC2QYWb27xohW7WP1CQHsXKOpOexCWntSRCPIGdY/kiuXzGiFcw8gphQ\nVmdFumakoW074jbQg5vCYRn2ldto/U8iDUgklK/NfFuDtoCEfEbTKWfIaFFg\njeFfp+2/mDQgwVBJ0ge1EGzllDGFXdo02O2RGI2ESF6nNY7gxHnec5NY16Kz\nv8LMSQwg+MvAcyVLkAdftf1k+CtPkuEIzSNix/70Jr+fOjAWHo2X/nuBaC+1\ng7C+VwoZpUM2e1vnAOpBOohkTVbNTHkBwMejAVdL+mYkEf7EB5ENpf/vV+4N\nX9J/NIrfybA7BmPJ96YEjcqiTgPf9xymFWs3QUunMC8qRat88sYCB3ilh3Tq\nCgaVPMLhF+ujxhGQkTwP8Y5zJrd0yMS60zsPMkqmJ+ealkOR/bkf+kho8fvX\nGGer\r\n=OShS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"93799d558bb4752ee9c90d71166ca187d3e55d3a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.31","@balena/jellyfish-sync":"^5.2.40","@balena/jellyfish-uuid":"^1.0.80","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.2.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.74_1617337549297_0.6946993520593359","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.75-renovate-non-major-3797f2a9fcf5f8ba860e242fe4230c9e996a75ec":{"name":"@balena/jellyfish-test-harness","version":"1.1.75-renovate-non-major-3797f2a9fcf5f8ba860e242fe4230c9e996a75ec","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.75-renovate-non-major-3797f2a9fcf5f8ba860e242fe4230c9e996a75ec","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4360ab875d0ba49421c27036b2590d1b426c22d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.75-renovate-non-major-3797f2a9fcf5f8ba860e242fe4230c9e996a75ec.tgz","fileCount":17,"integrity":"sha512-wZenWKJV/sJUb2bg2xvChny/A3Gcx42hODwvjjw5YqdRQtNTi4y3r4VCMEnIlFPSKYcnCd4Banz8uz1ay2t0Hg==","signatures":[{"sig":"MEUCIQC5wxvtdQrYviE87qd5e5X4Ov/6rij7IgvdcPN9WojvKwIgZ9D+pg66Ouk5/EObPI4nrWriDLOEaGvQcMUsHkQFx1A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45665,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ0qbCRA9TVsSAnZWagAAaJoP+wRciqcC0qVutacs2Rfl\nEuTn5ySU0pzu4kvd3Z2i0JH6TwXDw8xxsjM5R0od7F//4mNHr7G3flv4+szz\nJgwdGVwAuuQwYxOK696O+ixfdmMc075oXTI6tGeolJEiZDNlGLjvNzpSVnNL\njSLPEkdCP7CMrIUPHGLIERAYE76N+xYKpvtHiLDMGFaEVRwstRZZbDAggZOc\nmALDZrl+FX+oDQrOCWgNxCRCRV6Y6g6v6eDqXLaprXE7WoH6Hfgh2R8pVtmj\ndOxk8rblGZLY8S5d8HXVgduIqkzDNHxjuqiyYQSj59NFZ8si9fle0JP4EY8M\nwBPR66+Sy3uXR9uyyUHr2uW3NAa3mJqLSCIL8d7HZ9CHni65mekkVnlVc1q+\nNUNrnx53ZyPPQjCoUF9rBGQWprhykl67PT7dRy1MnuPgKqKZhMh6Ta7qmqOT\nmoVqIQJ1OOcCVPzRRp3hq1uem3lgg7RcT7I58uq1yr+RZ0beGx4kC0BDrCPL\nkXQW8NpPvcXixPA6WfVJ7KMF9YubLgJYf1YhZgTmAQm0o2SJQsn23NdrZQlU\n44aJmQzEimFIASXki3XK/wZh6m/xr/K+fOhvectyOR5jt3wJZenpqbZD+iuZ\ns54Re+DrIEMQt5wNSMzXF1Ij/LCadlGLe2zRLFoD8k5QNAFsnS2fUQizQtUD\nXaqn\r\n=Uuko\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3797f2a9fcf5f8ba860e242fe4230c9e996a75ec","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.31","@balena/jellyfish-sync":"^5.2.41","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.75-renovate-non-major-3797f2a9fcf5f8ba860e242fe4230c9e996a75ec_1617382042975_0.14651089612965285","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.75":{"name":"@balena/jellyfish-test-harness","version":"1.1.75","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.75","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d421b46076207c8de8f426bed21a4995419f92d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.75.tgz","fileCount":17,"integrity":"sha512-Vuux1Y36GenLHMQWNtX25aHSe5souaOQqPhGbs4iUK0JAKKRIf1DKSxiwsvpwEQlp69VGLhxZJARVW+T9fWPMA==","signatures":[{"sig":"MEQCIFT3s4TVvqQIkHk3cwt/cEXZAI/CjWOTpgmK6ErLTubOAiB5KGWP/HnS1OX/WAOPeliUHrBP5NnSLyLHlalwnrfzKA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ0tnCRA9TVsSAnZWagAAqwgP/0Wq+2KgZ2+ZMauFzsiR\n9R2qqEfCeO/A55V/jataZ2lnaY1E3yXUfxObBj4ZcPFj09l0W838CHn9W4Vl\nRckNbsjmAVO9z1OpV0S1JMKVaFY/F5VkxCi10oH36OxjoQz7HNxB7HQqrivZ\nuuWdzCUt8owzXKonCxmgSEGhyX7118k1YFiNJ7lxQGdeb/+Zf0ZDQR66Ao/L\norIJlFFqFP1OSAyiCK8qC+rDt4rrbTpRFB/u31kJ8TnfdV7WcC9MYNamdLxP\nq726XRRCRE+3CSy6ndZu7OyPY1SnYoXTSn1UwcZWzIQoXOKoiKRW1xm+O76o\nlk9jU+U1WQlzt6vlW415B2rl4PDqXDsKKNfUirV8BCDHJ2UFkOD/S+ZcFICJ\nKVCi8zGmWLmDTWLgzzTlFeOal96Uf1B9xhpgn4lnT24UZYfQw3T1gXojbimw\nj4mBwEj43EpYX2wkv1XFtzuLUWLnKAIp7MQEM1Q2TR9MgWoBC0dEnX8eA9hM\noOh6xBcw844VyjdsUJkpQhnkGvOCKuaHadSKTt7R4HG+z5zFqJfPfeHzcoim\ny2e6IxOvc3lSDiHy7xN47g4h19vP4L/pz5E57Lyx2Dj+rM/ODpGKhtKnP7bH\nDxGgU78cnbSInylYN/UITLRjFVxwluKzDwuxN5CZGPFPXLo/Xud+Uy8UXoCh\n4iSD\r\n=7IaA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c2c0b70e402e6a03c3e6472b6e35a78dab1d8f7d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.31","@balena/jellyfish-sync":"^5.2.41","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.43","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.24"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.75_1617382246648_0.8817701771384983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.76-renovate-non-major-06fa859064a4c7b043edbd13ca4e32c64df789dd":{"name":"@balena/jellyfish-test-harness","version":"1.1.76-renovate-non-major-06fa859064a4c7b043edbd13ca4e32c64df789dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.76-renovate-non-major-06fa859064a4c7b043edbd13ca4e32c64df789dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61d543f8f09b31ead6614e63c58211bf34e4974a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.76-renovate-non-major-06fa859064a4c7b043edbd13ca4e32c64df789dd.tgz","fileCount":17,"integrity":"sha512-iKVcSztMljT6ITk2I+PHd4cRwYZ/HRveWAHgMz7W/ERkqJCqi5mEv3oi09yiDh8FN5y9CmZ8Ra/n51dlVOtPww==","signatures":[{"sig":"MEUCIQCscaJsYgOai84Z2GCoKsM/MUNMAfBq29sNnGK/pjyN6gIgZECDuoQ7RnYKQF+nOONCQydNp/mUbkXnKcNtNum1i80=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45734,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ1pYCRA9TVsSAnZWagAAsoEP/0aceDTwreiQSdZ6jMH0\nBofGEeqTTVAb1kqLK/wWgLGPL031xo8df+WI0JMtfhXbUqAKKms6daXHT+j4\nVDwgV3FzWkJXbXLmgqVNSNWTsHNgceEL8l3hq9/FI6CvDKoEdtHHWcdwOpnK\nis/dpRIah+Wgd0aPCWfHMTisC3SPk37/1y7Oy8+XTAkPI4TCYR8ryM9uAt0v\n4Z/Rm3qeMb+Vrec9xPKnB/RW4ft80BfpCu6dS3phv0xe8E1W2s0AG4AlnMvl\nIz8RB8Rs7Jc62z/qvn+NTtVcb5IaqyJcYgopq7WprZtctyqm23w/YjtG8Eir\nIVIBSMZJdC8AuMiZR2JMtnyWN60JoJvnMc73k6YQceXqpKh5RY3UawQDU6j6\nogtTa1duMHtfrF2KElTsLWixv99b160v3kGZ8i9u450XnF2GurwlTCkYk1Ot\njfsUmv1dP/tQTN/DTWEwNgWAYhzTz++q6QiGKaK4+N9g/4y5zFFiCVXgmzgE\n+/HgN4KZj4PUQeBzSq50ITKkMFQcB94Pom3qyKHl02PiecnRTBWUdy8Y1oi3\ni6m6QOJx3MeQd8zFkYD/AttfVTHaLcQUG76Eht9z/AFaHORyXzevZlRbFnXy\n90d2nmRKRNFQMSgtaLgaPoUF1xkIoA802QhZ76CQkNOTHC795nJ3kscoZvQv\n9Rfo\r\n=PUS+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06fa859064a4c7b043edbd13ca4e32c64df789dd","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.32","@balena/jellyfish-sync":"^5.2.41","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.25"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.76-renovate-non-major-06fa859064a4c7b043edbd13ca4e32c64df789dd_1617386072315_0.7364039383843157","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.76":{"name":"@balena/jellyfish-test-harness","version":"1.1.76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8eda4eb5e6f1d1260978954cd30c5c37ee2ef221","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.76.tgz","fileCount":17,"integrity":"sha512-9thjkAnoe+o5Li1/vi99eacUX8ENQaF9+8XT3yZZatfxHr15IRkzMlzl8krh6jFSeH83ItnDy6upQJXcT+BCPQ==","signatures":[{"sig":"MEUCIDaAOqdnT2WbD1wwZ0xDZTeYj/q60Wt5VHQycxqHHhmSAiEAsZlKVb9pNeLQo9tKw4ynlSwguX4wGucqWgHewE958rM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45674,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ1r6CRA9TVsSAnZWagAAqdEQAIeEhCdN7I0XyCjDRfhz\nLbzcuQ9ZUDPKpNwLNV8YW0/HN7haoUICXAW5hxFYwcKqTC60epHfCFEiXfRa\nxMawhXPpDJrJktC6N3nhSCW4gW38yODjI+yLRjOg/nyJCTnXpWv78an4PPEK\nV4QxeycWYMysySt8lvBu6iWyB/eVh6gnlzkDKcvo9e+O3tag6zH6IA90xHj0\n905NfXgI6v/zIFehCopH6TGE8P+5GSnEfY/hJv4XoY1JlObWD3Fg8KxRHzvM\n9qq5F8pUerv6ICFPcn+xspeIjrj8q8gi89OK2cYsUQ2DLzcZCWfrOSwWM2Ti\n7Esqlib42nN/Y/N4TixZJsCUkKIa/GPspDl7IwZ8cnXV4hul7M3NDogttErT\n49SeRRAlb8GaKq77CKRqRLbO5uuQKxnt0UQZWP+zlyNoEjGHrk1Q9RVr71oY\nxAyn/iw/NFdfQgfkrED/jfKlLAP8Isfc+llVv8Gm1IOo1z524E4oE4nzPH5Y\nywPz2T0WRbnrtZIQAoOQWa2/eP9hFKBHTRk54L5/0YG4ljLxlQ/zZtkPEc7v\nm7cClLiDw8qPmQjXB2m7/VlUjUAv/Rt1kGjZKIy/8+Turv9tuy3RQTUeP1xm\nqwCKInBzTESwYWJRxT5cU2hf5SULBLCqgJFZmT4ccCOGJUyXAr4IDhuVpjfd\ncccM\r\n=W0eo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b404f7468a573e820a87b9d798bda8a4a8d372f5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.32","@balena/jellyfish-sync":"^5.2.41","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.496","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.25"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.76_1617386234545_0.6895265585078032","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.77-renovate-non-major-9d0de6602a7cca801fb03bd36d625b9bf8c287f2":{"name":"@balena/jellyfish-test-harness","version":"1.1.77-renovate-non-major-9d0de6602a7cca801fb03bd36d625b9bf8c287f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.77-renovate-non-major-9d0de6602a7cca801fb03bd36d625b9bf8c287f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c4646d802c97abd7e7f38e43d85e96cd6f79fdb5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.77-renovate-non-major-9d0de6602a7cca801fb03bd36d625b9bf8c287f2.tgz","fileCount":17,"integrity":"sha512-t/G2hS3fjVeE+n78LhKSIYDoV/VCplJDSGwX9kb6RCK9CCA+7nBqAr1davuj6wiwWoPAz1E7ZePMUaEUL2RtYg==","signatures":[{"sig":"MEUCIQC4dtAQl8Bzyk+gzWEIujzrny5BzgCi68J2g6yMO4GsNwIgXLFGyE6Gro9q1Iq9VkNXilTMNX2fKYqw7yODW5yMVs0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45803,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ2fdCRA9TVsSAnZWagAA+X4QAIse8/X+1Zf5j8hahx4r\nUIRBDaD4kvHl+v6xtmBk5o5BEbFUevqlHquUlkOwEpczW8S+Ed8erlEzpId4\nvo2GYBSfIXDknTiDX+YO6opCgpmd/FUv4OD6zrvBir2AQ4gQb1OMYnQ3EUwt\n3xyYDhZOURFf7IRaeKoTIZC5RrVdbU5U6E3qVklJXRUdqLnrOsbIl37Jt504\nnjZgEJ2LPZzn4g1KirMcKdQ0EF1e1dGXXRxMgS9Bwol8eqsmi8MWMWat9HZk\nSzw+ymnuwBxMg37jsOAiRBhbOMqxVBZeOGZxYDBwUILItCVbjxNW3vr2cIyS\nB06exgxIPYCd9CpSaB62/IfeBqrCZUPNaa+ASn1K/K4mFm0yHxZVjM577yjQ\nz8UY0kPSPFGa/0ujDsCzmG+lndsEkd10+RWSaKh3BAWMepC8RGco3htj+XBb\nGMo3H/HJQJ+gvrTfKMtwJdvwbq91Ja590XTXXLQusmJOveq5uKRhmoD7oSvi\nxklj7Hec93e4pqlaBuiWfhxsfJS+yQmbfC0B44MCJlVxk/VUO44x4wUEFkQu\n9G6bp02n9+1hkNWTwsL8GRzkU4Fm8mgy/kxkLzBrDHekMv+TIa+3jtASeeGN\n5TvHL3Vzr9W5/IZvggFOXI+HvJlJQa90+cz6zVYZT3HMYLS1P1DrfB2isRz5\nSIMB\r\n=QLtG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d0de6602a7cca801fb03bd36d625b9bf8c287f2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.32","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.497","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.25"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.77-renovate-non-major-9d0de6602a7cca801fb03bd36d625b9bf8c287f2_1617389533369_0.8519103746522485","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.77":{"name":"@balena/jellyfish-test-harness","version":"1.1.77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"89aefab17519741868526c2698930b1db555c15c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.77.tgz","fileCount":17,"integrity":"sha512-DTU9lUMFJlNnxEKAt2IKDvNnkwfAratj1hTeOgzDytzh0xylQ472kqb/aCifmlrMxM8qJmW7jLq1Ml7OFjLzng==","signatures":[{"sig":"MEUCIQDnedeke5otUG+xCveyM26bKcB7E16kvUhWCj/vpXAUbAIgKGuipGs1pniZoJRBNXmNdkAhYFCwzOgTgFG9V+dkQjA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ2i3CRA9TVsSAnZWagAAsl4P/iyimabYWs02ZyqoOqYV\n/XV96/rFSCiDxDMrtzO2jcDX/MRE+dK1dnJVcp0M+BFifLqAetCS6ndAvds5\nmIT0YugjwhYOzg1iu3IT9cgfBUBrhy8tjGEr+6YXGtaVwEhqV9DJh8c/8aNL\nVbATqEVoEJtsVNW0lfrR/t4ySUhnB3Ar1fUtP3z811sc1m/a6I6w0DaFc9z0\neU/+8VyrkffkeqPKyvbRp7GzpuouVZSaur9yUaGuJ0WwDmNwTWOU8r9xqpLg\nu0ysp8yO51rFqhe0nNNGNo32ia+Lr2EYTpOgbKF5O3EgJOgzdC8N04lagB5P\n9SrBYGvZy/1jAdKlHxsv43fPGxf6hPZ0b+94PW00Mvsio9VbH6To2WGoPv/J\nv7DXmqaOFAasVGtlL/zPvQRCOgo1uZ7O5e4LYHL+25+i2OeGLD/FGbBmS2W4\n1GILK5rbtZ7nxlPSmjRsnZqByBPNahyguFTc/PtyupfyzHuqPlK1z8pxfbPU\n9GRCsxFfvv2eUr3ScZkM/5HlET6cge9LvIJ2iI9lXxYlsd5IHYiJFoObothq\nI3inz9dofaeZq89h/t2EAh50bEGHVaORu8PIbEGX9Zu2dAFqQFiSZHE1Ry8q\nk4kf5GfbNyDYzrlZscaTYDmI2LDnHzWjEwB6znc8cB8WlvYrirnjjNvpn/kJ\nEDHu\r\n=eGxB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2af6c1dbd93179d1ca563b204bd79d9115f8d64c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.32","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.497","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.25"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.77_1617389751547_0.5942548490570561","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.78-renovate-non-major-2b4dc31d64e36826545460c432e6a18da865805f":{"name":"@balena/jellyfish-test-harness","version":"1.1.78-renovate-non-major-2b4dc31d64e36826545460c432e6a18da865805f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.78-renovate-non-major-2b4dc31d64e36826545460c432e6a18da865805f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f7e8c9ac8fcf1c96e14c8ce4ba36bdbdcd49bc9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.78-renovate-non-major-2b4dc31d64e36826545460c432e6a18da865805f.tgz","fileCount":17,"integrity":"sha512-yzjpsg4JTWXFgMteVB5RjVVr9E+FfSU2eC46p6BnVDNROidxonM1U7Bkg8aomae8/ng7JyTG15qOdo/Z9329NQ==","signatures":[{"sig":"MEUCIQC0EDLly2qfw7V9wgYsSlX1Otx/4JCTbkJtRa178ysHpgIgK5wTauC0t34WfOp0iwvc0YQoeYpP3KtaqjCjJOfOX7E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45872,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ3TyCRA9TVsSAnZWagAAcOIP/3ga3Etn7cCqwejdaWHA\n4NtnH6EPtibuKDhiqL0GhXacF6cEHZlV1652gLbHfE/1kU6OsFVoY0/C29Rd\nyjBFJ/cbdtZ/bX0smBdpqyeJXAJ0K99CK6Pqzh5+9tRwb2KATGQLe0b34hzi\nxTE3AzOXMsOCEZtxdCSD7nCGffU69dYXYabvx67oJyLyIP6Z1hOneazLdrUu\na02iiFXpvO1j6DVPzzQ7FDqZkNYmFMDxalo2fgZlwc+L1hrMo4ZOrcsCkMlw\nrqu8XAOp9W281mavKQbIIxBgcgeKQskwi3jHo5ORShgajzTNj+wGABmYLqBX\ncwQCzlAe/xB/glIaPc4LvZGzolKqj76PJCkhmCnrXFmQ0mNpehcJEFcjvuKK\n391MGOUtK9q1f/zUydCcgZ2DZeH1d+vF4A8KoA/vlvfkIrBXw/3BwZZD4JuN\nKKZPqVFFw1WwXiywBin80O5q69DQL8KZagW76P8cO0TSVy8SdoltukqQpzjZ\nbXsig1odxy938URD/6J9/o4KKDOeFZVJn1O5lW5yrhRbwhDEuBoHodYKi/gH\nqFbEO97UswRgyoX/oXfuTrj9WdskNeTMfAHSNCAfIWrWPmHs1G4gqiS69Ppe\nHNXlSyUSIA5JLjZQrWvJJtvhrj56geJZtAptsNIphTzgHVQlmJrMOiVLZ/9u\nStGQ\r\n=NgqO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2b4dc31d64e36826545460c432e6a18da865805f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.32","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.26"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.78-renovate-non-major-2b4dc31d64e36826545460c432e6a18da865805f_1617392881930_0.580228731440227","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.78":{"name":"@balena/jellyfish-test-harness","version":"1.1.78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61be25cab0a4224f69f15fbbaa95051921600b01","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.78.tgz","fileCount":17,"integrity":"sha512-qs3z7O5kvEqFElRxNll1ej1nGnsXV7ZS8fpSnf4efNLp916RXmbsdWzxaVrSWg42PSP2VgJ13yJnb3wAZnKrig==","signatures":[{"sig":"MEUCIFIfZNwK6VfQUV27KMB1VLw029fii7CatxGX3VtPUQr/AiEAzjxtvi5wOLFOFjYY7UKGt6t26mwLJvqQiPlwJtGRXLU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ3WjCRA9TVsSAnZWagAAFRIP/1iPLEuUALAA6bNX4Mjm\n8S/ibFVaUBFQcpjx8FcOhHmRfWLjxcTRHEmI0xgAx7dVROsl4JFdxDHcG8zA\nzar6ndXJCIRrX6dCh40dLZsc7hTr3sHC5bbKdgKYOLKMBxwZxx7BhtgbMm7w\nu6/GdRm2s+EsdXFRjGOe2IL06UJriYKzEQFJWlrYzoTyP+1F5zh/uXyT64N9\nPrCAxxdFK++7sOlJ4IAovK6+Y4wk9LBLnErz3D5rmeRCnyzf4ieh2QNSEQsB\nboMGiiCBUXnwuqgMgxlY9Fn7W7tpGl+FY8v4L8j9wtU+rlrhkWCiUJXWkiUw\nH2Ejl/QLU25A4uAYGTMCpLZzw59trVsICRNCJBJtT7O8355pfsyhfZNKAGTD\nFoSiUim1oWVgNUBqVSh8CAK72D95lr+P32f2Yany/Z6zzhaln4pdSnBzvPfT\nRbXHeCqC+fax8WeVEZd7efg/DLcCuOkUcmvYXzyrnQY1I4lbGmQ9G7jtCM5P\nMT8y7oTlx3DOQMyDDqB+eh2d7lshSjqhL7jIS7+DPF6zm4QDZhh02SKvlUK9\nOQEoB0CBh/TJ3y5tErjjJdQnrBafoOiBNJHNFXJd7dLkas4hi9KmT07+Sm9e\nMWrO8oNtcuFMB1iImyigly7zVpMnIjW5dCmJygROBUIyaflQZlNSGicA1YHC\nEvn9\r\n=C1xg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47196a8ee8675ab00575082599a3b873938c1f9b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.32","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.26"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.78_1617393058515_0.5841374295283224","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.79-renovate-non-major-580fde790b72276c90a16856cade82c455198c80":{"name":"@balena/jellyfish-test-harness","version":"1.1.79-renovate-non-major-580fde790b72276c90a16856cade82c455198c80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.79-renovate-non-major-580fde790b72276c90a16856cade82c455198c80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"75c8686b476f6713a7a373e2627f3755d79870a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.79-renovate-non-major-580fde790b72276c90a16856cade82c455198c80.tgz","fileCount":17,"integrity":"sha512-4cbc0tr9wA+nkV3SfmYx0H2UJ+0QToUST1WHZDys2Q1szdvmyWgqDXR+ZMQof8XyhvX6MqTYRaPGdKaQzgEKVA==","signatures":[{"sig":"MEUCIQCp0lgopGGgcAuoQJQ0BM5LGAYjDIADjpgbrb3zNUI60wIgHDvePJvwa8AJXtO1kB2j9d5El4c8IHwKJixA3pjswzA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45977,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ3afCRA9TVsSAnZWagAA3hkQAJUOOJhTAgOybY0odG+A\n7AJwVEcp6qlcx6okuFTHjKFoRWhg56oRm+nlV72YJW8Fi972tg39Rehd/NqC\n4EZde8Pf+ikgBhS1Wp5D94CeXh2i+91OWAqcrXc28ApfSc+/GN8QzV+n8r8H\nFFOolrH7j0hj5I5r84Of9gljITzwpGqDgG1A6sj/YmxGpWSw/eKq4D8qtNpZ\nkS3Zs0BIn2DO2d6fT1fed0XfZ0S+y6HkIP5eGykVMo56ygYEbi3pTv0+6sSV\ni16/wUJQPnl6sXbwshXt8h0zusW/9LZrTZNi9ky1lGqKq+vnrPWanCFugJW4\njK83IQS4q/0UEWcqTYojfYm/2JJ/mrH/cVvF8NhUzCUkY7E/txoP9ztTpDPE\n9z+Wa4afSeUXWYonKrYs0qI0qA+5LnVicDOkUuUpnf42IRg/NKu6+YhmMMYm\njvjDUBUp0+iKng5DNMJKzQCJGACCICyh8n/tuj68+PO/HGlA6DnxMI5G8Yyw\nI/BE/GsN+mI5LPywHQrSdPhbhVQkJm3IdjuoFo4R1wmcNyp8dUHJYFpyCFZI\nym27U/vFsAJIrGoKJ3j3VfSo7UF1lCwVm3a2l0L976neNyxiOoBLrkNIkv/n\nLfVN+9oggim42C1CDwebRIqNdSvXBh4xXyLKqxHPZoX3cfuPg05OqnHbn7K1\ntSyv\r\n=LjfJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"580fde790b72276c90a16856cade82c455198c80","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.33","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.26"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.0","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.79-renovate-non-major-580fde790b72276c90a16856cade82c455198c80_1617393310756_0.18021817459513612","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.79-renovate-non-major-a20b50e54e3dafce711a92b6ce0ad98bcea94d70":{"name":"@balena/jellyfish-test-harness","version":"1.1.79-renovate-non-major-a20b50e54e3dafce711a92b6ce0ad98bcea94d70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.79-renovate-non-major-a20b50e54e3dafce711a92b6ce0ad98bcea94d70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93865584f062557acbdfb612891f9fe7acdc4863","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.79-renovate-non-major-a20b50e54e3dafce711a92b6ce0ad98bcea94d70.tgz","fileCount":17,"integrity":"sha512-zMMVQ8jLOQpPL8dXdFCZ3gH1rqALndWC36f+cRn6KIsHpTrfL2nK+NE/UWDYptINRUhuY/pEkfD9HOw0y8EODw==","signatures":[{"sig":"MEYCIQCpizdcZz9iKzgU9uzdMtnGJMlh8Km6K2pXpbcrXr9WbAIhAL8TFWkiZYCwVDupQc1Whn0BSFDKZXCuD1vhE8vATHSa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ3hACRA9TVsSAnZWagAAmPcP/RDjHfgw1fzHHysT5fkd\nfO1U0QInHpSo5CvbbnSQ3SXYd4sOOT3lT3PNy7di/W9T/g13EOEqmig0M5rG\nAbP0wTLlZZI24dentu8KgCYsC2UXvP7Md+ZqewYAOqhmibcK1MxBSFtpp0yl\n6iZlSnr34Q8jjie6D3COH8lei/roU4in5MCKRZdbxPAv5qVPyDoCN4lXQUt5\nvLhbE7sXFepS4ZwNeaUw4MBCG0lWOfgMdRJwZQ9dXKGxijpZV/hfJ85ytwIL\nAH07YinlsvHXLMOO2viOOnO+hKY7juExRMlhAYctLQkorvpLmRm0vzAqlaes\nfcjlHW30bx46aUzbyA90zMegm2Ph8u5cn6Q8IxaDnnN5bLkD5dDRur/Jd+Ni\nTEfvWcverYYKDBN82VFmbV90xcUCaVlG0BzBBQ9+oqgySOqJ7vf2iPXrVW+m\ndcsRx1F6LMuHUv+La+xF5VrEUrKZgn/YJkEETSr9wVD3VMnDq9+JTVFqtUHa\nrVs/r84spPI1w4jv8INYEfeq57+7hVDbbKrSVPxWIKAnv9LVe68uKXh2NtVs\nVtwvO9pcPgts96+tWsblABqZF6/f6tWnACwrLnjJqyKkY9ltjdrZjw5TfXal\ntIJGiNoDHK8Hz7R2Ep99vaU422FOUEpZb3/Gm7xzJhKhQ9xZq4KwD3nXJI47\nd7YV\r\n=bgyn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a20b50e54e3dafce711a92b6ce0ad98bcea94d70","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.33","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.26"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.79-renovate-non-major-a20b50e54e3dafce711a92b6ce0ad98bcea94d70_1617393728077_0.3638370207530697","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.79":{"name":"@balena/jellyfish-test-harness","version":"1.1.79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.79","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8c24b8dcd69483e2e4d82d023db04db1bcf3172","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.79.tgz","fileCount":17,"integrity":"sha512-KXDwrC4YddRygJncc5icYUhPE/QDj/RLku70IFdM+MNO87UmS/VelVKdMwXxaNoU0wfDjAixfV9s5EaJIrwaJw==","signatures":[{"sig":"MEQCICY48gtFS4eb/fN0U2HNMINyxNFPn2BmHbmnR36eRg82AiAHyAEE9vrk6NbolruPt0hLAPmpId/9dBuO3NZR+EAg+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ3j/CRA9TVsSAnZWagAAJcoP/RLXxKL2WFbLrJeODi0l\n9iIU8qChRQmnQdc5rLe1otr9dzRjxcUcaInY0s8DalxQboqvAKBAZnx7PCrU\no6NyUEIzYxjzohuN7wAno8pfH6i++PvTovdoPPHkgKb/wXb4TOiqMlrk+o3p\n0Ejk3LNdIJPebCTxHk/zL79yo1FOZVr2FB1CepSz2PRsARX++I25jxjo3a+J\niz8sWvU+CucRN3wY95aoeyObu3Z9aAK/lQqsA8Ir+wt11GjXBa4/Go3goDNC\n33EoBNMNRtsXQ+AkFD/OioPc/GKepoZ9+3bMOjs4mu2heQHxjKd1WxdCFotd\nj24bPY0jJvTcvQ0EqghPs0D1oscBALpz1bpiaE1vn6VaaPI3zbG46hiL/AUs\nK8+zfqqglfifFvhpZIDQQML50+Q/yvJdaEeSKCKfkxcoWmeespp36zRJb21s\nrz7V72O+5Ayf+3E8UyYFU9gVVWsDI8qfyMTWfdCj0HmBrlpuYpTekdPfLvyg\nTvYKGtZBoaxsFTPA+eYBQaR7H6QTVaAGA/Vna0dh/s0eaL3IxODY4jwQj5Io\noXzjoMETf3Dz02bp3YUWgexmubMtjqDWfUyNtP2N/vS8/f40mqKPXNz6+d99\n8sA9rUDQQqfc60JNHhf6epDfbF379guOnstpVeI32suVzlE25eGJD2Eu0gOt\n3kNd\r\n=j+I6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"83a4b3b6fac137ff51002bdf6fcf207a7458fc28","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.33","@balena/jellyfish-sync":"^5.2.42","@balena/jellyfish-uuid":"^1.0.81","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.6","@balena/jellyfish-plugin-base":"^2.0.26"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.79_1617393919013_0.23371680603502387","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.80-renovate-non-major-99de60af1fec9de85d3ce365991a2a0eeedef14b":{"name":"@balena/jellyfish-test-harness","version":"1.1.80-renovate-non-major-99de60af1fec9de85d3ce365991a2a0eeedef14b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.80-renovate-non-major-99de60af1fec9de85d3ce365991a2a0eeedef14b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5b1f0e556563d32a3842a4b13ddfe6c0739f5b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.80-renovate-non-major-99de60af1fec9de85d3ce365991a2a0eeedef14b.tgz","fileCount":17,"integrity":"sha512-IjhginjoS1tx03b8eOuol+13w2ZIVh6CEv1yLgNvd8zxIlR0kQ9ogmIIDHcyVq+QLo0x+Z5vw7v5ROxYXakCiQ==","signatures":[{"sig":"MEUCIQC6LSYP+LqQwe58z1wR1sE4RXXOxkYr5SrDLMuN/E7WHQIgDMfOvwJVDoBW3ME+saTCQxs08xMmVjiAf2EVJJLL9o4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ48JCRA9TVsSAnZWagAAzdQP/03UfgO+0Jj3/7PzUH5B\n4QRDH3pIX0KYCw19ZOC5UbOA7KBuQApdoNWwlJ4eDS15ADEn1ejU7H545XtC\nBeGEFKzi7oO6CkNzk3UnI6ZyfQ6eXoMU4YMLJv6ACTe71YzomjjQn2+MftdG\n3zjA53R0AuJwmy9tRoeAVxRlM445k3AgT5c4XVR9JSOnh/zeukzKQMcOfy7w\nhnUDlIw+2Lx0ZhTldaLNPL8DxR1P4DnwP80fViu8kw5F5bOMyvLB47ZD0zop\nedxFFowhdMRGYCFH64EvvZn7dZVdkFva7p1VEwySkzIypIceDlWZi2GubYTJ\nd0S/9MqambtdjK9atwo2O8sFlhWIn5BTv/hKPbYrh3OKYxbLIDBnQlY1KNiR\ncCJpskf5Mmv+YgTwLUuVVuzdTXGn3W7cOaSfR1kUAaQkpxprbc94dk9jp4Gp\n7ifRFaeBNE9h7ZNbQlBkVuc9LBVYI7tQLbVKKwXTcte2fb3L+nOgX9ljBkAv\nlb8Cm4x1yk3E+50EEJf/ZLiBRtEcjN9DoncHOAsyGV5xWLuF+56f8hQD5af7\nXlq75h4ZGhx9NnlGZAmboP0/IriIOzIXnBNiIQ11H6/0qiawDcQUfLYpi5Te\nCwljE1ZwrlwWXq/C1DCVdjrxuOawSt4GN/pSM5/Qozpja2xp/cqmtVnig2gd\nNNjl\r\n=2jGa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"99de60af1fec9de85d3ce365991a2a0eeedef14b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.33","@balena/jellyfish-sync":"^5.2.43","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.80-renovate-non-major-99de60af1fec9de85d3ce365991a2a0eeedef14b_1617399560826_0.29823885612260703","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.80":{"name":"@balena/jellyfish-test-harness","version":"1.1.80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"51ff3eadb231c441ea099cd9a9286dc39e9d4d5f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.80.tgz","fileCount":17,"integrity":"sha512-9dm9UZN/GurUdreY2durFyDnXc2PuvpJ+pvSqXP381J8qPpKYHKrUE42h2SmYFIXgt6R68rp0VAKmYiwXlRb8g==","signatures":[{"sig":"MEQCIDYIS74m7+AFQXyaYTd7pqN1qK2v+cgygCGeU/Vf0CHAAiACsGb3WkHPLupgpyakbeV1UiWHSuEYRWFECoi3XKK/3w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":45950,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ4+1CRA9TVsSAnZWagAAvpYP/2kREwc8oLBJb69jiuDH\nHLZGFtHskG/tmulWD0OzhxOuOkN5w9x6hL+0JgQbLoL94JoN94X0mEUbDFdX\n/lyQzN3+ksJwW1yxhQCNIV765ohH9EfrH1fjSpO1IFNeunpmJNEC8iQjUHLr\npsiAU3nnesvqy5Zk+ufqyvpL0qtp1STg/9B/eSbzjURKZQm8rm6QxkIr2rew\n2FUcQ7O/xNnGscbCSLr+e91JZwNQNmlAasa73SqOCL1rKZynSzs/jeWdYQ0D\n7OTI1UouZ8Pz1Mk1MTU8NeBi2Tm74zq9TrwfDalXeHz0c/RVfDDdKyZErSKV\nNh9xcnowGPOapGEbsxv4HZFjsjLAL2IqT0Zh/akPa4h0CWw25Ui3BlRpvmLj\nU7nMTvJ7m1I9AjwSNsX5KKj14/077Bmjc9lkllBoqn0W6ShskmH4IjwXv6lA\ngWLCBzgV6jsLrlW2IovWDuh45qpeXHQC4tMfJC2Y7UgtS/TsBQBezpO7F2ND\nBm2xuUlT4vuvxa+FZEfBQCyqRRN65HRkpaTe/emgT2Njh15WmxKJ2c+RGMgV\nz5AAG9X4jhqQuNGGrhjdMHvTUJ3Gko5/O6+U6mvylKNW5qADoM+EVrXhWYpi\ntgfQdCqgYC6IT27ebKI5x54GsY8TeGap+AvDleq6Mpf5jsPfVRBXoHm9z7PC\nxO9x\r\n=9DcN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0718f651d7a2271c89ddb98ab0bc7d908a26bc60","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.33","@balena/jellyfish-sync":"^5.2.43","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.45","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.27"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.80_1617399733159_0.30793341317934675","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.81-renovate-non-major-b214218402b83078d291bf7aa4c913d87e0170f0":{"name":"@balena/jellyfish-test-harness","version":"1.1.81-renovate-non-major-b214218402b83078d291bf7aa4c913d87e0170f0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.81-renovate-non-major-b214218402b83078d291bf7aa4c913d87e0170f0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8dc2a16232257ee033c1bd368e38538a1af64b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.81-renovate-non-major-b214218402b83078d291bf7aa4c913d87e0170f0.tgz","fileCount":17,"integrity":"sha512-uQfgT4gsmddIHQ8+kJFtm6H2Q+FiKaVttDPk9fi/PIorZryEx/MgOVBDvvtqPChxCsQUjHYEsRpAC9uj2kTZ4w==","signatures":[{"sig":"MEQCIF/wDZJChZ5MZ71k0pPMqcGAMfqx5VDX0kTrrRU4FvV7AiAaThxCSU2V1yQNve1wsVyol5nSnd4bUOyMBAk63nxliQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46079,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ6EqCRA9TVsSAnZWagAADvcP/iQ5V5SHz/MgjyOmAb72\nvw5QkJlY3j7/aVrdMfYCrJ4NIEmwMKUbxdwVryWVhR5U/QhCurFjKfHsAg6n\ng7J077CS1zOHC5U2ddzlBsteciEWlr1VnRHcN2Y2k8JEMCp1GFIJa4tZRC0S\nH+heUoV6h7rGGAZR/jDZdB9bg67kdNUKkQE6xltjAGyqEA/UIYzM3Z/NOOlX\nZr/5p4MBCxqnORhFiJiH3n0MK6xUFpkU8YaofoUr9oRgHS5FzAgJj3xEZbFp\nZzsOVh7/HdLBFb84y78ylvoWdGdFYkLlqUwU9DQS8zDvyhrTqEVSil4kaEdB\nNWa0HrjpOmNIMrJOym0+0C2TbLXuPPYVurOkrJFx/Oige7CMBKVUtng7EI8O\nj/+HTzdUpBM2jCWzmb7pEpS2EV/mk839H5hSwQ6R5yoptePgjpsgh7NUvObB\niyLxbdJG4LWSSZeFReFIouNuTCdHHcMJW1bWUuLtpjtnh/ZTbU627YWKqkYR\newS6M6rN9Rtw6v04DEzNbry6RSuAbGnbBr6RPRXMG+cZWs2eBSmPxXZH67aJ\nHsKhNBxyffc3B9/nyCjuN33JY+Yx2t44MypZMNKvcMsMGv+po33ptd5hi9/4\nto5gc2EbsumPZVbBqo/l1krSjazgNbWltksuYyG9wFtwNwJQ4azBZ+KgyHyS\nPk9J\r\n=+oYl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b214218402b83078d291bf7aa4c913d87e0170f0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.33","@balena/jellyfish-sync":"^5.2.44","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.81-renovate-non-major-b214218402b83078d291bf7aa4c913d87e0170f0_1617404201654_0.2771003699198349","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.81-renovate-non-major-5869b947d5a89130842f03cca4d778b2731fe088":{"name":"@balena/jellyfish-test-harness","version":"1.1.81-renovate-non-major-5869b947d5a89130842f03cca4d778b2731fe088","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.81-renovate-non-major-5869b947d5a89130842f03cca4d778b2731fe088","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe56a9dc1441045127ff473e62865335c4c39c7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.81-renovate-non-major-5869b947d5a89130842f03cca4d778b2731fe088.tgz","fileCount":17,"integrity":"sha512-VU4XtPX4Y+YdBX9XLQia4GoHq23a0ui1nsOAc8gvxY2T2tWXXiAafO7GY6KN6CoRbSZxXABtpyQ+MCc0AgQBlQ==","signatures":[{"sig":"MEQCIG8sbcvlVkAW1+rwG/SWGV8qO02n64OwYQg1Io4NgBXnAiBU+f+/SfNER77R10CtgsxZaKew3wGwaraAgke7ZAHV+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46079,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ6ISCRA9TVsSAnZWagAAo+4P/iPmq6h7iDFh43u8HRst\n0VlXDu7sqCMk2YDK9OMJG2t53nsfucHw8pSoCUe6BRIQn5JAy4DOXHuLT6f3\nhyycQ9lYDgf/acD0GsgidzdYYUuH5QDdZI0BSRC037/Aun/BcC1R3rg08fO5\nRcbUnG7Sa/Pc/kwu8laDanYB1NFkV6WXW7671fyw0ACbowY2UDgqn0K1s8Wg\nOcs2QnLKPZQCRSqSoRtKH5m5fIC4u8Q4caCCBoRDfGzGJZv4J+qn+9sWNeZ/\npmmQMH/3KJfIZQMWnUw0DSjxZJXTA3WU5fY1RjqrAoT9anNiBx2Y797Czhz3\nB4WwXquIzHupKOxhhzw0H8gMyTvBSKiWKYKS8WXJwcuWyPLbO4Uzd5huxp7T\naOcgz9nRprWFMHNAREE4TfDPZqif9vfaQ1beSrs6TSZYgXE1i7hJp5a9+0H3\nrbcoxdRSmQWPLjtCkVBykpah1gMaS6BDfFh2k/PeO84Xtx6qbXJruZYl7w0z\nVsXoRjWJhF1BJ0y6YoAY655zRdepfe6bhZ+uPD7+t3izL+2yY0ep3fRz+eD8\n+IsSepP+TU+0IJadRSuXwZOxXzb2CO/64UXs3lq8F0DDF0gpwAkvAK8zeBEr\nzTW/0Uml+WDZ/MRwnaq3orWqSBVkiaI8zQJPcogEnwO+SaxodjEbYnCEvbkE\ndhMr\r\n=1JMX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5869b947d5a89130842f03cca4d778b2731fe088","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.44","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.81-renovate-non-major-5869b947d5a89130842f03cca4d778b2731fe088_1617404434026_0.3425124991117643","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.81":{"name":"@balena/jellyfish-test-harness","version":"1.1.81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.81","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a8fdcdf402dab4575a76ce026ef36e1cd59c4120","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.81.tgz","fileCount":17,"integrity":"sha512-Qb/CMdp/XrI1/gcznv0eKr1AJTDQtbjU2VFNAevm5mKQrn+XmKU+6tLTbRrI0krkrokFUwP8D/z9mImuJI0FPA==","signatures":[{"sig":"MEYCIQCqYEHYG6X2qR7KZea7qecUWTzy4Ks9IS00vaGchAXzxgIhAMbTPAVNyVMGngE5q5dlppCgIsdJh5eYxSxbBKX5N83Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46019,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ6K6CRA9TVsSAnZWagAAjTcP/jnAnjb873H0rEDoN8HA\n0PrKbyVW8p9SPygYvWlwSKpmQ2rOvgBoHqWaDQ0CF1svctuzv17A6v3aPFl9\nL4K1c10mDv6Lwm1otWZrZZcBI7EvsGSoV9iUzfsS8xbx+JmI35GXtRQxr9V4\nXMNHq1EMLXn9D3bYVCcShKgr60dPoDyKD9dK3DFG3SrO6Sm2x2idHe3381mz\nKpZAZKPPpwtmcyBholfTn35PfATmFRHF4s9PeAHFShk3lj97ag04UBNidNJw\nFBSIKOM2wD/iCuntVqpg8TdeAAQJV/6lePSrFJt2NpxmpgiXcMNTzdovWL5T\nEM86fSo7Uz1mVgGTV2U4SllSmllsTs+tP/Vmois2vniji6zZKC9t1TQYBJVg\n/or1e7hwouJaE9XuNyjcB9qv/LPdyMS3fM3Ygjkb7GCwkgc+dib5oKoNk0au\nBZYlCh/8Ty9NUR7AGu4qaJPwOkO/l9ioy4OIsP9L3fXM1zOKePVPzPU3YJ4g\nlPYiM+EEo79MIDjTsJda/Tp6eZwtAdy0Dj/YESqJQHXG2NVo7EDlRmhfv3Nh\nnTEyM6xJstWFnbvIswGYFgY6J3iCatB4zkSy8jfo9FI+KFoS+CkbHnlZ18nx\npJsFz70/Fdn7AiWwkP9ZHYufV/1Okz/5G+2PILWu3cFLNUmW48atLA/hymYD\nGDT2\r\n=k/DW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2ad9b5871ec45dddba9ba3f5057f13a4a3d1d1fa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.44","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.27"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.81_1617404602466_0.28209591406152623","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.82-renovate-non-major-28534df28d942e3d3497125ad85f224f37da1c5b":{"name":"@balena/jellyfish-test-harness","version":"1.1.82-renovate-non-major-28534df28d942e3d3497125ad85f224f37da1c5b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.82-renovate-non-major-28534df28d942e3d3497125ad85f224f37da1c5b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2bd0a94bb9970d89cd9a3c9afdeb1fbf96fdcb2a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.82-renovate-non-major-28534df28d942e3d3497125ad85f224f37da1c5b.tgz","fileCount":17,"integrity":"sha512-QMTMnbWwP3Jy0z/ACODdhPMPo2FRYD7cgcDizcuRB3RQbf1C6nIbXnJ7Vd76tw97jAcenNHnP5PbcwOBy86HUA==","signatures":[{"sig":"MEUCIQCDlQ7lQzNHP9qfak3Gmy9s3L5CWM3X2+bmWw/5PSD94gIgRYbQWVozdA6MEIS0a10ES2MGpNoHb/rVHSyjffedplA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ6waCRA9TVsSAnZWagAAaToP/R8YvPMjzuSzws54SxQB\nnArxOcHNVUgYDOc1q1Vi2+0COpOiuOHbKclrRJ23TrcVXgFumySYR994OrAa\nEnftpOZd9Bq5txiGxHAsRpu8jlagqqBtozh5ncbtAieBt0zWoISbPsu9SJo1\nge2kaWHIVrIVJjJwBNaZwHiQYV8iNKCkIfyHRtgPpVdyKf/fCRYFnsLrDoZG\nz53f5E6am+qqeShIWeGaZWVkRMDvk92ozbL0hfJb9qDWoaGkY4V+p90mhjXX\nJZENyB7+fBC9SPHVkDw1t2dxtfkw1gRXSOBY6rgE6aIooHdmHqoc1DCz3tlh\ngSHump5jjfWsKoMTlX5KfwQXXWuWnkNyDojhn59SNX2sU2FufitCJh2VLfDr\nB3KOIsOnXoLiN3hMyxr6Oopu4DModfEABAQsdL5Gid3tdOdSTiXP2VQowWPz\n2aADbfp/xO5LeUVBeCCiFRg+ucSKPIcwUkSliwFELvpSiaLtPfy8kNAiP6xI\nz3PgJG8bPzyHVVJyMdHgVNsyRYMzVVUPx2O3ym9lh9JC1kmDbsvGJMlixHj1\nM/B5hg8ftrqvhkEa/LVnn3QU3DVpz+/gKUnz2yeAKASen6lvuy4q8OEP0RVM\nSK52c3VnGKg1UHLAf23dVJpLfZRWkyAT1W0m7NokxGnYeRY1CeHD5Db9UjI4\n9LEO\r\n=koWd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"28534df28d942e3d3497125ad85f224f37da1c5b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.45","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.28"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.82-renovate-non-major-28534df28d942e3d3497125ad85f224f37da1c5b_1617407002113_0.3733832569907374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.82":{"name":"@balena/jellyfish-test-harness","version":"1.1.82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3920595d6e22422da2c53995709942ff90525d0b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.82.tgz","fileCount":17,"integrity":"sha512-apNz3FreRVMr7J8LaJvWxluAShfMNZNxr1VHkj+ts/IioYqtQ4M+eCxEpNMEyrn4L5pGy3qyqUhztoKCBNkxXA==","signatures":[{"sig":"MEUCICeveNIQ2H7NplxIgzhPs7egy83ExLHbeNPT/HjGElO0AiEA0KS0KCyHZ0OWF+Vaxaq7kS6jRPOshMfF83c6k8Od64Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46088,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ6y6CRA9TVsSAnZWagAAUwkP/0pwwsv6ZgjIqBFdMO8v\ny04DCRnXjN05rL2bZ/gX85GRDlxB/+iBe6VIwZneMXVXkrenxPNbyaMIFqzo\nSLuQ7zyFiEOpjfPKzKZKHMpExoMmpHKpxEXYndB+JqHPUoS3RmWfLP8hNd12\nC8hHwqoMnGapCMOZyRTaGRE1NBpOiaxbZlYp8NYSf8hd6SgaHHvRajrasY8g\ntCTrsp1Ij4gRtj41bFTHXQsEdK/reF4lR131y4k18ZXm2Dm8TQyczWGHHi6G\ntc2ugaFkoGXMFRmmEtYmSnku5yTOPdg8JfnED0Ny8pP5+FJXG0MWcgiM3fy4\nFgMkUfsxmd/PXte7Ea476C1KKBfTdmcr0v1HF3oq5DCD8SWRWK6XSmkGW2fc\n08MPvZx2sROqtiYeUksVLogXDDvWeHLQVQ957NRDwXdpJ+cwla7L6Hx0qunl\nfhDoT6CDhmnvbed/CMfXphp9lXvO+qMz159Fl/1XrQAQ9W+X0dzEfGDcIKI/\nUSTVyh4oCSoXgH8kRUYyJPFKF1+Ad3OUCOBixfD5R68Gd5c88wxgaYfUtfLM\n11XpUg24o3nSRkQ1NX3Ubs7ztzQBXujIw6eHxCNEKcPmHyhodZg75QGzlEWs\nCozwNlG8d9DiP2wZzrEyPQ+yFBi2rOjc0pTC0RYVo1yeVHe5NoaKN6jRm86v\nUDlL\r\n=5MMA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb326d1ff09ff9f67f68e7831fe15f67917f18e2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.45","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.498","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.28"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.82_1617407162329_0.23892278609055473","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.83-renovate-non-major-8086d3630d5a5036289a25ca6c35c13e43219109":{"name":"@balena/jellyfish-test-harness","version":"1.1.83-renovate-non-major-8086d3630d5a5036289a25ca6c35c13e43219109","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.83-renovate-non-major-8086d3630d5a5036289a25ca6c35c13e43219109","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d4c5d64f93378471629b73ba5743f68dbb41399","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.83-renovate-non-major-8086d3630d5a5036289a25ca6c35c13e43219109.tgz","fileCount":17,"integrity":"sha512-xudDENpIxTIKmbjtT3n6oXBbOFQEk3/TMRiQbGljbk5qA8JTT4SbXylJmsSXpyjxhQit6xhYDVDJ+IE2i2Samw==","signatures":[{"sig":"MEYCIQDpJbor/4YzMQPEFVyudufWaRgoULPnB3kWa0tIIs61RwIhAJnWq4ZzatEHKZpeuZdwJgjzK7WH0wseR41a4/Wrdj7J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ8JNCRA9TVsSAnZWagAAmhAP/jfIADYnjjAZMkbQqic7\n3hyThA+n9Pee3fn2SAYecxinNP5jL6jF7uTeM1vaugBcuVP6TB6c1G4IlYTH\nMEZuAmKXgsWTrObGmcil/Qcjq0d6y6klvw1seQUPhWv8bH1f3eBzzvhzcJs+\nWu7e6vn5LEiL4x+s/EqQj1U/LtcxrXlmvG0unu4209a+A5Pe+5pgOEIx5yFN\nYsDqKBkQJD9VNfXazFvT/sRMFZi3PTB1OhLU8jKQYMtuCPlefMa5Zr49nMzV\n2S9//FKqSutCwjJU8hRD7l/H+0OHCcOGMzdLNM4OAxyokGLHKdiPeXY63Yx2\nlO2sNaJ+EPyfmCzbDsEYC4rPIsneFL8EgYQIldm14i1hvNe2Eav5IDx1NaJn\n1AFlftSwLeNwi8EalZzLXCJV487dqO00zJpXtK+/sK2bEb4ffE/Q6UeE9gxS\nIqoz8EKPX4qc/pOvoljk5MhIFpEBpN7vg5z7VW1bpl6iRp15xciQpr24BIZj\nyGiVAgc58+jZYA76q7qqJ4HW+a/hPGhn0mx8abpYHamrlR/T+/xpBswzOhcZ\nm2KdYND9Irdj28lYJQIaIltvR1vgbIpMezjGkVUGHGPRo5uRp2QjkV/XXazx\njuqhE56odLFGquGAUSg88U4p4gXUouQTsWrIttVI3JWhrLttVkJYF+93xZhQ\nfTzT\r\n=dq1L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8086d3630d5a5036289a25ca6c35c13e43219109","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.46","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.499","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.28"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.83-renovate-non-major-8086d3630d5a5036289a25ca6c35c13e43219109_1617412685174_0.41895618949855873","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.83-renovate-non-major-1f7b450b7665167e8927efaa511374147406cea0":{"name":"@balena/jellyfish-test-harness","version":"1.1.83-renovate-non-major-1f7b450b7665167e8927efaa511374147406cea0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.83-renovate-non-major-1f7b450b7665167e8927efaa511374147406cea0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a15a4ab5ffe382e11fe6fd567876edbad9370ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.83-renovate-non-major-1f7b450b7665167e8927efaa511374147406cea0.tgz","fileCount":17,"integrity":"sha512-n2gSuqPty7IfwFJXD2a0WJlLI2DHntXkW/4PvV1Mwi38NtB9HOln8pU4eY0QNNURNnRb5uC9yxjPyVLnzJoiqQ==","signatures":[{"sig":"MEQCIHvwjYvrWZ6IfQpxS7Kbnldg4aN3sDtbGZ2i8MjOcuDWAiAgc3WiS+52gJE3xcEyptPBav601HPrU7zulBgTJyP2Iw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ8N2CRA9TVsSAnZWagAAE4kP/1U1QiozxA0xbCToDRA2\n6pC8L7vQ0Ca0B+FAy2I0rA8NE3bKG99Kd1thYgDHofCPgq2K9o6tOT9brmQF\nnx6PoViDVwpkcM03Qb/fiGzNAgsN7YFsyKM1wBN1ppUJmEPuGJeYgj/J3wbh\nYGY0DxT5xFCq0eGvRsT+GJKTmopIfzy3veqAklyyLrbd4tyDce5i6iIrXuuH\nx3hb+JoST7PPjwj59w9zZTRgH4umDrUQ6a7N8Spqip9kXyguz+gMxHVB2YLa\n744t4FSU4Vu4KumWee3gyvWtqxdaV90RJw0GV2NKFXZqxwTp4wixIHoZhoHy\nB8jEXQ7yp0vKrBoBvs9+wgGY1IuWHpmF+vNluSs9Umok+bMMsLxPNObKpKIK\n60kL90c8veiTdM8GIDieLEE4qQu8VNx2EkXo9BpEoCV94nAdCt78+J1YHM/S\ngvZnmmHEEPkKrMHweR/xOFHIADuBjThR8pbBHgM99hJjdvGvn1tu9f1H51Hd\n4+MeGWn10XTV0XtaUj8LjevWOllpp7S4kjItl1WM9m2gx354XTMw4zgG2hni\nKekfOqx+AT7PTUCOySmRMm/5NiaRBDDoPMBMya+LRTQmXKstDhEwDmgqZZUm\naQzzzdfYjYJ7osJybgHM+pL5Z/Fb6blCsy4lRo/4vZmnPEqlubA7ISEVKFE6\nKqCE\r\n=QW/O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f7b450b7665167e8927efaa511374147406cea0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.46","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.499","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.29"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.83-renovate-non-major-1f7b450b7665167e8927efaa511374147406cea0_1617412981621_0.6440649240888869","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.83":{"name":"@balena/jellyfish-test-harness","version":"1.1.83","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.83","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"67a61130a9004a9ce92dbb1ad7dba7e7423162eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.83.tgz","fileCount":17,"integrity":"sha512-3yHMaBg/KpHvuEusocsy9MYoQZ+ux3RpwaoXcFV1BUnchjxa5R7TbBC8nLHA00k2UKMPcTV23r4+RyIohD4+Ag==","signatures":[{"sig":"MEUCIQCNZrxl6UeWjA3Kvh5SURVrWhxSk2SmXsGNxXAWdKtJyQIgFh/ku6taOOxOCY3ramH7h0EKFvS/ooA82ifRmFu6WDM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ8RcCRA9TVsSAnZWagAAPNUP/RneXtqXijyNsbRM8kNq\nTkmeQraW8tvejBtV7mTKfGerTj6QyQ07vumyn4hUAvQJ/csK/Ns77+A1oorx\nd4pQwxLqJ41d+QB8zvK1F64faYm41uZLHfqPG1lTchdkAAbyKKoIvkupBO1F\nJpTD6aEBO17yIdTASKXysR26sRbGxWecrXQfwdn8oyTFEB5GMVi6ujAHAXss\nndW29A8iXP3D58Bg8ozXXjv3j4redNDpzJKP4M1XEtVwVJyIx9fS3sgeiizh\nnC5DMPWbFmHBTE9ZF8jYhTWHVMnqPgpEw1imavjKkvKSbhui/oB2tNt5JWnV\nx0NeM04KaKhCx7qsgeTkluyEyq3pBgDFgYULtTxkDv+xHxSRcgC3BVTJjKTu\ncz/YDdoJVl7qY0NnIo+VTxhPAKXjMg9D7JuC+BJJasagoWP3+H5jXJfusVhX\nHegD1jQfk/ARiXUGpjtgYUn1zu1gWJgkFSOUhYlOhB0GWsZKZee//ZeLGel8\nqJSP8d7Zv2jv6dxlClYhJBMbqm/PNMVVUGgH2Wka+eVMPsaKYR3oGPLfWeBI\nS2pFW6/clBo+p4aR/KyuN+nN1PRxSyaoJOjwGkGoWSSlBXEC4a9BTMbpapav\nAM16RNVfjJKV2klezM2LmpYCA/zPlbCCDkJsZDqVrQrZGnDYtjJfbCG+9r/s\nM439\r\n=WL+0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"079d669647577035bd602400fe160fe1cef9f5f4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.34","@balena/jellyfish-sync":"^5.2.46","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.499","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.29"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.83_1617413212189_0.8475996187828301","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.84-renovate-non-major-55d0b0747427ca851a57911da26124327216048a":{"name":"@balena/jellyfish-test-harness","version":"1.1.84-renovate-non-major-55d0b0747427ca851a57911da26124327216048a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.84-renovate-non-major-55d0b0747427ca851a57911da26124327216048a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eb1f9d84fd7568ac623082ac32b3afd4d9c39d21","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.84-renovate-non-major-55d0b0747427ca851a57911da26124327216048a.tgz","fileCount":17,"integrity":"sha512-ZQ3LiE28VxuP6tk04kdsGW2PP0EbY9+xEqL/2xojulI4aXfLs83q7tbSoA1mcdEoeyqfPIKJ8FMunbDpWuEalA==","signatures":[{"sig":"MEQCICVz9Qzxt1JvJ3Br6aWQEGzVsxeL+l9UHCy8TjPQqtkWAiANVdE5ouNa+yJgtTGm+ebZ8meDkJWgI+76VfOt2BzhRA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46286,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ+pMCRA9TVsSAnZWagAAT2AP/jh0gKd0UpbUKmyi9Dzw\nrTpy5QDvgbovsnE3Z9sl0NZrv+LnC5vQVQjLc0Zp7UKK020JXtOvjf4ORIU7\nd3m9MYN7HJ6DofevU2OcWXTOEMss6leR86tE2xBREVIb8ivBRJrcO+TXYNGo\ntAJE2gqCO+b97hPWnjCWlHZBLDWN6XsDNKFalXmBNPs2NrFxYIL19aBjKdwM\nfm1phdDRzZpo1Bay7yWhrrIGeO4fbOP2Ic3IbSTYsdRLB/Ahftc6fxh6Pdq2\nzB/fMSuptJUOflp3h5ou1p0YoR7gk7K8lrN2q6rNZ9PttI5dPlXensXo8beI\nRdRtdXFo6jQOvDnEXS3XbZq2wUThvawKBWv8iFpzjwLytCir8sLJeg7t2SH3\nK26lX9497nS+aaesX6rO6wWmgICji9DaZmJ6Ce1kZF8epW1QFsyERuz0YcyT\nB0tKwzcSsUJTzRsryum9vuZQod9jhcrbed8Asdjjf3af0NZ+85J8/as5wthZ\nCD4Gz/CTEdEDIACPq8sHPqlFXeWJKlSbzEp6cTepaYGVnsIT8lI+qlEhFC9K\nvFlKkdYoq9EcNWtWUUDabWZUTG2OcddW4EyOfj1xepPTIpdwvgKOAuVsk94m\naGha0vn37qhGQ3lqCuLRGxA03uAJUjXVBT5uoItdNkMtnHPgwKhWexxUSNLA\nitis\r\n=YUjO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"55d0b0747427ca851a57911da26124327216048a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.500","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.29"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.84-renovate-non-major-55d0b0747427ca851a57911da26124327216048a_1617422924193_0.26152352591161043","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.84":{"name":"@balena/jellyfish-test-harness","version":"1.1.84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.84","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ee65d9e8fc47503fd84382d22ba86a3f4274bc2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.84.tgz","fileCount":17,"integrity":"sha512-fYeL9YGa0LsiycT/ByuyHBxjuE9/SGu4Q+HJM3/oE22ShmpeFg56mK4SFDaDbRhNQPTE6KtzLvMUsuX93ShHHw==","signatures":[{"sig":"MEUCIQDMzoQ/gHUsiG8WnC2FJg37RgYEievTtb4nF7nXw6g+1QIgKS0QLYVBZouVVhXAAj4c6U+QXLbt6KCU7Bn2v7UhU3Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZ+sMCRA9TVsSAnZWagAAjfQP/3BgGfRsbuAs2gBzelFA\npyjW1SsKNAvui0C3jigmBkoIrRung9Ev8ZhB84D5tgKGunjeMbyoPJJLisf3\nSiwzmwXg3RGpTtlQ+r4m2wRj3aVuGNX2rrNwWwYowwmDnbTzfDoAZVfly7/m\nsNKUxpbPrYlX0j0NhwelKbmuWC+sMRV8hwNpSsJVhQWYEo71fob1KEg0eWwp\nryP7oaH2Jhg1b1H2I0ggrMpfoJU50jaLGnzJGyTDsYBZPEHsISopre5rPCeu\nv62YZtT9aIp3ym5jOYoLsrwtm3k3PheC4Tw8v0aCskr7SPm0L1dKea5t2bEk\nhdJ8jS0jNCBpda3e3sX+4eBRMSwj4E0f/n7gkzVAQMEI8wgjl3BKVR36GTnW\nseiNaz1I+t3h3Mb5wHPXxSUzuJOjhfmFzkl/pqcuZp6xDm5VIJmgL8Zd4t3Y\n3mjgugXrF9clMEpWBjodIslrlNc2sJHQ9hKbFjoxMqXu8EZn9oWzlH/HiWBa\nM9vWMGB/hG3pzWLsNzgX/wT3FMdIWnPHyFjnKG5AmMWnbZEJ9zXuFCo26Qpu\nj84WmhHHygdfpHZ7vW4Fq8LiaZDAYNirPObZBU/xFElASuttwckG5FkIzWoX\nm7jRgmZNIefMaCASihZW1apOVimgiylaE7J5N1cofp4YjOtutMfzGE1q5wb5\nJlxG\r\n=VZs5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"24ee858745185ca19e92bbec67bdf2934578f324","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.500","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.0.7","@balena/jellyfish-plugin-base":"^2.0.29"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.84_1617423115783_0.5273323419530629","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.85-renovate-non-major-ea8b6634f19a157ba4b83005c8010557a1694cc1":{"name":"@balena/jellyfish-test-harness","version":"1.1.85-renovate-non-major-ea8b6634f19a157ba4b83005c8010557a1694cc1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.85-renovate-non-major-ea8b6634f19a157ba4b83005c8010557a1694cc1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27517de35286e30771cfae7e2aa8b84015cc2a0d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.85-renovate-non-major-ea8b6634f19a157ba4b83005c8010557a1694cc1.tgz","fileCount":17,"integrity":"sha512-rRj2ezemPL/cYUmz+7jxupruIx2q7uSPX/B5ZTlcHja9LRlf63Deg2HGQsJ9QTAdQVSbtlH54s2F4FELmzSXWw==","signatures":[{"sig":"MEYCIQCzdPpm4aoL3SUxs4FTfzxmFXS+QkOoHJUe8Bczp0q5JgIhALgQH4Cb4KaLdyqH1I5eeJZNnN81W/Y9HO4JQWZ8LCfc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46396,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaFMbCRA9TVsSAnZWagAAjk8P/iWmeTR46nGUzCooQlPU\nlNoUXyBRkk8IQNboIHm8tp0q8o8waast2QtRiR1uBhi/X+BpUf68sJOplr1h\nEubYveDN4tW3iY22o63sKjZZuq07+HhZ6lxbjIV2Z4l2phD41/5rh69Ktlum\n11s1pYeLlSoTCgulDrV7iOama1ra7qzZnEdlF7O5oCQNTiAOogA0Hm9MilW+\nGC7NWbgKEy3yCqxcx7bnO7qqouH5/C9LvouyiAq1+r//rfT/6Sow5SUTv4MA\njglY8kWQsnzSOYyQwo789Em/3VbtMAlZPeOBHFNt+uG7Z+DP3bp5nfMa6kdQ\nWb2p0sQ4vX7Zf5RE5+6JTNnrkyIuTZLenmxL+Cvxzd0+mSuY73Pj3PjGLs+z\nESjOwWxoZvbfA5UGKGJkVlbnL087OunwCScS39qt+Fpdmy3b5w8Xyich4zQ5\nZ0Omn7KXcAnZf9bgd3pX/FqkHr9pyTOWx3sBtSG3kVVhUcn/g28YLX0/3hUT\nyhO5ZWXJFXpd2BMN/I9aeLDYvjLRzQlB/1LgJrcBxJhtScH97f/a62xFsedh\n1XLWd/wBPRy5qcm8ApHfSzAUJdbhsW40QlHcJxc8RcsAENf1pBu0/yP8z6CI\nYXdleb84ACzE/hsycc6Zo6U6TmKoJRHaoPI7y10qX51GF342KV0lNM6mxUfb\nYlao\r\n=RMZn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ea8b6634f19a157ba4b83005c8010557a1694cc1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.500","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.29"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.85-renovate-non-major-ea8b6634f19a157ba4b83005c8010557a1694cc1_1617449754496_0.40434479003479407","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.85":{"name":"@balena/jellyfish-test-harness","version":"1.1.85","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.85","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"891580736919af360fc68f4ae2c8e61fce51e609","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.85.tgz","fileCount":17,"integrity":"sha512-oEVyeQXjAXSZh75eavHWw5TrmH5mmY0UOvTybrOCIpva6hpCAsJtuxKWV80yU1i2bneGuX8H2CKOrSu4KpqFuw==","signatures":[{"sig":"MEYCIQDDhR3UuHUfNwIhaXmT38SCuckvlrb6Mt9DP+PM+b9BtQIhAPhMp7JmIMG95F5Yud5aPBC9+O+LG20AOsvjIWg8teR1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaFPNCRA9TVsSAnZWagAA2k0P/jb+bQcnLbmJn7rfvU6t\nKkCcxd4t+834FOTBZEDtcWFJ9y9BiJnqB3tnuSUOwGHqEuXzvGAoLEMfOSvD\nqBmfMV7N70JLdKasppHSFIy+GaLqoFbf0C/HNheHvM85bqie1O+qlZosHKX5\nJ/MYJGxebbB9lVKPrQIfGlMWmMpWOsG8qHahuCdFI8wHDKCc+4J5ZIpUY499\nU5FRUt7+Di0Zf/4Vc2IMuEiIMg3Mpn03jsSnLvnhs73kD6drZNI5v1UKL9QU\nd7urzvGfRcdlq2bcvoHlN6N34Sg6QGvNnUy5uHRV0+iC9fJqchlBoBWJ+4W9\ntXdv2VdMkpQZbmMgw2AwH/F0r2emjq89G4JuzkeUPhYDYUNQfkJKMETMUahv\nmO8kRfsfBMUsw3Azot+umMx6D5vbwk5dewA01g85D56ER2XzOCpFlsD/wlRO\nQgal5uqq+NCpGSq62HFEVASE2X/UW6pCZJrH22Q9+eyLBG95q9dYgPx6nV4V\nVPtEhHj2l//Tmw/6dYBcRFKcOr63SY3uLQGE+F+K0hGZsAafDu+PHg8gMVfX\nIRLdwfkAFcJxi+z5WPcPUpVI4kravmljKIMwr8fr4eusRtlAr19Qjk4iRUNg\nraLIdYASZaX4eoGHoDzTpjvm1QamyABjhYO2WoaOwbgpG1JOEPc1eBbsoFIl\nGRyv\r\n=PQtj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ca3f84b67b322ce673f1509dbaa722e3c8089c12","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.500","@balena/jellyfish-worker":"^3.1.46","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.29"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.85_1617449933183_0.49584392749040984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.86-renovate-non-major-adfe7e6572a2921c26584496087f7df37399bf22":{"name":"@balena/jellyfish-test-harness","version":"1.1.86-renovate-non-major-adfe7e6572a2921c26584496087f7df37399bf22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.86-renovate-non-major-adfe7e6572a2921c26584496087f7df37399bf22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6bb0b39e0bf40ce88bac1bde6b86786df4e7be29","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.86-renovate-non-major-adfe7e6572a2921c26584496087f7df37399bf22.tgz","fileCount":17,"integrity":"sha512-V5fFL4KW8qxRubSsvz3y+l74igFJUuIMIQs44EyG8BaZ75haDUXuUoJcBx69Bb2m6xbouOv+6zhqkQloSJYXAg==","signatures":[{"sig":"MEYCIQCGsBvzkPkEaMyXsjgWEWn8aiwLFheF+u1HtWwT5yOoYQIhAOM32f1M3HjsvkDKitlvpQHE/7kv3iP9iZN44kV/9k1z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaI8ECRA9TVsSAnZWagAAZ34QAIzxOEyCdj90VcrmwIwD\njrx7YkKrz2jdLNWomPCIT9ZeRn5Ic80OE+DGA8lXt7y+aMASI3s3iLAbK4AN\nvmz1zMJ4HsXovjnD3HjfUkO5CIF9t9+aeB8UTuYZKJe0Uuo+qgk8CLq+42lE\nz+yMSOkdVyf303x40UrvL9fD/cCL5vgkls344nfBtdKlQ9ix9aG1u9Rcleub\nlpZDyU41uJprY3qdx6G6/GewcgYtxTFGExQNX6u7qupCOFWYRXNdNnEKuo+R\nanvBM5mP3k5eoDi75Lusaop0LVlZZUJa8QNr/6gxwIiIkYjLYBPXtcXGeFUh\nAsnK04FjBY0fh74JCTkLMKuB6xm6zliHPi8a6bSfQwoz1o1bt/ewGaUzR/WO\nu+BqpTUJ14OMwxmYec68aXo4us9FIEdYlEP4j0ye+Sl6u+tC29Fn8Wll5bWq\n2yCqGklesuBukNCK9V+nVELAD52+g+wIh+zqcIzL13U/35Wx8xCkyl20FM/U\n/8rJTvvzQSVTJDpDE6n+Q9yNrgwiN356ByzOCN4QiclCHW+/1kDb60ynaLsU\nEH9476MAspHuNCnY+rgEFwCyrWmPE86fDn/Lz5MmXTJOGJUGXI8PHTOxzGys\nhQDSh/rfOVtjx/o/LJkxRSJ33E/CnUcAPyHelAQ+7Kh0UzRUn58fHhZEvXJP\nL9uD\r\n=YFAI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"adfe7e6572a2921c26584496087f7df37399bf22","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.47","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.86-renovate-non-major-adfe7e6572a2921c26584496087f7df37399bf22_1617465092036_0.7197715836376888","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.86":{"name":"@balena/jellyfish-test-harness","version":"1.1.86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc1b1e99b71ce903d1ee90439991943132fbfac6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.86.tgz","fileCount":17,"integrity":"sha512-jfRofG3nJv+s5oH93sfvkMUGormBm6b8POB91y9nb3kum2SIL0/VciwAvwXkvIcKSvZqn2RyC7M38di1n7nJ0A==","signatures":[{"sig":"MEQCIEL8w/xf509IGfhMvGitIYSgR7G1CtfEghMi2PzHAv8kAiA8sGZAZAC82g2GFb4nvC2ePpyNiBy00V+6S/bhNL1AVA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaI+9CRA9TVsSAnZWagAAGoIP+gL30tKu9qy2RCEtT+8g\nfRZUojyBBUa7+pbcpEnzHZiscOM2JX2tGbPd3cHONTUUjyAHyb1TGYd3Gwcn\n/BUZVT285+IaD6HJK0OrMADQGIcHl8ov7Fq3+Qh/4aDrrLxPQS75R5J9Ppnq\nNxiKPl0MAK+5MfQM8aXFOpZKSzrA1lGqSzKIEPBtFfTDpiQdV8ckl1VouzuW\n+ihG/w2TwFF4OrG0xRV9JYzaIEL5a0tlVWvZoqvyNpx1eaQTR7Fj+GcZdgyZ\n/GN14p3eYkK5kHEJo6dW5SbP0svsiqvHU+LJe1q1VOqn3Uxb+BUwKwpF/JIO\nvC9sBFQvcC/VRzxRiHyQV45tgGQYytfIVioFNiJqNGXwTaINhu0TAoFVb3CO\njwro6CrjYYcQYERlXnVg0X9Q0G6ZqU2GJ2XczampxNTFskHWpy38PxD8hF7I\nNC4M+F5JClHDRyDNuCmf0c7EOTBgXyq7mDsOF6mcNN1A8eGwkZx6gtdjlOws\n4zFw8OQStQMvo45OOVDGBClNVMeygNrUYrKGY0zUSRFq2aVaMsc5zaAR2rAn\nim/86+Fu3ryzBIaEXgZ1vSEXwquZMqTq0JvsUfs670B1jJa/R6FtNHIDzE5Y\nhgzyqg8p1z7D2nlj7To/6SiRGlHde8BeyIeeJ8DCz6A5F1ty/fSnWrkyVDo7\nrrlv\r\n=AEnY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fc8055137b4e68f04b4255894604d4f658fd79a0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.47","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.30"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.86_1617465277252_0.08901133620509527","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.87-renovate-non-major-c11da45dcd38ab485b1ba5615ef4e092c3645958":{"name":"@balena/jellyfish-test-harness","version":"1.1.87-renovate-non-major-c11da45dcd38ab485b1ba5615ef4e092c3645958","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.87-renovate-non-major-c11da45dcd38ab485b1ba5615ef4e092c3645958","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5a4a4ec3e7fa14ef554c60af98224dcd856ada75","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.87-renovate-non-major-c11da45dcd38ab485b1ba5615ef4e092c3645958.tgz","fileCount":17,"integrity":"sha512-YBxoWrjsGEscSgsoxA5U+8pgkWlLxHLj/rQLcHtI9BiDVMtmMgMynWMWpMiDdTRyGu2L/JS0AXeOfDX5xnRtxg==","signatures":[{"sig":"MEUCIQCN8sb/lPvjSbjc0/buxo+yI/rcA9wPxvfC0r0qViYh8AIganCYsFjAu+4/qJImPNHei72Xw+odnRbdxKT0fM5UL9w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaNhoCRA9TVsSAnZWagAAr0cP+wZIyvvsHYGhntEHLcYX\nLTGlOBU62+Us9Qm8tT9xTEa+wf7d6j4BfAoA0PP+o5Ac/HebgazvrD5uGVO2\n2Eu18ojVSkRYQj/1ku9vqtnBQ940HKAhlJ6errYRX4c2u1ATorQq66XQOorV\nWCAlxcADMJckrqb6VfBk0nFV10mfKaVJvvn5pGLWy5qw3vWGsics70m/YIX4\neb3YMykAPtIc4v0SHmfMIj7sULetCDtlkoRhuq+vVINJUypViTlCH8kYoWUO\nh242k9V8Wrzrb6OX/ZIDqBXnOP6bC24dv8xttDKtjyVf/ilWxOmJICDmhXJj\nPFwLC+3sDeTYS3I9BXv08vCEgftBpuC0cOUTJ8+7hOvOXNFOxjVb+IJw3eXX\n58xXAI1UYEkbxnyqvNlJ6hNYt0dOgThXzxN3/99ERdhF5jg33kSzDhFgnOOz\n3KCj5/KPgwFcZR71bG2TtCsdNaddlfJLfrj9/1dQcocaT0h8nS8QrlYbSLbV\neKCgE4dHyHTWJv0k4IW8GI9CV7ZXMtiWeZlKAlk0/lJSNJm7+C4bvDoVOx2/\np+ql7TkGelPFn6OAEow6UDlKmqqU5TDk+BX8RJBNkx9wVai0w6zpY2NwMqNZ\noIYW68n7NEWvYPVjT0qWAO+Q9aUQirT5tfJvCxv8VyZVK6AWCuhu0FkCl+KU\nYTg8\r\n=2fE3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c11da45dcd38ab485b1ba5615ef4e092c3645958","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.82","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.47","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.87-renovate-non-major-c11da45dcd38ab485b1ba5615ef4e092c3645958_1617483879827_0.4566915014522759","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.87-renovate-non-major-b14bab0dcb9544e60e05af892e7648ce10b8973c":{"name":"@balena/jellyfish-test-harness","version":"1.1.87-renovate-non-major-b14bab0dcb9544e60e05af892e7648ce10b8973c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.87-renovate-non-major-b14bab0dcb9544e60e05af892e7648ce10b8973c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c5da074cb3b4f209232383d6930827d2a35b5c2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.87-renovate-non-major-b14bab0dcb9544e60e05af892e7648ce10b8973c.tgz","fileCount":17,"integrity":"sha512-L7CWLfu0CHClZ2VtY9dGs/hknP2r1Q7XL/so89UBJ/lnw5Sexi5kdOFG49MgOW1/kzEC7VmNuIWAMYd+Cd/Rdg==","signatures":[{"sig":"MEUCIQDOMhnK1wzHRN17Y7IqRVF95O2uAmLU60rX5moUZOOL5AIgUS+WGRxC7CeHLR4GAt5aALklIAusitBGZuCZSIZd96c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaNmdCRA9TVsSAnZWagAAOcsQAJI6SIxPtDUMeoTLnZMl\n8Yuy8v+kFf+dQiNyDnYUS+xg1u+I9tMjY8IOAfrh7+XrfpkDuIy9qOQD8efJ\nrIn1bcj1I3OElaDABcwpVUgU2VLl7AxClBc2mPdPCZseAaESfCgCbRiZaEhe\n3XlLqeLvz1eOnOU3b75wD9viO2dSHeva+dx4M8UDWiNa9M3zZOks4OsTGYs7\ne8V1hEp0uRbVzV8B8+90Vu/oS6dFnrCE4breosVxTUiM45Z45YGCbDxwrJFM\ngbvqZd9JJzx/Qsj1RWHgZnqfhGBy8uqLO7GbUyTKMJqlnKcsAciP7z1e+H5H\ndtlrxVzDi30+IiT3R0oi8l7uTv1whnfUwNRQFXCBtXciVS+bha1dU+/cA1h3\nHiA8JvQ+CCnYBOV5Wd9K9bNCkhLLVC7Z3VuuYvsDU7zCESGjvqiRNmu90OhY\nQF7byKQ78LM3cbN/ET8IZH9qnMyE+ZXd5I2wwiRpqvpsXDNzcOn04dCIGvs9\niLHmefHyK2d5WX6WEZA3MW7psrzRwanpG8Pfc4JnqOgW4BWqGZxCbX5ezklS\nb5arpPoNwnlaD2fWyYKRv797PJ/h6QYxEbI54Q2vqieZ5XJr6gH7TCZPNroT\nJ+7Ia690t3wO8mLdRAc8WMEmWSQUeXmM8pzHkZyLDncQvjYEqZ4V8eOeO82R\nT8Pz\r\n=b/v0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b14bab0dcb9544e60e05af892e7648ce10b8973c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.47","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.87-renovate-non-major-b14bab0dcb9544e60e05af892e7648ce10b8973c_1617484188580_0.4110829152721194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.87":{"name":"@balena/jellyfish-test-harness","version":"1.1.87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.87","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09433d54ab79005910c9d8755a01668c27939367","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.87.tgz","fileCount":17,"integrity":"sha512-ZfNKIct4zp6UAe/YpMiiAKh6pVr4kJ/60qpAVwQ3d8EHDFOg4mECPhhHctjpiLgyLZDK/0L4NQ1StXNgjFrJUw==","signatures":[{"sig":"MEUCIQDvbUVunBW2AVtrAC5q1TGJm+JG4LiSAH8UNDN7zYGhkgIgb+k1C6M5FlO9tJrK6cfyrBWURihl3fgAczJLyhEo+9s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46474,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaNpBCRA9TVsSAnZWagAASyEP/1Swqbfme8nXV22VcsDw\nT1ui5armKlCBaDwOb2ClPVOVRG6HSi0tgd2z5hDhCvgPLH0QuEEgQ4eez9cx\nGFbcQ3RyE0EoJVxcpY/iEEyo0NeF8Syta0LeIxaZqV3EggTUK7ndrd49zgxk\n25AU+dTEgElOjab6tLSmiFU6fVNjQJ3Q/46EIXQQ9wlWiHlEYl1NbyCxfL0o\nN0vYkC8PWzeKi0bPFJrozZJ/gS1wnEaAmq6byHatHZfOchr6tamjcKa72SXq\nlJ48hADXFXB4WIUNuaLOTvcNSuDRIw8dNYtdUs/mLUNM3mmTc4zmePctDWpR\ntXdNg6zt/ke0FHSkSd8RCnGCHV8LdZ+kY3ny2ChIh8ZMSHJKQvpZfYd8p6EG\ntQ4KzSnyepKB0JDHQccfnGwg8dr9mggq7V7XkpgvMMkqDMrkWYPCIBFD7nJ9\nrAXBIItLDg5yEJoJ8kfTawi7hTprxHXxpqdWDxhSZ87CJw2OjutimECw3LOA\n1bJaU5+hLiWgq+ndSCzMiL7/4BLh+l+V9fjsyteVQr1gxk3PXMPVYhpOmZY2\n6PQ7z2obI4Omycd37vUeODvBpRKv4NIvhBzNr14noaj36o+1D8at17PFw1yO\nyYOOMJbq4KFB4o1acGdYzUi8ZlIsDyX5pYBQku8LVJzW/ElwRiEG1ooXpFBp\nm9Dg\r\n=0bdm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"67e5a2710b76432dfeb76428fa81d4479e8af6a3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.47","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.87_1617484353403_0.6561529444896366","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.88-renovate-non-major-65845ac21fe254201971be4323a96a708a00c1e2":{"name":"@balena/jellyfish-test-harness","version":"1.1.88-renovate-non-major-65845ac21fe254201971be4323a96a708a00c1e2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.88-renovate-non-major-65845ac21fe254201971be4323a96a708a00c1e2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fcf7ca86e5bc6b7b0314c96b37437078ed74995f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.88-renovate-non-major-65845ac21fe254201971be4323a96a708a00c1e2.tgz","fileCount":17,"integrity":"sha512-j+QsEKMYp94BS3dsb7PNmzRHKDnIAat6CfL3egt02WX3F99OW0x2n2+RCF6TB3GskU6kx5+am/BWs480QN3wNw==","signatures":[{"sig":"MEUCIQDfwd9joNf7bh/9qDM4eGbsQWJZ9NHw1nt1ZtTcZ6YF2AIgV8MYkLH5ixhxaiYWMtWNU888pwAQ1QgAJSupY22JcJ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaPbMCRA9TVsSAnZWagAA0wsP/AsJxU98Qya3TTsB+xf1\nq5vMBu/3FNUwZkfqcR0w9CLcbLoe2hjWxuyUn/BjXJ9IAeAOt5x20SPjS1QT\n4YYfbWjGim7pg+tVsotrTFpunDftRQvkKjvD1a995InDmxKm7M48eF5rUHnM\nfNAM3WkCXPHeCzSoGWWDy2Fgm6kQ1I0GnzdI0EWGuTEdG6DXAWBch54aTL+Z\nX4VpJWSXNWd5oH7Cgpqz21QhhPMKraHrTNhQi0lkQCLBG1biHHDeQPn4tdwO\nCB3CqBMe+cwOlSVDG9UNnvnzkdFh/PbmOgjowzyeqWlFnLMjzn8E6NP4akPA\npqypQJ85vL8tE6FpOiiUWz/qSxBs4wVjwa2lhL37UJjfjWyh28MYLT24FXun\nbZF6RoC0V3kx8VJRHTHuh1a5Z5dkTay27pJ2p26pRVL3kWn33DUhcyrEmYul\n4I/u8DmOAzzOq7hN9mT2YN+2wJtu+siT5+cb7ImWc6ufiEIG72jUg9LF9Ccg\nPW2QCvG3Clg73uaydrUElY2ANAqVUvJYEpHQF02Y2z8qZSu9UF1nToBcYau1\no20v64rc2SiZRetBnSZHw5e3F8rRpFkkh5qny2delGcyXQWBI8JDpxcSWSou\nwH5BJadQ9Ek7Yrq4eALJjvClP+HN1XouSlXR3mD3Vitcc6lIdTQxho7z9MNV\nnIgP\r\n=Qzg5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"65845ac21fe254201971be4323a96a708a00c1e2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.48","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.88-renovate-non-major-65845ac21fe254201971be4323a96a708a00c1e2_1617491659962_0.8132375962152982","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.88":{"name":"@balena/jellyfish-test-harness","version":"1.1.88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.88","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e3bf15391f05e4297b13cb09302b568167f4de6d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.88.tgz","fileCount":17,"integrity":"sha512-dtvnP0DwBACfXwtYYU7JtI9moQu4/GaxV+8tLjd1Hz1oyXh2eFY0soWBIMfFt4DRxJ+5rvC1UbVB8yN35cwLMQ==","signatures":[{"sig":"MEUCIQDhsYf/ssUp9qk+wZU2DdD9ptPGK5lfb+OCK+2wBVwooQIgNIpub8AXgOEHe+9V6+2lDIHFSf4C2eV+bTEndUCY3xM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46580,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaPd2CRA9TVsSAnZWagAA+BUQAIUEU/bC30cGOyTkTaFT\nopbAPvAGaGAPv6rg5l+NOqMxP/hJ6rANmM5Nog7y0UF1IvCBtJEwB+ll5Dic\nRBtBVf1X5N6GBse367hL4lOOuJz8wpP4oTo8B2DDlNs5uB1udsyq9PTGsMSY\nMc2Dfylaq0zw41jH/OLCOjxPIqcYLQjdWsgrybGmwlELpQpVmO34CgbqHhqX\nMXiYt/TjQ4zo2mSy72fOVuBbkc/Ao59Dgygmw8+3EjqUPyV11A7eeVRkucX5\n65axtB2afdw2UHuPCUzuYDKWX+nR/d+HyLsZF37FYOleo2cCrnaTyW0O2q8+\nZARzHzNirlN7sR3j5hnJiMHw2V7Cq8XKPII+6R+gj90rWs9nkejp0OoSfp8C\nYeqs4XRKKOEDmB70Z2K8Qitq+fQz2MFyKvdPLvpo09dbkcvPK0U0+brrSCZJ\nEzuqXesmm9xDKAo2Vnlo9ViTVkQpBWuanMPc/UFsF7MzHf1nqzbmBGkWKzHI\nqzUFLthzZ4eaWHSgoe0eY/xmEEjg/xNjiuy95HEZY59mqDeChB3ejriFl/EY\nixS6R0L9Jh0BRpOQThDzIEbdFnnmauG8UDyDB/IfZfusoZwhw6KdA4H2HrNQ\nuOf+uPdA9Xr74jI+wmCz0cfq9lE3qPZbeXW1/XtOQ9oft8d1cMaWcq9rwkCM\ngtys\r\n=oePv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1bed8fc5e83fb136b2c9315bb44bf6b7a039abb8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.47","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.48","@balena/jellyfish-environment":"^4.1.0","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.88_1617491829731_0.9530592790037331","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.89-renovate-non-major-00f698004a22bab26871a40bab7f88043dd5d32e":{"name":"@balena/jellyfish-test-harness","version":"1.1.89-renovate-non-major-00f698004a22bab26871a40bab7f88043dd5d32e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.89-renovate-non-major-00f698004a22bab26871a40bab7f88043dd5d32e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"490595acc701a7624d375e664a40fa74cbb45fc5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.89-renovate-non-major-00f698004a22bab26871a40bab7f88043dd5d32e.tgz","fileCount":17,"integrity":"sha512-AMnDBiRaQZsoQDf/pH4L/Zr0dei+ZfS6uJJenmZm4/8QYAzua7nvZwvB7O0rU+9lDbrrzdqdnPoO7x0sUnymWw==","signatures":[{"sig":"MEUCIQCTSAPBwIrwU5xjPQzHfLUxLSjI8X8vuKva9Wg7bxWvewIgclHP7UaDXq+0b8y/RLcesYlmcKGKKPpincKt7cG8lpA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaRxHCRA9TVsSAnZWagAACFwP/iL8OAExeKZgL3dAKv3z\nfrT3KT4RlzSL51Wcv+DTopCQtSl7jW2JAM4S0XFfDiisPIckKHilDTIdptD7\neOlQAfA4kHcq1J9bkNvp+aFAho1AEuTLXk42ZnZfMs9hPXpaSThA5u2iRXo3\nVKcSXVz+kxcmtxOcmGJxrNNWZXPmfcbiDFS6X9G26kZ1kY1PNiGRluxQVO9n\nWSdPmO/WZHhjYnFYi0Z4wFtB9pR1cHcAMvbswl1l2k+GRuD2iMhIp+bcGrEc\njz9PoIcvq3yM1iy3xgbhSWMW7RdSFmx0qGKON6sx77s6bKpmuu6yKBRO7rq7\nop8imYAyYkGG1MhFF/dPJWyoeAw9feHZCRFxOhzsGV8MByaTTh5Thi2Z2iXT\n6SCclMPqFUg3wHyi+hfi9pe0H6aa5v0DlsubDywAoJ21jHvANz5UpsXkx0Hg\nkgEcm47R2i6lxvMp66cBt1Wq5g7Y0RcT347tpG7aM5+K4GGBpR6EBajF55gV\nzpUkbhG1R+xsxogjU6dtjkF/jCb0Ye5hHsctCrE8PwW1ed5i+tBQPiU9tjFD\nnE0netoUzAAqdvqY+69zSILRjZGycBb2PQMAqs8ZCwLP6ujBI5CtsALpBW3y\nzrbY8mpi/EC/5IvH+SWUFlCyoMLHGhWDIPA1S9xbO+jM76pfHMIeQCFyCBRq\nqwtU\r\n=Mafi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"00f698004a22bab26871a40bab7f88043dd5d32e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.48","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.48","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.89-renovate-non-major-00f698004a22bab26871a40bab7f88043dd5d32e_1617501255026_0.5718902054769734","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.89":{"name":"@balena/jellyfish-test-harness","version":"1.1.89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.89","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d08fdb020f44eb20308eaebe10f63ce2decc4941","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.89.tgz","fileCount":17,"integrity":"sha512-nL+rT4e49LAfvJwMsx+O8FHgKN06LOKxofE8XT3k1kTKj/Ckd4NNKexRKG6By3JoPQmKfYj70liVM+ddohNCBw==","signatures":[{"sig":"MEUCIBL2Qu6YeMv08c/PozPuhLea4jWzJ9dZGB7DicOyjE01AiEAw30vFGMHxca9xp8Tr8X2IvRRXZxXfYMF0GVUf6yNa3c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46649,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaR0XCRA9TVsSAnZWagAA3iEQAIb8ugEFo5Xz37nekz0P\nFY+IClZ1CxdbGg13uUVlOQbZKxOA6cD+4Cv9VcbNR7MgeZaX625QDrt/2aQk\n/nBGWK3MQmHNsoFnAp7lrkn6QkHSPMetH9Z851QyfaZNC/XE1DCDjReOb8Em\nyTICI6bHaM08hbGKbiNAIVZAsPAecnf3gARlHJQNNipLXS3bCyHK78hxvZWU\nPBI3l6TjDiQ9UMQMhrkaoDISj2nRbOj8dHARC0tcor4oUMOOuS+1lmDKPbQL\ngUHTP7vCdH6dv/8+UeORIQJeKu0VccWhqncubS+jbyMT7K1NU+6+C33k39NE\nsK7f/JJc1lxU/GHDrQVAAdVsBb+/X71W9wVk2KKQuxU/uci3q16yrAdp8hCq\nWMzk0BJqNqg1g8eCZ6cxXVrFJCqUyGQ5SyefFtErbAY4oVE4z5qdG4LOR6hP\n0oxxzVbLXZikyEqDzGarSnPsjcI5Tta3eU20plpOc4mGv7DzcmBOY5U/aSRM\nc3ZDkiEmdIcDR0s3wxlqwk7TrynPO6ionk99EAtvcS9VTaw2dHrDFuiOezxw\n5dvAxSSh+UkmJeZZyGrWj9OvY7ESNDM84whjkSAE31agOT84jw++5LA7K7T9\nYvoIrmdCnrj0dAS/5kLXurGtEweyWXei4QRnSKgKJOBVJpJ6U3azORlDKz1u\nGuOM\r\n=MaF5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6ef34cd063855c29418bc0f41b4464c2b8a1a33e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.35","@balena/jellyfish-sync":"^5.2.48","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.501","@balena/jellyfish-worker":"^3.1.48","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.31"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.89_1617501462798_0.6212506672470375","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.90-renovate-non-major-36215a9769b126e7fdaded0c43de5882b890864c":{"name":"@balena/jellyfish-test-harness","version":"1.1.90-renovate-non-major-36215a9769b126e7fdaded0c43de5882b890864c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.90-renovate-non-major-36215a9769b126e7fdaded0c43de5882b890864c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f849c498cd7aca1a558be1945b1306416633a94","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.90-renovate-non-major-36215a9769b126e7fdaded0c43de5882b890864c.tgz","fileCount":17,"integrity":"sha512-v4q//bmu0InB+gxDUtksbQnE9jCDGgAeq9DEAX2IG/BuRqH+0QPf8fIflN09b5WYEKITXDLb2MoKZB1CoJUTig==","signatures":[{"sig":"MEQCIEN9pyQkfP7oIaeyjhDbdKRagPMdyrInmUSlbo5qDr6oAiAHFX2866sCy7mcx9k1f6XYXCp+4b6m2dG0KBTAqAtYdg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaTNgCRA9TVsSAnZWagAA9XIP/3e/BHAnYAdNhCQeINMD\n/UhlWIT+/DQvXExkx+Su4ScHwA8GXTU/AT6IqO6Za4g4WyNKojmBrmD+fBv5\nqcBg7rFIdPsidtC1AKgqHj+s4U7tmxLCBKuhuoAehKzrDK+e/AAYlkhfzzEB\nWUxeGhHCQnRIpE55GNIJtQ3J2oNy4WxR79KiXGgtFBfA7/iltfI+0qmaLm7G\nJYo4zIZaml8KJWIVTf78EENsuq61FsH9nuT7GWw8YSKvLr5XsnzW+PFr0jlv\ndVN0tY94ZPACyQ6r9v7o0vdBqFI5IiXFfQPyTtbukkVh74xKDLaCwGJRqpEF\neF4qcrHBBVQAfn3qhGGscBF9FgfgzkAYNNha5z7sRtJb6GVFMCzrJ+V9ajXs\n0wwiQeYuAMylNPBDYsC9fZVNuMvU5dhx/m5YVnJTWqqTP8zP64KdaMA/YZAt\ng9pRirdTVHTA/W/XfXJOV4PTtO+KFGI0n0vFil87OvavuQIp1XCPRZIAL8v4\nEvD4M95K+ikxdF81HjNDDNKUL0uzT6AN97DJN+N6Om/qR9ZGR3D6+GAzopTp\nnxc9jl6O0tyhKfz+tulIjV/hfBNYysjVKfR6kffPldgkwEkBP+COx8YZmvnK\nKiN/uow9Bae/j7jAIacuA9QVEa3kl4vIic0/1ZzrJyyq8x+Tamg7lIYdI6Px\nJYXa\r\n=Ayzx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"36215a9769b126e7fdaded0c43de5882b890864c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.36","@balena/jellyfish-sync":"^5.2.49","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.502","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.90-renovate-non-major-36215a9769b126e7fdaded0c43de5882b890864c_1617507168018_0.37114634860935247","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.90":{"name":"@balena/jellyfish-test-harness","version":"1.1.90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.90","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be7908f13912e40679c34ee77ef96b73d420df9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.90.tgz","fileCount":17,"integrity":"sha512-uRNBj45iFv44rfZ+IqQ5RjTDBKIPBRuKe2uxjO3pM6apTeTcOiIO10V8OjXSlQFJJEvfxnbKJri/+QuSLZ3LVQ==","signatures":[{"sig":"MEQCIFZNRBHPRWvhU2uBYLEB1OKtwaHA3mudZt0G92zV3viwAiBAOAfPZtblJbLweKwIniHtYqHPpnzdE2MXorWimc7fsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaTQbCRA9TVsSAnZWagAAlIkP/j3V83XJNDlUpNZJTi4n\nJGhdwX6OZA3umF1oLvlGmzjl3lj5qYRvDaK0WhtHlUXofjjLhrz9AUXR1i6V\nhqd40ZglzZrNeHN+pGZWn2nVFCpoH9yQwea5+DHGa1OHsZAF72Zr/5yx2Xi5\nIIOcu+qNiNab0CUktXckWPqPFBBHrZ2x5Iee4T52K0EkkB7M2hKYnH3XtwkL\n8mVxGPqA2TBtgS38SDbrGVkZdhwb2YTaJEeFimomHPfpxV7A81fdfZfmdhJO\nvu1j/S5n6iwgpLHL+6c885v61Tx/ZPlhamx0gmJWgYp9qcRH+OHKtwNJRez1\nQ0+ciXd1D/Krdm5wZDgSSvaZ8OJCR0yacR/D4/cTT4GDbwrQRKaW7FBSTFFu\nqDxAa6hXfMxy+cJgv81LXQBotCgPFW0VTuJTbB719C9/Obbl2jlcX+h5C45r\nONsq1Rl4XP7LMSnh/eFSMlsb69HPswsnIN8htorfipHlFK67n+LKvj+bj8sR\n2WtJ5Aes5iU3rI8kewirFAS72bZblgFBO7lRCGOrDe56kyeRlOYR8BJT1qz6\nTAQnhqcPBAZFQuKe3V1TnVmSjgBP9aEwdhM/7g2XlWU4kZTP4eoL7K09503D\n9a6chZ3U+Gmlm58o6GNuwuotiQ/uPdaYiH79qMWAtjHFhP0h41RtRXeZMdfu\nJ2Hy\r\n=eC8T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"10e35e3fe0821b2d687a949b5b96be060634c88e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.36","@balena/jellyfish-sync":"^5.2.49","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.502","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.90_1617507355421_0.8118943552422009","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.91-renovate-non-major-903353eb5d86bcdef7d9443be7a39780a1f5dd53":{"name":"@balena/jellyfish-test-harness","version":"1.1.91-renovate-non-major-903353eb5d86bcdef7d9443be7a39780a1f5dd53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.91-renovate-non-major-903353eb5d86bcdef7d9443be7a39780a1f5dd53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ccb2fdebe7641ecd37285fd3ea111fedd35eee5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.91-renovate-non-major-903353eb5d86bcdef7d9443be7a39780a1f5dd53.tgz","fileCount":17,"integrity":"sha512-zt1RJwetJ+y4DwEAfo1dEKHRJT0LYFW8pLu2L57LsMBfQ3d/jAlMAkkViztJvoTZUhNaS4exFoQS6KpOfyDteg==","signatures":[{"sig":"MEUCIBE/+mmBjqJpOwrSGHClC1d1CrdExyVPjbOvZM+re41JAiEAjrACoWcEzcmOaG1VVIiGa1YXz26wXxogixhjTldyLdA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaUi1CRA9TVsSAnZWagAAqlsP+we1/4uzG/etJQgCrvFY\ny+gXtliMSSJmx2+n+0iEimOsLC/JwZevNsu19w+jNxHlN1hhwlhQzdXLoR04\nvUvHiqNYcqlU6msPQ8It2kwSQ/bhHzNQuYJhX8wPQucVb7OG2Cn/DlLvgNMJ\nr3gjqY/cawGCFB4JJVlEA1j9BoFA0g+KUzzeP3arKJi52jP7akS/w1bhD+5U\n0nkJDmHUyTT/88qnjnxdCJXXeIepyqwnJQ9WjcUwXzw3ZMhgIoHrsnTpL3Jd\npSOBmDV/l52XKshXjJGN0NWjzj9rin/LXpu0Xyw4Uv9d+R1kZgHpGE1po37F\nFwHfVl5uWERw2e8wwLcZRKvDRfOQXFBsCQHi9lDQf+ZqIFH4VHx9ARSs8Ta7\n7lmuu3yRc5r34UAu5CwXSDApENUwO5XRca1eBauTgdMUtFyValUHuHq8dd6o\nprFEklmdaCfoGhpXfV1ZQImDZJXB/tNyPtu4P32m0ebO50tD04+7argdJa6c\nr4Z4iaxEZ35WoAif4H8bRGAQwAKCbV2QuiuLB4ephjfJfZpk0qYEd2yOTwbu\noEjxWE1fLULAOWc/bULeFfYD69DWpZnmeli3sJbZgHjVlNI2BtNL8rbCiawj\nA3D+vsCSpUPQHLtqMajTrCPKykouWmJLQ9095sn3o3BE0dcL/aDgsfGitSI0\nOIoF\r\n=vT99\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"903353eb5d86bcdef7d9443be7a39780a1f5dd53","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.36","@balena/jellyfish-sync":"^5.2.50","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.503","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.91-renovate-non-major-903353eb5d86bcdef7d9443be7a39780a1f5dd53_1617512629093_0.3720779347642733","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.91":{"name":"@balena/jellyfish-test-harness","version":"1.1.91","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.91","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e1aaa830e1e97125ceb8471f8b1742fdce83bab9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.91.tgz","fileCount":17,"integrity":"sha512-pO138PDZaIcEvt1X0LGib06/yO8rOup5qJhbqTGkXsU3bgSLFvD4TTLO4vVn+Pzyz1am8fojasiE9skVcZWYSg==","signatures":[{"sig":"MEQCIAPZ0mtR9xD+ixZu7RgbsdUQdsiAuImDAcA5Ch+Z0zQNAiAl/NJ+TM5epo3lD/bv2nTRgisjROYn0Fik8mOoprmKDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaUlzCRA9TVsSAnZWagAAEQYP/24gY+BIRd5nnGS4a61A\nSpeCcsBXRKob2oaRcwDT2rf9zRcMaSfN+C7S4kqudZkp4gpE6nt9XQf3nFl0\nDOk+z2ejRn+n9+GCwin+qu9tU6Vt58v6gy+DhiT15a+yezo73RGqfRLe/nGL\nJ5z82qJn0ExktjRbGh2gG1Vk+BPuXn+LSRAWK/cYAsixC1r7gEk4j8kaEnvq\nU/y40xdtD5FLiiestmBcepCAmXS8zgbyT4Y0UHmJcXv40xBjjfYxqGNHR+wt\naF305LywfWxuO5t7RSu1Vrx3tRK6JJMohskpV/shpNoBgPu/LBsAewsEA8k7\nujdeuJKyhq6E0bjmTEzNyne4GOiNY/pj2+pwwzVU8V2sAzbNThSwg9iBc7eU\nv1hjQIA6YF4DJ+r3ExTujoWTJKAEXWDuLGNM1fjeDZrHDzt4q2tapnMskw98\n8fijzl2FoHLgw06SCC2tt3xW/Eh0ki/i5HT9k+s0IxhkR75Mk0KARUKD0VqG\n3FuBxgyYK5b9xbKKpQIw1VmG8h+8m4ZBVAOHyMhLisFRzMwTCSKkXrIjEpf8\nAjkA8KK7j2UbEq6rr8VSEvQb0Psc0d1KUxJK3IBchKQIhsK5tvhA5uLZ3Ex6\nrmb1bLuD0WLod8VhDEiyWHrI9sfWj1p2vmSz6Vf53rZ/zcmRGS1HW5Wo5NYv\nw7Xu\r\n=tylp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cdf4439a0f85e34c177ff076bf89cbff396c41e9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.36","@balena/jellyfish-sync":"^5.2.50","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.503","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.32"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.91_1617512818498_0.3121923499049093","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.92-renovate-non-major-8a942b88ab92a9173e1d0f625187135ed0180a49":{"name":"@balena/jellyfish-test-harness","version":"1.1.92-renovate-non-major-8a942b88ab92a9173e1d0f625187135ed0180a49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.92-renovate-non-major-8a942b88ab92a9173e1d0f625187135ed0180a49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3489557d1be73480c1d99bd00c32d5bff70e7f6a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.92-renovate-non-major-8a942b88ab92a9173e1d0f625187135ed0180a49.tgz","fileCount":17,"integrity":"sha512-y09s1MiXMZDN5W0SNFPTRuSgcdZTSCL3TDigSzmg2Yl+TRwRZpBVR2jHaMjB5ZsTzXmBqB8hf/XzYEfoLNdzVg==","signatures":[{"sig":"MEUCIQCM/4n8esTqU04Xw/6hbHtcOYGerVkgaOePAxCkiCVJ8gIgRTW9QJSojrqRcmPE9P+08GqUV/4BsOUwMZ1qqUIAbC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaZ87CRA9TVsSAnZWagAAyRIP/j8iwJzWYi4aVuY1X+TN\nDcWQ36IPFPvgXnc/9ZfFZeCljJBH63ATVefpQtwwu6EAXhX1jEQky0lJVyUU\n4sxZ6qVXctVN91shxcVuNF2ur2vXZlMJs9g9Q/hxUdrO8dNcUxP3eo45YasZ\nSG77Ss2Hc7Yi3TrVCE7yjAlyl9kWigZ4J7g3XgEZ954V6rhCUvi7LySYebw1\nVuBs1I72PUbhqYpLJmhyjL6e7AoihyL3eNsOz17WXA5t9najZvLw9UMyaYFB\nbX+t3+Hz5XKA3BVZgU5zsMl7s6SQQDpJ/3DWwWLT/f+6AR2V7f7gyxwsdsQJ\nnMrMBtHbmCqSAVWjNz6ZwoNZne6EdpCBowNKNj7aVTWtT0MeV3vseqFnt4sW\nJVtn79oV2ovVv1EUFJAua2NNpeCgjf0/qOIaFppmdGDRx9utJ/sv6aDoM3dl\n4gzl7QNTe2DsZ0capojjMAXJLWhxf62HMwYIqzOflSDxC4Pb7igkTN41o716\nAn58lBAgLwJ35R4fRKrnHorxy6pVDSlRAPzJs6zCkR7A6xNnyjkOvHVhzbC4\ncONyt68COYbHAavjt/mtMp+/dd/Ut5aNgr0d4mM5dbLgrmsiB09Y6AnMeDtT\n3ZkeKOEfWxcWMJEj6gQLVfNfo4ORIJqDYb9CPx07TQUNF/R2hxx/T32AmOR4\ng0CQ\r\n=41ZD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8a942b88ab92a9173e1d0f625187135ed0180a49","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.38","@balena/jellyfish-sync":"^5.2.52","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.505","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.92-renovate-non-major-8a942b88ab92a9173e1d0f625187135ed0180a49_1617534778558_0.038257331366649217","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.92":{"name":"@balena/jellyfish-test-harness","version":"1.1.92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.92","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9c79adb9cd88ebd35124630a1270e71695ab4917","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.92.tgz","fileCount":17,"integrity":"sha512-TnZ73K++e1CBCz4rdU6VzOk889rvoxfIIeZJxapgmMEV0HWXOJOz32690+rPzxQdg500ydqpF+Su9Tju5uwMVQ==","signatures":[{"sig":"MEUCIQCKmoQ3NPimejxRDZ2GizpH3+klfKnNXBWjCFnCbJGniAIgNGR4q2IrnEORI6gKO1SwimJIMcSJeS3c3pcHTl+kvkA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgaZ/oCRA9TVsSAnZWagAAIbMP/0OJL2M4vaAr/KStRNh3\nq+lLCuHLrQfD2rmxl83lMoYVYJ9T1xikQ8g1JZnDz0mALsvXpNEPnGq2/XRO\n29URB156OxX9yq6a7UVvL60V0dZFHmUAAvhSUxHTmatpkJpBsTWW6EvhigUm\nxvAGJdXbkHuQruPzCb9AQAZUX4xe9BQb++9GOF9CnuR4el9OGPmLqkxNVidh\n7mrAFKX3O4kyM68HdZtRNvNCd5nEaismTv71x1a4KpiJteG9rWjEr+EHErFG\nlRixxHadWU9IjvmScEj14dF2AHzWqRjIulLgBvYKPj8cKnsOcyL7g+XbFJoH\noZ+vlPNZKdEY8KURzfm2c4g+4QakvC4Tp0MMPTEI5qefGCCUb+LUdHeADrU/\ngKIZYZI+mm+sPY31qmr4Tpx89IyTFgtVCkdkiyWlu9qhKrHNTkX5tJpt4URR\nI1Vio9sy0/CzBaWpXC5F92muWMcPJ5DgNWdQJfu2TD9vcHYPVCI5ngVQD/r2\ntQFbZiAc2YkeKKq8mFt3WpaHQvCBFpOPg7Kvb2dxYEkPdy6uz82SLb0gTawA\nETf60FbS3f2MoqOpBbBdO4AEaLKu7c7srjm4j6nNS2oDV0bIpUL6bmVdIt+X\n7s/FJ2OfZuCOhjWHNSgCTVeZxvUCgcu0U6Db/KdLQmyENTa9FoAq28whPcuK\n8Sbs\r\n=0KDK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"01520c29a58610a901e0450044d70353d9de4827","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.38","@balena/jellyfish-sync":"^5.2.52","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.505","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.35"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.92_1617534952273_0.6113327142249751","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.93-renovate-non-major-39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55":{"name":"@balena/jellyfish-test-harness","version":"1.1.93-renovate-non-major-39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.93-renovate-non-major-39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a8bb0b7786f9579af0add6320437a8782b9a85ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.93-renovate-non-major-39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55.tgz","fileCount":17,"integrity":"sha512-T3AT+bCKpHzugBrQGD4liurA6XJuUghv+3kCna23dhUAMFA5LSo74WpBr1Yfl2p3KgJGFYTxZn6LE2AET64Krw==","signatures":[{"sig":"MEUCIQCwHLPOwXCLP13AK8M0GhDsBrxbRWEB2gnX1hguNcz83wIgMgswVn7PoFCRH0I5/MKNColPZljqFIw+p9hd+oUHXpE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgabCJCRA9TVsSAnZWagAAxt8P/j9gVs3kuP6qZp9NeEz9\nds1Wcgm81b4ofQiEAcayMT4jAceHgoJYPVaEFNEAdJ3PVyKUV1JHIaqlVy16\nbLjhbB/0xRkfraeHoUA39OwGRq/K8Hyc25d6LWsnJ78qWA0eZXb5PVP+j6bl\niRstvkwBiRRun0UY3VZzY0JuUulWNmfaE20p8lbZ17IiPI9zCJXNDfI1U01Z\nTHt2i92/bNURs4tk1VU/RNhg3i2HLm2+kHtA2N7SkFwIrOTiqSGYyWb3SG+e\nSoMGeOHAJmpxLQapkTgQHM8+lIosDkIylGk4ZvJAM6hwMVgnTLj3SzHXO320\nf6pae0eI5nqaxC2TMC+MnkKXhh3U26IWIsOUirSdH631n7d966qcBVC4JV+S\nfHdFXOaemuvrU3LGSr6pZBpeP6Nlv2vZMvLBuDF8JcFU83/i5jmpT9IwPcmZ\nWlc0iSZrIRM2/lgFsQoI+AvkdrHm5RnYaMaUup06BPLQxThAA6LOAaMM3xTp\nisEQMDUE/OTsn2UjjiGMYNV6wy7uVEy7gibxD6FxyEI/1ljAJjsuOY5/qeHo\nhFiE30UM0BMsQyIQdPnQ6/vba3IIZ+F8NSgFZ9zSGzpWhB40nlBhmnApdfM1\nY6oXyoCIqtf79vh2mfzSPVvdR9otNM1t41ey7c/aaVJ49//Lba/t/WWjQmfj\nPVhp\r\n=7yvb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.38","@balena/jellyfish-sync":"^5.2.52","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.505","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.93-renovate-non-major-39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55_1617539208855_0.9773165522544809","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.93":{"name":"@balena/jellyfish-test-harness","version":"1.1.93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.93","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"710d05a52ee410b00ebfa0eb58abb81a6b878ab5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.93.tgz","fileCount":17,"integrity":"sha512-tMj+7Y7XOKTBZ8ljLMAuBxg61x4BpfmjSwcxoeDSm6S7vkTCY5vTPL8iqfeGynngEDbGCiy8EcfM1HK8y8SLSQ==","signatures":[{"sig":"MEQCIAYOqI92llVl1lr5aF6RkmxKNyGvqilrr8Qeqb5Km+nNAiB+NCy5BUitC/q+P9jfItGBvMFgl5kjC4HqDlKIEtYHBw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgabFACRA9TVsSAnZWagAACN4P/0CzHrwqTyunGo5w3MHB\n76xeHVELgv0JSW9dVh7qs2+DtC+8Rx5Yf9voUNkwnIyRlNvrMuxGUblk673J\nO9+dnP3NxOFtaLVzj0vYa05JvY15rk88E69e9w1nZ4G601rlLiw07j/tBdwO\nYthtmw40tv/9eurNtK31hqIdB1E0WSLaTuvNLYWoSpgfpWSrbDI8/2Rsq2kW\njoNcdGAk5yAWHfHD3POLiWHpwPj+gfDONDSv1brIZjcf9B2/b95wC4EDokhb\nad+I92T/OpuGmgK/TR2MaCGenp8bK1nXZDnBB/pFQ0AgD1bP06ivxxq7olpc\n2ZTjZ434THDntAulixipOYJa/O7VsFckpYte1IPhC36Fli/K1+saOmtmJxOs\nJkTQitL+rshasFuMMPrSkz59XgFAW3lsTVA43kFDaAmsQxLDsTkhTiE8HF6W\naLU9xWC0aJ6PdsohBkglwbta2WJM1xulNNf31WlKG80nmP6nKaKEJXyZ8RF+\nsxC9g1DtHuewNrdlZuqMIMmrVH7EEDHHoY/lm+kg9qHFeJ4ZBGQ2x8LHvSKn\n70lnPEu3IvpJ04msaJeSSBrJSh+MCrxtwRJyI7P/x8iP/OO+QlrclwFehLeh\nWIX+1MBF5o8oNPHRPPQMumjPCXfxmz4PyAlui6+dzKidEPg2wZVw0IdbZ+Mg\nQsiv\r\n=Xm8T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bb2956fdcab9f03e38cb2e6040de88801d2c02c3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.38","@balena/jellyfish-sync":"^5.2.52","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.505","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.36"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.93_1617539392210_0.7295598865557706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.94-renovate-non-major-39d521859aaa42e1a44c416376b9642e558e14aa":{"name":"@balena/jellyfish-test-harness","version":"1.1.94-renovate-non-major-39d521859aaa42e1a44c416376b9642e558e14aa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.94-renovate-non-major-39d521859aaa42e1a44c416376b9642e558e14aa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f0399a3aae35fd9f8067fe39cfeaed84f147c6b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.94-renovate-non-major-39d521859aaa42e1a44c416376b9642e558e14aa.tgz","fileCount":17,"integrity":"sha512-6oHeEGmbLDCfXcIhBnPdJe8gtiBrMzcxnzB3Ijmm6yP7TrsY4IYf/yePrUHR1IoHpLpwX1Tcn1UhwUs94NCMgw==","signatures":[{"sig":"MEQCIB+xjba3GcI/B14+gW8IfKuezHR1OMkr6kOr+iGD36jlAiBS8TeRqe9DxGwq2x8p7Cnfz00kZ9MXvmPbCnTbOktxag==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgamttCRA9TVsSAnZWagAAvJYP/1N2wZbfYgCl19VzZ5uJ\nspucqq67XcY4igqFp4cDpws4TSqrMlaYD8QEh5EalXTxXURXauBsYI/uvIdg\nXFEr/0R/s/KJCMebgxO3gI0xXdFazxbNLuT0ctT7VNObnbW+F85R8J//pExI\n06gfkAvO9l1Zv8W60AA/e0XeAxPJKKZ7vFCwnh9SbwW1Iswa1ZOn1btVCdND\nZLw2HakLpu+C/7BGaAzr+nmgFszhGAW3hpQJC0OFZXjrefwq4BhglL/7God5\neL3xgg7mYh8tH/ts/H1WIkkLXB11Mf3Aktsm7zQUpRFxr3rDmmLalBVcNOTn\nP2lE7pnxsOuL5GXMXD/aef9ZBwAsh8E7CGUxdhAIzB7Psyj2cUS+AmAY+Uls\nFGyF2jTDQuqk+gzL87wy0Wnu+TWAZ/LEJ4b0Lf9pBsskk1exFjvYYOKTPa3g\n270JsmSE0Qo4Z2WNBtGkV7OzMbLd6+yiQM8NMpsGdNlQwkyxzbaxyJOGXTXW\ntgmcgmWyA8/cButlVHpRWXe5Tx2lfIEOpH6PHSGBj9kAdVAaEhs7D39Kcpx2\nuXJG/F5wWRslAy9jtBGTwwp68v+Z2ESc/l70S90IbHaUxbzSbU1jCdLHXH2j\ncu+PX1a2v7IGZNDb8N9By+MK1ghp5jRLgR0+j9ui8RjJEzt9NC7Np3+4Cq47\n1Kb5\r\n=Dxet\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"39d521859aaa42e1a44c416376b9642e558e14aa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.39","@balena/jellyfish-sync":"^5.2.52","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.506","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.94-renovate-non-major-39d521859aaa42e1a44c416376b9642e558e14aa_1617587052857_0.9393240097223652","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.94-renovate-non-major-37e503064a5225c2dde047318df4e8dc2c90d3b7":{"name":"@balena/jellyfish-test-harness","version":"1.1.94-renovate-non-major-37e503064a5225c2dde047318df4e8dc2c90d3b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.94-renovate-non-major-37e503064a5225c2dde047318df4e8dc2c90d3b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b5917c756c7ee888968634d537f5a3a25385ef1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.94-renovate-non-major-37e503064a5225c2dde047318df4e8dc2c90d3b7.tgz","fileCount":17,"integrity":"sha512-eGPCzgLDZSF8e//JierU9BKZtuE3JdUvZoSkIhStQOur9VFomjOqJ5VBhqaISOgXxX0wTTBNb2Rig1Owe90fpA==","signatures":[{"sig":"MEQCIGMtCQI0cfpzfllBLlFgxyQ4dCggpXct5T8QxQn0kYbhAiAojtGYkswFaWdIM/ZPiHDy9kJb3WQ/DJUTjRC1cGe3rg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgamxwCRA9TVsSAnZWagAAxUYP/iakJlsit/KoOtR8zTCQ\nN+8RNY8ni5n6pIeFRaY0jPbhqiHWfflJgpb13kq1H6zqBVOvTYoCjnajoxAr\n1kGpTRmD9hlAQK5bFl4i43W5YfxWZukzyUzOddTN3K+3cGb0fWJIq/OExQnn\ntQNjh0bFGBksGjrVL0fWCDhkI7u0hZwkmd3t1V808viMsWlrlg/Qt4eHTR86\nPx5/Wq/iTVQWHZVB/W/Cne6k9DP/hg7OPlm2gqhtlCnYQk70EtVj/dovfvIb\nr0zyIYo9LL/Il50wGzJcYXPZ7C2i3W2JkFai4Edc6nd0E257DAS7Ymkly7AL\nWn4mK98COwTlvaFzX5ozEcz0JgzrxYIRY09kCC8260R+yuf+aToH5lEDhO5F\n/W+6IQNTaLXldQqLOFIBdanfisdwMJzQ7IpgrqUTyGZOonBeKM5L5lZy+BpN\npctFyhn3mhqhosyGZXU7raa1K16gOGgCYs5VduNIhOvvSXuZznPSEWrYz7mY\nT9WoQIRkjxTSigWeEobRclCADdJ9oVWaBTBhLtC2dvD+apCeQE2SNxbrL/nH\nsBRZG1PqT6x0rDp+BR6eBPDnpdQP3EJUC8RJ9kHpv+YqAxSsauh95aXYn1pn\nNQfcFfij4dMNXfmRz0rsNeqlSDPhLYsJFzKWp/zb8d2u6zKVUjoKlwoEh8MG\nitgr\r\n=l21c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"37e503064a5225c2dde047318df4e8dc2c90d3b7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.39","@balena/jellyfish-sync":"^5.2.53","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.506","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.94-renovate-non-major-37e503064a5225c2dde047318df4e8dc2c90d3b7_1617587312452_0.287485410300264","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.94":{"name":"@balena/jellyfish-test-harness","version":"1.1.94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5798945a3ac3e46388b3ea9b0e59dc4ba59c2d7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.94.tgz","fileCount":17,"integrity":"sha512-TAwH95ZyplYMILjR+M1ou3VDnuh/xnVGd3oq2lsx6njYhV4JGI48gkuO9ibTU53azE3PdmcTGQacOy3kxju7fQ==","signatures":[{"sig":"MEYCIQDyE7dAYuPnD0VTPtq1EgYvRg6hIy1LgXnfzfK5KF7+vgIhAOD6HSsUNugCQhvc3qp4QNOyqRLOB2XqM5mZdq12t+XW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgam0RCRA9TVsSAnZWagAA3x8P/3lco8+WAZr5OrOKh7pS\n3lDfRVdz414/LRIiOHxkLp/+OTxKzkFBtagh8LCk2qSYi61H5Xii9X9bYzQ3\nRjgPWwT2yWGqI8OU9PjqKzC03jDKsUaxiosmSDxdqi3Y7HurxDjaatg6T8uU\nBP+po+mR7dWbr9VdUJWhWeHSYT22ozucPHxfRmwukhVWvOvS86gZ/PyOpccO\nfqwJw1c4cjybCk8520tm0iMefWmWrWxbitFzUWG0TDMs9Lzevm5PPAhCZBh2\n+qCMi4q/B8eC2KT6VhdDUVSrTK3NGW1f2d1Mu40t2fHps1I6jGXwCLGNYoki\nGB5TWX8OoEpcis6e4cgztJOqPZsjsXZHWUHR55BvyK8Ydbno9dD10bckeaba\nDpEnAOUIM3QQLzBOKp20wYB4Z6M0dnw2J2m1v7IEd0wZ+LWlgdAgm62PVTlv\n28QdKxv7Tx3cNruD7qagf8ZL07C0TkYPCuJCQkLPIMuJag/mMhkRsc6JomMw\nRjY5fqdUnuXhHZSQcYR/Nd0zER/PYsqW2mUhFcMrQT2V/+712cNhqHTBY43i\nLb4VLR4KerSeCt+RF6HOoUwqi+csmwl1P/b+77zVxWpkAwM62/D+UiS0Ev80\nYHdj752nPr4pJO9Zpw5oFtw+Gph5IVbBEV/skvPgx8PzxSKrWRihuYwFl0Oe\nJBwl\r\n=cpcx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aebfe4a78c521feb1c55e8f9158f6d974973dbfe","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.39","@balena/jellyfish-sync":"^5.2.53","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.506","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.36"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.94_1617587473201_0.27872201530785734","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.95-renovate-non-major-2489bfc71c26f05fe6479562d6bb0ad20dd66610":{"name":"@balena/jellyfish-test-harness","version":"1.1.95-renovate-non-major-2489bfc71c26f05fe6479562d6bb0ad20dd66610","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.95-renovate-non-major-2489bfc71c26f05fe6479562d6bb0ad20dd66610","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"498edc5838aa34bdb99e81ae3b08c489e78b30b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.95-renovate-non-major-2489bfc71c26f05fe6479562d6bb0ad20dd66610.tgz","fileCount":17,"integrity":"sha512-MaOYKdA0JjH9Mll3tWWPpBa5um0e8LDIG6Ox+j3g+NGndEqIOPfLtyCdlj3TL8/Sb2FnJg0E3e0ban3QJPXwAA==","signatures":[{"sig":"MEQCICVGpEAwcRuRmE2WGgTgpMutaoZKydvnIXNJ5PS8XmcRAiAaG2YkNOMToAi7jNdEfjVzORhlSAsktFMsRZ9sHWz9tA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbGlQCRA9TVsSAnZWagAA7IYP/2+GsTGnD02r1LpF9TZZ\n6hSXMY3QiL0RbtrnEeEyDknOo9x/OD4cjSqjXAsiWvq25eOa06hmkyBnhy3c\nuJjr9H1YkLa3q+5yYr9nw+hDnRj0TR0bOp4exTgBlpZq2y+HjWYW2xvHdj5h\nV96aQ4xHvsbMv61tVn7Tq3T19cfAqWh60UyBd+tPp+JaH0d5NvYtPwqTUxie\nGVYS9+GhtGixRUUQ/ED2cvcxE5vyO8G7BM6nKQ/KAqfRcTZznbmJaF1xuJIJ\nCHAcuEUZu5lsK0bCXHmWKM82wyVoof6Du9rRgrHF8yYGJJh/QedjI4DvHS/x\nu+YT1rwX1KqrVr+2XUa2Mr9PhirXOdIv74/kPK8O8VoVRIYX9Q1Zcq+dR6A8\nhuNrNqpStpY6ByS1DgEhJ4svl0p+tN9tyjOFoCXPls9+DBO9Pdt5V1e1QN+Z\ni9SojkuU80tybkJtucxwFaSNwNgmbULOSZB7DeaWjMCSi6cllOkV5efgsiot\nE8PVXQFTlxLm02WQSCsQAaXrbdO5DWKzOUgHJ2yPrGeo9GJ5VXYqWGz1A7T0\nRvoh7kqE58DkL+zeKIKRAo82XyiYtEiG7crS9sJkeTvqp8R6vZg0FAceS02C\n5n0rqaI60HJDAO5zjQM2fttgankhnzxuE6cPsAy7S4vUeTGT8STm2KSiIxIN\najhp\r\n=L/MO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2489bfc71c26f05fe6479562d6bb0ad20dd66610","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.54","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.506","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.95-renovate-non-major-2489bfc71c26f05fe6479562d6bb0ad20dd66610_1617717583885_0.10401947554272972","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.95-renovate-non-major-5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6":{"name":"@balena/jellyfish-test-harness","version":"1.1.95-renovate-non-major-5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.95-renovate-non-major-5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddf5140bf0112c45e975229e30d48a7061517745","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.95-renovate-non-major-5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6.tgz","fileCount":17,"integrity":"sha512-l7Uj5lUW2icioymlcKqijFAvQa6AYsAVIpnFZ2YlF3kYqMSHBsg278PZHzA7xV99ycqhKju4BrosRs8cOJiI5Q==","signatures":[{"sig":"MEUCIQDqLSoq87LnUMqj8vMhrDC2pwTztbv1i+/FM8iS77Ye6wIgTtDzOid3V1QeEVH3ORZoL6pv9o7qxUGa9RsDHOp/8YI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbHpLCRA9TVsSAnZWagAAxowP/1GPv7XlYZgAI5cV2oyt\n+++uFCWHkJgH2IL9gGuir1OANBdHeoRrZJRHCveCO+gxiUMJQ23UxrGhmKPF\ncMCC2mIRowMWJLnYhZkafw8mH1Gx5yMKV67Mgpruh1vRziwGVoO1L5pzj2UK\nSVOTpi2aqJb72IzAlE4yLD7MvAUpk8rgsswgB9x+nDnWpqFiaizD+Mk44KpT\nyeT/oSSjRV6ZYzoKSLIUzt7zA1Mw3aQ/UeCbM0yN85vr+HqSqs1erpaKAOTF\nDk0wlBv2Ymdx32g3uC8wUfnH4YBgwfdkpnQg82Sr1KIq2UaAuhn+YQyoBD6H\nP8lXYHZddySY6pGjyKy0XkPTOW2cvTymmF+UnAlsbFzdMzR/R/NiSylWSYec\nSLDxGq4JVHpjs5FSrV8OItW+R7nhj9J8goWGv6unJV5/ozS7ca5PdWMrFTXA\nO/pFObZL4mExb7z1zp0Sg78wZOSt3vsOEuZVIVzU6+pm/UY075RdbVZSze25\n6/mbD5iZdcy5iRIrbN+98HmVv95/9ZMDnzreV1wZUGgHiuwV91kZXnbEGe7q\n7Miqtf9le1gmbBMw4YLWmNcdVmva8cixmiGuTZbRZkl9PsqHf+uYe4kqJK3y\nbmkKPYYJYgRafaRet+WUiivhNP3tHnOPNtci/e+2A0vYPRHO7x3SSBzUg8ZG\nwlop\r\n=elU/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.507","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.95-renovate-non-major-5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6_1617721931279_0.24970874636453955","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.95-renovate-balena-jellyfish-worker-4-x-bbf5a5303c1bb4b86f738617e58c70d0114b6771":{"name":"@balena/jellyfish-test-harness","version":"1.1.95-renovate-balena-jellyfish-worker-4-x-bbf5a5303c1bb4b86f738617e58c70d0114b6771","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.95-renovate-balena-jellyfish-worker-4-x-bbf5a5303c1bb4b86f738617e58c70d0114b6771","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33d0fc5221e114fa7fe119b22c96cb2fbf83c540","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.95-renovate-balena-jellyfish-worker-4-x-bbf5a5303c1bb4b86f738617e58c70d0114b6771.tgz","fileCount":17,"integrity":"sha512-s6ZxJlAgI8qJAqwa/e87/G0sPukZCy48cIM6I8mAuJQjdOTGHR+G5Fxb/7hF6XRqgB41yqhbcmqf2324VAlFLw==","signatures":[{"sig":"MEYCIQCUnEvDNYfUmVmED9uKIL+Q9+o560COVngRhgkxHckLMQIhAKWOK9bmxdGaNbZD2qyqld9N9NlGdNCcnDUcQ8YxLr9I","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47214,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbHqWCRA9TVsSAnZWagAAEksQAIPNv5Fn/F/q2s2bln2c\n3iX1stVqY2VtbIplH5Yo+3jj4gLqcyGS8iKG/ZbbZkTmdx48qQEQC8iZUW/a\nO0gQha8Um5Jg0+2jQ2I+hz7n1eq1Hrqcxrqn/FWnHJl4VfQIpFVNn/fXtXtG\nxNs7oGWYzW62Tbc+JaiemYth9bL7nk7xWLtQTQd2+orL0QY3mHpAd6zoicb1\n+smL+g+D73aJMwHHec7GrtsZkbI9EvjJY6S+7Dne3mWp/sy9cEtTekA38luz\nrakYZBK3IX6gIeFsDd+OtXSWUYNcT9WB/EsH7PFSxUGtRo7Ed5aHd3bou3Xb\niK38wmumZbzs8OpBm8yvPXIB2sw306G8TWiLYIP6S8EWTcJZjQIfd8wh5cVy\nXF3b2kDW+5WfUFhjOTTG8vzAmHYgF3nrbYjHqJGAEObpHO8OH0f3ePLPp6Rc\nVKOw6YUk1pJLT3OQ4bhfc+IcMCuAf9SMQ/GLKYaezdcyYuxainD4MSXoVo4P\npx5QWh0pD7Z+TiLDjeTrNJ+GOfHvsKlbeLAw1bjZ7eDArTy/hgoMbX0JJLHR\n9lPNfvAAV1mJ3XCvxqVhim+8FITKMtW8axbozKzroD7y770F9+HUoBtM5WEw\n26SCFLJQROeGUj1Z5zfETmW8aK1wiZRV29xqoLX86ewCd7e197UShpQgTL91\nmJhz\r\n=pBXt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bbf5a5303c1bb4b86f738617e58c70d0114b6771","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.39","@balena/jellyfish-sync":"^5.2.53","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.506","@balena/jellyfish-worker":"^4.0.2","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.95-renovate-balena-jellyfish-worker-4-x-bbf5a5303c1bb4b86f738617e58c70d0114b6771_1617722006024_0.7491427770448755","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.95":{"name":"@balena/jellyfish-test-harness","version":"1.1.95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9bab3bee27856d92ab092c8ea6e87ec636fc6038","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.95.tgz","fileCount":17,"integrity":"sha512-nhDAZDselAC0eppYf04YgmJay+/0Y3lWG/j6IjigVaSe+fD4nB7KPD+diV9aBV78U1IVRF17XKYSD1fhMB8HLw==","signatures":[{"sig":"MEYCIQDwAR0y6olfkGth8QJ3kOc1LjCug9NSn8v7HWDbyl6oIQIhAOUa98LZif+Y5rFBLmBGrQI1hABLyIY1uegFOs2cS9XF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47105,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbHsPCRA9TVsSAnZWagAA5lAQAI3/MXMSGJd81AsBrGAP\nPIQGT665o/Gby2AOoQCPA+ObbwMKoFwDU81Rm/L4fnjX13ssPC1heM2U9QIU\nLl+awXjvut84vH+Tt6VeJopV6TbvL7hC8QeYaMEiD3MOw2rzpLKSa3Ung193\nSw1RfscTAXfd9lgaZJEl0YCCdilG15qm1lGFUumBi7WxS/jQ4G1saIHI1NY9\nzUflyfPTMciNZAohrHAq1gtMrGEQfqPnKFRU93DwA2dF7XXhQLYhiICc3HP1\ngd1uQFBDcTdAxnapvYmJAXoxdP+M4DdviwGWEjintAtAWjzt56siS/eOFobe\n2vmEgchD8rgA2DWJ2bfhKWaH3JDUWI3faHuPssLXkPQil2Dcdh2j6cijnKu4\n8UBVR0Km28bcsik1Ov14rSq9uLHsrVqeajf39822Pi9yQLiEcYolcEl6Trmr\nnBayfRAQZj3+pCp1pQ4bvEI8g9pqzETj9fSCUmLStNJ1OQD3KidKDSk33y4L\nLjBDUL4RKlJNtVA4eMjCtUfs0sjB7a/rO7/9A6a6NTJexrTlvBtbQ/K0NKBJ\nqkC+fVdNfDISHHfBtv0yydhH6k5ChGcro9fiZMinP0UNJBd28BtW6ctmfZO3\nrskJU6UpV0FiyKnBgQhg1h78c5yLOsQb6YJreKxxKHLei4aRNHEwCkIlwh8S\nTtEs\r\n=Q0km\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cee4516ba6dcef329be70e82454fa84adc47d39c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.507","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.37"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.95_1617722127223_0.5721286374066477","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.96-renovate-balena-jellyfish-worker-4-x-fec3fff06c416f5195e7512582ae44a9bd96f55d":{"name":"@balena/jellyfish-test-harness","version":"1.1.96-renovate-balena-jellyfish-worker-4-x-fec3fff06c416f5195e7512582ae44a9bd96f55d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.96-renovate-balena-jellyfish-worker-4-x-fec3fff06c416f5195e7512582ae44a9bd96f55d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39ccaff21aed604414fbf53a132ad39f802b948b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.96-renovate-balena-jellyfish-worker-4-x-fec3fff06c416f5195e7512582ae44a9bd96f55d.tgz","fileCount":17,"integrity":"sha512-txEW0ZsJzlIK+P0JFyI4UFrgsiopTyxxhM/XzGP7YsvKJYRF0sDH3BE4iS0SER79ejW7CvTrMNKIEqNZImG7ZQ==","signatures":[{"sig":"MEYCIQDSLzM4PAvCjntEcjqlYKe2/x1twrUES+QJxP4kXIYTygIhAMzJ69uELOefL3+sViDJ3ps4WgUTRss/13pAdDk4WFtS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbHxiCRA9TVsSAnZWagAAKtQP/AtSn9DK6hCpmWCmmIFi\nCy3ohpi/SEXu/dI4IFsBUmPa4kbcrjp1hkwvhBAgQzKiEVSXifk+HVYfvDgi\nrOgVfUKconyIK2PYZdJLmQgCc3hR4rlSTGOwWbpX3TmGpt/0+dN3MUz7haOn\niyI1rJLabaUYyYbuM/OmByEfSMbgHOwV2sBWXoFx76tzawDrevR/pzH4+Kiq\nZPRNryE/4qkwvUXnxN9hWPUvp2T9i2F6J0TTukJGWVwq+GWEzXgI4F8nAn7j\nDw9ssOCgSZERsLx1iaLSD4GnXOYOQUzt7T86xgfS3leY7bHww1nzalEWZgvX\nQTyg3MsCFgBKHcGCxyLaZsJJMgHx1l0U1xvGawB3KFQg88N555NK8KZqd6EV\npRHCGlrJIKD/E12UQherQGiUzRebXSuODAFzGdici4ur4M13w9dU3o5EarPm\nEfpeB3X5GLXLnRmkV7+6FQmTcFE3kIzZy1irz30RdhJkva/u7x6cb8cfudWb\ntbZV+GtPgo3fwlapf3nFteoStvJ2ioOT/lSaM2x22el0CB+3e1SrdszVwyDO\n9j7SGm006cluQ7i/dbpiGw4HK1cewyxmurqpAOPnuOIfJyOGD0evfZv+AlkC\ndoi9eAtEvW2vXldHfNpxbczyS0415CHhoUHx8GOh5UX5e7QzKDDDyWD4V08o\n2KTj\r\n=MVP5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fec3fff06c416f5195e7512582ae44a9bd96f55d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.507","@balena/jellyfish-worker":"^4.0.2","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.96-renovate-balena-jellyfish-worker-4-x-fec3fff06c416f5195e7512582ae44a9bd96f55d_1617722465904_0.16270829199561643","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.96-renovate-non-major-5074b4482d3dab3de66cdc4710133802dd94f5c5":{"name":"@balena/jellyfish-test-harness","version":"1.1.96-renovate-non-major-5074b4482d3dab3de66cdc4710133802dd94f5c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.96-renovate-non-major-5074b4482d3dab3de66cdc4710133802dd94f5c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a20bb662140cc1bed6cebe2ab8fb3c7113b4c22","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.96-renovate-non-major-5074b4482d3dab3de66cdc4710133802dd94f5c5.tgz","fileCount":17,"integrity":"sha512-FpXwF1rGUp8BfTJXTumChXoin9ksFJtP2PtpPrlz/5yZIF3eH2i37jtPUif0Ymd4ckWTBy0aFBeHHRdibhiqNg==","signatures":[{"sig":"MEUCIQCiXncrOxDvXdJov2oniaUfc+2mbeko1la6om2BuMTsxwIgZ0wChPiHPIo/W4jk4nTERgzSzRkQ4UT864f/qLuNtgo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47234,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbJmeCRA9TVsSAnZWagAAT8sP+wdKldXTYitzK0/sE5Vp\nBxsK6F19huviZUpnsQNt90G17/nK1gw3hJ+t9V4OHBdk1MkyT6GoECWO9bDx\nwS4m7jYQMbRVb284tDWQGrvTsWjnOJ/Xe7K6ZkuBJv2jOGTRpRveQD3qkC+i\nwJIAoFM/m4k3ZbShmXx9+odO81kZwgbteYW70/BkGC6lgcWuNMl1Qcvrlxoz\nZloYLDh8B/0Vfddb3xkhc5dPssQXY/cx15Vm/FVLtJhOrATFmyxixwVd/Nfd\ng/BiYv2LHlOxc9K7iKQsuft8wcul9US+a7/9mryKoGhvs5+7V1dcyc4MQchw\nWixdxUfGseVSKzNj57+X1Ig1OLhGqIv4dJaqRMLLGkRnw6ZRDzC7ggyNuCp5\n8cjiGu1RvoFjZqCmpFnUtixJLa8wI2e2s9Nb7dBIqyesDuSnJfM6cBQytjs7\n8Ho+NKUS6dm0ASPtqUAAK0mfkguWHLYWxhAe5mw6lUc2syzOv1ZiLoAKECrS\nuhJrFQoz8vhO0MVyKDfd1LRct6nJ1doq72R3ujqHGzW8xgkkGNyqvLLJTD/7\nw/YDSJKPYyy3TZGH9CRd6oMzLsJKl7iw4U5dgRCtZ5isVoAI5wgWvWplnwdK\nyCVl+m2GfdKv1NjikKg0d8vf/QGjb9L/g/USu89u2tXz4+jrVmIGnf7M+Cac\nQ7Dv\r\n=IiuW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5074b4482d3dab3de66cdc4710133802dd94f5c5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.508","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.96-renovate-non-major-5074b4482d3dab3de66cdc4710133802dd94f5c5_1617729949703_0.7007718637357614","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.96":{"name":"@balena/jellyfish-test-harness","version":"1.1.96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.96","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae558a82eeca7028bfc25894efe29a838877ef80","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.96.tgz","fileCount":17,"integrity":"sha512-V+TqFr6Cfyv3B0WnIdr6Fik7nmMwPvsrvHEkp9C8AgN77r08tFrjZXfjkbRdlpi4FQG/LVAXAuNanMWWSoe+6w==","signatures":[{"sig":"MEUCIQC/otv97WH0S4t67QiA0l1VTr/ZbfDyaLvCcEFI+JSOkwIgcJH1jnII7CzN+u+fsIZwPLObAmVIeZsWFK6n3yln22U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbJpqCRA9TVsSAnZWagAAEioP/10WDxscYj2774ldWb9q\njvJPUGVdH8h1CymOOh+dhYo8R3ikQEp+fVNQCED8HYOy9aJmvDHxYFDAwddZ\nleXmAlev8w3sDq+4UAIvD1stYfJ77rXSUFX2AY9LPhp6Pj4fcAJnji+GmPCv\nBjhRWn7WIqm3eqhlxLl/ewbQ8LoGvrXJBVhoP3WTCAgHY8VVxOzHc89Fo94V\nJgECkY7Me1hM4TN2oyO5u+MhJUZ41tDdXc27MTtPFwPiUxtOic5Ag8ZFSeEG\ntK8G2dtZicJNvmBbs4cHJjEgbAn7F69RWd1pK7fc4IDRS9eG2nWvRCkZAL42\ng2z6X1t7cDjGYJWZSF+jonbUF30922W4hexFa8bqsPpv4dPgsTBr6yldOS6s\n3MF/fJM+IMw9SJ2G11/YW0fIt5230HNo/PGJZxIAl06TgPxZPQniH4ckz611\nax1Kfb3ctqKbkLWz/cpzpHQP0v6A7Vtoqhyp6L8pjciD6+BwbRoda36BrDde\nYBxIR20fCPCiVkq3mzDZl4cH6WtzN3C6DOVVbuS8pfLB07pzUtPcL3t2uSmd\nBvwTsyLbSVfHaYRyvCw+x5MOkc0dFL6AP8hqJA2nYEnWH6WKGtHYzEXDf9h+\n7+3GkEtkPoOXcGSQKJfn7/h4I5/UYmHa/6zkG2w5v7do8ygaqDIUcXOQARWk\nkrLl\r\n=JmoK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aeb837262498b4ccfdad6f398879066f88b6e000","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.508","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.96_1617730153713_0.5910459732010425","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.97-renovate-balena-jellyfish-worker-4-x-13bd70744238e9353364dac3a0c4cfffda42ab1f":{"name":"@balena/jellyfish-test-harness","version":"1.1.97-renovate-balena-jellyfish-worker-4-x-13bd70744238e9353364dac3a0c4cfffda42ab1f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.97-renovate-balena-jellyfish-worker-4-x-13bd70744238e9353364dac3a0c4cfffda42ab1f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7bea401ac37a7147f8a0c176b60f0a3a106dad0b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.97-renovate-balena-jellyfish-worker-4-x-13bd70744238e9353364dac3a0c4cfffda42ab1f.tgz","fileCount":17,"integrity":"sha512-EVvpMbUfW23ZuIDW9ytzkii7XRAo9vblEJwynaWNKUCvYczBkySrGek00LG0x0VFgLDFTctBT/MHpRwC+DI+gw==","signatures":[{"sig":"MEYCIQD9mX7dSS50xTZXE0wl+m0dClzlTBsDnSiuFTRoFPmLbwIhAP7HQJlkQpkOQefwcaxBb5HJsLKVBKGtKGmIe4e2r4bx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47352,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbJtFCRA9TVsSAnZWagAADMEP/0r6YYPKLiJO00c1Awdz\nRwZdoT52MqBpZnn/THvAXWAQrJLWRZcjBtp/qT0Et2VkiJAjnrGRVkboN0Sq\nyN0mkyDiZG1R7GzrhcrnsT3YKCYQOBjWH9l4XvfVxqV/mdzcfRch5i+cwglG\nmchHWZo0eEfatWt01f70Wn8BLu4o7tE6YDyKHJd0f9HRK1wWvz57Q34JVwqO\nT29zJIQe1QLSvG2HisZBeuU6BzcJ2ALKjf2eIA9g0IZ7c+zDkbfu2DkDOlT4\ndYOb3S6P0zDSSTyyfPgL/66oneYMEmVrmXu82NOnwHto6gfCHuJ5BZ2SUqpO\nGX0EjVB++pa6IXZZNxgzyLSPVPsacm4NwPrnUiIubhynyfwHDfBbA3UCwam2\nYEjWeK3mFd2vMF06EeVVIGcKyWBIdOIER2JANNAanG0WfBPqGBAF4LHoWh6U\ncUdGUG+20+4cbFcHGTqFK/n/6KCjai9z9G7nqDWbaYvxNMJPZdhyi7OCA7Vi\nOX3LPaTYzYeXDKSbfIALdtfPRQt+hFyienO8510VvS1oj4cOKbsQm55eUfYa\nDnpJf4qBB5SIjomYy0hX/EfXdwU1h6k5oMkseSJvBZwBmrz6rLP2BeEhlomP\nh/KT3mSFwz+6d9D/HmhFyZfdwiuQrNbv8mlj9fhlmIpY7jAmmALDWHRvfHs6\nFhE9\r\n=tnh7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"13bd70744238e9353364dac3a0c4cfffda42ab1f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.508","@balena/jellyfish-worker":"^4.0.2","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.97-renovate-balena-jellyfish-worker-4-x-13bd70744238e9353364dac3a0c4cfffda42ab1f_1617730373235_0.21274681367847337","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.97-renovate-non-major-9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc":{"name":"@balena/jellyfish-test-harness","version":"1.1.97-renovate-non-major-9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.97-renovate-non-major-9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8fa345d5866539974707337f94e3375d3a4c8667","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.97-renovate-non-major-9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc.tgz","fileCount":17,"integrity":"sha512-rZeG6uIR2ixdfUonoEgRP+jU2n9ZJSBD+0MJQ6TGpEzndMpQJ6CWVru2yVkLfTKqeR4U6hxZuqbWQ4d80KQ6JA==","signatures":[{"sig":"MEYCIQDYoeWXrRW6JxhlGBLOpwQxollHyZKLDIRrWmBOuHv3zgIhAJX4I/+JznRLaSF12OhOUQS2Z21t27C/pfRzKS3fQVqL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbKcICRA9TVsSAnZWagAAtmUP/2GUBA8PksvdmbrPYe1w\nWTGUvmnITfNO8UZiUW68I9xRei56MLMci4t3kuq0W0V9mlNLHL0D7sBsa0sO\neq9AErMktTsdqdT8VODVjqtptoZKC61ibrIQZkXX830jtsciQVINh0u+U7ND\n7ma1Ukf2cggAjGa0rq902DpN/LglfuQYpKd1kdxd/myQLSglfLvznwY3nXjh\nfnin9Ha6JLt6YWkB9vHpuoPyOL57bpLfPnq1TwaJVZUtZRluMD3J0fL1C+Lr\ndFUo6y7eUM8DRTdK0YGJ9ByJ1CScrc0NB5AzQ5029bM9/CFSYnMQhnDlh71P\nO/DKcIZ7OWfInMO5Qc5WpjguxN7W3h8ah/jxyvRmphCbOyE3V0MjXTjL9ROG\nRFpCKW82U04DZxJTmpYKE4MaL5eRw06iDF423ct1C54ujW+u5bvS9PNMVggu\nTgMQLRfZp+pAAukvLq89DMh5RkJoMpx3ftGuBQMs6jRxkolr8wqplq4twstz\nQJviV7Al3qjRp2cWEW/SNSPQj6IMcXjto9caAF/2ARk6JqSNc604u8pMEXue\nca1syI4PpX482aDDfMl0NHM6NHilInQoALGJdlLqn7B+8bKes+hMhG4rfcg9\nFlL/UT3fSAqsTIPCfocc2CdXy0NJLAbkvNGWRQmpDEHe4Cf8BOWC29ORb3NS\nFNy8\r\n=Wa9N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.97-renovate-non-major-9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc_1617733383815_0.6436066720338673","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.97-renovate-balena-jellyfish-worker-4-x-ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51":{"name":"@balena/jellyfish-test-harness","version":"1.1.97-renovate-balena-jellyfish-worker-4-x-ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.97-renovate-balena-jellyfish-worker-4-x-ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4478be8c23c71fb4da26b6adebb0a18c326f1874","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.97-renovate-balena-jellyfish-worker-4-x-ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51.tgz","fileCount":17,"integrity":"sha512-KG8hYqulqE5sODmMEpDt/FbfTFwDl8lpfi6V1JnJlzw/1LgN26OJgZouwApuxuv9TsOl3Iv95z4/w9PtRyASnQ==","signatures":[{"sig":"MEUCIQCms8GjjuIXeDwsOX6TupEj2lVjYMFKvff3i8ChoNGLqgIgEpdl1vg+FYh5RoXh+1lymyzcYoqOwge68KF7sT2zcHE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47352,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbKdQCRA9TVsSAnZWagAAjjkQAIFmN1pa98+kfrUEtOUT\nbFGsm/tVG+EtLRt7zqd+nKEhNLA/OYZqNZRi1U14g4cFMA6Sci5EJtgj+1aB\nm81Kyy8LjERdeat5gQ7lQbIL3tueSkGyMR8IrbDNv/zXKbaU+d3PgX9eVk6d\nLO+Tj1Fw13Y+TeFT5mkfPdShwQokQJXfUQRn2uONa/sXbHR1+e52XxzB2zbL\nV7w3MFNKSV/IKphecoBxiTzTGD4AnLR4Bc2eVGcHF6bCD40p6FVaRFeLkydv\nXJ4kz9GpJsqdzec6q8A2+W53r8OGY2v3XI1Yak71+HlgV0emmbQ+ULb2dAHy\nk/HSW8Kpx0li/10ATjH6LLPIYPhmIRkGx63dsv5h25E21Gs+seZdNO91P6pS\n3iw1HfhBGIpw4lVHhBTCNxm1VcBbEGhJEuQiRuWTOKBBSQQUD5eZQ8Q0Ktvd\nrfuQ0lJAMvBxaLyJXjE5dvd2tdKCvGz87Ji//KBCBBWAnOnGh+WvkerBg7zB\n++YdWzfaWnhFydURX0UttokiWEWQn4X3qFemAIg4NFhuiZFMVpMejeFAlzaG\nQ9Sus6mwyWq1eoidQezlIA/fZ+Z1N0nNoIcEPbio2m+u1cYAoUGd6GX50mUq\nknTvZZyZzB2wdPA/xSdkMULGF8dJNUp/Z5rVz5zA+t46K8V6tD67C4P4rOZs\njU2X\r\n=EGHM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.40","@balena/jellyfish-sync":"^5.2.55","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.508","@balena/jellyfish-worker":"^4.0.3","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.97-renovate-balena-jellyfish-worker-4-x-ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51_1617733456150_0.6819836991452075","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.97":{"name":"@balena/jellyfish-test-harness","version":"1.1.97","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.97","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eef3c16eae70da39f7a0ea198c8037d59d51f346","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.97.tgz","fileCount":17,"integrity":"sha512-UwhF5pA/YdQ9ssIZ61hne0IDgNpb2KF1ilDLmQfk+q1aJBF7NBgrTfp0HciTXPrhsqS6QxP/9Kt3PE7PvO7vpA==","signatures":[{"sig":"MEUCIEiWvpMc1fDMr0Gqyu/7nl0Fw3QQnnc7EKcoLYQMwKHBAiEAjYxKqKv6irMLC/fawPOY4iLTi75ZkefwGVMQWNtscxE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbKfRCRA9TVsSAnZWagAA7N8QAIUYpDsSWz/E62ogXxSa\nZyclsp86kUoojeeWWw8lCnxuUpaInKvZHdu6iSIYcUviw+1c6tWsfoPdgJny\nX2t5aCc4eAR8xlsp5CF4BHK6Y411z1zG25QnYQ1kIz1ZiRRVbSIcqFYVBb5r\nSVbkknCxM05NogTXQZ59SSQpNI7Nt1Jcbp6E6j5sya359uTOCCeWMH9k3xlQ\nZGc6RjKMhSGWAVM+0lvFmpejf3opwoMDbrxqfgAXsSJRV2p6yRyEP3GhSVDU\nQlyJ0Gw1MMtaYVFJB3m/GxqcshgHQ4gM7jZPCHvJDxqwZ9g/8W1kS1Dl5s/U\nDemqZIyulzqgrT5yrBIXBX3ozS6ltXw4eK1ybVXPZQ8mUUNmZ8laSJWRZwUz\njY626yZZBmunoxn9jUptGgXDG75GmDwezrMmoDhHddTSE4pu+OdCXb34Oon4\ni8vsMuro59IXugxfucsuz7oXJpXm8UHkoVKdqvIIv6NT3umyqx7XlIWCP83o\ncTe2+Vuxk2VF55x0/y4F01HZTqnBdF/X5LE4Emo1PaoifmCgtvrko/hwyJzv\nk+TOqoayA4ER3WDUOG5OLN74ZxFfzpvdWxDBGV18FtFAj4eYLKU3Zk1IEQec\nAm2N60SE5ZZMsTJHmvZX9qJf3VQ0f0IUmmRS0XblcKQbPqdHTAe9UeMWwmBL\n73P7\r\n=i7nD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1354179cb9b60af6517dc1992bca8051b9856bdf","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.97_1617733585347_0.5946187436367323","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.98-renovate-balena-jellyfish-worker-4-x-27b03b501c0a0a03e173f6726db15e8b778d0190":{"name":"@balena/jellyfish-test-harness","version":"1.1.98-renovate-balena-jellyfish-worker-4-x-27b03b501c0a0a03e173f6726db15e8b778d0190","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.98-renovate-balena-jellyfish-worker-4-x-27b03b501c0a0a03e173f6726db15e8b778d0190","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad333cf2db49cbe59fcce84cc3d700f7290ee5ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.98-renovate-balena-jellyfish-worker-4-x-27b03b501c0a0a03e173f6726db15e8b778d0190.tgz","fileCount":17,"integrity":"sha512-brRg+TgRAQkgdc9M0UQPuPB7pFiLFL/XVK5SuN/Zt+eMMI+lcEgKiCm2xV1/P5dlRyKm795P88g4k1nhd3KUlw==","signatures":[{"sig":"MEYCIQCKqVxKj31XkocuuH73oeaddgSP6SzksdohDjFiqZ6mOgIhAJG0ABw89u8FnzxK05dHSjccjsZbAnFAuN5MoROuheXi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbKjKCRA9TVsSAnZWagAAyIcP/06EmwDdA4Dqxm9O/aHG\n7IQUkQfZvK3nOBrDG5JIsLgf6zH1sRtlgH2qov63iMkSBkzd75KZHqaZv9B6\nBWRgk3aPnlVUtzf0itr3YnUnz8JBI1sGArSgAxi+FPV0xpg3pev8bORurHeq\nnHVLUufsUxX1wo9P61du8pRIoCyB9u8I0fDp4jYtN7IVjtPpg/Q3T0YL3TiY\n3Tc3w+IBj42jnIksvA6ok/j1JCOZiXZ2a3f0/RNEVbWY/em3tgqVKGXPzyrP\n2Ep8GdNBTIRGIJvGo9kAzdcx1d2cYGspNxRnbhfNk8OXhoBJbQOUA1JzeEtG\n+6sGQsbn+wy90wxD+93eZoUKBjFdXMH+lOi1VoNJSrIk0g4+CNLFB9+05YUt\nIxpEgkyjrclC78gaYxnPneUQjVl9PaZjJRGAjD1u8YuBC4fxhUmaEl2qyBRg\nekJ6MXlrkJ19+3iWcwh/jhIn34bDKYJ+tfYCwxSttVXfwlGY+dJO221KXy/e\nPnH6tyEKVYvsYAUJEIm8xVXj9FeXzNueYVpnOTV5IB3Mv6biouSZdpNBXnGC\nLN/zMCu+6a8AYUH85xSki4Zgeul95o3oXyz0RRQMLDhXxcCMKlOkXc47t0Mw\nayhRL5TgD5Y3cC2/vmQvtx4PcqNHHSXL6kATfGHvxLjuhvBOR11eMGO1EUWf\nRmnR\r\n=DWPH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"27b03b501c0a0a03e173f6726db15e8b778d0190","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^4.0.3","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.98-renovate-balena-jellyfish-worker-4-x-27b03b501c0a0a03e173f6726db15e8b778d0190_1617733833971_0.5528695193022757","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.98-renovate-non-major-94a6a3ea6592a7997a532852ea4483315833df02":{"name":"@balena/jellyfish-test-harness","version":"1.1.98-renovate-non-major-94a6a3ea6592a7997a532852ea4483315833df02","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.98-renovate-non-major-94a6a3ea6592a7997a532852ea4483315833df02","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a71f9df0f32d8d401f2934f15ffd26b4e913c2bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.98-renovate-non-major-94a6a3ea6592a7997a532852ea4483315833df02.tgz","fileCount":17,"integrity":"sha512-S1O0uBdH4ShVvdtx11jGTcwyyNbyQv8Ep+RkP8p1evlQeu+/mCC+RaLxqk0EUm3a7li4KFRn1sZbzdJQEUR6+Q==","signatures":[{"sig":"MEUCIElnNRbgt2lQ2pZIr0ugDiWco1Qo7TvyrQmFruQSs+aWAiEA4maV9EvA+UNGykZuSQS23U9SgVuJJNBrtPzW25UXpDw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbLaWCRA9TVsSAnZWagAAtGgP/0banCN9Kt/Ji+PcmaM4\nPU5Jmz5poxpuq2oCjaKkRWX6H+lFO1v+uJi2DYrEW1MLD9zARv24rihxG4Vh\nSk3nhIThOTfjRyreJRXEfD/NQXFecDClunu8+HK0JHZU2svuZq8iNTf5g989\nEE6+k5rzRLlXwmKBUSuN0ZOesCjSXAb3fmjwmZbZTf+l28W3aKlbqm2IQUPO\nsLF/1ceRfYL/xQz21jIOiWL8B9Qs9bHbyDIfQm26c1nsHs/8tXVONGZIg/eT\nueO/2ObdIYCNTV6q04mCueV4y+2peqhuNJtH33C2jbcEUjWOx46gf3LOKeYr\n/9M3aKtjyrmgfhoqVEgVFPEJbyHM4wEe9FhISkV0p/Upq+hn7Xbu/Aevoxg5\n/sM1NXe5arPYXHtAlxqRqJU6lZG1nGv88m/ioKFR89+N/u3ClQkGB8FzIpCb\nnIUTbfGwwfrlmtzlCxnf7II7/2nfLh8YA2luPN1NI8fqNWFzLoM1LySILyLP\nJvt+HgWd9ZzHrZPsLUD28gV4LAoYmdlsSTFZ4OSWuttrt1+v/CxmCiWCCq+L\n4cYJNIooesWyX6WB1KHK7oSvoSvqVl3SDlftMPKXZ5aXs5evSsCkgYweIOv5\nlYkI3JJ3fQvd7gMxWwtWbD0K9eSAMyS2wOb1v+uZBth/Fg2yjyPAfSFjcrHr\nhh5V\r\n=JNnq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"94a6a3ea6592a7997a532852ea4483315833df02","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.98-renovate-non-major-94a6a3ea6592a7997a532852ea4483315833df02_1617737365446_0.012854368204477717","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.98-renovate-balena-jellyfish-worker-4-x-21335dc3b981a1a1fb5af44c2c2491cb88292175":{"name":"@balena/jellyfish-test-harness","version":"1.1.98-renovate-balena-jellyfish-worker-4-x-21335dc3b981a1a1fb5af44c2c2491cb88292175","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.98-renovate-balena-jellyfish-worker-4-x-21335dc3b981a1a1fb5af44c2c2491cb88292175","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f64da7a8d8b555505f861cbb7578b778553e1aa4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.98-renovate-balena-jellyfish-worker-4-x-21335dc3b981a1a1fb5af44c2c2491cb88292175.tgz","fileCount":17,"integrity":"sha512-kogwpf2DQOVFimzc8y81vOREo8mR3Sp64iz2954cyfWU9X7VZrOgWmUDP234Rt2psLvmcYoxTL75CZHEthhFjg==","signatures":[{"sig":"MEUCIF5U+V7u6x3Uc5hzth/Pc/tiaUWWbS5Lq7iFlJa+8pLrAiEAzxq0NVwA8cC2qkncpJXGVY4lnwr7h5MFJ56hTJUOULA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbLbqCRA9TVsSAnZWagAAahwP/0VkafyU2O9RyfdouCaf\n0QF6/gvHZP1aTEHwa3YaqSZ/lKojCpkvOuD9zxn1WwfAyXSrbAR59zQu8sjN\nWFO7D1bA7IkPRa5Jc4119SyLqu4ZkzQ/qQk1qAo+UKQ9+qN3n/xJEAjMaL/f\n7E4dmrbV4PhIvaGu0Rtqh9DYPtBMNV5koBJzSY44/JhAO4mcguXpmkNWWzvW\nkopRegNLUmPiVMz062OVHxM4zISCPRBEije21nnXYkdannjZ0sAsDtLpDUef\nUtAuRHXl3rHIwzmfAfpUJVuVNIVgdeNvuACrsPojTHdKsf6KgEAXyPnE7XOF\nVUiPLkOhC1mAYfuxo3MY7uXH8fBCGZpBxwdiuIpTyH7p9iGAJkay2oeeOdbr\n7GX4ALmwAubyo26s/0XhcIxfrAQkDUDKfwQDDmooueEnvK7KJ2ebxxPk+DHy\n7tDBqR1ZE+McFRlCpx0xZ4Quvz0Tt2LbJrXqUGcULDARdCVlbOzYb1svQCaQ\nzVIHovOGWYFTt5RNmKzkAcFggVnXIksoEmQL7OScM8KmT+ufkkmPsAD/g5fz\nyjn7ymQE/GOT3Bl2RonWB63m4xVWsO5Ow22k3Z8iUApBsdbO6P3HfSnSWtvX\ncZAPRKo7143XACVUYmuyDWKI1qkEsNXEeuZH5Axd1yH2GWrX4dGVJAXeSF1s\nLUn1\r\n=q1ol\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"21335dc3b981a1a1fb5af44c2c2491cb88292175","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^4.0.4","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.98-renovate-balena-jellyfish-worker-4-x-21335dc3b981a1a1fb5af44c2c2491cb88292175_1617737449809_0.8311319574790348","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.98":{"name":"@balena/jellyfish-test-harness","version":"1.1.98","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.98","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d4c0649297d6da8c11da616813edeb82adacc41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.98.tgz","fileCount":17,"integrity":"sha512-UC2Q7UrdBXgFC4hLLHohIXM0ux2g8A09I/MZCAb/jfP2V7MXLAr3iVt0dRoc9+UyuJKx3HHMoLCWCtWe++qNPA==","signatures":[{"sig":"MEUCIQD8R83QDOnD9vYcBIiVsVo41MZaFOHQvLGxHc8bi6U9nAIgSqIofXh6X/VBIZ3b9jneKJvPQIEimZYHRQ0L9b1SAPA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbLc5CRA9TVsSAnZWagAAuA0P/2iO45RlRH6LFN+Z7S+U\nNVsesMLTNNKYjFZ602+XNwon0zS8c2T7YdLtC8xH4mdl9Q5UMqLm0zgGicoy\nQsJ8YBNYKGk0F+4e8KlBRVeVLIHkBvD6tnH+nLuIA38PxYYw6FJECMcbC9BG\n2ifIwevA0o8s+/U/V9iB+ACvp4pStVWn2jXfSag5TNo0uZF2mHZNcR98/1Ln\nGIhYUwDPBQe2E5VUGroQrgQGTa5y+nok7DfgDN5DP3Pfz4YTlBUgdcCyOsuK\ni4/gnLVUCrfcSkVkn1vMxDdc9IA4TYn68I1PlBRQY6JOklfnZsRoCQ1KTFib\nuaKPaFH9rRrJkpa29lT87FQYM7rcePfcQL97pGwTJXIyKN9tJ9bw3DuIeKz7\n6UkN34RYWJqcoWb4H3gaPVrj/nRhPii57X/H2oOglpOJ9YAIP3rzvshuW4OV\n4dCHyme+tsBAuTQ90ieNlP2SqDSlbUl9stBC7ldRfmi27GvdqgynIzElKZiX\nVtWH861WTIpvibQK+GySRmw1+cEJxGaGlZWDIM2J8wS5gLaVnE0u6NuFHak/\ni5nBlc32JTu92g0dNAmQ6EIMeim77P4EIjp0+QnzygE5fqw6TEl1J1a5UFQ+\nnN6oorFwh5UbA97nWOPS7Cc28ubRvSHl2XbN4V86DI1UJFujMF6wuyxue4Oj\nkdIn\r\n=XKIB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d86da2377514ef2e805685ab4b7c52f81beee1c5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.39"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.98_1617737528529_0.9846349678374504","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.99-renovate-balena-jellyfish-worker-4-x-07f7e9b7806a53cf5e867bedd717e88e7c9cfa34":{"name":"@balena/jellyfish-test-harness","version":"1.1.99-renovate-balena-jellyfish-worker-4-x-07f7e9b7806a53cf5e867bedd717e88e7c9cfa34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.99-renovate-balena-jellyfish-worker-4-x-07f7e9b7806a53cf5e867bedd717e88e7c9cfa34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4809a3e6fd534d184a75b1403d3d7de621f30a23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.99-renovate-balena-jellyfish-worker-4-x-07f7e9b7806a53cf5e867bedd717e88e7c9cfa34.tgz","fileCount":17,"integrity":"sha512-tC3HLjxrkPDSMDXXKzZl/Y9OySnTDyiLdj3HjD2mSY1aUKdEHUhpw7NdAZ7YTgIM4EDIrosZoKSz4N8UqDVeAw==","signatures":[{"sig":"MEYCIQC2Pl5ly3nglBauDuTrFN3xAXV+VNvXkz8eHY7yIVXd5QIhANTr64aKTPcPX/fN5J6Flu5W9wTRYKoKmYz5NcsCqx+J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbLgkCRA9TVsSAnZWagAA47MP/iCgDMNkBy83N1RyQrKC\nNZZE53BcNidZbExHrfvzUpSOICWtjwodkS7KPqJ3qzCFpOmEFvPHOaa85+Um\nQUDf8LMgWrLE0xuctR8K7vT1TnNtNg3HQr1gD1kCVEyp58bOGoxkkGjWRrno\nHXEbvooYj1CYulqo0YbbjlWQQkFToUOix4ybWy3Zouuog8L1RLOr7xXCySMA\n5N0ORqL/hYfv1KZfOIxg0sXGz5FaV+DNrvCl4BfVRClOdEIz0BmVOqf1uVSV\n60AmJs9rlMlXshJ0iUE/DPqSumEgZQ1ZmuXSvGQDVF5I8+GYlShIVUBIOeCi\nzf+8FsmbazJLxxAhrL7kCAo5GHZBX7U+0x8aF+3p/QnOX5pzSBYx7V+6svLh\nGelmtCYgzkewZkudXMNAIC0L0sAVg+++mg6S0yAmEoOCLmXFCGkm21k+CAT4\nX/rHc54r5exA6i1a8BOHgX53vXG8nNRtqG8mE3ejjjIVxCohIrLaSSELgTUc\nxXdDVS/aD9R3zqTHpYYXkCpQqo5tX6MFBKoSA5laMg2dDljRZ8lZYTxEhx6q\nNfYaK5N19z5qtluOsFx576AOv6NjlbRt+hIg1Y+YnbOpWHJoUD4RMsBalddj\n3TFcIm/AJttTR7f20d+lsrn8dvMbASHXr4R1zn2BIkzi/RZkoxjVJ5EUAmvD\nbi0t\r\n=Rx2k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"07f7e9b7806a53cf5e867bedd717e88e7c9cfa34","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^4.0.4","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.99-renovate-balena-jellyfish-worker-4-x-07f7e9b7806a53cf5e867bedd717e88e7c9cfa34_1617737764300_0.42037176341285143","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.99-renovate-non-major-e6814d0989bdf6629a302575ae8bc89447d8800c":{"name":"@balena/jellyfish-test-harness","version":"1.1.99-renovate-non-major-e6814d0989bdf6629a302575ae8bc89447d8800c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.99-renovate-non-major-e6814d0989bdf6629a302575ae8bc89447d8800c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98a3b6a12b9a9d5a3fc253476f57529352bfad04","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.99-renovate-non-major-e6814d0989bdf6629a302575ae8bc89447d8800c.tgz","fileCount":17,"integrity":"sha512-W6R5lViw3Ygsm19x+GHCTYHdfYRgApz2rPmZfEUR9pQBnaCBbwf4xeSMwRG9r8QmbfNtEN8c1Flc/jmr59o3qA==","signatures":[{"sig":"MEUCIQDZfH3FMsfGrV0DIgFv51EftJ4LIrrKViMMOwCHZMX8JQIgHAk7ymiQ+gBuaFuegUDYPjWoG1gqw08Zva9cjK0bGro=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbMc3CRA9TVsSAnZWagAAfgcQAKAYjVnYqUzydq8kWkgJ\nmBirJjnQCRn0G6cqFSIN6q7hstb9xTRblyn7pWycR9+tbAO8GvrLXo+a4hBn\nEkwVBDOH1a7tn1WvbHeOEUDtF7n/oG9JWAVulde5WGho7tThjWVL8+BocD50\ntOtRyL5D5MkJ1RcGnt/CRIAbNvQaREKHOLmhh9c0EDIzNn6wefgY3J8mECYE\nqrxQ5G0RKSaarKmkjhI3h7s+8x6S+PKfEx3UP2id/3z9Ttoz1W6e3T9Jgykm\nBaTPaniksxzZt49EpisLTNd8NQ7nAGqFSVy77irjNuMHq3MR2CFzDwq7I7RI\n0vC+otngqts7h0Ude565q51sc0bW85/QpwB27DSsqJPv9iqJDNIDTCOLzpNm\nJzjxth6oUTn3paaACzTJYGEsN4RFVhy/dCckknGuAOzY3iDW2JCpWdgn+SQw\nrC/IFPezJyQlQL/VyEETrRXB4f6JkU30hDJVt4qs3iOzG42XLWXf6JfQjQjB\nkDSYSgpn4ur/ICZbpC40O79A7P0MXXAHMr7EgbBilqgVKv+0VkyVcr3u2RP6\nB6xFxUajZLJK4lsTKmMkEdSdHJUOfgdIcD5QvhiKtdEp0xWLASVzf/DlFU/u\nhNfWdmPKYTeA5bI4aA4wv68jbak753Dr1AE/eEZ4rHRZ9vojeSPTcgGRKILm\nof04\r\n=TTw6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e6814d0989bdf6629a302575ae8bc89447d8800c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.99-renovate-non-major-e6814d0989bdf6629a302575ae8bc89447d8800c_1617741623342_0.02440919060588742","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.99-renovate-balena-jellyfish-worker-4-x-ab4476c6766fb6324b36a61fa4b9618a44284411":{"name":"@balena/jellyfish-test-harness","version":"1.1.99-renovate-balena-jellyfish-worker-4-x-ab4476c6766fb6324b36a61fa4b9618a44284411","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.99-renovate-balena-jellyfish-worker-4-x-ab4476c6766fb6324b36a61fa4b9618a44284411","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad69be5587e38ba676483f39e8413c5cc7d872cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.99-renovate-balena-jellyfish-worker-4-x-ab4476c6766fb6324b36a61fa4b9618a44284411.tgz","fileCount":17,"integrity":"sha512-wMD8MGqrGPnbt4FUXCufWjNBOMC4Tyi4H5YgbqkyVt87JI5KbNRACMslq6BEJZrBsx1I2g6h9Tc8zI/Ihry0ow==","signatures":[{"sig":"MEQCIGIliOLmBLk2f8gBp3Zd6opDBdTizglYru2SiL7Fs9VsAiAQv8avCoo8vRdQZeS6hQ38+mTu5l8fTElLH4K/qNkcoQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbMd3CRA9TVsSAnZWagAAZBIP/iiRdSZXSYydoYjo+SJq\nxKxrGAybydxzW7Ls0fwGbvw5b33pVqpTb/C6Q9UnPnMbwVAKhr1L36QRuaQb\nzV5bh3YhKGVbB4pFlJICTJcp2RUViRw0yYtUB1kY/XrmoohTtc/jbaudzbSg\n09Pv9PVq7PzVvFQ/GtuvJ99dYazWf9Az8MLy8DkascP6c2zucpT6RMXrZACQ\npsBqIcwqypati7ok8milNfW78Sqq/kZDNI8jlZgyyazbF0Ewb7i+VL2II9+P\n1DvawmOVLa3v869goeParhJa8oIS/5Xw/CoHwZH2G62a2x6zRfAs1V4bP9cZ\nymk9SIqHCnF4SlbOAAC7t6KPzbrA4hmRmwizbSsJZ+M/N4BCxs32yU3BAubb\nUHpp6Sd5hgU/TjgpJKfCI/qBDoYsAC66mDI0h7kjdRclpBGA7iOVh+kPf5v/\nj/q9D5HQRw/ra8NEZwWVjLBgWsFWwe4uaW9tnAoeLsFI1+kYj1G4m8y2Zrnp\nu3NweL/P4ZRjjSdtwSWiJ47T3K3A24CW/foWZ8IwobpAUP/GirgfZ4aGB9NI\nFM6KVgI23teMkY2wnJexxKiZU+KZOr6xHVPzsh911PFiwHUeN3vatQjpmXRh\nBYJLs8AJo4hbaiaxxP76Ag2AEQK50OD637KnDfKqBA+X7ag6KNrDH6mxBNzX\nsJJL\r\n=QBDn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab4476c6766fb6324b36a61fa4b9618a44284411","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^4.0.5","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.99-renovate-balena-jellyfish-worker-4-x-ab4476c6766fb6324b36a61fa4b9618a44284411_1617741687088_0.7292809069049884","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.99":{"name":"@balena/jellyfish-test-harness","version":"1.1.99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49007c4caa95f89dafee9bd78c02d02a2ef2af99","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.99.tgz","fileCount":17,"integrity":"sha512-RCNq0lWm7Gj7oAIIgG1V14pdnJ2mwDte8xypXQhlnFvsEf67/ZfeCKw7EgSi1ku+RYdVZqQV5rPJvcpt1+xkiA==","signatures":[{"sig":"MEYCIQCxwj+1I8TeY1sVZqpVrjxpdtvG4pe2IL+uVB+iEVR6PgIhAJ/IRZiEZ10UZGTACnD7/VVP+boTlsAGMxYwmErIkNE+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbMfvCRA9TVsSAnZWagAAJ4wP/RJONW3gx6Aey29yVcfk\nqqil6lQGt9C+qi6fGyggUeN0oTh4ZmozN8IRPeQMXKhgBrpsRa9B968xlC14\nE55W9fNmPA0w/RJaum9gBV8gBCS+/OohdrS6p+NclP64FWddUFR6NzYf4PgS\nA9i/W5w1HV9Km/0YLzBfY4QOEAL7M93MRjUhINT+if7DTLChk5qXu8sUCjDQ\nQIv67iXyFc+VUcI41gP6JC4MWDUoDTu1sa96uFB6rJHm0YJzfi44tNnnF7FC\nw63g43MFHNpyLFUdBZhGrbA1WXETkmztReoGGgn1viwj/hrnWIsX6Z7KgJ6F\nrz8G5yJubfxUnvDzGVrwZqjYANDPfqrw59hAi7WcHuTMMGmA/xu4VLdniHsQ\n8Nt6UimdzoHhIDR/6qsgnK3Jn1ZZXoNDNx8cDAFNUQSL6q223Xmj8r+ihY04\nJGsh93Mx81pST4PG/ihq7bG5M4nFSU9uqyUKjBQOidMeB3xyPgorEMnCta2i\n8Lud8Ty++hLmcVpHkxhDXlbRUDvohpCTdXwefbIQg7c7vcZXY9SrSSe7FWcp\n2e466yn+EXdc6ufeGdPxKgSFIjVNK9mVn9u7s98FeInBJULIUCmOKEgwJgUZ\nq9EtkMkKOkOi+FeCAwZL50i1z2wLhl9bx7GHOc5tqX7BScan54C6TvoiN5EE\nKLl6\r\n=ajG9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1bced8a62e529fde36884dc0b36ecec20d89b9ae","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.40"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.99_1617741806693_0.3811531634397727","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.100-renovate-balena-jellyfish-worker-4-x-4355c9dd9ee2153e8dc5bf03d54301ee7961b584":{"name":"@balena/jellyfish-test-harness","version":"1.1.100-renovate-balena-jellyfish-worker-4-x-4355c9dd9ee2153e8dc5bf03d54301ee7961b584","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.100-renovate-balena-jellyfish-worker-4-x-4355c9dd9ee2153e8dc5bf03d54301ee7961b584","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6e587fbea34dd8de0baa97256e7e5a5d133e137f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.100-renovate-balena-jellyfish-worker-4-x-4355c9dd9ee2153e8dc5bf03d54301ee7961b584.tgz","fileCount":17,"integrity":"sha512-pg2e7luC3jmTN2JThdN/iIzks8x0ZAXFjRk2QC+Anp7XMZGmxISpuboLJvaKhz0USNHt/av9/NM6/fM7kZpfMw==","signatures":[{"sig":"MEUCIFDBiYfJHPgH76+EZEqp/cgl9YHBjYnsJAsx7QULpYMzAiEAhYV99sTqmVHB3qEOJLmg1DKeIxv2NriO4ZJ+g328qcQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47645,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbMjlCRA9TVsSAnZWagAASxUP/1uJTSCkleENFNtJjMgA\nR/T1uqAXmgyjqaV527PBE8DJK7iWuANLXPK6Mzbgl5VsfDoSK5nRuvgjIESG\nTUaLaDrCL9DXwZ1OOWU9zvnv+3VHbWqKBejQ+REPoAtYPNScMFF+cpl+v0Ph\nMac3GUhopnrubBN02KofeywD0oCeVYBCoshlEEBl1T97uKyxCrDF/zaaVLDB\nQD/PHcRAHZ7hz05gyieo91Lrlx5ZsFpUs35x0H89wQfxx1XYLXSCDS2AQ2g6\nzGrBusSB5rqLSHrQlzEGG91oePl/wcKv++wde88WlHglxPJGMDjkEuaBaHQC\nz27NJbBe6hEa9VY7e9I6dkn/ZUx4P+36lnVAm0jWPUSStjpIKOVw2fTKGztL\ntr5Usc1v9dE6Mf9Ry9JbO9HSg2Q0NU5nt4xDJ6prumRDqCPxLxb3Ir4Q3LLx\nSW1Lz2B9idBonfL5V8NLOV7A7YqH3vRE7d+wezKNALCLiN00K06O0qi5aRwE\n1jZMJqim5WA/vqAatN1aljizjjXIlnt09R4xE3wndsQy90AYyDqtlRvZnanf\nsBuef1rS5hSkbt31uLcgDL2P1FHi9NafxzLrsmUmes75217dQfdALvFJnwtN\n4BaUbvhPhk0CNRFncy4DMdf5Q8n1oSBnK1p4c7yVwnTN0fGAin///NIYNkbc\nmm0x\r\n=OpUQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4355c9dd9ee2153e8dc5bf03d54301ee7961b584","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.41","@balena/jellyfish-sync":"^5.2.56","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.509","@balena/jellyfish-worker":"^4.0.5","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.100-renovate-balena-jellyfish-worker-4-x-4355c9dd9ee2153e8dc5bf03d54301ee7961b584_1617742052532_0.4463490532642198","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.100-renovate-non-major-70a5c2daf9a991694751b672975f1ecbc7b2a5ea":{"name":"@balena/jellyfish-test-harness","version":"1.1.100-renovate-non-major-70a5c2daf9a991694751b672975f1ecbc7b2a5ea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.100-renovate-non-major-70a5c2daf9a991694751b672975f1ecbc7b2a5ea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee8670a6328cd372485f197a7c55ea7f7d59d958","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.100-renovate-non-major-70a5c2daf9a991694751b672975f1ecbc7b2a5ea.tgz","fileCount":17,"integrity":"sha512-O6LrsAu+EXyzjVc7kE8judbfrcKTYzigvPTs1GVVLwXR9l0Sx0lQWWrlxTqpMTfVgwG4fG8dbz49YoFu/3okQg==","signatures":[{"sig":"MEQCIBU4mXHApKshLQd2cQkoVOMwIEPHGa88pOf6HtoKe3RcAiBscdHOGyTJ869vOmExztwzgHGizriB0Rxs4POpekO+Bw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbNnLCRA9TVsSAnZWagAAUH0P/RpbIxpthqGe6rF7c9iq\n7+Fh7W9rouTy9ycgFWkFmL2XTnx9+clgP7zZgPI0/rYKRXRW5AJ03ZXmNgoV\nGpAMp9drz35qiNsEQWmj8HwCLMlW7YEHoRApMWfYtbJOOtixnqe/gdE60tLt\nb/OyGDQLmro+z8JeHmoOvnsrLY1zQNTOREno3xeX1sFPcor+u4tGKfQzOLfC\ncVdLBU/4mi5fNYRGg4XVBS740Fre4cOLR5oG5RKGKb8lqyFx4hW7daXZNqa4\nIXUbQ2fLz7Myi4tDQRvP0jxrbpM8yZ8jPFOLQpJaeLxunbqs2NETj8OxgyAj\nYxWZkNJ+SbJ1+TxGHixz2roN9e6WBQqWEVPSWdkMVagKSvetIP2Z8IOGI6Aq\nbCcCWKkK4VXNVwS3n5oD8Q3K/ciHNX7tqFNeGkwsgmu0e6v0C6VPglmsCnUI\n5Q33gm1o7JMp4mIzqLjvC5VYYPxeMw0aADUqkYha+dJZD4WRacoLvOFXTiBY\nDSUY5SCj17vHl5GDJ+ZU25fFV65vRPaGvl3rTrpL8cDP3/oEIMaIiDFCGDE2\n4oszZHaAy5gRYGF1YFvocta57Lwlx+d/Tv2L0faWSOCfHJUU2pqE1D0buw79\nlUqcFqlONKfCrc6CMQYKSCJgHEI1qcmRJhmVoZtT4EACh36ZLBx4Pe95wYfc\nGK6u\r\n=h2JT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"70a5c2daf9a991694751b672975f1ecbc7b2a5ea","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.42","@balena/jellyfish-sync":"^5.2.57","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.100-renovate-non-major-70a5c2daf9a991694751b672975f1ecbc7b2a5ea_1617746378700_0.6377156457412927","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.100-renovate-non-major-cab23f5352988d6d5d2948654e3a93c099b011de":{"name":"@balena/jellyfish-test-harness","version":"1.1.100-renovate-non-major-cab23f5352988d6d5d2948654e3a93c099b011de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.100-renovate-non-major-cab23f5352988d6d5d2948654e3a93c099b011de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5f6f6d2f931662bf3fe71e213223f966adcb0d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.100-renovate-non-major-cab23f5352988d6d5d2948654e3a93c099b011de.tgz","fileCount":17,"integrity":"sha512-2nmTw2pkvZjfQ6ttIKBYTEKGBinHa7gKj6yUo0OYmcxXNI3ebJZp4AgK3HFtouMmN4IY8ojDuwxeWBtHKHD87w==","signatures":[{"sig":"MEQCIHspDQTElxrjheoKHCFRdm+yB9R6eEXFGMUYp4ZSRIujAiAggQn/sgVv6pJqkikuGERrk0h7AaGaHsNczubgXo8b/Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbNsOCRA9TVsSAnZWagAA+esQAIu+vJlUIJV03mnA7E+B\nxNaNBn4Mqx5YpUfB8LyoqEspy8h0wCJWeT0yDScGKDAOYV3cts20dGxIEL/c\nAV/oFkUgponrT/eo7MMWEDSXJ5ILxVKmYxrL2Q1B+ArPrdNg9qOEzjBmW8aS\nYNp6HXa6RQ2GTkZUyOBCs38Ht+B7t7EkTElFbd93hWarPAHVhLGU2JZvmA2M\nqCLDhN0kidXTZ2uwsM+49j8LHwfvWP8EHTWEo4CM9ad7sxaEXyOxrIAqjonU\nO0NvFwtF6EFWEIpYa4flX1oj8ScxqHZ7NCFy4mDRoUhAcxB59zpt0cengddj\n2nEpz7fbPksHYLN7Mmhn+izvTqMvEovD6CNQJYrEP1cL79k+kXF1F9RmnNME\nxZA9i0Asdblb6oRwkzvfHUBUAqg83mXABnCVL4Q7ltu8JJjDj5V3YuXIzi27\nqx1YQIDkvE00O7OplZ3UQ8frLKLdarHJi2ijLijOqP5n+MPB47QqLONGTFoK\n1KGto+dRoP/QqyF1C7EumB2k3R/kBveKmoDhuvGBzMu7pL7tVI4oYGdNGl/N\nKyG7JphVsJI0h0FBtnbanlhvQ606yi31/jo3xZZWMGqPacfbgw7a8cs7Ztr+\ntSZ21Rk1J8Hv7U+zipYA4yrh1WTLiba9AtT7vnT0PVPdo4ROVrZqs4DDyM+f\n4V55\r\n=tKIw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cab23f5352988d6d5d2948654e3a93c099b011de","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.42","@balena/jellyfish-sync":"^5.2.57","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.100-renovate-non-major-cab23f5352988d6d5d2948654e3a93c099b011de_1617746702136_0.5307450155857592","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.100":{"name":"@balena/jellyfish-test-harness","version":"1.1.100","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.100","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"13f319718ff3ba91d946d9ce1852e9bda5413312","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.100.tgz","fileCount":17,"integrity":"sha512-AWDM8ekIb5x26g7Gy7lDC09krAZfiCn8qRB6BStfoGzgLKF57cqIXaZeRloWNXFm0Owzn8vnBsorHvkTOvMjbg==","signatures":[{"sig":"MEUCIHYEeLH/m7RPLKSa3GyHPr0czmDjl4ZlrU1Mg09ha4thAiEAtn079T9YgsrjYoue2/DClMQSMOJ71V/EFOttL5HWLRc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbNvGCRA9TVsSAnZWagAAeS4P/ieJf8+4X3/MvohbwRlZ\nXmxu+9AXji4uQeEIKqOw0FmDNX+a1zoMFTWVHChYvmr4Ybw/YrbGYFZOFq0I\nk90UCnOxM0GAUmqi9aL72c0e1HALzDRLHiW4+pVV9TjEJcP8BlJnqNMhaPg3\nY4f3BoF8Z+CwBHNjbwAUKnXlaMWx2xtejr+nyYs9HxuIBh/jB1SJ5XwpF/KW\n3tOqr9nal2sMZT4+EOXhy7lm49jttIs9yCEO2WgoCne+EX+bpj3G02+9lCQZ\njhler3GQwnxWRYXxVEeSXb80d2FTuWfEavFU1leVm9kAgZTJKMk31bpnl/+q\noGJXhl4Lgdvw0OwTyPSVFmeCBUc2lxk1H0jCML5h4MNUao4OavKniVKUDtVM\nwDn0mKrXFr2BCiP3Vyw6MseQHM/1To0GLgOUmIVWHvwX0i87fiCUvk1q56u8\n35zrHN2PVB3MlLmbGVkqTXKD9jps1aZ/aR8E4O4g5duVxmv4trjWOYY3n/xr\nAtKKJLRDF5NnqdP48zF5oTU+zObN3e0SWl826afJMnj5jwGK2gzCYYZYR2TG\n50q7GUoKHeD8zPnTD8Ef/99PkSmf6Nhg9wtnczyCsODWjRjjRGdl+2f0kBfQ\nuJskW4doM79R4tPRsDW2bQgCk7yIquT2v6x304hdzia1XaUh6EG2v/bc1CTM\ntg/D\r\n=mXgh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"450e60aad5136524e5bfa861c04c24a2b481ae9a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.42","@balena/jellyfish-sync":"^5.2.57","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.100_1617746885822_0.24773151154307826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.101-renovate-balena-jellyfish-worker-4-x-4582b9fd3375a89fb01506dbcf90bd964cec69f5":{"name":"@balena/jellyfish-test-harness","version":"1.1.101-renovate-balena-jellyfish-worker-4-x-4582b9fd3375a89fb01506dbcf90bd964cec69f5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.101-renovate-balena-jellyfish-worker-4-x-4582b9fd3375a89fb01506dbcf90bd964cec69f5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"903bd0bb37a949c074cbe6dd7b49ea39aa4f76d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.101-renovate-balena-jellyfish-worker-4-x-4582b9fd3375a89fb01506dbcf90bd964cec69f5.tgz","fileCount":17,"integrity":"sha512-x8owOVk5HTJp7+9hYulmn0y1P4f0/L3we1+xYT6zf8Lw3fKo2iO1W33sKPqXKWwlT5D8jM3qBYfmIgHbEUgy2Q==","signatures":[{"sig":"MEQCIH+CWzXiZ6EThA60LnSvsBTlIuOpa2jDd+ndNcnhg7U9AiBHDzBuyFKNUQZZ5IYOdATKznZ8tDqjWDBaP7xfpOns4w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47715,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbNynCRA9TVsSAnZWagAAJukQAIGgpQZCegxKYPTwS3Dx\nqYmirlBPOJaadoCy77SyUA23k4H05/6MDi3vrJEIfgj4vpooTxv4nACKBhIA\nRmuKLZofQkWGilANSM2sTCfdLDyQbK6RAH1mcXzhnV/o4zcddv6iBQTiD/xJ\nibFK4fWjZOQ1SsaCoC6tdru38f+yCmzVrXEjmOzun9vnoLpWfr2+tumNVwcB\n8jw191cspWg4f2uxs1E+QtvmNWmaPCLvu5J+Le1ZuU2DFEtQzY0RHwI9duTV\na7oLXW6p9SuNkmakzEWz6d2u1K60l0JvCzJXEqkpwZxsM2mQKyZ21FCR7jAS\nl1chUHQxAzeu9fj9chXePiOefR4Fzdo4jwuYhgDX/YRvie0Z/3L9ihegzPVk\nKOn4C4Frr6i+EmWeBaHFjm7ByjhD8hcVZnzHsja1AK25XUyt6nCA7TZCNmMT\n0cLZGX/tMa/P2qqtE20tlT42cQooW8gDSZWN0oSvJB8nij5icDVDB5GoWQiF\n3ESZuzb0ffE9fhDoJJlmCv3E0t98IRH9UkNTItVSeMhR990XDEg1+vUXk4Jm\nzsjAC8g2aCzNzUMsE8adseuv8vieZCLo2KS6W0Jy6+TOqbJYB6HsX+bKIM7j\nvNG0xph/1OfmveUZgPVfwslCIkGgkvZBQo5QdLzwaAPr7gKuojn1THwLPpVR\nk36T\r\n=87kI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4582b9fd3375a89fb01506dbcf90bd964cec69f5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.42","@balena/jellyfish-sync":"^5.2.57","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^4.0.5","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.101-renovate-balena-jellyfish-worker-4-x-4582b9fd3375a89fb01506dbcf90bd964cec69f5_1617747110606_0.9170903315516699","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.101-renovate-non-major-7e8a2a4e97a63f023b2204d2aca66635617e3950":{"name":"@balena/jellyfish-test-harness","version":"1.1.101-renovate-non-major-7e8a2a4e97a63f023b2204d2aca66635617e3950","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.101-renovate-non-major-7e8a2a4e97a63f023b2204d2aca66635617e3950","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"666e16351a58ea364809c20bde72182503fae939","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.101-renovate-non-major-7e8a2a4e97a63f023b2204d2aca66635617e3950.tgz","fileCount":17,"integrity":"sha512-LqjWX0Ix2QilK+gp0AQzOvBe9bgFUqBocKH1wrKgVNlfhzKKr843AgkXOsNSRaZdiru6bNfxEvQTQOnEMYByBw==","signatures":[{"sig":"MEYCIQDQNn66ud1ULnBQtnJ3qc/SDxpEZNV25pHqSAJ4kmzfzAIhANHey2md8GiBaATpsJhb3/jdXWjzZsrO10wh4u/6Ao/c","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbPeuCRA9TVsSAnZWagAAkvkQAI439dE4WjoifH31JovQ\nJD6UzRikW5c4LVnYE+lR1k8LAJ4XoiAlSfbmqZNCgwE/051uhi9ljWXMeS34\nigWA7KdOaNyKLpR8Kc1fi/iEgeONGqDVXOzmqLUqRqEoB4C0ktOVaDt7vNsi\nyA2yqs7Ct4CsqlW9+OrVVVaj6zvoQWez0p6zrPNy7w21teAR+NVr73qpTzS/\nbUyWiEG6pwAkFAirsll+yeVBVvDqBMRRPfZpQsOAYEUkRrGatVnIzCDJt57h\nKXfRYoi/rVx4oyyorwOvF+/ihF1P+zAPUifugEwW2noVCxixLeFL3FLx0JCR\nV3VqYVYZGbdv+oAFS26KiI3bQCShlV7yDZ0/MHZou8EmEFLscNnvYMuF7bwh\nvX1RUhSTD75kPcI0P4f8Ty7+7QyovtsDGK8R6288o/XOux5C30qrBHzPbA4/\ndWzrEW6hKcFYegiVVHrH2O3vJ3a8kq3PUWQ3bHziBX7sS0AEJ6G5pETYzrMC\noriqRyZpDORAA4bnxZ0D8+EBlXopOWHNIkq7MPON690mm3CVFnuZI6sT2kIp\ngVP5CJYWXzLNVdVfvq16miTFEOuWdtYLEv2OS1DqJJE8hoIY6+e1btwaTAPC\nOopJa1FzvJEg4uNP5lqOgH5PAnR3n7jigFuLQBmEtuZSmcPs6UGafqPRz9kv\nl816\r\n=/AmL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e8a2a4e97a63f023b2204d2aca66635617e3950","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.101-renovate-non-major-7e8a2a4e97a63f023b2204d2aca66635617e3950_1617754029520_0.06350321591988073","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.101-renovate-balena-jellyfish-worker-4-x-bf3861d0452b07781ac8dd332cb41adae7d935b7":{"name":"@balena/jellyfish-test-harness","version":"1.1.101-renovate-balena-jellyfish-worker-4-x-bf3861d0452b07781ac8dd332cb41adae7d935b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.101-renovate-balena-jellyfish-worker-4-x-bf3861d0452b07781ac8dd332cb41adae7d935b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bad5dbdaa97a95eaa5a624d5f5c1f9fce38c4e48","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.101-renovate-balena-jellyfish-worker-4-x-bf3861d0452b07781ac8dd332cb41adae7d935b7.tgz","fileCount":17,"integrity":"sha512-QH2PGkt+ckTurAJfBCuglh4KIJ0mEuI3CPozqSD/v6VlIStrnzbyUAW1fWgNZQRKpChHID9Z3IlSKcEU7RFy4A==","signatures":[{"sig":"MEQCIACEbEOREdr38w1DMRIkdzww9UbDoFW7jLtwWwxwTiARAiB35QfZuaWCY+ofksTI+/x6EKSgjVQe+FeOYSkNm1FjFQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47715,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbPfeCRA9TVsSAnZWagAAGOAP/3i2hEPgcEXAJoXI9XZ/\nkzUpZux7AE2OALS6t1RMy/Obit56s6hv5t5OXnN9YEMJT/U/HHn/tyhBrPeq\nyy1th9BiPTYLpVCzXWeuEzNVGS/nwnBTtHTYyexqlmsxnA6q9khwfKmIzadi\nirRwliLXZpcI58vT67kieGWq8fmdKgMfVh1+DSKsL8bdd31juBxu1rv4oAbI\nowgMfBZVNBIsjcN3EVhEYON5++e4qs58rWtcnfPI/rftzDWiOWiBI5m1Cuwf\n8Ih//REUFdTui8igW5h5HZdRMlihUL25VgFqX5KRcsCVMUsxkdnUs2Akn3wt\nVku1Z7rDCUocI4oIARXZlHoefe1kCDoV3aUW6S28bvv9FTUnCboMc39ggQN6\nyflsJehx1FbEyYSVQbyFgHpM6o+g2S+IATp5HLBKL0PfE9gNPrc95LjdRQ+V\nYIMl/HUAUKZZrdERVtblvRliMIGlREyrm1ruRhHBFYYow6YJVlbqI5h5s+UZ\nihJkyCGvoxiJRkHKAhvmp7Cf1W/JmsGFl/aaMIBp4tPUNUPQjuUypaAlTAAz\n7J+KNTdGq8RfU1NTQAceD3LNc/57Xv27RjUtpUzLsFHpmi6qSu/WSmG8jYQq\n2k7zX8LVGGP1T1XaKfatctzEXdHOZJBZhI+FxvHGmle4/S9JJFpR0pHd0Lvl\n7dxv\r\n=9f8U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bf3861d0452b07781ac8dd332cb41adae7d935b7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.42","@balena/jellyfish-sync":"^5.2.57","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^4.0.8","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.101-renovate-balena-jellyfish-worker-4-x-bf3861d0452b07781ac8dd332cb41adae7d935b7_1617754078304_0.4227635016688467","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.101":{"name":"@balena/jellyfish-test-harness","version":"1.1.101","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.101","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"19c2d34ebc1ef01e05aba174eff5fa01adaf08fd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.101.tgz","fileCount":17,"integrity":"sha512-Du1Ys9RBwEKFL9+utZ5gkwxD2P601Ps1OCrsPASa7GVJB5LssdNFRCo8mIuPndIw0gjpn7VKm45v++LFpR7xWg==","signatures":[{"sig":"MEUCIHRVl6wOglWwm7VIqRw/in61LuFLcbxdd65EjUScW57LAiEA1YHu+0ZTerdhXciHeCkY9xffEpOQxwFdsRL0R7sY7PU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbPhpCRA9TVsSAnZWagAANW0P/iOhVUrjF3wqmyzD1rrd\n1LyF1eqPOTSHiDpBaNNRZ6uu57PhPGbZXp22v3Ux7WcCHCAKElAMli9sywZm\n4PA6eXK6QwH2HPvg4J/B0ez3x1hKREGfjIsU03qnxCOzLF/Jo0KrXDY67TvR\nSvT4nwp8OtSDrIjRxbayiGXdLpFSExK/VOTznQVBikj0m8U1Si08ZPWh8TC3\njMehSLwFoGp1apFte6tMbjkTQcvgdYt0JvDjb8js711HnqD7324QlfTt+ab2\nIMuOzUkSith36PLsShJz5xVrS4fy3AP4lp4LULcqcGe3ZIUs9YNiGpO7tEoI\n+min1VbGRyNWBo91LFgYcwnvlj4xpGbI7zV4WEAGk4V75wCAkJAyMW5Xlb/a\nPR9JPS+25PnZSIpCYmcW22IWkgxiF3STqHdhLeFoSX6LNHl8X1u2ELkPlIY7\nSOa6SnmjQrj34N969lE02iRdIrQ2VMFkXnzkiVjW3sFiL3xMaL/ffTACdmyE\n05JRl7cda/98Zi6WqjDaAxRA3ADCNT+J9WGgXJ3oRqoqjRMsXr0j9ieIL/qg\niGY8UPhz53WfWzHGdFDstxCBSMO5ZBX6OMuPiPw/mXU07ass9vwgx/gdOrmM\n0MoNZAAwT4FNMuQjcsY7DYoK6X1nwTenbRSoFrcuRO4+PLOlOoSpfWln/l1V\n802Q\r\n=X1Tt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b1905743e749f9c02c8fe0731a4aa8e201bc52ed","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.101_1617754217440_0.16487275663347156","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.102-renovate-non-major-3d9268138e46d5ab78148c713f26d4f325d82e9d":{"name":"@balena/jellyfish-test-harness","version":"1.1.102-renovate-non-major-3d9268138e46d5ab78148c713f26d4f325d82e9d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.102-renovate-non-major-3d9268138e46d5ab78148c713f26d4f325d82e9d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cc6a3e3aafdd1dd3f25a58764ca0d49bfe4e2719","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.102-renovate-non-major-3d9268138e46d5ab78148c713f26d4f325d82e9d.tgz","fileCount":17,"integrity":"sha512-AYFpto7XGEe3Y5dEK0oK4iB3RLam6BL4U+WtFrJ9e/OE4lVv07KBOvhuvQn/G2uBSFx/mXGo2xXgx8BPBZ3D7A==","signatures":[{"sig":"MEUCIQCF9tUiTFvHuUWO2Dtpi5+pMLfs2xo7o1z4FW42ga4AbAIgDl5RzTsquXlQmD3qiYL3P7dE0D2uV6dMwnBCueYchEY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbPzECRA9TVsSAnZWagAAnTYP/10i3mPy+6nEd4ZqXd7M\nUHz9cSIhTrv+WzEbtgZNp5iBwJs8oHh4tmqomp3rtz7W7ko3Y1K+bCZpVLzA\n48Tub/iyXz4Wa+9ozMtNccyQ90NIl3TImRxmiWaV0pXo7xO+PLMwk7n3cJFL\nhwuxEz7Cbv2Y4eMkwOV4hlcTiSSwPVztA1AzdRKboY96r82yd0Cijs+SfCZd\ngvIZzNbskk2hyg+6E/1I2R2dlG6DgtyZm0VzsfgDZoY67yXnfCQV+i0O3DqV\nXC7CE5CCNrqZzPMDYRCpwVtUjcQIRIGhXW7y0J4CG3/T4JXkVG2CMz9YgURC\nGtSn9oRbksodQQMbX7qla4T8ZSXtjuOGWF6FR+hA4bpVVkvCCkjBJ/VN/hFK\nMHUajYPwS+i1KO77yt8Bmrg9cy2dYZhXhhzz731SZjvTTJHRSnfVuPHU0Ctr\nybjpEbvmu5vIelvOhYhICjkeO1cNDSuIrxmEAsIpc2ILGMPFBulHQcHeysBu\nII8qpMkLmURxsXJlOgbehuDBhfcKbC0tr4DcKRYQCd7VcVxVqkTX+bjSyVuC\n5IoRkSULHxOpwsgcv4gL2L1KFLwTGxtxbeUfhevCbcXV2XLth/K3fd4ECVuD\nrg3aq4vJbWFBzGdGhxIhUGhxcl0geErFfT+ghXOVJQpIP6XXLcy7sopPInEK\nNjqn\r\n=AWtE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d9268138e46d5ab78148c713f26d4f325d82e9d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.102-renovate-non-major-3d9268138e46d5ab78148c713f26d4f325d82e9d_1617755332481_0.9243140500472706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.102-renovate-balena-jellyfish-worker-4-x-a520de999745fd22ada659bdd894327442cb1d37":{"name":"@balena/jellyfish-test-harness","version":"1.1.102-renovate-balena-jellyfish-worker-4-x-a520de999745fd22ada659bdd894327442cb1d37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.102-renovate-balena-jellyfish-worker-4-x-a520de999745fd22ada659bdd894327442cb1d37","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fd3c3da11b94f85fab5cd5bc61cacc8dcdb64afb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.102-renovate-balena-jellyfish-worker-4-x-a520de999745fd22ada659bdd894327442cb1d37.tgz","fileCount":17,"integrity":"sha512-M1EqWje1dakGqXNAEHaJucEfdUAD4/t4s+SiRHHCVjSlCRyAjWjxjoOwLSNC+TIU3hDfbbcVnx0fzkvCdFnZ2g==","signatures":[{"sig":"MEYCIQDUxadeeHbikucYXyeKysdaS6Db5HHhfWNfnkIthZr8bgIhAMA3+KVjrz47WT4dZ+W17njz38bH/mEikLGvJVSaWd5I","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbP0ZCRA9TVsSAnZWagAAWt0P/2uCwXy0mNjjJRyZyHeT\ngWN/af74oOV6a2v5amrVhXRi/DwXwoDMsfv1y7n8EnpeZTsNCNNpSLI7gicl\nuUXgR8y0ZFl4gURJc1aazhF87lxDWWZc7nZ5oTrCfvC53G7y2+PRXL5I9Fvh\nNAuXOedoEa3S5m40cAJX1JsUiTNEbKw17+JPaPymGUMd/LpgIRn6P8TFk0Zp\nmSb0GDPBHxUa3X7QQJkkulashLxi9dJ+HSuNJjtk/PFP69/kQbixyO37yegG\n5wiyDuAJnpdaPgUOqKqPCogFmihn7DhNi1Cuwroles94sb3OhkDS02LOPXq6\n8aH3ySTYAJbi97R3429+sPXVL3NKwlC6QsQhU1sID2xUvwksLDDoSO+CcqIe\nL6JP/dYoeYKa9N6Yh2zEd/U0KSlALlYYIbx4subWvN8f2fsCZ1TfYW20WlX1\ns5EgTFoVNOJmm/xJtacsngSQJrDFixVHZ3Ij7vs50iN+fRzVwJ2aVPK1Rzap\npRTdtc24lWCzdIBE1vimyto185ALgGQ8SfioOyB2ZZisc/baq/xuZHb+LSFs\nhKUw5ei6PSS+pG6yYMNlUcQBJN2qZZv+PmHgOi5zbFG3EUJZmAzf1PziS8Zv\nuTXs9owWPGqIgc4+Hw3At0fOEcw493rOkfRMt1L/fWMO4qVkane3wBwwtVmL\nbl3E\r\n=jCin\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a520de999745fd22ada659bdd894327442cb1d37","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.510","@balena/jellyfish-worker":"^4.0.8","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.102-renovate-balena-jellyfish-worker-4-x-a520de999745fd22ada659bdd894327442cb1d37_1617755416557_0.47865266534487216","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.102-renovate-non-major-20ea30fc8e8f2190581ec76acb97946789610fc1":{"name":"@balena/jellyfish-test-harness","version":"1.1.102-renovate-non-major-20ea30fc8e8f2190581ec76acb97946789610fc1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.102-renovate-non-major-20ea30fc8e8f2190581ec76acb97946789610fc1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5aee9db8bd8c873f8b7913ee6389c2599ad3b994","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.102-renovate-non-major-20ea30fc8e8f2190581ec76acb97946789610fc1.tgz","fileCount":17,"integrity":"sha512-HZpbfLcVxXMQhH/oJtjPdqRlRU43ChjZJVJXVZrfnFnZcjzj10ijD0TzpnxmR/VYF6F6ggWj1eRUltg3n8rvBg==","signatures":[{"sig":"MEUCIDvv+iB6qMtlUK+u7d8AYEkacmur5vnHRCXp90weyPoUAiEA8q9bUKk+iNE3Zv6KpUx93cKTFmJwOGxUeR78nqw6h4I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbP3aCRA9TVsSAnZWagAAun0P+wb5sHop3QPTPri7pkpf\n5ahPYoHre2iGwsQ/6bmE5ymmACVvvThkazev8IYlAuU4WQ/3PJ4CTzlnBjzh\nIlAekGwHbXMtfgwtV/YYneJ2MEZrR+OtXwEkCk3ZTwT0hhRVUDUG/gb4iXNH\ne5O1T777Z1Pbl47hLXP3Ekh6MD3xa2v0Dy438kVosWzKCPllOmNgCIcH5zhZ\nCIaaR3TvMng+H3L5c7G1+i2YNVAAglDgNZA5bBx+E/1vOU0EI6wPauStTSmA\na+YxTOATCXNRFjK5vvqbdT9nttBEe3PljnwlzSFkC/3J7xgwgxpQP7S8/hLe\nPaPzrmb24FXUrlxrn6goPbvIAoc1cCXtsEu12uHtQzygYaghSSPv/ZYNzDs3\n0O2PrJvdc9eTwc2eZnDFFvKNHS/HK1NvqXXbGX/iZ8NEx6fRhz9/jAsbM8Mo\n9v5SEKAX73+s/BDatgY9TubTs07EpOMSJY7StqBPxmeKgSTq0hGPt7MRONQs\nNvdQZoOBHtCcidRnXvKjTHKoWzbMWceuIg6DKWOy1xEKEmJyhGzP2XUMGZ+H\n7B1urFTigKTSzBXGTDDhafhI1GaTKWnPJ28VJ8ytXEJAL8wmInwvP0issTRn\n+7xONN5QsFFy/Yn6chgjm9LpCNocZP0SkFd85TC8Q9SGyeYPR007k4YezIq7\nNr+K\r\n=vL6j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"20ea30fc8e8f2190581ec76acb97946789610fc1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.102-renovate-non-major-20ea30fc8e8f2190581ec76acb97946789610fc1_1617755610472_0.3380897091851529","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.102":{"name":"@balena/jellyfish-test-harness","version":"1.1.102","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.102","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d877cad43542e0465bbb9753f545539735478381","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.102.tgz","fileCount":17,"integrity":"sha512-DD/C4q2RThZcxLoi9wjvMAcEpPRod9uzv7xxHS+hiqWkerMDR54is4zHNNb8JypU4s9q4iPK45IpdlwoURNnWw==","signatures":[{"sig":"MEQCIEN2zlLJzT8w7Njxoclyi4Qz17KbmB3XD9t2YeMoA/BXAiB9PRcQc0c2Rj2K69uhyptT9pdGUgLXI4gpLwpGXEvL9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47676,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbP6aCRA9TVsSAnZWagAAJoMP+wZo3GeMc8Yfw0od1eM0\nVhwT6+S91i0K1PEigVr806OqrGY7VKcuIhxnAgzcG25vQWRwU9TPxnaNmuYj\nk53Vd1SzPY4M9x3CYHJfPw6Wrh3cDg3AwezBgBoliuuDVL/k3e50dtC0C215\ns/BbXLsbgRfKTkakd08eNpAhpx62Fb0QNucRbWj+6b2eBpjwZtmxqGy/5I0y\ndIoJsltNkWvnk6DQZogdU6OMkKRpAGUzY+o+zvf2QRAuWWJiM9j/hjyPI3MI\nIBTiTP0yFAVpNzriivLmLcObjwjL+cRJXsN6wbgeZHHL+Uduenefrw0pLU0w\nmKlt4MvmAIF1BMqg4LFnZSzUKyPe3U2aVpiK+MU4ZrwV3D0LXk7qda4SudsP\nbv2B0doKQp6G0LyiXNPuXsf5o4aRyjrzNKevvAgRHLvhSxfPqqnUwhuIZ+MQ\nIrbR00UhB1SnINEDFJ4p2DT4J/6HHEWe9KGAVkpDcPb0nbQCF5pMT1Axl7li\n/72koHwhQb7noU18ISm7I0EGdTLq5itbWf4R6UrlHQYJ1WXiSsBd5ouI4WkM\nvp4mgAc1NPmv0VZTH4wJKtx/SUa9cQdeKKbT+dGdSn01eRsvz6yG63X8yrP2\nHMOcz1J774DJ2XxQjB0v5rP6RHPuh6TJLJMl0OXgjIyhoNAOPZYnu71WlX/D\nAaAt\r\n=DLOU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3de7a83df75d64e19aa787905aa3094738e456e1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^3.1.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.102_1617755801787_0.7173082699065843","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.103-renovate-balena-jellyfish-worker-4-x-3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f":{"name":"@balena/jellyfish-test-harness","version":"1.1.103-renovate-balena-jellyfish-worker-4-x-3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.103-renovate-balena-jellyfish-worker-4-x-3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b176ca9c49983ed5fe42de10c2aab775a98b93ac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.103-renovate-balena-jellyfish-worker-4-x-3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f.tgz","fileCount":17,"integrity":"sha512-dlsgy0cne1q4wzI+z4RV6qPGQ+wbqYNbvl7qr640LRssoyo8nec9FPn74Gl3KEnRYlnfzYKTWlds+03J8vadlw==","signatures":[{"sig":"MEUCIQDHpyaKxDqhrPuzhxStqVmcIkLsy8rbw4cbe085W8X0awIgIS4Jb2L4sUgIr44Voyk0eE5rz4KGHHQOeDdM9KS04cg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbP9SCRA9TVsSAnZWagAAPBYQAI1IdLXr41jEZVEEjFbv\n6BXjCMrL0aysLhVH6DvJI887obFNm1wP/3nJa64ICnHI4zo+OA4OjmOmT9aM\nUIELTR1LzhdMWFEc1vuGRtAc2tg+8Yy1DF2HsksZPTqZOGBHaleB1+/vO3nG\nUkHdKWzK8uk+BpfvJQUjHSwo0Wt1OV70VPCmeMlR+QZoRcDqG6Wus+26w+ej\ngX1lKC+QWqzrOSNBEVaVuxcB8f6jtdKlPCpo71i4GH0hHDuGIrfB3w/l+BJz\nw9RUGI9G08qaO6BsoEk9wQe4sTw5dhVRnfY0LVK6gOHd7W9Y1Dk4yW55ns5u\ntf/AKjzxNuX66MD7elxPpQmnTTq3PEnQDtsgFPzn97/oB6DZ+qTQ1P904ZxK\npYWlvtTGVAyGBRNA5wbeP8lke4iNe7xU05KclyT6M9pPwanY6cgtrQ6HZapL\ntueJ0B/Vw9NlU3cis8PS7FJkVb5DEIYQ4AGEwexXQ/KvFER4cbIXnhD6XxFh\nOd9/RN+0ZFDow+BqmxIWrQTTw5xFCPe44Sv536i6s8SYe35M8Ixp1m1hJHBz\nVHudhRgquzSxYoovBxoPyBZCUFdFZCF9ZYV3zOYzWlrJCzWfkFNTra32QDB5\nztRkhPelyprqztQIPb60fX3pjBzueRCdAtEbrcgvrel7n4bbOm8L0NUMDX6W\nksZx\r\n=9A+V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.8","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.103-renovate-balena-jellyfish-worker-4-x-3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f_1617755986250_0.306252060276464","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.103":{"name":"@balena/jellyfish-test-harness","version":"1.1.103","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.103","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"617f9429240348f3247c984309969153184f324e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.103.tgz","fileCount":17,"integrity":"sha512-nIm30zMEF1iC2Cqc/v/mTMJAMkEHBKfrx8ocA9MGxrSM7fQv4M1zBJ3n5aSoQd35yPqKROo58UMFiT1nBdB3RA==","signatures":[{"sig":"MEYCIQDN8eyLkQT/3PYdr9GCqjcoQsGhCrf+/mKeAgkaMCyOZgIhAIbWmZutrn6ceXQR0Z1dlFuOnL+TAutcDfJ2s2zZap1N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbQp3CRA9TVsSAnZWagAA5EEP/RRDNSSiyE5x+pGhWD7O\ndGeHUQ2SwuatEm5tSWjbAOuUSHw4KMyWPAjogErQ402cO7d8Flct8RxVlGSG\n6eqKnx47NjqzS6V7FH4MRl9Ua5AEs0tEMfdW0uBxNMniC8hR6tjk57tTFmrS\nk6pQAMR0KhyS45ktko/umHQwULkUyFxKjyFFQhmO6AH9i0AurB7OBVx88qhK\n7mU45c/7fE047eL6UXkdsB56r8k28QUT1sqReiVJFdzmH3skR2aSbfLBelU/\nvAH5mHHf15lHdLzFyQE35q2qmCo8zM/Myglx0YzA0zrJvK4rQ3AJ7COQH5nl\n3cP+7wm0D/6vfWfvnBnPiRbD6gxr1ykuoi17wgDAi9of1t5XQxrUZUjtGVcq\nw0D3jHjgdUNArIvGb+ToSEkWfP18vNKFjTbQqqUnjsXO9BGM0Ot9b8F4U65s\nlVC04JiuBRFzEtdQZeehbxoJd+5RJE0SKMXdHi/Siyj2gU+W4q/UQR/TrhMs\nzlbRgEFEtSJKOGWy/ArioVw8RyoXiqBN4uEYrXPPFcEdp7N920eYkHHPbBQZ\nIoYMnOQCGZlhGx7N8eihzsHy79IJP+mV5mlfJxwUqp0ukGKGUU89//TZ6IyG\nH5RF2+8RHvBN9BmKDSFVl+iEMUBxPFsn93VC3C9cZChJZ547NHVLyETCvUlk\nDHU5\r\n=EUPn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"288ec738dcd4b616f3343a072564e41ce21edd52","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.8","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.103_1617758839026_0.7762611425726795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.104-renovate-non-major-f8fa924695db671b5ac53a4a74566b9ebba018b7":{"name":"@balena/jellyfish-test-harness","version":"1.1.104-renovate-non-major-f8fa924695db671b5ac53a4a74566b9ebba018b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.104-renovate-non-major-f8fa924695db671b5ac53a4a74566b9ebba018b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e1f389df326cff968b7ffae09afa51898744b44","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.104-renovate-non-major-f8fa924695db671b5ac53a4a74566b9ebba018b7.tgz","fileCount":17,"integrity":"sha512-Z3DbXGZ4EUVyrwmYYA5aakfh1B+dZKqw5LnDrU7QIvKAxljqASLcnG4IsqCCd3KnHhaFch6UxPZZoFHLD5hVBA==","signatures":[{"sig":"MEYCIQCnOOnirvUGFvpwvoT1e2fEKVt/q2TZH6Wmc8uchxeImQIhAKljLG3PmkR4w0SzLzfcZAGMBVhbTx2ERY9OhIQaXHld","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47943,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbQtSCRA9TVsSAnZWagAAmyoP/3hQ0IkRNnoQ6o05gncN\ntVnBI9lmBcZ0uikhyvpqeNTMfAdJ71SFHjXv7pLfu9jN2xmtasX25HUi/q4f\nllnAj9TLfIOIhPKk0PfTXwbpooF9wbBWu2n4vsfYXLXKaNJLEEoAFbaOSyPx\na/JhX4QAiWyw+/GBgYowOb0NPZP3Ih2bQzZOSc1TvE6a5EP1n2cDxtmYXRdd\neumdeMKTA/ww0n7Nmwg/Sg+YcsLqKOmbYPm3JutAjNWS6xpnGFj9CuvDBXSX\nxjHrj9OdZm1be9wCZ3rHKqAyiWEfgfkghvJ2Nhhxo5lNXOg3rQ9v6kf1matt\np3Q43inZG5X84Vh3vnX4zaZD7SE0wNzESclOb67FKiE4hvwb5aK+I8Y5c8MP\nchy1egjIn58fWpgnhPP1CNNdoREaiOVaaBHIrsOXIyIc+ebPnHJcjA+xumXD\n3UNab9KH2Jy7rDuYdXOkCX2RwO86m1jbr3UE8FLxQWUkLAnm3XDS/FIx9H20\nJ+RTtOuaQwfI2n6E4gggbyo8WhCS7NaruMbL1jGJ/TTuSIwDnAxoxKqJYQpb\ntNooYfLKiyUSq7mhXlMTggNjITdNTVWC+HmVfjpUXyeuwixfWnbQW4hmkseb\n7RjeDyhGbYUb1WQkot7kba77bzkzgRRX6omw1W3ST07iSNUZ00RN9tWzwnt6\npTXM\r\n=d+gT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f8fa924695db671b5ac53a4a74566b9ebba018b7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.9","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.104-renovate-non-major-f8fa924695db671b5ac53a4a74566b9ebba018b7_1617759058018_0.2155225268455998","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.104":{"name":"@balena/jellyfish-test-harness","version":"1.1.104","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.104","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25e48ebbd1f4a4d29f56e33d90154e18de640148","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.104.tgz","fileCount":17,"integrity":"sha512-99vC/7qimVTdXb6AmPQjtqSVdQ5Cbl66KJGGSgKOpeaLCvI5PcPTJvEcPVjp3EcCxdwephq9za18lYVNzZCHqg==","signatures":[{"sig":"MEYCIQDa6PLaF4qjsSreI+wNaFyXMcvgLrUfUEzeZLEEGByALgIhANBou57dd++JsfyIX/3qObqS8C8ECYSIoxqnnWhCGmTi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47883,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbQyzCRA9TVsSAnZWagAAPUsP/j8ngUZNcPDFVejGmEFi\nxT2uV0zigGg0gdzegkXzXp//wqDMgoYZruet1OIlflSIOUy39ADtpMWjaVRM\nU2fStCOaOVPaMm4Mxo5EjRyL50E/dXCYptcwZGS9XjO+sDuMf12rQePhr7c2\nqUl0v+1LE6YdjMRV6QfOgQdYSV/G5uygr/yOhozOGrx0zLY6sJtHIYUhTIDn\n3NjIK1rYNO/MNsY8avap4F4ZOiz7XkPPUFRwYqd0uYG22+GR5JKgBHWcI7vB\naWLklu8zP//jFmsrPUlzWcjfBBWqDi0whK+brc9EdUAK4iBvyK82QM/iYzAW\nZ+ttrc+Q7rnZqn03ICmUYMpVijJLEwtFDRl5csQl4UnpeAJNaIPsim5rTdus\n997Hp+IJAHq+9VWMwDHaHlPjI6vYe+OzmR9xvVuDc9ICSkPuCQtpzk8I2sRS\no8O6nvbc8+8V8uLPqkf88AEbi/dbH52bhq1UnTNMWiSWWtbChGWsiMkBycG1\nf+vy0cS7caxFGX2t2Itjo4VN8vYmP3ogW1mgmjYSu7bbfgLXpnAXwC6BQU0X\nEuBPsijdKP7ZV5ukYsdJ3xPXcAUpNqjpgF5VspxqHU/2CmZgGRRXAkzPRR/4\n/YVnTYgbkMbxLF3VHyVqiYW2BuzDwUWdapaw8gPpx9QlvTr8EulchHmZVA3q\nSq00\r\n=wLIt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8025401fc75c093b4c6acb422de37e0e5b438668","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.9","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.104_1617759411230_0.6636641064858531","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.105-renovate-non-major-eb31f7dfb3980d83a4226a9ae34be4f48f71b992":{"name":"@balena/jellyfish-test-harness","version":"1.1.105-renovate-non-major-eb31f7dfb3980d83a4226a9ae34be4f48f71b992","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.105-renovate-non-major-eb31f7dfb3980d83a4226a9ae34be4f48f71b992","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96b65b5a812206d240f1fbf1826079894989985a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.105-renovate-non-major-eb31f7dfb3980d83a4226a9ae34be4f48f71b992.tgz","fileCount":17,"integrity":"sha512-GXnFd4wbt4bMuLzG5JloQ9h0tQ+1I+P3KjkguACi0VHwCov9ITV7cUHMkcbt/N6/v/9p92nDeoPN1MBNoDzA7A==","signatures":[{"sig":"MEYCIQCOQVPmhBgTQ0O1pwwdRCHcRkdA9kwujoeNIEzrTLYTMQIhAPNYFktwd7Xmp6GP9si7Kf58HNDKdgtg1GMQXxmojVaw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48051,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbRrmCRA9TVsSAnZWagAAZToP/3vqZolY+NE2GqReZnmX\ncAZWcyonnrg0AkVkct4GwTc8gnMs/qyjxagsePK3NgyfoXgAzLAWrhPyP9Fo\nP/z8pHlP+3Yt+DP5WISZd8poha8TYoxDaQ8J7qDE9GVwdaWfVqmP8K9zVvwl\njDW/0UCr2EO4pJg51P8yOY24uredSTH7bpBrKPjVBbmlcoQH7Yuw+Bfy0pJL\n3v9BouM0cQYOI290zfNcrO8oj7pP69BxnDy3XM9g/QIM7oXmWfcspulzVFMB\nbCluZVzM/cNZDNdHLJCmj+nvZ6i7E6X61YqYzMuIuUBrr95+LqXxYKU1gC1z\nob2kJDtQWLn6s4hqUgQmIdRzRRxxyo0uVHOGq4xalTniC3sDG5NoPA+YURj+\nt0G9BQzJQeiUjiL8eM2cVAVrPkCMbh+wGcpb/zKp5YGAaaRCxleWeO5rO9gE\nL+0Ek8iE0HzTmEIIsEo6SrppHs/HbRHSmnrt+8S2sxEuTh01Bvu+IqsG3MmG\nETkPW3N+OYBzWKA+fZT/4X4DACxrEXIjN20nZ0CENMlI4UaUVHp70UwDTSYu\nsyhbxP4cMHtRYqb8Dre7FuzfxvtdWY2SJlRZ8+PVVZswF91dvWnKAFQobqZm\nqpU5CrugePjVywcSJqQWCNzpbeN+z7svDQj7XUnmItkEYc4lzJPfYYnP+GwE\ndw1H\r\n=IbiN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eb31f7dfb3980d83a4226a9ae34be4f48f71b992","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.105-renovate-non-major-eb31f7dfb3980d83a4226a9ae34be4f48f71b992_1617763045789_0.05657416392683534","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.105":{"name":"@balena/jellyfish-test-harness","version":"1.1.105","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.105","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"244cba55e6cc962f3170c3960cc39f4b067b5ddf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.105.tgz","fileCount":17,"integrity":"sha512-mVS5Xx1LIOJJ63EJlVx/cMrlZOlg4y1WlXDU602FXObn0GeZ0pKktC7NmD7lTIlA6Tn4qv86N0a9ewLIEEHKSg==","signatures":[{"sig":"MEYCIQD5YPQgEcMcVuETmQio753SBB1mMtqmfpDnbCTHdi/mMgIhALk7ARadTwGsMHbPvyU70XRTl1dbZUAbN3hxDGYPQeBG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":47991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbRwFCRA9TVsSAnZWagAAGsEQAIAXchFw23iTIjmsHNz3\n7G1+hPwdyMy15ZEvPK06BnMMtcR65uRl9iYAnY9rv9alYUq6HNUMZcGOMelF\n1xTXdv3y69uC5AtHeWSDaEzY6jGlhSunbQsfVKW6jZCuiYo3g2h20fttP5OK\ngXTDWAiCfQdl9PviuGjVrCTESNyH2OV0wks+zELjQAB2QPcPDG/42bk+xEZb\nQGS8rQD25y5MD2PMVWNhRMQnMz6WRuYItpibmS/6D3w3zqeammmjTXOrLVxb\nqxEdRDPPp2wppD1Pnb9blvYA9hfeEMAlYEjLtOpEeHrg4AoPGxLVjURtfUuh\nFW7TWxEyY30BJ/xJ/Rt2z5dq+Qqg3UhRdiNWC8JZhhCQw9dkW9OQzICVrfq6\nZpW+1TigPWZE/WPONF8Uw4BIvQrAyHqTDcgY4H1pgaE+SfD5PSYKvl+SAe10\nz8INjhAgCG7HJPnL+2FRe1NwzQcEZdIy0IWlLxTuP1iHzI7rKbBcGzJDFGNJ\n/j516fElnr4w2Br+Q15ekdl5VQP6MX1NjASJLHWkHFCUM7g4Zr1nsNwOyDLP\ngfQIKcwEuzdEGXmOsD1a3uaKoUoSOGeG1SrLQnEGT+UMXL3hZWj+KQyXz5cn\nNSgln+tBpOQN/p5n2Y0wbV0ZG11i9wAJev+BDx65Kb+4FJ2tPPdx0rAc7EeR\n42SZ\r\n=pbY+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"55254bba2534a23879bffc5e75abaf8cd9e7c261","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.59","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.105_1617763332660_0.6192657786977154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.106-renovate-non-major-33c20aa5b82b0973dfc85f5a19d071474621e91d":{"name":"@balena/jellyfish-test-harness","version":"1.1.106-renovate-non-major-33c20aa5b82b0973dfc85f5a19d071474621e91d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.106-renovate-non-major-33c20aa5b82b0973dfc85f5a19d071474621e91d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f268fbfe2f2644f907ee6b6e33f7a636ac3f11f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.106-renovate-non-major-33c20aa5b82b0973dfc85f5a19d071474621e91d.tgz","fileCount":17,"integrity":"sha512-dGULrUhoqmrQn3v3RPv+zKTeaFjR/mIvMxcYV4/CZdn1cSJMkWqwG2nbw3aLHzvv1IXcehPjK8xFOLmdUPkA8Q==","signatures":[{"sig":"MEQCIHqWVaKuCeyo0MPXGe34/RjXP7Zb20FtI9ayn17WSasrAiAkzz3Y44/KXWtCeG8S8mE3v3kDNeAQ2ozBwlt302M4cg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48156,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbShRCRA9TVsSAnZWagAAAEYP/02Vr7UXPRyBjmr5Qwk3\n9//1sH6bMVhth8yMjPf5CqyKrVF790jvAMIKUPuFA40wLnb1oIr3h4ta0g0i\nWQ0thb9pClrehVNXj679Xo6wnjJbvxbjYp8eBYveJc3BVnV3pQeBaNUnNkHq\n5ZY34Pkp8NlUdNoNh24hD6GYeNvJSAkXVSQbvtG0ttBIL8B3bjB1oDrCDb48\nIi3yHzyqfk9mtKlyGCLwEfKBU6bkqp8Vvb2m5r8ZauaRsUmFki1MYGx1S5tu\nUQLFbVlodBCYz0ELwfcRPELFWaRJVLxXu7Zg5Xzvev5IRGsE4FyzMB66vjku\nI70ZY3PKrvtBksFuTF660JPZoI/tCm6OpqybOqxCIuoPmthWhYjdLJR7HX1v\nekYpYc45ayF/v6CB4+mFJXS6FbKR3un9SDjgNyzLNWL0YuVeb7UiX11QR0yG\nJg/xqvVDlGuBEF5QfzQTseEGJFy63blho3p+KgEHp741UNYFkwnTEjhJzv1S\nDjr55d/cYinbKhc4a34aiwzneY8kM2SI1XX7pkjBbFarZSzVi5WPIolslL+5\nx1+9J4LdUS11ww2FWWd4n8DMuebxECILHS9w48AT/e4uBJNCuSWPuptZfPNp\ng8YLkM/l+a7Kt1aDbQRS/Nup+9PQpiQZH1KfH1plxAUlqjNNn5f/vxX3WLoO\nOzvk\r\n=cGRA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"33c20aa5b82b0973dfc85f5a19d071474621e91d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.106-renovate-non-major-33c20aa5b82b0973dfc85f5a19d071474621e91d_1617766480783_0.3238838684967493","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.106":{"name":"@balena/jellyfish-test-harness","version":"1.1.106","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.106","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"20755fd6638664fe1097c73179436ee5b483fc7c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.106.tgz","fileCount":17,"integrity":"sha512-+KkDvIb+ccgJf94gjRz4X/8NhewLEI1M/R1S7btEe6H3uW9NNarv4cPuaVdwipOsUMibMhqmF4j+pgm1C7yGXw==","signatures":[{"sig":"MEUCIQD687CbDJsYIcUvpLfjMKnaNpAG1N+aaH3kHBF5PouCaQIgaZ1GMTIJEGDc9/824qMRWtqJCTGrA04bdXsel7yMrVY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbSj6CRA9TVsSAnZWagAAD4EP/ROgYGN3vn/DrNhUv30r\nz8BVSu7CwhhdVj8aOSUvKaq0ffPF5XC2wXIhoUTfvhWkOdeiHTv8NeJp9FvS\nXvHp8Bg6qkm+SpJFAGI6LhAV6XfihGi5k3IuYI8vgz863lp/M5SXXu67drDg\nipmDE4UVKfxZJpNDV8/ROkwH+LEM6HTIsE9t1IIJOLsGTE6nTwAyYqNoHzyX\nE9BFe9h0Qt3D3J5LpXEftcUC9aGyfNMDYLwjwgTtV2OoSmd7nU5fN+TIVreI\n1AEhA3cUEzz2ZFBqE2KyPS2LwgMrPhtcOnk8BFAgQ/syWxjjBEz6Ls4bUU4w\nf6E6/6T1nogOlEucv89aCNFgpTKQ1cXo9b9mu8F8ktlxuTa0K4JBht1xXFo2\nq+Ojne+QIFALEAwd1vdUppNiOUHRJWDs2uSlL+aTJ2Zy3vp/26hWQk+NRYRB\nmYMAlC8xrz/whdf50qhBSsGi5Jf9Bdpbi2z93439odjXvMGp4MnAp9n118fX\nC45oSMreOy/SmCcsYIsy5JF0BoW8r3oNC1/igFRWZRG1i+8Uz/oA5xxHsP+/\nze81GHr+JZEde0EUSgiaTPy5Dv9ZNSIN+fXHCFA4/85GZMIZbZ2gubcmu14s\nmd53yHsh0JhTruvk7RC0fsDJcr3g4sEmqHyh+SnP6DW5oVpExna7R9Db7LPd\ntLit\r\n=kqZ1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1741141d4a99db5aff57ae876b4f3285c88218cf","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.511","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.106_1617766649937_0.982214420812872","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.107-renovate-non-major-b2a2d4f47a19b859085f04386ba9f38b96e83417":{"name":"@balena/jellyfish-test-harness","version":"1.1.107-renovate-non-major-b2a2d4f47a19b859085f04386ba9f38b96e83417","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.107-renovate-non-major-b2a2d4f47a19b859085f04386ba9f38b96e83417","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"40d01a24d6ae6e8d95404fd0c7d27196903159a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.107-renovate-non-major-b2a2d4f47a19b859085f04386ba9f38b96e83417.tgz","fileCount":17,"integrity":"sha512-HOKlvkm5ByvWHZB3bpZKeIr3TEw3SJxHVLqrBEP94CRUaE26ra2tr3e+gC+iHS0bDzfjqtIFAB/+VGCid5NgHg==","signatures":[{"sig":"MEUCIG5FW/uX4iggiZgCxUtcvTIylf2xdzIJwHqyC9BzEM62AiEA7mE/d6mwEIwM81lDCp1sh0g3zVZyvazTyBFVgXxJzwE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48263,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbT2PCRA9TVsSAnZWagAA+lMP/2et2iKWi6D00kLdQ67B\nXc7XxQg8seyDsGKBr6+0TokjT7DYir09U4fH+bHbp1CGmO41nZE+SmSKnxmf\n27rePk2hmRxkd85dNPvXrmJDA2UA6ueKoecUUjgKntFQrB1WY5ihsWyx/sbT\nMKusup+5+6O4xnsr8gnNand+JnbCmN3UtKjdLJqc/QtEy/F6s5ZMUF4YvPOK\n05/pruUSfmpguJfX+1HC0FdGAiOq2GKqhUQyLZmzELlzZaBJ6OpBrwvDuAox\nyL53ga2liyewk9Sn7YIFMXfB99o4efoPdIsWgXtxrj2qs/ttZDM6MRA28Ydp\nDtBlaHSay83XOp5+ok1OgawNWXa1VssKJZO2UcINsqD1PNbuXPXFqA8kq9r4\nJmW0Pxnkjkq0bO4kL3+fCifRtvDdjzjxM1ShCn+N5MbNrPaiBSaCyhF7CmhJ\nVwxI/ZxY3Fq2vE06WcwpfQMEf227NEUqeIhgIxOD5nUxIxqwp9f/y99n7iqF\n7prAA5gPUvs2rE3LsDtd6Hvs6oGW9aPdC7vZ8Rnw7gfW5luVnWkkrhGAhcle\nVPygGd4NAmLJgiDdyKFtB/M/dEoGrUTiO49IKIM6qYZDJJBixkrr8bm9RYy3\nTBHAg6XT1UB+K4UoGihKg+PU4vHC33ZHTkIPMIIKE7t/ffq1AB4cbMbOIQEX\nrSRK\r\n=5Mjy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b2a2d4f47a19b859085f04386ba9f38b96e83417","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.44","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.512","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.107-renovate-non-major-b2a2d4f47a19b859085f04386ba9f38b96e83417_1617771919218_0.34734883904402314","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.107-renovate-non-major-956e6812351d266caf6cf6d0f0d8f4f5e0976427":{"name":"@balena/jellyfish-test-harness","version":"1.1.107-renovate-non-major-956e6812351d266caf6cf6d0f0d8f4f5e0976427","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.107-renovate-non-major-956e6812351d266caf6cf6d0f0d8f4f5e0976427","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f8ed21ed576a2007c608d6be4866c075707b9a30","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.107-renovate-non-major-956e6812351d266caf6cf6d0f0d8f4f5e0976427.tgz","fileCount":17,"integrity":"sha512-wmFaXZEv8TMb1qYDRQvwq9HIDGnP2E/N7eie0ow9q4cuU6jKKuLX6e7xHmaVciUt1f5Py2iQ31g/JW0dpouGQw==","signatures":[{"sig":"MEYCIQDMS+Ky/4n8ZW+t7kW04GFlUEq7uXln5ubGFdWSEBf6GwIhANTQA3nIk0bkTV3R28cp2WaDl58Wg0z8Oa/NGBfGL66G","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbcZzCRA9TVsSAnZWagAAdwkQAKOpxnTAQACiNHzHgzcf\nUXIxEsArN90Ls3g29/WvAz3jn8UamtHtqLWTzPltpvUSKTy+QTiB1/kztNBQ\nUI250hIXsAzmTgWR4PhU+iCRVx1RkJZeW5zfdJwlIIoD6R4zY1HQPeWMfJnk\neZSnQcZBRWsay6wu94l0YLqJ4YCHGp+CFXJulBmNurziRHgWDO/F84K0sbFn\nFte5s8OClggAdb+VlzXt5+ZAKm2/cSJg0CWdquukkQ9yLBYrp/Ld8ETZdUMU\nQgHdczbuZf7T25P5SMSXzN/lIRct5fdGlyw+P0sUQiYBs0OduVWVk/w04zkL\nscft7LR1FWsDsaIijvhvm/1Mo0yWaL+y/LUdajd/KHIIN3qlE7zY06R+DFKo\nHhqLgpywibzsEqFlnurSbk7WAbZ6ALUrLmPsKrHGWDqkVXQSDw7yYJiZgrsX\nc7jNviAELqvRK3zEqi8YcqSPLce6QrhXPhQbRN4Szs9u9haPo42RaFNYi6W7\nU04dfMpQxQnRp1m9IfZs1o45UMnOBl6I8hXW4t8VDZSBLtDkfecpvqhegTh8\nugb8A9y8BTY6sRNZz79Kcgjh2pSyCrziOOeelIeWgg56/rLdbVcGK602fnYK\nJm3dRY08/JUp3JE+NlTsFnPc5KI7sm0DNpO6noKQBH/TQBYiJyT+pb6qfPKL\nJi3a\r\n=2r7g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"956e6812351d266caf6cf6d0f0d8f4f5e0976427","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.512","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.107-renovate-non-major-956e6812351d266caf6cf6d0f0d8f4f5e0976427_1617806962694_0.19687296093392326","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.107":{"name":"@balena/jellyfish-test-harness","version":"1.1.107","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.107","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e172f3eb139914982bfb5be458cf26673c1f711a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.107.tgz","fileCount":17,"integrity":"sha512-E/XKc81ghLtDIc14KroTF/ewLGuRENzez1KfdL3mX5U6tQZO6loMR7nyuFvXYLOWKwCHaCOwSMBOXMyfdX1Alw==","signatures":[{"sig":"MEUCIQDeZ3gaEmEQ9x7UylEhc7KXR/yqQwH7PTvQ+7uzNmMsDwIgAMUe+P4ayor4pomNCgETjacRpXxA/+lh0IDEExSxD/4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48280,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbcc2CRA9TVsSAnZWagAAJW8P/2SxSu52TV6tBxNADLYk\nW/p5kv5ENNDyK6eMfpV0C9m0akwRuPWD8rqcVgWOJPVpYdXlRAUuejOlgMdN\nyJz+VtadUtfEOqMSFvHYwNmDJVBCfeAOb5DJLpvvP29dr52GpQA2/QACj+bx\n9cf6iUbiRteDtvwO3EqjC6QGG5QcDlYK3I6Yubsc6V4/Y82+dfl2vdx1fIxR\nMb4hhn0KTO6PB8zU/eAbBCPueVRi2/LMtX9Q8fVTnZbFRr8YDuRWWvc0jiT3\nzx0XIUd/dlAJ0QMu8RtnyMfoimwj/y2JpwwGsrRu4iEC+5gC4wWjhtDZmhc+\n+6qXfpK72Y3z3YNDqrgPEb9QrpFoJPaH4B52rN0xA9m/TNECn7hUXm3ELvO2\nVDxW+T6JUx/Ca/wmlkOVPVnInPgqrLLOPMVgytVhh7dTSmW3A36aEI3wADgd\nbHj+H5BJWnHfn0xIgsbiRkO1ilraEWUDbAVVWt7YB9L2JsyMUFqypDhwmCkw\nq5SAgQnIUB/VGX72p31x6JDjpI8G7gKSPfjTFg6vg4uTejlx32osN9TQh0vd\nTRkYg8kXivZZo2OG08L1VCsS1haqcqzBOFQcV76wKtdW1CBIF6aX+4yZqZoK\nRklSJzYm3cYnDK8p1XANJwYO89lrZC9Am2H02HJlNqf2QpwsvJvpHUo+WR+T\n60EI\r\n=D+gA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"48b9002e4b0f0fc20439f4954eb2da3648436654","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.512","@balena/jellyfish-worker":"^4.0.10","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.107_1617807158241_0.5396119220798821","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.108-renovate-non-major-4e6ece9e6b9732b7433063b143dfd54967edcf5b":{"name":"@balena/jellyfish-test-harness","version":"1.1.108-renovate-non-major-4e6ece9e6b9732b7433063b143dfd54967edcf5b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.108-renovate-non-major-4e6ece9e6b9732b7433063b143dfd54967edcf5b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e39d8b4a0d348361b0214d8b005022908fc6490c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.108-renovate-non-major-4e6ece9e6b9732b7433063b143dfd54967edcf5b.tgz","fileCount":17,"integrity":"sha512-K/kXj64w/8tEDPC9ILcfl9JxxT1O66fiO40RzN8F4KxKzopXpDctyUwWPy3aE/b9YMhrVVNOa2fJDhMMNAF98Q==","signatures":[{"sig":"MEUCIQCHkwwhKpTUIlkouyddlq+5lZDRwM2qr8F/Y5YzSW/ZLAIgJmEthz988pMhxYoWPYZ+EEM5kvjxJpvkFRLdi4QQ/1k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48447,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbch1CRA9TVsSAnZWagAAx8IP/2iKVOaeznGmCizbMiAe\nqfjTmK66DQzUt1oQ9xCBcow+0jtRhJh3Fru2s/vCcOz/pP2Er94fbD9P2PJm\njow28jS7pRNHtxejGDSxvjrgvwpDDfOt5LeYn8KSEO/4o9HINnDYmKUBikzM\nR2B3CbfNetQyNejxkAmLM/vaZwTSqBMASW0TaGXjTl9W6GVMnKqADNqlMP2I\nsI+U8/WoBNC/o5++mICrUSpiSdQkaXO5EKwUt2GJ6cx/FbPxooAQyp/80XfD\nud5O1iXna2/GMH2lqRXuz3cDp5wEhUBjIn6Of5NbaXzkqH/TjY7wGR3PN5uu\nX1kvwnfe2bx/q1sny0cVY3Rdq6A45kUmIUy1pWYsuQSrYP/4zDdprnfpCmyp\nUzkbzR/5xTuwbA7QHjemFPaa+BunbIkVEpf3qSFUJcFdJo7Oxem/IShGnN4/\nBKzF1fvSrcQdx4Sq+dISn7+uMpYEbAalch/PvIP+Q+BpQOE65iM5Nf/WqPhV\nnSD4IKGlPRDy/6jgjJYFr96PytzRAN6vSvYLphv9HKzHJbflYX6efZeboId6\n9hTDuhUrcd7hZHPelsidKc3Sj3awK1knhER3zxsLffpe2QSSSFR3gTxqfaAX\nVifb76HzWFbfc/bHwO4FXDOParb0yPMoFYjKbyU+gg4xZl5u4xeCmSR7Zw0x\nR1AO\r\n=jFj7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4e6ece9e6b9732b7433063b143dfd54967edcf5b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.512","@balena/jellyfish-worker":"^4.0.11","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.108-renovate-non-major-4e6ece9e6b9732b7433063b143dfd54967edcf5b_1617807476626_0.18295319270705068","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.108":{"name":"@balena/jellyfish-test-harness","version":"1.1.108","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.108","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb41e2f9aa9a7ad7f10aa881536632cb5b4423e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.108.tgz","fileCount":17,"integrity":"sha512-R8KQBJqMW1EDTfbw8v+DztSZ2H7R9x2earjiE4Y3WDfw+8c2lV7VHAK0NjaKGNOLprcbPtUFHsyhjp0T0Enaqg==","signatures":[{"sig":"MEUCIFI/ZnY4YmBc1AZtBuQ1sPwEs1gwk+XoPmhluAxZHJ9YAiEA13yfo/xPC0+Lu+cW23cK01FvWQKFmVb0o/Wex2H05r8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48387,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbclACRA9TVsSAnZWagAArFsP/1QuiX4BCV2AaYX8dRGn\n3/jVMm/yYZ1V93dacXcpnCp6g4F6J0OgFlymooqwokrGS7o2P0mGkZcS4639\n1xikcp3eZjTgpGPREgK5/HownwvHwVb5+3awzT6zRBm8yjqNtO2GETwOzoew\n/cZcgFDuZULrJ3wwz2kK1j+P//SuooPBJZ8ZHxOdV1i5Y6SaIkXHmebbEdEw\n7UPPVYWPb3kQKdK9DDUNnxQDw8baUSDIBy+/z6TLyENzXI0welzOybjQzIea\nDeTdJ/wy4a4k/F78+jmMigHesOnTmiu1DtyIXaI7gTnWmWu5fR6IWRoDFFi1\nsVMvQNf8SVxEdALJtLdr4WD7B3A8hk+ecA/3LmubbOBQZEnvzIrn4SiCUf5o\ngUsAqqGoDGNEHMv1O3QRgd04t39RVbcMcmFfLC2wfc2dox/ImtuwkwZwcFs0\nPK4uiowiV55nmMrTgXw5exIK/VzpFrWj83jie3Tmh18hY/j3SSQiqp5wxXZZ\nLpLBPk+IPOkUAS7Pc6tQsmhe6Z5aYdLyOQSsKrhdX+7eVrMv8a+/mnST3m6I\nzCpH1vHUIYw7foa4+6CqQVzLL+n4LeIdpoAp9n3GrjH6POEeVPBLaIjudsCw\nEEtoV6AxLBHe/fk3xwt6j1lmYhBwXHcj2k/EwOMz7lswASRrlN+lJJ1oJ0De\nir34\r\n=fsFF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0b3531e1ffe3987d66e29435ffe177f16b497759","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.60","@balena/jellyfish-uuid":"^1.0.83","@balena/jellyfish-queue":"0.0.512","@balena/jellyfish-worker":"^4.0.11","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.42"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.108_1617807680056_0.8124734008377568","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.109-renovate-non-major-8ca05e816e6aae5e66213d596697ce5a82505a5f":{"name":"@balena/jellyfish-test-harness","version":"1.1.109-renovate-non-major-8ca05e816e6aae5e66213d596697ce5a82505a5f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.109-renovate-non-major-8ca05e816e6aae5e66213d596697ce5a82505a5f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"55dbe2794181468eb5b36b3f526171ceae95e346","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.109-renovate-non-major-8ca05e816e6aae5e66213d596697ce5a82505a5f.tgz","fileCount":17,"integrity":"sha512-a5jcEDZqpY1wRtPiw+JfwReQQandfa06w72OaZuBMcFu1Z0pSS7Zgxesuk6bR4K/6+bu8209MsswGSw74DJ8Lw==","signatures":[{"sig":"MEQCICEcjpEWRQ152vn0zxaip/dwXKTJd4I7OcrBnHPkUZamAiBwxTdwFXlY7zlgl6GGLgi6oT7s0HxsBPF8OU7TdWWKWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbj+0CRA9TVsSAnZWagAAvYgP+QH0/bl9YJuTpxvjiZwC\nG1QsaVIS/UBE7GdYDxyq7k40tHNL/LNqcMLfakOjvVZwvcQ4Gq3d8z700yFC\nG/rmGrF25CkfeJ7cN/nuDcohxJJOKqOoFI8pxWHyL6RU0UCMC0cLSLtz84Ti\ngPs5E+8gKXJ/1tsS9ltNBj0SROTSnGeBic0aV5ayNgAYl8+/+Ymkwfw9Hvyb\nMiucuKtvbRqd2y6WtV9vVBYgEgysk3HB1D92VmjA1+1AmwA8XgN8hIRV1v5M\n9ljqltLeqoIHNZX+AxUVu8fXlhV/rTjWEukREufxRp0FZoK2arEpJXJj+joH\nf8BlQlj4fYfqQUEQvtzrGImf6kEeCCIbZArBkA1EpF5Kyz827XFGmWjmueLB\nXE15db8YltltM6z5yrrwOw7LamTMIRe2/ZD2PB9CG1Wvvk8IDAuAmqtOT2PQ\n31Cz6L71ywPXoYeORzOBTz0h7Hg3sIJuRCii+VpSNyL/VjKP2u4iAUfefQNo\nQiB0ot8FlSQkCfQYJfGIGSStswDsw76vurZ9V4+Tlc2wJp6nEp8IWvocHSVV\nuhvS44v4p7I4GDm+VXWltWDo6HaHoiiQgBXQd0USV/SNKi/R54JK5x+wag+l\nLIxXoYcBdTUjM4/qWP/gei7nyCtglf3BaEwJzy+m1hobMcC12ZX0rklXFGzm\nK3sy\r\n=xpV2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8ca05e816e6aae5e66213d596697ce5a82505a5f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.62","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.12","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.44"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.109-renovate-non-major-8ca05e816e6aae5e66213d596697ce5a82505a5f_1617838004400_0.39759446334431625","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.109":{"name":"@balena/jellyfish-test-harness","version":"1.1.109","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.109","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09c04deede8fd3b35a57982cf8b8d3b28567c0ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.109.tgz","fileCount":17,"integrity":"sha512-2ihuaWzUItHzdSM4f1LJOdaTGJa6W4En10AfHOM0hJQy1+VckM7461KiwNfe/jdxkBs20xVRWg6Ak/rJ3FnDqA==","signatures":[{"sig":"MEQCIG40jJ557uWem7A6raujzzhUUV44v2QHeVrMzuZtqJykAiA/RtSNs0+dqQfTB8E8951jymzGN2LttK8pAfKTwQGjCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48457,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbkBjCRA9TVsSAnZWagAAkZcP/38RqplLqoe05fgd65il\nqRjWhbSJsKznL6pm+AmAZlDV1hyGIoFdxyt8mbW8l92xOYcT9XBMQJPMFULI\n8kuq2lMM2m1XVJNet+eMPnvrJh8MnyngD+Wvv3IcaxxyyMiOoWHLyRTBTX+B\nYRkwiSw9VBCD6KMoSJbmkB7j0frMkmzyr4oRM9f3nJjKb0F32gvfWbn2RbWe\nnjbc01e1E8V6mjNaMaDZ3lDH+VtNoDpDCXO8Nr3QsegMYDrl8dE47Ky3N7Ld\nE7jqyqhdtAHhxwj27HcR2SuOe2JtiRumPUkZjDCTEtrPLkLKz6oDBt3CknUp\nv/ncBhs5sGhw8imKqhNLLdK0iE6WQ2A88AVW7w37uiTx6b9wbNbvB2W0QXoI\neQGiCXYU53fAwlhKGIEzubbvOaw9jZ8X9OLSKlNmHos6QrW7i24R5UBZdf2T\n+4kYOviYHHnR1+3Rr5oncOWKEvGxv6kO9yUQskLBBbGa5s/1uZoXRaXO4vKP\npot92cnJCsUBGSggouBxYLHdVnKp9aeIDZYlqL3DAgxIAdTXvaDlloEP+WdL\nTpJDss2Jd3Iuhr1gWvv6a9IFA9ilS4AmRbh8H76xrdZt9nCp+q6MZKwwV81A\ndr/jCiMpBqGZbGPmVqlojSUXpkNBbNnGlwn/najAJMcpMHC5hc0p4uO5slAK\nfPG4\r\n=ZAFt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"46862a54429f9256315190ae0eb25964a06d53ea","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.62","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.12","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.44"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.109_1617838179461_0.11320895273629161","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.110-renovate-non-major-c795faf104b229e28e4c2cff89cb50cd9f47cc6b":{"name":"@balena/jellyfish-test-harness","version":"1.1.110-renovate-non-major-c795faf104b229e28e4c2cff89cb50cd9f47cc6b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.110-renovate-non-major-c795faf104b229e28e4c2cff89cb50cd9f47cc6b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e62d2d0cdfb7dcf73f6e52d826194735d49afd96","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.110-renovate-non-major-c795faf104b229e28e4c2cff89cb50cd9f47cc6b.tgz","fileCount":17,"integrity":"sha512-qMnpuXqZeichqx3Rh7suDgZ4o/xK0a1EO5/xT8J4MLj3ss3kH8Yvflb1hWVa/z+/kXW4VKU5Qe4TkREJqmJjWw==","signatures":[{"sig":"MEUCIQCAYImCknfCrOX4t6qRg8n6tVILMsEg8q9bJmkQqTklzwIgcHR0UwZ3JfYl1plBoWWsSmFYxUq5wha6+qbFiOaO77w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbmQVCRA9TVsSAnZWagAAEnQQAIl3mZzSo4TYYwT4ZhO2\n1f7GwWtV3uCpZjCMbCoFtvBNsia739m4a9tWlF+/E1oKqlMQCFNpAldwUhub\nq0tLXAgobOM4VrfKFQyfq5WTsD4DeI32XO4aRRJd/10/qIv1FYLVI+xMQXjM\n8Vr+8ACe2ROJbsnmgQNLJACo4uEdgTMinQfX1xYSD2U6QC9wWNvo3NpghHHw\ngNBmw9u6nyjlreGQHznlVfiRNzB4/NlcVfusg3mkahXo85mMV0WhjPlvUuD1\nTwA7V+cDnP/eFlIWpn3sLRnqu5jzKi7Z7b27qcMazwml9jY86hUNXvpjQPMo\nPIzIGwY+PA2h+XPTc3hT70Y7TOf1IYgjZmJJIE6Ypp2+poj+OC9Jj68A4435\nTcdbHEmOM9Xb9RCOJfwepyN2oqDDaDT9TJszTq03Bdy5ceUfZahN1jtXfBZE\nhMSeBHN1V6UWFvokRzTgmGEjXHT7D6YPUss7MDbiOJeKR/d/SFvYonyhghqn\n3bURb9wLSXyPwBSDbvC409lTNdWx/cZYcxRxf/WdSPy7ASuWS4IC8PkGSbPd\nZIj+aXYStlXj2MXsNvxWFGP3DHGkw2MYGlvfRJMtABNkbv7dT5S8Qh/cJMDX\ngsoyLTDh/VV95gzZeZHf6IHQ2p+sJKgwllEwP8rg190m111bw2vXsc8Sm0eg\nuV26\r\n=pjUZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c795faf104b229e28e4c2cff89cb50cd9f47cc6b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.62","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.13","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.44"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.110-renovate-non-major-c795faf104b229e28e4c2cff89cb50cd9f47cc6b_1617847317173_0.664432876071861","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.110":{"name":"@balena/jellyfish-test-harness","version":"1.1.110","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.110","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"32afddbc631439d1ba2273b0097d4424fe3ab806","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.110.tgz","fileCount":17,"integrity":"sha512-lbBKrPM4yhB3SyfV/q8uvtLZvcgJTpsb5ewVPWNrPT/AZNK1DQjqSVTS/onsudcHU26zloZCb0GeEdTCrD5c/Q==","signatures":[{"sig":"MEUCIQCr62NhUl+wt8DGcoiLccOLEL1FwHNxH+ItdqXGcn2PEAIgQ875AoGvW6cSSzmWT09n2I8ncDkJ+VAGDxM8qFVJ7qE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbmTzCRA9TVsSAnZWagAAbkAQAIivd9sFY6i2Bq/o2RMT\nHUYI367R+lkwmBAVE9ulJil2AHxMst4KYrfS+M7bptRzMTf7aNjuWzaizU4J\nb9BitmTjHOBHvpnCcrCJXjISdDh6efKeFLR/YGye8wyTPalG2ifJaZcxXQgB\nryLtbY586FN+jvTAqdYl6xtE+WJT+Tn5B7gsFTnXGqD/LwmQXCnf2HECk0pD\nUbwSBW95nwRaI1ji2pCJYgsRm0MCkYws0YTyxA9RIH7EYkKTilswEJY5eNzs\nvQA3XQJora9VFktrD2/3BZv4VP2g+I6SiWBSVIHKeW+MSRi23g56GIyThg9M\nGXy5rmFbxW7YFiPPkzX7wOheu2pfLnBAjmvejQe+gCpXqqSiSCRV5AZK9mVy\n9V4iDZRN41+9NBC+R5bSFblroUaXOe1XLslDZm0BYoRHScm4FBM9Z0EducL6\nHRdkuC2qFJEAv/fA7m2aW26PcZWQ7b+ZltfUVKAC9v5hQFLe97ZPKOp2Az8t\noLpfSAL+Buwm2Dmllw3Bi55J/05pf2iJzcjwbkYxCUb7jCbHIrecHbmz/VbO\nLYcaaIlZEDut06TlBkj3mpu9IkKtMjQSiVRa9MSwYqk8hzywWTD887ZzAVHx\nXlnfWwVVqMSESQfrwnip55qBk0o+8tuLlF4ZN4OV9+2pxaMq8GEaZhqrzD5c\nxNpd\r\n=il2C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3c860a2c0935eb9c3585c2e570bce2295bef29d0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.62","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.13","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.44"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.110_1617847538957_0.06448319886677845","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.111-renovate-non-major-82a09acec3a1f73d3556306f672f66b0f7cf458b":{"name":"@balena/jellyfish-test-harness","version":"1.1.111-renovate-non-major-82a09acec3a1f73d3556306f672f66b0f7cf458b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.111-renovate-non-major-82a09acec3a1f73d3556306f672f66b0f7cf458b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c766bb04b3d6c11c3b1338b112212815595af30","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.111-renovate-non-major-82a09acec3a1f73d3556306f672f66b0f7cf458b.tgz","fileCount":17,"integrity":"sha512-oD5kNXTTGClbHqJ3Kus4BFoGjhuN9Lvcps9cUGw23mdPuS6RPMHVmsdfDrirHIqfwFzLN+C8cnEOBJ+k1ha/Hg==","signatures":[{"sig":"MEUCIQDoroJFPBFaXbu4887yYqTrlg1WqlmPJQXep4Q9Ke4y6QIgdwAPcDwPee1HxDatvMiUh/EqvKhY3SXKplW8fsJa6rk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbq4QCRA9TVsSAnZWagAAe6UP/37FYo8sodBVi+o0qwJ7\nRkgJaMjz02SaXO+AjXXsE4YC7lyokz0yF3/VaK6d7Dn9YW/YAIx7uGZgsD1W\nC68YDblKa9//l1kJK0hcdLAgik4RkZcT9r1zzo67xWtbctOEB9uUphm1qcHp\nnuOo5XLIx9MF0pmt4K3KehaCVKlJA4uvQ49MGZGrTIHRpWuTOGent/roL2JB\nE0yJrFj4bEIDMblYH0OXYKGixDvSHU4eSFp4Vlf9Y3wPiQX2oRThIExW/5U+\n1S+vyOR/cjvCo+ZhTWorlaVJz0KQR7OnYdCUELlSEatOksxn9em93/wWfd0X\n+OXIGGCwBgA1k4CKlt0ixlMODX6SjpHLFjrUPEKE4Sd50tYUva0Jrj6aK7jC\nMLvFjOreyBA4tjvjfQq/Cwhhf2m8LwJGSep0CoOGeJDkgZ0yb8rlYHw/UJll\naIfWter2NELdpRiL2VirgmcLAKCRVQNbl30eTbJwPA22QYeUPerewQLfX0DK\ngZFr26qxUmOkBbcG45Tyb+we/+b+6/5rYsmK+QwKYiRvmFEutPGEz4YF1hdw\nbmIYiWRSKjGkJskuBg8qaY4EsDrEYOz4SuaxPjhK7S84qDkcLB/3yvly5Jid\nZmzVMyZX8H27yV2Sm827wWfGWNnIqEtaqXOwSWqRi6ukQNnTIqrX80qw2Zuq\ny0ar\r\n=KHMo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"82a09acec3a1f73d3556306f672f66b0f7cf458b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.62","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.13","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.111-renovate-non-major-82a09acec3a1f73d3556306f672f66b0f7cf458b_1617866255748_0.22243815894248442","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.111":{"name":"@balena/jellyfish-test-harness","version":"1.1.111","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.111","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc725bd3fc60803744dd749f54b4e42a8a812935","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.111.tgz","fileCount":17,"integrity":"sha512-Yhx01KDZMuPbTr8U1gpr3GireptzKwqwEwl4U4IcQ21UqnLevrJsc6FWNoZk1Y5fHGu2WmLAxablFEHQQAN4MQ==","signatures":[{"sig":"MEQCIGl8yM8e5Rtz5ZJveMySURg/qMa3+TN38QOLjOPOnm+XAiApH3jT1KkQaQsRgSBva2LB2wosNS+aCKgRn49YXygZTQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48676,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbq7TCRA9TVsSAnZWagAAYbUP/Rcz6oVYV3aAO4TiXRwT\nOQCIxYHqZLDgXSKG6ASJuUN14IlBRb9k6TCVnIxHBXi3EF+fAh48hTQjonLO\nZMnWjBPQp5KGmlOgcZwtpnsIIy6FaApm8/5w/xqP53ZXsXRFm4GYfJo0TNDs\nAFlXUUu3VhL36xXJgLALYOPvke5eFea4+UXZYqe+bYTZmjRMsrPNLz3NtfPU\n9XZqtl7PMNr14eL5FpsMxJs5oMhjA/d1U8Tiu0ywrYVhmxhxJm2NF2jR+5h1\n594mg2dvaMXJ3cJd/eOeGYh+btsTkwYrSdEqzUz3XcmvxxEZ9E5ezhM+HSWh\nhZO/JpaTkkL/3Q9XfNZk8843sVLXyUkZKb+ts6Pqg6jBra9eYXKukaQSAMap\nR4s4MP8Jh2hB0b0xbGZWetM6MctYnTiJFDsF7DWpspTIV99WnwgIpvqu3iY4\nOtKUyT5JVhEQcPR2VsAv+nfw+D19Hla5ABxIAmPRa4BVtM4dQWSsF2pzG4Bb\nZ1VcnddpoAfSyKvth7hGPaHiuMpEP6t7CkujzcxAX2ixKdO6XGtqKB+OTD5B\n3i+bkins/voV90XMfomjbkFsOg25SJdAD4Si7JqvkpVf6dOUUYPH+kPWhtLT\n8TcmyfOeDbJYE0CzC1/nzW8rsI1a2xEMqerlFkWNts9l7bI27FXOw+aek6Mg\nNvqt\r\n=6i+z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47871b87442699b8014b24558ee02fa007360a05","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.62","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.13","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.111_1617866451011_0.08058139178609292","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.112-renovate-non-major-095de296cb42cbbfe7cf74e94636cc485cd3ead8":{"name":"@balena/jellyfish-test-harness","version":"1.1.112-renovate-non-major-095de296cb42cbbfe7cf74e94636cc485cd3ead8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.112-renovate-non-major-095de296cb42cbbfe7cf74e94636cc485cd3ead8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d3c8796074ae2709cc6978b3d57da8f5696c0430","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.112-renovate-non-major-095de296cb42cbbfe7cf74e94636cc485cd3ead8.tgz","fileCount":17,"integrity":"sha512-aSKmhKpIlSaolIvNsHBO08yowdmtDXCyOqOn6x9tHY03LRjXmF34CVBRKC2MKa1TmNXCb797ktmbXsVcqfMxOg==","signatures":[{"sig":"MEQCICTv8zt9vobq5HeT1QuS8mhuQaYa0oNls2omJn8rf2SNAiBFXALw4b/bi0IflKFUeS08J4GkRIu9/boIf6sjRD/26w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48806,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbswpCRA9TVsSAnZWagAAAVQP/1L+6Sqr9P7ILEzL2eFS\n4j/DFNUgL4zueRCHjj4qUP06cc7JVisLsEY6wXhvItpN0UK1WuJOaQNZw8LJ\ndoKvshd5KgHk4shAhGe6Y8cuO04m+HA8vhQ3V+qoFaoB4sx3QvWL+zzA+Cph\n6UWZlcQh213Cni0BEfydVVDX3vgI69ZxB/piLboPnMbcr2HYD1A0HqkyArkp\n+awyFzP7m7gKZQY9Hu4bHOoMt4UpcgxBTWy8AB3R6Jiapsx0ZTKG0HUITrd4\nN92isZe9apBG3hQcVQ1Q6JM9lEtmBzuHn6ytYFzZKahn96oYkltU1Y8zGpve\nFvYmC9d/MUI3sQxTjyWFnN9LFrRFOpiP2aWpOqtMOF6NqaqrDEcwtu81DM+v\naFLPDf2eO68JTmvVbeS6/33LY3b33rlAm0N0/YO9T2yOcgoRadtqT+A1xBw1\n8+ojdGJfjaYO9wBt5UtOAqVmIlxOYDElaqCgyHi4xgzeFlIBK0CEsdIBHkzL\n2O+81ICUBkuB3QGM8I6N5OGbU957/UvQzBaNOW9XxFVzRPqW3KfQm9JUodyb\nbcTubdReL1yCBQ9XIeTeUTxl/3586ujw/Bt/LXEtXD5Ak5W8QTno1/auP5RJ\naM0xoaJq7LzyEYpBiKHaS69GhQtv+CwaCBZztl+hLtfXtIrQKDDdYNWYxNsG\nPcxi\r\n=W7kT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"095de296cb42cbbfe7cf74e94636cc485cd3ead8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.112-renovate-non-major-095de296cb42cbbfe7cf74e94636cc485cd3ead8_1617873960638_0.8082742311561071","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.112":{"name":"@balena/jellyfish-test-harness","version":"1.1.112","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.112","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae9bac3c8f449eed45990d3d3be9b6f2f0190e99","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.112.tgz","fileCount":17,"integrity":"sha512-fb6z2XMPzjcoEb8cJSiB5rzAnJt6Tmiwk+Um1hDLJHQMGbZlrMhmsGWGvQ0cAVJUniJ7ymZoxA0XWn/QhV/+cA==","signatures":[{"sig":"MEUCIQCYFQvnbqZaicZpbMRjTjUWw/3CXZdS6PvV41Zw3OrotAIgNjyo0vRToGghI+YrdGX3r+IGIvoue+qtNXl1rWQizG4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbs0JCRA9TVsSAnZWagAAWL4P/jK7NB5gecUuS7rtTmql\nIeJCasp9WjonjL152gHskkunrzylLezNfBAQ8GA33nJpKzgVEBr8DSgN6F45\nT2dwGLRH6oFCl5pM1/VYfr1q4z/8I0K5D8pPhJslJ/a+qjG5Ar2TAQY0Tu6m\nah2K1ptct2gHjbeKGKmD5/PMJYMAOnIsqzjHO6rpeOntrM4vopFsAX41wqzc\nVqlJNavKZsFWn2J2732NAlOQOWqvGXsRgs+Lwbr+yNxfUUWUue395MxK0Pu2\nhb3TQ3ssnbSEyROashOqmmot0NTRJ0e6WIV9iO9lHBdkx6cv3e0lj17RQwPq\nkuqVq3gMuI7Bp/t5TQmv+TJRqQBERcKbp9qTxgVFZrcYB77gfBBssLlvGqLE\nHQt2CW5idv+4i7EDcY2XQckM1FKKT0DwfI8rEvsG9kc3Ifcj/dKd0boSWrdh\nScBtnxTPHI33YQiCtPNycnF+6S9ISecOTSuBp+5J4vQuCuqTAIJS7/WlbQ0z\nE6+Tm7yezn18X21W9hgFr9HWN2lAB+/ZVeoHmlrcNt8gIAFobBQdWMHODcj3\nyi13O98nTQR+/m379TDHM6HDwETOWb0KXJZlsKOXiYEPMZ+NRDNclHDen8ne\ng1H0ZvXu+iNfi26f+AQM0LLdJ1lIy/+dDwpLmvJaUVtjZt2mSD6AB+lfXeB6\nuF9N\r\n=Kq4d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f19bb74be5fb28c490f8bc3a914ea605411dba48","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.45","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.112_1617874185443_0.32416568891378583","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.113-renovate-non-major-56288de9ba2d1b7df9cdf4188518f682e0f2f688":{"name":"@balena/jellyfish-test-harness","version":"1.1.113-renovate-non-major-56288de9ba2d1b7df9cdf4188518f682e0f2f688","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.113-renovate-non-major-56288de9ba2d1b7df9cdf4188518f682e0f2f688","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"68e04a1056597b98b88a9115c5bc4d82ec4dd32d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.113-renovate-non-major-56288de9ba2d1b7df9cdf4188518f682e0f2f688.tgz","fileCount":17,"integrity":"sha512-rqNumo5c7EsTI+QDmfGaDGvbAwk1+9h/llvGGWABjnY72iNUiLRQKvSHr/40miOcbbkoRcGUPWUVD0B2IMAsoA==","signatures":[{"sig":"MEUCIFKw76RAxbxGlt0rPKU0UcL8sfVqs/iQgkBra9belHWfAiEAlcT5T7qt0cEErZNIO/r7T47f+LlLy7M9vbLoK1+FolY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48912,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb3BkCRA9TVsSAnZWagAATPIP/ikp9zGhIFC/cLdXzZOn\nV4ti+DE1qLGt/wpIsvpL46kaRcQWDN9JHrF4OamjXrQla8oipURim2kctGpR\nVMdKXVyIpB+wv6uQn3k/qSjfmBDhAcOTuX93OjdZqcY7KeBdgu8xzTKhEr2A\nSntCycLgDgNv7/vInNELzY59kEdv0ATkcfW6Ws811h+fQeu7fhIph5olzcgO\nkL7zHbtYR6bE2q1yO7ynOUX3ZgnpTkJgtFNScbSIqu2/XzmSDHmVOTqq6GQj\nxaDX2CyF8uK15pxP/ugZ8GBXnw2rANswMgF3NJu20xk8Nxa1vUxpgwDY2pHl\nd5K4jn69jjG8KlOuWjxNffnPsOSbOlnkNosvCI3hle0e8oeLu8751E/j82Xt\nJZOphaPBJzQ7QCmkwR5P9yLoRDxvokMBqRV9qy9//piNkUkFZkjbHshoaxUE\nTRZ8hmcLWvJw1lr14loxoRR6pW0oh0CE5pF8d4BZOdrIvbYRiT5FFs28v9Wf\nIjKB2DTJsHmTu8hK+0PbwfvsW0VmK1sdp6eolUtrIT1cLVpd3LTo5dLz1peV\nv59OpWOtp2eB3yPT9kz9v4zeZFdnUZLowE8R0dUI/PDlWDl/aEYyncuI/FkI\nHZ4BTrbrqIeoYN9vV5b5Nn9qfC+nB7BmTZnj8va59o2LbvemK+nCCWA3TdC9\nbp7N\r\n=VV43\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"56288de9ba2d1b7df9cdf4188518f682e0f2f688","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.48","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.113-renovate-non-major-56288de9ba2d1b7df9cdf4188518f682e0f2f688_1617916003868_0.4607071804999565","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.113":{"name":"@balena/jellyfish-test-harness","version":"1.1.113","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.113","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d9aa4f78fb48e8eee43cefa47f790d15d3e13b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.113.tgz","fileCount":17,"integrity":"sha512-kEfXzepBVpGcNRehKzDCuB4zLecI/vbOM8q0InYvtLkCFQBSNz3B6cDJ2U+FdcE38zZ4DXsOKnJ4z5+RlvyF/w==","signatures":[{"sig":"MEQCICBSm8ZnDJ5MG6eyxIL9JWMMTkRkDLwWQYc8q3do0AxTAiBtUpcAt6l0gr1qHXtQCXj2HZeOW9dtwLerSzRevnyhew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48852,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb3FdCRA9TVsSAnZWagAARw0P/RWS6PXEvLPWlXJO1eX4\nUU49KKqS/VprVc9vW4dmo9vmwEveImFGSJvrrTT+PSOTuNnNvDnXYqbHmKVF\nT0hZRep0myv1uLi/phUvJPYbjW/WGihGjjRwaaIwsBYk70UEB9mUY3hF7jQb\ns6vou27f/9Yt/4G4SU4jnf7GWU2AgXorR3R6X7TiFGXR6mhMNpQbwQ9kg9ll\nDDOo9yguh9khd1/3aZOlwqyDhTe38slxcMovaJE56qqxpl6W/jIs0JzdKBKC\nUv1upCtUbNnrXvoJyq4aCOWw87ZP8QglrNG3dMBdnYJ0QzY6z8G1S9YLjcqF\nRM1q4AW+j6L0iH3qcFdem5t0TViwpNUR38i5VbSg0f/YoAuvRccO0KyYG1F8\n/33OVMd2oDGzed2PJhEmYZgigfjR3P8W9W4rCOnRby2+uDfii8bzPpIlQT5i\n+4spch4cg+7A479Hn9ysNljgPGiTXA6iEXEJHdCGjB+rsdMgjHhWiQ56X6mW\nqrPkaiQ7icnI4TDIRVvTzZHHhrTOH7ONzPoZZZ98ePxCX8NbKA0DZ4cQXJhE\nBPy/JXl4pIyKtYaiaYKbhkjXZJblnaehz8h/x4/uy9EUQUXNbUnzUpmPTAmh\n+DYQOWEZCcpUO2pTjjEYIEQaGwgaWruUcrw1q98YGpxgzfdqH5cZim2IjaFM\nVT1Z\r\n=g3Tn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c3818f39a3b4c2219c3538d3c61bfb83a4122ed5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.48","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.513","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.113_1617916252984_0.9464125606395815","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.114-renovate-non-major-ee2213231664f7c4741ad846c7dc7cb4f5d621e4":{"name":"@balena/jellyfish-test-harness","version":"1.1.114-renovate-non-major-ee2213231664f7c4741ad846c7dc7cb4f5d621e4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.114-renovate-non-major-ee2213231664f7c4741ad846c7dc7cb4f5d621e4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b0c3bc87b70b97d5a443199da9f3ffe660418989","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.114-renovate-non-major-ee2213231664f7c4741ad846c7dc7cb4f5d621e4.tgz","fileCount":17,"integrity":"sha512-nWYnY1ab2Q4XDA/9mVK/cOBsG3MuUx/gX52CrVR8+b9xKOZ6aY6oLaojaARWPuO1AWD8UxPGPds84UaKVm73kw==","signatures":[{"sig":"MEQCIGOGhUCTIubVOzWd4Y9KzJk1HFJvkWUfP42fYc1xQAO7AiBNkaedNZP1dmFED7crBzP4MU1YMk3kFERb/Hw+ywNsUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49019,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb3uUCRA9TVsSAnZWagAAcJUQAJGSHzcMjzPD5GjpZjrc\nh9rhHq+ZLKft2/vY3cjx9D/YiUR/VtfVHuLPiYdKdB21wjd5jsi3RoAcOphH\nzgQknwzE3KNXKkOlPKDGt1udTMxOFvuo3j8sUcvvHW/OGKqzC92LnOx1CVys\nD/codOZB+HkLwF+XJnoJNxb51iImHSZN7CZnk6+BFtu35qJuzEMK6WuNkdFO\nOkG3cvmg8FBOPbLczbST7pcWQod3ENazCApWgjij5DN7gWm0wJR8XkXBwyad\np6N7yUTWC/P4sBCgP8L/DX3qksTrX8XNL3vCtvtomlWr8t/nLDo1qHCeEWYG\n1sWW13aTXFn2GsYrtrA+KBzMzxYXbmpSR1RIVP3lFGXF5pxqYUT+uDedI8du\nS1has634xy2xttbjAL2mQxXJE+HN2c4pM7EkE5tk1wrrrzyw0kVxpiMeDcOr\nWwqMtj35NYUqcUI2R4DNf148dm1D/iQT3PAMy3OBdvK7Chvlb/v1we5R0ETs\nK2ai5ayHganS188gXAq89P87WzZKK2H8F4kj9qDNsSCfckf34DBc2yrXtrTu\nPF84hCmX609c7+fVvMVKTl87Rprda+YTfSNuqOoQa5tA5GY+SMs7scJlzCYv\nvT3l+2sI9ujS41FjxIxgZgqYNiLcM+DrH1MP442jfGTVxEW+jHUfvJ1WQa8M\n4IJe\r\n=o1+2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ee2213231664f7c4741ad846c7dc7cb4f5d621e4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.48","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.514","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.114-renovate-non-major-ee2213231664f7c4741ad846c7dc7cb4f5d621e4_1617918867808_0.4047850752043518","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.114":{"name":"@balena/jellyfish-test-harness","version":"1.1.114","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.114","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"943a15b662e0b024d6f00307587b74e35f2d05e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.114.tgz","fileCount":17,"integrity":"sha512-r3mPBJYiLBRMt4/KXhTMUqj12g+hxb/Ec4O23kQ4MR9ApBot0fns8E553WAs+IjYUOCCqn8iJsHHyadRdTQpzw==","signatures":[{"sig":"MEYCIQD1sSzLl2V9qVkh5bFw8231XBR2cu068nqo1z5SC5vp4gIhAI3JwW/HMX5cDAEmdI+ddh9U4P7h/cIjls9OHmCnmx86","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":48959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgb3xiCRA9TVsSAnZWagAAC4AP/1QRwaAMtc7h3xm8308H\nT3G/sSrk/LPFKIgWe/NT6G5TUZUa99yxReWUx+1ec55c/NHCUY8DpKb1ld+2\nWCt1v3frqtgUwoY6BuyYfZcCvUr6aG5EzhGTcigFIAg5RZWEaJfyvvbKQg/7\n5f2nVc8hKeRrln+8gEqmvosTXZ8ufav9aP5ag8lepsUaM7AySSW1NLLQX54c\nvYxed46huAzREApRwQ24EDdW9uFI6Gb2j7C9AJzRBCOCxx7LOJFzSDrROH36\n7ZfAlt4XX91jMK2LFWZYu+hWfhACR2O8+5gL2de12VoalTWd2jjXMiI3dRY/\ndskv16dPaMhXCZCrBh8k8S1JFqB9YYpCbx9ZPvZQwHlBc0FqoYl7Xh4gqSUH\nuIcHpRmFjQmQ7k/TAS/AgB5ZFdk2IW1PJ8mZ5l6SGzL2bsUEVCtkjPva/E0F\nxkTHW2s1DL8iVRcUHcfBScWlFeigkiFRMZ4J4K6AnmF7HOLmLX8zlldqHQvu\noSbmRJZnwpJ8tH2ARu0qH1JHoE8EAVPoHN22K/fZoftGGFchK3HjJSRIbjak\n7cibgfe2T/ICo90xnzQmpzHII2O142qh+4qKJa5hXGdPuzMN3Hevb0ndZhew\nNxFU/22ng9DNC2kDVNXEg0jgP6y/+kW6rGE53UErfHNAtOdo3bcDRQoI9z43\naqUq\r\n=aORm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af5db7f801b7029ebf26d9cd896802d86367eaae","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.48","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.514","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.114_1617919074332_0.7896037002675491","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.115-renovate-eslint-plugin-promise-5-x-04cb635e6b7b32c454453427f7476d54aba9b2d4":{"name":"@balena/jellyfish-test-harness","version":"1.1.115-renovate-eslint-plugin-promise-5-x-04cb635e6b7b32c454453427f7476d54aba9b2d4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.115-renovate-eslint-plugin-promise-5-x-04cb635e6b7b32c454453427f7476d54aba9b2d4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"adacd697a04f4f96b300df0ae7e5803af3685db9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.115-renovate-eslint-plugin-promise-5-x-04cb635e6b7b32c454453427f7476d54aba9b2d4.tgz","fileCount":17,"integrity":"sha512-dhvGzHm2aVQ80nL7gocy6FGOb3T++BvjmuAYrkKJXFu6A5fhRimbG1IGEC8kfIPUpyOruEbEEnWilpIydAODBA==","signatures":[{"sig":"MEUCIG2sTqpVLdLtLs3KTBVwiM/bVdQfFJ5uUNrz89OfhA++AiEA0BFjv1fZIAN3AmQx00r2VRagywlMZORFLStJphahFZU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49134,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcL7fCRA9TVsSAnZWagAAC/8P/2NuLqrZLrCgeNKwQVpd\n3kd1CUQct+OoU8ypDsnf9dGFSrPguUXu80ZmTEEPQMwlaOrDHoP5DI6HX80E\nlvXSGbjOc+JWe80qJPSMcH5MSbD9tegFSbsQHJW9IzLoZkrB8kjsFNnSAdc9\nC3wFsqJqmYgNY+MeR51tsa1gmkJ9WRENi0meo+lCH2IeGEL44Lgm4R1SAUj+\nnCiMr7f7dBRCiJX4gjEkaS7EMduhKItPvumvFVfOXvOn4iQKt8wbDqTXDK+Z\nh2Xm8iUMi327nS+GMyzwuJf61X6HjI1s2UB8z+CFHTPOepyNTNKzndAELoPa\nXHHqkc2oN0KlB0B/v4MsxORG29dbx9v3MwERobwDMKfqKKvLP0TxXG5A8won\nuTIqdz63E/3e/ZASRCorC/CvvlkjN9oR/TQc9gUjM6oUx2VUtsKpWKWXZ1yA\nSPCX9Ri0M1LXK3v13Q1byUqsmrlQS6nnP/XyAmWKLr7KR4hR/2wIgpo1RA2T\nFyfkt8u+WbGnPbP50nxdC/lWLOEL3wymENZ612FDhaOC2W/9bPyl3IQ+PWOf\ncH2m2dpnTR2UUt3G02VvKfuTTEhmGcIKeO/P+nGOj57vwRSg3szgg4DVb4CV\n8Kk/UfoRrPGBnPvmaPNZM5KkZysuNjRVXBLXYsf2IOncxApI0FvOsYBfKQ5F\n+0OC\r\n=pYKC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"04cb635e6b7b32c454453427f7476d54aba9b2d4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.48","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.514","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.0.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.115-renovate-eslint-plugin-promise-5-x-04cb635e6b7b32c454453427f7476d54aba9b2d4_1618001630894_0.4466330424888352","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.115-renovate-eslint-plugin-promise-5-x-45a9e67b38e9eadc6a90429f951eaa7b15205793":{"name":"@balena/jellyfish-test-harness","version":"1.1.115-renovate-eslint-plugin-promise-5-x-45a9e67b38e9eadc6a90429f951eaa7b15205793","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.115-renovate-eslint-plugin-promise-5-x-45a9e67b38e9eadc6a90429f951eaa7b15205793","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fac7b75ab26e227cb7c9d7166ed8f1d561d2d300","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.115-renovate-eslint-plugin-promise-5-x-45a9e67b38e9eadc6a90429f951eaa7b15205793.tgz","fileCount":17,"integrity":"sha512-txLI5QUuDrgZbNtX49qLAscdg2yg9f19MdvOXZ+v1nvsIUZMxoFwLq3DTdCZBMJIuUlmVP5GLXDQe/44XJVVbw==","signatures":[{"sig":"MEUCIQDxx7Vmes1gm7NP5sHw42BR6TM6ZurISNAiN9wpno8V/AIgBPwbL73o8AviHQlQfmKYvM2Ejbumk5JyHiJq/B0cW8A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49134,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcOZBCRA9TVsSAnZWagAA6H4P/2fbMulmZR/jPMc1HsFb\nGN1YFNgX2hzyEpABecwZ0ekoiPQA0GOSNAkkn8svxW8R5xwM0w0deCMm/7xn\nbQZ2Wy01pOVVRtgba2KXIYEEIbG4Jr2NhbjHLnZUz8DkKFU2Tc5+WT2HzWxQ\ntxg3WdE1q1h7TzAA9GAosQKuwYain3RVEr4miyem0v61K8FdJubWMyaPfgjS\n1nGgHmylhgE5D/SgbiHxpFmsbKsgg09L5nP8vePcCHSBvDoW8dG9rvGwaTnj\n0WYALRp+/aHDG4ybHnJva+l7UJ2oVir3MR492+1CKEouIfjwZM1NH8Ehf33p\nF6I2IZAzxNIqWUajsQD+Hkm6LkOHdxdRO3Kzhz0jZ11DJyEdC8rS8rBfVcWw\nUl2xylimZN3LBhljNItr5oslk5UR6icB5XSzImc3cqUENCq0hXKRHLKd52VL\nWPQGfDQjP1R/iV4BSNIWWA34aV5uC/djAft9EGD17OabvqK9xX7YAk/P0Knz\nCdIxHTWtgvrtZR9+r4bfIu5GG8GOtAt5zt9y9Cj8WdNEhnh8knhi+7I7Cy0b\n1G5RZUUkHSQLv0jd8VURlo0lQDAq0WgF79XWxT0+qe/TWKlgRAiWb9dqHBn7\nK6ZkE9j1pDQ5QGmun7dlFXNOFzwy6qSDz1oScuQso3xuSo0zuGZ6uC90J9Y9\nk/sr\r\n=FOqa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"45a9e67b38e9eadc6a90429f951eaa7b15205793","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.48","@balena/jellyfish-sync":"^5.2.63","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.514","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.115-renovate-eslint-plugin-promise-5-x-45a9e67b38e9eadc6a90429f951eaa7b15205793_1618011713253_0.8376243479146661","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.115-renovate-non-major-2389f8584b9880fd48e86b6bc8e779bd7bffecf8":{"name":"@balena/jellyfish-test-harness","version":"1.1.115-renovate-non-major-2389f8584b9880fd48e86b6bc8e779bd7bffecf8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.115-renovate-non-major-2389f8584b9880fd48e86b6bc8e779bd7bffecf8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d6fe477c9ac845f86cb6c95ff9c590edd0dcb5d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.115-renovate-non-major-2389f8584b9880fd48e86b6bc8e779bd7bffecf8.tgz","fileCount":17,"integrity":"sha512-QU2eZGolX+YcTX8BrcsVT+fmcm/kBtIY9eYLoBTPChOm8gNgPKiCRbRo9u4QOB5lMMQoCAYy4zIGUhdPj6FAaw==","signatures":[{"sig":"MEUCIQCL3ptISf3pw52E3XPPuEcKif4D7ZRf9/5EZwaM9FnjoAIgJzqg+9+UV1Jy70PqyQzZij7nkTZHWYAx1dc5efup10s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcOdfCRA9TVsSAnZWagAA6dQP/0oxfnB7sy3ae45G4IkQ\nzsOiLRGjf4sYiYLnYrsDDeGICy3G3MUf/X8CfJsGrSYpfjjnBkAObQM3KOw/\nsGhbTLPDVFtdBtfFWri3Quun0LORfAgiWQtLwdb4gx7bks8/yTHxw2X0dS2m\n0r0ePzhFxClcTjY4NG40fAzB5f2zMi+scnvG1QANtHy475rsmgM88ELI89Fj\n3euyLY2oJs579/2wj81uClzSjBKg/yQL4fFnLZ+BejKRB5jDhWiQGB99Z25Q\nhsb6yQp8TuAWK1d/B9puNOITp8JKfLlZO2VWeminGm9fzJnKaXwe0/dcQlQO\nmfAr2YxUt8nluYDmp6BBLBC9viQwVOkgxHHFrLkzCX7dyxRUZ6nwz/5uAHwJ\nDb+u8KmaO1yM599m+vBqiWQWl7a/ENjYlhsuBolnIjVTI1XJ4UCgPqkHxU7/\nVLvvcz4tzDW4V6uFJy20bh8DQRg3ASm6x9Mt7Igl4qohk6xv5Y7yZ+MG+6w2\nYu5kkkMlTk9ELsm79F+jROFw9s6iYVFAB86r78bqBuTsfUYWy+mWcO3ejMqt\nc3DgPGOoHl5jACToJ/y1X7sCUp2dmBmLLvXKeph0rZSE2Ez1lR5ZdQhnq5Eu\ntsOYmRfG31tgGDV08bU3cSWThsWHm1wEOkmZEgpK8pPqElR3UudnW3wEhe41\nVFqf\r\n=mQDR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2389f8584b9880fd48e86b6bc8e779bd7bffecf8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.49","@balena/jellyfish-sync":"^5.2.64","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.515","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.115-renovate-non-major-2389f8584b9880fd48e86b6bc8e779bd7bffecf8_1618011998658_0.06429174230759815","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.115":{"name":"@balena/jellyfish-test-harness","version":"1.1.115","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.115","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"87bac751c2b65f1b912f4526d130048ef291ed2e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.115.tgz","fileCount":17,"integrity":"sha512-+Cp4VUqx9/NjO6hdhnny2/J76Qc6jUkJudp3+f7r/zFSkB6gobMstfla1W07Ufy6yIAw6u051GE4Fw9q4OHXRg==","signatures":[{"sig":"MEUCIQD+v/8R6suOdIZj1q1I0ENBAMdZGHK7lfun3rMFPoyhcwIgaaDSFkPXiW3nLsx0MYw7j+ojex8xQeIM1Sh1hRNUSjk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49029,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcOgrCRA9TVsSAnZWagAAgKoP/36QklIAY5LJhm4oAnHa\n1WvLQIFPnWuVf3Jx5IKnW/haMo0poLBTf/wXepmzZ+6GSt8x3eE5acIqRUJF\n6DCStq0ZjutGqe/cutgGGsCKHAdCPi5RwlhcBBUypFoghBBfFdKvJMLu3JtO\nxwEo/EqTlrbtlEu7g6wyhMQg88cRLw/OwoRsCTX7Y0x7ClUlehHuiKyKUOoO\n63sBiF7dyKrssWKZJf1KSrBj1mGOXUd40wbfnK3or8okGcWD3D+JfELbNfWW\ngoRZsXkOmznuo6OtPqqIMwnXVCeT8pcx4ctOyqXh6uaz9+bLbyg3ToU7RzCn\nUk+UcnViXYOv36/b5fMZnQLCKKwT4Pv/8GoNf2YHWMVUTuJCJQtnnAMtcbAl\nhivB/XOe7iE2FRVCuYteAcJkS+/69d3g70TpZmYmvXf/VfldObHkR/8es6EJ\nmkwYMuvlde7UR11mQaJke6nYfsEgpltEvsDVD2nhR+zC3EFC9uJc1t5E/98d\nDZZiVRudc+ioiFd1RYJflk3xEFkhMWdXxrQ4QOTDzsOtcO/xMwc2Khqeuv21\nk/5712rinXwYo1moIJhP0OG78rOnR8HqeupTjbaKE5p+4EXnOrVRcdYloILw\nHox3tzIk0BM3MuQ4KkUAjBnR2KYqUv9VRTOI96ngO8xYoyh+vIHVa1xgfXSJ\nWVq1\r\n=eIuG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"afc4940095fe32668e056fcc667d5b0f74f1158c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.49","@balena/jellyfish-sync":"^5.2.64","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.515","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^4.3.1","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.115_1618012203210_0.23134575266103852","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.116-renovate-eslint-plugin-promise-5-x-d4c07c8b497f432766cb7c7012a4690d5000d078":{"name":"@balena/jellyfish-test-harness","version":"1.1.116-renovate-eslint-plugin-promise-5-x-d4c07c8b497f432766cb7c7012a4690d5000d078","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.116-renovate-eslint-plugin-promise-5-x-d4c07c8b497f432766cb7c7012a4690d5000d078","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e14128ba5b0500799a6a878001d4213e7548d32f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.116-renovate-eslint-plugin-promise-5-x-d4c07c8b497f432766cb7c7012a4690d5000d078.tgz","fileCount":17,"integrity":"sha512-IpEGGqNBgOfNGUJoatRYTWiiuZE8LycrHtzwfu9L7ymi377sV6k9b1I0vMHrSlyCnngnxIPLI4jRZ9rbmK9U9g==","signatures":[{"sig":"MEQCIB5ZS8TidOU25bjMpD6S10bgpXOba3M6w4hvWk2FH6EBAiAl33RKeAaYccDRKL1ZuFIe84TC8ZQyvOtiCWTIs8+6zQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49204,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcOjdCRA9TVsSAnZWagAAfnEP/R+x5FPLNNoT7XmcGNCz\nURRyoFl8sCxZiZRgjEqExqRDj4a9eTuv4bQIVRpVWoBd9SXk+I8rITFBYFUw\nGk3MPtP7fuqL84Wi86yVAnOFgKFaHEcf5xLqRdsGlxjCOG1HFCa09iyRMMwt\n/0csZvlwS7Aky31aRP2XMlh7LkxqykMc4HeHeN3lClQoMU0ConOIzIfBWW+T\nCYe+wEI1QDvHgMbdw8l8R7o4MN7/er/YecrtwzmgzPCek/NlcUI5DrLmkCK/\nevJGq7i9Eali11lYe31TBCV6vG/RVa1qhhsHB/zp1WTWCO6uHk63LqYCnWDC\n8SWvZuLkrT8LUQVEqKQ3hZUyy/Iw/OWKoOS7824FYaZ81aPlrQv+4AN0et+/\nrXMt1/fFLRRHbpB2tKfjLwqqIz4LHdal01dGn54QDwY5nwHqlVRJye9kRhdJ\nCZa1ulDlIcj18RZXDIUOt3MXGLIukpjcsLGZ1ILdXgTFxxnWlGnF3MpiJxiN\nVu0vFoDNDbtgdyHdY2JYcrPhYe08pMLIrN+CcEIz3bhSfJqWEubcqxPtVRqi\nhRh85Md/HUixDfGJNXU4G0KqAz87BhbXOYwbNjS5EvopOl5aF1tbucEe1hKr\nFbPS17UqzwSAmnC+HtCMiVoEwjEPni+Xoq/suVdn+9KoxoUs9SuQ594Ha+Ui\nACkx\r\n=yED7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d4c07c8b497f432766cb7c7012a4690d5000d078","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.49","@balena/jellyfish-sync":"^5.2.64","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.515","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.116-renovate-eslint-plugin-promise-5-x-d4c07c8b497f432766cb7c7012a4690d5000d078_1618012380853_0.680319892849798","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.116":{"name":"@balena/jellyfish-test-harness","version":"1.1.116","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.116","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aff618f9962e51de9958df18822acede7c7d8fd5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.116.tgz","fileCount":17,"integrity":"sha512-ZylrZoAAR00Y5WOhxsi5H3hZQ1aM56r8vrU004l5Z9oWWki9ijkX55jy5ErYI6UXgtWEEr4kcrnlVFEgVR+S1Q==","signatures":[{"sig":"MEYCIQCfcX2GUoIcF1/SlpGchQDbhdyjPJrPVe54pwkPVMxvPAIhAMRsXV90LLGJNrDf9FwwkrWNNu69I8aLiAEj3LEpjO0q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcO2WCRA9TVsSAnZWagAAP10QAJToie5voEbV0Aj55QV6\nfafMogUQBv84FfgL1G1cY6MSaETk6cdTOxBJqa32sAmflGFMbqxAlj48Ku5V\nB/tXU7j4vzcBFYRlEmre3ETIkjwiFpToRjklRzEfBWWY5Juzo55YYG9Fh7r7\nkYlcTAfSAPaDg4551+JUtZjub7VASU1kX8GHG5Ev4jWwsgFiOdM7l4DFb8w6\n9PZga6vUoTvXKd8+X/SS2ObWoVzl37vwU98mTnxlUvh1YUJ1A+d9rKB9JWo8\nqnCYLPm9/sQw3PrsKdPpmYAIef7H0T6xphx9HZENBz3W/wi1ZxlW8rAQG9em\njl7MMAe1Hc1UdPOPohWYWreCbczHiA40E2VUZq66CHtvnpr7HUnti3hlwhsb\nhpY1LmMCGUifi++gdsKMRd1Swdthht7TWF8TEFe9We5hJHSUJ0Y7i2S7RDma\nBW4nfMNiFoPyqaj8IQzn7fsngtc+O1X1UXMLXQvvBLkogDN2fL9RwcB1568t\n6kkGiaftFuc9AreyoXJuv4rMviJjryDKlqcpt8l+2lvJdzdaXEVIs3PAg4T3\nO3l49yDH6LxX7LT6eg//PawTXHyBTBAR/rR9inOW7E0ABMbWT3QxTEzZRthy\nobRL2lOHGAiA/VyMfShQJFCFZ/LlsppAn6bqH5A3PozUJGEmlkpalovZr+Zj\nNNn0\r\n=P1tw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d50591041c69cb0be080408adf6d8099c1fa37b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.49","@balena/jellyfish-sync":"^5.2.64","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.515","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.116_1618013589796_0.4955702746306918","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.117-renovate-non-major-e906be80f271c88cc2d5cf359a665d77f7649f6f":{"name":"@balena/jellyfish-test-harness","version":"1.1.117-renovate-non-major-e906be80f271c88cc2d5cf359a665d77f7649f6f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.117-renovate-non-major-e906be80f271c88cc2d5cf359a665d77f7649f6f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6b6c63ce270e895e4041b3dec82faa8ff9e689b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.117-renovate-non-major-e906be80f271c88cc2d5cf359a665d77f7649f6f.tgz","fileCount":17,"integrity":"sha512-mMdSUFBjxp4IeNmu4MbxOkfyrfk6rayLm/W9Zkhuow0knCsX+mGIoUYhJPhXcvqBIslEJ69sa/uxrvUZWK9MNA==","signatures":[{"sig":"MEUCIQCZXL9PFPh+ezTM52RGXR5V8JoUwmbNJs9RQkyCRnHOZgIgLh+CPnlAHOhS5ESE8MtXXw3pFwZjAv6DCTALzb2yiSg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49258,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcO7UCRA9TVsSAnZWagAAKHkP/AjrvugoAM04WMfGA4g/\nXbk8FggZRYtfZLEEitinom1YXh9K+wa4blp2//RodOz5H5KJV1oaxXfRYEFC\nIMWTVy/Co6oDOMADNOYYHxMX5Dw1/xz0iwxArsO8COh0tUqO70dqPB+B3zM7\nmsZEfkHfmRQ0X4l8SnpTBcrA73oiRJElOuP18katPJe0ZBbU1OJkmKEp/ddJ\nXs0oTR9BVM9t9zA7k3HkdxtBcFcCKeq7xfzXHG0Za3i8tgJcFG+DXs+nWNg8\nAu26YOyKHWoyvOmkXGNMWAM83smKCrI6j5DPJNuJPfnugUbxooF5aSRoxZiy\n+hkHI+yyRhEnnva3Axyw5m+m6UGm+ST2I8kXmczi7oIPqkn3W0PVzoZwE834\na/qbTDq/tFa9YzjqhwAzl8wSfjQ7sTWXpcS4KWSZ3/s5128a+YMwi+4YFt1I\nA0XFeNdb8wAJaXTu7a5G5Js4ENtgXkFNNPl4aVvw/F70lq9fcUSXudxDjWzb\nmCeX0DSYN9IAItL2gcZMQ7DD/v+WMMbUyiAS1qASgOjJC0XUFs300GUq48yJ\nQERJRCVrIGL3DWi9Px9d5aScuftEH5XtWVdqBhG61eHEj5SBb+/hA3MNv/G7\nyEm1I8Wxit3kDNJCbILK/y89Erb0WMulMw21i4DxIci5n/GEXnbp/4CV8SO4\nBU9Y\r\n=TIJI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e906be80f271c88cc2d5cf359a665d77f7649f6f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.50","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.515","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.117-renovate-non-major-e906be80f271c88cc2d5cf359a665d77f7649f6f_1618013908066_0.08594595673636718","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.117":{"name":"@balena/jellyfish-test-harness","version":"1.1.117","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.117","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f34ea8d453680a79c3171ffa08bf56698ce6bcde","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.117.tgz","fileCount":17,"integrity":"sha512-R//L+Zd5l4JLIg6r9cIbUBlScAOGn2vFjNqLiF08v1nkdfEXTS2dItBGpoWylBOUq4xnqeVhVia+8BhNeDhpTA==","signatures":[{"sig":"MEUCIQCQSsKB7diV2B5x/Dl3w1Q2irpBu+1GQBHukQsgVZp3uQIgNWWPsP5fA1e4Kb4xN/jwmlPZUZ3q2rG32yGC+nEEjo0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcO/sCRA9TVsSAnZWagAAWtwP/jDbwByP5vGvGuvS1mbg\ny712+kKQQjlBOFNfcCH/gtAyddrsQdlMOp7NN6iTqug6VEV8CSuEppuwpia3\nUn5zu9mhhyj4oMXNtSfk/gBShFip5NtUYUNbQS+Kue++gB+OV+LyM4TJFJtX\nOhmCsHVxBSVsYE8BV7a6mH37hG9RuwkFISrWEbBS8VtisHC29G1a3G5Ofnqs\nLhjsnSkTrHRT4P6eVWphAK4OIdscFe+87vPJsukzncGlICqRE05Q9iOA4Htp\nIa85G1ZbXzJ+ME4wLLPsOG4UV3CWf/moeWkuU1Jz0Cnk9pbgfwWKUOXS/mDt\nNWNNgbTy9hgT0JfaSKN8FvEdTIozeSbnwoyk//N60+pFQ6VeifX12LQzos6+\n66A0xg8YQ07NcsUECrt9yePA3av530VXZdY/hH2DqbAtHSzImK4VQtBBhF2o\nlDlESbNFLsmmv/4t5/FaZlyQf/nIMcXIlkioU+CoK8MoLTPRLnwOZ8CrqFok\nXFPyidI2PTky9LlE0k18FxFvXCjGm0po8Iu492frmRuy0YVGAVLTpzBU9ovh\nAdm+22YWumzmMbgiOv0MkZQRF1B9R5Yp9wDeyfZaKVG0cLd/yNK8wYhOEV15\nVos5ZR5DWO3ipH9/WS5orV58koMXZV3ADir2VRRpBegTfTBQLGtANZqFb7ew\nmrRc\r\n=STWk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f8cedb99ffd6d2654b1d09392719cbf752ad676","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.50","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.515","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.117_1618014187666_0.31313652728292607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.117-renovate-non-major-bd8b3ef4dadf60cc283c316e5b3cc297e3078393":{"name":"@balena/jellyfish-test-harness","version":"1.1.117-renovate-non-major-bd8b3ef4dadf60cc283c316e5b3cc297e3078393","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.117-renovate-non-major-bd8b3ef4dadf60cc283c316e5b3cc297e3078393","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a3a33facc89bf609b2b102f72ab4d848958a326","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.117-renovate-non-major-bd8b3ef4dadf60cc283c316e5b3cc297e3078393.tgz","fileCount":17,"integrity":"sha512-KCChS/IRGFdinetayX0WGcEPuwdZnCTLHLJvPR7rgFqJOOVorw7Jn+8jESlid6uuVrFiTBozu85WCVQ6GTBw8A==","signatures":[{"sig":"MEQCIEHN6Hs18xNewRVzOE6Zpelc+OPghqNnuJOjTbdaYbolAiAXBkfUqW+hEA8a2OnCkY303i+EOELSk44TIMvPb8pWvg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcPBsCRA9TVsSAnZWagAAeLwP/ja4Avs/qcCVxW2iwowi\n8qwRbSoJrLouZmyh6yKuWrfvrSL0s2zzLc7ZBql3A1QYC9pyPoqt+6uuWf5X\nnHEjSRjbFvde0vY3EAL7o3cri9VrP47h9mCCMmImPoo66bz4b+BSWgv8y4S3\nKJJDQ/9zOUD8nhjOWIsygQN37JUyndBRIqwUaF/U3QGKdL9Pb37NctgRWs1Y\ndQk80Ihc/Lk43qaEP0BRzs3Vz9QkOqKGDRd7D/B2DDZ8ehivWR6D8Akg4oDu\nYpJ8QeHHXxK6w6HDb4GBxITCB5sNz/G/xUk0qbIT87EtNQ9+tDsSuXxtuI2m\nJtPj3opOEJSCwGUE2YUPvw+9lPDwLQIMOqFc7yFO2tO5KLps0FYT1ZpX54rY\nNU3beqK49OU1WrjhTLTpkLTtgTHiry+zY+4EDW9zcYyRpUgpiuvkjADwrXmc\nOSKCC3/vNqvtm2OgIwtHAlmV5Ojv5xrh1adOuPyXGDWnSLROlbsnJk/rYGU1\nhkDVx/NFK7cXsiHAHLCf6tfDptiSQP3ZVSGW1N8dDP7sDg6UvoLdydUwwuUg\nA7E2m0QYN9jxyydx9VVIy6yMHE2LPaBT+6cw7nOBnf14MmiQr66V9uK5Bc7E\nQ1iTsNXPM9jVKppazcy72myaNZgY6vQzwkJGBlprmYPFAHYSU/uML94DR7A2\nFMrk\r\n=7mQu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bd8b3ef4dadf60cc283c316e5b3cc297e3078393","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.50","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.516","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.117-renovate-non-major-bd8b3ef4dadf60cc283c316e5b3cc297e3078393_1618014316328_0.8475624946081994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.118-renovate-non-major-be2afe88d5c8313593786f4e2cea40810ab8fabc":{"name":"@balena/jellyfish-test-harness","version":"1.1.118-renovate-non-major-be2afe88d5c8313593786f4e2cea40810ab8fabc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.118-renovate-non-major-be2afe88d5c8313593786f4e2cea40810ab8fabc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5edbdbc3e6ff8d57db94a00699e85d9eda288dd9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.118-renovate-non-major-be2afe88d5c8313593786f4e2cea40810ab8fabc.tgz","fileCount":17,"integrity":"sha512-d/2B6bwumt7+iaRG5HDzyBuxpLt+n2wuSPfvelH8eLV52HEBfkezOsV1F9HTzARQ3MbZO8aIZYjn+coOfuVx/Q==","signatures":[{"sig":"MEUCIBavTkqSiD4QTGCvVsHZyLAJInui9usevJl7sSJORhnnAiEAkYq/uVRwW81bR7lgArH96JoGnQ2KRY7QRjGpreZczNA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcPFeCRA9TVsSAnZWagAA+bkP/3FtnAlcCJbqYbdmvcUJ\nuzLVnao+eupsiignjQBe+uG80BZ8yNwQxsopUdcxkbBNoc6JrCHunJ2hm5kM\nkMVqec822rhIjEoSznnPYiSJ0kvR1vwSdduUugwrYR0dBFoHn2974RjVaKkt\nD0591+qwYaUPZ1jaOtU/uIAYFupAnFDXeDeIBYs8/ElXTbZDZT6IWbOgD0F6\nC3hNvK52OfCDqooWOLukWxIJUUl/o/VfWEmDNPbJiMzLYgBzywKfWqxYegcQ\n55idBaO8+zJ01ndkiHhzzvzzct9xRzLY3+PAZTlmlCgqqmyr28IfT5DwjwUj\nBbu9xY1b0kxXO133pGM2OKhOxRTFFgr+N11CZTPFE/JYP9QdcVyLiu9Bw6L7\nTWUJhanDo1kH3fuxcix79ULfxXuLVkX4C0ASixrHYKRXHWRqfNHfc9zj1WpV\ndeqG871U7ZEtK0lNB7uDtOGVbKDcuUZRjuOfcq22GI2UAcoixAU3Qz5E/mud\nlk+Er/qX5NXCjulyFnAorrFLj/Nz4u9RHXCuYFymtz/6zZhsMY9djY3ASPLe\n1rimg4vlgIstQVknMLQy6/NDY5djSHX4qtA2kMYTar4LXhFvIkBY3YNXXG+h\nFk/U0D0qgRQ+sMBMmau1CyNX4av7Sasn5BRn/umqQoVYKwRCK5uBSczmjHit\n2I6z\r\n=+yf8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"be2afe88d5c8313593786f4e2cea40810ab8fabc","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.516","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.118-renovate-non-major-be2afe88d5c8313593786f4e2cea40810ab8fabc_1618014558381_0.45971637303302404","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.118":{"name":"@balena/jellyfish-test-harness","version":"1.1.118","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.118","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59291b6f79532f45665a6831b0427e0a4abad595","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.118.tgz","fileCount":17,"integrity":"sha512-CoPyapfOjqkdrRscqcdrYpo3kwAd6/1cBIimLJl1YIt7thJEB1OTEzDtMCNxQIemLiTKFuxB9Yu3kxV9jGycqw==","signatures":[{"sig":"MEUCIQDnIAKrN2YiJ0tI2qv3UJrU13foc4U3Ov2D4m8oKFoN0AIgdfiowZvB03U3L5cnbpgeSwDA6BIgEv6zY23NZ0Lt6uE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49268,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcPIvCRA9TVsSAnZWagAAR3UP/0uehj6fzIMo5Mi4QPlL\nZMUNhDEqRyvmEEj43kgeGFPKlWV5uZiB8o9mO8kXlzfCyV+xDpKskm4kip9q\n+lZeNOtH3ifFRdSXXc7SePwtThjkMD4K5qv8ivWKj01LZZp5dZWG/NZmKtbF\nmf0hXMNhpXt3vBDM9VQmmDIfboOoXkuSq5FMx6sYS2n44Bumxdj4nrr4yMgL\ntaMeoL/9+AJJ0ML/4Jj5movjHYKl74/sBZ52DzoKMKvzRZhpqnWfQ5lgj7qn\nB0O0R3pZ9hRv3jTQw1WrDi83eSlnBBrBHiCD42HG6CUXqiEhNn0m+ppnoGG/\naCzccLkU98XD+azflM+zeUMs3e+QRolrhp39bXeOr0AkKHwqB1fWvM6b2CCH\ndTkUKtNqwhnHd6QKFkQ+9d+fZqp0Pb4KXFzaZm70RG5Hj1Xwj8GQ4LMSmpG0\n9oCF5+XXHbeE1ROIbfpcwh+zqyHiSa6TlAJKXGVuFGhP5h+q1zpHbihkcMny\naCIeWQGVsTjNCLHuUYlCosrJtfmr8Wsr1S/5fG//JIISqleIFwLp8XNknzey\nZ+3488Z1nHugEcxL3GkAFUEZojQcKuD9ge0qMqZHoG9JXgzXUopoN1iPwqEr\n7j2hZ/79crI6wZV4790fVfiA76/kQnWtgr9Q1isuZjTeJKFUTmrDGz8fYQrT\nNTds\r\n=urvX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b2d100ada36425d2ce074fc635f27e4e28117e53","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.516","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.118_1618014766924_0.994405483357605","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.119-renovate-non-major-cc7c406090e2b3e1199162e9b626a7735f128e12":{"name":"@balena/jellyfish-test-harness","version":"1.1.119-renovate-non-major-cc7c406090e2b3e1199162e9b626a7735f128e12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.119-renovate-non-major-cc7c406090e2b3e1199162e9b626a7735f128e12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f6241b0406ba384c266d5d49c34d9795ac87f83","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.119-renovate-non-major-cc7c406090e2b3e1199162e9b626a7735f128e12.tgz","fileCount":17,"integrity":"sha512-ez2Znthbz6iPPF1rzP/gx7Lb17uEr+nQLLf2TlD9eyBAX1OVpsJSdr7yq+SGVQysWpSL1eNONxquV43OyOLjyA==","signatures":[{"sig":"MEQCIA/Eq7ez3HgrYw4N76auhYx3I9O7tGDwNE9/ltG5zlGvAiBNvVwRg/NLW4ZWi3BCg8qbrAbeS2KfzALP4Fa/oK+GJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcPMcCRA9TVsSAnZWagAAALwP/1/nuQ/xt7RE7R3/l1ki\nUG50OCagrJiPP6FtXyYtED716Yy8LvA2BVXuoIztM98unKzcldOOFXFBN/QA\nAZwUVQ8EFqP+yYuSkQ8fadHxAnXaJJCHhLocVe+yUZ2Fl3LmZO9A/1bhYcXG\nKU5faTnb/6hzC2TIjnsW1O2vWmflfT9aesPxE1hjVRVBhcOIGz9OliXtfzJh\nc0/GZD88F3M5M30q+qNgi0/mNHvY+RzUAn7/y1ihqIIDNhsq8ZR8XpHG9p4O\nLnisXbKWZrI7nAmA3Y72It5LzlmE8QWzjA7j5dF+p95+7MEfIgalfBMvDqYA\n4Ws+bk8tBAyCYRMXCARgiZfMp9eFfl1pKoCepM2iWGMX3yvWfI+oG24QMwiU\n30UMgpJwDlofGb2+CBTjKGCSK45ykEH/ZQkoEVk0btdZxu1EUHCgF2R9lBJh\ng9hiTb67POyIRg8QYIM/na3rzqzSxcK7Qman29dNKRTxxE01HqP8MbxYIhK+\nHDQJvtfmn6AkUGHCcgEU8bLYVCOfv+Tuj4gXKFhSTY6oqfSzFheay1qh9/Jb\nj2S0gRY5bdUxcnCtOqiAuSxAmzhuE5DUJkyjx4UftW6+73UXwzNEAs2AxiGM\ni+61hMy5iJkWecm4eEZ36c2BIyQWSRQHu3/YEhcbP3rrb4deHOsMRtQLdU+8\nRPGW\r\n=CiJ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cc7c406090e2b3e1199162e9b626a7735f128e12","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.517","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.119-renovate-non-major-cc7c406090e2b3e1199162e9b626a7735f128e12_1618015004582_0.405357254243603","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.119":{"name":"@balena/jellyfish-test-harness","version":"1.1.119","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.119","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93db0d4f80b736bfadb40ce2902b3c5dd39741e5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.119.tgz","fileCount":17,"integrity":"sha512-4OjHalV2SL6qlqUs2RJqYTngqdpvZLoi3dcvNTSSVzvJbz8l9TIDfAywaVRgctqem/rs/1Yw2Cmu49j8KAgSvQ==","signatures":[{"sig":"MEUCIQCuPEfzRre1kWkYdtosmw66rWn29BUvnYmjd3KzLL96KQIgU1Syhx4HaLEDAeYHIsJDNqjhp5jdxhy4VnuYi/Vu0jc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49375,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcPQdCRA9TVsSAnZWagAAlSoQAJ8SDBo/8n6gxFfQ8kTI\n1G9U7r2X0CADl/4XCHBOXv8sQmLSIKNM3Ht9Tisv3YZHaIx0OZA9qAU67MzV\nIItd59Z2ba349FUur2g2c11PNjAt8dfDtJh0cPlGYzrwwRQr9EWRq+2K9WKP\nCGrCqMNWIlyZ8J9qp0p3axxB8iIv+VAMlogC1uldP4/cIp4eRk2CA3tEyCq1\nB7GW1BBzPVpu+ZWAaKBOpxwWzzflylKv+OsMpiQJZN+NZI4g89DVh9uXoBBZ\n4nsK/ItVrR2+3h+DiGWO3FiWxPpr1XzgfWCbhG7of90pzj3GxJBBgSSedVEx\nuEMp7w4X8ljgJ1E8Qm2WZuYJSK42gtp602cg32AfIVJ1Vxh4wkKOjnkFflGy\nUjfm+nuD7Y2uopPJXD6cw7Wc1qLINKs/dpJwyS0GhCw5cBAd83qJEIMV1dMQ\nYYDvU25SI4gR65sOwTJ5/c6BVIy+yC4bk4GAL4n5EWPsDPF5UyVpe6Gphcso\n9GVPJnY68kJ/fvFHzDlm0Onv6lcqVFWuebMicZ3B4KlNL/AGFx8X0CkK1U/K\nsKGSosLsu9su1iT83EX5Hj1AW049Z1nE9ZF61p+LPUK6FkK38cbjLmx/WXqp\nw7qXXescfCcj2iWyTIT25GlY/yJVTh2ycVyaEgF8b4Aw0OHZq5IjKfZ6WfII\ngP3t\r\n=Xf+N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"28b8125c2d99ff3b05df7e89d3cbf0992a06a35c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.65","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.517","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.119_1618015261176_0.48943648080424396","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.120-renovate-non-major-b0e18c39f447913d0112fb77219b2f3f472ce491":{"name":"@balena/jellyfish-test-harness","version":"1.1.120-renovate-non-major-b0e18c39f447913d0112fb77219b2f3f472ce491","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.120-renovate-non-major-b0e18c39f447913d0112fb77219b2f3f472ce491","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf6b92a8bd261a1c3b33ce6e01e5738e31698025","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.120-renovate-non-major-b0e18c39f447913d0112fb77219b2f3f472ce491.tgz","fileCount":17,"integrity":"sha512-cqYGdTF/mZuvXnoh0O7d+Of70hp8pps3+P//TQd2y9gG5CHvv7Un5rzaHalVri6l/rS8YTlGTg57brQztsObfg==","signatures":[{"sig":"MEUCIA8pxbrTOI61/H3dJx2wNdjBph/nOkUL8J10W/jKQGJ9AiEA+eFbwzcx2UjItEo/igV21WVb/0R/Jthw48iJxfttG9Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49540,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcQe/CRA9TVsSAnZWagAAlh0P/1mPmfNc+G9k523qmuww\n2PHXd1T0jUANAp8qpqnfPAYnX+qeXvIE7PM4hqqG115icbGsbMMhm9z3gAAR\n6vcKKIulx3JEMPyy9DbozFFhKNp+yXbAUj4uFG7IQlJFvh6v86Q3vO5CUtoQ\nyHglCaPSlwtYO33sB9Gug6YYUuBO81XqqjwrTBo0ZOjNmeCyp5MgfB7pcUlS\nwIyVideZhKHK/izjNQSJj0OznKPvdEshQf3m3G/+tUgguTJtBYCU2DdWIoaf\nGydGiEn5k5ixiulusjFFEWqqG55GOhvsBqOmFFzLNKvS7pPO2GpErcqy3QpS\nnvdxKYF+lJUINnnLXeg3DM+NWDFZW1Cw9uTpVH6FOnzZj0CjiEwIXyBn8YP3\n3ES+c2oRtVRamgV6fCM2V2jSrvSaGI+0q6db0VFlaib3tvRosfE7kes9qKXx\n6TxMtnSPaQy2u26pZjW1uKtEciBrcvfEE7dWdaHYZIRjnaE1J2nI9Xai6ioT\nHRnTbWCKBagPhm97b6yUsPYNWEtdl7UTLpOWFlNxNWe7JsqOw58vymQd/uUW\nCUnCwJFxj/J+/R9pA0GuflQTWngAVAOcmjK5MPc4BusdIg2JlsJ/uDB5kxb8\nyNT6o1JqdMF/Qn3uR4ascff6eEpj/3gXLSWHS6eCqrihLAIS+1ZgpIt2Nazg\n3FqA\r\n=1nNp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b0e18c39f447913d0112fb77219b2f3f472ce491","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.66","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.517","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.120-renovate-non-major-b0e18c39f447913d0112fb77219b2f3f472ce491_1618020286455_0.3395984249406683","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.120":{"name":"@balena/jellyfish-test-harness","version":"1.1.120","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.120","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b6f4eb1d1f89adb873696c5b88b4b9462471d3a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.120.tgz","fileCount":17,"integrity":"sha512-BCJvHp9CroJ1NTg4dyZXZGzGxbK+yOOHa252NDmeXRiQMhsrvzolvocdoJJwsBZiS2x1Vbxb9ssHfpXbuTSUjQ==","signatures":[{"sig":"MEUCIH4qg4thl8FfLvDk7ihaK67k732FqYBMgqONBErt/pcIAiEA8reDHBZaItRL6/c4Cgc30hyZ8NowO0Pk+OuAxFhRkZE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49480,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcQiQCRA9TVsSAnZWagAAiM4P/jkSD/P+UgPg98/EZ1Wy\nb40ntmutkieVBHOPaCj9+MSknht2ty6Tkv70aZCMwQMDVYINzr2Hnfk/mZpr\nT0SSyDX/ojprUiQbDnm98yQ8Vyr3t8CqWOPHyZcAlQc8in9MPwJrLko4X5Rl\nenJ99J/ns/KFUhovRrngr5jIuDo0nmNgFpTQNNujVexntG1npHSnp+B4C8Bx\nMuBjvy3wq7ivH3gFtYPnT7WgIy914E04mWGhqxjSKGPOw9zJXZemHH/NJ6o5\nPBuKc7a1+zKhYThu1YcCz+uJ+Lzek7AS1VArzRoreGWUK2hSHGfJfd0MHN/r\nFYMg+BQpIEi4X3zWD/0CE/328LUGEOWwEiOAX6HDxzZ1aLDKT93qVnaX8irQ\nmi5vn879Wk8SJQkWNSmHwkZ69vN2MwO+Gu5Z7Sp0wI6VTkczFHfQbG/HFEEn\nBIoGDLk2OLih3dde3fq/cYFmhRnj2Z8JqaP9B0HURmLqE74iTRsgJSWGm8TF\nugsompUJSWc27wTjP3R7J2O+bClsrRbVM/skTeg2aWcRVEF+KZxyzDr9TLVy\nA9z1UMjz0PbgSpKgp84Qjs4FvMqZA5UoOmPniwwUXhbnDN55785XW4AHTiEj\nd3dQcNnhO4HL4THK6fv6i8WBstetj/4kl96amdaRTHmFU5RtAnA2oSdcmhol\nj/hB\r\n=7xCQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8b14288372081152b2a27e05e340aa82ff607005","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.66","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.517","@balena/jellyfish-worker":"^4.0.14","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.120_1618020496098_0.5618756353950276","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.121-renovate-non-major-e0c3676fd6396046d7a666992bf88fa5c1d2b509":{"name":"@balena/jellyfish-test-harness","version":"1.1.121-renovate-non-major-e0c3676fd6396046d7a666992bf88fa5c1d2b509","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.121-renovate-non-major-e0c3676fd6396046d7a666992bf88fa5c1d2b509","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2cf8c0832b069d00775b7d3a46daba50461c1d6a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.121-renovate-non-major-e0c3676fd6396046d7a666992bf88fa5c1d2b509.tgz","fileCount":17,"integrity":"sha512-xNs7rglUkJ325Q2a8Gnfw9plIBDgls8B1wh0LHTUCoCnsJRrJg6dXsfH2jcqqAcDMlFhP4RM4+PAypZiQ7wTxg==","signatures":[{"sig":"MEUCIQCFYWFucUOptBJa5ukcKJF4gxXWCX9d3ubE2ff3qz0qRAIgMVcUPMWNvngoQT3zWsu634hb9nL49Ki/mf+gvm4yGDM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49647,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcW2sCRA9TVsSAnZWagAAAtQP/irH9tEPwpox7xgt8o8A\nEaGhHTi9IGsGh6I+RO1pVdSVSTukKEeTsjeTzNpEjArbc7S2v3L2dak5NZlc\nuBLvcrss/bn1HyuMAdi0gJWHtd7JiUHdcdu1wqJvxbOgm2nmVldJmXo7LEbx\nc9rv3UMgwqOTf3POK81IIOzaDJ5kmO5U8laHHdL4NN2r9j2Lus9fPS4Rinv1\nyNZPFku/iPLcQQdg0RlniOOL3ZKu34ZthrJrZaCUPu8SoBLlsXWlIlBMnrGm\nMNNrwb6871YwqPsMf+YJiJa6M0LFs8lt/Dn5UiMr1Ooj5mzbM7AoLccdKGmY\nWWj5zzeKWBkMoqEwoJprSTcUOjK6IBzwdi8OmmbIDKsPMVl+pisRgS+ryjFD\n8kOA1zr1mfP4cXeB2DBeCgz3PKYlCzXxal8Mtm1ze4w/CTTIZGoMd6l/MY2b\nK7FSuzv3aFfs2BlfdPF/CZb7JQ8wvy3Dy6AxRfb9G0ao4LtdGRGVKnLZgxwg\nV5RqyXM6RncG/wGLpM4tPgc9Sd9TFK56/vNvUYwfi+WptpEuxdNhdb0iuo9d\nzZLnLek95Oa603kZp7aXd4hTDKjhA1XSeCCmuvxRy0ErueRwEQkG0vIFQ7+2\naWPRx5gQJ50bkfiegcdet3rJaZFANErIbimApOUs3XEBPuqPySsp2nsqEuVw\nuvpW\r\n=7mMQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e0c3676fd6396046d7a666992bf88fa5c1d2b509","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.66","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.517","@balena/jellyfish-worker":"^4.0.15","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.121-renovate-non-major-e0c3676fd6396046d7a666992bf88fa5c1d2b509_1618046379731_0.878167316432394","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.121":{"name":"@balena/jellyfish-test-harness","version":"1.1.121","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.121","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c2147fed1ddebc81c260b227b22443f15ff2d28","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.121.tgz","fileCount":17,"integrity":"sha512-28dp3chlxKrf535wm91irLgOJ/mXDvLTEiwXkzG3Ui/aoVShqpqDP5vqBvctIkfwx6+kV8PiyuSeTIENAOwsuA==","signatures":[{"sig":"MEUCICAMJnxHDG4+tIqFR4bTzdsmV9g7fSY4PYDVZ5DNuB6iAiEAg7fA7cuIu0gLgtFKbs7w065opPLeYhdLWBuMbJxwxus=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcW6KCRA9TVsSAnZWagAAaHEP/RySJi5BGH9mTEyLF6hd\neFEubQqWjpYE5+bTg2DjULYmOtwqpbOg50J8cAL+g7Co4H+JylRStKOVBvmP\nalXwN2Wz/lBXFtn+vLsLiauupnuWNUCx1Dt7+TgxsT1Vm6g6h2nPk04JDctu\nuiy8Wr7GAS5er/p+PDRB8POiDwkUVpS0+EUNWVveJsmYx/N+Il0VLsRxZDQj\nDISpMEG9JoiJL/vUW/eHF4WbkyBU2vGBsgmm9OALFRFdrjk7zOZsYPeK9etZ\nXX+S4qNPqA73zBc3FIjugQhWwEXb8sflLbiLH0aU2bF7Oo/r9f19+2h5ugLG\nkhWKO+qHpNtT/U8jXozgWFtG1LMT2DkV5ykIZlZ36zcpbJBqMs7BeB31OIv+\nhrgcHkrg6uhTmcU+/cmmfSOYH2CT9QTw1iP/Sr5x/fwJJwl9x1LdKy+Pn/H/\nX+VXRttndPLLXsTaOrxR1W+jZFZu26ND+4tu1fz1bUcJdRCltPtA0syiSvpM\nj1lcoHTSbbD+VnzPpKQ0pO1IYslc/yVy6BieKuLqlmHQNKJjeDR0JTtdwwv8\nqgOSeYaHuAsH9TJBNw6owG0X8/96RiAobUPEB50geAAbP0+dZKqT1knyi8Lh\nugRcNXY0pfIajDGm0MngSHbbtw7Pn9c85Dn+QPEtSvW2jLi8WX6PygGIXaR5\na6Pw\r\n=asTl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"441b615ef5f0d5f142222bf99d536951ca05494b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.66","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.517","@balena/jellyfish-worker":"^4.0.15","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.45"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.121_1618046602236_0.035189555576494724","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.122-renovate-non-major-caa89ffe987d72f808533a07f5c21e88a467b695":{"name":"@balena/jellyfish-test-harness","version":"1.1.122-renovate-non-major-caa89ffe987d72f808533a07f5c21e88a467b695","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.122-renovate-non-major-caa89ffe987d72f808533a07f5c21e88a467b695","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6d8cb327739893d40e54fd89e0a61bb71041935","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.122-renovate-non-major-caa89ffe987d72f808533a07f5c21e88a467b695.tgz","fileCount":17,"integrity":"sha512-qPctMx/75L88LThuH6xU1+mY94byQFDj8mrX5btbYkozSDATs3ScdwZ9JseUGoX2FVfvTpiRc2Oursk9+DsHZw==","signatures":[{"sig":"MEQCIGnjpzKJGPIxHpMWg1XSq33YwLFy9lF7moDqSJhbN37xAiBqMIEjRlXSpmnrfd6ZtNwlJ9MigzfcYGIzmaSHqF7hjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcYgnCRA9TVsSAnZWagAAGXYP/jxpkchhpup1Qp7/zlww\nT/QQ/2lhCU4o0VTHn45/4kaVnPG5w6D0kUBzm1eygtFNXJRW/2IN96rJO0BU\nI2gvYtlrpwsfwcjbFvc+JsBjZ1kMbBarp//509D3u48H3yFy8LwtQ92o4heS\n8C6BkgZd3Z4c66u8YJb2URhkwgG+1gmdgX7AHcWbYnNn9A0N07bUk8mOX5Q2\n7BAzhHUICUIkkm16OMlfUCoj8K/BRVcY2++7v++M+qD5v4Vw+Ia5L10JNgN3\nitPXgiNiR/k6JCKDvpxS2ifxzB8ELMkEPlZGlobqybDgl3+Hd1NPRg+eOxHc\nEqcBWgcGvyB2vBbs3XJM9HA1Kzk92LkxanAPGH9W9/aEvbkLZ0Oku4cIRIWf\nk8ISfodeD3Hoa1wepXPLzl9gSEYSiju8QFIF+qgE9vJ9V2iisRQFXPxzc09u\nIfdryJjiLIAFTmrjf+I4BV/xluvcddRBX1YX2ZicCro6jWsmmLacVIkqaSl5\nRp1HwvFSzq1pMerr1NG1oDjSGhQi1nLfkvqJnNn2qxYXyNdvpSOOpD/ST4GD\n5gn0cZd0iyat+UDsA/NUkyfMrxlFcrwxqfy+Kz+Yu9EeL3J1IbPd8m81ba1O\nt6IaSe2a9R1fnTAqmbhtZwZQsVNTSjCmIqhJw8hHKxq5taPeJl70q3RRoQba\ngA1E\r\n=g7XF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"caa89ffe987d72f808533a07f5c21e88a467b695","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.66","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.16","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.46"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.122-renovate-non-major-caa89ffe987d72f808533a07f5c21e88a467b695_1618053158796_0.08147381741738413","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.122-renovate-non-major-e6af08072473e804c33c1f8ee3cd74bb4a524201":{"name":"@balena/jellyfish-test-harness","version":"1.1.122-renovate-non-major-e6af08072473e804c33c1f8ee3cd74bb4a524201","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.122-renovate-non-major-e6af08072473e804c33c1f8ee3cd74bb4a524201","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9aef4b3e516e61c9d98fce45822378ce1c18849","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.122-renovate-non-major-e6af08072473e804c33c1f8ee3cd74bb4a524201.tgz","fileCount":17,"integrity":"sha512-AmtbhRSt5eESpvuqGGG6uqvESeKieney6aivzO+7rw/HBR3yKHHS5GkxN2nnxlLL5D9GisM5zKv+weIT4YZ4lQ==","signatures":[{"sig":"MEUCIQD4PsqF6v94DBlZWJ5TyZ3vMScNa1+KZLwc7Xf/S2lKpwIgTx4YRUO9kNzsc5dMqdOvi1gDstGT4YewXC5UkNpAm3s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcYmkCRA9TVsSAnZWagAAeHgP/0QY8C74eaDFFtiyTB9/\nu/iild4g59Nk2eRqCVFYmGA9EaPDhyIEE0N17LQtWFB4DxxXk+DotZ5xiK7i\n/+UTRj9+agffxbnh6Zcb0sAIJ2tQL9f6g4Lynog54auvdpOyINREPyAVQTcE\nNJ9KKCtQokL5GukmXemX/GpTD93ydQxvZvk0YjFmrOuVjVVA+2Ob4ssTmg0y\n/Z6gFsDyTXPIaJL5r7jmTUNmKrPCx6+Y5FAvEqWw9N31pcL4fYUAYjJxpxDq\nAm78ARbR7rx42x+2bPnY1dhuZnmciBuDLPGmeZkRd1u4MIEplb7BFqJAoM27\nAxW3NbUaJ+lrDzoZcLqV3nWBf5HB6T4ITSk91qyFkIT07UIkMLn/voq6xnZN\nJ29h6ieGXEfFQJMSOc9t2KKdge0Go6blXl3UpZlJXmrhET9xYxkBvtSwwyY+\nXLR4UEP25irwKyrxds2PB/NiyRFoSGNJs94c1O0RlIZoGTwMqvZfMV6elvUz\nUpRv+hoF+bCTeycThnVXlew0P7QSkbQfrjWJtRq19hRmsFwLWuVGXeDrHILX\ngXTMx1UKO3TmbyTDRuJZB8KSOs+fJJEybZdybZJEYQvGR3/WEqHKSSl6YNXZ\n5MDMA4uby7MSRKktdFlelBG4wgbbH9TkKP4auRLHlX1kU9fUUueX7YzA9Ybo\nSq9N\r\n=RJB+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e6af08072473e804c33c1f8ee3cd74bb4a524201","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.67","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.16","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.46"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.122-renovate-non-major-e6af08072473e804c33c1f8ee3cd74bb4a524201_1618053539605_0.2307129020106109","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.122":{"name":"@balena/jellyfish-test-harness","version":"1.1.122","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.122","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"237f23875b2c944d61f6e0202fa9aee84fedfad6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.122.tgz","fileCount":17,"integrity":"sha512-ANOmFyMvo3dQCHgufoRmamvtEUxvFtWkcEuZUqDfQnw18Tuiq83vxCndt/Hls8Of2vDmBQr7U6wmVXaZjSJBmg==","signatures":[{"sig":"MEYCIQDB/5I1Iug7Qy5bB2i4PqwFLu7kS7MIVgXYgtbS+1NuzQIhAO+jhDzlP63OXJKH8DtI7uqyvN+ih/8KnQWTjMYLhfQp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49657,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcYsPCRA9TVsSAnZWagAAZBcP/0TZmZGLEz0iynJCsfyU\n/8ul/oBsDZfJEg3MNO8z0y/Lu8fbH8/USisjGsfZtG0jNZ5xATJY5k7JaMtE\nimroI6VvyNBVDmrIbaxNiyP1u4sjdq8+ndWoguqdM8IYwYvaXQgh2j//Wl9e\n4C8dgxmxDy8R2g2UMpaN4KPL7+0PxyGefLfskc4rAuDeqJE8gvDuufEW7a4o\n7HI6axt0yPs9uOP7LsJpCKMnCc2Eo751K4qNZRZ99TkO5VsePdDrc9uQo56k\nUavMZmvG1OT83HVkpAP5SybTQQ6HjAh1N+n7tTHlmA2yJm4Y6kd5EZDsQKpx\nqsBPbaHuzHZSKBAQ1zVfid8Ksytjv+F8+P93jixHIF9unV1stGDdNawruWZL\nUXvU+tPQEm8onxasZ/eBK4uLcL9zrQA553L/4eZDgDzbBPw+ckfLjUwE8VAH\nlGpDCUkl5E0yUymSFyNeME/lU2rFKu+uZaUo8DmfFcFzHz6UoCq5rt56SkZE\ni1ciQt5xENUu/99ChWZG6824tH0eXNEMXJ7j5huR9xh7zvhqct8Cjcc8XdVd\nQCPHizd6O0xZQZqyfQc9b1AbBkYXrAB9i3w/0XnpQIhV88fsm5KRu+158Tq5\nqgGdObFY9g8nXvUHSxieN/Oe6xm2AJUOOss9X6lppo+b8wBfnEjm2V2FVYg5\nz+0u\r\n=lh5e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"41da01a64e20129be63036c303df906d153b5877","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.67","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.16","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.46"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.122_1618053902725_0.7969081131429316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.123-renovate-non-major-19dc7a83194941854975180ed78d8a22f3ca2af7":{"name":"@balena/jellyfish-test-harness","version":"1.1.123-renovate-non-major-19dc7a83194941854975180ed78d8a22f3ca2af7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.123-renovate-non-major-19dc7a83194941854975180ed78d8a22f3ca2af7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a6c6dd94c5763dba97d3bdce5774b8830443e4db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.123-renovate-non-major-19dc7a83194941854975180ed78d8a22f3ca2af7.tgz","fileCount":17,"integrity":"sha512-LIqIKueN1H1fWLsqSQ+d1ODLT4Bbt2i5A+mjPpjOqyPf7biSdzl32aqILIC6H4EJHQVbuOPqby53fNz9AOaEgg==","signatures":[{"sig":"MEUCIEBFo3cttuHCsWp+44FRjhrlUIi/F2QF7+JAdZWIZCAoAiEAoVPHPTxQ6kchO28JbqSgu9ACnq/5QCLULqjwAuuoF2w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcaDjCRA9TVsSAnZWagAAw7YP+wYAXow2AzkbzKfltlBn\nx6Av3Sp0VteaR+UtbeypzuJ0eKDYdQB5EHqGqhL7HlnW8v4vxY3Tw5ggI5Yf\nUOZ3YmEgtZ0ZyuqdH+QO35K1hIBZQt4gFDH1Kig5oNqby7oYFtpYs/LYk0pB\nWX6KugdMGi3oYbUgVjMx20B/C5JFnfcytwlQXZYcAGhCRQkcUBQpTsj66AG7\nLI15LmKX7h0MXgbAaHUGFtyjmOsVICZGJ2ndkiU+HCh0BOXwB5IEQcbrKD+M\nbD2ySCRmwrILZPL+mW/xAcrd6D+WHJGW6cb8x645aDukxXpC/8cStaOAu4VS\njYAEF/YAESi4boHx6SOt/I2OFfPyPItakkj3NdMzz9pInpNh7onX2Qthc9/J\n//atPvro831rOWyp+1zZReF482nL1+7m9kp1NmPCGG/rKFHQ9GJZ4zaZbucv\n/dOxzDJ1jm1C0vwVgOdPl8iYQmGTGundWPQrllZ4gGAYc0Je0uyQys+TATk0\nPXAPSNniKj7iOGHvls20Fv54CYg+frJXd3NTg2evrcRUsKpamdafaeCNHFIv\nvBlpdt2qGv8+NpbGAvwo+KJ6Nxk8IkuvqvqLrotvlwphCuH6GTJAeFvFtiUG\nrJqUaw/V8FnyZVl+KDaxbm4Yk82BeSn96Ne3Ti0F8dufQIIIhsVd1jKqwxdu\n9UYT\r\n=sR79\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"19dc7a83194941854975180ed78d8a22f3ca2af7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.67","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.17","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.123-renovate-non-major-19dc7a83194941854975180ed78d8a22f3ca2af7_1618059490454_0.2988696687526986","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.123":{"name":"@balena/jellyfish-test-harness","version":"1.1.123","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.123","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30bbf97eed46e328278ca8dccb8be57039c68680","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.123.tgz","fileCount":17,"integrity":"sha512-3CzrSyZfYVFBa7YU63bZFuiG7PwJDan4MNMbR/CA71901PlgnJJHtAHfyyCNPyorJn44M6V3c7Jj0n5n6T6nVA==","signatures":[{"sig":"MEUCIQDWSnjpiEYCkBRRcG3GnUwBDRwOVVqYifVoFTpzGAPy2wIgOyY1+uXke+dv8cCf0lto4rXrYqdexRnycviRmw8d5bk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcaF/CRA9TVsSAnZWagAAgIMP/128lkI495vqILT47+G2\neWvHoXCrYIhwRgmZx/m9WlM0MJW4jmBrqn9Abl4kSWomu9WZZvdDomCnNH2V\nk+1m9q6Fpcz9h/3a3irCpu0S8cv5TtsMKU5fIL3ORks3c1XQat6pnhM2Qhgs\n5StF8v2AqkkztBKro/kCCGfKEWPzyARgSrs1YsC1iKXuMo9bDZnvhwvkK/AE\npLlxs4gjxhyn9gMHelEUFlpfffFKY9m3J00ghN6SxFmFwbWb4wnTJK9mFDyi\niuEaFEL5avx8PEsKEDakncRpcg8f6hylvwdBDXXz4kDdobHWluy1Bg/f9ir7\nlVYEbF89Dz/SWxoCvlCs7w4xxdX+Kz2BLNHIeNe8b13r/Ylv+T6N7BSvtlaM\n7blp210La0AYn333B39sRVb30N3h476BG2AFs5ORXZbOuVS74WX72I1jRNHy\n97laIj7fokWWxndzI3yY+nxh9ZtZVPhD1Wy1406zLQuUzHbBBxr+w2b9IvE9\nZq8CQwReOjiw5wVggQgkcWVn8v0/iONOGZXVr2o3NRKwyBXHo0D7cTVuAxmH\nX9FXigd/mmV5zQLt6CbQOjUgtcL/rmSmuCC3oF5A6nwkBtiaF5iHiD/Kjcee\nHwu0442IRt/CzyM71O6wQZk4OLDy2T9vrLGLPqNFOqAgNqx5wzIqgtT8J9iE\nk6F1\r\n=DuqF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7ae2d5b39703bc961d835203cff2c6886955586a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.67","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.17","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.123_1618059647356_0.5614705540081126","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.124-renovate-non-major-759191aa2432a467980140e40558403a281b56a2":{"name":"@balena/jellyfish-test-harness","version":"1.1.124-renovate-non-major-759191aa2432a467980140e40558403a281b56a2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.124-renovate-non-major-759191aa2432a467980140e40558403a281b56a2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d93591e27574063ca66339f9c0e6df62ffb810aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.124-renovate-non-major-759191aa2432a467980140e40558403a281b56a2.tgz","fileCount":17,"integrity":"sha512-/dzaTt56irbX/PN70JpMgzgryY7iIWC3PfgUPT/RZ0Rl0Y56kgFhYibZXD6nB90/w2sVLO7u5WxAXZk3Irqcxg==","signatures":[{"sig":"MEYCIQCcdR3EsIoQGS3QLDkFMWenXm/GZpBdskGcgD9r2QHwTAIhALs+RbcyVMfoc/3HRvp5YvqL36/hpisbfeD6UJtOCe9f","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcbXkCRA9TVsSAnZWagAAFDwP/2E84Pst8Mv7MAs2FQ2l\nYWj3VXOTk9EYFTfqShJUCBABBz91TFFpCLxxHkogD+cYcn4VYxMu0vpkhNCh\noEQGoQ8l4BqUoChWJpTBzGu6P5P4HnZ1CkLcqeXhd98nRUkt4/odxMN0Rt3E\nKV/CRLxH5/0WQCI7I0dGdIoT8QTXe02LqbXAI0xw8vc1C1mWLPUqkh1LbcLE\nXsyGrqGVuqoJVgMxVPZrvCbnH3dUQHJi8J90W8sy4KZFcWtbyCOEpPHRGnNC\na97XLqqD12q3Y2y4Gj6vJRUKkwkxTKt7gqGVfK6ruLqan12MuF42d9jmEjiy\nTYuAn3upG7UstSkR4IrbzSyWS1N3k8VeiJ2K10+NQyR8yvlfC38FtfohNGeY\nYwCTEinsZ95bZDiLo8hNI0vvYENMOfXU36u9fBmU03r2KqGR+AYdP0cAi5Ke\nNrVGkUv73XC655NHclKK45fHl4DUeJgofRMBgYy5EC+vAvXPiNO3VDuY0AwR\nKYNk4Ahg/yRsHDPMaRlKBi/Nh3mEatcJnmcK2ckpnI5Ode8hFcr3btwixUJR\nmgUJH8CiA5B5eYyrwd1QsxEEwKLfKyAAXaLoyEzOkeRggRuZD9v1lVOMxd4h\n0tjg1xE0uLSTSL4f1RLUFZip85XN3x/AlasSMV0909LStYQJlwbDLtuYE+9v\nHw+X\r\n=IL/R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"759191aa2432a467980140e40558403a281b56a2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.67","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.18","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.124-renovate-non-major-759191aa2432a467980140e40558403a281b56a2_1618064867940_0.8472727526892723","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.124":{"name":"@balena/jellyfish-test-harness","version":"1.1.124","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.124","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5389fa5ca869c68a458588b996c55626e79383a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.124.tgz","fileCount":17,"integrity":"sha512-SDdfg+rFdWtOM70EA38PeupuB8+08ZZzMOOyJ3waePlMo0DBg54Fq07Ahw4zmyuFWNRquYYCFC/5DT8XMmVUHA==","signatures":[{"sig":"MEYCIQCfWk4u+NloslfENGorSfDcTQ3J7QxqbY+z8I8nb6agawIhAPB+rhvuc/t3dNZ6wsfF07lDyyiNQY/1E/H37Peiigqa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcbaUCRA9TVsSAnZWagAAG2EP/1rswfFR2CZWHXBnUJDv\nWfgvZbpWyCBP0OsjgyRy7nhzr9XLHkM5Y8U/qTUi0RKPXfl60ZzDBrRRg1FG\nbANvzeK3Nr9NqdP+2ZR6cGv3EUjMrWcixMIFxtOOZ292aI2u9e3n7i1LCkz3\nzWCWxbgUpbMWFMusgWI2WjSPpK4vnLrN1MnOokUFXoGHF3dRaAxWT37GUB1s\nVZI/tMNutmwQH/JQxSNEYY+OlR5MVFf/qXfRaKy47MDWcgKZNebYrvrrC/JU\ndBHCRL/qIJDDs06+Ek9cmmyIskOGDfpoW2ob/nyLy5YwNFg7PEd1cbu5iYte\npfoUnjpDTvznIfTiS2Ucf9YGG7xcohhCa0REB7pJ0KMT9pWVqQyMsVApo1Cp\n3qTDLQvACCHJa4V86z9A7E6wQbXOLTzWGfptyG6Xn5Z4ps7CRFpmo1BpOXxC\n0pOYZRq2QfCTQvNRMR65HfnH39KDkOemPbgG4s1tXEDClMXVkFiTAxVvcAiq\nN79o02NJgvFTeolwm2ilUPQ5xf+FOt3IfNIB60Alkqd6EDLVheXFisC+AkCG\nRYEDGEabAvaTKZQ50T2l9NU2t99LsPjEE0lSONWIkGCBI+ylDe/NqdGNgv/l\nyykwge8y2OWIgjzOCE4JemXnrQXmlEIs5b2MozrezLC1yJadmI7rWRGtPSxC\nQiwE\r\n=bln+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f3bc59e8fab26d76cd42d404999e08fbddc10b78","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.51","@balena/jellyfish-sync":"^5.2.67","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.518","@balena/jellyfish-worker":"^4.0.18","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.124_1618065043911_0.8463115447787564","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.125-renovate-non-major-e56cee80696501cce1b78bee6f52cabdbc3f9767":{"name":"@balena/jellyfish-test-harness","version":"1.1.125-renovate-non-major-e56cee80696501cce1b78bee6f52cabdbc3f9767","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.125-renovate-non-major-e56cee80696501cce1b78bee6f52cabdbc3f9767","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b7178883c161fbff0df6ba9afb3855295601aad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.125-renovate-non-major-e56cee80696501cce1b78bee6f52cabdbc3f9767.tgz","fileCount":17,"integrity":"sha512-QVlwIzum8UkbSfKSiZIBVGg5oosxtYiW84IsYivKSaZsUY6ZbuIqxH8ldpiCMrr9TXittvDW6wiY5Rh5JXdHlw==","signatures":[{"sig":"MEYCIQCTaYfrUOk6XEVqI9/3/SBQFQ0I/VtI2FMIrzUpGE8NUAIhAMIz3j95e4t76aa6CovB1k5qG/YP3GjpOGozVa+dYhSF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49964,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcfgKCRA9TVsSAnZWagAAtW8QAJnzyNIoBGjgMHoVUbgx\nmQXsMjj5nvl1VaoDS551CzGh9D+z6MurQ40Rxe07GyVR4OYaAWL11sf5vTlO\niIHaMWxtmmghzcwxJNu/cIVZCExlZ083cPHhSBNabmx+IZA934hyRmIJ4sON\ngRj9f46B5IiZVDqfZfbAQ01OO7xTieTdJq+IlaD+umQojpmJ+KzJHYRrb++6\neC/V3eMmAESR9DMHEqxJFBy/VBe/0YMOlj9C1fJ1uLULk0AIdDlC0NeaSWk0\nVaVZ5jEAN2uPUGoXKCYpIs+5ulP+XXG0s6R1vECRHVF4i7lo2kQfI072hJod\njOvJEcShEuL2Rk+lQp/Z2RfAPfr9MZpTgcTud8oAUu5K/63D9Q8XY21uhb7q\ngsOY3ZkelxiRKr2kggntRVfT2F21bnqg9IvpUi0OV2uGz6pxdes8+EOYA717\nGST4oMGskrhxDyXZ3fXqxKmzKLN1MYg5cNu1FiCeijmeNvfTMEeZKq6VNSUu\nqkh6/cm0D1lJ7l4PUS48BuzuQ0PBCe4nyFyw5OimxehRULDv+x27pfu54T35\nvsFBeoPk26FrcyYLdjjuRA1ynjGDzhYM5BQCn8cNScE+BwyeaUk3veSs7zNc\nmRsIZuifb72SQ16Bvfpr5bu2lPY8HHimhgYCOmHsKUhHrVwKA674Z9oQs3Ni\ndjB7\r\n=RP94\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e56cee80696501cce1b78bee6f52cabdbc3f9767","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.53","@balena/jellyfish-sync":"^5.2.68","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.520","@balena/jellyfish-worker":"^4.0.21","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.125-renovate-non-major-e56cee80696501cce1b78bee6f52cabdbc3f9767_1618081801532_0.5484135613846695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.125":{"name":"@balena/jellyfish-test-harness","version":"1.1.125","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.125","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56702bae16111d69da38e278ea563c230de93e0f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.125.tgz","fileCount":17,"integrity":"sha512-/vJshMMP57kBdsBD53Asfg0JHOMqb0eV6DHqc0c1pL5uxcdN9goUB9ZNZY8CUTmpU0A4Mg+SAxxYGjC8mn5/fw==","signatures":[{"sig":"MEUCIQDRsdRjiE221RGtMaS9IQ6JUhSgiy466hevPOkr2bk8HwIgHdwL+VtcOERkXO5owfwJ3+ZT520+zQmYWsTNT4/kDCE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49904,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcfjJCRA9TVsSAnZWagAAw1wQAIi+/VC4wHrYV9f8CD+j\nhaEad48/NYcbqrYINdxVpZ6TkhtQKJMV3Pat6phI9Ci8ezLLGY140mrbYq8H\nV4F+JXM/UbREgOyeckPWJk1uu9jrX93ef+9hPe0dEMoYMzvJl0BCM9KzVdj/\n+cWFOZzfi7Q9fRRRV4lORVv9fUKX/SMFJM/O6WxtUKJOEHeePAE502z/6eei\np5APSec1dBhFHb3VSdLKLs+Ul1jMWT4ZDoR6HSuPi2a2UoSDH065aUOy2Lr8\n6SXNRGaH6xFBvg0kg9Z/JS3WQcsaFJlEmgFAtFbIEVp5k/ZP5XYeDLdMlBb8\naJlRfwKImCEj67s6JiJM5vsqgk0JcmZzo7AzuKZo/o1QMIfqhgMCsWZTnPn1\nsMvvUtw981FPCF1ag5zia9FoF9S/P51a/emKdAfLmHgHonzihaggg5q7srU6\nQFYG7s7z5ltEK4xS6c0HJlTfPLdM13SIL7l6+VRQA7FWZXQJHUSzbgqfkFBG\n8+amGtWoFNDGhmKsuhWZKTC/yZLXBamKsk/jms630WIw1tLskVu9njXV2jG+\npdEju7UiPtcrJj3iZ+bpr39k3q7+GOiw+31q1qy7ZckCwenB/83JmtITD6Be\nwxmGbV5lHGkxOpd3KoFiM+zh9dMLrD/rDDL1tvuw5a63V3L3EHMDP/EekUal\nnnND\r\n=Ldfs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b8fb6c508df24e591a9d34f3ae75050c95da14ca","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.53","@balena/jellyfish-sync":"^5.2.68","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.520","@balena/jellyfish-worker":"^4.0.21","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.125_1618081992505_0.4725641444508466","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.126-renovate-non-major-51cf1a99580f76fddd211ab48a0a4518477ff445":{"name":"@balena/jellyfish-test-harness","version":"1.1.126-renovate-non-major-51cf1a99580f76fddd211ab48a0a4518477ff445","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.126-renovate-non-major-51cf1a99580f76fddd211ab48a0a4518477ff445","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ecde4bcbdc5c75b3a7ab9c4e3eff07f3c337c66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.126-renovate-non-major-51cf1a99580f76fddd211ab48a0a4518477ff445.tgz","fileCount":17,"integrity":"sha512-uDRxqRYpFDBIniv+v3t4HJFjzlMX2sIFtI7VmZ5jZ8GcCfSbzvncClQDXsZtKfl2vYt62Bf94iGiHl2Vy3bFog==","signatures":[{"sig":"MEQCIH6qaTxrKryV76Wy3CLTFVSqSVugZ569KyovF0bqQdjmAiAThfZuCr4IeNRgJhzts2XJYTu9ZLOdwejWZhJCJrHl9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50034,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgchdJCRA9TVsSAnZWagAAiLYQAJFuvDaWIBMrc9Kgng0d\niS4X/KUbVRTS8HTb3eUZRYgN6y3nsvfGkesgyGEqE0hT8IEORxiYDYnuYuvR\nacwAh+2lm1eP3KNpjVUI1z/01ecxfXkO1kTi82NUkF6D/saZLl6+UR09hrwb\nfC1ClWUx1IsOSJf/F6YIuFCqTz2Tv3+RLQh8Mn/z9jBxKiLBpfAj5FLiAfbF\nIMrwFV1zlzLniric2STN257KsD0Ih147IdHyViJS+ey7c/lQU4cKVI41VSEz\nQQCJK8RvWTt4Am/hTEySb1mSfW/Vn6Gh9gJYur9UTSTeLa7mibeto6uOUpVw\nV1Ei41lhlLOjdXyuJPbDdCinTsLpg6cKDa0PzbyDRgr1veMt51nTCfM5gun3\nPozRnjgNv8bhPG2pQqZU9VEQ4EI+lK+jXjlCMHsO5CnhLatvYNfQNsBtV5/E\nJKCxkdbxssl2qU3SapOQ/x4Ua/L89quw5OceaKBFj58Ox+zw+6/oZN/3aIbj\nM973b0fU1b0q0IWcMAMS9UhhPwQQ5dpAnC1JafdNGD0v22LHrlG8fWVCv3/x\niMWCq8blu46r+G4WCeIXFp463ug4NEShsuowu3pm77G/UC7Eu952HFelftv9\nsh9Hm1s5ci8sUHAaZ3yxvLdQKDH7iGrONVCrcvXnaxjD5CxKtIq7uUYvLd9l\nbOye\r\n=x/R9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"51cf1a99580f76fddd211ab48a0a4518477ff445","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.54","@balena/jellyfish-sync":"^5.2.69","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.520","@balena/jellyfish-worker":"^4.0.22","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.126-renovate-non-major-51cf1a99580f76fddd211ab48a0a4518477ff445_1618089801027_0.7445734083160029","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.126":{"name":"@balena/jellyfish-test-harness","version":"1.1.126","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.126","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5cb3eea0357e66ce6184799e32dc2a9ed510d8b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.126.tgz","fileCount":17,"integrity":"sha512-QRoRZ3WXR3sy1iNpavG695TtJJiIjZfjP/ha+dp3hQLxCo6zAdIQ+x2ECCCGsIp8NQSQlGX8ZJUZUkVMqP7Uog==","signatures":[{"sig":"MEQCIEoDsPuQBSkqfF+iLkLclQgAUueihKmKSY3ibOvm9JLxAiB5I62bJLEJDdsnz3SyF3079V2U/tQ/GF5ZLOxRArp68w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":49974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgchgLCRA9TVsSAnZWagAAwvgP/iJY5kUm8MEOYT67OsMP\nz8km9thKKLpNyrwrGRsoQHjE4v8x+v3sz7UFULlw0ffFJ/dcS9udlMaShU5a\nnPz+q7IwtDqzbx26R5BaiKZsbjub0hsGcfe3OYfv/wyh/HvYc0++Vkr1navj\nGayGZFUYQ9UctOiBP16jUVVZArICDqeRZfWqzSStP2bgCEWgYmgVhsVbSxXD\nU/EPw/MZiwVprvzZP8beuGCTPppGHITn6rsVyo2GxhUlRxkzIOEaVZ0Vp8y5\nwufCccq4vBA0IJ07BZuLDjngH8VNGiNycC/EN1n4DmmbGb00lM/1kabqEYfm\noto26NCIlQELwZY/i1BVXn58PIsZl1zbfS6+w86BOusC9xqYVwRR+tytXfDB\n/cOEMeH0McNQSqsVPMLtdZj9qaBNbQwusmWsvMmlmqS9QBHHN0wgyPMicP0r\nZ5dau8N8S5HOv6YfGWZ9C6tvKSdISNMUnSmnqTBYsRuVTLw1rmPk/KZ3dwAe\nlRO+afCET6xM5qK+6fbY4S7Z2gSjfKFRo03CL6ACkvNgdeougmwM1ErkJGQS\n6EF94geOeaEjtkcK4lPuXxp/QtVtZfKNJ+tvGe318qVKdnoYKPuVm/R4aTyN\nXCxYcnf51PRDDPF59ErSzQp4LH/todJFWNycbMDB/jB/MaxvTE/MQsmPmuYN\nEqMC\r\n=43Wm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f0ec4948eab9893483890b8d54ea682583f34bc","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.54","@balena/jellyfish-sync":"^5.2.69","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.520","@balena/jellyfish-worker":"^4.0.22","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.126_1618089994476_0.9327155024644611","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.127-renovate-non-major-388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0":{"name":"@balena/jellyfish-test-harness","version":"1.1.127-renovate-non-major-388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.127-renovate-non-major-388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b15c9c507ef207a35f86bd6874ef5779c702955","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.127-renovate-non-major-388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0.tgz","fileCount":17,"integrity":"sha512-MTrskrq2mCOKXjguwbWvtGmIxkBlZ70kopNyw69bDuE5vzrRJo4vJ5CORrVOD+IIr8q4JH6ouxxu0v+jg8e52Q==","signatures":[{"sig":"MEUCIQDQJDYI/3DDZ0n6K3oZ4iDownIWUGNzgNC89JTS6c9Y6AIgIc3M5WDJwGTW4CNehQ/q6zdIRuq40uVgluHoYWubW+M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcizyCRA9TVsSAnZWagAAI0QP/3z5dTBcgN7QHgVjbEhP\npvdcUg1ZTQ+HB/8ORiep8DW2qT6xWMFtphfiDyF3oQwKhXCQkq8UWJwgFipA\n6PYBB28798qVg3bX6NMvNyono5E/ztv78kpUNnuPJxqZOwXZi4NmnUOhPiuw\n8qQaUPkVcokUCpvfKJ9S45T9eNKtdHLVf+tlb9SBcxo9m0y0m2RLfBsWl2dL\nvJtXALcTEYLMpBT5RPBc81HIquKgcu4CYLP7w+dlijAXxKeSLe1B65SWBeNS\nWdBbYvx3jGjpvIuN2xw/giOpD9fJvKCmnW1k56qURTaRWrcw9oa8KY2skjrU\n7r17uUgSQNppta4uStJoXKYCBjcm5H1ZSEJSlsxj9L9RXD1uQ+QUAQhiPL8M\n+8GqqOjqI7t1vfMRJjRahYokIu8A1OC6NqzDnF5T+qpSq/Q5byti5yj6pXcf\nY8prPA47CsvvAyved/ql7OK8YqI0E397BXg5q44i0G3q3ffUFedSoQg0qXcQ\nnmiRDzmskBw7ss/85SvXxeyx/CkfGTsty9lYEGGLe/C44HO9NaQdSdXHGHI3\nI8YybLLelrjtfgNW6GBgAVxNd4+UuhN77rgIqXloPwZuNQW7mrgWS8S5ZLeP\nNZAJ0A9R5nqBujZgCw8UlJQ8ukbF8rZIaUH9GHTwSVvHpJnCGv0GMAk63Tb7\nGAPG\r\n=hai+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.55","@balena/jellyfish-sync":"^5.2.70","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.521","@balena/jellyfish-worker":"^4.0.23","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.127-renovate-non-major-388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0_1618095346205_0.4638302878962772","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.127":{"name":"@balena/jellyfish-test-harness","version":"1.1.127","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.127","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1ee20eba127672e7b48e91773b355a25447b2303","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.127.tgz","fileCount":17,"integrity":"sha512-sOYGrj3IrhC1lUq4mAikWXmyrW/M5n3HdqTyW5V8hgPP+7su4dNjsh5pCD3NRHbXBv009LZ8gEn1mX39yu0oVg==","signatures":[{"sig":"MEUCIQCHnkuPZ1ESF6SK8WK97Q+cTvbaw0zJxbiCQeieSnSVtQIgQf6gdLEJSv+LgHbgbzf8msJyCLqTYnYuhEddraC/0ZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgci3aCRA9TVsSAnZWagAAOYYP/jII9bZ/KwnWuf60dGPd\nXIQ2LhD/ANRwTFXGJU3FIGui5kmz1vfFZrL0j3FyfJwKD4QZ0K+Nvermac63\nm74S5cxZuPsF9lx4gdnGB2FaiJXUSiI6zyF6P5MPkmi8J4gpXZd/sjsYLidS\n7yQI+/l3jkIOMbogZsBD9KY4twcwtE7Krw02up6oppcVDlwld2L3dQaiyVgI\nMu1AHp4R9nMiNf9N6sAYH6rzYA3ZhR+1X+6r09EsaDyC75eNZ+PiimNurnsW\nDfyRLcmhckwvBVUkHYufAWaxYlE905BFQaU98ltwHulQanyoRlCe7II71TpW\n2+jLyEHI+DRqhQs1e0eTaqjNMYzbNLap5DF3oyUwzlXvvfzxugjFzK9pEggg\ngaTp/ItSN77d6hV5fyq4tj+/SD4TNdYxpVQ97hgAQzgaqSEL1/NogjHPierM\nF1uomxpGp8DzblvlUsyhOO5x1Og3/ZSctvLHl7l68kj6jSZNXQu9YtqltGVE\n2kBquGiwzThTOeQts8vMci5GMm4guj3PtPb7x+0DAkc6VkkU6fnSw1gydJSq\npgIb9K+MG2mBupPwqWC4QtC1iqQyL1sI4878qrxFj6XgZ7QRiQZOe+1s3pNA\nM1hlyBUByK36sO+IwGDSUy2NzDD5xQzAfHO0v282ostYWQR3qb1K5QBOGxNc\nALA3\r\n=y3H4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a8e1a5467490736e449f3929d7d47b79a739954","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.55","@balena/jellyfish-sync":"^5.2.70","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.521","@balena/jellyfish-worker":"^4.0.23","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.127_1618095577971_0.2277072506436275","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.128-renovate-non-major-cd55163767b25bc7c2710ff7f38ed2aa6a14caff":{"name":"@balena/jellyfish-test-harness","version":"1.1.128-renovate-non-major-cd55163767b25bc7c2710ff7f38ed2aa6a14caff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.128-renovate-non-major-cd55163767b25bc7c2710ff7f38ed2aa6a14caff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cc018909cf2fc356f033ab1e9ec6d5b012f3ed87","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.128-renovate-non-major-cd55163767b25bc7c2710ff7f38ed2aa6a14caff.tgz","fileCount":17,"integrity":"sha512-iPNKwat68vAjnihT4Z3MGDT8+9NMDPbhKAo0c8kR8D5zUubnS4oxoXOU4M++7z461unqug4VV71Do81CQ0ZCXw==","signatures":[{"sig":"MEUCIAulPV3W1/rUkZFYkU4yBv+wzUXOVX5hy9CJ2ZQnQD0ZAiEAn/SShLK2fCprqbEak9JqIItIl8ZwOCqu7SJbfUczMfw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgclzICRA9TVsSAnZWagAAOp0P/2IlklldMRtmePNDzN8P\nlGrmEABgGHcC41vuycamM0TkU5osA741nSpHLfMyJJOKyRGZ+l/2pzQlyKcQ\nv8h0aAysukyuACSX9E5cs3gQTdmH4jdnU/NXqMrv3BwjXtej4X6ooKn9DeDz\nw4iVXw1vKXFWBN+fL1DuKSf78aIVj1yCy+ZCgU50viOx7iuaqODb5fnUP6QA\niVZtu75NE0H6U/eCMEqxEC3Cl+iHMFWbE7lpWHKMlc8qGyPeHLC/uIqSQg28\nQaQ4n3b3V9bsji30cI+gqeq4t/K0jTeXUQjRkuf8BHSDvO567jqv682fQo34\nLs6qW7D8gNMUXqTRZWokNDl0AzUfPQ+nC3PxO38uFO+W4qCnLzeeGXjvZERk\nXqfWSKbV5oSxRj1GeFjqPagtQgUTtKdazXTcfOfboDxRErILf8/ebC5HfOZC\nNgHmBZu2SxenGm6ESCAq381ehvjpsgs0sHvNl7kM9vUFhd9I7X5kWjR9i4/a\neo8/1/LKSp8g0eVe3qaJ4NO/VzypRwzPqpH04wfgZa0PDoJQeaJ3+wRY/PHS\nCGBjQ8IIDpIT9yDaiyXL5Iztz3HndC82TuT5pE9rSjqIXKZwcsXqSHjlkoaY\nqZbMwWj9y3cx2loEd+vyk4qjJ/5eaK8XaHaQ8dte3sg/nv1hXerAcZ78laEE\n1jfO\r\n=47FZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cd55163767b25bc7c2710ff7f38ed2aa6a14caff","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.56","@balena/jellyfish-sync":"^5.2.71","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.522","@balena/jellyfish-worker":"^4.0.23","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.128-renovate-non-major-cd55163767b25bc7c2710ff7f38ed2aa6a14caff_1618107592338_0.669375299184328","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.128":{"name":"@balena/jellyfish-test-harness","version":"1.1.128","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.128","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93da3629fd549fdd9ede2c55f5a1cc9d9d9d07e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.128.tgz","fileCount":17,"integrity":"sha512-RpGG9hjCJE1hMzyoT/QPkynzrxgB0xp7P3tlsy+vv09+RaZmiGxlTbuTwqL4VIIAfOSOewLm6jH1kipf21AAVQ==","signatures":[{"sig":"MEUCICFk64l0r2saWU9GzyZ2tS7mf4QFsvFkURM65UJkMEjFAiEAzhHJCKUlsvQQtUqHA1F3MnaPJB4st4Yzptah5FwkNLw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcl2sCRA9TVsSAnZWagAAC4EP/3uxjzYIpgkph+5LziST\ndCfKZdt3o1l46BqdaVKIYcyXjBwQMbmFgsZVqHT3gZL/tihrpmavU3k7qrby\npe5RpN3XALwVrVSQLFIJo9rKOLsRgjBRqp4vDPyM4u/jqtlzHvItFzwZaf0d\ndm19XvfCqw1Le0yxSlo3CJK+NQQlhS2FTYrJCFsebvaWDAr+TmSQfwpWbguZ\nQDDgjCOa4crXNz6COuALfRTigQCXrrsJ2n4/iG4lcihpWdUeq1mmV7J3eu+Q\nJtQA19Z6eHh0XE/AnN0hNnkF3O8t6t0lbk48cT5HthhWrtcd7fOjXo9Ons72\n/ss5cPEgMdu0I86dx8OgJFxYkrSB5u2Qj3uxl3lEA27Idyuls6IuavosRTpL\ncuJcBOokrJa44BOM5fH5DJKHSauBOhpcgmkbKgtgg95yqzln7zySLsDxVo2F\nlYQDYxlwE4JQoIu/SQToSkl1Ti7lNQgraLrkrb9MzRT1FkCUiAwuuejY4wnE\nid9AaGPtNWNjdjBgzhp7s1siOvKOqNwgJxH0ya8mkaVNgV8L9UUzchPg7c9z\nDnyX9IfHoCPPj32igGqR/mW6Kft0H6yayIwuTWMV3TygwVqXKmhIhD/YpLPk\n01ZXJOje9Qf3VGpGHBFKqLqEKawTmslOcB9tiILpXGPIOelCBqLQX96LFahy\nYAhd\r\n=f/Rp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb224a3181de9a157bf15c34459b68d80870c43c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.56","@balena/jellyfish-sync":"^5.2.71","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.522","@balena/jellyfish-worker":"^4.0.23","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.47"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.128_1618107820128_0.21955255801390794","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.129-renovate-non-major-a066aa59bae8317cb3734c7166e97010a295c1ce":{"name":"@balena/jellyfish-test-harness","version":"1.1.129-renovate-non-major-a066aa59bae8317cb3734c7166e97010a295c1ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.129-renovate-non-major-a066aa59bae8317cb3734c7166e97010a295c1ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8334b3ae3aa7e168db59624d94726328bf722f7c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.129-renovate-non-major-a066aa59bae8317cb3734c7166e97010a295c1ce.tgz","fileCount":17,"integrity":"sha512-hZgUigQ+OTXv40dVhAFj2N8RkOHPH/jqk7SNuTjSeKNHNQYghLKfRr8N+2FYoOrFAPnecOL1BeXebv5Za2yu7w==","signatures":[{"sig":"MEUCIH5ds9kujPhsGWn31db1m8Xtq5MxhlJsmp5ViohJDy7BAiEAubqMNlXzbPvHONyVUJxQfFO5VTdhmuwQPFSSsSa0jMo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcnYYCRA9TVsSAnZWagAAKPoP/A8IodEcWKQkOWzApTa9\nIZB9fPp92bpkcYg71lXQ95ClWBm9f/ycHoQzb3sfbxMfDhsyvV5nqzjgZCJT\nr4IP2vJWHO2BzvH/7Cil7pKRhSSIYJf4zDcvBzOLlsYbgS/B0p6Vu/zJ2wQB\nTshSCG47fxIh+rw3lf3bpKubCvSe5kAHX+8M9XRq3U3c0t3ncVR/Yy6OTyHN\n0EYqhfnScjyVfaoABVAVbJuZQ4UIHrXU6iJasHRDBoBterrGYy70jiSyFDFX\n7chmknEIb7rB2vz6+2n22+sAf/JwflCips7gymXjX9My5CKyuElakkNbulpR\nTkV/HvWk3nch/5iCY2nWEb0Rl859k7A7erAmcBnnjdp7pjH8qUvIgBcDW5Nw\nX7Za4hkcJToguXtt8Ij3RJKqNhVWWe+dX5FBjVAGQdejWdkmBAmLvo0LZh/a\n7D6i0AWoySWGQzjlkCQX7RMVvhC9OygbCJhJeR8WBHlaNt2nT6ioHCSrEOM4\nHxworXtoQUpMyWmTthzfR9kkAtkP2uoBBpiAH7KQMaeDED2txHXr6hQeY5Fd\n0rpGZAal9Z1ptYkTwqHgj/XKYuQrZFPiunHIvzlRD8mFtva48M/QiIxInLCm\nfePXI+U43oELnAuFi58cVrC+3kUfJYEFglN6rhDMJCJiSTyJBlFh49pDOOQG\nzdru\r\n=2JLC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a066aa59bae8317cb3734c7166e97010a295c1ce","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.56","@balena/jellyfish-sync":"^5.2.72","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.523","@balena/jellyfish-worker":"^4.0.24","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.48"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.129-renovate-non-major-a066aa59bae8317cb3734c7166e97010a295c1ce_1618114072188_0.40258287871787846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.129-renovate-non-major-654586ae19a43aa8ebeaf09096a760202b616c60":{"name":"@balena/jellyfish-test-harness","version":"1.1.129-renovate-non-major-654586ae19a43aa8ebeaf09096a760202b616c60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.129-renovate-non-major-654586ae19a43aa8ebeaf09096a760202b616c60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"562ef6e6ab37b8d997c58e3f94c44e17dbae546d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.129-renovate-non-major-654586ae19a43aa8ebeaf09096a760202b616c60.tgz","fileCount":17,"integrity":"sha512-wxU4VyX3lpKLlyw6CKNSj8i0JyZeuCrfkvwvuWBwlzPJKk/m8PT1JyoCGjdhvWLy7C1dmsgO0Srj7xStS4bbsg==","signatures":[{"sig":"MEUCIBitUglZIPLBXE+7r7VKSA4Ir3dn2nepiIUpSumw4IDIAiEAtBjWLbR9YF+ujx0YCExoqFHM4WMqAnRtIKRQuxFdnjg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcnb9CRA9TVsSAnZWagAAa9kP/jJdWZDlcTUeUbu8Q2j/\nmQ70+kTJIOQqIN89y14VnS0nSqXXMjBIL16T4acfsRic7IxPf5/c2QfiQ38r\nvH5QFV14WIS+qmALmgVo7k6QXH3NyDdEggDFITDul4R94X+PFhQ/Agp9nlCn\nc0RKlYQ0ogff1JwCs7m4KhQi7bpn9yqO2PZILxw1mQZmFFLS18tSSdbmXBdw\ng3q7ch4EMQksRQo6af3hcMYSR5SYqxk6uX5R/y+n+p+2VH82qjzedsZfwPwq\nebXiiT+gyGT3J/xHJsDTCJ6VB7HXwhc+Ix3lhFC6l7zQNLjTedLAZ4LS7E0R\nRTbtjpor+iUwAoV2Ibkezx8yS56RmBVKkiBuNwAGEoFik2DRL0mubmDOCrgr\n+HV+35hNVM6/FcZAhbmFvShvFQx4a4nAoy9hL7cj9ywnXYcSfvaxVKAlBt35\n6pdc3WBNf5+l8CtXjX6YeZaAG5wVP/fdFxOe8b2MS3DASLoahFwVdLOQquHW\nkMBfTbxXOxNMDMbL542Jjpe3RMT/+PUCvB3n8fG6BzsqFdl8nAYADfT+wxFR\n3lk0ye10ACVoIl7p8e5LYkLw9Ty4ryDPoZrSbuecyfXqet6SvsrBLs+aXoKM\nAltU333aEMFxdJWCASNpDTsdubQ/GGiLf7aLRrV34t6x4O4XxNOIOVbJEVla\nKLmU\r\n=Im43\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"654586ae19a43aa8ebeaf09096a760202b616c60","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.56","@balena/jellyfish-sync":"^5.2.72","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.523","@balena/jellyfish-worker":"^4.0.25","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.48"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.129-renovate-non-major-654586ae19a43aa8ebeaf09096a760202b616c60_1618114301518_0.8003586985124507","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.129-renovate-non-major-c39baf100311c2fbd22dd87edd595d15f87cf0d3":{"name":"@balena/jellyfish-test-harness","version":"1.1.129-renovate-non-major-c39baf100311c2fbd22dd87edd595d15f87cf0d3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.129-renovate-non-major-c39baf100311c2fbd22dd87edd595d15f87cf0d3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a96c8f035e0e563719861de39d0a01a25a27ed51","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.129-renovate-non-major-c39baf100311c2fbd22dd87edd595d15f87cf0d3.tgz","fileCount":17,"integrity":"sha512-K+UpBlP+lJ55Jh/3aGw8dW9uLXUO1IH0cYpQ2S4kn4bNriZabZzro38Wz3rmFCoHQzApPcyE+7BfLEXpZRidRA==","signatures":[{"sig":"MEUCIQC5+hon3pR4c4FDJHHdMosw5Wpo51CdYtOYK17xnlB7iAIgRXhPuvzeTVkERMzFhwHoRXpdkc4vupOdA8ZqtizUArs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcnmSCRA9TVsSAnZWagAAdPAP/16JKU7y2uLQgg2RwUx5\nJcLEaI+vCGRIMb/I7N/NPzrF1XLV80XfWZmM/Gcf47xo/wlENzlFIItglhjr\ndXcaUEu03ELWvpzmREfGx7gsdhpK5o1qWfC5KOdF7Vh7R8oTTNd3BVErwrxM\nnuNuiTacnylEblyxat5T59Jj9c0Ox0+X8iOmtFIgABj2VvePQT+FYqhcjpT8\nYI1k456J5Z1KsVBVQuDGHhGrxVHc+W4jzKPd+5jvWgt62KTHSDS7TA4zPy7n\nMGnEQcpd31vG8/Q4k6NOOaNTni4T9zlAivndOkkJgymzm3y0AIbHpLECQThv\nhHuJRYVh52OilWGUevOdxybRycP5s2MGEYHubbuNUPHxYdCI8Cucu01jOl6V\nMoAjF3l1z1/Audlk4YHCp7aENyWbMRuuUPY4uy+xXGKCaDhDdst6m894kGH0\nY1O0MBNEVkZqrEbuqZN2g3tCRbruBWba/drr4NBHGtLeascaEMQDDuB0RuA1\n5cr9LR+2Aod3aAyzAMlNH/3oABWabayT+pFmgUfqQZQoMjpkpGwOAVNRK30f\n0fJIAlqYY4r1KCrgpyPppjLkw7HVgPK5BQUF0KtM0bqCldgbVVcTmNlFAAWq\nm73TseFxCOEyx/mDlSd4DfirzbxzaHHp1VkyqC6oz4pfDkZkzlWTRJwFTARt\njbH/\r\n=Cv5p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c39baf100311c2fbd22dd87edd595d15f87cf0d3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.56","@balena/jellyfish-sync":"^5.2.72","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.523","@balena/jellyfish-worker":"^4.0.25","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.49"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.129-renovate-non-major-c39baf100311c2fbd22dd87edd595d15f87cf0d3_1618114961521_0.9303032701555263","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.129":{"name":"@balena/jellyfish-test-harness","version":"1.1.129","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.129","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1ccc0bd033b06dff094f3d3398471f7b94497ad5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.129.tgz","fileCount":17,"integrity":"sha512-IyVHNoBz5AB9GC5MlUt1pv8cKLwnuDnnMEuqasocj3YKyN4exTWBstXbiLB4yawR+V6kCXiBoyjJRAw+y+PziA==","signatures":[{"sig":"MEYCIQCniufjlcSAJdV0cY3HXzuOVeWnE1mWSyxGfjvm5q4+GQIhANRh8yA2vb15bJVbptOQrTrHbC/CfB6OQWKl//c95nbE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcnptCRA9TVsSAnZWagAAXKwP/21tm8VXPuGXmGqKVxWe\nOGCFlC5aJbHzPLd+EmUAwHqFqLACBE95A7UOlf4rqf6UFDN3CvOKxc965S5z\nRLSh9IRkx1byCb++yTgCzAk/rGovv9PvN1kHAmlUjYRkTqxPUakpelQ66CxS\n9+pIONCjfUXzrLTn5gkpgUVb9gT/DK9GKBqn6X4f0SRVBfbJRi4mNQhQndym\n6fmrbHyRsOgVPRi/tb9kIVCmBpzMgP4UUwuqWuSxbXYiQ4Cf0FDM0VlOaTM2\nvn3xRugbKLed5M4aZa4VlTMICDSoBkTGJP3gYYeJtKchFiWFZ1QBguPLSdEu\nJWbue43BOV+BgvsH+I9QFfpmb19SgDy7xVEnem8cUr+yNuCbp34eb+2EdtXb\nbZnXZcIrw2kZXElnkKEClFDzzJYx2FOLyycDp9cR/J3NFV8GgPYqX7hLS5Dt\n6D8fAvs530wYuslj+JyElFmUUDBd2jqet+fTOv3gPovXrqhJgeyAC8XIPM2s\nH6UXf8s2a1rIGgu/76q7ul/ECbNA3GBehixS/PPusA8XF8wum5kMIHoHy6Zl\nN7B/Hh8LuEAiF55GJK+TpIgYBPeS+8BzjLYwPoq3IBfiVKKEjc9WkeVBdXTi\nMQNIEn06BiA6i1paVNMKAuGg5NglcZBLd1R49koYoBq/S7EaMt96CTj6n/3r\n10mk\r\n=Bzy6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7baba2fb0c937a8953baed0b06aac83d352f399d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.56","@balena/jellyfish-sync":"^5.2.72","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.523","@balena/jellyfish-worker":"^4.0.25","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.49"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.129_1618115180901_0.6380456405151613","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.130-renovate-non-major-af357f773678b301193f658108ccdefdd45da862":{"name":"@balena/jellyfish-test-harness","version":"1.1.130-renovate-non-major-af357f773678b301193f658108ccdefdd45da862","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.130-renovate-non-major-af357f773678b301193f658108ccdefdd45da862","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"89a3a1b0e2ad417a2ad0658316ce16ed76d577f9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.130-renovate-non-major-af357f773678b301193f658108ccdefdd45da862.tgz","fileCount":17,"integrity":"sha512-4x+DoeJgiwqlpkLmIqBEYQE7JiTZrwyJV51fLWjzde05FrZccXWZ7RxTGT6iyVQL7iVcpfkvMxjBSWMU3KAtDQ==","signatures":[{"sig":"MEUCIQD0c4n6xibRauKKpoyld80gsxccBCwRRdMgiQlRlnZkeQIgKH9qCUvjjnjYr0e1lWbiVgFLKSAJGE2yeSTi2HglXzo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50314,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcrgKCRA9TVsSAnZWagAAuzEQAJ3XYGaxJXBPtS73fo5Y\nlzIJ3KWzUVkwT/17lMeHQ+bvzdwoYh+0govb44CZygsEAcoGgyLYT7IPFWlY\n/N0pb6cdF+rAye6ebKo4jf2qDAzeUXQoB5A1QliYYEH1Wkwr8IBJw7R6qHaI\n6cjyh6faVChFKcZ7S408WFbKw/gwVxtZsw9Amb8uNTRx6cSbRbD+EGzpSylt\nZ1j1QVkxoTRbmpJtWn58zCyJNVzY53xuQUWimCnZoQwKrpq7Vnpj0INX6Gtt\n64bEo1TqFXTqXw9fhjs9UPib9NPphalXPYBJ2Lmbf/0ba8esAK00N4dJyGkg\nWFrlC2xv6mPjGojww/ZCCY+ToUbtPzlbCgDppHLNAx6SbwsFsJPEePJCLVue\nd1MwIh3xNOjoPCxCA4cV3jpnL/1R8YJAJsCce5rbXZ5AChZ9SwVMNOjsemo/\n2RDqvEK+cZ7/Wz6RDzvpUc/mxsqX0g33kflNwHwPhjEU6+gzTZrbCCpkwlH1\nR1/m/2wHdZ3W2OpWa7dgRz25cjuNZK2STbj6+EDbESnRQumIiazjlhOZKayU\nYUgIPgbeEqqbwRmqBmNi3ncNBAykaQkgezHqGxd5rFKnHUkdiywzJ6F88Ge3\nxabAOyKzBKauq4+4UU0dx+XsOkseEIlaGGn36TWKtNaKskYC4F0zE753nJhj\nfAKh\r\n=Xq9p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af357f773678b301193f658108ccdefdd45da862","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.57","@balena/jellyfish-sync":"^5.2.73","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.524","@balena/jellyfish-worker":"^4.0.26","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.50"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.130-renovate-non-major-af357f773678b301193f658108ccdefdd45da862_1618130953828_0.9028920866723589","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.130":{"name":"@balena/jellyfish-test-harness","version":"1.1.130","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.130","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3056796b005cc13db185b99e33ae98c8dd3fe7ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.130.tgz","fileCount":17,"integrity":"sha512-0T/Jq9g8JGDiQCL0V9hAcb61NM94dB2zABGLWeQUNJ3w65ZB615Xk9S9LHBHjiYqPlGUCNeh+1VCenL7XFrFVg==","signatures":[{"sig":"MEUCIF/ud44fgvUJa/zZTr3J4CWEUEeHBpWxlOz6aaWjNIRQAiEA8oj0PnfERR9+KRNmMfoqbDNjqNMXRX32SwfomJaxQMg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcrjKCRA9TVsSAnZWagAAtt4QAJOcTbxKJt7ysGqGPyxK\nDZREW+mJO6oet3UrF9VKLEB5P3lLJMKC+MsQrCKdff57KgtJk7CZCrNsDcXx\nwyfj8Z3XU8oJysQx8yQWQ+uoFzXKHF1zc4HCkw+VkiOfzlyFQSbX52vMcNbo\nQy6esuvQE8L7P0/oD7ZY6ku/6uiErlRuj9QSKq1VK/Yf/zgQuPFc6dNW21X9\n1zcN7OkYNV5jBFdEMeBdtaJMVMtQmf1Tc1+s0xMnA9PiNsYF2Tq9HtSxUbkG\ngDFmS16wOUAOZWNkgdqpdk9GFMNp0EdaXjj4U1rDhHBneSfzy/u/vWgZrYIK\n1V9IloyQUKTcct5N3wbnDO3gLMZ+aLuAFpm1H0jkEq0xnj6QNbkynpsvBpE+\n0dKj1O71tIPyS8T6CBTa6mbY0lnydWjHlBDKbgm+5ybcW+PQaPjUzTaSl760\nI15xT19e71GR0Ovy4Vt0Beg+X4Mc2ILhjTvn4MI/VujrG2Uiosqpq2wmurTz\nWA2LQRrCKyls3tPpIUeIfQ0DsDD4eXbmWDwh8hcS8J+vMnb07UJ1M7XVv8Fb\n8JXZoGUCio84d8ibfVlHVejWPru8m90eqCs0h44XekA7ETqChkPJ+BOqHqin\nx+gnF3ZL2vye8rGci6XzmrjAisOho45eyaD5Qxyzyh0Gtf5+X13Cuor5xbIP\nf8bL\r\n=GN97\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c218dc6504b8948664ab1d5104a61e5fcd9c5f79","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.57","@balena/jellyfish-sync":"^5.2.73","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.524","@balena/jellyfish-worker":"^4.0.26","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.50"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.130_1618131146209_0.7449850676290743","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.131-renovate-non-major-d706ce784960f916811420d73a98b2cef01f2f3c":{"name":"@balena/jellyfish-test-harness","version":"1.1.131-renovate-non-major-d706ce784960f916811420d73a98b2cef01f2f3c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.131-renovate-non-major-d706ce784960f916811420d73a98b2cef01f2f3c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0cd73837adaad41374d1a9f586c019dad361b878","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.131-renovate-non-major-d706ce784960f916811420d73a98b2cef01f2f3c.tgz","fileCount":17,"integrity":"sha512-WVKGRdto8J0V4hVI6rF1z0TDpfoqKkXqN24Fsd8ITxzSoZDmxeej3oR8BRTbVaTYuiIRByJES9uzwl2vO5koLg==","signatures":[{"sig":"MEYCIQCECGBJ1/f4iqBuyrsjQxYZjKgeVbzl+7zxwn0GhW3nfwIhAJdCN6oXmqxoMUHKvbZ1EPO0XRYV1itFjoz3B28zVGlL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcs5yCRA9TVsSAnZWagAAZXgP/At3MIKLMhohnt38s3DA\nbeeX4DJnycb5nsGZdABDJ14xQSQY7RQc1bbIQnWCARj2SsJgweFhcyAaSg/N\n1YqLnu4AMVo1kSjcg5GG4/eTiSyt7bUnboDn81Zg7M3K8PkQuiE0fOW4ZIe9\nUM/WwDNhMrMxRDek7KLPzaWh1zdljwPjNuh/nLNN2mF1rFAPQQhj26k7sgwC\nLZPpapS4YWTnzA3ANgdWuS+WGbiz+7hdq7lQu/tHa5JGXVwBWb85Khf3nhe3\nV60ya+Ym3uJ45jIfoltj4w0PqvWVzBSZ9YSV8UqXp41Y8I2/36I0m78zZmIV\n/e+nIyOiJ7yY/eKm/TOv4WA3IZ8WGFMAPPTQry/yfprvA+IwXPBhB5txfYWC\nMUugdZo6QhTAh1gl7l8sq1ia1FOuVptNFDbB6suw3Wi+U3XnndWul5Qjrpf9\nyA+jXBbDOVBnsTacM+XJ/Vu74gkUrImBpVSU0JnlMRRmLSFDNOsCv87DrSe7\n3pnpfpCl75NJzbcQkMVQZYFj3fLuZI+FpJ4ao8wTOfeGxwx17z5nJ2LRasXT\nR44TzUpqPGuP9eEk20KOSvRQ78PIveo3rAKbtlxa9e0ZdzcNcz1PseDx27u0\niv1/B4vH0PaE+uabzZFPw5SAWWImOTn7N9LuJa626iGyf0BfWJhIkmbQBQun\nmICZ\r\n=wT29\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d706ce784960f916811420d73a98b2cef01f2f3c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.57","@balena/jellyfish-sync":"^5.2.74","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.27","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.51"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.131-renovate-non-major-d706ce784960f916811420d73a98b2cef01f2f3c_1618136689636_0.22802303635432453","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.131":{"name":"@balena/jellyfish-test-harness","version":"1.1.131","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.131","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e63ec8332130bf5f07e3857ac786c14f431ae276","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.131.tgz","fileCount":17,"integrity":"sha512-MHk1XEushoHywRP0KgSaSu6XPw6gp5A5XJIo4mim/RCt1fOiCFdIMOyZizEq6k7zgpeWOUXWQKtgHoGM9XNNtA==","signatures":[{"sig":"MEYCIQDb+hdAXtETRdIbpcfy7C+WPlNtazyucAZ7mBzcy3MyFgIhAJGcCF2AX1RQvgz0LLFlZKdjErvPLC6aM8GkNBR6eEKI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcs8wCRA9TVsSAnZWagAAwTMQAJ1JeDgFtwHvKHdMi/3+\ny1P4RsSytZlS0mT7Yx3meIjbMV+JylFrOlVhcn/WUzr4T5t9ArOYPLnz0oKW\nIiadcykr0LWL/NIjrjfktbOthKh73IGiVhBVA3rKh8JktkTvXivg23ibIJNu\nlPEqWvq3OeL/GEoRwJq2gf8O01rfIERXC3DWioy74ow18eN78DAwMABp2rX2\n1Xu7eXhrmVJpal/pw7+BhEkFN2tgvZyQreFHLKB6xza1/lIVFKBviqXhf3U0\nMTkiH+Mz3blFftkj9DK/H5V9B0vW1lgBXjNRpQXqXlKg0xp39cfYUyLB4FTT\nl3OPTQqOoFB4+S/HrDTzAVI8nhQ2x3rsQcsNJOtHPB+Jcx4paOEnfTeVkZy2\nZEqQubmBmtSbeCQPWZtimDjE/zMqVI29RUXdUuoRxL6ZA6tl/+kxFDUqUsfl\nwq89aHxNqHZbFMkHkhymoD/O/7m5jGJNe01qh0q1MB/GFn62jJ9X0UYZ+uDZ\nehomlCY3lwVYBWFdmtbcUKwOeTmqZcQh10q4t+IF7ZNvQM6GA3C8rDEBMICx\nMSb5oby+k1i1aLnH6XFRYg74VsI8psnSJD31rQAPrHJYbVpDuWSbg1z3G8mn\nxz4QF0fmq8Ge+vvlON05Y+ztO0bdfAOV3W1pzRhOun2Ak0lqd+uYFadyMBPx\nj18a\r\n=zJe7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ac0a7735d72a729926c1820fcfbeea9b39ade8e0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.57","@balena/jellyfish-sync":"^5.2.74","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.27","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.51"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.131_1618136880240_0.8366680576879171","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.132-renovate-non-major-68c018d9163cec557f3eaa31295337c6587ef7ab":{"name":"@balena/jellyfish-test-harness","version":"1.1.132-renovate-non-major-68c018d9163cec557f3eaa31295337c6587ef7ab","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.132-renovate-non-major-68c018d9163cec557f3eaa31295337c6587ef7ab","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f46a826d7d172f65e3dec36d0f6a4dfa3894f293","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.132-renovate-non-major-68c018d9163cec557f3eaa31295337c6587ef7ab.tgz","fileCount":17,"integrity":"sha512-MaV+En49wd3468IoD39wvzTE8Jr3dzzvX8kKRdAko2rklmAwUyiYstDbiiRsX1i7kb2DeB8vH4YC48Z2fE8hPg==","signatures":[{"sig":"MEQCIDZ85Ks0kM7Y1I40EoywQvfRe5AlGdmY7LCNorBGXkLpAiAzJrIutmPjMLPr8YgjFjUN/sOq+JuN5pf/bKDwgtDpKA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50454,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcupECRA9TVsSAnZWagAAp4gP/1rLFbJ1x/nYK0a3pnFb\n6Thvhecmx7tlRXIj8GKbxvwnSVKn1fkBmofaoU2jYTe3vTPdODdVIk4q2SFZ\niTHnUIi0nRsbLS1l/VWh80JcmoUuWVWAQOQjwQ/rD/a5B+/QJvVcfjVa9HP1\nJc2JkAlyUcxzO4FnKZsjfz38d1UDQAGvIV9bEdhQ9XpIBfhMwd2LfAYyjte6\n1VPTgvwa9xzMHg5rmthmMNU5V+28Zk36t7t1mdlBdysTB/dTTO9p/XkD40xv\nQuPsU9h8aT9IF3gkGNKd4rKyQ+t/Gwtaw622Qwis/9pzdyf7L9YVig4u1b4y\nZQDbWHj6qBb80RnowdI9Gq8wT6/kZo0DU71NSBJANJ3GxlW8b8/DcH3rJTvl\nZOK1iJgfPaf7VGhSr+TqjHUo0sg6mlO5KTIEhspUJMorzgJacTjAC0Be08db\nWDM2oreAh/6UIif1Pzdov7Y/5zQfSAr12VUIQntY9BgQdDyr9ijWabvGcCH7\n2P797sOKc065uPXjL0CcJHOEQuXDVNvCvDQhBOKskb9rsOWpt35wDUjJOgaR\naPIwiKDk89odZ2EWl/MTezQmQqUvbI9fe7NEv4jy1w8RBDVGGcfG7rUDIr/F\nOpZ63KhuCEmw/DYZfqjLZ4Sil9YOxIw5TvfzD4p3gzao9+merMUE+GzgKdlu\n5/zc\r\n=NvZ4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"68c018d9163cec557f3eaa31295337c6587ef7ab","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.58","@balena/jellyfish-sync":"^5.2.74","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.28","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.51"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.132-renovate-non-major-68c018d9163cec557f3eaa31295337c6587ef7ab_1618143812435_0.5466634977054796","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.132":{"name":"@balena/jellyfish-test-harness","version":"1.1.132","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.132","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2676e02f4946a2bafdcc03f7a1cd1e14f697d538","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.132.tgz","fileCount":17,"integrity":"sha512-1Gwrr3mmSAJF0D6qbWXHORY6znbtuA3hrVnxDby11IXttJBo2jbIyaD617bgo0iAisPUO69h5vtEOicJojg4cw==","signatures":[{"sig":"MEQCIH/hYazW8QLG9ZzEg6YSPV9G0oRdmu/Ln5P36uE4OzLEAiAlGlgWiIJKipfIjrBWUMLUlPSsO/ROSk+hY1fKQ70agA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcuseCRA9TVsSAnZWagAAycEP/3+km8iUm6DU2FfLcI0c\n8yPyeZKsMvnOyVUzDT3/Flczpb21yvjfKJvRdO+60bBYmNnXHXJmhKbIjdYs\n6OWs9s2Fzx1nXEstf6v4T9hOev2ScQTktyAFxJUJ1P2aFGOGMABQ2F1MweWC\nNeqX/mFB6N3nOmR2jol5ijMzhe69aMfDOujWLqZVd00/u0isVVU62KLLih0p\n9DNHdk4liZTonm9vFmeEB1y64UsCk+rErr48bG7M2DjXfLmsgnfnyaWtj8SF\nRthPcond96jQqGuuYIUe3chTlCggShuKdFHNe0iCfJ4ve0k51my1dlkV8gNo\nCdFNHvnv7SpDHvhimmWTjakG/CIoj9gzGKzat/wGF12XiGqXKSOeF+vlqnXR\nLUmTsxu1PrFPTwvjQjyXeU37VDrtQUnzDp0DSf564wSI4OfshtzjZ8YVo7aU\n1iAC0vSFjGiJ1ww+1ANaQV5ZlXQZh+nU8mMb094H+JDZDutJfPUPvEO5gqwU\nUMHycnZVuNdlDVV4EqvJHnXIO3pJLU+ShBClb/QtmuXfyBfgRnzleqd1LghJ\npU8o4P4SRzYJD1nDb3TQwDYJY2y2eJdxfLxU0+bKWIJlEN47jhYqrUnWDsHG\nf8PHwVhxHFi3h3z2usvXWiUL4jcAXqH+FM44aH4x0BLsZArfQYSHqXQuGxkO\nrLRW\r\n=HWNH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ed22bba3ca1c400afdab18cab9dd2c5efc6e9d2d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.58","@balena/jellyfish-sync":"^5.2.74","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.28","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.51"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.132_1618144030077_0.5932202225685688","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.133-renovate-non-major-51351aa91ae5483f68257e8db1d878620a1e7f1b":{"name":"@balena/jellyfish-test-harness","version":"1.1.133-renovate-non-major-51351aa91ae5483f68257e8db1d878620a1e7f1b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.133-renovate-non-major-51351aa91ae5483f68257e8db1d878620a1e7f1b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3aaa733b5719410828267c8ae58f9dcf0f7c2038","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.133-renovate-non-major-51351aa91ae5483f68257e8db1d878620a1e7f1b.tgz","fileCount":17,"integrity":"sha512-+RStoIe4euSkXDhsrcKj97/lWiSSQWZoj6mImVgu5uQLx+C8YAp19sQffh7yeJ0BqA/p9YihU0gN3jnUOGIeRQ==","signatures":[{"sig":"MEUCIHayRL5h6X6sph69Ck5Db4BGwG01mb/mdpYBJrNVdztXAiEAwtUp+/yE0buHN09Jg130YoR9sXbON+8Y8TSc/fe8+2A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcwe3CRA9TVsSAnZWagAApFgP/iL4VxUCdlYCl/0KD56A\n2lTzjlKwJUSBsA0lKPKKy2y1e2YteEM/GF50EBthL0KD7IqtOSFovULBvTOK\nAp+LYU4ZfHnLfeoandaxEd6IOPYril0MOluIv82wGaVlIy8Ai409zneEYe32\ndGEpEQ35IXwx9cwELTqDeJY0v5rUVa/Hx+7aUigCicbmf4jOdYFSa9f80aeV\ntgVgDfKhysFB8Xca5EEzGxnwcaYllMRjU4+VunCGyy8ij8Smq2UE+Xo8KHPC\nKm5RwHvaiPqxFTDDgUBJTKXxnrbvfP0TkDMLIQYwVmyouvv9XZjHYXPdICNO\naf9r3T7rcglD6JWjbxkqnyb1qbskWTMbzzie44RZargUZ57Aw0VLgfaKhx0V\ntdsB65AFXpGxvWPoNFtljYkHrZuUZdv6lnuslg1LovXkNdxbc8OcNv7vGo7v\nOCdT+cFaWLm1OiAQ2mXuJkqKj8kbAuSoT0vh47bMZPAVTcWYabPSrDCSoFVG\nIAPt6yv6U63yotIJadWdkdgFQuoCzSW66AanlhUNGxFgEFubyGH3mdxw/HNh\nY2qCrK760aNoWUOFnpad0pde6G9zAzFMqm1zYesKvFde1mhj6mlmWrI3QnAZ\nOAAgB3vsStOOWVk0959Lx/pCZQnbMsXM6Ha1zwSgydwRGctc2HpaHIgZmmfj\ntSXa\r\n=3JHH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"51351aa91ae5483f68257e8db1d878620a1e7f1b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.58","@balena/jellyfish-sync":"^5.2.74","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.28","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.52"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.133-renovate-non-major-51351aa91ae5483f68257e8db1d878620a1e7f1b_1618151351263_0.26844172456849424","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.133":{"name":"@balena/jellyfish-test-harness","version":"1.1.133","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.133","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88d4589600817c39fff20a41ffa6e486c6d0110a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.133.tgz","fileCount":17,"integrity":"sha512-XZv9gigDLLuBh6BXI3jjprNQaQEyZgzixis+fN584BW0+bqpDBe/B5rcv+bj+rDkTOkBL1NYQoiajQg+q9ccwg==","signatures":[{"sig":"MEQCIH4FMEiF82XOzTFb1wE+jFUnjwxmVz94AN6eoaSyNkpcAiAgJ0xlIBt3r3wJB9LU3StBoEG4U4KNJFLgBeIeVUirrA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcwjcCRA9TVsSAnZWagAAVH4QAIkJeoFEoY/6kthNgX2g\nNEimX0LDrBIq5fAMRMvmENOc1Vqd0m4ky6D/XDit1/Q9mxzYZkhZREtQayEG\n2nCkVF4UA5OeZ3Y/aq0rDkJjBAK0jcH2BAM2SLgw+lzYh8CvRgrqXcCK9yzM\nGrfBtwxDLxavkd0yHfZh7X3ceIvzLwfqdSXiqzc5zdyZQHlmzPEcy/EbvWW5\ncz6lVtQGFtvgLVIlrtRcTxbzc8e1gShOtPna+zhiFghlvz/gheWbgM5N22AW\nOPqG5FasLPiFexxK9tXdPIqBXF7XQduW3Y4/y0p/1thTwwI7Ehx3IkAyE2l1\neYB7sfj1uJhaRwh+yYTGANaSMLW8+deaXQJH4k/y5cb4xB8ffe5ari7XfRDc\n/OZw6c/jW1UnExJxsaMq24OVQjHp5s6Fsj5P6RD/BUrDsXjhNLlYnhtIrEnR\nVQCCkQNYh6F8ogPygNz70YyBEZ2pplwMZpslUL3b1PWGore2k4CaPQFKHAe6\nRbuEhEw4uElZvCOjEmwxAlJ6mlXlnON58bjGOUvpBJVKT1gifZ57k7jGv0IC\nYJyftPaw06CZN0pLIJg3JcGq7QW0D1Dwzm7teSh7pXt1P3OjhcitlA+StaZM\nTBh491RhEPbKQpFrO86S2BX40EC15QBrrJO3Z/A0JlNaTjL+c1XlvEhk8Tir\nCxzY\r\n=mxRi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db6c8d3a880e386e4fb04746103817ea1f0c5341","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.58","@balena/jellyfish-sync":"^5.2.74","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.28","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.52"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.133_1618151644093_0.41491407108935996","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.134-renovate-non-major-f76d8f2fb81ac736fead82f270f3b0e69ff398e9":{"name":"@balena/jellyfish-test-harness","version":"1.1.134-renovate-non-major-f76d8f2fb81ac736fead82f270f3b0e69ff398e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.134-renovate-non-major-f76d8f2fb81ac736fead82f270f3b0e69ff398e9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf5bf993c8811e21cbcc16e49fcae780275f77fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.134-renovate-non-major-f76d8f2fb81ac736fead82f270f3b0e69ff398e9.tgz","fileCount":17,"integrity":"sha512-TSWbWVXRrGvRet0dGJ16Qf+1Ltb/v58O2Iii7AxqoWQTFa9WkXvY0Pu/0tsNHAxBK53e/mqQoPqxozhK2ZiraA==","signatures":[{"sig":"MEUCIB+B95TkYix3wz2s38GyCUxkUzv3Hou5lgledoj6c790AiEA4gv317z5vsYZ0YKvcoATnaQUi8MioHrfzRDjlYwXZ/M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50636,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcxU/CRA9TVsSAnZWagAAXP0P/1kYVN6ZTnTJyklXZIKe\nvigtJqZakslMPhXN8OpJvG6VRzokELYYgTgKOS0n3lXDPyXnRyeKcQU3mB8q\nssz8gVkgHyxu8jVQ0a7fp2GKKDeu9fZGUrgvOjXYiEI0P3wDHUddvLhfL+Pv\niS8Glu8N8MxJaYt5Ec5Kr8fxtYyaaETaadB7PmuwHaczbtP2hXiSvy0d6O9i\nEksTDddqnQfJttoCRuWmstzD0qV4SpVqOtxpWgWW6jVivW5IyJPcdjwcdd7Q\nYaABpFAJ1/b/hgCvTA7lkM3DKDCly/coduzLP5Dx/7iG+n1zMi4ihcR5mivv\nSMx80bWtWOaaJdv+WyciRzHpW7Z5iAUNdKt2RO1vasJaVPIInBmU5pmcZUdg\nxi+rcWbyE5jYaUYZE7rZGhz2PqlgVKCqJy2h8cBt3AOGiyJJqsg9eSr9gHMb\ngeKfy/A8FR4nE43HtLD7LohOpcpgfosCLXrDxj5Rcb91GJkTscfudr2SheVd\na/AzApTiuR+MahWKcPvORdsTKHBrweoUjnncoXztb9B+pH1EtEGDK5YIg5g/\ny28jnflCg3wgNT/9rYLvJAmH72lcO2RSAaWzHXX9c1jDtK7L4S46Nr5oJTuU\nFB6I44bmyw+LlC6vJI9jLzPYWCBVSk+jDXh/7Qyjv7RFa1nVcrkbbyu3KE7y\nJQQ6\r\n=27H/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f76d8f2fb81ac736fead82f270f3b0e69ff398e9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.59","@balena/jellyfish-sync":"^5.2.75","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.29","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.53"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.134-renovate-non-major-f76d8f2fb81ac736fead82f270f3b0e69ff398e9_1618154815240_0.4557926392067182","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.134":{"name":"@balena/jellyfish-test-harness","version":"1.1.134","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.134","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30d0e15256c84d5eb984453e9fb266f7fd4c68be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.134.tgz","fileCount":17,"integrity":"sha512-/vzydKhzpjXAZ8HXkvaxjjrDl3YlPSR/BL+ZHdGoSYT1BZgTs3SNAGN9krodZaN/RUu/1QQZ56m8fRerIfaazQ==","signatures":[{"sig":"MEYCIQDj41Udx7vOlYiLVvle+65Aj0B0rhtByJVvZPOO3YstBwIhAIyI9uz1e7wUJw7s1rPwPAh5Q9KEid/AP+DJ9YjzxxNo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcxX3CRA9TVsSAnZWagAABsIP/RAK56jjkzm7fPDSYzW9\ngKboczMnrM0rfMLrbFcLL/6gZn/o3m5UdcleQNz/HlqOycS+QNAPDaKiGe5z\nFilajBDXDE2dU0Tjkjp4+MlGpN3kuzCVhhJFPHh5A7PClw645abshHtrxoav\nUMik4wtABHHE9QWbTCWVSi8iuXzWTZu4V6DxgYrMzmRj8nD9vRv3h/5ZxBtw\n9JzzrIKj8rKXltdiC6Fu8Nc+s0JSfiC/UtctAogSIFiE1XBYT2K92EJq2H/0\nDPNurJBwfhzkeEjGsze8zdGwRiU//wZ0FW36mZ+YS4rtDr1EkuaiFk9VFmmg\nPByvDRKKo2ksFGI0urkAXbot5xCIQc54UOGjlvl6cCKLDBkE9yaKNBgV1bzL\nhgc4tN4N5PLQo4DZKWOEBgSrEZ+Jkw9eg/PRbHhmhghKlYRIcdsGHGqKMIg7\nHDR/CS5VuY0DuO4qXQwcjaAkYZK8PqeYvjBnQrMmMKytt59weS18Oyp+qIxy\ng50NzyPQDEkXNtqdYI5NphVVG7D4IPJosZPwsBFX8NSQDtFYRaMzaXGwpQVq\nW1/loEUHZ9Wc6auKrFcqI/TQppnmX+TUq/ikiZ8C2AzOHWFOqzFY/wxzHH10\n+1QNE9pQQh6I7rsQjFRlr7Mn5IKDnrWk3Sj3mTtfehoxfTu6AyTnvPlLcjc1\n/a0+\r\n=TOp8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af7a542b32ab618effbc55c4a85425b4bd9cb04c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.59","@balena/jellyfish-sync":"^5.2.75","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.525","@balena/jellyfish-worker":"^4.0.29","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.53"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.134_1618154998763_0.9180669151299037","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.135-renovate-non-major-e617c6ac8a0652baa6805b006b612ea3f373f1ff":{"name":"@balena/jellyfish-test-harness","version":"1.1.135-renovate-non-major-e617c6ac8a0652baa6805b006b612ea3f373f1ff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.135-renovate-non-major-e617c6ac8a0652baa6805b006b612ea3f373f1ff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b4542b3ab7812c5757ec3cd4db6307d4e5b0d41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.135-renovate-non-major-e617c6ac8a0652baa6805b006b612ea3f373f1ff.tgz","fileCount":17,"integrity":"sha512-WJzNEGMEcXTzM8UWp/60uUWL5JLlA+CgdHqQXNA7poDil7hBtUI/kCmG4iwsD0F/KutGhUP+T5e6AobIcTJE1A==","signatures":[{"sig":"MEYCIQDgphchhUaayGwGcB1kTGutKtF+fEvp8kDnn0viDwC5xgIhAOpkYS+u1eOJ38HMi7k5NJ8L6NbOY0JmDrhyzpqN00z2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcy7tCRA9TVsSAnZWagAA1MMP/iOuRqNLypcgJo+ohDn9\nWvZ6Ak/sfZMU6R/W28lEX5p0BL+8oh4/Hk9V0+wNwB0NkwfMWqSFccFXSN6g\nnZVv+M4PExAYOy86rDnbWryRbcz0cW6FlutrKJe2yFcao1rfmcPhHBDbirL6\n0Q9mQFiC7a4/5peySJqzY4u4g45PvT/sr3UfzlEppl8NRK1PlfY+7ZJFr59J\n3SOGw4cz6528vrJQnSe0wTYxAuxvryLolLF6AtqaTA6zqFW2NWtQCukOwKYx\n+DRDFzic/lgpDXdSG84bZu96q6rmivt62UcOYh0aTYrPH/fVUCJoTnKCfcf/\nz17r49irRy46G47y5KiuH92K+jTzoespt4erbyd2lmIaLw2L62dxmkqqF8op\nDGSZkf68Jl1X3zfg2w/deBxZeqjBhoYyNl6jJtVrSYByp3nZ3Vb4jZT9QQ0X\nuzib3jaLBx1h+NX52+SInXWfQvQw/b/ArYpK/ccwctoz1KDlILzqbfiFzead\ndOIVX0un+YK0/ZmaBj7mcv2S3OLQi7lAnRbLht478jPSl1lPUXLDHA+HGjkl\nBJC8B9srCHHe/OckJkbpacTraHN3d5xLcC5YnAQQ/a9WgUdJrH6gU2VKca2X\nCLddUhYTEFfc8wky9QJ5duNEsTj0PI+SXGu/OEWMy7PU+fOMZCIqtmIR2hTH\nyHDw\r\n=DsDs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e617c6ac8a0652baa6805b006b612ea3f373f1ff","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.60","@balena/jellyfish-sync":"^5.2.76","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.30","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.53"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.135-renovate-non-major-e617c6ac8a0652baa6805b006b612ea3f373f1ff_1618161389380_0.35856974876273795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.135":{"name":"@balena/jellyfish-test-harness","version":"1.1.135","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.135","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"954270439f127ddcdb831ea1f4b57f3bf0fcae32","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.135.tgz","fileCount":17,"integrity":"sha512-l4IvQ+SCkO5gu2SMoGdl1UINp+4/eAWkNOqR467U4/mfRPKfYeDfFclR/KfJZ/qjfa0EGIsZ7KMH6ly6dfVNHw==","signatures":[{"sig":"MEYCIQC1Tt8bzi52SLgT0dVEQIA6gB/3QzLgDinEqihyZAMGkAIhAO99t89v8CQ6kjeWtHWfoXALKt9ejoOXh3px9vg95N11","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgcy+iCRA9TVsSAnZWagAArl4P/3+w5EBafmY1P7h2VBY2\nhx1ZG/uRa2L/L8iTHaeC6agrYPeY3VA5zh9nvnwqMG2qXBvO6TEkah7sVS60\nsJbHtKziKAxtQWOsVLDs92ttDMDedhzEThvFF8DneZrzr7xnyW5quPZgFZ6m\nfgeaNKt+43dKLf44Hq21TolnQGgGloMIDSsioOSlubhpnOfcU46dJ3loGc4+\nP1qfXubUshn5ePzRdOA8VK3RH9Naqip65KMb2EeG9w32vanXp9pXTZT9ZKC+\ncp8W1pTMtIh63W0soMR307H8Atjm6bFA0Do7gVEtpLYjtcHjx5P+9c/Q++Pc\nQqraYLySjh0agfRriviNNXmQ8PMcIC4zaV6ttBmOPAjYd0tRoTdSvOsYTX1I\nG2X0bGYRN6cfcbDp8zmpFa7is1zVYbIr+JkbxwKvxgjP3Ba5nvaiPcntQzho\ns+c0xqkJTPKcmknhcPY/qCgP3i4CRu7sSYM7yObPD8G0wvWdjIjBhlJefYAZ\n3VCnPIeXoazSQm7ZgUlOC5wgcdMkAS5eC6zLQ1qYtSdT2UFKVVAVWqRBQJZg\n0tMxTHXUi4KpVG/9WKfVxQY+Vl96o7rsRFCQn3M2pg50nar/0D0TElF0/U9i\nCVKwWwTKk1tEnpRuKTCX4kWfkhmILM7FQj51bXW6hLVIhyTpTZHaR5qiY3Hw\nlHrn\r\n=RoBU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b3db7400f28c17b7dd7d0d949aceb9f3be6d1d7c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.60","@balena/jellyfish-sync":"^5.2.76","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.30","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.53"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.135_1618161570416_0.7931775178448388","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.136-renovate-non-major-a119d7dc7a538fbaba0e894191830d83979e7e66":{"name":"@balena/jellyfish-test-harness","version":"1.1.136-renovate-non-major-a119d7dc7a538fbaba0e894191830d83979e7e66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.136-renovate-non-major-a119d7dc7a538fbaba0e894191830d83979e7e66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d7e4111c425a6c0787b6c7ba6b34a006dbec053","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.136-renovate-non-major-a119d7dc7a538fbaba0e894191830d83979e7e66.tgz","fileCount":17,"integrity":"sha512-C2Hh3fuiMoQqA4XWETP3XPpewcK+k0Nj173DuaAF5eOsFs/rQqvPQVZzuFdgNHhY/BYxrj8c4/IAScz7h+NN4Q==","signatures":[{"sig":"MEQCIFXkNLsf2xz3SH8W4Ln4jc4woloZr0L/FxHvEdchPtJ4AiAtnUjOk0ED8LJUMpp8WL9OhQAybKoyCPbOyJUbtTEFWA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc0x2CRA9TVsSAnZWagAA/3UP/2EmEcmOLmvRMiE5ruGS\nCu2Wt+QlW1QJErcmK64h9q0VYnzN5ybZCXBfqt9Lwdd+LcwuHRjOHWuVLp9h\nKijBFzvamYQlZEYRAKAj9fKkNWVKGhscpqQUCsDptgRfPZjchPY/JrGhAxzx\nHKCOqEnFax9Sr+WlcR1ha07UF80s7phx6orXVsOQuTevLI8N74eUzZFuSjxF\nnDxnN3Qo4hrZfRGPn4OQM1XYSOGyJ7pfGtXQBQIy+I2q75K62H65DFv6+OdY\nGAfSaRQXwJnmMl6di3UdJov1YA1URxmw/48YPGz+svpgI3mbJlmwmqH5D911\nrFaaDg5GbD8vHtodJivnhOxmFH22puSo1ZLUcHsBBmAMK6DALqxyzvJkhrgP\nzeVanPZxxDk75u8viDlu4KQDwtTTP9Lmu7WnHntOqnMZMOebcGCNKwo4qxD6\nktfApmK3tIVZ1rd/pb3YE4HIKBRI4VGKiQe8GMdShlO/EFGPuFCAirR7DTdw\nbMnUXwzPJWBYwiTafp7k1C/JYPR7LiAHC6VJeFcRU2Qvhy4olM+RuKqR3DKf\nt7dK2qdYch738KU/uj8RFqoVGPuZ+kZo0XLoc+azu5iBPr3Cq0qyH48nevfA\n8gDXKTxc5dqApm6s0g7M4b5RLa3wRSLTSwmllVOvaFhtBNcBqpetaNnFbHlT\nRDxw\r\n=8fbl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a119d7dc7a538fbaba0e894191830d83979e7e66","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.60","@balena/jellyfish-sync":"^5.2.76","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.32","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.54"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.136-renovate-non-major-a119d7dc7a538fbaba0e894191830d83979e7e66_1618168949851_0.7324194935728392","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.136":{"name":"@balena/jellyfish-test-harness","version":"1.1.136","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.136","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27217179932030d1ac3623ee58fdb2645aa247aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.136.tgz","fileCount":17,"integrity":"sha512-PdMzu5WZDBoD+w+Wl/KPUyf2ip856rolxx67ieCdmNi+DHRZXK4nDQEVArrYWA0sjrrOyVmRXqsjLKNh3+pE7Q==","signatures":[{"sig":"MEYCIQCLNmMpkNaAIam4V9jFLu8FvlAYBy9pihufmrDXzXIOfgIhALV2WGdDcrCgLaQUYR7Hd1E/oppPVlflgQpQJH3hDikp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50716,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc00+CRA9TVsSAnZWagAAMWgP/3w1+xownbi+OZnyVFbt\n9bSvcbZSB8TYQ/s0DfDLNcTcmpE2I4l3rcjPiB1V348hgWS1MOQBDwJ3MkE4\nCpiHqnsKVoULPOPheFgaTGr3FpaY6iX7Ama+bz6lhF2wy4CVLABi5h3R6BBY\nuQ7BV/jHYhc4pqJoDtf+vXNBUiQeF5F6MiFaOoYg4ehG0FJdbCsYJvKyRve9\nV9eekQfv1m17zW5fAaBr4n41VfCLP9Vm/vhGcNULmVdOlUFFVyMpixZZgTjd\nC6O2cogh4dkOjpfdLwG0TQPhXajkhOf68CeKu/CKZdScCk0J+DX6hxZUJN/5\n58gThQemvmRfEaqZZmJq02v5arrN/dfzHv2opzxYpxQyWh6fglTnFxnYwr8H\nlZJGIPyGbdQQ/XKBMYp860OnesYPjbJf+cVe0Q6PHlGyPwMr3wcudsdoGH3m\nXVdeL6y4yZDDFl1J9rTjv/IWU/sTbix4Jfuza0LjAuYP/zuorxjIOs/QcF65\nsi2uIh+6vBxUATteRFRwx32Ih4Vm9RtZzDHmVcsyzpg37g6YuIhdp2V6L4xN\naBbx687Y37X02BYt+atbBxnAsaKt2LXp9e3tHXOyLRL8SB+1q+e9xA7HC83e\n5Lq88dftcV61TdYpwmoJMb+w/Irf5aueaechxa5u8N5oj8thcBB9WgMHT1+q\nMngl\r\n=9/tj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5d9e666054c546d6bd9e1b80274bc3e7700b7a25","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.60","@balena/jellyfish-sync":"^5.2.76","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.32","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.54"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.136_1618169149774_0.8381763787892007","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.137-renovate-non-major-23091db5208846fb87190b60f2ff382b87e619a4":{"name":"@balena/jellyfish-test-harness","version":"1.1.137-renovate-non-major-23091db5208846fb87190b60f2ff382b87e619a4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.137-renovate-non-major-23091db5208846fb87190b60f2ff382b87e619a4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6e7503b874789dcd41472b8e57d138bf8c672911","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.137-renovate-non-major-23091db5208846fb87190b60f2ff382b87e619a4.tgz","fileCount":17,"integrity":"sha512-uJyYH1FwxHTxuULOxijAzmRxB04vd9U5PFwlypA6hPLKnNnDnpxWu3TCSb5CFBKo3hcpV7e0fEE8V/P9r3m0yw==","signatures":[{"sig":"MEUCIQDGIfUkXqGy1kuqcYEjRRZX4+JtqfPE+SaEJYiPe3/FOAIgOpw0dCxlNLct3aXBHPWOYvR9LHjXjuSuOpdfWxywOTk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50846,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc2DBCRA9TVsSAnZWagAABOEQAIFDlISkp/rrRWpT05Jc\n+HBzqY69u9GDeUT1ubS3lDCQIKCbGjcFnC+JshkVI99NVeLP4JmAUK1QEEbf\nXpECxlxjK+Vf0A6yaKVgg7BTq5EJchXOZUaeO0biY2EfN9cpSx6uiDtFWD4u\nYd9inST8GLYATWAOk3KUPf2GNAtitSmNCssryc/v4aGElJ3c0gVDNnHpxgQn\nXBlz0F92Uzm8aX5GDkZFYVkaOLjesEpZlcA83isMqjHPaX0u4qN7NrIIYFXv\nr0e27pHjNG+z8/VqJjqCiRT9ug/BJzojAaX43MQvf9Fr/0oqu2kQPto0oA6b\nVi6Q6vRpRhtXNuCUrEXT2lHc841ZGEWsD/w6vNMGEEu/VPJTAoWldOl8Q2DE\nB6lWum0f0j6nCmpIfzyO1zOzpZ753Upviv33xiHsnvdRup/Ao5U4aNS71b+2\nb8npdY1t5z2cMBIzSMv26DpZe4GDHlDTdB+BuAbnWrGwoh5M5FomBJHBhx11\n92Aae1VvDwRyUjQ1d9xvBLQjYUpIZHIKX4CJ4+bC3597ZXHm6VlHMvchYVQA\nH236I87mUu3RpE5nOZHmmdBViK8KTiv33dtDSvTdISG144vHsqkN4pDMbA/S\n5BDv/RDKB969TxPL5KT+Fk+hfRrxIJP/nm6oFWHjeLOsMYTDLqIcGpxqmGth\nayZk\r\n=1A/X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"23091db5208846fb87190b60f2ff382b87e619a4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.61","@balena/jellyfish-sync":"^5.2.77","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.32","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.55"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.137-renovate-non-major-23091db5208846fb87190b60f2ff382b87e619a4_1618174144622_0.10933205686641556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.137":{"name":"@balena/jellyfish-test-harness","version":"1.1.137","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.137","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"83c29ab30beda0710f4f1f8a897f3fb75c37c351","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.137.tgz","fileCount":17,"integrity":"sha512-W6x7Ojs6IfxLOQP1jacuOQmMHyduqDFIq4iAdbHTvatsW0LtwOKp2nLLLKev/KnWhHiI6QQo3y+1bI6BKBm4MA==","signatures":[{"sig":"MEUCIFre64NND84lG8VEiJ4f2Xw5aLU5yqUDZTZ8T6jAIZjcAiEA2wgiWLR5ooldviY0A/IsB8poRwLX/pJAFz0rN9NnABU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc2GKCRA9TVsSAnZWagAAacsP/RZNoQFYGmTjM17/zaw1\n244DECwCtDQZ6hFUMcsUs6YI8xermqI+CHIjOqCP4rW6B7+IY0puTFKm+VjA\ntQMdR6zR5660Jr/DmKeueYmPgMyubQyEgX5rqZVNvq50+meFvIySUsHFNLeG\n+rwVfArkKSp9PPIkkvRnM1mgw1CK37nrmHunmSMorwlF3WXrIWjFveia+i0h\n7C9z2l6TVE4fibScgTC290wosV5uOK7qgC6sMDH1VDGDBH62HVj1XSWlTdzk\nFacsTisG4E5omIaRCJW3jzEGSHub+TX49QSmLy18L6YNQYASXHwavE7cMd+C\nU6UfyU49sISIwVowFwquzIrvyNWt5IDL34Ki/b1Hobuhp6m06hBMVKNgx2dY\nhUlRDsWBZOHtMfsKuuOhfs7gVXQFwIKDnKMkBu5daYmzoJ+ly9UYBwwfeyUT\nWc/HP20Tr+VeDrFyTy2NabOocCZMpQiI8z7arHBzMjMTyzrLsoI0pZ7hRxip\nN8pA/ZX4jobow3WKnrzsCGi3hFyi+S6fMlQIkVJjoNqmLwP9bUX7DqU5Uil1\neFzyWJ9wysGLn5c6C79/dx5LRdEMvey32+KD2f3NcqahCkDt3ZEl4ilN0+cZ\n7V2hJP9S1dPetBly2hgomT05tnM0nusE1SMM1HmU2ICGMpo9gPIzyUJXY4fW\nmZeA\r\n=2ha9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3c56726d29c175b559126ef8f5bbc3ebbe6e611a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.61","@balena/jellyfish-sync":"^5.2.77","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.32","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.55"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.137_1618174346502_0.6432385931716733","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.138-renovate-non-major-44a35641d4c2a99af425f78be0d22d0dec367f93":{"name":"@balena/jellyfish-test-harness","version":"1.1.138-renovate-non-major-44a35641d4c2a99af425f78be0d22d0dec367f93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.138-renovate-non-major-44a35641d4c2a99af425f78be0d22d0dec367f93","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e09e30721b6a709c7a2513a35d43886386784bfc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.138-renovate-non-major-44a35641d4c2a99af425f78be0d22d0dec367f93.tgz","fileCount":17,"integrity":"sha512-hhGTznilpe514EDsN2TgH2IfKhlUPnJ1LT4c4ee353N32iBwOpEIWq7fSKE7eznbKOG2pxk3eGEU7fL0C0lDjg==","signatures":[{"sig":"MEUCIQCSOXY4VBAx3A1eP2SFPAs4p0EXg4qjOYL4yz+1WtYiTAIgLpQI5uWlsl9cjx3wAslV96RRbg0INQNgONLCAm6wN2A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50953,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc22OCRA9TVsSAnZWagAA96gQAJN/a2Kjp5zhQUMOoVXN\na7vGFIIORafvrEDcQtBpewlcaaIM9VjeNJRW8DOtZnHYseC8eOnVxMqeHaB5\nPNA18pkB4Iws5AITcOa/CA8GGgeaIIXg/pgKNM1M2Yl/D0fOA6ZRlBZ//8kH\nyOqK2XIFNtUsqVHIK0q8+U80OKycwgoG1bW2sA16/S4cVt+YaVpwQ6Nw6fX3\nFyWq1hdHAMsJycHKfV8+eQnaZjdqlCyOK9SvhrZo+b1vNhBTRCx8zhz6nrjz\nUDEwKOr6Sp8CEkWcdK0OV1Df79azmSnCT76oyRn8njpHzn4anWBICq0dZZSQ\nY+qzZrure2yKWXZaiGC6dfwPgHw9r/lTXggf0/wLzTJNsoC/Kvj/aJDXIBZM\nXOqRgf2HvQEK7RECWMZy+8qf8MXaV3FDuR/xYraVkQHzk645L5xCZp335BQL\nAnP3TMbTzdW/yI4anzXNw0hdp6P+LIdmEATKAfvpQ2I/fRHeePKlPCErXQIO\nefdCpLKwxsI3S8Vu2JBpThXsdRnPi2gWFBMSMyq1jKza8onhrZ6VQkvV3Dr0\n6nj0NpDCbkjl+RsqcDJGVamxdl9r6wrpxGefqcdTpg0rq+Q293do4V0IGpU8\nfvzs/z/GrtGoYyhVnClMasNVLHaIjRgyK3hSBEkqWK2R2F0QGpUfcIHB+OD7\n3KD3\r\n=6nLq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"44a35641d4c2a99af425f78be0d22d0dec367f93","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.61","@balena/jellyfish-sync":"^5.2.77","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.33","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.55"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.138-renovate-non-major-44a35641d4c2a99af425f78be0d22d0dec367f93_1618177421488_0.22097128972132563","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.138":{"name":"@balena/jellyfish-test-harness","version":"1.1.138","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.138","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c79d583c32b50dd1b82716017eb8592dbbd52a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.138.tgz","fileCount":17,"integrity":"sha512-Vte3ZHf0hqqDs0GMcldWe/lsEXOzKciE22lbJvtVxBBWAXGabaqhcX1HavIUzHZTS1ArWHz+urDQ4niKA4uUzg==","signatures":[{"sig":"MEQCIH7ojxYxU6IujAtQ3KEwwCjIA8y4RZn4bfJXm4zzie/fAiAVFOtqW2TI2AJg/H7ztcIIvbdwycTvhyj6SN3qVesb0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50893,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc29mCRA9TVsSAnZWagAAi8kP/2VRFNbB9wljwGNkg56q\nH87t7ndyIwhhUrJOfYKKjBYfOD6TM9jRmHgJgTqZLSz+0PKe5qoCknKwvrgi\n6r15W5qKtj/6h5k+ocUkuqeYx5qAFloTfj2yM/Pf+8VqZ55KFuPPrJPAczaa\nh/Jg7chhVMJQvYnFr7dVn4sLq5wm/2Fi8kZInumPLAvSRD61lhLcy0VUW+k7\nSbQ8Snc8d8RvS115FwMbvCf/9cLkqThJOLMD6szucQvL3+l89zdVBTG5Uxle\nEfmYqdg0wmK+t0Qwbuv5TNpydgYzYpNnwZHDPxZEcNhdVpiZjk52sYTIPxhM\n2djBHr0euhSpqy1Pno0JOoDeaIE2cum+V1/GYychd4W6tiWHsmNxGqs7n30e\nayum7C6Z1vGI1h8fUibWjkgZChAlRM8BllR1bK4xcgPCPQinhbj60TjzIh4r\nEu+QIIk9hWOSa+V9K0tRTlebF1fnKwaxsOprCtaQ8mKB2s42/OJi1ENMFope\nlIVZBKVlLIxfCswrIqRXiqe9sGKZnCI2T3r2b4VkTjOxI5UvB8Vk2d/EZozS\nEb32L1NZ7Bke2/PK9AFEaR3+3uVuD69SkOzzSGRwB07idK1TEPsyf2zW42AR\nMeMP0/EchAdEpiD8LwgXVDdWrJBYBYYjnU2cII1HkkUXuhFzY+Ls8tTIxBu0\nTEWm\r\n=ORQ0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4e15d1743b6bbcbda85f510867cb02005ecc4dc5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.61","@balena/jellyfish-sync":"^5.2.77","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.33","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.55"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.138_1618177894410_0.2357409621982023","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.139-renovate-non-major-16b994465bae38fb2932caac2f3604c9260f849a":{"name":"@balena/jellyfish-test-harness","version":"1.1.139-renovate-non-major-16b994465bae38fb2932caac2f3604c9260f849a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.139-renovate-non-major-16b994465bae38fb2932caac2f3604c9260f849a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5723efa404a4b76f68e6eb3979b4ff9dd0d83b7f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.139-renovate-non-major-16b994465bae38fb2932caac2f3604c9260f849a.tgz","fileCount":17,"integrity":"sha512-BVP/kGDuQ+ymm23HzQt29HRjGQup7Yd550hl5lRdiqI+m5f1WeLtUmy+DdUEwQ/R4Mr2gNoUqnyT1q+mvqUJ0Q==","signatures":[{"sig":"MEYCIQDeEX0cSXEm50g/UkxYeojeZ6z1UUXHHPv3TLbFjwzbbAIhAPmhtzam9CZ+tvW0lVhSTQTxEf7fcepZsc93YQPJ+r57","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51023,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc6HZCRA9TVsSAnZWagAAxhkP/RUMq0UmCd2ViBpZgO2L\nR/k2XqrJgTna8ERruvlTpRfjNEcKSYPKAvN1j6vOj2UgSG3uQxgDtd4YiB96\nFnU3HWFavJsGQv3P27yRHvpgumWb/WH407yAkqe5gtQxUUPtWAdaTW5dZOXu\n946UniQOPCyo66FVWwopL56jgPEsSDbg+otoYwHIJ6/8mIIVKldfPu8SRj/Q\nSHEpsOBIr6/w7UqgOyLAyPwaPveDjneLywiSwMPvyN0iKjwd8nIb/xwCyyC0\nMN4qF2DUKJkXUAt7VccdRoBO4+oW/Sc8Vxu/3W0JmPJw1Ices1gmJshm6GL4\n2EF0pNRHX996dBbxaLN26P+NCij/nTVAfdxL7BjcVoz3IyBRXBGR8fJ7RQvd\nbSChPz01vp4gihS6JmNzHUQ/4A4SzpQGrf1BzX/1fUl/+Y11A7yU4GSG9I9M\n79vsMl+geCWqnSaHbOkmbo5k6A77CCg2X47E96rrZmNqOq40QavrUF2ztX7S\nfYLyHZmEtfJo9dg6nb83eGxhejA4RxjGSPxV4wO9BA1kmgR0zVHkQTtXhw9f\nGaQU5bM341wkJUBKIZrce9yzSfzQz04aeSaYbXedXjHwK1leQAvpI22yQb78\nAoOI/jBShtBH2QJC3Unz2GhvkHNYTKAY5CkWZau2QMpinsZPbyuGFQ9OuhEA\naB+c\r\n=EUIk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"16b994465bae38fb2932caac2f3604c9260f849a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.61","@balena/jellyfish-sync":"^5.2.78","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.526","@balena/jellyfish-worker":"^4.0.34","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.139-renovate-non-major-16b994465bae38fb2932caac2f3604c9260f849a_1618190808626_0.8851650613002331","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.139-renovate-non-major-a04bfd34c11e282e8a078fddee54988043933eae":{"name":"@balena/jellyfish-test-harness","version":"1.1.139-renovate-non-major-a04bfd34c11e282e8a078fddee54988043933eae","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.139-renovate-non-major-a04bfd34c11e282e8a078fddee54988043933eae","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"51a2c5306e5f778c6c7be19f6777e7f2f1a57d03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.139-renovate-non-major-a04bfd34c11e282e8a078fddee54988043933eae.tgz","fileCount":17,"integrity":"sha512-2US3Lc66w1qgWa+vLAs6tl6R5dpGTCnx6s3r6IxVJt0j6urFZnsu2BoR1OQtFnqVTuokbLSTlcSTyrg1xK90Mg==","signatures":[{"sig":"MEUCIAU0uMxl4TiEnjFn29D8Pxqh8tzfBH9OstZzzR3XMpGlAiEAlylzT12RPJyIvV3V6c8yJ+0e5WbyT5sRDFNyC/XbNME=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51023,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc6OMCRA9TVsSAnZWagAADcgQAINzlDpMuZvwdGXIu9fm\nH/App3A/0Nq/UwKWIH6MtxCnBw9Um8cz0S4XCq9y5YVOsmN519hzUh1Vb8o9\nQJ/UEcb0dJiGoUIddNpGrXBWneLzixKwz0ql9xt6dBpvYIUfCUddsmijG+aj\nzhPI948xG0KbKHtxuXXGU895+W86t/FQXTm+SG/NelDPQQUdoIOu/Z8mIjHJ\nKshMfQINn/ijtbby+2HDD2R4XnmfvpI43zruEW2PI23Ney3Q7yHRfhcQksGO\n4bO9OpIRWj8XswO8gxILBOwYaOZH4yvgVl8F+VfysmeoWo/jw0aAFb2TYmL4\nPbfJJGTh5014ZOesfkr1KPrRt5F1XmxNVF2SfAHtnWZ7Sw43DMlSZH+aCLBg\nMvXiGAs1X0V039QsuHABvi0fnS32blPeKtR0TiYdDMtnldXLXI38hOLNnq1w\nQeGOxBEEhskgiHuiabVJGWl789pJT4oWoVzPDtgxp3JKeT2nXMVZzYxobDzC\nZ+9LezpvXka7Z4pMdik4/9AEzGjsymslFBkdrE/wr2amWME25FzY2xxgl7Bd\nypx/XYvgEWx22NOx5ZyMllQPyhOwzIDHfowF2j4GmgdHAFJDFqVpU07EXpJE\n9gtVJcgUIAc49KCPVZZkqyDXHcyeGPhFRuaRRj/j22tmU5P/Wp7EtFxGOI3o\nxveh\r\n=NR/u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a04bfd34c11e282e8a078fddee54988043933eae","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.61","@balena/jellyfish-sync":"^5.2.78","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.527","@balena/jellyfish-worker":"^4.0.36","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.139-renovate-non-major-a04bfd34c11e282e8a078fddee54988043933eae_1618191243959_0.7626556133713343","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.139-renovate-non-major-27ce6a20f5424764e425cbb4029a5ce32fba8f03":{"name":"@balena/jellyfish-test-harness","version":"1.1.139-renovate-non-major-27ce6a20f5424764e425cbb4029a5ce32fba8f03","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.139-renovate-non-major-27ce6a20f5424764e425cbb4029a5ce32fba8f03","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f4106b131cb7f08f016bc95d0687ebe5cd1e6284","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.139-renovate-non-major-27ce6a20f5424764e425cbb4029a5ce32fba8f03.tgz","fileCount":17,"integrity":"sha512-AVKHJdgczQDeIEmQ9FaDjjK31edYhEDZFsafzxEbFyAoUWB+Ggxt+Uz40noS/DuwMfs7mbbc5iMRFfWWf/Ea+Q==","signatures":[{"sig":"MEUCIQCwxN80K9T1q2/xR5mT/e+SvlvBu/Tyei9KeIK+VxjJfwIgad6qluFM+DZJdwcUlLCOk2tDlRjazC5NDfwjCTmd8Cw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51023,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc6TcCRA9TVsSAnZWagAAyqkP/3pkLx97Di150HPA9LX+\n2C70lOSUUGW1BEdI4faBIKJrY9IAO5lujvNbriD3HOc5AGmcgP7Am2AjuupU\ntZAQ6KRRL+Cs6KFydeiFcFkO1zgWWGhmaYG/es50CG5wRFzNtP4K1j/FqSwR\nbxoZvKjJhmiuqSMP98HBlXT8GHrn35XVUV6bKQxZzWvG+x8232YnzKkI+eY+\nzRLrwBxuSJ26yhi0Cp86aXk8T6H0jlfOyVo+kcZ3wg8/+M3dKVkLW+9zaAMi\nD8H/EjJObUwBFGz1uYtq3+Jwdc9DGXzSwhGWq9TZWB2QCV+aXIe3pfN8GkIG\nQC3HRp8fzB3SgI4d677pxM7OyYPdshOrWh3h6L5hU1MjinarrtVV/4i6Tj2U\nWvkEGnpKoAstSjWqap9JmmKHr4a0whK3tnlgu7WliJtiVAm/UCJQKlUUa5+d\nfhxxOe6GweSTiieD6Y4hkEq43K+PX9Xj39rX85kTQSYa4IP/OzBzamNW7MwL\n+My+287BeBpz1SnJ3rE+XHs8QK4eZYaND5wEZ/yBnDsUX3Srph9BsozRVXYj\ngNP5/BUB6zHc6wqYaX8HMwDGPn5eLvkI7IeJqNgm2nlnettXMpzPe+B2gUmc\nX1MaBpGiMMmMbWlGO/sgInVfM33VS1/HiY8OJYEfcUcgaNwUg/n1iKm4XuZc\nfP3Q\r\n=Ld0/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"27ce6a20f5424764e425cbb4029a5ce32fba8f03","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.62","@balena/jellyfish-sync":"^5.2.78","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.527","@balena/jellyfish-worker":"^4.0.36","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.139-renovate-non-major-27ce6a20f5424764e425cbb4029a5ce32fba8f03_1618191579238_0.20363721293973436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.139":{"name":"@balena/jellyfish-test-harness","version":"1.1.139","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.139","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96a002663cdfd22fd9f95ffbdba0900b6a21cda4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.139.tgz","fileCount":17,"integrity":"sha512-w25zS+ZSq7tmGZTD2+IhTYwzpg+GUwTpt2ZVmtjC0xqcU3AqW8IDURv91+Of84b85k0MXlD01dYzfSUaZ+wmXQ==","signatures":[{"sig":"MEUCIQCXR2lLFln5aweutYu0IfFIYhS8lpvC+8nJoH9KjxMCUAIgKboyed8Zgv0tPmNJ56OMwsXzbqBdLgs3D2hOtyeQvEc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":50963,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc6WoCRA9TVsSAnZWagAAHZEQAJ6qfKHatCoSn98ZTV34\n17FwypBv+ZxTh6Zym3FmNiNxwnswZ5zMifC4swaNWllQTTUvRBDkLuvFFmXq\npBSanB9TdGsiE/SB1VaBTbwMwvyrFeLHrWsiHbBYWgkRPaJEMZYvenV6CEhd\nNyMLW4RLhiLClgd+s7VoU9zPHqTsfWXmDZrodvQQ1vwXrN2UIXp6z6XoXv8L\n40q5tkfMJ/mXqeS5ISv8fs45A/czgr3LQre7tdkguW8EzCfu/7puoh0899As\n5DWrnMP45uE2Q5SnWWlS6T2DouFxhmbTWyeXcy67/0fZcucNGvVM6Z1fhNII\nkQEdIetcDNlv7g5Sa/9S2mk37o+YyR6GMJtjXN2xfMkdxUv6jlyCK2ecBdCT\nWAJoDxqV093hN34TQ9TvDYVmbJcn+1UZ4k/bZwdDREo/YSK36MXostGaj/VN\n/4088aI+qWt/Jgdsn1qBmMeUHKqtGK7zwfUWWLCmblfDj5us2EXQyjXrq5Gf\nfYA8HghaU66NmJhsnFpzAC0GHKvWjH0WFDr41iKzVeWa+/7ZOuPHg69uO637\nAcVWABmZO7mIHa9kUeGBhrlkvF2LUrxls2MysuMDF2+FDZzkUCkI3/vXHJRL\nc2AW7GhFpvcRJSc0Qan7+RaoP7cPThR6NxaVdEInBFjjdG8Mfci2RgpRmGFP\n6KYA\r\n=nH82\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ac65b581a5a447f98f5dbb0e7c3f766ca3b1752","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.62","@balena/jellyfish-sync":"^5.2.78","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.527","@balena/jellyfish-worker":"^4.0.36","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.56"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.139_1618191784307_0.45346762818912256","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.140-renovate-non-major-ab8b57046309e38c8b51b5e71b5af29fd97f54b8":{"name":"@balena/jellyfish-test-harness","version":"1.1.140-renovate-non-major-ab8b57046309e38c8b51b5e71b5af29fd97f54b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.140-renovate-non-major-ab8b57046309e38c8b51b5e71b5af29fd97f54b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c915c387b7df454be8cd7965d5c2661b582d098","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.140-renovate-non-major-ab8b57046309e38c8b51b5e71b5af29fd97f54b8.tgz","fileCount":17,"integrity":"sha512-WJyMeeSxJ16uIXS552CCxT35x/GF45x4inM347Vd//g2GvYjQ0ShjCp61dCr6SELwvupsbXA6bgIOqeqTnzd4Q==","signatures":[{"sig":"MEYCIQCwIuTuRxJXF1uadB3zv7/GTW9EuDAAssB+aFSDtefnnQIhAN9Cdht9RW5muYDLcCUufsVxn+huehuikv6PaAoRR8Mt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc9bOCRA9TVsSAnZWagAAW44P+wYinGn1fmApFVaD+rac\nfGr2TjafJ2fBTnM9JHqYF8tXANiY28sW8fp5rDIVBUMYAAh5AGvGh4+tk50L\n6NRXY7ilBbbpfMHBYFl57RrEex242EvLubcgVVy78tKzW+DqStFVgWPCof0/\nLl4xE2C+E2D4qsLzcen1MVzBmhx+qnTxJNkLViybDzDYwZLdeYyd32vhAgvB\n9KjDUozGleFQo11yqfVQLLw7vvx6XFEYDtE0Ooyk60i8iip2RCdfl/o4vJar\ndjzj0maaoMQqc+hDfda90Q83McqFDZZ0FqNWRvnngeNM+dugebG0AMXCoeTZ\nFizIjmNMJzP4xdBMZARUGaqsQpjbS+KfUfty6Oq4nyG+gmVCffJJCYF92YDJ\n5qxM4Qz8K+AfNt9d9WZySiauww3fQnjqf6zpCsnzHQmEp3BPFwvm8fVyJTxY\nWOuZPmv8KZCu6woD78YVm9/bYCOEqr1RFTL2Z1iydN5MghrAsGAyRjcsPaYg\nY48JzB9K4pa8jYjh9e6aO2fdoa/I+ZpIP+9Sj0IYiLlXqzB4O11hnY/Eidl/\nG+sPTpIG+tYXF+h3orVLRfvG5WBFPaJ5svu1S6zNb7UAgBhpaOrmx06znwfo\nmzeJdSCMoN8Ni7eqDJi1thtQYlcjNtpIlI0bZhJHxmLo+F/fM+gwOHd0wwY2\nFm+c\r\n=uxrT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab8b57046309e38c8b51b5e71b5af29fd97f54b8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.79","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.528","@balena/jellyfish-worker":"^4.0.37","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.57"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.140-renovate-non-major-ab8b57046309e38c8b51b5e71b5af29fd97f54b8_1618204366448_0.6314483394858519","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.140":{"name":"@balena/jellyfish-test-harness","version":"1.1.140","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.140","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7c094b01763609ea067ffcf7777aaae120621d46","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.140.tgz","fileCount":17,"integrity":"sha512-V79XchpaWnYS0Ui71UPA0lEOVtjSwTJ6ojSfInW2e1mzevRAN6DRGeaKRi/bRwXVzlF+aJFRYyn6y3uZy3NDnw==","signatures":[{"sig":"MEYCIQCnjcN8RNWJMNQQzhHL51XK1+1ZCwUjmFE7LFpoQTfkwQIhALK9ICJiVzmaZ4VHUSF2gPDEE27tcCCqs+wuhGTprupO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51033,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc9eNCRA9TVsSAnZWagAA6FgP/RQq7so/kepJ7yW2RWN+\nxqWfA6W/T3qyy+Lk+8m12JC0IT26yh3ijQbwKVhId879HVW9Wz2pWWj0X8TD\noFVSvGc+7hOqUj8yzg5YlsrjbqenWu9Q+RgAyQtKVlSxeCqx9Nny9g4mrPHM\nfTHNM5O42tg4rZOidCt4r+bmydvS0H7KaUXVIdRTWckxz/eKl4RjHzCJmvwY\nnIjmzguwBaEVzfDbYmsY0g2umeM1C37X8Ub6kCTYOniHhJ5foSvUW/kb0AFW\nW2oWbVF/JHffRSCGUemNkSsm4cBTqihsF0w4/U09N7xqavi5bkiI88OTD54n\nr1QetfU5eBFAo+19znG0RB6qwzFzOeC8yrUWFhguUQJ5JznAaeQQaWekUK7j\ntuzuBIEuhnEuuIC5wo/ma3Wao2rM78m0h05NjIfHm0685G2Ns0lrD6+HBUHN\nn28F3nFtmdgBJ+f3CLKeEyRCn1hrSfnu5IYyQ/I0N1TmoZumlglGeSiHBfen\njX2JZk8y+01NfG3M+2Iqtc2VdA6PuIENZ6pLUrVxGnSzmeXwgT2rdrPZsT9y\nCmfpYNh42dOU6Y4mg+dyAPINhzMQeQY3XTe5xar7dHyrJHIyG3M+Syp+0l9U\neYiePVSu1BNKI3rTnq3bybLp7XRDHCrrskbUROh7kc3ylqi7B+GZ7o0UgkCS\n7l2p\r\n=EofB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4e0eddcf27c6383e3682823f565d863191e62892","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.79","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.528","@balena/jellyfish-worker":"^4.0.37","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.57"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.140_1618204556966_0.17810981328482556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.141-renovate-non-major-7889e389d273d71d31b4313dd989cc88b0cbb466":{"name":"@balena/jellyfish-test-harness","version":"1.1.141-renovate-non-major-7889e389d273d71d31b4313dd989cc88b0cbb466","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.141-renovate-non-major-7889e389d273d71d31b4313dd989cc88b0cbb466","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc05577c45e1fe9c46630228e3089304dd8e006c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.141-renovate-non-major-7889e389d273d71d31b4313dd989cc88b0cbb466.tgz","fileCount":17,"integrity":"sha512-1E3nivhhKKNawPdlodx95FrKjfV9hSo2AGp64XY1sLxdUEpL8JBMH60vppWNWejJl6IavPMrglMi2j9np4rjVg==","signatures":[{"sig":"MEYCIQC16yq2riz+x/vpflWYjvPdlMqfKQYO2nYXiSGdSHGAxQIhALdZ/GlwEtrNqAJf3SVomTGvIwT29LE/vfJT5xuTplO3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc9jxCRA9TVsSAnZWagAA4cUQAIoLKvWlR/InrmRnP2qP\nsUtklJMbmqwjgsPe9Xys4AEx71KNlERA9Ac1ETIzREaeAKj454nESb0oRvmz\nNNBVsC/C1nZFizFTkDJeSIQP3VCTj+VZSG3DG1Khrp8RMQGYQGzwvzEBAM+l\nsHx8oRUhn8PeQhyc8jmzh0cHPhtXKocoFKAiFbB8sp6FH0afS4L25wpY00cF\nY1wfqpAkZb5qvEC2XlQk4jrtYBb93xKj/g/QFpbhwICrWZBTcPqs9BvkmX6t\nZ+aV/24DIPvBUWOgDz5Mhsc/QQ2FtGgmxqd/YiC1RvNa3rUDol/+6UWbiQJt\nxZHqC4NEYKnmrNQlzp1DJcncELZdbTHJr4vQFOVYq3sKaOq+axDQNGWTJ0hh\nHFm8kmRjOGZorzCj/pSlIbOxs9mIQ8aEgdRqK5LaaqfRiKG0Kw7eAZUENPHf\nwARKMSzCOcbmlX/S3Ib5vg1nAKYMEFaz2UqXG0XKr68kJ5l2ELfSmr1uk853\nlmyPvxTx82Ln4IeJYYWJkUFF1HkgTYF41tKPMyV1Lh5l8LaNZ9+2emf/26jG\nK3LMwygbd2sKBvS7tumKkj8wQakJz2tvX+RSEpyohOlekAzHXWNArptzFQAw\nBV6/IPq2JRCShbJjhTtAs6aP3zek74C8b2QPi3i7gLGGwGZGrAO2fkeO26ag\nFEmc\r\n=DoMG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7889e389d273d71d31b4313dd989cc88b0cbb466","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.79","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.528","@balena/jellyfish-worker":"^4.0.37","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.141-renovate-non-major-7889e389d273d71d31b4313dd989cc88b0cbb466_1618204913391_0.018146974801962923","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.141":{"name":"@balena/jellyfish-test-harness","version":"1.1.141","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.141","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"53526a317dc9d8e63dfc77761ed1bbd368f1878c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.141.tgz","fileCount":17,"integrity":"sha512-CzpSB5PHJXtDJGYMGR4tXZCaTQxhify38Wg0kCCBulG5JuOWs2HYO7JkBsWT4ZgrrBZ/O07gBUuj1giP/JYFzg==","signatures":[{"sig":"MEUCIQDvWuH3Slx2e9N4tRnm8Nwb2jhirqLG/p0udVvQ2xTTvwIgWAamPtcUCDr4YtPl3wmf3cxcxThRMD60Rp53C7UrvR0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc9neCRA9TVsSAnZWagAAA0kQAIWTdXFEhNCRlcJG9lw8\n6mfCI55X1nIN9ZB6LYReoJJP0cmBZ9tlQjO7uZPt6MsyAA2GSJMkViE2Lj3/\nyNfy3E9YDTYp0/cOBo/AlukP80/BN9Xef+ex9pVQWkUDH/ZFVlAq5RUl39I4\nINo8SnOR5lm62Stuzo1R2O8CtQvpeci/PK2RYgOwwXYFSlMrukBCSgfSnd1B\nIGPqsE60POzpZLzmknygSlwgYjzp1Zgepo+0fhlVJeGampPT4V2DtYi8a5wv\nx74Ngubw/pIfoKljXoYByYcFGhkD5DbjhCPXE6lTuiOnEIkSVbnNvAzrBiiR\nC8xe+2hiyHx6RYjO6ESWZoM+qRSXtsuv29sAh3+43dea11ChlWCcovqyYSwa\n7NvbcHb/A56NpieNFRawoOn3W4JHRJw/VieJpm4PKnjggT6RtEjsJAeg1H6i\nqQKYBHK4Za247Wk3nLzMgi817RXdgY6L3RHwzBhyDPmTFRulANnPeKxNdhy7\nWFrzJwd16DHgRf3p++fT3LNA76e0UkT9dUqmBSkfNRit+4XR4AGHNZvAhRyG\nPA1/NtQq+RzMbduqiovRQkZdK9PCwH51qpMnbvd0Nt2ttvQqqLF+SNfsD43J\ntqeq//EhHca3Yv1oZ9Gtrr8WOEUp07viirtus7H3Rf8NKaNZiZnDCNq9uMew\nrpj7\r\n=enuI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0eccc40ccf5e1515d1dd4e0c749c114c0375a0c6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.79","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.528","@balena/jellyfish-worker":"^4.0.37","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.141_1618205150082_0.03584044809016751","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.142-replace-jellyfish-uuid-3c6ef623aa54e5ecb805d861f85792fee08f7d65":{"name":"@balena/jellyfish-test-harness","version":"1.1.142-replace-jellyfish-uuid-3c6ef623aa54e5ecb805d861f85792fee08f7d65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.142-replace-jellyfish-uuid-3c6ef623aa54e5ecb805d861f85792fee08f7d65","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d9fccc4febcda4f251ed1323d6a7f916a4cff88","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.142-replace-jellyfish-uuid-3c6ef623aa54e5ecb805d861f85792fee08f7d65.tgz","fileCount":17,"integrity":"sha512-rzFZJ6L5RHTnnmuxAXFU3SYOKUrQkorvr4kFpFqzYo3Wr+fsgJeC4ZnjDt3MHX9l7FZK7hRnJVNI2CuJ+lVtIw==","signatures":[{"sig":"MEUCIQDeNod4VzUncGe6aojH0EcYw9MYh5LjxeOUxmtmonhBeAIgeGy5cVkdbZ2wmTiTcg+Fl/qWUcR0qTiWlvSiORGzJqc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgc/r9CRA9TVsSAnZWagAABCwP/1uFJNPnbhi1al2FJloI\n0K+4yGqdzHBq7WMTencNnqvk9zm1aoW9ZJbBWbgmm71K6oAmW14aYBeCvY3S\ngDP4QaIngaZ71Wfi5YzZOcLkEbKzp8+mrdzcWZFBF/NHVRJ+vsJ0QSzue6fk\ncUl12VZMQYjhsjtBDEE0ltuKMRUkaNGZ3oMu++8FTXL6Tc4ZWu5NLitFJdK0\nnQJf5Ju05ujoNjrPrwvMPvlEGinbIxz5q8xWyBqWrdoKEhISpoIpNz1Mcw+H\nAOlQIlFNCd2kfcKU+wdjQvr0yA6yNQVRMDTf/QTooUU2xCjDwKR/BXrDUOeb\naFO+H64VV5vak1L6nB2evF68P2hmQ4M+eGlTFKv0j8vv6d76TnL1Zrd4oiMG\noys+8lc0Rkpl915bxgIl8sOPk6fR7swXYERvgdNEzRkofKni6whoELpp1HQb\ni1594WhPc7BonAvwiGYK+HYcvC8Cy50CdSbBAF/5fC9dsA/TYWkgnqp5JsSS\nStHDDNXQeoWxizL5d6d50Q55jteTAbSRE9XlsL2x6pC292UaeUCHfeM1eoIw\nccR2gYQsGSHnb5+ynlj51fSQg+oywJU32b7C1wEYooRBjm6mG5YzzT1RB4ZL\njGGMYPQEAsJW0ptyT3BOHzVaLH9L+QxKltCjEdE1SX4eCpi/dwAZ8U4g67Q4\n4YrY\r\n=y/YN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3c6ef623aa54e5ecb805d861f85792fee08f7d65","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.79","@balena/jellyfish-queue":"0.0.528","@balena/jellyfish-worker":"^4.0.37","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.142-replace-jellyfish-uuid-3c6ef623aa54e5ecb805d861f85792fee08f7d65_1618213628975_0.5047456040598286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.142-renovate-non-major-e72f21783a9c663aa37297da9dc8b331209423ca":{"name":"@balena/jellyfish-test-harness","version":"1.1.142-renovate-non-major-e72f21783a9c663aa37297da9dc8b331209423ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.142-renovate-non-major-e72f21783a9c663aa37297da9dc8b331209423ca","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"58bb27cab9c80e23efd6f43759f9c42c5d1481aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.142-renovate-non-major-e72f21783a9c663aa37297da9dc8b331209423ca.tgz","fileCount":17,"integrity":"sha512-Gth/YCfLPt50N34RelRDVifa9rX5eEr+0sXT3n/1CMKlh2wLbi10mHI4lkkEQ8JmPmUilR047+OSmKrZl6HnUg==","signatures":[{"sig":"MEQCIA50ljsJydcJNWd+CTtFjnMxMMuNsBtuNxH3LboQ3PkyAiAbh4/vaUxIqo+W0qsbw4svORqNdbACWweHPzg46w7tRQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51275,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdAtWCRA9TVsSAnZWagAAfK4P/2P0V2XluRARJgLfBZod\neGyT8AYpRUD/5e7L5fDkHRzVTlbCSClIhpjQAw86aCmDOsANrye2tQbut+12\nGUPZkyhjZK3EeFJjTmEEewSYEHYVftC8iGVHgWoNQ1pQPnfqGY9HKKEn567H\nv3Ux52b8L50QKCrDy7sSNLxEp3tLRKoeyLKivnAUlfIYUxII+umi1TcLPBcn\nDL5BLJ0runKtZ2TO37AZMpcExUQw/72rB5XOrT0VjVRL8PxATGGV2Cnh5BCI\nEGHBlyQXKA2IpvyHZv90iu5j1CBkxjrru1+jgVnWpi+yIexlK29YxYmf/xO7\nxZouFvq8GClhsbyFL9nbuHFdPeJRt/f7chLbt3UYgAbc2YLUgSL9HG12AU3B\nFb58rMEC+sc5YUm6OMOleimnvzrHuwnQnYG3toN/wY7/8lEp5UBqK9stJTV8\ndoqsRtACifyIaWzOUfGcjwuX/rlQ/vSlXyTAGlDTeBZrivMU5kftLn/mHtka\nUOcrjjwLRnnM4wvf+jXsBBKIv/NlzyjLUkXZXfWSolgL71D240uGFbJv+K6G\nJ6P4PJmtN8Bphalv5FKSOk0Zg6/bCL3zSLI5OWgzRM8l1SGQV7+w21IgUBbz\nGUB/J5UWbRUKelaEc7wfcTmrQP75ExDMbH9IDixS8AQkTZ8328TEQaoNodXJ\n1Scb\r\n=4ou5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e72f21783a9c663aa37297da9dc8b331209423ca","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.80","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.529","@balena/jellyfish-worker":"^4.0.38","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.142-renovate-non-major-e72f21783a9c663aa37297da9dc8b331209423ca_1618217813527_0.3989126819300961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.142":{"name":"@balena/jellyfish-test-harness","version":"1.1.142","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.142","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33d18c4f7bb484caa72b8da6665bceda596670ff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.142.tgz","fileCount":17,"integrity":"sha512-adz/65cbgdW0GPhxaoYiti66mvAgRDrPh9BsvDUubgSL1EHFiYgk6RVyOJcaV1b7ETSVJr7OYAj7VWMZ/zftLw==","signatures":[{"sig":"MEQCIF5HoNp4B08pHY6v/BYp5oRJBpEIUobNzLUkxpKu9VrpAiAMkGaOTXeg4kQzURT4CPNq5XyC0WBy1yV+uUNERVkevQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdAwwCRA9TVsSAnZWagAARIwP/26Tm+Dpw0QalZ9ShvI3\n6NDBdxcgqNahTvPy0zYUMdeKxWg7UIeUEOlCoUzIxYr7GhpB7g2mAcaczJBo\neoIOJsHaK5rFuBWe2URGb5Bf0VFGcS1JcyOX/y7JJ/McECIPnr3H0siBgPR1\nh3MvIcyH5ypKkG4OQjUv8/bjYc3TPSj70oYRTWHq/K724gMTam39CElDe1O2\ncnn5AP5lrWgwLtIQwFrLRmmdXpNNtnSPgWslC1LNxImY1kpkYX6e//ueMLId\nElEIZXloO9hcXrc2tBKUeNi7bSwsBnBWSOCX0ZtVShbqvDkKt+LcxAVnFN8q\n1mQav8gmg7KM/RM3H5Cwur/zFEMnX75Kh8kFyEtbv6TC3HhCuRY5jOTlcOtZ\nbpflvIXQqhaaw74SaeT4lEx9wJq0YXmL0s+506ppVamjuQVLMPBtXeGlIFQp\nyQR9vgVtXT8gkoyaRG/bgMFa9DwZKrClWuXJzEM29jHBDy3yh3yl0qTemsnw\nCF9VKrRjF+1cmwuwZOLv2JcTreCD48N48SFAJhcPlH0KtY5BvU3PxC+eyXbY\nydes9/HHwimsRTFwhPRw6cX0LJnv6OpQNGBxWCTSNKMlZ6cqR411eJYyeuR7\nm7Ta5KJ1UWZWBf94tpQ99kLEwNYqjytMEjS8BfZYjVUkBaWZb8Ipl/Iizooh\nS0z+\r\n=AbIc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"01b220bca5ef0e8335ac4f1c5974c7790a6e0908","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.80","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.529","@balena/jellyfish-worker":"^4.0.38","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.142_1618218032304_0.9513320182217977","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.143-renovate-non-major-ced34e4a93e3a123962cc6b106fb67f83be50e17":{"name":"@balena/jellyfish-test-harness","version":"1.1.143-renovate-non-major-ced34e4a93e3a123962cc6b106fb67f83be50e17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.143-renovate-non-major-ced34e4a93e3a123962cc6b106fb67f83be50e17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6c3b62e48e7557b6037a3536e76861aa5321d65b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.143-renovate-non-major-ced34e4a93e3a123962cc6b106fb67f83be50e17.tgz","fileCount":17,"integrity":"sha512-Xh0BVT6Qqyx9tiIYZwPkQFIucW0HLp1wgP6U65GeDeqTE0I/GcDfjQJ5sc6StYimyo3K9eQyrH6G/qOWjvseOQ==","signatures":[{"sig":"MEQCIFPVn2bgamZ9LuopWFM9p//63nCrRPcXl9eKj++VroMBAiBviWWQw3y1PeL+UnReL06v2I+3Txt9Be6UeM2QDaCFXg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdBm3CRA9TVsSAnZWagAANC4P/RXrkm1oq2skBsrzg1Ev\nSk7/yz19jmo5aq557vV0OxnmIAJ6g+aJhrLmRh4fdZcw2qGMwN5pX7d3L71G\n/HqHP/R41KYuPkIWGxqt6L6Ia/QJSeNKKf8EnzutJ22IB4OAioaFYD8r/68S\nw5xPsoEg1/9cficZuhVbj6XxQVYX6igdbHAN5ju9FvtFpVK4lbZlTspP2Qiu\nSDIE2+N5rCDiMrA0j/AZoGvZf971NHMAAODVGwVtq5uSG15SB4j/NcHoud7a\nAAJZIBg8TFIr6EAZrmmUlxkXCUYQjnLomHjEb8O78o8lFRYqD69eD0TCf3MT\nyJLNzJDGBFAA2S2dKvngqQ/B2H1jDfz3J/XO7NvQYyP7PvEo9Q6JCZgMUAZz\nA6YLG8BqxSbpnMAEKE+WczGt5UcnNnKTN7sS3keLm7gTMROjYIpXFBrB4G+N\nOLxEtEfh9NTDUXGRvdvMMCcan+40jSvktxB+aNgtAF08KN3/0P6RFIRsfYde\noE8gKUgRa2iMFo4+8Rlun9J47n7V5Vbf1KxiFGc7Wyn8v7Vw/+XgLgAvOMEz\nSkTzzdzcTyrtEjg7g3J0qGb4uz0xFWGW3EvOLcI7aF4ebOefph1Mp7QquHNJ\n0hnjptiJeq1qS/hqAQb0UEjT1PpVqxfMIvacgxukXp+LkWUoflU3JY1ZWfbX\noW0F\r\n=AlKq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ced34e4a93e3a123962cc6b106fb67f83be50e17","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.80","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.530","@balena/jellyfish-worker":"^4.0.40","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.143-renovate-non-major-ced34e4a93e3a123962cc6b106fb67f83be50e17_1618221495432_0.4491660623034128","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.143-renovate-non-major-c1a5fb2723ca514581712c1305eb3eba264bf277":{"name":"@balena/jellyfish-test-harness","version":"1.1.143-renovate-non-major-c1a5fb2723ca514581712c1305eb3eba264bf277","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.143-renovate-non-major-c1a5fb2723ca514581712c1305eb3eba264bf277","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fcec0c59f4d746d82bdb4c07504874c75834d384","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.143-renovate-non-major-c1a5fb2723ca514581712c1305eb3eba264bf277.tgz","fileCount":17,"integrity":"sha512-bRQdJzA0hC3UgLyqV9jqwkq7UgGifkEQjnHVahTYHFj61sUvG6i65XGXX9B2PKZpqcsLryHNBbB29ry3bxnqbA==","signatures":[{"sig":"MEUCICRPhVAHuZZht0pVbM9Yctib3nSEq95y+z70CdEFL3ONAiEA2TLJqo79ijBjch0JBehjRUKU5C41184oC8w0gvwctkk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdBsJCRA9TVsSAnZWagAAr6MP/Aqe+FylrCA5ibMp/Fq7\nutSh4SlTNAyRRV0il88sWquvmdvx767FN0tBze9B6O2ryhc1/yTuYBITcR3F\nRCjaqxLKCL0A1vFWm1xfrwWfqd5tZ1MCG0rUz7f/W/L4gFZLyGc0wvbbaLo2\nBRrIa0/t2AAAHPVYztzqQyW1JmPAp/4UbhJJnKRs2iiTRrZz0UwXTv0D0OMB\nHy4vTKmtP0WxECfJxH+GhyE3vO1MeHtLTd8vhYcRNqmQ/X6jSzKVhIp87QPU\nuU7xRehlfD0/1RVItYONvkK7qBP+Kbk8EtMppbWdqD7rMf5PVzG/rYgubcwS\n9BjzmxHaQXL10yUgDyqYCNgipDV+0cKp1oJdZZdcDMA1H4yWdNQ1UmQotNxU\nVDxN8WJMCqRXnRLck2C6QLCO3QvDRxpY2iuE7muc+HWF11jduwQJu7h72bUi\nCMXG2zyc4egtUgpxmqyY8ODFd8cNsfCcahrvpZYxyqvcCla24RA7Zk6RuoT0\nQz90pEZrza0mSKT8ERUn1Cu8aQI7q+PE3EeKdoQ9zaMrG5T2p63H/jkssuo0\nVYwh8kfjG62JBo8rtx3Fo6VI7qJl+COX0MKoYcCgM2P941vXLnPHlSXSix2Q\nTZKpCbszeFWGlYzaBY8nUEhUksCLhvmFiwSfJqekP50zfCVkcLj4/4IOwfaz\n+Boc\r\n=vfxC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c1a5fb2723ca514581712c1305eb3eba264bf277","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.80","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.530","@balena/jellyfish-worker":"^4.0.41","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.143-renovate-non-major-c1a5fb2723ca514581712c1305eb3eba264bf277_1618221833285_0.6647525923171362","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.143":{"name":"@balena/jellyfish-test-harness","version":"1.1.143","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.143","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"90f5a82975220354d2b6069329f275d7da169bff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.143.tgz","fileCount":17,"integrity":"sha512-oetHoP9UCnLYdxdCSi9m07mWwwOpG78Z+ls9CWjSDMm08iLjCk+Wb1T+QUJAU+HfQm8SwNePW34F7uoP8R0/IQ==","signatures":[{"sig":"MEUCIQDxU3NH5q8USQ0mrGm49iKcuaJaKhnStAKT8VIazwNnsgIgS+/9er+H6WD4/Pxq95WY9J7Go0wSW75fPsPbG5qKD2M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51285,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdBwvCRA9TVsSAnZWagAAug0P/1/PXhzuhxTiTBsElt8d\nS+XCCeWoz8ZD+oXyhB/Z7qZukDTkdGaa0r7OGYPVBplX3e6T3gBswEdBQIoX\nBLXrOf/GPd9UOkFrHxS6JbuWGWA2pslc+01zp0U6yW2DjMkvg76UzQrD21rJ\nrnWYPM08tDfvflfPiWfOzZaWElf3iU4NHUM5GSTuKuikSnKFDk9m9KAT1+kb\ngCwKpO2O2/Ypw4J5qLRSUyiaxuiqC/EZgSHQxUn7010WsR1EEI+q9fcot6qZ\nG4os6bIbhql/IUw2NRa9WKCNrU1Zs7Xfu0qvHyLNzCG+osyJ5hwmWeJE5ZtW\nojtxPJwgOLHPC6H+ZFdCVVFjLC6xi5EjH0TisWOTl749ThFTV1oxfRziaDtJ\nNS75jUls0ivOzx7NjX7Dvz6QrNcqBb2EZTTKgIVXqh3AsBW8CjwheME5mcUb\noSO68NXwnC6bAwhim+DCXch2mgCHuN0v7eO2Kcg9M5lIExd9jYZKY4w2RXU6\nmL7pNzckliX2XbsAW5oT71p8MGsRo0QJsGeTnvKgYquCNGNWy/X6ROQeb6h9\nCDvdays5SjjeLKukypF3TuPdInPPDr5Iwtb/MeZakzh/Uap0wOtAK7xwRTP4\nVirMe4GPS9AsEFhrYH5odST1Kn8rXHmL6lv2mGsbSjx7d6k8rFikn5fIo5YG\nYTvR\r\n=3S8x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d7d68a7ce5c274c42b7712582b7e8fa628806ce8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.63","@balena/jellyfish-sync":"^5.2.80","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.530","@balena/jellyfish-worker":"^4.0.41","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.58"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.143_1618222126826_0.6316722886285071","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.144-renovate-non-major-e8783899300ab5445bb9a412d0fc6a8f1e5f0947":{"name":"@balena/jellyfish-test-harness","version":"1.1.144-renovate-non-major-e8783899300ab5445bb9a412d0fc6a8f1e5f0947","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.144-renovate-non-major-e8783899300ab5445bb9a412d0fc6a8f1e5f0947","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9a61ea742845a3dcd025f662a5ba3edde89c56d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.144-renovate-non-major-e8783899300ab5445bb9a412d0fc6a8f1e5f0947.tgz","fileCount":17,"integrity":"sha512-gha4ewQ83u2HEAzNHKsbegHG0uUfSVbchQ7eQ8FEnIXxS4tFeAYbK5u3yas5RYAHMCApQJhVbLsbb37KX8uk0A==","signatures":[{"sig":"MEYCIQCM/F7os5xL1AHqFzSe/Fqk1F3jzsBxKpav4htwCj58qQIhAKIoW521IBJzEQUQWzz9xOgYXXeJvKkmZVQDeMmMqePn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51415,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdCbSCRA9TVsSAnZWagAAAgcP/1m88w6BfgVBwHXgvmcE\nNhvTGV5iQOOC5mEiiLncbGC1EgeU8Pk9KGmWqBDTXgPIaVH0o9pASTp2EWMv\n0RzdGr/jD4zdRv6IuvzO4lqsngvhoa14TIa1bjqjxvKlDZjaxkfpGqIIcGWG\n0xAqj/tl9TlDFl2/PAo5b3QohoTVYzbqHW3S48zF2AweJBU8L9ykGBpvI6du\n3faCA2MO4lQdFX/wUpgFYEf5pxTCozYw0ZaB0/wHqcAaCDdvnPJc3PCAUUEF\ng3wJeTcj31EL75qbMCUme2CPg5RxjzAg+2uI8UrhRZVezwpZ68XQgUDjyV5N\nOGfoOpQlIE/ctUwmuAf2CouX0L3BJiKnYA1tBEslCXkBVO5URkyzF5tGH/KX\nTEUO3wo9KHCMYO7Of1HMWQJ7oSe6q1HTed/qvFxX19wQ+sT688QHUg/9q5O1\n9s4VdV4BpQPkZdajCm4m4PaR8uK7WHohvekKOBLGFk6fn9zJWp1LIdn+FZOa\nzvW0LWY/tjE1Xd7Q0mPkkNy+qSfFkqdbKat8ukyp1zTtxo72OcY3c3YN8Qbh\nsFeAFK+a5cViKhoZaGfnqXFY1Kshb0rdcek72VjCbN2Pzvq9RA7uV8JedJTd\nU5VbWH0UQNsozbtOjIIwxEZhCxkEej18/uymGD3Zr4zvSCQKXMJhKq17u3kb\nb+Xz\r\n=1+iY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e8783899300ab5445bb9a412d0fc6a8f1e5f0947","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.64","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.530","@balena/jellyfish-worker":"^4.0.41","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.60"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.144-renovate-non-major-e8783899300ab5445bb9a412d0fc6a8f1e5f0947_1618224849958_0.03496495890361517","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.144":{"name":"@balena/jellyfish-test-harness","version":"1.1.144","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.144","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ef8b73c3ce4875e6bc9fbcf777b550cda0e149cc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.144.tgz","fileCount":17,"integrity":"sha512-Ki/xpXTfQYlGD5rcEEo7JjWilif44THFPamsFXwgGyoqANhgByEzJ2QQBgZeF5nSheyXQOTAWlMJKk22d6mFsg==","signatures":[{"sig":"MEUCIAXLiC6QBjAe9wV+o0/fJWhJZpl2tawKKYsZUFKzjVgGAiEA1LZtT3shN8c/qTODqHEbyWrTpdMFkrwJXJk3eWj0rII=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51355,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdCeiCRA9TVsSAnZWagAAvscQAJm9zb+wo8QcfgO1Cka4\nrL0Km2TCQyuKXb1I1kzkQce+PfEn4l2l8Q/yaK6CUnI/h+B8b3dFeysDGAtT\nS7xbrXLAvzXbCWzrAMO/nirEXXXFjP/vhoRitXfir1aOZlDxw+sgXLELdrP3\nOry1qi2cwXsijTDnddFTCPfiMMWeAOud++u0Y0N9DdjUoIlAuu8FGA1d+urk\nPp6OG18/TZSFyqmacbW34sbkedVYl4mp7qVBD+//JSyp8G+qLarg5Zu+3ZQs\nQ8fOpVfBuYyeUVqDVpXFPVW9A7gJMHtTUY2omtAztFJlHXqJgQfjgcDGrE5B\nOJg4R413RtNuXOn3dvC5ghjwNaS2sOR8OW4EBLw9+JDJEtpC/9haidpl/XJu\niNKoWDybVlhxVYZ4/9BIuuR7ySYkEFX6knD3m6tVDnjbITyqO8lbo7DgUgyD\nuD/n1bO+Naq92E07oKJicTyleSBEEXlmAfbdrARrp+mQBDLFAAHZ8a7h6eT+\n9YjXbvAQCwg9lI2BmbGphz/cFJkbHdn/yyvYgSWyKPC/lVEQZXHE2ThSt7O3\ntxX4Egadp+2gZnGfeQpXC+SP4SvIfpAi3Fwi7C/24sGi9oe7wm3Hhpd2tQ5H\nNEAhp/oEhOC8BVylaJwODoUoSctoarkSb/jAmBsn05gpLrWLLpiOhF6dx7sZ\njdCE\r\n=l8eu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"585bd7fb0bea8e4bd8d6bdaebdf1cc4a66248c1a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.64","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.530","@balena/jellyfish-worker":"^4.0.41","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.60"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.144_1618225058334_0.7689468536265414","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.145-renovate-non-major-02bdb682578e16797ce593972a4422aa1e34fe14":{"name":"@balena/jellyfish-test-harness","version":"1.1.145-renovate-non-major-02bdb682578e16797ce593972a4422aa1e34fe14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.145-renovate-non-major-02bdb682578e16797ce593972a4422aa1e34fe14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0669b5185b60c34c28c52f8961ff93eec17cace","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.145-renovate-non-major-02bdb682578e16797ce593972a4422aa1e34fe14.tgz","fileCount":17,"integrity":"sha512-5kIHocSft4CeXE+8Aq4C8oq6OAYiQn3qqP0oJkSgn00dFLdSGMvSp2NAFj1YtN5O2fjZ1Cx0rIyOHn0gCgiTDg==","signatures":[{"sig":"MEUCIGKVqiRfGEh1PZ3ur+xep8SFfnyqUPSGLx7KFUGFHtSuAiEAl9hrboEGeEiKHeDS0Q3JV5WooRy+QxDrqRB0h6wtAv0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdDsDCRA9TVsSAnZWagAAGsAQAJ3B21/3DKynmi8XxwRc\nHzbd3VGkFoxa+W6CIBr2XdE4dL+4jpd7G3Kj6zkQm3mLrJcZ5J/eTcgFS5Jx\nGvsqYCx98MNpaJMe82eCOtpI01y/Rd2bVn4oxpkqnenz1K62TKvtghTAHgf7\nchJZPOAcLENx1nAbahJCkJo4RNOZcqoc72HDDQzUg/ZfT6ME2lK4uXsKmxQH\nQpqqklZXEhcb7DNqC1M+GK82F8VHkv4StM6fTi6G2ofPumNHCkC9ucbfFUTK\n+ltGYiQ07jQvLIxzN++zhzvrQdkJgPIeFfJNsrGTwl1gcBJSMJh6GCm/3U6g\n4QgL/pZlA/eDCiBfAAwBbhDFdvUxuzI+e2XV9t0NqYWsOKAnPa21No+XyiF+\nLQfzHSkUALz+jAcyJFMsQRYkYYAqQiwBM5CUtQiQWSbErXSEvGcZQ+Ysjfmp\n69yDHPPoie4YFaZkkND3DhdMuxl7UWvTAujBNyYSO/1PORs5JgErx40gzuB4\nkHBVNQmEfW/BtnlIYIKdTOgcUcrbN7jLw+k+VOC3d7wVKqDJhwAXIJmJg01A\nph6lye6jG1yb9JyKFzDirrnj4MAdLoZKjIliwFNCQg0/1QDKh0YksN7Ur21+\ncqDG11yym3O/q3uymlxfCv9D67dEWQE8QMSI3YavZC2bWD0snZGW0zcNupCr\nLB7B\r\n=TiSS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"02bdb682578e16797ce593972a4422aa1e34fe14","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.65","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.531","@balena/jellyfish-worker":"^4.0.42","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.60"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.145-renovate-non-major-02bdb682578e16797ce593972a4422aa1e34fe14_1618230018821_0.005643207330312983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.145":{"name":"@balena/jellyfish-test-harness","version":"1.1.145","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.145","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8a1fdff5784c4fe10acbdf26aaf3980c765e15b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.145.tgz","fileCount":17,"integrity":"sha512-ouKs4HXFDziZi5gZx75mUpCIIWU20pmSRe5Dr+PFv58BsTbMavlWClxPqmOaQ85U1qZQ517MMYwHifzhdCk7sQ==","signatures":[{"sig":"MEQCIA5KRzCY7x3j8KVjQBFsNaUglofLvEt+0SuHgZssG7pPAiAMTN1udJS4JBhfGJhcCtkHh1mkZU0hFFmICg8XLIhYnw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51425,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdDvXCRA9TVsSAnZWagAAaBEQAJRp6YzRogofD+PidmA1\n/UkzdHrS5M0aICv+hr8snbDnjj8ssg4Ts2b6FQHxBAMmpOGtpX/oEBIyiXP3\njV26ew6F/ptL2YfovBtz6QTZ8wJOeT8JMfKXiNzKBSZ6OBfO0mV74cA/IpFD\n5KJEJukFb/agqvj/LdHu41i98jvP1OLksPO/ff8t3wpR7GVi/L1LwU4D/STM\n9M5OdeFbkSYGfPLSwGsx6+TePVWpBTwNmlzEgOs3Dbb9l6wTvNNBrQiaoZya\nwetALu4jWnhXTR8n2od0Z0+BcGIRsUdy96L4PpZQ9L2uwbpNaYmL1x5ytSXP\nmQ8a6TIzZocu4RglcKU07sLMa6Wely+rjqwLUt8/VQLJl4EQU6i3U7TboVGb\nrtXPHIIL41/SHJBsNm39bkUl7JzMXgRiGX9f2szkfIcFk5byTkE/SEPhDnk9\n6ew+uRNRFs9ckoFAZvnyYv6By0mfn79ZVMV+d7DGKtzcfqPE7VNeSFXLhMwV\ncYka2DaoWr23WU6TIJl8nFczFjB5oY8Aq/rSfbu0k64uzpJVlg6QUswBNxIJ\nsNOMKyIKKOx8MP+wiXGRuNHxi6qeK9sbOU2RpQ75rZskl0NZC6RaHNEE0TzU\nTkGK+eaXftH2jAPHPqRBeLe2Kp4Nt2+lOK7h7A4/aSH15pR058C+QdT2qqod\nlp2p\r\n=B7sQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e16e53894a4c29fe2552ef4ee2a39852146ae7b2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.65","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-uuid":"^1.0.84","@balena/jellyfish-queue":"0.0.531","@balena/jellyfish-worker":"^4.0.42","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.60"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.145_1618230231292_0.6793555242912355","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.146-replace-jellyfish-uuid-aac111e4dd2320f7220099107e1b0bc426ecc8ab":{"name":"@balena/jellyfish-test-harness","version":"1.1.146-replace-jellyfish-uuid-aac111e4dd2320f7220099107e1b0bc426ecc8ab","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.146-replace-jellyfish-uuid-aac111e4dd2320f7220099107e1b0bc426ecc8ab","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3affcfc7a89f9bb995ad6692f810ed7d4479d1eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.146-replace-jellyfish-uuid-aac111e4dd2320f7220099107e1b0bc426ecc8ab.tgz","fileCount":17,"integrity":"sha512-0/n7X/OqRW/JjnLA2sI7T7W5HpoM+eYFpQ2LWpe5i+rKYMG55MXkWPa5nF0FwPJdxxQ6hnGsNxhkm2oP1Oe2Dg==","signatures":[{"sig":"MEYCIQC/HFm6iSvElWKlF25Kmg2Y/teoIDF6Yw+Anb/aW9N2+QIhAP6p6XiI/d0Iglc9VTMOF9TUWm59oTJEvnvEdZ+L4vVb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51470,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdEFACRA9TVsSAnZWagAAYMQP/joVUSYftsz4LQP6uCJc\nPVtV/dQtmViFIkNFeUQGi9FYFRiRMXFzmRlvvnMxGkJ49T2p+sgC1b/DEPyM\nghse6m44aPBA02uDcGdrCXVCvXzrM4lKtqnNbh7Pdu4mG4x/DYkKG8Y6WsdK\nC7TWzweIj3wGK1W3T3mXCjN8+Z+/HAiJwVx1+ZjgpCZH7er3WG4cJZiqMCf7\nTiM0sM8kQn70kNQgZYNJdAqDQLHgUhczHMpvyu0bvcSEN6jgqnkhNxA8At+m\ndGyoiAZYrngte/iAnom3SXryeHHgtR/Fn4Q/zuLlJx0elI/VH22TOdhVLxDw\nd++dO3wKcCDxzyDfHuVxa75lSqoqcQDgeYCjkZ1QXQS9spkBJFSHWV66TSJE\n6OVKaCCRIznwDKsO06twA3BAA45V88bZ5hfpFBxG7qDnyIcJxzjp6AjWqlPZ\nqh3rfMMfwLgchdvBhA+cD/52YcMvctIwKJX2E+a2uRV4NBXoaLL8Jg1n0FqC\no3TS3RL2m+B6sAFFM8JFl8XWFeP2Mg6i8fvsN6WGDwMWYxFOvWb+xyBwxcLv\njLPSKluZqP19y8tEeifchQ9wnVK7yD4kR/vyFkhFsZgpuXPGVnRsn6xXDhfJ\np0h3hh6iMhgGRE13ik2IQmrtMabZXw9KZwbBmh5f62j6MGEkURBkqsSUN2Tf\nL6Xj\r\n=NUL7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aac111e4dd2320f7220099107e1b0bc426ecc8ab","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.65","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.531","@balena/jellyfish-worker":"^4.0.42","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.60"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.146-replace-jellyfish-uuid-aac111e4dd2320f7220099107e1b0bc426ecc8ab_1618231616107_0.9851293643381809","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.146":{"name":"@balena/jellyfish-test-harness","version":"1.1.146","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.146","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f2ebf92af6a27820fda403a3db2e3f18d005a1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.146.tgz","fileCount":17,"integrity":"sha512-huY3JYAGKeJHOdvz/ehE6Ilrut0jpvA74fIPZ4kv8TG9ZcGJqQloCXD8gVJ0LSXq/N3fTEYaCksnMVO3552OjQ==","signatures":[{"sig":"MEQCIF2sZrNyOB4WQEsqaKOD2H7MsX0mdkvyX1BeMS0OOVG8AiB34TXUgz0vBhQJXz+bzdm2hv4lc8QrlHKn5tn9GZ0arw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdEH+CRA9TVsSAnZWagAAXckQAIxZJ6yAsVdlJcqyaZjL\nQXZE3vwkkGbuAZJkySko8KlUw3SlNdLCnJ1kSNaykYr2I8RuhfUoMAMbbHqr\nn9oilJ0O5DpsKVxGSjVoitLudM/DnTEt7bA3bEdECSPT0ivX0IF+EBsZhtK5\nQdSpHfLRltkEDB+mFEvSejd7+qHl86AClsAf0YEwEXLr7k4fJ30koQbvctzQ\nd4g9U7JsSDTCThxdfy2Ovvk7amL2MmSHi4x9Gx/S5c4kV6Bjq/iK/NwQ6MPp\nJ9mJgFiqgLaPPOiDDzGcsVYIlNAZCDOu788CbilPCL48cZyjmo01GQc10MVH\n7GBwly1ay3IE5b3WMKOJVg/H4F3wTfz61MvsCuTwUje7lZHJbEofQ4bTly4X\nbQvdAY0XutjqBmMnrABaxKkSqFLvc8YKzzFOhQi0yytSGIXANN9KKajNSUlU\nWdG7ZLocvFIz4WtMdZQ5C1KwjNeVQrPtsfbTtBEowlDua50IBAQaleYxO7hV\nQJsaM/oPQftpKngWgv9g1XZDcQj2CM61lNvmyG8/8T1Wu5w+gACvT/CSjdkR\nQVu0liGuwWj1nJld8a7RRHz65UNQisgZ89FRPf2eCQYm1Taz9yvXsy0HP7hs\n4YFUqK11vFm9BqkUd6KsLi7PkBNYWOj6jmFmcB/ICf8L0PerPb3oDkdOSy6e\nHbH0\r\n=gWJW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5804cd2aff0190206b27b26c63397b4b815ca644","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.65","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.531","@balena/jellyfish-worker":"^4.0.42","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.60"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.146_1618231806437_0.5901661388912844","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.147-renovate-non-major-d3f063466b93f818ce28614c1ca9cfc7266dcf49":{"name":"@balena/jellyfish-test-harness","version":"1.1.147-renovate-non-major-d3f063466b93f818ce28614c1ca9cfc7266dcf49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.147-renovate-non-major-d3f063466b93f818ce28614c1ca9cfc7266dcf49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"273845679c73859f06969ec28c0f08ec6ee526f9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.147-renovate-non-major-d3f063466b93f818ce28614c1ca9cfc7266dcf49.tgz","fileCount":17,"integrity":"sha512-POK+UQWK94SRZ/5ck3bBZ5U+Du2lJcH8Zqek5wFxaPZBkdBMRjLnqiAvd98lqthPbM1BMMQpitENby0NXYZu8g==","signatures":[{"sig":"MEYCIQDlddsM6xfFn7dx3/xx1fC36MTyYVnjLVEpqY7A9p9qSQIhAPSgxqe0iwctp39Gz6BsRAhj4ucNAE46RrQNsSbgJsoS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdFSDCRA9TVsSAnZWagAAgqwQAJJTAHwiLJZPq8UEUbby\nkuqbwcUnmZ5a53WO2baH7SXiuMji9O7+lu3JTILEeLECjS6iFAgg4lAOH3Vc\n/3DbvOT0rvqSPHSpJe6mvnstfbu1spef0e/pNXaAsiszW5ZNpmEfL6FVHXH0\nL4htwebGF9ElSFO+k7QP3a9huu5AjpjKFQruGYUCY1zzu4/Yc6c0eoDffqxS\nxB8zPmrcAQQaBM4VVidV6MlyeUwe+Ym6skyGi1eHmiWrlevLeQOg0YHBWEUV\no2fKaciOxLYG/i1HPUKj14imkesXa6Gtc16uXh/1nZ5marOJhkBuJK7CS1hd\nQmeswVELNffTjI/LfbIFDcg5SyoGxokLHajl0/AoTZQ5u86gPn6ZLMunT/81\n1wAVnSXqaxJmli3/to3PEOvf9NvKBFPMbKiBlC3qbKh8p4HZA1Ca2APT/J8D\nV4vTEJiM0I+/E/vL6CqzLyWpaItvUcLo3YViDqRqe6d4KFnjV6BB4jFL12UT\n0T8UF89VkPBMGqBMOR+NWl4VZsUGVGphHFPV+Cw3Llk0dA27ZHWaxXUZMQcD\nv9BsW/cUC/NHlfvW//tRUpWGhQ9gk+wFKLl971imfSDbP0DW6q3U+T+QMa9w\nKi98ZTq/uegWKvYIp0hswQ0CDwjBdr7bZd3xnZ7V6eyyZq5FVLYa7KzqYnKW\nGyg4\r\n=d5L1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d3f063466b93f818ce28614c1ca9cfc7266dcf49","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.66","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.532","@balena/jellyfish-worker":"^4.0.43","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.61"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.147-renovate-non-major-d3f063466b93f818ce28614c1ca9cfc7266dcf49_1618236546478_0.8385749810386136","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.147":{"name":"@balena/jellyfish-test-harness","version":"1.1.147","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.147","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65352067a2b2311f76b89736422aeb435036bd4f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.147.tgz","fileCount":17,"integrity":"sha512-OVPaiZoNLfx8eij9d8lGZwM5wU3aEUpLV5JEJP03SA8tVLaxhVzQ4AB3oezOBOhW7/EAztOX52evas9QBRM5qQ==","signatures":[{"sig":"MEYCIQCa5pFLSXjAvQxM9wfc5mOKkojwKfQ4aQvpUR5qA8PF9wIhALp8EZDU5h/UXtDhmhL0yPsXM2JgrYP4MTfmCuySum7J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51476,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdFW2CRA9TVsSAnZWagAAAY8P/i6F8DfWxVUnXoP/30GL\n1Iw5COCHcHoqZHhSUb2XLIyhUPCKdPxVtYtfFVBLkgnaNiTj1827VT7ytYkU\npXWNZRDExKY6RzYdZ3mcLoilK0Wj/diAkUbee2g3f1HXlqpEDm7vUHGpjVO3\nB2F4eZNWOHCmGqSbvkHRxQGof/Z/jjmKidO6ln7lNRjQ5ZnVJARhKcss+T/p\nmrWHzJF6dMSlTZ6HYjcaskfQcvv9qjhv8qGENhIepZtElZCqP1g0Kptz+mHn\nQiuh003Xsy79WffsObjFrj9peOPKDFMyPe2dikX92xdHB4ipOwZCIRyBulfD\n8xk36VT5mN9XtINHKEGctjr1W3Y0voYb2HVJ91hcqJpNneSk+FA3XRzep3mE\nu6DXVjlKklBkvJg4vQI1N1CnixfSZ/JZVaGx50iK0oxAPv9VSNHnYSJHtGN2\nMwR80rDlzxWNkqDQlfeDyRMPsc+75WXAcnKI+MFbgYiAn71mAYiQv/DksvLx\nU0WbfTL1v4Vc+aZK1cV5o83cYK/HbeRtkSit5Nw4XCT9mHjL01/aj3S8xdnC\nPawS/Sh/cGlmhRGjB6tec6+RKHmygMIcIBTmOtQ9LKAes+QqSWQI8O3LeQsu\nYKcJDDlywUJTbIziERrEh3HWzjLPF3wh6CGgVfs6kNi6sZMGO5+1CE2gtyLz\n2MmR\r\n=jc2Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"70d5a9cda538d8334d22271aec133006e28b1652","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.66","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.532","@balena/jellyfish-worker":"^4.0.43","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.61"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.147_1618236853982_0.5448445170780101","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.148-renovate-non-major-e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b":{"name":"@balena/jellyfish-test-harness","version":"1.1.148-renovate-non-major-e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.148-renovate-non-major-e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4db64d3bf691ccade34730a8229c4634b74f7ac2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.148-renovate-non-major-e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b.tgz","fileCount":17,"integrity":"sha512-GyCbgh/DEKMMYta90jOkiGSM/1pQs+7k/dQok+uvUIiq21u329ec0QobmlxAlq2Ie17T2/dW5LcEcWywZYKxKg==","signatures":[{"sig":"MEUCIGsm6tKGkxoYuZMRIlfnadqJDPdVQTSgthKcBaWN56KdAiEA0pGATTTWqnxe7pUsghpLTOO91yW2W1uVGXSjngFtzbM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdH9dCRA9TVsSAnZWagAA29MP/ju0iUl3Zv40m3ruvZ2n\naKrei0LUKdjmucxmEMQAFVvk6W/JDR2FqgsvHHLswJp2oQUSc1xvOvK1j+28\niMUhzQiEbk5Dgzy21GJF7mVPDzYwn+Ph68Pd7nn9zJP6ivrEfiTK7c6iByJD\nFGlYdjTDszCkSwwhoyzpa/56RX9f42g/WsqO1osBz9EOkhGTcCE/1vFrhxoI\nD1OXPrWyJSKdtuT6KoXTRHuAzjgPwV6uwFJMm/v9Jnqkpe4CFIXZ2919qrnm\nC3gnXkAlSQIGlDhTRIaHdoKveKLFI4OQaVYOsSqFWZ91c2H93F17qt4X9rJa\nkCUpQBuTVFMqFnuioSqEi/9HBCCyf4ccdSCfsO+15duauo9M58NVD9ZaYaat\n9ubnS0XI0vOejkTagfkePZWAdJHbSzSrIovtKDy2gr7AgBp6EgUHiyEmu6ax\nw5UDRuHikG7hKjtmVn0GPzc93zJbptGpf/8Qv7cyXBkkBVG2BOA5SeCXkU+6\nOqaztfT+7tcq6bNGxfF9NxUw6GTV42G95kvVCld2+KLQ5yiUILD6vwZr507Z\nYyEAreHF8ZxOcr/6YpwYT9smS2RtLJM8SrKA8lUxuGbaZV/Z5Aost5Kap3Sc\nY8pFvzgefmu+mNV0D8XRr/FHq9JuESxqh20IueQaRLXDvJTEfD3N3O2fEO/4\ng7Ig\r\n=C+lB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.66","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.532","@balena/jellyfish-worker":"^4.0.44","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.148-renovate-non-major-e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b_1618247517404_0.7823872026666672","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.148-renovate-non-major-2a8d5c732c2b39bb0de9493f861442276b18eb53":{"name":"@balena/jellyfish-test-harness","version":"1.1.148-renovate-non-major-2a8d5c732c2b39bb0de9493f861442276b18eb53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.148-renovate-non-major-2a8d5c732c2b39bb0de9493f861442276b18eb53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c30a16b5ac414fc0fcc33e9166c08c10ed25a7a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.148-renovate-non-major-2a8d5c732c2b39bb0de9493f861442276b18eb53.tgz","fileCount":17,"integrity":"sha512-MmprnDlaV7HO9oBLaYQ13HxU0aVMt2C4/kP4VoLvywNdqFXwhbPMaXufUIv2ooWA97zX/DV8uzPBtnzRDbrMxQ==","signatures":[{"sig":"MEQCIEJ/qeKVlQr30hpcdcj1jMgOKiX+BE5YZxwz5ZuitGILAiBcdU66ZU5k4QXujchp0cp6gi2QTUQ/7tPBvy+FK3QDsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdICACRA9TVsSAnZWagAAtnwP/1YFWDqYoGDvyQZkK0M9\nkDbG9y4u+OwrKuNPfYraW/iX8nupFhL7TiAiFIzJbrVoDyDI5LT7zEOSSYYO\nsrU1k2mUTSbHM62dk35ix5aVaq7YpDWCnE32vnmrqQl5qeusQPN/ZJLDonQ0\naytUShFmQiUJfB28I6UepYVASfqViWjUAhNJG4+V/BqC4oQv+iJRH/7Y557B\neEE0WzdL2Zp5jgEvkwZ+tFHs/LpWTCJqXmtF/gpKBBPGIJlsXhZwdA+IKB9X\nxSYYhXqqsC4V0yAmXG43uwXqh2gWFVxBRTmO0hVMX7eK2Q0xHO0caJJRKVtt\nnfUvj7KX6RmC1quXGl8O5tGVIxN4ob1e8CKqfp8vhGEDjgMdFNCH/1+Dll9b\nBPUPd+DcR5mu8Lq79nx2RcshBikOsZfSyjBoOdcmibw9tqdvH1YKMiBOrSMG\nu0cpEX1vsFHzgygE7wYix3sBaFqX/7W9fbnBzb0GQOjcNhcJOmn+vD9hvt4W\nrlcZ/727kh5BWqJanoEEuPw6ekPDHXGGzbFeCT0CX6wOuXEDgPbqfhLQW9g2\nDhZhOGLLozJr/H6Pa2MvLtdXYc0qEKWttxIEh35f1Z6fQSAW821aQSxaOvUE\nnnq6VzB7LC7/aqM2aVoAU/KsuQJN6GMW1+Tp4wCNwW8m/j6RZZ6Z4MUZfBKW\neAhr\r\n=1O5/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a8d5c732c2b39bb0de9493f861442276b18eb53","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.532","@balena/jellyfish-worker":"^4.0.44","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.148-renovate-non-major-2a8d5c732c2b39bb0de9493f861442276b18eb53_1618247808496_0.28636440737245517","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.148":{"name":"@balena/jellyfish-test-harness","version":"1.1.148","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.148","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1dbc2885abf0260e5e07493649018bb1d7942bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.148.tgz","fileCount":17,"integrity":"sha512-uPqCdayixry+zLBEZbwwlhS4JCsb9Zk1SyXlwCSjtTlu4TWFMuG4K2Xqc18/HVjtdnuF2PhKQ/uc40CxM3IDvQ==","signatures":[{"sig":"MEQCIGo7Bpff0s5SreFcYssMWUM73elgs+pgwvu2JjWZ1kd6AiA/pARxnh8J/I0EPr4/XRkilcFG/WXHUYywkdrkhp0cxw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51546,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdIFECRA9TVsSAnZWagAAzrkP/2wre1pp5vQm8fqXc8Qt\nF9L5R85nC3CRaybTj1dIPW0k7j3qubzSItoP/JXpklrkG9FwHKrCST7MngqK\nvpSVYkrSUKTWpewzFUOXkMIEXceVtTGsxv8LRMhfmPdDx3UF+QIgW7OGe+zW\nBHH+jVuZKSMv8/tNFSPOK5daKFzz4Dl/Sh68bHdtCmZUIMIo+5n6SWyK2ZM7\naNyjuEZAoTfxhvXnHSe482fkYq2+ypeWgK/W26a7xN0/IcJt+kBczhOtZiAi\nZegGgXMkbzHQT5Dz/q/9c7t/Fru8bcSdrN1e2aB8umYU7yK08yoSjNnT77Ac\ny5yp5VuNjHqlZijKABd2M1Fc/KuOv5YHIDkSzUn7VvwBLL183ul4J6jRCN5Z\nHbo80pQklQz5WV5ESJ4Xm64T5v7exJXDX22DPscWlNvxOjTnyqPVI6lr6HS7\n9N5tVPDIk+tN3vgTe4dNAXD2FMu5x4V1RMqQXwFXeMv1FTiyTx7Vz7UKZOaE\nQfzP0i2dtehv/O1V0rGyrASwpD1svBhp7oOxdtHklMGb2CgVX0NbF2YWvjZj\nyeFwKDFtOHRxRFU3Tiwp56TApCOOgVWF28vl2RcN6884YjUzmVX0DnejCG+t\nkboBGYj6QFZpRj8cUNUxTeJ3EPSs0yDMzVSUAt27Flr8mIsciWYDxdglTIwD\nBzwZ\r\n=XeQ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ce6fd716cb19473d3042f693aa55b76e4678994d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.532","@balena/jellyfish-worker":"^4.0.44","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.62"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.148_1618248003576_0.8564255184730665","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.149-renovate-non-major-3983743f26cc8794e3a1aeab1e9f1ba265c36300":{"name":"@balena/jellyfish-test-harness","version":"1.1.149-renovate-non-major-3983743f26cc8794e3a1aeab1e9f1ba265c36300","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.149-renovate-non-major-3983743f26cc8794e3a1aeab1e9f1ba265c36300","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d1315b8ad450f33834d8cead8ff883f8513fe23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.149-renovate-non-major-3983743f26cc8794e3a1aeab1e9f1ba265c36300.tgz","fileCount":17,"integrity":"sha512-e524GMF/DocZaEf/NZIuchGdu1Q9UWguyDz+/h6wbI7uDWKk6nmD0uFjKXPqrqW1vpB4kDbfEOKUCEObopIvhA==","signatures":[{"sig":"MEUCIQDexWBTRRoFmCu0OA7IvttyR/27ELrrDxaNhOc1e00PBQIgcBFhnH9eRyaKFGKdvhZEqXBp6nWBXObFDNEyuoJOdYM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdIOzCRA9TVsSAnZWagAAXKEP/jm9PAunU1AuyADC85yB\nD1wDegqMPSvc7gcY0dP8JkvdiCSjDNrCJAV4gMLkfIDj8PdFyrPIyKcJTxgt\nMSnQYeYKD3TENhtjYPqNNagOt8kU5VNRB08DrKncYG3lZJGNjQwgfKmwF5Lp\nRbLuv6Z0PuBcO5C2xrpMepCcMvUzz2scjHXRMdKe0nEM9RIq7Ba7W6igi8Uo\n16VqXp9b4WhgpAtA4m1l8Yh0qN1RR7XDgWvwaJzkuGGZZDEJiZdYmy/OMDYK\nDc0aIZVZtgf2opAI5V4CrzieN7zphrSmNKNYWM5/N8XI0eUWC2lob7MfwLW0\ndkihJSRenQrgpovQSGH/+2yTl34DN3YdE/Oe7aevSZ3+5K2wxOOQKtFSj/gj\nC5nyOcYdfNKXXL2MXNj77trclmF7JJAFxV/wt6YSGIr9YH1LuiweKRw1YWfy\ngFPehVbrYBqEw96ybnu9QziXB3+bpmT2VBy5Cg/p2OiMICPWcdxazKBGOvpH\n33hFShzg5iNomgJF4ipbZlaFUuAOuJbJcag9UdVBD2IMNAbjgPjFCG8egXlR\ng4AeecgqbtgdPnN6tvPBSF15Z9n9C7e9dTgKPPU8oH5UUwmHbLBeviwWyT4h\nKZjuVea1uJxK/B14jRm5kRY8TAh4YwgSkq4ZSkjnVChoelx5WgrZPxEPMsEh\nEKZF\r\n=lKkb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3983743f26cc8794e3a1aeab1e9f1ba265c36300","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.81","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.44","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.149-renovate-non-major-3983743f26cc8794e3a1aeab1e9f1ba265c36300_1618248626902_0.8969517822934139","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.149-renovate-non-major-d202693c060afdccb63d7203c3d3b85c5376d407":{"name":"@balena/jellyfish-test-harness","version":"1.1.149-renovate-non-major-d202693c060afdccb63d7203c3d3b85c5376d407","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.149-renovate-non-major-d202693c060afdccb63d7203c3d3b85c5376d407","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"99cd875aa35259a984be1092547bd3ee571fc79b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.149-renovate-non-major-d202693c060afdccb63d7203c3d3b85c5376d407.tgz","fileCount":17,"integrity":"sha512-mC9kCl2GukFQdPl7jDgY9aSnYBL8yLeJ+bOs7Fb7Ux7bsEm61GGnGszhqOMuvcBQX+7bq1xqOTk6XsMgkNZ2Jg==","signatures":[{"sig":"MEUCIBvYz1oHvuLt0qf8D0QeMbA5g+xX1c6DZ/aKYMGyer9UAiEAuLdCHZP2U3fk+JIYdu2DrH/MbPcxSY9rWCliRyqkHlc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51676,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdISmCRA9TVsSAnZWagAAlrYP/29ziGT3lC+hB/KNRArY\n1NovAlyNspmMUD2nOVsEfY8b10w6BJ3m6I1FOBiYA/ciBgj+h15GWljSjDbM\nm0gdSe9DGj5+HiixwT2qmyCy9V6zTqBCPGQLBufMHWl05kuH/wXb33R1AVNQ\n+Je7OtBD6QiRBQW8vROTALSTxMYg61VORvvgBUhLLFcFU7yXzvYhvrrM1yZA\nJ/mSVg4G42b8g08wwD0bjThjgjZJGgvIGkUr1cMRhtUNCszkpU3p0sCydJv5\nAwB+6WbbwwPthp212B78FZIHkZ4MqyJY3SgpnRkoL0k+AUTBsN1fvq+zhQA8\ni1CSQPgaQwQRxXjak9DI0nNTCc5HEKpkyuseKA2HsyRsELiU2W6y0uNj8vbr\nr7cCWhpcQkM4h4dFRz6KpJwTITgqTs0Wc9xsitBXe0efwWGaYFl4TW/BRTKT\ne7+5FU9M5ZKYDiNpukVpF9x8VrpFZFe/EQ1WIvo5q0Kgm3uHok105fSe8N+g\nvFq7gBE6K0dhNRv0ei0fnrGcnK5le4ugwqSNi26cO/hjtVEdnG8REqb/8C5q\n637UnUma12p62ZdehDNALgphvGM0oZ6HjSZVPD4wWraBvMPo7ERAX+n0pZH4\nQm1ZgbaO10YbPWHDVC47cFpI1tuCFEAkp6JnHPgq06T4Ya4k19V13HbOEhpB\nSxwG\r\n=LD3i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d202693c060afdccb63d7203c3d3b85c5376d407","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.82","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.44","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.149-renovate-non-major-d202693c060afdccb63d7203c3d3b85c5376d407_1618248869877_0.31493167611088313","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.149":{"name":"@balena/jellyfish-test-harness","version":"1.1.149","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.149","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"46dc4a17b6e72e36c91dd32a44454aa10efbb25d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.149.tgz","fileCount":17,"integrity":"sha512-hcYdA5eHiO7WaE21K5NSS7g1vQ63ZVBeK6mgaJZBXBhP7+o22nxVF/pkMOYQY/sXadS91vufpVuGEmFniIxiIw==","signatures":[{"sig":"MEUCIQCguXI1SIrrkqLblsQLX+46DGjsi41XwQY07eNMbaV7bgIgAxyoR9SAVieoGWz7omHaV2zX5nhrQS+PlZczTJA2sN0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdIVQCRA9TVsSAnZWagAAs4IP/1lVRQ5/dpuom33DFxxC\nSaFKouKe55XSKwLkf7h/DAUxp/Ghrfu/mkOILt7ydJ6/flyI8YWAcy45gj0r\nmPL9K+GuzEIxOstfm5kFQwPApulLHuu3tpW37zZO4RVgq/cYrHApuU2ppqrN\npp2aYCoixVN2JyG9Qti8advmvUGsJz1fKqEWX0ZRLLR1hANb6mQv4myz2I/r\n1KPwlzn50H+lKl9O6ZpPOBeaY5MmSW/IzBeimv/xPf29S67M9Xv5plWCvTpP\ncVGWT2X4inFEwinOSfVB84b9t2zXoU/u+oVCNClMk/otOWLIOB1sb7omjsvB\n9wzuZroxmL9SzQsd9RoxCU1oc0g19VrNJ634aTD5/V1VB6Xut0IHeiugnmK5\niZi+l1/yFH1M7XsEkU5b9l75Q3PNVpDJXD6TpOM8LUtm/J+2ESwtJrN5rxAZ\nYCErP7sbShAa7aM+jgIK3CQVhT0PMC8xc9MX8rzGIM58xohRTYNeIiglD131\n6cQB1wqo/ih5JOSd3UgbtA2TwMqD1BOxZTCprGPl3jFNUwLpQnrMJ1fsaaQt\nUYznoFBlqhopKu0vYXwAzHkBF7Pht0xXhwWC8jG+nUyzbJpCVy9Qq4uKTFey\nrNgzUxqepA1gCminC9Z2p8YOEP1yXfI/o/jKaPa5YeHtyB3KJUSLhEi071XO\n17J4\r\n=ahzm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b946b181b756a2f25926a0c5bdad50256d7dc413","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.82","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.44","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.62"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.149_1618249039762_0.49070807760535784","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.150-renovate-non-major-794c002532bfb881da877cf7fa9fc548a0b3501b":{"name":"@balena/jellyfish-test-harness","version":"1.1.150-renovate-non-major-794c002532bfb881da877cf7fa9fc548a0b3501b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.150-renovate-non-major-794c002532bfb881da877cf7fa9fc548a0b3501b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d09515e0eb7d3e56ecab496496b1adb4353443db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.150-renovate-non-major-794c002532bfb881da877cf7fa9fc548a0b3501b.tgz","fileCount":17,"integrity":"sha512-s6NJ/Qmw7SsXYBekIF0qPtjJ0oavkMkFho2lbuPaZLQsvlVVYUBFUpgPugZQapNLioSpN2xXs7oh3oQv1Xtpjw==","signatures":[{"sig":"MEYCIQCCSd9paalHfWtE9UehjkJUOfTrJbaIAlqhdNq9od1kwgIhALZ66bzLmLqHbXsmVuL0WlaIIAkdbIRU0vyvjn6yCsdo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdKVJCRA9TVsSAnZWagAABFoQAJ9LChlA0Pyj45qn4Adh\nEln4RPbxanZo4y6AGwabSHynlcTa6UvMS3+sa/q4fNnhF+cS/OMOS9CZjuNG\n59MUNcRbotIdDxXTiOEoajRZMLa4/LAFTH435UBbhEqgvKs6hJvvsrVmwNnO\nfuIEcHBxBtMLZDHRnb1xGtU8+kAQrVSSnHfBVv7V25Ua6laICe+jIS9aNOsd\n2JplJGJbTa6lzW/l9dG4yAjVltVZTg2xw+/eUg1rAIiNd1k0PgPdPSDkEwe4\ny8dJBZjGgQnbUUQWqDY+hRJeF8mw36gAbD5qEmpP6u/qHBwhJp28s9CQFuFS\nBTJIxQRKHx01/vmtTvetd0NP1ZPuk9NXpr70hMVPaWj6U7DMVhUJYWEiBF74\nRu5lH60FwiVrClUwQZvZk90vQsXCAhEFa5yP50cCmh4nR0meSBtrJ+NSMQFQ\nHb5AnuhNo14LF9Td7d8+7Fa2SLe1gn9b7UfY9zX8KTTFa1MKaq4hqkOgHy8w\nYB45qYPWG0ayqNWW8QzWN7sx0IxsfbM23LdaFdFG0Ta7fP1gjljZNbQym+DT\n9w2Tjud3wvY644xrp9a9j59AH+N/C3+NmKl4Qs3UjtLqtOd3V8x6uAuEqNfN\nz2V2Mt8qxHXhUiDtNz4p1RXfjjovkTVd2bF4fWAOhpYkAVmiBLC36dLT7/XQ\np8GM\r\n=2qlZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"794c002532bfb881da877cf7fa9fc548a0b3501b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.82","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.45","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.150-renovate-non-major-794c002532bfb881da877cf7fa9fc548a0b3501b_1618257224770_0.25359287071524683","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.150":{"name":"@balena/jellyfish-test-harness","version":"1.1.150","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.150","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9b0f9e971877d9dc7330b2b1ff1ff84725a63a1b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.150.tgz","fileCount":17,"integrity":"sha512-CPe2HY/OP5Z7qZW//HlpusNZXXPo4GKkubP0DkkHQd5j94HAlMS4vQ67aXxaYS+hDyarPDwwv1q5Nu/qm++r2g==","signatures":[{"sig":"MEYCIQDRwcm8RrBlOa4rmu0HmdLQfrPSyJ7Zw+/ZTSwPG2dqbQIhALC3tWluD5zNY/Nzf23Yq7R3K24Q28eNMPix98eqPHwl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51686,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdKZdCRA9TVsSAnZWagAAw8QP+gO7rDhf/83ng8sjpDX0\nwp98tQI7F/MbSUzr8dniCOGhFLDav26cmRAEkpn1ocapj+8hbnMf7s5M9Al7\nkRWZGFiqbKPEPc+5xD5kkqNed4p4cYqSp8fWqO4J7kRu9anbxe8Psk/RECSi\nXJdvRUPp1I1+Ylsk4772L/p56788NKkeQO2rMQ0cbrpSQ+69roN9yOZkwL3o\nBSRbNyB8Qd8CvudvxZpJWMZApvtP7UhS71gDbGdQVfsSBwW4qtoD52DanaHp\nwFsvk/lNEqs1a2+ozMhb9eM8PBXCRitPTfjo3AgLt3HNr/9ZatAsnUrlMY/V\n6BSPjfUmjacjr3pwqrQRfkXpJ+fZ5PZGy63H3YR1bLZ9O/BLkhaQQi+zkfC7\nnx2nBE3OeMS5fWECch3bTv3H7ebRjfhczsGcHWZjyU7qqIkqxNjRqtbD6OoP\nDjYOf0JTlMfcJcW/kDXy5775972Br3W1y7yfMiuEEiOlQykXEMmtBvNeFTa2\nXTXbrCnb3r6f2DrTzb8vVc6P9UfETpQvaptJliPMxQDwKv0/BsASp+v3MHqT\nKeGN7YCFVPCaglg/Zcxn1dZ8uGoR3Yt2pbmplevutoOoY0+9w7DNzsIu7ELn\n6NKge4ZORp5dULDIRtQJs7JoSA1yE0bUe2Hb7YXLFB/tZqBenIutdgHsy5AB\nZg1n\r\n=TPvd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72add8f4a28169171e80951ae49c1242db1a1d23","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.82","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.45","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.150_1618257500657_0.6437268262148303","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.150-renovate-non-major-2a0127f8c1727956feb20b14e875b22d32c35aa6":{"name":"@balena/jellyfish-test-harness","version":"1.1.150-renovate-non-major-2a0127f8c1727956feb20b14e875b22d32c35aa6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.150-renovate-non-major-2a0127f8c1727956feb20b14e875b22d32c35aa6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3b6fe011728829212cec2b31bf29ec77b2d27209","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.150-renovate-non-major-2a0127f8c1727956feb20b14e875b22d32c35aa6.tgz","fileCount":17,"integrity":"sha512-YsX7a/VrWmJsoPfOvYb/ST5iOmKawaD3QZdmtYpWDnpkqoRqf9NrpSEEEaMsqoEeQcSr2o/JTbW5fE7d9HBnOg==","signatures":[{"sig":"MEQCIF3RWpkt69WJYgXTIAWNhTb1h0ZYJXNZnPwRvydq4HBSAiA8RoC/EbYs3GpuqzHoumIuHdvfgw54VNUBuaT30NKh/A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdKbbCRA9TVsSAnZWagAAzgwP/3HgJMuGQzkReQszh6A0\nW4hMhgluVg24XbTAGNjx/1QwrZRduD86O4t0CaE53IUhPwYqe7D1RamWwdg+\nGRZ0HBxgFnMjbz/kOCPaMpWmLVLbjhC5tkcsVbmECa180BTxFCrNj9Xv8E9s\nRZJ6e6xP7BF2pegyO7RICx/bVozG1Ofc8K85KeqEO+cuqoH8qm0vi3pT/f0d\nuIYVEqVANHxvuXNso99ExaU0scMXOnee2wYOC6jPrwq8OLYjagPZ+xpj2xQi\nkjLsr35rQBJy8JV4vjCpWAQBHbX1FtOYxxfN8Uj8/a9cb9eaLwsF3QPc2zWq\nowDqgRdPuRw2KgOd66AAtV/+7P6hxAS+UHrMu0VCC1hvMgqJH7/eDcDXOOov\n4EcURGKjyMMLTNJdB8+eW3MFsxCfII08735/CW59xu3+xA3+tGq7LR5UAEID\npaYvcbnbkS7LEqpAq0QzaOZkqOJ8dnUwlu9L+KrQ1dVu6qicmOsBdBM8N3hT\nwsuL9ER2pNgmTHM3peSlamR+KDH4ybZNeLe2d/NLM+JoEGF6AA3AMYw+wJ4a\nPyRqczu8nE6houyITh3Fx8mA55CmHlB6y+GNjORWWLth9lfrPZq+2L0y9/jS\nc4ZM5To2YQ5ptoSfJuqBFLRAGDr0hqg3s7GHJYD2G+2nIhSeEAQxpKekeRtf\n2AL2\r\n=44sU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a0127f8c1727956feb20b14e875b22d32c35aa6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.83","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.45","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.150-renovate-non-major-2a0127f8c1727956feb20b14e875b22d32c35aa6_1618257626914_0.7465088962199957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.151-renovate-non-major-5a9c92f664949563a068fbc7f0f2cca69fdb0ff2":{"name":"@balena/jellyfish-test-harness","version":"1.1.151-renovate-non-major-5a9c92f664949563a068fbc7f0f2cca69fdb0ff2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.151-renovate-non-major-5a9c92f664949563a068fbc7f0f2cca69fdb0ff2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"234939a09f05529e3fb0b0f99423ddf7cb8a006f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.151-renovate-non-major-5a9c92f664949563a068fbc7f0f2cca69fdb0ff2.tgz","fileCount":17,"integrity":"sha512-Rs0kz75esLtqnMQbHi6iLsQoTuB/VUKW+AVxSnONGM12vxhKGL090U2K5lWbqmupRB8Yw1j2mtx6HoIfzsIhWg==","signatures":[{"sig":"MEQCIAE2PvmWxoO4MDDfCcmFztHuNiszE7qd0B12EYP4UhBOAiAXuZRqgaOK2UOxf/bkcFYcoBkx8LhgvKUSCY8eT2bwEg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdKfQCRA9TVsSAnZWagAA6B4P/jlg4WXRajsnwf0VPFda\nTw5Q4lZznbKC50EZ+MC9atrsEQe2z/17XNPMvUOj8pqN1wYTd6Mgd3zg+X0m\n3U/exs947y1y37mllS1JMqDaS0xSMNwtus9HsPmshkIbW+vX5J7XpT24nDm8\nmv08io1b+2KtxV7xx46PVF48N5sp058v6GdfkeDtk+5axQYupfyTo+X0WCZA\nJSZcjAfWmlCVqRfFBJG8x1Il5xnbRyQRf7T7MM5iqazYZqz3yhrVPl6Rr6x0\nN34adGDhvovRVQqJK0GsAkHXRek4oaym0V05MqZF2n9R+s+cMoJsZ1nlAxoJ\nm66yuLqgL0VDq97Ld/HU6Ly6QMHIZAF6rb2GE5s9+19f8ZSU7uJ34mZq+5ZI\nozJmjvuq434HAYj75TFnZG/sZe+0kt02QZlwIj8onCKgrUCoi01gDYeI0D4I\nr3YBQcFtcPFJqJ5GQGswCx5vCEqk2aH7DX1lwRrabE0Q1M2cmCPGLh4F9px4\nrM+AsRvMzTKZXPovpYCniiAq70kvDkeFRaxS3MjeLA2L3nIQptkSZem85YzS\nwvSJn8t17W9wGzUjT4Cyu/sXt7WhsAy7WAJ4MjxHqEJLFmSo+PoxSu2v6R+H\n2o5nruBYyIn8yJp03VWxQU4NXUBo2jgQuVANOpA5N36+ooHx7sygJllT8L0z\nSqVX\r\n=yIJp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5a9c92f664949563a068fbc7f0f2cca69fdb0ff2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.83","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.45","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.151-renovate-non-major-5a9c92f664949563a068fbc7f0f2cca69fdb0ff2_1618257871492_0.17370624019879255","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.151":{"name":"@balena/jellyfish-test-harness","version":"1.1.151","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.151","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f132fc479c81703bdb0c9eb43d903c6c2890b4da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.151.tgz","fileCount":17,"integrity":"sha512-df39FlXtDOkmad82p0acbxWolMV/abkqDSKvYd7imE4zRmgQvbvZvbXZEreF3Q5qKpvN7UGCp11bRLKxcip18w==","signatures":[{"sig":"MEQCIFnU9wmy+TERC+aG6md1XqtMw6ZB6do+irX4Hub0Swf9AiBXSvqxdiURiS9bmJIzpM9WVlvS9r82Dzgq56Fb5YLd3Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdKiRCRA9TVsSAnZWagAAoOwP/0gwDEgFMoCZQzCUns3q\n6oVDd0H82Ffbm0UQnK5AnsUnblfWVut+4p6k+/0MhMjSnoPMDOWqs/iWMq/I\nyV3YYWRQvIai4F5/IlXt0E70p4N4DlsWfhATxvHLqcdREO04iZMrQyxBYL+P\nc5MojuXNrAT3NIIZfPOf2muAGa5gDhPtwpBEyW2zjad7DTS9J0qDjXC7WYd/\n0gIFq9FsDNkuhKbVOn2o5P0p6DA/T6NWJ/mc2NCjPWewRn3ePnSWvRqzEP9s\n7SscnR4t9mPVW+Uk+xTyFMoVWJynzQcEJHYimwG3DCylYy4eMa6aEcRE7Ehx\neRS52yGy0k7j/CWUVzGNgCvItDjOi2ERd6Q4tgi7OeRUoJCTx3J90upeztvm\nfN+b8DCTDEoCKOdnki38sbASQVCbzC/tQutEj9Ep1U9HwBQfDM5VVTKdR8ax\nn0E+dPsXcVH+VbZQE755NTmGL6YX1wc0rZVni6UpuLAC5i87LiywvohMv/2S\niUImbu6x2mKugLseBqO5eW7xpzyoJ+BRmw4aiJflgGAl4sNddsvV8OE840X3\nNa0lHBikw4aTJGtsQ4ukusRutAgE30ApCqyQDVOsSFBPSYar9zOUwnsRfZBC\n2OqRbqeplpGEXJzJxc7Aqqe126VX62JeTFg69FsEZ7Ec3JvkCYmunjkGmXFy\nFLQP\r\n=2QvV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"686c7f204e9b0d977254c33b9fef1c7679ae64db","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.83","@balena/jellyfish-queue":"0.0.533","@balena/jellyfish-worker":"^4.0.45","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.151_1618258064934_0.8020406769838377","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.152-renovate-non-major-7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b":{"name":"@balena/jellyfish-test-harness","version":"1.1.152-renovate-non-major-7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.152-renovate-non-major-7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7da364ad3c14c50dd3b8ecad453a1bc6bd67364e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.152-renovate-non-major-7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b.tgz","fileCount":17,"integrity":"sha512-BB7NGrwedFvdiV0f4pQMH9KEfF9UX0tJUi5AIuzf2+otJeevWy1/lY8GYeSogkJ+l3ZqFbsF6X2UBIzUtRLI7A==","signatures":[{"sig":"MEUCIQDpYGlwW5N18bvSv1VXJNkYVqm3MuFFcMwss46dJMvgNwIgQrEYm0TCTjKEBagsz40tx7ER7QUkhtUxhoxiT/WmfbQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdMwLCRA9TVsSAnZWagAAyRcQAILcIL8qdH3wgAK0N/oL\nGaZoHrwrMeOxdRKgVZF4azCTf1CFzQCylXOqf1EiuNc5pVzFvHSkmKTyOEqq\nKdPxjzmtedbSsfqLgkJe3m2tXKYoJD34PmTvAS5J/b3npRbLKWHX4YSz7Pvc\n2BE9s6xi85mfG4UZjFxmPnSk6Uixnm/vKfb3D9lAc9uR57RJ8e4B51vp9FRw\n/mSaogv1Re1EUE21CCowHj7jSHmwXNBC1T5P7nW5KdS7v2Wef8/MxQFviy6N\nKC31jeNYyOu7eA+rDXg0ACpk+bKz4NTBq0x9UcYHqiT0Y1HJ8O6kpKTtidMU\nG59pVMEOZuRmYYoDpxHCB/dJl2k8WdyyLBcYav9KsAC5SZgd7DnUzUceCqYF\ng3L0TGYcYg0LvOkEK03rAI4ree490goh7hjC6XKyFbH9BlgVCR6Av0ORFNCB\ncrAVXv/FwLN+Uoebe2fL+WXWh+rWMsnDnjhYJSQfXyN162VRyb8Kz290P+3E\n2lm7v7AtFrGuSv8KTqYxX+OkxvMKFWfa2+UeDdWGkHq7rE84aai6/whRRnZV\n4n6ea/24gZJXpTT1Llj+0E7eb1Dj4XprBWKVVxXVPZnBXPZfnBmgB3QFZbat\njFCk3wGmMRLnCw8pUSVcRdcnrNYYeNf4kCm2nq9VVQdE5XObXzTBKeICB626\ny6m0\r\n=cwYD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.84","@balena/jellyfish-queue":"0.0.535","@balena/jellyfish-worker":"^4.0.46","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.152-renovate-non-major-7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b_1618267146551_0.12463292489098077","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.152":{"name":"@balena/jellyfish-test-harness","version":"1.1.152","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.152","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a40da8b0fbaa56bb22b8d99173edfcae9e45b4c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.152.tgz","fileCount":17,"integrity":"sha512-EINLb80PsrpooyW8OLO9xGbsBwtj9ZiIJQpfaoO4jQ1ha02ClzF8QbZwPSrR/PqJXrFkn6fkKOpoR2LpUBlGnA==","signatures":[{"sig":"MEQCIELhredfMXOdAadSTwJTd1HUgtkTHMePis1RsmDETIK/AiBxTr6PMrw0Zori8GK1iffDjIhzt4tPD3vHKQw3HpeH+A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdMzqCRA9TVsSAnZWagAAoD8P/jmHVSSJxci/k/2OM5WB\naNQH+zTHSvP6kKClYQXU8eXZu7Xjhh8L6x/JTNtKPrTOG8mRl6BaRqzrFrz/\n8AwGpk6PFS+5rZFGCtNqIDsdW8cy0V0G6Rkh95x4yGhEHqHAZ4DYtGPxloEN\nbK6zh4E7g16Pl5cDyI0w+Ijy2gCLlv9fZ473gLIQ94kGj8xUPUcrbmq4+VKW\nZ/r19NUJhSxrTPg9I5ZqT2bM1q7kMiYL4AFa0b4rEi878+/JqI/nLUvbnxwA\nilezwyl7pURaBDJB+TlZSoKl2wkiRwWuEQay86YHF8/q/YNZkRL+fB6nCJoI\ndllGELKShBnc1btzDQrjvHmtwl3reb04q0TubTCSjzWQnzcBoW4KA93Ja8/t\n63YlHJOAxNs+uzOgHBtyqu1ZLMBVla9yM6Pv4uTawhwMp1iyFzlIfWiL3wmz\nHHPWIcrJOejJ8BOuJmnlW/UuCXAHriAeleEWDoiX8Snh1NHLmeW2xaH5e2jk\n1J2OLWc5knTL7I0UFnSvnBBZnCl01gbeKf3A1Fra3hiKpZi/ILWorJib+yhN\n/AwHvBUACXZfFSDi/UdG4viQWf9cvxb55B5o6GEf/oxk0BER28reyeAsgFbb\nG2N7y0pVmthXMLu2hJ3J/JUHznEqtWBWNdPfxoxoC663gbgHgguWzYB0G8PE\nkL2a\r\n=T0lx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f2edf861b94ec5cd933bdf5144189cb919b5ba8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.67","@balena/jellyfish-sync":"^5.2.84","@balena/jellyfish-queue":"0.0.535","@balena/jellyfish-worker":"^4.0.46","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.63"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.152_1618267370426_0.2530304544331332","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.153-renovate-non-major-3e76d8a7cb005779ba2b477e0a42f365b47ac783":{"name":"@balena/jellyfish-test-harness","version":"1.1.153-renovate-non-major-3e76d8a7cb005779ba2b477e0a42f365b47ac783","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.153-renovate-non-major-3e76d8a7cb005779ba2b477e0a42f365b47ac783","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"37a1090e9d312b43abde3c33b6dacbc6588c162c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.153-renovate-non-major-3e76d8a7cb005779ba2b477e0a42f365b47ac783.tgz","fileCount":17,"integrity":"sha512-OkchWuurHaFnUoj67m8DGI7gyjQSabkMjd2Azt2INf3QTO9ZN96hltuQvjsZ7N7i6x8N+WrIteOv/27p+oN5CQ==","signatures":[{"sig":"MEUCIATcXpTSFhsCEXuwV1c21FsfObc/S884WCAe7iFMLiqnAiEAtd3HQBmRDgSNxSSVvg27rzuLQhSpT19R0oIXdteQbZU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdOUOCRA9TVsSAnZWagAA22EQAJvgQ3VWEUxv/7KeHaho\n/HIjTwlSOz2MuYGDHmN7ze4lXJgmocM5GvXwEw2KNpkP+jPAaDFO/4+sXkOH\nE2LEBHzF2xmxVYN7tS8xDRCl9mN+v7TkfS0eG+qaPKk3HK469kYH73n6L41G\nxOhTP7YlHM84RxlfKQh9EPDRuvCRCK2y8Bd5wAaTpOVNrGmwlo61NIND28wI\nhGBoLdaG8rzusVUkxzcueBMqFz/DUF8SUD2T3/zc9VLFwvSy7lVVmH9jioOT\nB70bkOpNjhhCQ52uQcQtvLZQY/VkZF6jVu0wWB3Ej2TdX1Bz/UNa22dF+tCG\nEW+Qk8ZPHIeyWFwayATXk5P0BKqF6UhDNj0utesLLnHGI0y0kcN3UnO2l6wf\nnvzW08BFQjQCDSohZL/vNMC8GQn0vI7+3HjtHFfLUpSNURK4YvFjausv5Vvc\nnzcqV87qtonHMOoP8CTsGMOYxzDv/MDBJbESGAudTHBo1TMd1ebQuVWBUrKA\n44bX1y0rBY9gdJ/oC7Sog3dfJ4+EShuHDL2rUWIPTzmHS7eJGzhbBjpZyRjx\nv8PnMf7+2Fb2R6uwNwMvt4rIuubLucHjAkTxGZV5YmnhZNhyJ/K5I6wnGPsK\nXbszguKn9bg4y8tY+nyDqHfneAUIfYalVeZVT/nnENkvYPafGeYx+BTqGsMm\nFlOg\r\n=60mA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3e76d8a7cb005779ba2b477e0a42f365b47ac783","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.535","@balena/jellyfish-worker":"^4.0.47","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.64"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.153-renovate-non-major-3e76d8a7cb005779ba2b477e0a42f365b47ac783_1618273549760_0.7653624999299904","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.153":{"name":"@balena/jellyfish-test-harness","version":"1.1.153","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.153","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ae43b96b681b95266556ea46fa5e464659a6c5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.153.tgz","fileCount":17,"integrity":"sha512-CzWNctPzxXPf3JXYuXe5GiDQqXK3t7N6TRXjtqIrBfdkZAoKxGHm18Ju/BU1v0LycK2i8zjoBZtKa1mF/5vqtg==","signatures":[{"sig":"MEUCIFOqMs/ikrm+7CxyrJq2vxilY/FP5zA58sslJ+YyXaH1AiEAtXLfzY8YYBGCHds3XvnAVVpj44Lwf5bF4c/5CiepVFM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":51931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdOXqCRA9TVsSAnZWagAAOvMP/2BsC6JDxZKv2c78R/W2\nEqvPovlarpuI+2gvvRnnDwvWz0cZdVpqa5wRC7ge/E/mIKmg0AoMez85ANW+\nyhx1EpC0OzZEjPQbPViZHieZ0VAadUlUCwirgN3cnNG1hfWfoAVzXLzUU5oN\n6B3xvA+yzGvYxlWKZjloH6MqzvqDAUA8KJVETZ/s/ljF3C1Otp56rq4jFLpm\nS9ExBEVL2VhrkhUvgXWam/+BycT/BNqQidhk+l6+SzkR/lK/rMMSwyGkEYM3\noAwUbo/uptRl1qV2/a+42L34Z8My5TRPoLFKjexcqHfP0zko9ZEb59LfHYE5\ntbD/bjdEbocBk/aNQsE/OxORNCSktWql1Eg4rMqV1fXUZC1Vu+VkPWOV0Jxv\nRb9xOcX8uFXB7wg2JNEHdRC7MXSuwtxi55jLF0lmrZiFuihLUd61CzHO+iV2\nK0GAFgvPcpq2elce/jWU4UIwIwG7ez9MS/MwzKnZcCvlSiH1hluL982VIL03\nc12rvlOM61AVow1OiuwhCI6Ir5no/D0u2ISZmwJqd9fPUaNQ8GT0129EJSDc\n4Rc+X4Xrw9IX+zKQQsHYjm86vGY3zltP7lQePQEcYQEd96UFOs13/OGXdsTO\ndQKyLNQkx6TZPffNXFZWmggRJ9wtYdH324xi7EW1XaWA2fIMcX3Ac9XNj0fb\noSzW\r\n=Ae5j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a2b37ac2e69fa90e7d1309f6616d5864981f1c25","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.535","@balena/jellyfish-worker":"^4.0.47","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.64"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.153_1618273770240_0.9293049191373188","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.154-renovate-non-major-994b2cbf653e18b5c1818849a420158179d34777":{"name":"@balena/jellyfish-test-harness","version":"1.1.154-renovate-non-major-994b2cbf653e18b5c1818849a420158179d34777","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.154-renovate-non-major-994b2cbf653e18b5c1818849a420158179d34777","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"92dc6d58357431025f605985d99ebeb051974f3b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.154-renovate-non-major-994b2cbf653e18b5c1818849a420158179d34777.tgz","fileCount":17,"integrity":"sha512-GvwHKR8RXB0EXL1D4nBJy7lkVXjBycPe0REMEqd556qdrmcmZHDmEAb4L22tIx2nfClZ2T+uizulHe/XQF9ZXA==","signatures":[{"sig":"MEUCIGyVZTeJ2KKrXq2iGgmJBHEoM3MMCmcD8nY9g/30lVhOAiEAw7CKUK+WxMWkTKZKmfjUnI6z1hBLPuZeUSlGCbPy+Ag=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52061,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdRMDCRA9TVsSAnZWagAAVZIP/jbn/IIWBSjvAk7MRoV0\ncs7kemSHdd5yS4l+4Bc/kzTGQQ31M3OYFxJ8irfPrLDYaKKv7COv7cUyD92Y\nW1mY7yRouBp+k5bZJu789OSAj+ngwRZQOMrBFosbnwHOXQhCSJVuAyYmDkNk\ng1kmBQ1b1ifmTQPMvnTNdmiJewNsA/mV/lXIXITMOPm+FeF5MT/2Ia4JhBdr\nj/9i6oKkGyhvW59Y+3wo7Btt4BJX7xNw9t8YY3mp4FYAA/tBd6nZYrSefM8d\n3HxKZcqzk2UJ0u12931LIu/Qb+zPVJvxAEhMuZ+5i7zAvAOha3E65/1uWRW4\nmtnRR2LqM+QZ3XHuoyuc0jvKfZYB3loKHhEIohU+t9ZUhkYJWp3hvmatx7jk\nWQZUikvsu5JZM7XkFUXJXt9JInotryvNkf3rbFb3ZnBtnqr73wkM7JJHI09x\nh5BVuR8+Xg4rEJ7bk4ZE8pTRBYbZjsK+zQneirINQcfX6VKEbOSKRg48NKyI\noRC3ju0Liv+HN0LjMFJ+rOZ821d/UWQI1lwPBLqfnRt1lPBwprB/GlVV8i+Y\nVeppt7MEFyyV2JVbu3a5E8fiSqATWMKTEeVfPYKThLrSBnibOx8L0ZNMTJ60\nm8m1igS+2hRlZNbVAA/C8ru9LMaPFWrOhaOeSDh/M5Liia26P2RmOb/0Yuj1\n/2l8\r\n=BXEo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"994b2cbf653e18b5c1818849a420158179d34777","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.536","@balena/jellyfish-worker":"^4.0.48","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.65"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.154-renovate-non-major-994b2cbf653e18b5c1818849a420158179d34777_1618285314387_0.0043236559961019605","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.154":{"name":"@balena/jellyfish-test-harness","version":"1.1.154","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.154","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"84429f9c56bbfe5f0f5042e02dc84228082caf2d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.154.tgz","fileCount":17,"integrity":"sha512-rwtU9r4DFuE7ag5mw2TQoj7qhfQzh7QX7AgiTCh/ccfDM5mXo3rXOFkpc8iWkhQzKqmfQwE2Pzyqr0KYYPnAjw==","signatures":[{"sig":"MEYCIQCGX2IlThTKIYgcRei3FB3/sVKJ4UsgufF287WCYPxRpwIhAOaz81E4zK7RlsXAPBtVdQN5woLXNMkxbjtelLCB0TDE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52001,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdRO9CRA9TVsSAnZWagAAeUMQAKSWJnhJaI+YkB4Hzcjq\n8nQYCuThzg0iwfTXQlPk4AfKjvyF/cufyfu7VnevSoUoT/Nc4RyxlZwtAc0R\nmI2e8xaiPwYSUM3E2/Mljocy9/t5SvDzmkC+f3YuMUoMoJenBVLbeJ827wbR\nCjYzxCJdbnuN1+e/eAUoqm1JpJ1lDomwKoyIeNF5yHn+Mx6Fd3k9bYolxswk\nQcvyrSYT8888hwBJUka2fzz7GSnoY2miKo4kaiuVfxy1EfEsEvKY0Up0hrRI\nzKqJJPLgt4VQ1JJJGvks6wTG4bptYrrqZEpirlC3YdxjCW0nkvHtRHjWljS3\n0Yx/00QovxyQQVblGBVL5qKatk+wrJYP6CzYPBrFZy/zDSyFrf3ffEURZzpk\nZYVl/+M+4rkHg7KyDqYkBxOXcLSQ0NrSHSw40qiW01fHhow+ihSsTGnMiEr7\nYex6JE26a3PN485wYazqoXN9j9GlrH24fpRwXZxqOJ48V9ULwSTQ/m20pg+8\nST7NfwKnG2SJkgw4+QRpJsBSu9aw8JndYVC0CcMms20t8qZHTIOZJmAFXq8G\naImAWXl5NJm/dvSkrf7qXkifG92lM48RdFcKUbIDkzn4Ustt2y+X5gVxMeJc\nM3Evj7cQI7X/QhrT201Y2Y7CbWPJOwOe1KJnsb5vLpSLyZkhUuQe29NpuLFb\nZLXI\r\n=PkRL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"65bc23267a7006a9015f62bc711398fa4feaf087","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.536","@balena/jellyfish-worker":"^4.0.48","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.65"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.154_1618285501112_0.8276231994939582","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.155-renovate-non-major-1f1452da838cba30eab25d4bffdc66853b8b0e9e":{"name":"@balena/jellyfish-test-harness","version":"1.1.155-renovate-non-major-1f1452da838cba30eab25d4bffdc66853b8b0e9e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.155-renovate-non-major-1f1452da838cba30eab25d4bffdc66853b8b0e9e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a6ae0964ff2fcfa6d44dfde9a50f717f553f1a37","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.155-renovate-non-major-1f1452da838cba30eab25d4bffdc66853b8b0e9e.tgz","fileCount":17,"integrity":"sha512-cNSNNQVC9fbm3ypH7ikVLnd9KYi6Fao/v/vq8hziWmri4kRZ6eKiD3kPAnv5qs91VX27mLhPwonHIuQ6kD91Iw==","signatures":[{"sig":"MEUCIQC7Bf7vPYpcPDYE7HwxwihvDO3MleSVEwLfmjx/a3OExQIgfFtPhVPCiN0IuxtPm35/uNcY0rXqbu0r8H4fBj6IqI8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52168,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdS7zCRA9TVsSAnZWagAAu+4P+gKpfHWhN+84qwfWppzT\nQ3SToE74OjBOwghrMO4NgGCWO3jJ5Wgyzji0lOvYMeaWfFGN3YEt2kMYM6IP\nn8DHjkkvomnUyd6rP4NaPMLY2DRe1Zs/28KA0lAzbfT17hTeMStzfrcYreup\n5MaQhDjVdumJeXR9ubFahraMobS1ScgMZ3X4gFbQEKPLsWcNYsiPLHzgpxU6\nmv+9zhElMYpCWnyzMpnid2C2NwibW5cCGq8ViDRxxnldkKRz+os6pSGt1R78\njHPjpUhwkzUphC63Huo4/QBypWR0i38nYfgrly1JFUekweHufaX05US5mwuq\n4TwiGpGiMSL+Ocg5Xn6/G3BOEl2cC1//3hVBqHoC1iVob3lcTrMZbGAM31f5\nDtW1AKbi4ITlFeFlMaWNKQ7nJcNtrWT1ubaUoejDZ6D2X9q1plJ7yhwFLG4h\n0ZNDI0ylbW8S4cjosPAgfQ777BQ5p5AxuhzOSh0mm5KVdT4252YsjOvce7Cv\nMh2Jka/jZGiDxg9UXI08v+wE58pDsu2bRwz2YeRvguLgiYSPJWV/jWZ1NIp2\nGUNe5vDEqgHqZzHuls2Gehoc8Abx/b/mpCVrvFkhTxMx57U0dyCT98lOFy1Y\nnSVnAwdFcCSzj26bqKLkPLpAkP5fMV7ih7cVUaojkIwT/jmHZ81r4hWcgeFi\nWJwl\r\n=2U0U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f1452da838cba30eab25d4bffdc66853b8b0e9e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.536","@balena/jellyfish-worker":"^4.0.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.65"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.155-renovate-non-major-1f1452da838cba30eab25d4bffdc66853b8b0e9e_1618292466530_0.3926846464114464","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.155":{"name":"@balena/jellyfish-test-harness","version":"1.1.155","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.155","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"baceb96e8f7f263393a2e0cb781bb76f4d9e759c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.155.tgz","fileCount":17,"integrity":"sha512-KM8YVHKdxFSZOucPUyzTcSUw5IkhovBbvBK/iRJjaFsfxbdS5FnnpHGfpmGneP777CwZYMHbr2LfGuTG+m0p/w==","signatures":[{"sig":"MEYCIQDWQQwQse7UqRg/FUlyiyVsQNR+BRof3NOwjEfruXAjDAIhANEPQ2Yy7nyfvE4tMjM5esTQ8JuC9U1uJoB0AQu1Us0F","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52108,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdS+1CRA9TVsSAnZWagAAPV4QAIVubDKT4r3yAr4WYNtg\nP4axBi52OVONm3AtvyZTKTc531hV4FKETZZv55NbxQxATnNSVL+jzGUgV2+w\n79CQ6W7idRi0NzquQ8oWxTNR0yixzO6ZYjz9bwAb7h+BTso/nwF4PLyI6Awp\nQe09SG5jKTmrnM7GDxEDihlX3lPSnxIaBR14n6ayyOahmuOPBgH5poyyHaew\nPEs8NtNdjo1rIk4MRuWbQNCC0wRzwZxxf3NsJdBLMK28bVnFLfP4bb1dkjHq\nnstO/w/JY8i7Mqk4+fxdF/noWyr9SC0u5lWsInz93A9m8S8lI1H62mNffXB/\nwwgZoYSiZEikCx993J8f0bwcoOsAFxIutwg2j3IrNtKhhDACQe+OoZT5YRQq\nAUDgRUNX0BtjAHKS/TmjoYYpQzKWMA45tyeymf1bE8tP795+8J4a1gJNJWgP\neBnowAKMvzydSLF8cyWC70Fr4piORx3JIvvdp64j4vV7/sCwvo36R+2VZ9yx\nPO8XbrdJZYrpGuf41AJ0wL72Ti4+XDsaxxQAVxzIGovWh0l/QglvKw5xPlA/\nb4Q92D2Qz/SY5/RLHR8rcOFwMoFhiZtJ40c9xV+XgdIaHVLK66yRq4dYBUtR\nNsaPmh87ASuoGAZswC1N7TNvbaHg65rCKnO1ZB+U5wRQRW346RVyoKTK/5uz\nBiy3\r\n=A0Vn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"502b9c49ed7481b5ac406c4b18aa5c96ec2247aa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.536","@balena/jellyfish-worker":"^4.0.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.65"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.155_1618292661022_0.45089760516041677","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.156-renovate-non-major-b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d":{"name":"@balena/jellyfish-test-harness","version":"1.1.156-renovate-non-major-b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.156-renovate-non-major-b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f0672e02ae7f361a4808c06e32f2de6c9c456d03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.156-renovate-non-major-b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d.tgz","fileCount":17,"integrity":"sha512-BAz++Z5D4Br9w9a4UG6NxnVOf3OllcMBIn5vrg24Gh6D0S38Qvqs7uJ8ptuQ0WIPArjN3WbY7Ep2I3i3WWVaBg==","signatures":[{"sig":"MEYCIQDHbJCdOhsqgXxMm5p0xdQeTuYPSSoK27v257TaDwxQFwIhAJuzv2ceKuejPBI6uAwcwQpiGlmUDjLka2ZDbUOlppnY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52280,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdTEdCRA9TVsSAnZWagAAiuAP+gPdx3oPEdOoPdQUUf+q\nm7J+sUhB02IKMnT0J4T9fPpQP16sLclPn2lptNc4D9ouGVoQP7e6xGyLoMSG\n0LI8v7hAu0zeUIlEhKkqs2+LKqLURFqcgbCULNfZhKugeGFuQgI5kQP9jS9F\nEECwtZUF9/iDOQ3D450D+rbdA4VrM9NScEhpcljcwG3+61oouHrtHrRhZLcR\nzLswuTDXMoGOIcrt8gMgHcXHoKncOQAnPpI3LUZ8gIci3ufH33rurxHtdoyb\n7wJMgpkr/u2BWc5VvnA5tLU6gpBLVRD/SLvxMaPDSa/XDGoP8SnkuwC3NWg/\nKtsghnHhk447xz+onUu76y3MJip3imuBcbI7zGIzTQ17xdFYqJQ859C6yD/K\njeHa8xYl5hniOfNDS8uNRZEnDp5nBbhVGmyoxj0GHMYtqOkX3xoJwTKIz/E3\nrTwZohV/sGBfgIPCz3pvi+FNsOUhm8cS5GoY40UybNBiJ3BDSsUuys++zmyn\nyjJjji08AY1ITwkfFkAkvOhb9+lDQdxdoDW8QI2hY1ANx8jp+6zb2NT1DIeY\nHg3S4jIsWyYHREH4bdALEABFiVe+ilX0JvTiEFwFBDBkTN+h5vkga/3/jz7e\njMnBWcKmBB145K8f2kOnAUM02AkytqM4MLEhOeurDIJaiBkqbgPaMWdQLRLE\n3Vtf\r\n=ZBMW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.536","@balena/jellyfish-worker":"^4.0.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.66"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.156-renovate-non-major-b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d_1618293020999_0.7081362949274144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.156":{"name":"@balena/jellyfish-test-harness","version":"1.1.156","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.156","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"668b8956b602d23ad92370529c8aef395677abfa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.156.tgz","fileCount":17,"integrity":"sha512-RkRRrm3nbmbuHpDvzKggOJ3c24lpVD5k5Uhc9Eeue96uScjPyMOfiO1uLbvCuKD4twz8TUq1kTKesIi4m3iT8g==","signatures":[{"sig":"MEQCIFrwfgUPd5K6sBxy57taccGrlbfRXeYeUeVFalc26w0IAiBSbe0Huou7Jfo009nN6pbcr98JvG4bsHcBmxT2jMN5kw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdTJFCRA9TVsSAnZWagAAxfsP/3Zpqo7KMY0wuAMsONTZ\nZjATwCVlzqHeAbsiuFSQvM+i/ng6bM4/HCWivy9ZM2+vktx0fFy9pGPf62j/\nHMs0NtHbv81RnZiWO8UXtKDPPk6GoaZ4ph52XARTsSX7lj7qbU5IA8xswZSt\nAq2H/JIOTAKQwQrfbblL04BZenmEkMxPLjqoKP/k0bVDedxeF2278Zrz1cMI\nyzxrEfNyUV1bSRXLsbbs8YK5/JFNRJf4HM/vRO2Ob8sEW1FC8s6Yg/umxYKB\nUDPb621rVnzAo8X5L0vG6c2I0hiOI5DGoUvG7ExTMziRCvN4gsgfGSNWirH2\n+7fl1163phfnLq22aIns+UzXGoLZ7ol1RcrYq91GSV8Gk2+Wmu6EUY/OhfuL\nkSlNAe0LNnH42hVeWB9B5+KSrkqJPiU/Swor4Glcfpn+5Y8K/r2xtQ3f0xZA\nuL2cdUo+yTy+LaAC7hoRxyNhEkRAqWIortPVlJqKoUKC7FSfVOrflVIXHrGC\nvT7Zl8GrfYd7djcjxUzW++MPNXT2c7Swx+w7qQO0Tsg0LhWmtVaalW3PHAgp\nFS+Ne9334LIZOsarFM1YwoZ8/R8Dge5SpJdjLE9Hn3D4eaQ5Hm5BSk8HSCVI\n+NPscwWA6EiVU2U+YaAWq8Oo3r3AeadI2PK4AIlA5JBjktVBQGCk+7bD/8Fq\n9NIN\r\n=CmqZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4cd6922f4687eeeef5af88655ad61daa683fc6be","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.85","@balena/jellyfish-queue":"0.0.536","@balena/jellyfish-worker":"^4.0.49","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.66"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.156_1618293316673_0.9183950330706259","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.157-renovate-non-major-a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f":{"name":"@balena/jellyfish-test-harness","version":"1.1.157-renovate-non-major-a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.157-renovate-non-major-a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d29b199687b86b9f0d455f5744180a8451be5ce9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.157-renovate-non-major-a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f.tgz","fileCount":17,"integrity":"sha512-c8l7Uj5JkbHXZ50VQU29sTXQb1fGtR1nr5YguVKysoFZ5RG9wkN6Ov9ArmvhY814X6NHZRtxt8kC3S7ypS0X8A==","signatures":[{"sig":"MEYCIQCLGcM1SD4flT/uOZKgjVort445yuCxJcDyD31rJeZpxgIhAJGaqQCLa8nFi6WU/c4fFQy6l/35Baa4vPBK8BeOjKPB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdVoMCRA9TVsSAnZWagAAKwEP/3brO8q8nBRdVD3OqnLV\n+8bTJPwV1qhN1W40wdgJ8fmtqlr5L7nP52VzneUkz6ZF5MBoGdYDzgnpKe1c\n/I8tPfdRRQzzH7uEPhDmEZHp4xUkp+CBQ54jFBCJUf8LluPmw5KnZ6UoFY/o\nfyowIkruLttSVi2F3xDSt6JprVH/dmj0VDNB1QeckfwxgZ1FxhnjqoHeG6he\nJxxBaBImrmAZwQEOQbqqDkoaMgotRCRvpNfBjYHs1kGmOaWBl24tnuTs7m+N\nUEHuwXayfjJAB7q+V9KymKfqHWic8kZe6uyuEUP1UNrCDUIy2RXR5tfATG93\n5Fsyh95aLPZjVXNA2a26xnzY9m1RvKX4112orsEwMhAIiPE+qAkVy8MpQN/c\nJNukjjl22gaYRGRu042r41bFliQMgjgR0syGmCnAexf2YglviJeJmTcJhJQ0\njwO5MlddgiRo2yh9qkik3NqVAHODEKvNTEE6k+8yxHivZ4y6fbZ1r0ncp+bN\nh49jgSWRZg+Z9Lzd5DqdOWi8rnqq5gr8w6zlWFarNEBkTuONwwy+Qh/1O39o\nc6XvdtmJ+JPAaeGVMyUvqbxLlZJpXzb3eMboWB+Lu8Nui/p/Ldzppe7UOOQx\nAflo8cEAkN8Nu2VX/tRK2OfcEG5G5TXJt6NelEjZ4/8ybGI/hDaQkOkbPUIJ\nBTEP\r\n=2VYf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.86","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.66"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.157-renovate-non-major-a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f_1618303499829_0.4130593370542446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.157":{"name":"@balena/jellyfish-test-harness","version":"1.1.157","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.157","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d02bd21cdbfe2793deb8b004b10ebc832954b794","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.157.tgz","fileCount":17,"integrity":"sha512-QXVcm5fpw7dVRTRl4fAmdWb0r9aZH+GVrtnnNjuZAsiZDtGgKKte4cbgRIJNt3yIKehBe+GRWDofmoTjgOqwQA==","signatures":[{"sig":"MEQCIAPKUf4Ui9vUMfPZgBVuUdTskVEgR/dGr8InfX+T6reeAiBf5xKmQk9ychtHaFjuvQVFWlk2yz5gu5Yw91K58GfbAA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52290,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdVsSCRA9TVsSAnZWagAAmSsP/j44vIUahKpq+AZwV8Av\nToZViwQbSfHyOeLcWiPKVrUySIcd6G+rCLQGYdU97WSEqQ+5BMhSgS07nYf/\nsoh8pMAqhpZf3igNQOwXusWDNapUPrRz1ATsC3TrtdDWMWVDrjtp/KvKqcWu\n4ki0BLG0px63VgJLzlmi0Lh576BFlXqXZDVMusUmZ01t8Q2ZmBLcCejJi3zF\neAZoeuXWlqMXDDNWVMYdVWdBQvVJD25Jt1mNj6ERvqMr5vn7j/8aJyJiRQJd\nOuzhUTx2rgf0LoefyXbjvN6NpIQFOT9kKBr91+BtJMWrWxSN/qC/G4w6Svtt\nrE0VZ3FksSFFzYZSm2ax0lnL7ZKcSM2UO/7GE8NNsDyNSv4fQkBHMt/j/FEX\n2IAG0Sn42MxfDlbULEY4Go7mu4WRvj9mPvNDsHFW8/D6YPBCNMhKVh69US7D\nxKERHSCq7NP0sHRxiGNJRCULNgq3j9dB9fZMsbUP0OtGX0eyng0G9Q5wfiBL\nWM2Ik9GM5PXJIg5G5KoVXqlZOFM58sB5HUA3a0POhBuCe8Bxp0LhwORtDGY8\nS3AwhBLW8qWdiIRHqtw2f7RVTgo7K2dXcBZzBE/bPgXReUC1NwJeyqpFw6ze\n7dQ1i3oYQ1S8k36sfX7mvN/fyfBO52OA4e4mLBr/5HFJo3vWtvcD7MF0xB8m\nS3PL\r\n=0pKh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f488abe1d20a2dd8b1c121ba38705a6cb24fb813","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.68","@balena/jellyfish-sync":"^5.2.86","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.66"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.157_1618303762034_0.9880004558594864","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.158-renovate-non-major-2df86322da89cc85acc4db136daceb73f0060d6b":{"name":"@balena/jellyfish-test-harness","version":"1.1.158-renovate-non-major-2df86322da89cc85acc4db136daceb73f0060d6b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.158-renovate-non-major-2df86322da89cc85acc4db136daceb73f0060d6b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"06383d297474312f905ee21a25427aad9f05c86c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.158-renovate-non-major-2df86322da89cc85acc4db136daceb73f0060d6b.tgz","fileCount":17,"integrity":"sha512-gIrkUzcojKxq5ADRzKu/4GBab79KrKvQs5zUzkq1HoJB+N/H3witewcI9MPIgakG82RwYCGQK1+j4xlPLHnEfg==","signatures":[{"sig":"MEUCIEXsz/nejRnhQA3dxf2W8acHx7p7Wv6o3jrlGPQsLFbkAiEA4LRjFWoLum4smdCK311z4QKjagDgWiufscMg7I3Wyzk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52420,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdXOUCRA9TVsSAnZWagAAilcP/3lmUq3Y+JbfR/YCbOP1\nQmTKweB/jUvta6GS67a92kDXmpDB6nNmihGeTy1fm+aHKszd1GwPiapdXm5p\njVL43h+w4UHz5WVlP1UkUiW7rvgE+uX2H/BOYKM3dQ7XecUozScDS7GLFErT\n4hVsSXrTHNBCvCJLvlp1E0rcKDc3q6sfIEoL5YlbmPTnt1zwqLj/PEcrexRN\ntpez2cTgLAqoOsvBdoE1QaZMVeKlsaYtcBZZVjKpHpky27FrcsnKT+11SeOn\n+aEpHf0QDmIAhlLe1rM2PbDqI/7xfQIL6ewd1RcR5qC5oCrNKIC5Z5h1KUZN\nhEdzekGzjD6AVaOakVnHgAQGQnE5RP3UaIUe/H1GeIp2QOg230SBEiVzKEkK\nWfHDz91OPxJyWNgCkMbXQWTpu7h49Z6xd7ANlL7P7dAFaEO9ifyCgqt2mXP/\nHf+geYUDeSYN0fQj4YrK9x2fdpITRc1T7gfebcGqDKuM3icBbxEfkcOHbCJG\nNg5SqEa12EzfbxiPotZQpxa8l0jm0CFU0B7s3iHQQzHTqU+o/CGLwmmtCRBf\nOhuEb6vjahXm9AVhGqe00Orhf58bx8A2zw2RjylAV0NWbsorBGjaXiGGB+b2\nwIWs3uQUSKZp9lOf+GBygV+M96Qj79hBkzm1KV2fukUh90FY5se/0FaMGoKQ\n4ArA\r\n=6+0k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2df86322da89cc85acc4db136daceb73f0060d6b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.69","@balena/jellyfish-sync":"^5.2.86","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.158-renovate-non-major-2df86322da89cc85acc4db136daceb73f0060d6b_1618310035951_0.4241335217139952","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.158-renovate-non-major-8393ac8c1aba3f08041129f5d1086ef1c01ffb12":{"name":"@balena/jellyfish-test-harness","version":"1.1.158-renovate-non-major-8393ac8c1aba3f08041129f5d1086ef1c01ffb12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.158-renovate-non-major-8393ac8c1aba3f08041129f5d1086ef1c01ffb12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d19606c2b762a0e1cc25708f1b3d998e17205c39","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.158-renovate-non-major-8393ac8c1aba3f08041129f5d1086ef1c01ffb12.tgz","fileCount":17,"integrity":"sha512-Q/NYYNt97r+JKt34uWuRfXbfahoIDS/y8mGLMiQTN0yYOPK7VhgUgrBk+Y7N7MCiNawwm4CzjoM5itIM7iyKxg==","signatures":[{"sig":"MEUCIQClClra7cEFLIPWDe21GGiZWdpN3XytL2wdwPjDBiw49wIgIpBI9xOui2jyKRH1TiLIRck+2jwsrv4Yjv4z6MmNZTE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52420,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdXTvCRA9TVsSAnZWagAAfBQP/igIJSMUBtScODG5C0lm\nfH3Mr0OkXKgqABZsgNdv8KK/wfe3m1JryZjIyYQa4gGPeWt3/GgcZFpPCTKD\n9YuOy8Tz4UfuRxb2Dsh7AWHSHXeDbtw04ipielHXwdosvr3527la68t0nmN2\nos/j+7yqrbJlQFyRGbau8HKlqqBzVSDLdnEh69x98qvMeJ/rFhLobdKfLr4I\n4raZCzbIOc36VRY1AsBFR4UqamFxIWvcdcU+YOTPoZld3XPLxuKcSP1IzTRn\n2B716wJqYunWVdVFODBygUchSouTxHA3oH+oHkyZ0trbDUY9gBAXWn8Fv3no\ntXsgb5qUkebMwCRIibPGxRfhf2HR3cpWGgrLkBFWefNU2X7QdLbyyZUrEegl\nholL3CJ8gnlCaFad0GQfSfowj/0peTwU7j1pyufD4zO0H3drHWCjLTISaWyW\nKI07eAMHd5b0Du2yjOy19iDiA5HvLqU1Fo0NHB7VB9L6+e14UOCSe6Sdw+J+\nFS6GQZr/TeKuh/1a5+34TdKb3C0x0b7Cg+N12YKAknXJ8s+58gSriNUOlSqd\nA8fMVwY+BKTbBeYEUDKlgsyCcqUBlYXEhsU50YMNL0lPyn/LL8r4nWCVBAPs\neme6tYnpNsq3pNlI5/ey4EPzw+WEqN7lUM9WuoXKGjhQ0+BVVe8nfN3Flmv+\nQYiY\r\n=Qnvd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8393ac8c1aba3f08041129f5d1086ef1c01ffb12","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.69","@balena/jellyfish-sync":"^5.2.87","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.158-renovate-non-major-8393ac8c1aba3f08041129f5d1086ef1c01ffb12_1618310382803_0.6595905697729592","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.158":{"name":"@balena/jellyfish-test-harness","version":"1.1.158","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.158","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"90aac1ca1921c7750de679b04ff90ef89321a8ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.158.tgz","fileCount":17,"integrity":"sha512-YpQq5JR+fSD2Jinn5cSn0Cslk7LIWydz1f1DF9kyVb+W9qvgNHX9blpHzVfIaXGEks4GaeTD6GmBu/DoFeGVOQ==","signatures":[{"sig":"MEQCIG0JTWqk9mgxMxzLHGE6fgByulpMBDFkPC3GNdidCdpSAiBeeehmlwO0iqSMTExVwgWc1zTYASZFjKsh7iBPSuip+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52360,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdXWqCRA9TVsSAnZWagAAZ08P/Rmf8Tr5L0gWkaHrD9Ai\n/wPzjfNjkka8Kmb8pPqy2u8kNmlGNEDZqAhxBWx2270BhQ//hOF2zfEwki1J\ngPJ/eqn0kt3vcAFYigzJw8iX0Ex36vJqUxNnOxVYzFkddy09La1OdtnmA3Ll\nw6lPQtb6AAyT5mweZycs8xRn823sU3AWbVBtPm8L6oUqpAIlEHzr0eYxjmEW\n3yIgT2AmHvHaC4JeRrJt9QyQ0y1aqAYRTN8bqBz9EQsmLRfJ4SoYWm9ZcIJA\ns1E3+wJeJ1g+yK95F2Nv3jpPQncz4rYaY/y+3awXaoyYycexbuFDTyzQ8IXN\nd6RpO7e4Gmpay7N2lwxSDldE/oH66wFPQGKegw1s3ExwhIxFh5M/Vb6XQTfS\n/om1vrmP5Y9fkgi82u3pwTMoIpQLC3MnRdqlA/owSuXateU7gchxtq9phRZf\npS/RJlK9ZS+03lje0r/3ThpHW/lN+y1JJMRACx7bf4D/zSn12l/3pkMpyIQq\nMOGp8gWyrEB/BEKgyD4vDRtWBz5U9aiCMjheikEIKC3+pRqdK9H+lPj868I4\n0dyjnME0qrQD1AOKtY7saWloZNKH55O4DsCceUS14c74/D2TLljvPJn1jnvo\n3wyMn65pFzcmPYC4Pdy/lgFLO7D9/hbKCYP/R+QHYgI5lA6pqn8ApgHoRcVm\nd7Vs\r\n=8IJc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c4aae00ce97850a0fc57e86f59d0a997a62e44b1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.69","@balena/jellyfish-sync":"^5.2.87","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.158_1618310569779_0.19532310321294655","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.159-renovate-non-major-e44c53666453de5771457d697eb5b9b8356ff78a":{"name":"@balena/jellyfish-test-harness","version":"1.1.159-renovate-non-major-e44c53666453de5771457d697eb5b9b8356ff78a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.159-renovate-non-major-e44c53666453de5771457d697eb5b9b8356ff78a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f26a4f330c503dca0be084be790b1b976f88dc6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.159-renovate-non-major-e44c53666453de5771457d697eb5b9b8356ff78a.tgz","fileCount":17,"integrity":"sha512-HojBCJ35bpmysCNksiK5FYsURoPku0KcA5Vz7NMzQsqNB+ttD3ey1cQPwdr389Pu8fRIVAANh88BGMxpF/QsWw==","signatures":[{"sig":"MEUCIQD6kO5fRY42cScqodvjRK5+ZUezv+4RoQRj1M9wi17pdgIgQLcvdzeJFmgWTWqB/lBZOnmbYzHW2a3leItuo4ppS0w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdZAaCRA9TVsSAnZWagAAsSoP/RTjHmS8GYZXaxwe+LDK\nOCSeefNULiSJMb+WC1FTxaSNxPx40KHRgGEwuKLyve23qzy+wknoxf6TBCZ6\nvjTNybd4LegPP4i45hta/GQK4EI9TkS4i9taA2L2Ox14tOcgvJrxPUI6YOAK\n3cEBB74Sh7CsfZdoFZ6ERERtbC82BJ2BJ2TpgPPY31mb+Ar3OcaIaQJoCZg5\nYOUBPdxMblre8W45MwmG37TOXY972yqIEDRJR1sqAAuMDMTPcEy5LKOaxWCO\nwQuubXTB7SIyMbnNRjAu9dZHRQBiwscHHhkRBdCIDIZFxKaXwrKqr0qkZfvv\n+zdrTrHWrhsp0US/ItuFTQNEKWajpLmTPK/Q8PuHXH6Iy+qycY9MS9H0ctj/\n1M+qCyEGRTqyK6vJZ60ze0uhRhM0imGanow+oW8bKUhHib0QkgsGQhIVFFgY\n2e4nuxRT58qhZ+Vi6ZzMq+SIpog5I7vFMPRxAeKt9IaBok4oCuCY2qjaTgQw\nnzLugWAOKpfihxz2Ohf3u4kxBVslJ+yKqzhcp5lnCKc/UGCrLPY/0xnkzfRC\nd3CYaDDFCID0WzfbEOoqL9ixfcTMbiWQ0zT4qgpLzXdb8HoZ/7YC6eMNdj13\nsP6+UJeZ+m7KGxWegZka9XrnK9N5FYY5VUoULTA6jurlSw+1DqGie91Ms5+6\nI39i\r\n=dg4T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e44c53666453de5771457d697eb5b9b8356ff78a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.70","@balena/jellyfish-sync":"^5.2.87","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.159-renovate-non-major-e44c53666453de5771457d697eb5b9b8356ff78a_1618317337762_0.33572189802299257","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.159":{"name":"@balena/jellyfish-test-harness","version":"1.1.159","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.159","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c2bef9e280dbedfadf1f673dbdc78880afae5ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.159.tgz","fileCount":17,"integrity":"sha512-5sBk0xDwWqXjW/4ADnl1VUHcGYybPKLwQM9lXTEuG/Eyl9Q4C5lqlUoItD8L0Iqn4zdacX6rTzxVY9ppIcTSMA==","signatures":[{"sig":"MEQCIFlfWGQ95RWeEQ2mZK6VQBmOcNX3VeDLtxxUI4xuG73aAiAVF1VvqoxZjCY6lWT67if4cbhYSPrWWYnnkr/F96OzGw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52466,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdZDxCRA9TVsSAnZWagAAtzAP/0gsdkDScc17LrdQVtdm\np8EVOj6MrkKpoAK+yTOjOJJP+hglPUISnq45YTRHkEQ7Ji6bXECgE3HVlWNx\nFIcOnTOomY+hGKIZfLq2SucDcyHsFD3Dt/KfohHpYRNHK8bpXyGoKb4+t5rK\no+I8HQfyv0k6FCvzK4k+Xmu4f7f4yRmnKjQ2g8pa+kGqYYHmFdmq6saBMom+\niMvjYess5qR2JoQOZyz58Z4g+tCRJHcfv3GY+sJrzi1RUCS57ls3i/f/qMMG\nEF7z8xmXCXaTdWS5v1egbOMwOGURxthC3+cG2OUp1CP/tqT6GowfDLWt3FkX\n9tc4k0uTqDu60TRV+iJwuK6KR4YbPF+TqKZA96vpnFdLR1t8gDoEF8ovu5RY\n71Qs317SGbORdJxixE8exwvWDlpBfI5rFbbPBraKS14abcRkf2jJ6qtDTPqS\n308qXXKSEVSStHSia26T19mxAPdpbW595JfdDhjfcB2Hdhj9nB19SOByCIFe\nHEy7uFf4TGWDIgytChAOPAw3L6VXIixZho5t1LBDRsiYXcoSY/zccAKXX5u6\nbZmsjOakAsUUK7Ot70GQCEstfXHYJ3cTMp0dLD8JFjowf8Q4r0uDFMj0i4xU\nsxnD9DL9VPzeUF8OUOiqqHF3KLjCSjC4swU13a4YJctvtPPNi57TDWgdDs70\nv04Z\r\n=DK8v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d18b6ebe632ea460ca0db17c0cc071863e80e9b1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.70","@balena/jellyfish-sync":"^5.2.87","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.159_1618317552780_0.10846308668024984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.160-renovate-non-major-b939d5c3d9a25f7023f744000e3af74283e01497":{"name":"@balena/jellyfish-test-harness","version":"1.1.160-renovate-non-major-b939d5c3d9a25f7023f744000e3af74283e01497","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.160-renovate-non-major-b939d5c3d9a25f7023f744000e3af74283e01497","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f1e51e4b0c524a1d54f81bdb95f3b5cd7c895ce","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.160-renovate-non-major-b939d5c3d9a25f7023f744000e3af74283e01497.tgz","fileCount":17,"integrity":"sha512-sjPYWOkqHI45k22g4Py/68lc6huF4T1dJEPAbedMKDx3q9Ofj1iSOKNUdFphFndEvCTj42rgaBD6SQbPwLliVQ==","signatures":[{"sig":"MEQCIDh6/plYwQjhu789RF5Smn6UgsGfqbSFUQ70P/0CgUd+AiA0KPXFdXVmG9eufhHNOVo70nAQeqNQCwdJVNWLSAqMOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdergCRA9TVsSAnZWagAAMPMP/1rtNbUOmDTFjAYsOIgH\nEpJhcUGDOLMQnrBbHFavIz/POOy7JmPnKLpevIxWNuTjvOfh11MUEtXK2EpG\n9L1T9peUlb1HDHp25k6z9aMf3mTAYwX4iO586Vve83svtHid2q11OVBbOA4Q\nhcUS4TFz3QyB0/S/n3NuuCoeB6g+k1SP+GCyp+/kB/WMxzoxmj1jiaG+MRzH\n39A6Z0rA6ieQPzxjxinY8yCy7yYLw/Ny3Pm7aegx2Z4smJCWkBrWmf3fqBgK\nmCOslAFCTsv069Q07bLJYhx0lWWCVreuz7MDfvjpvenpatGbS5UgGSFRGJjo\ny30c9jwOn21o3SvSooBBcdh7hRZ9EqROKYUKWqfGXmZ13pRGJEZhyEg+EzT4\nYzYNZhTQUg+GvZg4/o61qYmZjsc8rUZg5qK4iHZEE3KWyolUx836gKIz1AnF\nZUz10yXbyehT3FfnMWx6Ifa3gvCsLz9+OKuQWWbPs3euvIciJ5NNHdDyXXnG\n2Zt5lYzrnJ2nGOBCL1bXLTHl8eQJocYnsLyzDDLSOarkd6ahIxxxY7gfBQZH\nbSgTfM6uYnWvB1702MQKBpnWzSQ9FkKzaB1LvllVVTZvaNtH+jHLkr74z8U0\ntjJFGQurH0qlDNXgL7R5PdmT6Ggu8dcKCyPiIdV/N2JIej0mWUYzLzvfkfjn\n3TtM\r\n=4FXl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b939d5c3d9a25f7023f744000e3af74283e01497","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.71","@balena/jellyfish-sync":"^5.2.87","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.160-renovate-non-major-b939d5c3d9a25f7023f744000e3af74283e01497_1618340575589_0.17581951686032826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.160":{"name":"@balena/jellyfish-test-harness","version":"1.1.160","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.160","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8359584fcefd5434c67233dd520b1c235d93e983","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.160.tgz","fileCount":17,"integrity":"sha512-GKiPq9ztgs/oc/PlTKkDJBxVxeXYSPVhBp32f1m5G6c6KlqFMVIHx+3S4ru1g5DCeLQNLFLEbRiyZsr7Fp1CZQ==","signatures":[{"sig":"MEUCIAlSItAOSRMFzumkU/PGhM/lqw/ipOEaG/lb4AmWRa/NAiEAmC3ueZy2d3nd4CjEI8caF8OIoRN+B22yPEvf/C1DqNY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52572,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdeujCRA9TVsSAnZWagAAknkP/2DRm3JlVwS+8sSv40pf\nFiYmS53sGU4hvbftCzEKziCqnNbMp/VD2b72S3LjddTL6h5pDga5bcrj8uD0\nlDQ8mSe+CCNQ0cfOUOc3QxvVe/dcyIeYSvWxCrs09cJh0I4Avt6WMnpaR1hH\nNEcgzqppAhr1ZT3Sk2VA96+dPqI1mGrOixbJRgGwcb8Gw5vbyU6gEUhaqHb+\nfowXRpxrVsXuB7m09X7GnPRJZfXh+OmEK3I9XJsXFxBz0PZvCUQnWBjdgyAy\nC5zlsW1qUBbE9XES5bMqe84fU8QEZUSr2RVaDIMWv1AMiggkFJzTHD+RJ79G\nConp09g0Y2A/BGcAOJUPxfpIQFVQzXkbeY1oNC4FhKne4azCbZYJcPgHpJ2H\ntrur7R7wy8uOu29cKTfEpqc1Ns0vhtJRaALSyxkrg8TDGUqShlVZZgpwiA/L\nm42iPiQyaEhc05r6fRS159YHU8bRzC5zNSPoY8OaivoH55ZZINKHcAT/58iL\ngj2ZRG7Stl4VYh+mn3j/FaG//E7lbqQVaWtNkrjJTsDqe6hTtwoQ49E/A4Te\nk7oCO+RA3SyjRDDOmtGGiHvLn2QmGpKa2jnUKc28b544Wf/a2lt6hrTvS7/o\nR39jIJ10BG6HFV9i8lm8om68MxB05hTpDwtK5YWWLHhm+C3iPGvDOShe/xCU\nTwJb\r\n=r2/9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b4ab7d7404e0aa467aa1a40d0b216fbf177fb97","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.71","@balena/jellyfish-sync":"^5.2.87","@balena/jellyfish-queue":"0.0.537","@balena/jellyfish-worker":"^4.0.50","@balena/jellyfish-environment":"^4.1.1","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.160_1618340771111_0.7081549478301974","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.161-renovate-non-major-937f7482914a9a6d496d617ab63cda11b6ac81e7":{"name":"@balena/jellyfish-test-harness","version":"1.1.161-renovate-non-major-937f7482914a9a6d496d617ab63cda11b6ac81e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.161-renovate-non-major-937f7482914a9a6d496d617ab63cda11b6ac81e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81a4210496e7e62aff1c2dc1dd0d5a7e37c6ad33","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.161-renovate-non-major-937f7482914a9a6d496d617ab63cda11b6ac81e7.tgz","fileCount":17,"integrity":"sha512-sd/nVIwdxKgzm47K+CZWLuwBk6nmO5QvVsnmzXdU4scoaD3neC7oLH5MxTqm57BJiEHZVrkYe7Nx3502oBNdFg==","signatures":[{"sig":"MEYCIQD4MEgrOTAMDM+xqkRhNhCgsfjrWxaVgW6YCV13rfqcFgIhAK9oAfptF7TBH1UErh1WWUnciz7EQLp2VS1jICC0KbLr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdlLOCRA9TVsSAnZWagAAQOEP/0JYdJ2iEK0jBTuvbn+A\noKWKG8u3EAyjmHKHiU16HibD8G0w2VeLd5ZgHl1Ov4nZW0k+ypOaGKXvDG5j\n0O0W1SpDXRvXm0uw8AsmTQfWpI8L0dgvnCnQeph6FmYsC+90q2di2pxXrzAn\nXqmAfiNnNOQ0XKUZze7XaSQbKwMeX8RzGZO+8NKzUYhyfV67tNCPF/mgx7Bh\nZ+j8TlistSepXEIP0PiaTd07zDMXEXk/rDkulK1hZai2f31cRHBoPGInT0Wl\n/0EzZ/EVFTIe9dbZVcDoQNbTb0x+eP1U7HEfLtHizlxg1nJ9Wr+9Mc68K2LN\n7w/4PjgyGoxgv4ZnwlUo0K+NqlHWS+KV0gJLG3shKDlixJ4holPya1NmZaNR\nhRWL/XCeBYPGjSR+/WUfarznSONwwX43d7XUsO2DAqJBGBFGIaGcFdc1fDV2\nOzYlrEpADmdk4HgGbWXivqz7BoscW4HrIZuhg7WstOz5RrO8LlHtGRt2Wgto\nytDrnZ0jfebeNvXSZwATOQfL4IXgfGFHni9j+QW2ozHi3mIai2TikeNpg7yD\nLoej4UW51LdXacPwIGleuErw1ou64NLlwTng3BtN9nofdJp5+OIZpHTsmQVA\n/ty4NiMVxMO4Smsx5Im0FfLUhvSUY6c2n7sW3HDTUQHbBbxIJeVW7UfeaGlp\nnYCV\r\n=ho3j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"937f7482914a9a6d496d617ab63cda11b6ac81e7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.71","@balena/jellyfish-sync":"^5.2.88","@balena/jellyfish-queue":"0.0.538","@balena/jellyfish-worker":"^4.0.52","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.161-renovate-non-major-937f7482914a9a6d496d617ab63cda11b6ac81e7_1618367181941_0.9954935178704241","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.161":{"name":"@balena/jellyfish-test-harness","version":"1.1.161","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.161","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b0bae98346f8aabf23cb9ac717c07a92bf308c0e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.161.tgz","fileCount":17,"integrity":"sha512-KO4i+QmydZHER8OiJ7TS7MPbzRpcDg+JaSK7skhW8bwV6oOQM97DvIK4H9ZURYx1jWwlmDsxhW/qCfr8zRQOZQ==","signatures":[{"sig":"MEUCIAuih/eFqI+pX6tiPgFx1BJDVyVQvUbnp10cV+49aHJkAiEArJXmHVTmyWdeD5IP3QyOsgyNJMDHfplXj2Hw7K5uOLE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52642,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdlOaCRA9TVsSAnZWagAA04sQAI8KQtc1MH5YVJZ2WEig\nlkWEIHt/vQg9tIo8aSvHsgwrAYFKHjglLxjp643IXl8TL+1IT86Iny8NX3/L\n7IzV58a62bI7SRQ8U2RwH+7FwYt++PSylq3xf5xg5ys/QyTAGojc7bBLaW9f\nNATWNKFwZZhVvJgIVl/WoLW6k/XZ4Y3W5agL1zxDXiOMJNxeqhXtxAxUA44j\nziKRPrKFxVnuOraAE+51vzruvydutgePYsNW23vKshEEsBOrhY9cDHe/Gn8Y\nqR7E4wUHrnFILS3eu5aiPpwwSqsSdQ2Xr9+8YP2l000aJyF0g3RX2rBIrrjA\nz/Z1Nt+et8MkE9q901LMpVXk4s9VaSUiCz0f2ac7ZXLIjZ9rMLgYH4P0VQzM\nMDUYkiqzdcBP6nkeVCF+pOMA/Qu/AULjDnoTjFvYokQPzsuAxgp2L/8kNgvs\nWY+qQfYr0A5UHOtJhF/gPMtR3eEbW/ptARxHmf1klDoE/DW7GPdOhe5xBsVz\ne3MMwMfIF/wrnGODDeYEEExQa12AcEgZVdhhDvDo2LGSAwmh1/GYhTlJrFKT\n35CyUR+RiEDlL3L5umIeeNPWmY0uASXJ8FE70/9O5pxSbGPTRSQdzvdz6Kus\n3zaVxFWKowjBMlawMoajQo7LEc+3eUxVivXoSxS+G7x8CN6tzlGbWzNlOwsM\nG9eh\r\n=XEVE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"46da65d9323444740b2e762c46eff4733d58948e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.71","@balena/jellyfish-sync":"^5.2.88","@balena/jellyfish-queue":"0.0.538","@balena/jellyfish-worker":"^4.0.52","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.161_1618367385795_0.6683877173977548","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.162-renovate-non-major-1fa82fb4f9697b475c7b29b650d33e47218a218b":{"name":"@balena/jellyfish-test-harness","version":"1.1.162-renovate-non-major-1fa82fb4f9697b475c7b29b650d33e47218a218b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.162-renovate-non-major-1fa82fb4f9697b475c7b29b650d33e47218a218b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e33abaaee589d9cef0abcf26c3f4f11911d3bb90","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.162-renovate-non-major-1fa82fb4f9697b475c7b29b650d33e47218a218b.tgz","fileCount":17,"integrity":"sha512-29hai97n3aWdzuhZQ1YwR+dZSvakaAmScpS4cWreWBWp5SU57z2NEaIrwHfDF8XXRQBtoif4kD840zxrvjTG4g==","signatures":[{"sig":"MEQCIGXs4z3ei57jkzA8m+Bc0u+FA3Zl26hPh1T7qikvj/fbAiAOx5sufaHRKzeoawG2l35m1eTxqwKCNmBm9dt+ublqUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdnvGCRA9TVsSAnZWagAAMSEQAJEZ7DPZtfj1Sy+TlFSv\nchEMKVhvkEJNBIeQkMszYZumMQhgv5jjwU0t77LlrOkvzuhFFB0wEBVtyXdh\n6ZANhWyerWbFP1p3gbEpl51I28roIh7QZitQl3v5lSG2skgBBKO5hJEqe6RM\nGc3UMatmMKIsJoLD8DgGidKr74pgf7i2DjH8dxAfIl7qZfqowGXQEr+GzscP\nfwOV41VKUYSj4aDjlS33Cifa03vWu5IRU0ZgDzvuuqO5PrnRxB2qCVwLbRrp\ncQLLHg6/6dJaBe9KP5rQWf876pY/XI7V3NduUuITyJ+X3onVVH4H/9PL9+zF\nTchToRfLXMolY0WEV91IqPm7dobJrXsN7XRxtFTPbQSXbtyhW945qCHawqeI\nPHEp4wnvRGN6Cm8jFXs2YM3mr3QefUpI59V9mKLvYzw1BARa/IjtzMMlg7Q/\nL1DKaXs6r+l5d7olrHNSqTc7KL5Vff1pLrfPV5p/uxFWUq+7mMneM9H8WcY9\nmqzstJubqc86esN1SZWuiTg51JKXraArtmj4SUQ9yS6XOnX97nP6cNgNPPKh\nv0ZXKeZzXD9JcX1i7L0ji8KbYNurI6zxmLaviivrilF9+aaeYjM9thPwlEmR\nQ6ClCF5oIT88tbk9hjIZIOehikhlcgsdgaxW0FIeS3ReGLpf6DyCRql+9h+y\nMhtm\r\n=GPpa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1fa82fb4f9697b475c7b29b650d33e47218a218b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.72","@balena/jellyfish-sync":"^5.2.89","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.53","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.162-renovate-non-major-1fa82fb4f9697b475c7b29b650d33e47218a218b_1618377670239_0.898960712044752","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.162-renovate-non-major-d7db726569859fe6a930a5cacffaa3faf4c35b35":{"name":"@balena/jellyfish-test-harness","version":"1.1.162-renovate-non-major-d7db726569859fe6a930a5cacffaa3faf4c35b35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.162-renovate-non-major-d7db726569859fe6a930a5cacffaa3faf4c35b35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"357edd36d0cb786c9ed7620befce7735f5319853","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.162-renovate-non-major-d7db726569859fe6a930a5cacffaa3faf4c35b35.tgz","fileCount":17,"integrity":"sha512-BR1tXf/mlHLdRDwFTwwdJd6EEwvTkBpRicT7eAeq9vDqhjFImO5M0kbekfoiMG7fg8H79jfbmB7jB3MbXEH2AQ==","signatures":[{"sig":"MEUCIQD780ZMcJUauDh1iqQnpvDBiwXb8heuV9s3F9o6GbGTdwIgVJnOYJvGa5UNOLGhKaGuC4fHinKbtHNAAm73mD8uHR4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdn0ICRA9TVsSAnZWagAA4QwP/0vEBp9jIzjsNQ3RxTCF\nKTQtqYsz7usqmUvCH5Lzxb4EJ5miRcKqfb1BxF7IxQUZ/yqntXzNilWbjGP8\nXlRBm8YdUbB4ny4M8hw44dXCofUNqdbc4EnMF5XqFoF4qjEue8yunCbkYXcz\nfTRQpN7PjNYK0nD5QNKgGHortpW/XgdYmzHzNx+xG2XT0OHgC7lv7K2GIyAR\n1FMuO3gRK3eHoz03WHKJyttDRhn5slIQ55IuOTIyQaUiQFwZ6PLbQ2eLX6eR\n9i5oDHbQCbPRSBB3OlckrmN+oDNjYwbRR+h6hDXLt5ylfCahJH+JmfwYnutt\n7IGT8l5CHjrTR0djURnt+MmXIJwMCKXvdwPehu3vEPcMnzaYyv0RXVN8yX7d\nfKKz+Pbxk/kVqU4yS2zfjAv1K6aafX01BBufpEEyoyBVOJZtm+2AxdloGP79\n2r6WBj/Ptove9B/o6IXGxW+QoxSaimWlYAqv6EU4sV5hj85M6vmoau8x3W9w\nvHfWEet6+y4EKDHBx+rnaMUa/Na2sjrSt+HEMFaovPTTS7JhS8+1Qsx1Zjq1\nQX1A25rV5By19gH74JpiHah+w6cjyIN1qkZ21UfHnthAbS4pxtjJrVG8ML7V\nAgffCGAT/cpLCa2YeZRHYepEXD3ETePxydcY95LxbiG/DyQyIuCrpAk4kWcq\nBREG\r\n=+PaW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d7db726569859fe6a930a5cacffaa3faf4c35b35","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.72","@balena/jellyfish-sync":"^5.2.89","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.54","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.162-renovate-non-major-d7db726569859fe6a930a5cacffaa3faf4c35b35_1618377992461_0.4270168666867129","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.162":{"name":"@balena/jellyfish-test-harness","version":"1.1.162","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.162","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"70c096365b116504fc1dca167faf283f92fcce4e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.162.tgz","fileCount":17,"integrity":"sha512-z7xeWEEZoa818pwaVvPC9tZ1c1UwNfNtZFrMP9Gfebn5T1QBl4KRxo9KtWL8+dMFa+wC8zj6iqQ+QRXCACPScQ==","signatures":[{"sig":"MEYCIQDzwaKg6enhtUB4onOSrwA83FZX6uVt7HXHhbxsmRDU2AIhANDEip6Lpf83f+wtJL3pgX7J+XALlE7Ezs3l1gQ8OFru","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdn3bCRA9TVsSAnZWagAAhWUP/2j//jwMqA01TpFWHT05\nAOWZ5wmYb98k3XCWc1b0eZmqp8+SD8ANtyE444mHsrDH1DAa/EQSGWgi5025\nr3g5KYZOL8F+tVrHSKRru2w+ej/ddWmVBE43PlbPyNh6zdksDXJSjYVl0jzP\ne53nccKmTxE8GcIDg2EKGIFFwdLs0glvdht/zReZLZWARhL0jK4Geo4l9g9+\nNwbwZjGRXjTTHsNmGuEAoE9xdDcJh8VM6vK16jYgPpq1skW0IlEqyhlbkQG7\n7HFGcVHuJ43NrLfC+CrRbYgG2dYs9k4+bCoY4GHwC1wmOYYWVPOvNcUoJDGG\nIgFTlnq0mxPPUPFdJV8sErznG+X+vjmvNF8D94pAwmROeuV/MovuwzDI+JYO\nJeXWh8jISVic1VgAs3KZo4iaAdw8faF3vIvXmHG0pHBO/2bDBVdTLiM81ph+\nBCB3VwEfEOCMeNVDg0gNb0f1lIFPPXyIvzp2wdPe0Z7updoFzE1NP6UF4m1L\n3YqIPv31yJf7Xm0zRWBBhGiXvKKtvVie9FOk7tn28PSrigaYbIaoHMcYXnbn\nK5/41bQzcw/BclLbw11FUmPU3wD2+DdQwWcavlRLPL83VeGyTWxOxZGOkVAM\nZ31qaUqGBb8jP/E+VFX0q4qYNwsXwKd1rGa7R91vBOWwrXZLvDbhPYLEJmdc\nq998\r\n=ZK9V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0b58051dba647489c627e9d1ebab9a94e23ea723","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.72","@balena/jellyfish-sync":"^5.2.89","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.54","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.68"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.162_1618378202839_0.8810097809669961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.163-renovate-non-major-c1693c25db474eeac10ad6792766e5d65cc425a4":{"name":"@balena/jellyfish-test-harness","version":"1.1.163-renovate-non-major-c1693c25db474eeac10ad6792766e5d65cc425a4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.163-renovate-non-major-c1693c25db474eeac10ad6792766e5d65cc425a4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4db886f47c02723955a16612fc2c8c8824aec059","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.163-renovate-non-major-c1693c25db474eeac10ad6792766e5d65cc425a4.tgz","fileCount":17,"integrity":"sha512-yQthHy+Ki+RYyqwJV1A9rH/mP8A7ikfSOVU+ni9p/FhX4NC17Ufg74pQpED+vcqXvB2fSELaaKannKgjnl2Qcw==","signatures":[{"sig":"MEUCIFHzjxqWKtM7jeqyAvZjY4HVEmWX0uj3t65UTjuK6OTxAiEAguV7hUVlGlgwZ1PIECWmaZK0EkbiuoDb9KWlGmmS4bA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52842,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdqpmCRA9TVsSAnZWagAAMicP/1JsuFzoqVou1dYvb320\nsQ5B+reAp/4QfSHpYvor9Od6dzT1yOFnQnPCGhiX7xqq3CXDtu/1hoOlfk/v\n5XT8LdSF8Y6jFVbupQ9ExOJkN5o0ageQ14WHTxpnVbg93PhRu+S3r2/OAGzu\niEoV35cyFqzVATWLSmVMIEHWcjwbPmOTujaoRrwbtCOZyOydLhxd2i4XGblk\n4UOnxaS3jBQ47bGDD5NpRijGcjsEhdpCDTH4IQk+Phm+efvTK5z97lD1Tapd\ndXee9d+BkhQvCp3dhSz8Kqbd6DYN15HNyId44zeX7LVtTa+eVa20+XmqcRTP\nupmZin/8QW/EZbxRnd6uJIUP9OAWjsunuQ95XJ5DjHiCNApQfyI1eE9l0oBg\nKE5XuHUa8rL+FdsCtIL+zLs5GhhHkz23KkUyJSxs3DRzgnUlg0oOpzeGJIyv\nWA4c0c7mNlLb+uYVihHrWTZESh8Vmme6ShsJIqLoYaPYJyzmNkFg1HgR+V1O\nGWoF1wtfmi25dcOTuUMXiyaP8v1qDhP/CwrTE2jdiNpbGjYayTn+bXGrmhp6\nD6ThKW2pYCTBxYCmjCaTIBZnr2tYXEu7XfhvPN4ssoUrUHTpjlEV8PZ7NRAv\njeGgcb7cbWFB8TLPicJrFB+NM47RjO2kNXQtL/bFeNoYDhMeQaUCEHLo1sH0\n4aJu\r\n=gBLN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c1693c25db474eeac10ad6792766e5d65cc425a4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.73","@balena/jellyfish-sync":"^5.2.90","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.56","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.163-renovate-non-major-c1693c25db474eeac10ad6792766e5d65cc425a4_1618389606015_0.5609185791523212","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.163":{"name":"@balena/jellyfish-test-harness","version":"1.1.163","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.163","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b80d4b1d9e0e8e1fe6079fa577a39e867b72eed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.163.tgz","fileCount":17,"integrity":"sha512-XwSfD+1XCaQAqHXxF778qEi9BQY8/KDkLTeA+hdA0MmsXges/XJhmCjcwKzGyndV6ddJCJWuF0rbuDTtX52Ytw==","signatures":[{"sig":"MEQCIE8BOlw5Wz412VYFTgLoTW88V8rHlpH/T+QvsyMsxHivAiByqgFXzm1ITG3XMI3CyfOsY1nQrBOO8jlHrLhZlWfVjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52782,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdqsRCRA9TVsSAnZWagAAGmoQAIaFh3Zd1HZOWsa2io9B\ntfSee8laSreeUVMeG5a4K2ksQhsllOE3a38cWtovLoy9WEQDxkc08Ie4zNLk\ne3aid627MhYsskOeEkv9gdxFfl1NGYRNJtSfxbKNz7nKxz1MFQdfFlkQaE0T\nqJQhGDdM+bNYQmduvq3KO4d/+xKdP2DGFG+R4cBB6Dy1qTNfsamOmuRl69CF\nLVJYJy203KAwz17l+edyEEB9Byk8S8j6qPsttqR2blavUz8dB5sJuuny6sS5\nzZBkT5RYzJwmdJnqzU8zwICJzP+ST4kDsTkqx6LzbdXn+iuT8xHQZBdxk7Li\nxcNI71+6YtOm9jksm49hM/2rZvUC1UTdhKRnZGu+XuW8Gy7w3cqMEt6+lDYD\nColAoeThI1ZuX8epMmabNhjGCXLEIOddPfJ+QZbIC9g7DPV/cXAfuMRvie3H\nMbRyaRjjVZgGwS4qetAsM1eHq8647Cwmq6zExInjgXPzMnzsk4Ej+GGdH0Ij\nC5wba8sqQxGdD5XkIPK4lisvr++RU7iCTiAKUz48edTFHbvb3c5vVR6fVWXc\nrnsykqX2tgG+Lm49/5mq8TnKHF4krbYSURZvb821Hu9ti7TY80A3MG/Ppnyj\nmi8bKC6FXdtubYA7BmbjSgQb7fb7Ehyix/vtR6GjhPg19rKssE+OM5BDMQeU\npfAH\r\n=ZSVi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"42b3fdb57a7be864cb6cd0a1a40107c594778eb9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.73","@balena/jellyfish-sync":"^5.2.90","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.56","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.68"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.163_1618389776769_0.5942896768369808","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.164-renovate-non-major-5142f2ff9a05764bded043830c0e63e21541f552":{"name":"@balena/jellyfish-test-harness","version":"1.1.164-renovate-non-major-5142f2ff9a05764bded043830c0e63e21541f552","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.164-renovate-non-major-5142f2ff9a05764bded043830c0e63e21541f552","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d4f0f3d5ec8065921e20150dfcc8f6ad6a06170","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.164-renovate-non-major-5142f2ff9a05764bded043830c0e63e21541f552.tgz","fileCount":17,"integrity":"sha512-NlM+6PECDhY+7zzlzZK+Ye0BybbDXZeMxqQvHV6rL+BblMEpYn8T06J6DTv0UKmxtbis9BnL7DlMPHDd2jgm4Q==","signatures":[{"sig":"MEUCIQDdw84el2FICnE0/vkjs8k0DC3Vawm8hz6aWy7zgUircQIgBW9NeePPgn+ivjwlMvHjFLORKL/JREKSdmTAXAoDxrI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52912,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdsLoCRA9TVsSAnZWagAATF0P/0jQQAXQYeKwMkmiCZ6i\nxuOyAfFeOLjjnGKQZoE+5o3Jw9LNvRu4I11MAsa6Re/jvuaR2ngJlA9yx4FO\nN2FBlUWeX/sQGv7C6t8wNlBq8xWTKc/D7oR84f7yuqFHrL7MexB5Q5/J3ENy\nGYIhZKuxMoRw7BA+eMsezwfL/EX63MopFIYPg+su1et1kXU9Xj6IeSYNnSso\nupODraOM9lsRITcYxdJ+YjQxVs8CHsamlihxCu5WUx+2/CFwINAi2yz6J6B1\ntaddV5sUXbCrFtHMcdJZnz9TnxfVWHo1Dvo9TN/iI1s3ZSn5+Okx6EPHBu4M\nik5mc11YYUYs00iMygkefFMud0KG441cSvLKI8vUmqyhqcfgGOKWZ3hXiHG1\nf1iMtuox2JAU2A7Cry+ijwpBMFgFXt6jOfc5vbtKkjSLiRfyb1xdhkIcEXHF\nXFbUYlJp8NOybBXZFjUxGsGb9N2AAjb3vVm9pmpbZvErWnefINs04ItvA+F4\ng6NZGtonsJy6vIYncGYgSy4ePYf/vXkuqFIGNCL3ECH7txqMMyHqK39uNlWN\naEb+HWQWGWf6Qm9JEKJAh2l4VNaKTp5ZbscH/WTmkqiaaTgBmxbSUiH+Kl/n\nOuHb895O+WuvY036oAP3KmlCGcle0bGbluscZhfdaWKmIjbM0uXig3bH00sz\nvj02\r\n=/xeM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5142f2ff9a05764bded043830c0e63e21541f552","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.91","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.57","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.69"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.164-renovate-non-major-5142f2ff9a05764bded043830c0e63e21541f552_1618395880064_0.9155890423871309","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.164":{"name":"@balena/jellyfish-test-harness","version":"1.1.164","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.164","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d7a4e00179f87d41606534f4e744bd20ba80e02","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.164.tgz","fileCount":17,"integrity":"sha512-tFlyIxpDOZcyNF0nQdvlJR14R32OyXaceGjd9XakOLHBOMn9k43gUPuKNoFAgX9xyB6NnSs7YYyZ8kJ5A3jy1A==","signatures":[{"sig":"MEUCIH4vAF5UGMRWeHLTRJ8V45rw6YpyId4peVVRy5kd1oqIAiEAtmXj+eak6jvXV/tGMPjpRuxYZwkLCIXSzF8UhbnVmFo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52852,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdsPGCRA9TVsSAnZWagAAbWkP/3myenRkSLsy2wMMNZNd\nqDwRw8fK4Stg4fch2SgSAMXhBXkzqcfkvr/HlS971gNQTGZFp/H8b4adI2yH\nWHNsteuGiGFv+eSwHwP4qwUiQHeGegm5dSY1llDxXgs6a44oBLouDfIk4nXt\nJj2Vv46XQRHquhaWfO6CwCy9gBFPU/pwfYT+o9EZkc6X9mq5vxFktwA5RbJ1\nwlK4SJRxI/TN3XcMbZYb/W5XOHUtJdxD/ZbJfQDlITIHemMSbZL4WCZN2B1D\nM9A6tA3mu+5BUnmTFRvhe4S4kKAqnvAOgA9iNpK3z7B9l6AXShjXnSV3vt8i\nOH/gSpMcLLqS+TK11osYhaMx73ynTR7Eq1AxwSvhu8HQ7oeL2JzKJWhITr7N\n8d/z+gxCvpxYXVFbznEh78TsQuAzznPC9mgBoAA0OBKHEhSFDZQzpMya4JEA\nwjsVDbkIkaI6UcK4yy300v/zUdm60V5Yt17hJA4t80/6glzW46x+EcVYs26O\nbEtwPct/cgwOD0yAJy+CMS1eIcW+gwJpJB6ZFgo2OinorFER4sRymmmEaZp9\nA5HOwjD/nf6JguXuPZR8+OrIFeVKHFEEUVW4L5JYJKPicWmccksP0AM4dqrU\nITP9wV7Ey5DVBo3Vo8KJiPyAwrpsTWhiiiVChr3V5aoCWrnlNTVb3Obl5miN\nQdub\r\n=dOoc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"23b68939892d0a6d7c576abf62dffba99de04f66","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.91","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.57","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.69"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.164_1618396101885_0.501265851167704","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.165-renovate-non-major-32cccb493c1231b8f8dec8496edcfc2e8df8af08":{"name":"@balena/jellyfish-test-harness","version":"1.1.165-renovate-non-major-32cccb493c1231b8f8dec8496edcfc2e8df8af08","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.165-renovate-non-major-32cccb493c1231b8f8dec8496edcfc2e8df8af08","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"13441b097bda7f0243d2db31037d3ea918480b9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.165-renovate-non-major-32cccb493c1231b8f8dec8496edcfc2e8df8af08.tgz","fileCount":17,"integrity":"sha512-AZAD9cdlFrFN0gvdAWBDG7lAcuBIKQG9BC7CdI8YAwK7jz4w639SBMDLu3+wrQuz4QjcMhLaVc19NT2mL0zcbA==","signatures":[{"sig":"MEUCIFAbsXjw46q0amwXXhuNl6uCqkV/x3Q8HDHQ2utQsKxMAiEAvkg5KtP4n7K3/O0K33k/FLMXht6FfxFP1Nq7HYp/6A0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52982,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdttiCRA9TVsSAnZWagAAazoP/1b/jH1DrCa4rz6hXS+Y\n0X/URzPG2zfWTr2FmLo1INpiQPChbnu+I+cWfHRiCdPK/OxGEG6OzZn5Qwge\nZuIGtgr3xa5wxgLt1wFfxRLox6+LsPlZ8huqQgjLBUQZFpkCwF2uVndy0J5v\nuPeM/+sr3xtXrjNWNsE6YINmaggrkbZZw+AG7r+wENtx2+mxcFr+MbQf01LA\nbH2ZBCfiB+48m331Sao3ua+GCic5qysR6w9xrBNVvBD4q75SR6nlht+qakOJ\nZi/lPs+vWjXI18LhM3U4ZjUVaLpeJF4siFvRyBcxll7+sWXeTdxQQfbMcKVH\nc9Q5Q8rNNr4n2FYKaBHf5ekLPCTGTDEkD8ZjzjVzc3ah91v5Ml/mJU2CyvHa\nXMC9qUM+f9cpfiYan06sTVo8VrT/tcJDhlATY3Xii3n3iD6aG6xwBcT+2Wo3\n4wQer75rY+bWzV+TqajTHEmvuctiPzLEUbRo1WXt7azJpCsHOBhyuSkoiK0G\nHmErtnYCSDrlAoTOwNjA42F1F5dd4b9AWtinh3efVIy9d7L2QJdvzO7gCC96\nkDuKG7ySXGYgEMZALYGiB+iB1CNqZ6h7mXYdfoLvEVg5h8qWS5iPo4l7cv3M\nTfbEO08zO3knDYZfoOyG8uQod6eWGbYW//EWFF50jUsG856U7h/LD7omMONb\nCQ/t\r\n=d1rc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"32cccb493c1231b8f8dec8496edcfc2e8df8af08","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.91","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.59","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.70"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.165-renovate-non-major-32cccb493c1231b8f8dec8496edcfc2e8df8af08_1618402146320_0.014724025555945763","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.165":{"name":"@balena/jellyfish-test-harness","version":"1.1.165","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.165","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"86638c5c8f66b467fd0561d87f87427eb64b2b44","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.165.tgz","fileCount":17,"integrity":"sha512-V66AaU0WP6MMKR5C5NdQnfPUzBi2MAeum85Ese0A8z3hBApxlUFrzNoORixwqiNXylBUG8c2XFerijtlX8Arbg==","signatures":[{"sig":"MEQCID1FS1e3xceroMSK3RRH1PrJ95C5LGhmXeP1E/gWQ8XIAiBY0/dl0VkFW+nWV/9CdhQYa732+egpKGDyddYityMDtQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdtw3CRA9TVsSAnZWagAA/asP/AwSIpCKNhWMB0+PIlG4\nMv13IkU0d8JLxA5bWB+Ddque2UjiS7odOTntfPy+U0BE+BUBwOsVVKW/6qyS\npkfPHLMuHmd7uSRt7c/jsYvHmYdiHoNs6+jlGpCSfa5eFet0ZZQaN5Ync6Kr\nWxlc9J5VerZdJrep9un/6SnZwqoV8uPhhB3WyYQ4vpOJgO27UJEPuK9kRPcE\n5H6O8vj6F1EpR6IcalKC+6VXpemShHzYB7C/nvUcuNkLVxNAJD5walQN/EOR\nkovjEFPv6i99R4og355dyOJl7FeXBm1EsnZkHMKZMJbQRPGYF3yztc0qBIIw\ndM9DZlYkqGDiQr75YBKGGoKQ2PCh7c7Ux03h0fuV/3W/PrvSvSXNhLxahJej\nN+glf9013zskpl+dwRKBADkWRR00jykFO6lkJ+XlhF4U/C5pL2gIjUDkjx7D\nHGRw2bE5XYv3LISQQGuzlaiFrPAmS/QQLJDqKA2QmEste2EtkbTcsS2ZAFZy\nwYuMknjkUPj4XWxMdr0rFMEinWr9t1TwNj8u99EcaNYyU4HYHlIoAdAObsYv\nOSLkfjt1aCcGiWiUpVI7FZtp275ab9+4NHt8DUnS4rrXNBvk+SH2yLNedmpB\nUWEYlgXjkjQnlsUuOYF2509xsco/wW6J88+TZvNt0Vrc4+4c4J2CsaEbtSf0\nu1m2\r\n=TEc3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a4b0f59a66c5d21eedcb3ec5fb5375fb72941c62","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.91","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.59","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.70"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.165_1618402359169_0.6767910636967831","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.166-renovate-non-major-f703e64d0127a98ac5dd59a08b9615c33d560bf1":{"name":"@balena/jellyfish-test-harness","version":"1.1.166-renovate-non-major-f703e64d0127a98ac5dd59a08b9615c33d560bf1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.166-renovate-non-major-f703e64d0127a98ac5dd59a08b9615c33d560bf1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"016cc5534221a5f706629b16391e2bb82a3b8fc1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.166-renovate-non-major-f703e64d0127a98ac5dd59a08b9615c33d560bf1.tgz","fileCount":17,"integrity":"sha512-7vGGdKIH5aRyQI/0jV3iwrmescfST2lw+eeOfMXf33KLlt5643Yowph60Ch/k03UiJyXLpU28L5bbWM38Nhr8Q==","signatures":[{"sig":"MEUCIQCY1HJrTfRYxH1EQTirX2LcI295cuBUQGaUuciODIZX/wIgc+Vmrr31U3MSo2Ra/wZgmWJJzMaTCSOuo+/I3i9bSVA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53087,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdt0cCRA9TVsSAnZWagAA0RMP/1ioC9kiwlfwkFQkOK8I\nrUy2iz5ynnBmX4f29zqWZGwKYT57UhOf9fXSENko383z68yN77dfKdSxVtlY\nUBMe77nPGugDySlNi9O98kY4AHHI3/D1heWR3OkyuIHSqOMMyXock5VHewEl\npCzZa/JVVWgg/MGUzLT0AYJwvmPSY9Fns+LNMc4qHQKwmEXQf6+WWBxFfLRQ\nfAEskbY99r8qhOOJoR5kfurXzXjNG3ExL8h7t3tiH6h8M44Gj4dWjZITvTzz\n6xspCIS2weBsucBwIpqcb9pYuXFng+Dzx6kU6GuSZIc09TfqhFv+qEnhZJoo\nJALTgkvRSgEZfdVLY35OYIh4LdSoEUat3lRDC0+iyLpuLs5RihX0JIwgPF9P\n3Qb8c6n/OFD5kztUwQ3etOVwPkquknzDhtNuo/bQQIj8xeK6RZR1zCOFDnBY\nQbzP95sgtJTOdrJBf2G/+8LMc+IMVKleHN5LKUTF9ssKiUvjOUlISoyFDZid\ndiKT+Jil0Ez7JgqQcagLWGuhkFN0zIRISXNjcc3wmsVT27IbwnMB4a72rMVN\n74K0weDiS06yRp/SGfFycatV4asamTv/CjZI810UPV5rl5Mp0ax+hdWSFce6\nFXqihHspD/qKltPeQ/BzowzdNpaCpgihtVTJ/shgeaJ1d3NDytpyG8R7hRPj\nrSBp\r\n=yFVA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f703e64d0127a98ac5dd59a08b9615c33d560bf1","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.92","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.59","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.70"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.166-renovate-non-major-f703e64d0127a98ac5dd59a08b9615c33d560bf1_1618402588418_0.9269228618063519","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.166-renovate-non-major-579efcd44544a3b4ce382d3f8ed562b2a2ca2c06":{"name":"@balena/jellyfish-test-harness","version":"1.1.166-renovate-non-major-579efcd44544a3b4ce382d3f8ed562b2a2ca2c06","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.166-renovate-non-major-579efcd44544a3b4ce382d3f8ed562b2a2ca2c06","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"31fcb94cd2ea50d7e24af064f90ac3102592e14a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.166-renovate-non-major-579efcd44544a3b4ce382d3f8ed562b2a2ca2c06.tgz","fileCount":17,"integrity":"sha512-T1Mclty8yGdeVgbeqLxADScIGB0UtEEiwzlVx/ou26vzEzBHu0ZbESHNsSUgdABPYN36hCCc4BwOurglfJM/Xg==","signatures":[{"sig":"MEQCIEK/GPU6sJjDZQVx2Cy2q1cRU1vvT+j+FjIIcqlezyWnAiBJarHT6qFoPmBOGHyb6rl9AJ3Z4ZkuYDKB5zz8GHUTLw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdt2lCRA9TVsSAnZWagAAiXgP/3scJwfD8gmF3khTIKOn\nXD4JGUuTP/k+/bHunhH8sh+1n5SNcNy4wFpQc5pZv+0KXgGwt/KTHya1qO/p\nn34WY/CrNy9RXAJ3j7bFAlqLNuRpCuj3J6s/MgALQSVhJQu1ZXsOFIKW3xCs\nQ8YyS9kNYeOC9GRdLxEERfquJViTTN0HILhCB1zbSR8qA1cZ8VCCvP4P32/x\naBpBhnIYKCp40rjrIAwW/8s0HTmrKSrgN2ufU36wDCadaVR7j10kJZXJmRuT\n0nWq4YJeS4Br2//oetN/AUY0j65v2PD1Ij/mP9gWdbvB9WVXCklLw4gY54YE\nMY85hVJ904LMXEz1LHCMpYgjQj3LCBDqe3az84lHu5D094f0oNb+8g5FgOoQ\nrvbm6YqlwZA3PpCMaTLNG9j8RtLwQmE/eJ9DVw5QJGFXIQNoJXh2pne9JeES\nlvoZ/coml8+NJl/6f7GSPKZ8F8JzHCyW3dmwicY97qKo7klJrfsFNcPf2eQG\noeFoih4IUOcf6IBDyDiTf7A50wHqHsjJsJkTdULAMxxK3QTbJSCAFNmx8eY1\n5q8jtkmZn9C6X0vM8b7Wj+sPtNuG7kroPjodQLyIRb9MvVDbuDrbeB+4mP33\nLEW0ZHoDguLjs5NMbAaJKKEt3ConS6br7H6/9Anz4ihxRDHmyEx6erLFM+4q\naL0d\r\n=yAa6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"579efcd44544a3b4ce382d3f8ed562b2a2ca2c06","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.92","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.60","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.70"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.166-renovate-non-major-579efcd44544a3b4ce382d3f8ed562b2a2ca2c06_1618402724947_0.038196773748985446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.166":{"name":"@balena/jellyfish-test-harness","version":"1.1.166","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.166","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e4af7042434fd1448aedd3b414690bf3573da74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.166.tgz","fileCount":17,"integrity":"sha512-3uClXpuZUiGwrUEeQiJN91Y9LNR9Szr9AAmQJDLkjQ7W08cHKw44vgOz+i/k0zjqOIbmxtvhtd9Yb5O32AIVWA==","signatures":[{"sig":"MEUCIHS288EXXOsBTmtl9xRiFBJIBASOXGnioLlQ7BoCEhCFAiEA+FbwcB9J+JPwiiyLCKUiJuns5zdgGU9Uz7/kj+0L824=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":52992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdt8XCRA9TVsSAnZWagAAGFgP/AmS8ZbJp78PrVGOdRI/\nIxS+nmK4njf9leUlaW2NO9zW+rAt6GjC/ThEsFvLZgo+BUb/shqEwGWE6Wjn\njxs4PmHBNMOVKtmZ/Y8DsfrVk+tnTmXhi4nI/nl5GIYTiiIasKjUGIzKBcyq\nJI5YVfSyWTE5zajHJMd2hyiX3GqrX5gSFysYUQvrULy4JxHYL1LJKjELlUir\nkE6ENzFdxzV8kXu1RrwVxx2mIph5DKhDTYhiCsTx83ZD7Uz8/Ry2dTU9wWWY\ntXxVd5NGW4OJEI36zSTUw7FkOk4QdGuytKgDNPJ7Z/6IWB+jSg4b1AhAQ4+F\nuvPt7kYFaFDBT83h09u1MeGGZokpJN3PnM+y/6vgzskcskmYWga9E17Uq6OC\nk9wWPnZa7zyR0cP3+8dbldcchRMaJtuQygh5TNzTRBErZ8dnFDDil0Mjg5pP\nIR/F3MClm0SxOwa8oEQGl4qGmJNt2cfGV1EvWp0sjEmyfvx4t3BaVWLZrWGD\nVx16L4EjfQH9wisFBmyLuVckmCPnlZX1ZRTyxfjTyRAFtb901FMAegxoEUwH\nx9fgDJiXZwPAaylqIdPHtFdWzVtKzeZwvO4k7JLyI1oScEF6DFybLrej3jP1\nK25Fb4MBjMWbJMvN+UmDyQiJ+nLv0KG3U07klUNXEbpvRchHIyWl4LOKLoNO\n5LCK\r\n=joOp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"58217f0205eb292aa721608e367006df474f843f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.74","@balena/jellyfish-sync":"^5.2.92","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.60","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.70"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.166_1618403095397_0.4282367503161617","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.167-renovate-non-major-7c7c651e97bec5b2fd6dc64901864bf42a096508":{"name":"@balena/jellyfish-test-harness","version":"1.1.167-renovate-non-major-7c7c651e97bec5b2fd6dc64901864bf42a096508","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.167-renovate-non-major-7c7c651e97bec5b2fd6dc64901864bf42a096508","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f4941078d21f141ee446a4b95384fc9659daf107","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.167-renovate-non-major-7c7c651e97bec5b2fd6dc64901864bf42a096508.tgz","fileCount":17,"integrity":"sha512-rCaAxO75xnjWILDpfRR/u3pmoj9KTNHhO9Y7y+YnkZI8XKXg8/DO97ItDDpXB9lCA/1E4/3vNU1ChjQP5XGNPQ==","signatures":[{"sig":"MEUCIFx02UCeqk7Z70uuDV4OV7XDRrZYv+4LkAho8wBE389qAiEA0NOtqUSR/Mhr8/Q9RXnhb67Fk3NFUbTOSm0baF3cbiM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdvWrCRA9TVsSAnZWagAAFVcP/12s4U1MxtAGpMrm0h5Y\nALSNpHA531lMeROqvefdpu1PVDUWdOQwKIjEkhuQcwl4Ke3cnVlJ92nNgKvd\nNogvH7/vCIpf9XkPSuDG82E47HBS3xwrBPsFUI6wGc4S2GY6bBb8oD++bGH4\nyLgNfECPNqZZi3eF0MlEe64elxmuBg4W6k8Ei49GpBeUaIlnUxVoBpENBzgE\nriHfiiLgLl8s9vCvRQMGA9ic+St5E7ET4+Jv+pmIwD0gaia1o/SZ5o+2Hxn3\nrLxRZZmPZWfxR0NXPPWZwKHAq7w1DJaDLogycL9zm1Hj68JWtHqzBmu1GcZo\nG4M/oI9m4XfLLdNfZV+jZ4Lad7kI/0Nb/W6/d+ksewaQHrmPO6CI/teAwFaY\natjO0h9bOjBDisSMYQtZ3wa2Q9Qyvtlbua+WRIPs2jVUDHE9lWVGnJoK2eXZ\nnZ/yVDrd8vq8T017D29ThAPRrgHIiuwxy8ROipbXgOjlVOV0caknvt/Rc2Yu\nGLVQ+ai5tCOccubPGGJFBufWZm5WBUFJBrWeuZVZi9eFF40g72w6fgYALNyT\nPpdBpOykwaV9oY8PPvW5QhFv1sgoRL+2XNJSyaGy7DFZZb/OFWtziBa5FLUc\nHia+ADqrjLP+EA7plQqnTGRSnnJgPRhgLfL+BB2XVtOp1jMhhHV11/RsW4tz\n1zCv\r\n=+Bdi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7c7c651e97bec5b2fd6dc64901864bf42a096508","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.75","@balena/jellyfish-sync":"^5.2.92","@balena/jellyfish-queue":"0.0.540","@balena/jellyfish-worker":"^4.0.60","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.71"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.167-renovate-non-major-7c7c651e97bec5b2fd6dc64901864bf42a096508_1618408875030_0.5826550019535248","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.167-renovate-non-major-15baffc995dff9e9f40373b46beb6aa2a606646c":{"name":"@balena/jellyfish-test-harness","version":"1.1.167-renovate-non-major-15baffc995dff9e9f40373b46beb6aa2a606646c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.167-renovate-non-major-15baffc995dff9e9f40373b46beb6aa2a606646c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"62792c164d952698b7c94d8cd200be307e5edf59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.167-renovate-non-major-15baffc995dff9e9f40373b46beb6aa2a606646c.tgz","fileCount":17,"integrity":"sha512-Je+7cuMBLRwYKOFyPbY02BPmroU1aeo0lngfIQRT068pab7fmU6UayTGtNfA0Xy8DddLM0DoCNDY4QAcGzAEiw==","signatures":[{"sig":"MEUCIHhDgmKYGraXHq0QfuElj3pCAIIDYMlRUjyvsKEOrUTBAiEAl6869gTGfyheLez2eqNdEslvBHlUEhqS8Mmf6aXEuHs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdva2CRA9TVsSAnZWagAAyZkQAIqpM/a3Oxp6RGN9D6Mr\nw+I32KEFUHZVq/J69vocT3m6n70yH4IeBjwfxfiUhGuQaZp4FF7jxCOjmCX7\nLDKZM35oveMWmqATbKv52iIX0x/jxwPOmw3CwL2zxauoFWjU1XQF82L9Vl7J\nowVFSFL3pzOip6rX0VO5TXnzCLFieEkVuFJnP4ZjKWD7Fj2R8z90JvXp29xD\nFKeZT6cHSiOaUv9lfhSd/kUvqyWUUknOlKwz7GX+KH4fc+X92pmUYNZOjcjs\nnO3S0YU1QxlxaJGUwuKw6Q+lEIUazaDFJbuGQ1SJOUOnbH7LQEHkX2DS2i2x\nlvoo90lf3RaXti+nYzrUJpgftoLTms3N7YYYDBIUwimQe0m0ph7L3trfrIqV\n8QqHYFHVi2cmnfKjYNoGUlBaXtaOsO+r0gFZuP2aeKhBE78vyfeGCjJtxMr5\nsTfDOuG7fY4INMf7/6LXqQdrlkg3ISq9nsOZHDdRC2ee/AnL8kE1Lf/UQ/zr\n/iNIBx28/8/g6ZAc/1q7V0a6WYa0xpyHNF1QyncGHztEwAC3fZ/eWtsEKsJm\nhOgG+st+A2ghc9g9p3JcKGy4m232UIMhTq2Tvn0/C4c7yImkMSxPFq8CNnOP\n1PBIm9KN9FE9GZAQkIAQDVADhN/4V4q57MLgXNelDdvXDr3fmtDUpRJmFd5V\nh2oh\r\n=oP6t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"15baffc995dff9e9f40373b46beb6aa2a606646c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.92","@balena/jellyfish-queue":"0.0.540","@balena/jellyfish-worker":"^4.0.60","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.71"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.167-renovate-non-major-15baffc995dff9e9f40373b46beb6aa2a606646c_1618409141943_0.4905678686841084","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.167":{"name":"@balena/jellyfish-test-harness","version":"1.1.167","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.167","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34f05656b8994eb0fdfdf6f658c37a36bdf265c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.167.tgz","fileCount":17,"integrity":"sha512-zjXczLDgbvFZ89XludSONwjhnLOXTJI2HaqlVC3zADnxSCpivkFTyzTSXtiH63uzDC+3M71n/2SvRk6NVRWm9w==","signatures":[{"sig":"MEYCIQCcTNAR3mGyzxsCcavLvMuAKpDuYcFc9hlCu9/ADBBrWAIhAIHBQyXJmDEYawjE2JGHkLrrxludWFcnAz93jK5HMreP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdvepCRA9TVsSAnZWagAAV98P/AgNVysjXL4619coY9RP\ndJcgGX2xclWRNs69Wfd5u/u8SJULB5p8njxyLvzuw/rUgLZZGnEfZxIAIw5P\ne5mf8QZlzMCVMq6k/mnXuTYhcOjCMmPw6A2vorwxqE1TgrplTuvoUxqG2loE\nIzfqUisJoB7QCt6baZTioIuRlR6/kimky/Dcn6Ru1i4q2G4SrID/mQqBQTNC\n0e1S0xph9qGM7sfBzyqWps/MXMB9dOjlpNjUH43K5tQgWht1/r09AClSGB3I\nEiitE0tBSdCUe4ZskWYbx0XjYFeQH4qYZt3G89xVRBwQSP58x523cFEI1cAI\nFfG1ImX53gERO/nvD8cr8FEYd/TqoKunNmZLW4/VFRIqoEswOO6cFXF42mez\njudlMtP1tvCu0ovqbZgSG2Admui/eichB9+l3gzzWRLvKRuyziVroB3X5fFQ\nax6mkrxSQCBSiU8AnC1y/MoQ3zvKsPKvVGLNMH2PjhuV5rOwjxJDBPWPNxbe\nYYjq7tvV5W7kxH4qMS1Izc4bvtLPCVZ4BXTZ3rMZy8UIUhWkgLrPRrhFB9EI\n7cf+DXmbkUFtb4WJ3ikPVMiBGxnm1n4mW8DDH23Dnak1tlAk4Jb5DBsdOTiz\nEaFN02R1Mxh0Ly170RChVKN/QLc7vEo4t68hj/uSuOccfMIWON4zIqdxYmTU\nFbsk\r\n=2Lbd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e504e2f83c538178b09049edd3fd3ff7d0d221ff","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.92","@balena/jellyfish-queue":"0.0.540","@balena/jellyfish-worker":"^4.0.60","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.71"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.167_1618409384769_0.6427358800618004","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.168-renovate-non-major-2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd":{"name":"@balena/jellyfish-test-harness","version":"1.1.168-renovate-non-major-2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.168-renovate-non-major-2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d7eccc427d47e2f79b73a4353616299c08ccbef9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.168-renovate-non-major-2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd.tgz","fileCount":17,"integrity":"sha512-MCMjc/5k+RiIcTmXYw+U/smOZnbZ6SE/y23jWAHEL3wGfsdET06WUzUYDUNl0LfSzTeMOYmx3OicmxU5XcYCog==","signatures":[{"sig":"MEYCIQDWx05qBUTXirQ1DRCfHdTBqUfLnVfWb0QraOTqGjIy8QIhAP8zVliMN/YtYVcH2iUgQeoywK8e8SPD1/Xe9CpaWSnn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdwriCRA9TVsSAnZWagAA3S4P/1DjPKtlHHYdDL768+FV\n+l/WXHmbjADrecQx431KP4RgchPT0LODgq+abk3VEjt/19fh66BOkwc1zubJ\n81+Y7PO9Y4YM+OuB41MhyuhyirmDCxdWU4MbFRyFP4TXpkb0EUiFivaPEX0J\nuv/O0BeNW2dpGWbzFORmdeolq+8uARHMn9xA8E4o6UNADyufpsKFvU5AkTs3\n0NL8s9/eapkjnguX0uojbsGx3eJ8m2cT9fStEwX1kIglIdAT7hvX0SPgE8Ql\n+Fso64xPC9whWj/RF80wzyX0zGDK9Y4PxLvF+ph90fftTuOR5EUaaxpv0IO5\nE/6zSxopOFicHJDBRH5vTOX9M/t3nLntv60og38XBVzDPZg8IGbI/sDh14Re\nEGfLRJDs1bjHnwMqbZp9ZADncqlasAHpqAFJH3N5ZPMmO1D/001gUxzZSF8i\nYSptnAi72YdX+C4Rkn2TJPEcICKBAuxSpjK+OwLHKJlbymmZ4A2z20a6aXkA\ntdGobXe1yS1BQPN8mPSu+LE+Sr2Dl5rH8f9SqxBcMRF4/vLyWjHJ3NPYPsu9\nCXaPCwd2vA7pnnYKq3xOopoJfeB9IeelgOjM+D4lrcQAH5IsTVQw3iyg25Ut\nMnNxHWrTQxZVmgGIN6Ywjlh2O5q9eF5pKoMFU/+7QljZd3KaprCE49CjqB16\nXIvK\r\n=xv8X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.93","@balena/jellyfish-queue":"0.0.541","@balena/jellyfish-worker":"^4.0.61","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.71"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.168-renovate-non-major-2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd_1618414305710_0.3182458940618369","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.168":{"name":"@balena/jellyfish-test-harness","version":"1.1.168","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.168","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"28fbac8f768374e71fc3387829a28ba0126d63cc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.168.tgz","fileCount":17,"integrity":"sha512-ZGuByUYzNRWL32hPB/sRhGWvJzG4UhhQ4kRFJsyYHPkOfNqgmwqmj0r3ciDbcONFF0TUx2V/QVo6iaS/Y7oCMA==","signatures":[{"sig":"MEUCIQDW5sBe1Nq8u9jSAmFTwsrG3Yfh7nwvw1yOc8bR7l/c5wIgSZU13uywSUTAVgoVdpg+xUIbBZMzX3vki2eyM4cEMIY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdwugCRA9TVsSAnZWagAAM+UP/3BuHSBiLZXSQVlGa5Zf\nF1F98kucaiWESEMCajXrb7eHs/Dl9zlNL6/ZmuRuUsxs66kgq6nWYd828DEb\nKGvCjicggbVg0yfLcnlS8mmiTJg6hZYOzGGasNuyotkZQTHy0wpkzMZhJLzF\nQAkyd44qj4QxicVc7IWOjb/1disyEzEPJ7LKBdWMvwqGjXBevNoXjAFMN09q\nkixSQreLC+1CzJMvS8F2vkA+KQKmIWKfJrWnopjk8Goz6OQ2f54wmOBvu9OF\nPfq0bO9IpSAgHojDphPWCfhuYqRiaJn2xxuF46bSBy5Za9zC5dYoAMdqwI8D\n5TgdGHEZ7m5sCaOTCG9eMqoNYTs/B517pGhPkOeQ/md0shuq/Hnf3u6fy19a\nxuWyaD4vo9RCrN00jmhRSZ6BqaAGMsTTOZlOuZ/JmWBTil8yFJZd0P1hpXqb\nTG47FajLSdKH1IDPl30bVLB3EFRHnFvTMuiic9PFQP1w93VzaD9M74HHhX2n\nRJGLc6CZUbxfiannZuQXLaKm2MACjaRYDuayijSyGUq1T9bhbhDNSbl79/to\nHfV5nc0PJv7p6RvvAITln813KoXs0pvqS09ui+xJShZ57pnvtAMfNaCX2XVp\nio+BxzT6Cs0iBr93WoBnugs9d0oAeqZ/VDhxGz4GqEFfymSLRkem9FwOu8HU\nSRUS\r\n=KHZ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"38c99bfb0586d58b693383015f23c0bcd0565ca9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.93","@balena/jellyfish-queue":"0.0.541","@balena/jellyfish-worker":"^4.0.61","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.71"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.168_1618414495681_0.2928111711982089","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.169-renovate-non-major-2cb19c0a741da4196f3e9b4e38c8167482b4b966":{"name":"@balena/jellyfish-test-harness","version":"1.1.169-renovate-non-major-2cb19c0a741da4196f3e9b4e38c8167482b4b966","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.169-renovate-non-major-2cb19c0a741da4196f3e9b4e38c8167482b4b966","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7349c8b12a9783d755ae7aeaf98770ae7c5401a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.169-renovate-non-major-2cb19c0a741da4196f3e9b4e38c8167482b4b966.tgz","fileCount":17,"integrity":"sha512-UWsVDi5GlwCfugi7QiHN6RsRRgvNIieL/lz79BomljtYOFa7phje/ei29T756ZKRt2Qr32UVWSrB+sKgppBVVA==","signatures":[{"sig":"MEUCIQCGKLKnJTRozXqeqLDxjyAzYNnqa1l0s06iGghf7yYXewIgUbmceyNJYWW3GY0it6Ppq5uNKxXNoX2zyI6Abjd5SmA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53262,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdzTPCRA9TVsSAnZWagAAie0P/jEOH0/9S+00hMrh0G9e\nSOhxqUh1fIEECY6WoMJHvhKJp/Aq9aEmY/90KtiBdnTOvFVC5+pOBz1qE99j\nHkwf4rmVR5Z8KlDcOIz8lgIznWDaX7GZxHZJyFE1RzPlqjWOukqE4ic09jND\nNQ35MhAcMgzRkdSb76WhpjNyolWI5ZrrFiBoEPeVRF89GRW5NCKgMQpahuMc\nSh2l79SFlFVwYVWOhrHDFvjf1yUlRXXZJq25psdKIihhmJjcIIVSGq/mDtFt\nv+8xR1GpKyQXjKPAJHOo3xa1HHt0/diAsGZVu3DCBtM0LESXloHp040KG+7u\n5RjuWKGkxKlFLDpsE5I6uYm84rO7tsPfGhnrftCj0rjjV7YfbekoWrmNIoyu\nc81R4MBbSbXPGkgwjxZrsfUeUO3rBriIpyi9KRYdOvx/kkeU0UKyu/aPAXCt\n0vRBvizN20TA+85pZMYQeWA7O8k1bpEApKMCGA9Rp+4R48d8ZICbwbFdTltT\nejhBDWqq2yQ4AAeSmF5Yh4xSCVIpBVLjRpAjgiF0Uaf6YnSD+uW5ptyuoXiO\nivavsE+rkTYAHPcRyCqg2CSAfdkxEHM/No51yF1ja/+senx3O3uxNooRah04\nXXb3m1gwvu++tG7QpAXx961SJ/jXc/Cii1PVxzI0nxQRZUWtcrZV26aIYBmf\ncUOi\r\n=s1er\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2cb19c0a741da4196f3e9b4e38c8167482b4b966","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.93","@balena/jellyfish-queue":"0.0.542","@balena/jellyfish-worker":"^4.0.61","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.73"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.169-renovate-non-major-2cb19c0a741da4196f3e9b4e38c8167482b4b966_1618425038682_0.9123432647738163","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.169":{"name":"@balena/jellyfish-test-harness","version":"1.1.169","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.169","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e4f48481800b2bdedf66a56673c959a300d534c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.169.tgz","fileCount":17,"integrity":"sha512-o2LcyFvOulKhyxngi6QeU0XY42L9h8qb9QSSKgRE1LZerbvvDuKpieBLmmwVwC62+tg7ldURIoxGsj7qiIY1JQ==","signatures":[{"sig":"MEQCIEUJf6C4LMoX1UG/Yygt/GOcAj+sRz2/TxiB9YE6C60iAiBysOgrZwSi3ODsIAC7RZAfs0jfOevdKhbKZzivYj3iEw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53202,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgdzWfCRA9TVsSAnZWagAAa+cQAIOJq43TVjTC4/66knqF\nGNC88PzCtrDDgXNpxWGNR3NPJgajsTH78tYaNRfg4C+e7yn7fHuEKi8jHx46\ndBQApPe0RN6vKOF8CmZ/s2yGMm9vmvNhr+GnhvP+XiA81vyEVST/dDYe/PKY\nPIdSTmigSIOBnF1NiShUnQDtt7afuAjG3b0HQgjY07fAjFlPdOOwmlPMmPnQ\n0BEkwXGDrwPtwPnQHZiAvjbaU7akl/ttjp5LP3/2Dro7Lz+LWmqkqlP9iiuM\niy+YJc2g/YQCnd6pePpwGgM+Dg+Unc7UYhcColXiUaPU6kmrk0UhN7ST7qXB\ncwioj+Gn+B2pTZnxn/ijIBAnOF0ExLJczmBj5Rio0SW08I1Y6KRsRJQy98DL\n66Lcl42NujtFwoewqWa3Q8fU41c759bEBjTWyhM0eYRPTqHUCywuVwswa3Y6\nDSZWyXQNB+Yezhynf5W3kgGc7N/9E7HsfUCLzXsK64exqk0w6FLociVfBBFG\nhmic4k4TwDMcSL2GZSBjwKFgrUlnvcuNrQ+WLbDTuH8VghYCs7brAHlSGn/t\n584ONFLJFGDlLPj60UtcXFXgtuplmoPcHqwE1IUTuEzals8lBdezyloXmDpJ\nYjz+1VsWzsPnYj+jIRhhfRaRo0IKXATv6o+ScBHWCC0qNEqBgjYVdGo1Dx1E\nGTbj\r\n=4u2Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e4a29e96281cd00b0041463c83447f1970d2dfa3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.93","@balena/jellyfish-queue":"0.0.542","@balena/jellyfish-worker":"^4.0.61","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.73"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.169_1618425247039_0.8819164526741683","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.170-renovate-non-major-404f573b3cb4049c8f4248bd5cf9e4ae60d9a538":{"name":"@balena/jellyfish-test-harness","version":"1.1.170-renovate-non-major-404f573b3cb4049c8f4248bd5cf9e4ae60d9a538","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.170-renovate-non-major-404f573b3cb4049c8f4248bd5cf9e4ae60d9a538","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d24f98fb6300bd14d464661592ba1c0f388906b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.170-renovate-non-major-404f573b3cb4049c8f4248bd5cf9e4ae60d9a538.tgz","fileCount":17,"integrity":"sha512-L6IDtSwRrk8ydlUXHM73zlufYM0vE/nB9q0dJlRyjQlxZUi1gWrEKVjqq6AkQ05Mc91OwBGRhV6CY1gVbbHrug==","signatures":[{"sig":"MEYCIQCrt+GEnbVUE8OR2rbITMDIE/aaS8Ezid/Kom6QWm/DoAIhAMHCOxK7B6l0QBe9oiLdvCVsxieWgRgh+LYFvK8syTWA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd1VHCRA9TVsSAnZWagAA5LYP/R00Qp95XuYlY7xq635N\nttdz8Bv/9To/y/e4AEF3yBEEGT+LvDAYnXet76VXXeF/Bp+4Q/270evX0p4P\nrJTQVWmkDbnfk+L4rbc4dAUP+74VkMRNL1gYRLraEZ21pIFerm55XdHGg7dN\n5qdJN7ndFQH1esKBwRJ+nL8Dvc2n9wabQXAidfvftddxb6cniEJNQ1liKkaV\nJ7Lb64unvVmBSxbsGQx32cwLHDyiIZDadTuaVj7gSiztcxn8fYoNyWZ2R4vq\nr/Y4Bag9pfzTb5+9ibwnpO2n7LF5CzLcXj+OHZmUkRIb41y9C1wS/4C9pt27\n9tbM0KvcGL8OwH21uErzCE7/natSLZE9Mj2JHdDfjzof5IRE7Ege2m3OKirT\n/ydSgVi9boepWdXJxvTZG7UkSdlQqoR9hi56/4ZNJnHa7mDt/j1X8UqonjAU\nUHWlNyLbGjoq3UTxNaesJ2IJvV9ri3Y5hXrBj7nZE7lsGaGgiu7ske5v4eVO\nq385fORHsAKkDfXVdr0pM2tIr40iNarjMJhgzXEU84ctbgw2L80EpYT+zG76\n/lBj3hzYMH/JUekTtSh5f1x4tDcgDPJlGo2NIjzhnZ9Poyk9GOB8wxRmDu3A\n2c/RSBxvdGSg9zCZgGHtoBquvbuLaaUui1UQP5uKP9rdir8zd2ElLeG/jrAf\nJxfz\r\n=sGzX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"404f573b3cb4049c8f4248bd5cf9e4ae60d9a538","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.94","@balena/jellyfish-queue":"0.0.543","@balena/jellyfish-worker":"^4.0.62","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.73"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.170-renovate-non-major-404f573b3cb4049c8f4248bd5cf9e4ae60d9a538_1618433350823_0.8446847970643208","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.170":{"name":"@balena/jellyfish-test-harness","version":"1.1.170","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.170","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a642a886c2b02bc5359ab580b86d8bce37f14c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.170.tgz","fileCount":17,"integrity":"sha512-fm/ZhWsX6JTEoaxbgibK5TBxfu8Uk5e4frD62kttrU0smx2vYBrGdPtVOppBGprHljrCPJ1UOXeD9rixTjx7eg==","signatures":[{"sig":"MEUCIQC6iSd1anOo8g3bXckNzv8xhhNRXJo5d2Dm4MUvhl6y6AIgJCxZcmJ9QraYNaZgTGY8VyngAktIEQt+X8M7fdLXc9A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53272,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd1YKCRA9TVsSAnZWagAAXpIP/0AMMDjXEP6riwoo/YsM\nZDA1DtE46+eztH2nXXJlhJ1qXP0ZgH8G2MZuEIoh9twrh+mpjQpne3tAfrOi\nlNAOlkJsxK/aF3gcahGxkcTg9vwgQtHk9HCkwZHxkn8qwtivMLqBC7DcHyLE\nEAPNZY8AWc49ZVQj36YKbsZQ3oFk6sf7w5Ty0Qga4or/CTI5zVLH7gej2P3Q\nyf6+gzjLYEF+cZuMlpSbtYyGX3ZIH47h9ifCVbP5Rb4d6UN+Z2xS2mx5M/mq\nYW4CRCHHG81ssgbzqj4wkC/jKP8OSWzhsM5E7ELVnlwA4MCJO2z7z384il8t\nF8CrR2qQmrB1vQGUZJJw0EjjQalJ5ZZaCl+lNbXJzGglw3ySRZANSo1MrRtl\nkL4635pzlNx64CYVK3CkV1LYIF9YwuDSvBo6urbgE0Si7zM4vfnq55Fs+yeP\nxi+XjZseXgXOYqszUDCpxbvUV4I5MKz+3G+8DSZrvA006qZHuVEFA01V36Bw\n5Mo8BHlsxWDRZO/eB01omT0ChFKIFMIpA+o0QcYWioQdNVZc5vTJhprpz7ol\nH5xTPMXmk806858fJNv1/j5af0d0+10OJZr54s4BlfCjnxWvfpeoxxkKAkPj\n6j5XODq7onXwfwQ0aZ4+RM1ePu/45K9rLl04vfjHC3QOtmNCsKKO8OGB1OjX\n37f0\r\n=Y+6/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f81c13af6952721fec097225b6ee5fee1880710f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.94","@balena/jellyfish-queue":"0.0.543","@balena/jellyfish-worker":"^4.0.62","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.73"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.170_1618433546140_0.06257655598212253","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.171-renovate-non-major-1b80de9ebd1af4575d7863f054d7a75e1bdc35de":{"name":"@balena/jellyfish-test-harness","version":"1.1.171-renovate-non-major-1b80de9ebd1af4575d7863f054d7a75e1bdc35de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.171-renovate-non-major-1b80de9ebd1af4575d7863f054d7a75e1bdc35de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"418c1263c1bbc49bdb017be87fb7da62b03436f7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.171-renovate-non-major-1b80de9ebd1af4575d7863f054d7a75e1bdc35de.tgz","fileCount":17,"integrity":"sha512-9txQ9phF+bIOvtGa6bAmEICDOjGOvzrURLu8jeQqYJQ4oPa/LY5IsXlYcKl5n31IcER8qvd3nxwnzRVof2i2gw==","signatures":[{"sig":"MEMCHxihoNHzH+DeKbSrEobkC+OhcAPC+LJAZsNM4PlxFtYCIBQVOBmhYTtLRAdkyHtJPi5WDTg3zKuGJDfbRh3tNjk1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd3BgCRA9TVsSAnZWagAAUPwP/jMu9Ol+BjPvMd3irIH/\n8drN75Lke9VpShQq6OCzHRp2nTQRNenqPZf+lh3Kpp+U49i9Mi2ckf9Bv+h2\nxOpJQw7FOHyV5W+7meU9X1X923EWKd+S9G362NMen+4p8YLxIDAWYg27fnXT\nfwGG5Yb4OlIW3Zf1u5GnY3+vzTDcF6eUsXQ37yTfa1QI2upYjFKMA6t3vPMK\n75+LV02wlh6WL/UZvquRD+AdT2+h5RjclSj0DT34qUe2aWYBoPJLzutwo62o\nwZq0Sv9LFDNBWbpNHEm38iMLDR/IWMVyatFD1cfMlT+uw1L+gVR4q0Jnmbce\nvQ1JcpUznZIpAPXe3//wU7Y+p+ZZvqR56Fi4aANuNFZuvSLNSuxixznptgz2\npwVQ0RxIsAEn7n634AM+O7N+0zCEo36bZUktaAMAyBgJ9iQMr318UTRMmJWV\n0IL1f3ZsTeptVJ8AaieBlj3JwssyyjNbZwP8o80LkK9Zif2iW0/9DHY2I+K+\nRMTvFIRIMBbfJD0v24u4mAUcQsM53yXwNF86xGG6nowAl4W41/OtNrXO7TC/\nH7dzZSAFPTzomX566j8nlUrmEryBAcqjybCP9SsE14gcpwrXe5jbYHdJlAaQ\n0D3+c1/f9et94ykj+m3X5vk1gNeVC8RuRHW/CEy5Jcskl/e/0Qf5ckPr6/Gt\nfoG9\r\n=8L7c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b80de9ebd1af4575d7863f054d7a75e1bdc35de","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.95","@balena/jellyfish-queue":"0.0.544","@balena/jellyfish-worker":"^4.0.63","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.74"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.171-renovate-non-major-1b80de9ebd1af4575d7863f054d7a75e1bdc35de_1618440288414_0.1867593023638685","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.171":{"name":"@balena/jellyfish-test-harness","version":"1.1.171","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.171","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98bc334d87cba25d0d14f8298011f4052ac94f76","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.171.tgz","fileCount":17,"integrity":"sha512-Jt0WgeZla29xRf1/qjfjAfjVChAuAGgdjVs2Pd8luFESJajyX9mhRl1uJkWx+boMi8DfQPXBJ8c6bYTTe9siVg==","signatures":[{"sig":"MEUCIQDtSyJJ+o+mNvGMCKkovJxlCxMiCidHSSYiFFGpT3ALsQIgF4jJ1RdlTBo+h+DVljrceJR0q1TNHXJhfx+ZWqEtWkY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53342,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd3E8CRA9TVsSAnZWagAA63gP/R5I7rfnnpmoZ4G39du2\nLdMJrXUZOrjt/GXR9bgWUY0rIzp1cDQ5IHhloWXYsp6YtmIniU8d8LZRYhmB\nn+dgiReLXO1o5yO6I9F/Vvu7gOqa5ur5E71eXMHJxlYV99OAi2XffN3ztCnT\nJQHda1Mls+gZ+qR2XR1ny6K9cGW++VAXqG8FQVcIdbxU27MJRRGuW/QL+pSX\nI80m8OT2G6zP0IPHua+Zjoy+Jn9txNbsl2CIHR911jL182EXmaM7rVx/IP8S\nb7WgvOOEDYIOKwQYGUTKO3+ao3lKaxcqs723clFZhWTuyNQfVcUmwJg3426A\nTIHjsktGekboDMNcP1utNhSL4STdYkhWkpiEnPAL4ryQBXxtm+tTFdfeiF9c\n89aAC+b5VkJp5fiHjfFi5UdrKJSrnTp6ToMQbYKK5LFE1XgaDF4JaCm8cF8o\nZe0beVbgo1Brl5xY7a+4PCFWL//Z6Aonx3OQdUfEqi2rOlYHBhKfIwbxf123\nnUhcokXOgatR5XsNQspvoTxL/5gzyfIE3QIBgzOfEJt83e9+WlYOuLM2beTQ\nhjCNYH2Ns1s2ce6vwjh1cWLQliYnKqRyRD5NJwPiu9vQjqkSqvnj3mNx61Ou\nz7iupbNal45Wchmg+Gg5NXbJMISBO8SZ1NqppipSjKfMa9gqf9+WsF2HD3E6\ntaoz\r\n=i8Nk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ae96f48dba6e5dc4c6c0096770cceebad870b77b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.76","@balena/jellyfish-sync":"^5.2.95","@balena/jellyfish-queue":"0.0.544","@balena/jellyfish-worker":"^4.0.63","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.74"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.171_1618440507692_0.1775757753206213","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.172-renovate-non-major-1a76fee21b7121e5402767336fd65026ee6fff38":{"name":"@balena/jellyfish-test-harness","version":"1.1.172-renovate-non-major-1a76fee21b7121e5402767336fd65026ee6fff38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.172-renovate-non-major-1a76fee21b7121e5402767336fd65026ee6fff38","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7aac16ea645b1c109d252189af76aa45792547bf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.172-renovate-non-major-1a76fee21b7121e5402767336fd65026ee6fff38.tgz","fileCount":17,"integrity":"sha512-J2xUPtrM5mf+bDqz9o0qPIlcrxHg6rEpy8ZnZIfBZ9jEdgeii1NoG7MmR+lsSjUgkzs8foHovY4ayJVyOWd8Rg==","signatures":[{"sig":"MEYCIQCXSX829kyaPBkUi8Yq7yknYtDYVnCjZLBUDsHz1CADXwIhALc4u1VHL724P3RexbpQxTbcZyIUJNMU95WwuinkjS5/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd5CqCRA9TVsSAnZWagAAMmgQAJs1HWFF8WiX3bRWJuyR\nG6WfxMNIHvzX2S/U+9eeqxD5VtZ+sE+skBUz9JWedAI0clpGHTl6HX4cE0vd\nSuVJQY2+Bjd9m7cYyzVsFc7OrNfO0rvjTLZX1oRQZkpoqQpWi50bbZXhcqBb\nkMvOmShIPf7eOkcDojL8UfCWLaFryP1nipS9uMyv9XO15iHsP6EXSi34d3w6\nAxEVkuEpJabxRdBcGENL4VAZoVs/6qGpL0IT7KStB+WDWYMKqRc66UsDqzrV\njJNkP5PlfsPdyQasG8kBgE47Hohi7QXrDJOJ7YaYyNQluaCsyZrQNHL7t8Pg\nWjJTDMih3EbTmDZvvWPTqY4yfYqlJ76OubhSfPwaYbJ+UZkJwDidl59rT+U1\nBxdq6cXr+/YszNcG2KBlYUmDOJM8tVIXiKO9CIj2ArbBR/B0VHpczEFRS6lK\nFTb+WpOg5iGRFTBmRXQu3ayeb0ZB8BxVY4qEojEcEUZnKREWPckmL4Gfg/hj\nq5CKNF/y9R8bus9fD441i27McdfwnxpeI/BS5KVfsz3K0wn/+sgHJk4SXPAl\n7kpZZT+YXM4NuJZq8JQ6uWrBonK2oGmh4q19B36hSQG2+88FaeNZW/Fxx+Qu\n/ywEigggWWjFgSg1tS9jxL8aWfBYT2yE+AgVJqEUNCxoPvpln+RZxxKRu/kc\ntok/\r\n=bUuS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1a76fee21b7121e5402767336fd65026ee6fff38","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.77","@balena/jellyfish-sync":"^5.2.96","@balena/jellyfish-queue":"0.0.545","@balena/jellyfish-worker":"^4.0.63","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.75"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.172-renovate-non-major-1a76fee21b7121e5402767336fd65026ee6fff38_1618448554106_0.887871874818055","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.172":{"name":"@balena/jellyfish-test-harness","version":"1.1.172","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.172","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09cc2f75ca1d858492d0313bd6caec7013f20e15","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.172.tgz","fileCount":17,"integrity":"sha512-xlzkyg8KN7dMCL9mCq9YEqOBZVapCSUCbKWqB/Id+qPjtOivQEZnVObPKorYooSWzxC7xgmtLX+VG28BkV3hvQ==","signatures":[{"sig":"MEQCIGzUkfeLnukdbwD7QDLfXHz88yuzgbP96zr84QjxuCirAiAVUIWm0IDmY5HcdkneYRwhRoMjArDTOiVyS1AXdaC5Xw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53412,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd5F5CRA9TVsSAnZWagAAxIAQAIMD4qs393JX99atCGKc\n4cc+sidfDKEVEGCHfzAgi9EeKGx+4MFX+VLAQfLXFpZgJ6aac2mfwDQ4Icnt\nGwOlP2BIOSdsS5SJfDgtYwJpONWFAfu2mfMaCoVeJr0L5KfqN3HFEGUbCkO+\nZAKwq+14CbBM1NxC77ejcaaJyhxlvCNOxAlU4USCWgJWQvu7xd9wb6u4RvTk\nsqUjsSl94rkcJwPD2Te+9jce3n4yH43Ht8zHG+JANto3LTPTj7K/0xNz7dZ0\nYNGmIhV1zioAP6MiYi6LqQEwdSmriWOFFER9oUTWt216H30z5jzH1iDFyZZG\nLdjB50TvOMPGEdj46TgVxw6sj1h2bm60064ndIitngtbVa1fJ3URoDvhbJlX\nEXe6ogp/0mNnxvXB5kbJ6tyIVw/nVsNc19wNjh0BVQR9rhAOAhTwv/yCP7pd\nKDLM5r5lYldWXY+VYi745zCTkRSo6qZgNm06EnUOHI/IfTVmOEWnek4WWDyr\n7hd2zU3DxcEKALDq5EcpujAQceh+Gh9XOeiNCsYBVz1ZsHqGpLDLFv4DHWQf\nHgU420KJ5Am+QTEECIfQpKoG7484WQxSf4icq7zVAZA0VMLY+uMcmm27wV4k\naddMIpEwHcxQuXzeYZZVSGxWARIP1vG8JFx7YldXf83fC4fuRbKxLUJCgCtE\nEwb4\r\n=Kjss\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"37cc5d4e8450f10bcc7f095f11c644084e6bff3f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.77","@balena/jellyfish-sync":"^5.2.96","@balena/jellyfish-queue":"0.0.545","@balena/jellyfish-worker":"^4.0.63","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.75"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.172_1618448760439_0.3766716480102166","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.173-renovate-non-major-6c8bd53407ad8af61ee12b830d226a7d646dc203":{"name":"@balena/jellyfish-test-harness","version":"1.1.173-renovate-non-major-6c8bd53407ad8af61ee12b830d226a7d646dc203","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.173-renovate-non-major-6c8bd53407ad8af61ee12b830d226a7d646dc203","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5235e67a3bfdb95b2e5d7d199d3ccf2105eea977","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.173-renovate-non-major-6c8bd53407ad8af61ee12b830d226a7d646dc203.tgz","fileCount":17,"integrity":"sha512-ygOQNPt/x/giYe3kxjXWc0xnLI0wUZ1oAiOwM3UAw0aitG7U2x84abIWN8ReJkIeZLZ51ZkFCIruSsLDhjXXeQ==","signatures":[{"sig":"MEQCIE1zY3XjoHUaydV1Xc1ynUj4WZtlhkPAU2mn7s+WBJQmAiBOfKyEKkRMH/epofD9MiCIXpI9l3Gi9ttVQyjez3UKJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53542,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd6eSCRA9TVsSAnZWagAAWX4P/R4GrOp1ujhBh94iCXMF\nW0Xek6CJct/Kcj37aXMDHMAOUL3gjUyJMoVbq9P+WpoEfYr3CD83xFWjoCn7\nynC9pRHvotpxuJMqxVSfInzb7vmbP81J0GmoLrrEgia1RcjJCwGpXH8pC6QT\nVcl0jrHDMtstfDF/l/SC/xehWxTZjciHhcq9ka6AHlhXsgEbIikM30PdGUy7\nyS8yUrbH6h0XbQl84qEQJY56RB/daYOnNpNr5bgMnIRXpawgwEUbg4QoCmU1\nEFfG8LZ/OzK9A2XVImNXyQIlNTbOZMNXevnbBzxzoYwbJ8edRvQZLBJwZES7\nQ2ELPPiVI6IDEJ8VWgEG0sOeg6I/abpNalzcbJ3inkeEUwi7gv2nLjdPj8rZ\nWCCM+vke6AUbLGaAxps5WL9KAyorAW1kem1Zyx/roshqkGRtdfABvDQPPt2P\nHAsbWHapSaF26QS50KRg0p6+ScV/W/rnJtxd2JNbggtzzwSna/2Jt8DYsee+\nEBXu0oxfnALs3L+tvRBfbTchczuJOHGuNeedFFha8zn/todA23ZKc3s1mjG5\n6As0B5bKYcs4MEcOxZxfhdtEA2q/6y+hvh/pRwI6w6ilQREnA1uqOTQXLzYH\nON3MPgmwVHNyF5c0r3LCjpcJZmfpGeoSpqydWyAU46bjamEcC+JKDtolHpPf\nhcsh\r\n=wJIE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c8bd53407ad8af61ee12b830d226a7d646dc203","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.78","@balena/jellyfish-sync":"^5.2.97","@balena/jellyfish-queue":"0.0.545","@balena/jellyfish-worker":"^4.0.64","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.75"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.173-renovate-non-major-6c8bd53407ad8af61ee12b830d226a7d646dc203_1618454418352_0.3351188264987688","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.173-renovate-non-major-d705f021199f77d238f973c6405329b085f5f24b":{"name":"@balena/jellyfish-test-harness","version":"1.1.173-renovate-non-major-d705f021199f77d238f973c6405329b085f5f24b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.173-renovate-non-major-d705f021199f77d238f973c6405329b085f5f24b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"493ce637bcddf617e4cf7c17319d744dc0bbd84f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.173-renovate-non-major-d705f021199f77d238f973c6405329b085f5f24b.tgz","fileCount":17,"integrity":"sha512-itE5kkr3wujrRC+2/pOWF6WUln+BglYirMVcSbCF8p7NkddBqlmJLlAH9zNI9DX3u82FkgLRIcbRG2BEZ5F4qw==","signatures":[{"sig":"MEUCICdlDU4nAm+ig5E86+1IbOQNkPTFDYyvYqTFoy8CTA4jAiEAv5MBRmhXUihdtviYWVcUSeFdApAdxxVNsd3mudqdeU0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53542,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd6jsCRA9TVsSAnZWagAAE/wP/j31gc5TBchYNpHr443G\n7ALt1In70TxlNNEP89+3UgJxuavxdcZYhB5a4SBAJhh7wONhh6qWKKCWt/BO\nIQ/hcu5CI09cHoaMld4RdnxM74zzuTUkqFLZbikekQMX7r9vA+LxSQXxpCss\nL6edfjOW6wdyEiOLzx9I102sIcUBYVbuC1H5KRxL+5ohQvu8f58r9Jzm6P+J\nZzIBqvmjzmh3rZtG5oq08NLMijCzL5DMad67vtx3AHLQbC5DlgKxG3H30inM\nYz7a3eEYsLA6EkXDHi6zrgcF1YxDm6hTLbAEfKMfMie6PMpI4INq7ybn+NUN\nO219E++WEdm8vJJnhrDuA7IpHWnMQGv4tUQ1F2hsS6dttzufKZyb8tLNg7yx\n9dQadoQr+fv5UuNwLV8VzWHYxna3+KPbGf0tBVXQU7agHgxqvi8zMB8/UH/R\nIsFI77s6okJ4cUpd34eoL0OjC/Nc8qveV8JjZUVcKZWeKoLoXO/m4eAaWosM\nv6ZXkx9Mj7+lRu7UYTJadjSudX2DFBgEOv9ukWd7xt5yHDn/Z4RkSxh+EVkd\npodFnEWDkiJnvyRpXKuELx3mwXZgavljV7cKIMMXr3mH03vRFn+y3ZBAKNdc\nZXW3ciiKpTwAVqZ9ZsNBhXcI+kYQw8UuuTBzztE9L7FAiVhGGS0Rav02zkuC\n4JZc\r\n=SdSI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d705f021199f77d238f973c6405329b085f5f24b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.78","@balena/jellyfish-sync":"^5.2.97","@balena/jellyfish-queue":"0.0.546","@balena/jellyfish-worker":"^4.0.64","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.75"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.173-renovate-non-major-d705f021199f77d238f973c6405329b085f5f24b_1618454763868_0.6623947040962064","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.173":{"name":"@balena/jellyfish-test-harness","version":"1.1.173","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.173","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9e6aa407e2e8093f371228ed4bd6d54a2aa8935","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.173.tgz","fileCount":17,"integrity":"sha512-aclPyrSUXuz1xbino33W4TpJja+2ekDf9+YjbjCbaZoHBWELm0pTZYTMXq9s7z4D3rW9iCDUjeoKF0k3R4fWoA==","signatures":[{"sig":"MEYCIQDDLs0DwBAzzR+E+GQCz9IAsLyr51FikQWTqOVZSFIliwIhAOHIxVAur8FtEn7KmEAQU+fVylrp2lZZdJtuMVBPXWCF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53482,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd6njCRA9TVsSAnZWagAAAOwP/AiYyD00ocbP7FKOeoN4\nhGJxpAkAnDtllhcoaC5cVdcXbkhjPG96cHaIhDYHwnRXdVf0jCLfpI9gmHQv\nyaz6Trsh6XPQmHPskNq/DjM8Dyw3OYOVipAcVysBxSV742BXy52WeeGaa2Mq\nH4RpwXrrlWzKZTBBYk1WvwxxkfOLKVJdpnk/tkwt0GXbOIxcqnD7wiOQ+wu/\nqf2K8WVvvxUkZqWkSyXs4qwqKpAGtPbbBhV9dOpRtPPMIHKjmKkApLaUR9gW\nP0FSkhVQp787+zrq1AXO9rXlhJ148xT95CC1LH9bwrtgHkHMDQmH2+NCjO2A\nTVKS+3rSh9vJDJMaQgVGuuwlyxt9T+LHTpPonKiWsVho/KwjMCRn5YchowW3\n7jsMhTUK6mbQGXXJ8baOrddPoEy0n0erAHDbS4cAZic8g/eMf8/WnW9bQ9Sz\ntzPeTk0HMk91jBlInS9badLF2CldLlaicF2+Cdqp+TiQZ/2cYbJoaVZZrmUK\n0C3qpus+jDZMA0+d5htqS6Px8NCCjZ4Kwaf3ug3HA67aCInbYFNuLJL26BVB\nodrJTkRW4ZlH49LAISSx+Dwt68izB3GcE1TDBj9cK3kjNcCJn3foIK9uCZ1o\n+OvIVS/puIN112q8MkuOT6cFpGl3fPkmx+IGZHrQE/ikgloxmUCrrXkN8xjV\nbOOy\r\n=mych\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"27f30c5640f61922814e615877e152bd481f5380","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.78","@balena/jellyfish-sync":"^5.2.97","@balena/jellyfish-queue":"0.0.546","@balena/jellyfish-worker":"^4.0.64","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.75"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.173_1618455011389_0.47860395084417906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.174-renovate-non-major-aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9":{"name":"@balena/jellyfish-test-harness","version":"1.1.174-renovate-non-major-aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.174-renovate-non-major-aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"72e979c026e83aa439d25990d585d4f0fc0aeec6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.174-renovate-non-major-aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9.tgz","fileCount":17,"integrity":"sha512-XHvTQqZ6tZTAg3Kc2eDSXu8xlArdkYpAF9XRcF8Nab7dPFr9f6KoFA/qZgCQ6FVhNHnvnezgHmX/CG4bsN6HhQ==","signatures":[{"sig":"MEUCIQD9wdz+cnqqY7SWmxJKI3wWOX2PZHM7EqQck1S4NU9qSAIgEj8LTdzlzZvg46GDyOiwbmh8cNWDEE6nZJ+tqbvPJag=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd8H8CRA9TVsSAnZWagAAOTcP/1zyutYF6dwHknQzq8z8\nYnO+xYW2lWOUtDzgKBgod+06t3clUf30Y3v0j1AONStL0E1GJEG0PhE63o9r\nzIy6HAYcuvaBYHjGe4J4EMhR+9QaATLKdcMV/QIzC45ln4udPMkWRRbog7Lh\ndKZ+DA1EDGeLV3MYPeU0vr9VwQmPOTPsmHjPyQ0tHq4qvHRaJwtpF3HNK7BQ\nKiilr0pSEqthjQY4h9BraOwDCH/nR3f7tXEdWJL72sem3XISKxeQQ0hFcbnn\nYMHJrFLnzY9RwMp5iRNB+Wf5oeEDYIdf0R9hq2EOZoQc9Dxy2u54lD0LW3SK\noWCDeXftAzZ976Erifq4hYtxydmOYXXEB9r8S//Cc1P1Qngo3UKNn93nx8Wh\nzzjEKuNYKTEjFzfDKTa7z40molEi7RaVmOY/iep1KAH/nBIQEUR3EbkJTHK1\nm/5R5ajy4Wzos49nxciLgcX5XmrlxMOqtBEgH7rkq9/ZAnkssUAP7v9zo11b\nPB+6sADhYhln6wo7l8CEh3fuZSd7hNqQ3bTdTGrm3xPa4glLnPkDBiX8MK+i\n/t4SL3jYbhB+gBwMN70ZaxOZ3zXbiDQTP+t4PYuhZVCkiaNmVxQe3nx2HtPi\nLgy68uuDUK76eMvWo8yvmPb4TSDxyfas3+fm6rsFIlrE7T8owCd+Jr5UuAss\nP2Yi\r\n=1Vio\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.79","@balena/jellyfish-sync":"^5.2.98","@balena/jellyfish-queue":"0.0.546","@balena/jellyfish-worker":"^4.0.65","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.76"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.174-renovate-non-major-aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9_1618461180180_0.841725139406269","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.174":{"name":"@balena/jellyfish-test-harness","version":"1.1.174","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.174","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bee3d44af022cb56f5a34de15665c5a8a29020f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.174.tgz","fileCount":17,"integrity":"sha512-NxZdKqkxp9zb6LieiPtIunGuoQWSM5hA7FYvjYaOAbHW6FU19a4avB6FwnUsMDdiEnHA3iFm3Jj1H0ZvqxjBgA==","signatures":[{"sig":"MEQCIG9I+2kpLcB5wEtKIGsQmX+Q5nuYSIKY44V8aCwk1VylAiBCTZT/oAq1H+6xy5fPTCsNxMcBqM1Qe7fw3s8uSbfxqw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd8MGCRA9TVsSAnZWagAAiNMP+wfPyN/l4u1VL9KB7eDE\nMVyZsgr4BkNU4zHu4TBM7LXBTTxhKA2J6gb60xIyeeEtRAPqg2+BkX29ljJW\nlaB9DPs23syL8w0xvBgDQ9xQlhQTfMDRu+a2YeCzQfZ63QkgY85iLhhdqgW2\nX88kZg/AHYpm/Ioc/0CNJjFRiV2Vzcfhb4qyMACBRJCXHLoqVYsQG4WminPl\nr91wYQQ3JJtXYK8YnmimJYcJb4oJAoUi+iFwxGXCiHTc1PGBhFrvSweJhFsQ\nkjqfLi5yOE3gN9pKUBhY1SFaG+B/1IQxV1QyBRksfSyfqzYUt6sMThAceIgW\naq8YtsJr8t90iK6MDWne9AS+wDcsU3zRWyx4iiuTChMTiIaSCYDC8BDMPjBM\nAybrwZoPE8lcHflXErpbgI5NiJINc3y2MoEmunX3zfAWegrhRumLXw8M6x3V\n22JSW2EemwNnVe/FNbXawb5pz+iDXNGSs44pIxhHvtkYcAu9TcN4FB7VUMNm\nU1d/hRWFYHOyepsowFskxETSzsqGB/KsuMYWlV0gB2AcSq1ZSUHO7UzIsAta\nkflSI92Wvi+NZaeBPFEOZCNzByGtwPmbCqfq7Yv2CA1mABspYhEzWLvMlZQ+\n/fPTpACBCgfUrYSFu/s6AjQ5Pc7Gjnppv8M5xvfKLDMq+bMsuhDbx7+Dvqd9\nB+D+\r\n=L8vk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"13a518076a8c4db6f4ff858425e3dcaac75fe5d8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.79","@balena/jellyfish-sync":"^5.2.98","@balena/jellyfish-queue":"0.0.546","@balena/jellyfish-worker":"^4.0.65","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.76"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.174_1618461445874_0.05403278622957641","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-e59e55ffc8d924c7a30438e2eb135501d13bbe82":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-e59e55ffc8d924c7a30438e2eb135501d13bbe82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-e59e55ffc8d924c7a30438e2eb135501d13bbe82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f82a3ac106c2757930cddd1978b45785067d723b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-e59e55ffc8d924c7a30438e2eb135501d13bbe82.tgz","fileCount":24,"integrity":"sha512-ebjfQR8dUoGlW6whUYl6sR3yvoCFWd4YihjQvdnAWvTkAw3UHZaxyZ2bKEI6Jp6lNBsv5H/kqW2ITF5Tv/bjbA==","signatures":[{"sig":"MEUCICuJ0h55h3SMo+iBsWmZrEsaPW/RiWJ8yFN8HjDvZ0hKAiEA7chmxQ9IRIPC1YXnZpbDumJ/HBvJ+1iwa9EeUnwT/xk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":77281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd8/1CRA9TVsSAnZWagAAWwEP/2r2YxyYYTvV2qEMiGzb\nepcQh30LOUrk0PksdS+HjDExfDcC953tOLk77iPxXizj1OwWYSZz8lDsYcLc\nC9b8oaT4ZxIfgntxPUgq4+Bpr4LVRnaYpy0h8WbSD3l4VTjMMfiS158y5Vf4\n9hskpA6ANxBRgLR6VYWZYtWkZ7NT7bGyYxRkgx4MMdWExcCWA+a2u07+AljH\n9Fg13K47Mj/isIUZg7Trm1lfthCe4V+lCNJitNd8YhGZqYS23MsjwUrFrCEG\nZipGmnWAetveLfNMj9Z42/SsUTSPs21I6QHomsrfHHsM4szeRtomkfdEF7dF\nvHLiv5Gd3obIIV6Cm9rY5NnhgZy2T3F+QL0s4+Pa4uM21aNtQfmntVe4raFt\nJVWtOKQ64dqJrSiRe0NME8b3nTKB+iQ9a4vFEsYhjAtgyxamFy2E6WnG82lK\nNQy0DFF+WFKalzM4cRAf53vQQw1GmcYwhnDinPfvgOh+mAa8umNTEywgYPsx\nuqKhJzfwa3wr9FIAsGvA6HlSup3GizKBIrvujxN7/+g88oW49F6USsR8oyKN\n9GBWKZ4GAEmGgXLuIIeiGLVbZj7F+BMJk4zaykizCshdMCpbARg9Kq1448Az\n+tc93gIknKEqqvsJ6bYOts/qR56dTFEuwlSrgnlVJ06OCipozwmVN8Pk28gG\nuGgT\r\n=cRM9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e59e55ffc8d924c7a30438e2eb135501d13bbe82","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.72","@balena/jellyfish-sync":"^5.2.89","@balena/jellyfish-queue":"0.0.539","@balena/jellyfish-worker":"^4.0.54","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-e59e55ffc8d924c7a30438e2eb135501d13bbe82_1618464757258_0.05238110662934714","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.175-renovate-non-major-de3ddfbfab3a828ed41553715e5cf750f331c064":{"name":"@balena/jellyfish-test-harness","version":"1.1.175-renovate-non-major-de3ddfbfab3a828ed41553715e5cf750f331c064","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.175-renovate-non-major-de3ddfbfab3a828ed41553715e5cf750f331c064","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a3101ed493db32bb71df96bc64d9c3567ab9c4f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.175-renovate-non-major-de3ddfbfab3a828ed41553715e5cf750f331c064.tgz","fileCount":17,"integrity":"sha512-+y6oc4PnV7Ze3ZUmhFE+tcl0jXjRO4pl/ikOMHj0ibYjZwst6kpMTIpIDwfmWlCr6wUn9PfhOUz0yyBe6telSw==","signatures":[{"sig":"MEUCIGu3ZOCk9Im2DgR1igz41OsDbTINKM8wv1XQljMslLV6AiEAr5/uDw+CZvq/j5PJwrjalvan5DLI6p9osxi3IwYBb+I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53682,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgd/9SCRA9TVsSAnZWagAAJ/0P/RNBYV67zKtx3mGMv+2N\nTPA7SnyfMkc9kU/lcoK6MD1SY3djcAbRLnv9eIjkbaT1f+PZEFz2iEkbXFlw\nfdM3+c+Z3YJxDHUlEx9LjG8mw4mG5rgqjcO+vu4UXT4R4iuXh0rRA4A+yVTo\nAVGa/HybTfTTVDJ8qf4FXXfcuymt9NK7tN0im5kvNqvqkgMsDT8nyJmFJha9\nMy1skboQRvnWjtG2bIJNpy0HXHKvb+Av3ICLDwO9PmFQoe3mHYFQSByrP42C\nzKFlKWazIYFYHrOGEVtDBIyRTtA29GEuU4SRCQLszTMms4eapbmUim3wuE3G\nYdn0Jo2JeXVEydzYJetZ3020CqFvGmvImaygqDiOda/omReJT3zWkPR6xGE0\ndbJy/wmZ+XFJuQ5xfV1tZEfpgx9FiudjE24LPsHy8YG4UAesztdrIOhTfBHq\n+Cyi6l6Lgdu4QdEGgr/W1OPM7lYXBWDbcSj74v3ul2zPHzN75lDyOA7qZ+6M\nms5gDXNA3ArfnkaygWR98n4FIv0MH1CVWERgiABWZypqvi17GdS4Jd9ygzgK\nGyvzxrOif09myOQGe5FUEULPhtrMgv59v/4wlda/eMlMpLl/wtVSjEcxg7PY\n6n0VnQAtkLgQOMr9yOTQgBXIDq97RqC0LmtwtPlwVZuB5CnAcpSDdHqDP+5c\nqib2\r\n=kwXF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de3ddfbfab3a828ed41553715e5cf750f331c064","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.79","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.546","@balena/jellyfish-worker":"^4.0.65","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.175-renovate-non-major-de3ddfbfab3a828ed41553715e5cf750f331c064_1618476882123_0.7101189532005883","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.175":{"name":"@balena/jellyfish-test-harness","version":"1.1.175","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.175","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fd0207e78eb7468cc4177515ec65dbcea7dac0b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.175.tgz","fileCount":17,"integrity":"sha512-QTl1vFp570HfdNi+eNiz1NsCkeRQ+gKAOyCBZT4CTWCOYfOqY5AGU3y5Lw3SP81QJchG40HSaVxcBTZiWa1BZA==","signatures":[{"sig":"MEQCIFoI0KkMGesvfzhSltuu6oT3Zb5jzQHLNAehbSyc6t27AiAbRoTNAGcm+uJnvKK6KuCEykLzru1maYW2t6XV9778+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53622,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeAAoCRA9TVsSAnZWagAA8qYP/AiBmvISTWcKvu42JwXJ\n+YA5899SoKOS1nVsCql13AihMKEBDB1dwfDqQF4tq5YLb6DWTyQpf581vytd\nGKkFO7LRdcvOGeDn5MjK18JNDIiiub7OACsB5PJfkuqAKq6yX4ODmtIwXGfb\n5n+OzMdK5Z0Gl3XNRzg8g7F6BsS58tRwfdsK2foVh7iWFpOZZk2jMQtV2wKz\n6q0zfrTyEDglffIpDvgyy857W0D5xV09YRWxkIw3pk/m8zqiuS0uCHiaemEv\npeeBl2ZEVzfdaDHVwh5kTYxFkaHll1jXUiWlItsej+Sl/XG01QA7aYDcxj3O\n/9YAxE/FesXcEGFG0NF4HzpbPznvkjPoE2JkDr2LOBj+9/cBycQFjYVKAgzk\nTliDvaKVczpzEZuIMoTBrY0ll5hLDPzyTRCVI6dJDooYUfgmREoTrh/z+WVp\n+Y0JPMl9QNHCm89oFl7oQUF+iuW1C6N1u8CuFHZ+D7WPRlKTZqJZm2r9nuiY\nysWBeDOYaNN6P8uITbZq26FWnu5vM+9QEtFR0IFVDodcFd65X1IiZ3F7B3fl\n0AWfITmWLZnEW0seXwr3jHbQQ6rNOYM5hK9VEbIDO4RQNJXtF0H5c6EJCNsv\nEH1nH+JKOR1Sgp1uqDDoS5BUnpIZf9BOq2Jve082cvko5uyc+LJ17ByAAmcC\nYEdd\r\n=qlOQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"66f2c33ebdef44149a383f63e2213fe32c4259cf","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.79","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.546","@balena/jellyfish-worker":"^4.0.65","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.175_1618477096320_0.19904033992781245","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.176-renovate-non-major-e44b38310c36ba8b70d949ce30d13b59f9045329":{"name":"@balena/jellyfish-test-harness","version":"1.1.176-renovate-non-major-e44b38310c36ba8b70d949ce30d13b59f9045329","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.176-renovate-non-major-e44b38310c36ba8b70d949ce30d13b59f9045329","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e3df3298d4effed64b3b8fb1eeb755b3cd8cd3b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.176-renovate-non-major-e44b38310c36ba8b70d949ce30d13b59f9045329.tgz","fileCount":17,"integrity":"sha512-/vVfm3b0gSxbN/UVtAsYiOHOAn8PyButPa59ZWJdZKpatBEuFdWr1ivQ6k4Ck5y2s7sSbrv2iSqjFnSaa0Wj2g==","signatures":[{"sig":"MEYCIQDwfI7AZLt/Apc0TeGxN/HnJITtNTLqjVmF39t24KolZAIhAPyAR9U8hDPDXL4LCTUSWwW6JJmQq6JN3vXP4WTRqfNn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeBf0CRA9TVsSAnZWagAAucUP/0P9uofftKwz+XiovsVp\nDkLGcfkopwKJnozN3EnqVWZMDpYZ1H4ifDZcXp7LroQmE/s0+ksQGoM1ilAR\ngBItDONt91edI9cdDSnS29xzWxbButXL9kvP4fcAHwXSt8+wWslXgYkDcV6x\ni2OtMwEd7fVxAYqY6LzZ0rTylI+YSTRwUgJzQje6vmaJ1MQyGd36qrNWNMRR\nMV8oPGQ8Ubx+Cn76ZQUF6zUIbUgbhYDsTye/+sHWA5exZO2Fs599BH/f0KAT\n6GnN3ZT/W8kZRP+rY65+HHqLr4oY/k1P8B3BzwORNCls5gHZ+9KTXGHpZ1Jw\nIYKLS1Wx2USfu+Vd9weBDmRyQdQhtClcf4XJbQpOv9DV2/hYYYgHouHmrdS/\nReRfPqFNBtlhgcYXCrCZWg4l3h9WdmbMHZCwXqNECppthiGHsVjMPQ5/veLM\n12s47tUy65bUfDc4j8O12qAmZO87PK+93Hmgwg41GqiaX+AsszLBOj/2zxRH\nxDESD0iMspzDMdyBSkbkG33rGrOx+W/Gxmni6F5+Ij02C8cmVl/FNVoKU2wM\nFrEszh5EmKOFIo9uOR4Za6rIZFJ91ApVwa0F+KnTqNVe5quYjK1ksoy4jLkn\nYWePVZyIiLwf7RHw+MSz1pI591sm6t7zvvdCwVXGku7QhDp0foekBUWYGIGy\nH1Kw\r\n=qp6L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e44b38310c36ba8b70d949ce30d13b59f9045329","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.80","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.547","@balena/jellyfish-worker":"^4.0.66","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.176-renovate-non-major-e44b38310c36ba8b70d949ce30d13b59f9045329_1618483187887_0.927151178186014","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.176":{"name":"@balena/jellyfish-test-harness","version":"1.1.176","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.176","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b3a53ad365ad46411063d4e536a0362efcd3a8ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.176.tgz","fileCount":17,"integrity":"sha512-eXr9ATQOrP4lQg3SuSH+DHLXVRkURbID6AX2AtCR9fNOmgttdXRmK6TRjffHbhhrxs8fOdc9YjAmxy7pUbuy0w==","signatures":[{"sig":"MEQCIAjISxrd4izWZy3cqv7zMOrySetKDkKeKB5v8IbYXmtFAiBJYRmxseNVP+JzT9DI0WYWGnaPskVNwi6f4UC/EA1CIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeBkSCRA9TVsSAnZWagAAAJoP/idKaW95IE/LJlx9OKXj\nvu+VWU2DmBglwiJ1ViuUUTsnmXB/AQzffukccKKc/huBmAwx2JfidlxBNY50\nxkOeEgWHudFPlqJk6eyOpR7Tf+5lizdGKBlou6yofrijTud0LaWSu44MEwiZ\nBXg+d9o7i7eMdPQprdq5BHBuu8zOdU2AEp4+FJcdGmCRx4+aD7HvK0zO8pZO\ntFfvodHFACteKaeAPOkjlep22Re797WeoLQC0qbpPeRKokryCyMZUPOEsTZL\nW/PCFNKpoR6qEYGyeFEUnqyLPPT5tQWh2HxlRQ++NxKTZOQTqobG9EsmtgHY\n91AwP9j1XT+I23t+1MterqNmVLBj0+WWKMv+ZXf3TsBQudtTRbdfAZJyeSaN\n1eLjUK3JC6I/aQIDbKuDsU9kvMV2dgGN3fLaBJkWFycQoNEY5IGNhLlYoeOO\nO3AmQsKePX2WZdaynxrPl58gXzPyRtnWfuaVqYE7eZe9rKgW3goGceBO2njB\nJvFhVry4SoF9B+oiHYquONma7BUQBOdW1XFTiaiUAUKRImEVBtCYN+hUqp58\ncR2fDapFXwHABEng7lEIs31gwI7zDt3UOdmQHEhzbJiRwA/wPVmlM5i+wlb0\nOCnWcdOIZU7XgsEtJCLiPesjEqnm4wjdDKglzdkOIRlWPW0g/4RObwEsGyYn\nyX5p\r\n=r80m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ae2a5ca5aac728f514b545e16c0577df249a18fa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.80","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.547","@balena/jellyfish-worker":"^4.0.66","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.176_1618483473854_0.9759509276690446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.176-renovate-balena-jellyfish-sync-6-x-a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e":{"name":"@balena/jellyfish-test-harness","version":"1.1.176-renovate-balena-jellyfish-sync-6-x-a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.176-renovate-balena-jellyfish-sync-6-x-a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c116cc83fcc83da0c4ae0b25c8c1a44e9b63184e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.176-renovate-balena-jellyfish-sync-6-x-a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e.tgz","fileCount":17,"integrity":"sha512-Dt5vAupSCjnIvi+bCzeOkLIB6FhO7er8XUzZeD2QEPP63lzgYTWrP/VK7zR2vasI3Iza46XySgV7tRicC9m2qg==","signatures":[{"sig":"MEUCICDKasd2PW5SkhfOPYv9RBDLVj/r7lfwnvyMfOjoB/T8AiEA3wqUbkfmB9pVBIDA4yV2H2oSVBqod7qbFW769fjp9p8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeBmkCRA9TVsSAnZWagAAzHUQAJ+P4uBXYOxzpzbThI9b\nxYFgpw9ofmEXQgWg6d4cU3g62DiLopH3xRjCZmuidle9zmpllTY9qX/sSXe0\nkRQRFPwaDYU37fDsZoUajYQdEb/YnwsaB8DEVbFbIE/f4o0rKkJtAeJC5ymA\n/5VxTDvuDZrekS8BlP9AsGVxa77I95MVY3NONKpT5jwbdsrTmelwsmkVgp6N\neRA/wJ02lD+ydzkayZ6GyZ8l+VeqkQ1RlAJYgAzbbfMjfBzq/n9N31QxKY+h\nWEscClthGmqTu2PtiGpmQdWCvmBxijSBW0A5SSh7GI1XpxS4VltYEVKeTFak\nV3/olQaaHyLy2OWzNdhElpHYav+UPkjUv9Jqlg9155GBr5Yk40N2rsYkO/qt\n9KnJlXxWIOF1ek9monmJBlRWZ3n2LkCrpemh3DoDKMD4528bSv9c3QnKmM5P\nFg3yv56MEB+D4RKHkswFdzWg9DtKUPbmFyWAAwFK+SQ6fb1zVvKFr9UsOuyL\nZOt+W2QBFyp3ii1q1TYYFEy4bWgkJg/jwdrwjmeHccltt4LZRU6bMkmD3n5j\nZIPTVLZ0Ds7KCAKdF0UPJoQItPqG/xho6gw03J66wiq/0F7NyTUB3qMfr6VQ\nj59vX+3XIggbnLumaGkCgU1Sep0KhSHN5pZPrvIU7vafU1WhrTUCTm3kzN+q\n5Xpq\r\n=jale\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.80","@balena/jellyfish-sync":"^6.0.1","@balena/jellyfish-queue":"0.0.547","@balena/jellyfish-worker":"^4.0.66","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.176-renovate-balena-jellyfish-sync-6-x-a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e_1618483619654_0.052019575487884495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.177-renovate-balena-jellyfish-sync-6-x-d55c715cfa2251ac0fcb8a17c00df584a7d50b51":{"name":"@balena/jellyfish-test-harness","version":"1.1.177-renovate-balena-jellyfish-sync-6-x-d55c715cfa2251ac0fcb8a17c00df584a7d50b51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.177-renovate-balena-jellyfish-sync-6-x-d55c715cfa2251ac0fcb8a17c00df584a7d50b51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dbb171ecdccf54636777f1e56ba00dcb608c5477","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.177-renovate-balena-jellyfish-sync-6-x-d55c715cfa2251ac0fcb8a17c00df584a7d50b51.tgz","fileCount":17,"integrity":"sha512-3T+HTpfePns4hqA1bIBs5RRJ8AwwBVC8vne/9Q/dMV+4GzHPEFOwmssXl0D5Z6JcU/d9mHfPZJmQbxflXoROiA==","signatures":[{"sig":"MEUCIQCvAyFILBE+7OO/wbkkcn3RBxTuBFSEm+RKOSmWoNTyIgIgK+o6P/bWwnt7RX2Cdo//dbHwR0bgj7vjQkjVp3pCKnc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53867,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeBpyCRA9TVsSAnZWagAAaVUP/28WAX4qguG6UbY9wTOt\n+rdwUG32++46QEYZ7EUg6QUNvvpbSwZuL4On/a8hgEt9LKpt2Dgw0PAkpKDJ\n0o1MFHO/P5O1OqaN7OtQIkh483bJcA7r/AAa4RjqHr9G+apJ+lKA4Cte/RZ6\nsN6AmaXxndUMEAfScKopX/vti+EhKmvfpmsndMgJ4iLJgMrT2Jl7D9MNNzN1\nchqUTZcEHBWJrLhX7QKqyo/JL2xbVw39SP9v9/t1BK/Mmh5Mf3zbH5tF+0uB\nKggNxawqhsKUIqKp0/tqr+cRnTjBmg1fHaK15CQ5C+UIY4BihD5on67QpDUZ\nQC2Cg8h8jmfsdE2wQITJhML/qEt6RtrOaATzini8A/d7aLTU9i9Jx/JGefC1\nYv5NSR/sDZqELjbOt1DWTRvytQFfWHia4TOomQQA863WJaOj5JPx1qojix4x\nVM/+sQAjbsnA0Gj8odkanKtcod/f97idTC97l3YRJgJn+7bsO1fmFI1p3SD9\ntsNSEzq6IjLlDcNRHRdFKXC8QsnOcJ52LWGayP3vob7zUg6fZ9xMPUqOpFQK\n3/ZlBXc6U7pEngXZ59f/OAk02yCWDLtP9qLF08r35gbv2wok8W3jgCfFcZre\nOGkVgOLeZIBM8H8xWLuVvFdcKWWb28+U4FrZEldZUl8/1xmd62TKlKNsUsPP\nXMa0\r\n=ujRW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d55c715cfa2251ac0fcb8a17c00df584a7d50b51","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.80","@balena/jellyfish-sync":"^6.0.1","@balena/jellyfish-queue":"0.0.547","@balena/jellyfish-worker":"^4.0.66","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.177-renovate-balena-jellyfish-sync-6-x-d55c715cfa2251ac0fcb8a17c00df584a7d50b51_1618483825722_0.03222516667238273","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.177-renovate-non-major-3c97d381332976ec30c78a4c4775cba42f5e9da4":{"name":"@balena/jellyfish-test-harness","version":"1.1.177-renovate-non-major-3c97d381332976ec30c78a4c4775cba42f5e9da4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.177-renovate-non-major-3c97d381332976ec30c78a4c4775cba42f5e9da4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff266de690c792b1c6ef16ce2c46c7a4c64696f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.177-renovate-non-major-3c97d381332976ec30c78a4c4775cba42f5e9da4.tgz","fileCount":17,"integrity":"sha512-eUu6W1tP+/CP9iB8Cj7vmKrzUUVuVyY0em5FsyGJxm+K+9kY8QTgXaG/tpqAJKzzpsxe0BAtdYsiWv3Gy9W/Rg==","signatures":[{"sig":"MEUCIQDeJcpT1OONotHUMvN91pZofSvDmBZUpZg/2mLIHuSwWAIgbrP/2TZWFcENvC/JPt+gvetTYMr34vgDbSaTMaYb++U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeDGYCRA9TVsSAnZWagAAre0P/2ULn72stggzDM7awMGq\nVd9OdmAcoQeRIHBqXLlC9x1365ijvXXDa6IvcxWvruAM2exxU3kRL69vFG1h\nIFGmr9QNkAIPfPQAT6d5/VPb1t0tBjCpZ0Z6V5bp/zMTgzr2qd7H8RpRzRi9\nJXEP+oicmM0g6y4b9MrHSzWj+MGI0fkPK44sst7PpI6N7H9ktA7w3aN7G0FG\nVK1WDA0naB3+YT5IPo0aYLRdfzExZT2BTcgK9pIQ7L08gTdK3s4NxXcfPC39\n9g6OkJkgQxpZqFJTepA/G7Oae+Imz16Ocv2xsG7zWMIgKuk8/hQbEHGkj47v\nWegKwsa+TifQ1IDLUbbZiMzpyECPqnzjk7wGG44KocYWsxbwInBDlgZNrU0a\nCRxi1aGY9lqiF8jq1LFVVOB7ytPU6L3L4o4Mpi6OLxOw7Ib0sUFBmCaiaa9k\n+i6wavJ4dK4o2w8aaZvGt0nbYO47d5m45XTf1c1UULNw8YCFRYXxJbg4xRl7\nAS/AOmA/kmU2NXUMZII6W4w34bLgFLCSwZipX184JQRK0Ap20Wc4eM5IPMME\nE6eVQs4ggRCU1nA+aDpurZk35W+nOx6UVUL/TXcMKV/IZvWYiJrvqAjeE55n\nc+kvZop7JwZl/pZ0PBYFjrjUMWOD6pUJsgKrb0nW97+3UPPcLsYRrOGZDSez\nVXeD\r\n=L0Al\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3c97d381332976ec30c78a4c4775cba42f5e9da4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.67","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.177-renovate-non-major-3c97d381332976ec30c78a4c4775cba42f5e9da4_1618489752335_0.8145232254129349","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.177-renovate-balena-jellyfish-sync-6-x-5908847f4b30692a2063e25d0a950e2d039483f5":{"name":"@balena/jellyfish-test-harness","version":"1.1.177-renovate-balena-jellyfish-sync-6-x-5908847f4b30692a2063e25d0a950e2d039483f5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.177-renovate-balena-jellyfish-sync-6-x-5908847f4b30692a2063e25d0a950e2d039483f5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b413dac0b403b26cf2b874e689d7b99f518d3d7c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.177-renovate-balena-jellyfish-sync-6-x-5908847f4b30692a2063e25d0a950e2d039483f5.tgz","fileCount":17,"integrity":"sha512-obWeghkKkQyKk39xR74UqW97Qk+L5g3hfEruBUOQzEH1sAvnDHdq9UiRbW3wEBsCFI6kaQecwYCkw0XrVPrEGg==","signatures":[{"sig":"MEUCIQCFDb/H5rm5n93isOxYV6SNQUnY99Cpq9y2ZWOKKp+aZgIgaqiKPJ/1XxBtHiAIyoFe2HpYJOz2hsLq+UQScZDFGa4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53867,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeDHKCRA9TVsSAnZWagAAICwQAJNWfM2lgR0hLJEAYUAb\npxji/89EC6AorvZG+fNcbKEyP7Nhb933MOpl1wSnGGSfdlcfJ4kQdnQLqOVu\nuLpZIhTADH6OGoZN2sTHBe1FdX9J67PC1e4UytPVUs5DNIVRyBcQrsF/WwCU\nFDv80f8oFSAAREPcamyMvDEnsLUp+bUYzg9gJfHTGbphP0DllPT+3DXwEMca\nqEBU/PsCVdXHplD8Vy2YD6CLkItsci4F/Sy6jNtk3IUSfZWhC1C2qGykgSxx\nHhObRjqU3Rr67Dpdk5a9H2JiS/tP2+a/B4dZFE8kR7i+CQ4m1DpgWQ0+KGUU\nM/xdEyvokuOR8IUi1QF5XWEt7YYQAm9f+zW3f61efyQ3sN7Hz+a9mTRz6YI+\n3VZ7a48f3z6x2SoPnhzBhPUFQn4iOVU9AEYRx4IvW1YgMClCoX2q0+k1XvdF\norW+zO+m5Gzr54VcMiI6FIw8t9mTzHBlCgxNsulutiG5QYTRktvzIZ8GKBax\n2dvadiBlmaAskDoH/l5v4KpvN/uzsmO0YSIYWYLH+hUQdW8mVikg8G//AgVv\nFDsBCgL0BACmeRTy/+rH8hZArfTt76/E2bMWjxPcZQ68VFbicCFEdZ+jDVKo\n7Ol8D2cHc4P7FSh5mDIVMreWU7xeaEpkxsK+gqpUhcBDyvAbrB+n2ycfnPpl\na2Rb\r\n=KL5L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5908847f4b30692a2063e25d0a950e2d039483f5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.80","@balena/jellyfish-sync":"^6.0.2","@balena/jellyfish-queue":"0.0.547","@balena/jellyfish-worker":"^4.0.66","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.177-renovate-balena-jellyfish-sync-6-x-5908847f4b30692a2063e25d0a950e2d039483f5_1618489801204_0.12487984169226896","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.177":{"name":"@balena/jellyfish-test-harness","version":"1.1.177","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.177","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0463538da06223e0b038c417637851e95d6401c6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.177.tgz","fileCount":17,"integrity":"sha512-0TrHU9tortLK4+ud4lsfbU+/YGhVC6ePgbpXj1xYAiTjX8+WVY+o3hRMhcq/8X1auUO7qJNwS8nRESivipF48g==","signatures":[{"sig":"MEYCIQD6EiGtrqbGLdAlIRFSVcoB0D1X0JoK+XwcQfNYm8WVgQIhAIKSld2pd0SkcVxbKIHSAPWWCMvggv/ohhCHPDXRsbmS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53762,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeDKSCRA9TVsSAnZWagAA9zoP/i9+7Fw6H9EJLDq0vjr4\nRRNYr0uJGicpTNQBTnqyloWMuJF1rNtv9W+iD6Fv+LUyqC+X+aJ+i0IXpgV3\nCphtEXFovdbI5FZYadQDvUEsYw9uFrfrWDfWg5TUYZjT14/tpng/B36zZtll\njpG7oKbanMriHfwrDDsvuRTip0PLmdDh4sxcs4mxOf88uKIbSyk2DWuf9Lxf\nMMrlRBdXSWsqOjX7EI2NhFN4ubbr8DI1aoRbkqWNALxYJlGP8RhwQb3dTT8F\nAnV4dj+bJeENlIIzZfLOI3m84Ao+CWMwEA8BubMvZytKostmPu9sgOEf/noJ\nNjlOB/1h7ofuAk3BdHFfSg9fgS2PGPPDNS1mZRl5XSt6xGWahK7EfxxbDvq7\nczgJQcEmEiz30heWWF1Il8J94mZZaZDYZpqRlAVm39BLxuxBKpEFOd2UPeTK\nw1FFdyAvziIAS5esLPvbqRouYpQKSyhsqB7jzkls9/uxYO8UjZFTi4e3pPER\nBt2mHHJgSQQI5JXox1rQzu8bAqgl0ITSZ6bAKrdGAmAZVjiiKyztZbtl9eMy\nzTSXby/hPDuChas+uXSVYMozV8pHH7zAWq9kIV/Ugfw8Na97f2QMxm4OvPcw\nek+L7DkToJxuFYtqqhRbRLHeC9wQGEwfB5moNL7mRPo+cFNKQSnC19qY4cyH\nEEP6\r\n=K6qZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"687f71a28e230c0bb6caee54863449cae6fac7a4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.67","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.177_1618490001961_0.2940024648246846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.178-renovate-balena-jellyfish-sync-6-x-baf4372c721b58ff88c5b1dd1011307f81011eaf":{"name":"@balena/jellyfish-test-harness","version":"1.1.178-renovate-balena-jellyfish-sync-6-x-baf4372c721b58ff88c5b1dd1011307f81011eaf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.178-renovate-balena-jellyfish-sync-6-x-baf4372c721b58ff88c5b1dd1011307f81011eaf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5345c2435924711c3e1b5ec38f449cd39e30320e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.178-renovate-balena-jellyfish-sync-6-x-baf4372c721b58ff88c5b1dd1011307f81011eaf.tgz","fileCount":17,"integrity":"sha512-6T4mMH6KTUn4monuAWikor++bvH00Bqfyda3FzaStoJvEgsW3/XUTkQMW2BETfGVm2S2f8x+p5uWHRF1nv3B/Q==","signatures":[{"sig":"MEQCIH3d4gQjdqlnCHex5UU9CNNqERhMKH8NHb1mWRmNwTTMAiAxOq0chXoSjcIJdJDxWD0JKt84HNZyNGk0QjUAFiTc8A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53937,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeDNNCRA9TVsSAnZWagAAm9MP/28GUSsmw1e1K6FFT/Jt\nxrD04ZRyHSrsZ9kY7nkqSYAXIOUZYsVlsU2jRKaxWtjvnfFRwlwZJfwyxGWn\nlrLTGjxeA4OyXkZQuCu2pCWmd+1XToJ2qJXk7HHRdATcCBxangXck3lyMou0\njkCk2kdLgPJJTNHMJnfke96og6+31PTEL5oX0bZJOnYDIX3OcfqBFAKe7HJm\nGwiTq7fNavMhpuYQA3UwKRaw6BVTtbFQbMLvFdj5p6hQrQN4qTNBn0Vp77Bj\ngh7YqBwLsAjY8m9smp4WNAlec7Y+KtD6EAeFWGxZ+D0uryb8P7et4FY6qeKl\nqGPk4ktx2qkJqsJ6NuZafmRREnPuaWL5UMz1vTlvoPTlm7qxgrS/uSQxONRz\n1iaM3v+LlYvUBSfqs4P2h4r+pHDMHzDd6NITI4DZ6AdJ3Vad+Pgg5ylkb1rg\nS6QMN3u3FzNSOteii3yPawloBNnHLGnLs5NiPr4sgs9LsG7hePD68jj+qwwj\nhLFOsvdAWpHWKchi0Smkp7sBT1gdGC2hC452yuyvVpLYg2rj6vyjM+jXYuF8\n3b4dvAwjHFgCDpznQzx0SdLNigS7KDbkKAzbm5vEJPL1VMA4lbtC+njkkWfB\nuxYoll/+MLODGY6ua5WS8o51PjJx12ufFkjN6sYoL3jGmGDKCOebkDMfggE2\nM3W4\r\n=xO4L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"baf4372c721b58ff88c5b1dd1011307f81011eaf","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^6.0.2","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.67","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.178-renovate-balena-jellyfish-sync-6-x-baf4372c721b58ff88c5b1dd1011307f81011eaf_1618490189035_0.40898459570041923","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.178-renovate-non-major-c16a54d2f28a4a80d2997d12d8926e194bb6cc10":{"name":"@balena/jellyfish-test-harness","version":"1.1.178-renovate-non-major-c16a54d2f28a4a80d2997d12d8926e194bb6cc10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.178-renovate-non-major-c16a54d2f28a4a80d2997d12d8926e194bb6cc10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bc6a4d1468b6cd6cab5c8aee4e770765108a6eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.178-renovate-non-major-c16a54d2f28a4a80d2997d12d8926e194bb6cc10.tgz","fileCount":17,"integrity":"sha512-sXN+mNOKLhjsyCqPqIr2SlUt0swUeFIOU1R8GBRXbOKIDf1brh944WdRcpPnKJipfQhebrZTRTQ9KnMKe7Ym3A==","signatures":[{"sig":"MEUCIAnqhXORlKlU3BK4WXW/1TH44AtS54R0L7eUywYd4rqCAiEAk1yOaO9DD/qGe4moIEdkgmsL8qsBja4zmIeaUb6icZs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53929,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeERXCRA9TVsSAnZWagAAkh8P/2WqU9ZjmFfOVUklE9F7\nvh5mR/iqQK2BRui25EDG+wpmiZuH9fQcA2BBOCnjFH57LrccCRsahSqbowMa\nFaUysLJsR/DHru4L+0fuUVbOnu4seVxWCpEldYrjxYMAFYR3eB+AcdBpcM5u\nH7gpdXsIOMcUEKvsd1ZlkmgrqP6PvDKtGI1oVPpnKm7nD33Ywt9XpsrR6oGK\nDNUqY+/02Sl0lU6e8UiAGEmo/1gOcYkgryQX8tI1t9e46CFw4H6Ad8YWeysu\niaW78H4Ww0PMGMEbiacVoqWO1Dk2jVhIklLfDte2spblm8x+1/P/T+dOMSaD\ngDOyKn48ljbPXn5mT5qGBczONqKAcc3pMokmZImQh6DZV8oZy5F1TIc3TcJM\nmyZSpJXqt3knZPnfEb/LN1BSeLx/RXa8ELDB95CjFH3ujWRVxGtqBJPokrfz\n5plwH7d1zwmDF9Hdhc3UiTIB2t7es9aVZCPm4WfM0oj8S/Wz+6sOrOnvld50\nGQIS/zlhA7zZbskK03iA5/lPOgk6eHtWL1sz+NPwTEM7XF2A6FHBjlMKnkFf\n7sRFB/2oIpWMlwfgDBPQqKjvjKzOC93RAkwaKzntRzU1LYB55BUctXBF4Vf0\nZiMkH+ovACfCVglKOBUwbwP7TYWTe/5JRiHSX7PhfAaPo9pj44bhLOSXakCt\nSRSH\r\n=oBeU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c16a54d2f28a4a80d2997d12d8926e194bb6cc10","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.178-renovate-non-major-c16a54d2f28a4a80d2997d12d8926e194bb6cc10_1618494551159_0.7904511184688086","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.178":{"name":"@balena/jellyfish-test-harness","version":"1.1.178","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.178","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc778266621af18f37f51681a07258bdf7fe700b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.178.tgz","fileCount":17,"integrity":"sha512-cXJY3oHfJ43e/NDj7tRiS4UBwjVSzvYgGJP7Inzb9YDgfSWtdunnnWkjYfuc98jdjkXLTDkO+lv2yc8lMjAo5g==","signatures":[{"sig":"MEUCIBcYMR0gy/Jui1O8HJ3LsAFyEPeCjfIuNnKJyB/28XlvAiEAqhecIWvYpBmvb7OYNuDRJ/4RkpjXmyGQIfUbYLU6ZAI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeEUwCRA9TVsSAnZWagAAbMgP/10njKTF/i1aNbJjMABf\nIoYDzW0bc+SEYmUkVmnws3m01wOI5AI5JSl9trzz/RPUqJntt1bjpUzytE1i\nWTzXT2TB2xiG8wE4BGF6uH23YApzlt7EPeZjCvIpGd9uHxk+LlxkjuzDaSbt\nqf4It5IZYfwyij00hqGG0hqhU4Hd2gmS1qGHBlQ9/K5vVhwq5KSyVUfVNR7Y\ndhEt2I52ZpawFVSsemYkkdMS9wJUsfCITFsDXb5xcUAcm1wyVS7qKZP9miba\nXc7PAuCW19oIzt53e4miEC4tymWxGM5/nWt6/M/Dbkr5j+wLrqEoXBR63hpM\n/HXxe+e++RhO3iaojR55b6zk3eJWgi6cp1wn+ZObDvh5PMiIdHORdshz2zI7\nJfPJF+XgrcYILWloPVtfcnznrsIjgNR1yADcaM5BJSTW/+9nzT3LqR+EraXT\nU9abmeNX5Cp+pDbF33l/qbAYwtnsl2Hg+YazhtN5MhuUlCWMGuU28HXQJ9Pi\nHSW8NrRfqjvLQg7DadcxB5sws5NWIwzIXDBfcWXzDRo5IyeptBU/5AY0pjMw\nbfiE70FtlcIFoOUaDiOM9Mrhw4/ELl+FgYHys/ejUAXWlu7EAeX77pSRfP4H\np0XRQTG0Qe4mcS/rdHhsmd3ga2NJfFSy4eFlGk8ImCoUaI14C5MeYnc9X6xG\nQ5pB\r\n=v+xQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4f1b91a21f0bf13c7acbec919e1cc3e40538ab89","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.178_1618494768089_0.14924744020060077","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.179-renovate-balena-jellyfish-sync-6-x-4554dfa735b00b9558e81fcb67a08a72b319ddf6":{"name":"@balena/jellyfish-test-harness","version":"1.1.179-renovate-balena-jellyfish-sync-6-x-4554dfa735b00b9558e81fcb67a08a72b319ddf6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.179-renovate-balena-jellyfish-sync-6-x-4554dfa735b00b9558e81fcb67a08a72b319ddf6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc07b17b85a92cfcea3673b5f5ba39a00817f8a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.179-renovate-balena-jellyfish-sync-6-x-4554dfa735b00b9558e81fcb67a08a72b319ddf6.tgz","fileCount":17,"integrity":"sha512-Kw4Ni1TBfJfYdIrR/MBvYprw2uig3LlltreyxR8pZozni7U2D7j6WGTBwAXsbvcSHhMjfHe5sqQ9MiS0jhZSDg==","signatures":[{"sig":"MEQCIBjTbJYY+dgrUFZexvGBRFpObPpXVeV0IPmEsFwrglbgAiAfMFSbBKHh6py4BBDsO70B6seuAiAYWqdEyZz1FeCa1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeEYECRA9TVsSAnZWagAAnpQP/RohYZg10QhtcCC00pbK\nbigOy0XaEjSWDvitC1LDNptiTUP/L6jilkVtzYZvlX+xLuGuiLIXpUpwkQdo\nhC8k7k0GyJrO9pgeH7Cib1+qXdI4ymtskQXHqCunOzl5zeGK5OLYGGzB8okW\nPTzn911bwAHGXjM8AfFCuiu7ZjvdDTe4vW46EWabG8g/8xydQG6X7BrgIWf4\nUXDnJY7/aFbgOsgSUwhOpbm35/5MTI+4fkJFjHbSdc9rE/e2qNavuuONdhNJ\nbye643b578JJXzvkh5pJ61qehhvS5K4q1Bf/NMyto/8aqbR0cTvb5teXseg9\nFQnCATICdjyClwMxgsKqhno4AX7zqBNloByhbNjHYskGoHwpM7FJ8IKG2KNI\nPmQphZNSrB6e3h5DKyjDH73K+eW8Ga8on22qv4YnESUPUz8A5XqliJwQFod6\nUNaYMm+8IaQeS2fNXB4b7Tr6vcUeUVzWKao5AF7a6VzbBM+coCCFqCh1bLXn\n3BwxiI9p25HpfK7N71KshxCjaWiI3Zuj+pIeiaJ4bDDRPyiIrS95cJLz+uOw\nmh0iMBc3c7QVOBycMCekxK/qYjTXYyn7wRsCHtMLyFqve4eavdOvxqmopdLf\n5W5YPFuSqdS/FXb99yiX497VNua2zrsX4pc8G0ccjH7Ux0yobP3Ur4Oaa3hU\nSnVF\r\n=+Dae\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4554dfa735b00b9558e81fcb67a08a72b319ddf6","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^6.0.2","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.179-renovate-balena-jellyfish-sync-6-x-4554dfa735b00b9558e81fcb67a08a72b319ddf6_1618494980137_0.30044247104477706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.179-renovate-non-major-9b0fe102921cf8d04f45ee9ee213347d095c06f9":{"name":"@balena/jellyfish-test-harness","version":"1.1.179-renovate-non-major-9b0fe102921cf8d04f45ee9ee213347d095c06f9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.179-renovate-non-major-9b0fe102921cf8d04f45ee9ee213347d095c06f9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"712524151b87bfc814e165a632d344883e7182d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.179-renovate-non-major-9b0fe102921cf8d04f45ee9ee213347d095c06f9.tgz","fileCount":17,"integrity":"sha512-2WSOW/WrM1hSPeF8SeuUt1Oh4Ge5F8Daenz4tvc3WG9kjWukgQqH984p8wIwUz5r54ZXrIExxhn/RbDDwRQF+g==","signatures":[{"sig":"MEQCIHoD7m9tv6rxPFySlQbBDiZj7ndcLa4E3Fjze++CmDOCAiAYku2DX4hEkJmzsp0bu7JnsgMNVO4dbHMd8mHuOYZMAQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeFRhCRA9TVsSAnZWagAAS8QQAKH7fdhhFfIG3xNsiJ52\n0cARr1Fcd5MMnjPPnGybd0JBhjrnVPldElEP1Hr7r/rM8z4q4FLq9E4RiM35\nyd0011NrYKxCCoJ13B7hHI8srGX50bJCCNd6Vz3Qxo88p7DsaVmlebDHCoFH\n7wD4HSG2ZZBT+nkBghNDI2p6fmOi5IErH6zstZJlHXDDmszSDLPqoQZayokw\n1schAU7yzxOeqQQuSB4J+EGRG19mDRBS7TaacKFMWP20Uqj5QrC1TfVnqOFB\npuG+NdIvRk9ovi4TDy5dDI6AGNrm6uDwQjS45KBiyo9XI5dAW3SPmdE03dBr\naIl3tgamsvSA2RGyh26x/xrZde6FKAmU9kToTUPiM4R6qAIdZtOZt5z7EkbS\n1rWirObFoWJ2o10Ia1lIWSsJQSDlTxNp1KDKKp0XvnFt1Ud3yX5HhGZ5Wg4T\nD+DLtwcHtpvBeZJyKcG8AMSWJ9RrIOMRTCPCNO7H2QDGBlccmTY277SStpsY\nVuOwNkbIZAhri66uIVLgrPBi8t7trmr+FJ7BAcJOPdr8WByLF8rIJKlOAgpK\nWAL3xWGVoEer8EF7w00f7Boj1N8fvkfQVdgdjpILfp0XCqURLyQY4/FzgsDK\ntNbxihUVv6GQnZ/T652WB21eqVI8rNHsf1vvpNvKlBVtzcKq5ZpILaCLKdX8\nuPOa\r\n=Si3g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9b0fe102921cf8d04f45ee9ee213347d095c06f9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.179-renovate-non-major-9b0fe102921cf8d04f45ee9ee213347d095c06f9_1618498657085_0.47308464880992585","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.179-renovate-balena-jellyfish-sync-6-x-2303437879a6e80daced9fab01995b4a1b9feccf":{"name":"@balena/jellyfish-test-harness","version":"1.1.179-renovate-balena-jellyfish-sync-6-x-2303437879a6e80daced9fab01995b4a1b9feccf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.179-renovate-balena-jellyfish-sync-6-x-2303437879a6e80daced9fab01995b4a1b9feccf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db0994c36c4133fae0f13e0a7ad8881835dd79bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.179-renovate-balena-jellyfish-sync-6-x-2303437879a6e80daced9fab01995b4a1b9feccf.tgz","fileCount":17,"integrity":"sha512-6cdPE70Bm0BjEjdLOptP7zJICU9a1/DQdyNoHIgR34xwYT59TlstztK2TMYqTm2f1a7L1I8cagjcjjD2d153vg==","signatures":[{"sig":"MEUCIQD3Vlmw9qCJo+hYZ0PXz+RWS8myOJav4AAqla/I7EXl/AIgaVKQ4CdA5IQxYoPxxezjA/HRIYwUm53adUYAIk2uwS4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeFTACRA9TVsSAnZWagAAQf0QAI1rzjsBvGqCGL+glMWN\nCZijC8JnG7AKszp7GN/4Q0TEsJhe4zzUF29wmvUcgjvBUu0QhjvOhlgogk5d\n2F6R2Ou6XMzyrRJE+zt4YNl9PZk71Cx9eoE2jVERudRLlSQWkTefjD+fV/pU\n/q52tPi6a8MbIyQsiVSjy2xZz/tZojs9lajp7KlElkdSeLeof0QJrquo07tg\nwgZodxXrFnp6QJYle+ILJLSNYrAav7YoBsOCNxm6KURfkVwQeHF1YyUtkvNE\nw04yIZlYxtexY0/0+vvRsFIC996ppzr42Kn460Mcfv4ifR9t8jwDn202PXhY\nMfXuLaI0GSG3yB6DATbBl0llXz79twVMrhtWY2kq6QwrPtcyX3sm/UmPil0g\nuklrpsqAKKr2c1bf2x6F5KtLYDf4m+d+vFbF6jwEf0LBmk24qYPKTxS2xIpc\n8S1aOPA0CEWboeu164iBDe0zDBfUZMkm6Zy06vzegvReFTVALQXV/WFxauBI\njZglgA7vTH9MbouILN4zij8cr7UgMxboMNAyBaYPy9Hu+lUPcoYSVDWbTRGL\nJRGTx0krEEoCjT+839H0tbjRXvnUi0euIbfUJecT/9gpHD30lTNDtlmGadfV\nQ32e930mdUra6eTD3sjuM01S8x72pYtYG09tclU4viAPmN0t2obvqOR8U7ta\ni/bI\r\n=mate\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2303437879a6e80daced9fab01995b4a1b9feccf","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^6.0.3","@balena/jellyfish-queue":"0.0.548","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.179-renovate-balena-jellyfish-sync-6-x-2303437879a6e80daced9fab01995b4a1b9feccf_1618498752084_0.591157642522181","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.179":{"name":"@balena/jellyfish-test-harness","version":"1.1.179","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.179","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7818e79bda9dba698b8f3eb5fac5d8607e59b2f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.179.tgz","fileCount":17,"integrity":"sha512-jQ1MNaZkvhA8H9Lt1nKjV9vGkkogznMuwpzdID+iEOaBQnnhwjk8ybgCTNLlSzcy/G6eXjTGajLNA5MDsLSv9w==","signatures":[{"sig":"MEUCIQCdBQSGRwAJoo51LZtYrwWMi+DuZMhIT1q9GVfsHKpqBgIgRmQy5gMDrxo9A7V8/TF19MRutxV899BoD/Dzs/BHaZA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":53976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeFUxCRA9TVsSAnZWagAArfsP/3GqZ/LKIvHR18TFKVbn\n/NeMKHF5VPZsWFqXse9eQXbFkWfixc0s3FW5fNIgerZ001NQiq0hwi3BXCN5\nNnStGkv58HPztcgIKYiIF4hL50at0rYf7s4gYvbzWWWYdRpV1XdqjnB5mfpK\n1FEb7ZMdBdSmIOZvjDBTlwESAo9GNX0gslxzPAV+nrmsgnOyj3p3n4ux7MpJ\nLLYmacaDaAOfd6s1sMP4uMaaGWKR49nbETQEVgqujkesa/kp3ncG37bqrHYz\nuN+wQpyC9fZCmb/bOMWBD/+M5WXPq+AOF8MB6P/nuN7lpXlcE4fsTZ76Mfab\nY2CyCHer1EMu37DOfzuZuRoZscmAJZOiY10U0hfJHGnajwOgA3+sTimGs7Vh\nmfqrz9W0UWDA8OfEjptP7QDu519Pkll9ZPeOSiVrv4JQN6fKXcai6H0vnHwk\n4U1kW6pqDy8KgP5elggl3SsbwzwzMrVk4FPvt/RkDO9g7xpgESsiizxwjT6/\nQ0L8A9Tehy8VwjGMG5fOuXTscftVdoKp43QF8yabDzBDamwWScSZQK4EkQ2k\n+m5tmH2QU0mpuuk6RaS7klsWxuknZuPStF6tBvfdVJEp9hubzAnKc3zsFwcA\n8bZJ1DMpx9obs7KS1RSdJnb4iCZuMxahfW5Ifr6mZfS3AS0CrAVEVn6RycvQ\nb4+C\r\n=AY3X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7b849a180610d11c12e48dbe7adedf3f9590aae3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.179_1618498865391_0.3195465085490852","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.180-renovate-balena-jellyfish-sync-6-x-d8886a27a275ccc7356c1ea40b3396fbab4b68e4":{"name":"@balena/jellyfish-test-harness","version":"1.1.180-renovate-balena-jellyfish-sync-6-x-d8886a27a275ccc7356c1ea40b3396fbab4b68e4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.180-renovate-balena-jellyfish-sync-6-x-d8886a27a275ccc7356c1ea40b3396fbab4b68e4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"127963f1324e5e29277da753b1b28e7c488f616d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.180-renovate-balena-jellyfish-sync-6-x-d8886a27a275ccc7356c1ea40b3396fbab4b68e4.tgz","fileCount":17,"integrity":"sha512-BpIdw3S/Ao3jcKmEFnSs93Z5FS2g9X9Xc30peSBLz9HbZ98JnUAkku112C9zvcUFQyXTrXwKYcS/ssQjUTt0IQ==","signatures":[{"sig":"MEQCIBXzTIo8DIhsYH+v/iGE8HymtSwydWLNKFgEoYAE7ANNAiAnLwReyCBtISLAW2EIyVfWBa8uZA49kkjgvR56UNUpmA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54151,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeFZ+CRA9TVsSAnZWagAADD4P/ieBJCzSLTKq3QovaOBz\nlLkgl3rDKVa7ge2SbGX2efKqzHPQ8HLOd6Xq2ZTlKWOMEnPMWtmm22EVNrou\ncib/sqLyr+xLr8kwguQq1VlLfgJDIhg8Ws8Bm5/DVDgnxQnEAW8LA4wN7yZk\nBUhELxe11fodZpERbAPcNZ/Jl8xy7G/SfDQuHh0V4M+0/B2h7dVZFIqaoKEh\n8kB7V3wWOYILirOwwmu8WyuSbw6TGA9PQqDkN77wC5MAM05Oh8uQdgOXbtIi\nQJk9SSsPNNyAAUQig0RRSMuLCoz1PqVvN4YQmgbm7ZXB/ZsTS+HvVTVQ5KEN\n4JyYFf00YHLkX/cZqfd05UPGIlvyyQBt3++/cwhh894zlLMWWcqyKCHOhVuC\nI335kWvGdEf3h6R0+m0MBGq8jj+n1x3/kn1uvVUdQBkoP3DeRcEoPF6qyoCr\n+M/te/4ZoGpGPB0s/YwcLuDJiM8KlT5UsGJUx3tHZ8db2z8wwKR/u0W7epZH\n2zLinQfvh+Ts/EG+/m5WWbP87ybv5YaoX5sOPgeHfwVoWXzBBUwL3Ozo64na\nzMmSvtNLz2ETRee7LIpiNNVBx5Hg7f083Pxk9J9crApGdP5rwp1kdA3zOFeN\nKkmhffnOdbsBolOUtIO89pOA5TU500xWkG0PKckenJ/fws8o8rhYEboZ+xpW\nx99S\r\n=QJkA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d8886a27a275ccc7356c1ea40b3396fbab4b68e4","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.81","@balena/jellyfish-sync":"^6.0.3","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.68","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.180-renovate-balena-jellyfish-sync-6-x-d8886a27a275ccc7356c1ea40b3396fbab4b68e4_1618499197626_0.4812934443457102","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.180-renovate-non-major-201663abc91a8f2dce169efffc68e295f5d8684c":{"name":"@balena/jellyfish-test-harness","version":"1.1.180-renovate-non-major-201663abc91a8f2dce169efffc68e295f5d8684c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.180-renovate-non-major-201663abc91a8f2dce169efffc68e295f5d8684c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e4c020968af4376df6d00c2a032412982cea67c5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.180-renovate-non-major-201663abc91a8f2dce169efffc68e295f5d8684c.tgz","fileCount":17,"integrity":"sha512-wffpVSL3isObHr7YnxuY/Vz1TZfDYcl4PBFL/fvokCiHbMUVwmBg1nomZJcPVXCBgHhu+CT0e3MqqHCLM+7JjA==","signatures":[{"sig":"MEUCIFYOR38oz5I6DQslAkV9X+Ht6woxFFplY1kD70WpZ1B3AiEAlActIa+lzc0seDtoLQPCXP1TP0BN0YuUi7RVP+8RGQs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54106,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeGa9CRA9TVsSAnZWagAAZ1EP/jtKmbUFRM7TMhpbQvCd\ncGTQ9QrKSCbnKVnkU10l41iHVBizQf25kwoHHeX++NxLSFq2NGMHxPQiDFY7\nFxS72D1nZc/AStsBV4gxN7nTQmDPTnMfDTawwnru3obJNkvUu2UHN9ubRAWS\na2fyonT2zu8ApEkOmYHKu+WRkcZ4Ll+s6/2TyGh3Xnb+XvdEkfWgbrk2VuWN\nWzXI4naSl9uZ5gr9+YsNP69mm99zGKvS88hT+Tdi9SF6yCJpU5H8C4z8crrX\nE1V+Pao4vBwIAjb0Tg4C9hp1SoPgzqQj8xjKaHY6r805uQxlP/irBSDQ1g3D\nT6c/pNDvzQ8ijulxbQFO08WCCg6gnTc0QIuFI7ekxs18KSU8uSCe0Y7yghtR\nW4pey1yHV+E8Y8yIx3KhSivdXM6K7rUvcyKOaLXLyPuECd9mIeBZY2hVEZEB\nUnvr+BdD/BQJpuAIr1o7myD5hg0W0oOizWHH2tvdCSPMZThFKA1vW9eVqcJI\niqkDcJljH3uC4YebRPq8RfI4WH5NNDGU0eZ7PsXCDaXZlgW/ld5AX/FjGf0P\nbvz1xrpY59wofj5XAtwC/2vaRjIw1whjtOT4GF1WzyT7doc6endT2OJnSz5G\nzipR7tTQBF7rDcswVFOmSC48oDuqwe6R5DJYGhMJ9VKfLJ2b0E+DtFiiidP2\nczJq\r\n=TeAL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"201663abc91a8f2dce169efffc68e295f5d8684c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.180-renovate-non-major-201663abc91a8f2dce169efffc68e295f5d8684c_1618503356641_0.6967404744812553","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.180":{"name":"@balena/jellyfish-test-harness","version":"1.1.180","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.180","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b58f0e993ba20398fbf374568bc1e1cd9cae511","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.180.tgz","fileCount":17,"integrity":"sha512-6YGtk73TxGEI1wm6XnbxiUS6RmT9aEj6qHR0nnsuTquBYAQR3SscXI9rzxFznRUMCnj1dKQDDUB0m+6lBKECdg==","signatures":[{"sig":"MEUCIQCi8gQ3GtP+o0moDV6e3CCh9ou9miEt6gXWYwKLjih0aQIgLJYH/6Bcc266hJOkWkLFtgcSGxGWXmcRK7UKPUAjQSw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54046,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeGeTCRA9TVsSAnZWagAAPSUP/jq1/bEKRqWhl+7dqMnq\n4BEpFOj4twe68Oas6aSirlYfNIoTO7Q786pnbDORqE+fWQs3J3clYIKbJOUF\n9dKLwRWByjZP5CH5TDmO0Hc5D7DskGFDi/pXkiUwXdfiDWNt9cUch6r6pl9T\nIapxa6gJRcZ3iEO1rPrt2I05/r6Dv4rzStpJVBxW+4Ip+DMhb63poPnpqFFK\nYoyaUGPdHPxgyyWM5JLE/x4xNbcDUVOPOm3UPg6vqopMr/FV/XBs5uRWa+9E\nF7/mcjSwfKShf8TTYTbpxDtHiFP9ukz5HCu5SgaxRHC+zPLDyWNcj3LclI40\n6zu5n3v+7OMpmXJ+HDdxhZN3At7D3nt/rsjxye/4bAo20ZUnRIvk4vdRGcQ4\nY3le9IxvJFrb7erVbvfH8ZCPRtYGn5TtKDGxkPBFpl2X/J0/XMl4B2TsXCb7\nhZvqOGCTaMUHBZIzAnvNUu/mSWj/gcGXBIJxWtt2jLG4/E7bJ5lysXVndEBz\nTRKSECtAt7WFB9yYb2Dkbbf+MqM95T5Jz6x79QZYGKVcddMbStFgYiy3S8SA\nbQ07KEglj1xJ26V+HdGE8M2QGv1pTFQlJeg1HQZpSrlwRYs39idDrflGZoui\nvwXBO3pshJo4THsp1VbEI2+uCP9ycBHQ8e+QPRdu+YT1zSw5JO9wfaQmXVg1\n/+2r\r\n=JoBy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ebc5c63704e7b535aadc8ede6f7a283d214cb523","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.180_1618503570938_0.9566831043185007","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.180-renovate-balena-jellyfish-sync-6-x-da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce":{"name":"@balena/jellyfish-test-harness","version":"1.1.180-renovate-balena-jellyfish-sync-6-x-da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.180-renovate-balena-jellyfish-sync-6-x-da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5da652661b4fcb0e32c2f89b6889fb49ca92b8ff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.180-renovate-balena-jellyfish-sync-6-x-da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce.tgz","fileCount":17,"integrity":"sha512-9UseZGl3J+nlJ849keKeL9vzwjKUFp01y8oM6Jibc6L6IUM5udF0Pnwq6mIhSo4ydxD7u+pB1eGJd48OFg3O+Q==","signatures":[{"sig":"MEQCIBGg1NTk2tAIXpW/bu6tDEHAxfu5bhP82SmlCgXz+c4FAiBFxNVCqx8cgiQMMCdzkhyGtpFfEBw24w62y19Qjm+BPA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeGhNCRA9TVsSAnZWagAADHsP/0yatTlj6K/9lDHDN//G\nVXvFUs/K09c4C0YAc+XmjpMIYg9XLpmUT55Wx2CJ1DXL1zrQlcbz77VIXlDM\ntGX1F9moCG43XD+NW+1EY+wlal60PWBvDJsCLBDNd9kqvOwazGDLobAMF4ej\n9eef+H4s/ln7l/OPBTT+SMSDl32Y+PfNZEHmGJFgxeleY+5HX2fXD+TFv7JU\nT3aUfwjXFhEhUJpwHV8/+lgMQt001sGeEowOYPooKUwR1097lNWlCqMsQbth\nC7zNmZlz3gJQGVaTz4/whKgqFDYx696iT0HTwgXm+j54OcgPpTmQCZb7rYx4\nubUXP6IE0EjpQvFkHZbqvyYPLdnpo2VnhnpZGERNvSE0GD6RuG2TBaFH+gE/\no9w6y+PEVdDfwAdeYy91cmox89hVNjNt8Sd0YKCJWWK4q/HythfPUBrkHNae\nhU3m0xp87jaFBbV8C86+lbhzCn7qb4SmnxVvw8NK92PMeS/HB175qDIb4gJL\nX4FvLT/qjvXDuQ+fesXMr8fdxxA0THUmnovt0lRMLgl/TUP97R4Fu5Oy43/R\nme/39uTzewJCrjqhtxduxKMWeCRoMmfw73EWLl92USK2TWn+jxY9AVbKPalz\nECzmSoZwCO6o/UiVVjSGTqaqx0LuDtyVOprn8mJl/vaKo2b9/+qQT272Su2s\nProq\r\n=TjUf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^6.0.3","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.180-renovate-balena-jellyfish-sync-6-x-da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce_1618503756738_0.8423897528005189","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181-renovate-balena-jellyfish-sync-6-x-3b2a7aff0818b44c6789c4e67dfd43c19b3ad594":{"name":"@balena/jellyfish-test-harness","version":"1.1.181-renovate-balena-jellyfish-sync-6-x-3b2a7aff0818b44c6789c4e67dfd43c19b3ad594","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181-renovate-balena-jellyfish-sync-6-x-3b2a7aff0818b44c6789c4e67dfd43c19b3ad594","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f63ad8bcdf19ea2473b89789c1c619bdd7cdeacc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181-renovate-balena-jellyfish-sync-6-x-3b2a7aff0818b44c6789c4e67dfd43c19b3ad594.tgz","fileCount":17,"integrity":"sha512-q4q8Z7okOlQSrPh4px4B6G2SD7TRAHObYk/bTNZdY2diT36sFrTYuGNYiYEAv6O0Q+mcqOT4jWHf8KDuRCGh/g==","signatures":[{"sig":"MEUCIQCI2viLHuk+WXwjqDk+Tiu2RbKO3+0FqAF076MGlIANPwIgEsvIzJNP2/pHKzPqIcPdmVOp4L91guNKIo02PGCbZa4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeGkmCRA9TVsSAnZWagAAV0QP+QEJ90ZBLxC8FtNNWBL/\nk3ZyO4Sg+LC4rCKKiWXeZj+qZTZHrpfT5F6xI+OtpzDp8hKVhBC/Q2fmgi9i\nOmakVq9zqajjtchMJVSFSTZmaov9JaBZunmDXO3b9DSPgNK2PCwQR4f579uD\nNoui/UXEnNjyadwr4BH0ms1zVwPrgo+kyZJa8L+pwChVPgJlaVy99QorNt9x\n7b2xNBEWfuopuDegbBn4ht2XlKNMxNoi3beVV1t6mRpDG08nrA8W9ruTSbp6\nD2aNOUueatTrXi9l49xGpZkzqx7NIYfqoXoiBXyTAhjieVGUsvP2xYuM4NNq\nrYx8sUy60Qu3QIKvrsgXhELB7QF1sSxhOtKPDNxya6sBR1hM0qhBYFZrD+Zs\nVp06enyB66HA39MFlBdeFvkkwGnL/YxGdBn2x2VMwjHFa8jg8XS56U+joUNv\npqj/uL09CFV8ufd2WN8CFU5DWCdECfEs8uvmXiuj6E85lYSo6NwOSaRg0EbP\n8UlEimW6waDiRsMWbrb+MMngnJwC08Ktt8efVpvrUlkjxtOFSZCNOEHPYCrw\nZqB4OMA8GIAVVh2cbCNx67GXqq9Azv2YZNn/eCB8scFa/U5dGa0BW7FBMCQR\nXwykp2LW7ZUMzuqcB4E+RJc+Rku28oInNk2Qkowg8eYFCWwZZ6vO7zNTFlPh\n1aXj\r\n=AjK1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b2a7aff0818b44c6789c4e67dfd43c19b3ad594","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^6.0.3","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181-renovate-balena-jellyfish-sync-6-x-3b2a7aff0818b44c6789c4e67dfd43c19b3ad594_1618503974155_0.2662503428914025","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181-renovate-balena-jellyfish-sync-6-x-d3b9011d1e229c17db0b2e2c03ae4b07455e5409":{"name":"@balena/jellyfish-test-harness","version":"1.1.181-renovate-balena-jellyfish-sync-6-x-d3b9011d1e229c17db0b2e2c03ae4b07455e5409","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181-renovate-balena-jellyfish-sync-6-x-d3b9011d1e229c17db0b2e2c03ae4b07455e5409","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"214b29855d45372cd34d711f3d6893317d2efafb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181-renovate-balena-jellyfish-sync-6-x-d3b9011d1e229c17db0b2e2c03ae4b07455e5409.tgz","fileCount":17,"integrity":"sha512-rKArePrRjp5LPWhZMHmWs2qS1mJEHKg4yAGvMca2nMhd+I6AWoB7UvS5ASY3VMQ7LRwwKTWm4nzx9XvZY1RlEw==","signatures":[{"sig":"MEUCIQC5gVM+eCjwetDVrX9Qx6j5+UrHcr8ip9gEvK7Q8CiDXQIgIqhqSwGK9WeEb+bPZjCx3pY5i+lFT7DuLZzvV2VRigk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeIq6CRA9TVsSAnZWagAA/SUP/jMbE4f2ZQu9XchHsAvB\nq/Wwpt/8hkioE6BGUjTDnsvSSxzmYa92OUoKSLUe/UuNLnVak4tyFVKwGkFV\nf9JyQzmU7hVoLK/pmERnRXtedxaTg9xX6B66DFZucLUuztkiRz4xLJM8JkPO\njgKjdTP7pdlY5Cbt7WfU5rF1bRVcBWbAo/f44eagX0z8PHnQEL6Vc8uKg1a6\nZU6VT0ehxV4DoX5JN1J4MvP6Vq9TTKvq6xKwz3HRPQXafQ174Dhz0FOLFoeW\nFMBBf35AyMcFPrswZjGaSmf9hQNA0w0bJm8Ixf8qhSVAUOZIWqUdK3Xdm96G\nr8yiwB+kwpdrM88gz4RIUsoydG32W3NTAFejqXf6+EGd9TylFU75gNAutQut\n9PhAL2wV80FAYVG/Xg9VNaZaY7RyedCVo+Ov3lo1Pk+oDphF8jTYzJg79mnj\nK/Nq/DF/ynGHbPkLc3+RghffEFmMiyvPI1Kj88GinqsMGwxDd+9kloURtsSX\nsGYrPmZf4gtX6MWdzfNC4NIx/3GD5D0AiyO7g+uiLPnjm/JoHD6JEp7R7wPh\nzkq3pnIsTAUhTgCHon0kc/kyAeHzBc/XvrfoUbO35OQBW81CuztF1EZB9Jk0\nLy0UPTjmzvU3+ogNRQSJXUfxQk3vrkuGBncbxxyBCDZFjegFeZ9WPxSGRQ0/\n+bxi\r\n=GFtS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d3b9011d1e229c17db0b2e2c03ae4b07455e5409","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^6.0.4","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181-renovate-balena-jellyfish-sync-6-x-d3b9011d1e229c17db0b2e2c03ae4b07455e5409_1618512569810_0.32967368645931083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181-renovate-balena-jellyfish-sync-6-x-ff4a01f88e3f08c22b81d74299e93d8325e12328":{"name":"@balena/jellyfish-test-harness","version":"1.1.181-renovate-balena-jellyfish-sync-6-x-ff4a01f88e3f08c22b81d74299e93d8325e12328","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181-renovate-balena-jellyfish-sync-6-x-ff4a01f88e3f08c22b81d74299e93d8325e12328","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ed7fa8bfd76bb32723037a0fc77219bf52b7457f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181-renovate-balena-jellyfish-sync-6-x-ff4a01f88e3f08c22b81d74299e93d8325e12328.tgz","fileCount":17,"integrity":"sha512-yTJBSDRKyVTV+Me7FJC/tBC7qxKThUg8RWHMJGw/qQpURHlEy/liNOvGxkQTSRW9mUdItAed5xK7EMQyfCJJfA==","signatures":[{"sig":"MEQCIC/mILHN89XRYkXCLf8WPpVJRX4040NlP3O2tacpmvMlAiAWNIuWXLDczMVN+2MZHUB6VXowrc4+5774Ky3yGNBDKg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeKXICRA9TVsSAnZWagAAqg0QAJuP4HsUy60Ergyq62c9\nDP5shdO9TTxcRR3guXw+RC1N/xjcmFucV1xhx65jwaxcbKxd5tSvnIcG47Tb\naUgWnZJubHBza//8YC8ukT3QWmTnzngKs59zjgOmKQwlTORthxrzhbnUljC4\nt4O9Pb5Xa0KTP9KQ7eeaDW09EU0dAVRsYVkW4cEXrXJG41UX/4RLcwbM4QhE\nY39pTVtZ3ksbQUJwMthoOnPMk3DOxzmMIlRr5GFdt1tj5FTf/3CmGthFvT3w\ng+SmYKGdEoBedY0jNZswuX1AK3naFC4sadMzZovT0IPX/yXlhYLp06/Ws807\nqGvfcAb/u8u7m2zLRwuOofL7FkM1wFBocOw0msFZVmfYTcGRTEEeGIKfqQfH\nLCB38OS/bU3Ao7cU9VTFBn3CLunNt6gN9yb4ToR671FGFhljRhGlB2N23v+h\nCz57ITMyvs3cIK35sEEAL2+e1fGF3TsN+utHRYQnLtDdgwD/8M9Tv9tRF7KR\n2Kaa3ktNA1bMVZoYdljxz5S45Lnzrr+zzZc977L5sBHCyZhyxFby+jz5Vs6K\ncKAlJqH3ToSp8llZl1EgM1k6MI8xr3RuWUpATDM3oNGcVrJ4TPJbfHIIywZb\nMtmDhRPdAIFTK0gAt4ObQQslAqels+QpbxOLgNernEksxAoVL7xzGIS+R4aH\nmfuV\r\n=miTj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ff4a01f88e3f08c22b81d74299e93d8325e12328","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^6.0.5","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181-renovate-balena-jellyfish-sync-6-x-ff4a01f88e3f08c22b81d74299e93d8325e12328_1618519495746_0.10835608092503568","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181-renovate-balena-jellyfish-sync-6-x-a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567":{"name":"@balena/jellyfish-test-harness","version":"1.1.181-renovate-balena-jellyfish-sync-6-x-a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181-renovate-balena-jellyfish-sync-6-x-a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65c150b487efb44668ed150266873bf9d379e29a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181-renovate-balena-jellyfish-sync-6-x-a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567.tgz","fileCount":17,"integrity":"sha512-c3+1gMnzqUkuNMXYCAW+XCqHPPg3koyJ2WPrkIZTUb3G1OElmdJQzWIzI+PsCORNR2zrL9gJj135KDMSMVOkXw==","signatures":[{"sig":"MEUCIECI3WDHyhX9muhrABnEMd18dFjd8OdE9srUALpDyi7uAiEA3KXchUgw3Um0ie3YDPENRjQe+MYoVUDJRFfg9F896D0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeLyDCRA9TVsSAnZWagAA+7UP/0ZYXHFr58RhjmYvTAPi\nlZvu78/TR/3i08tzAwBpx/hHrN0DQJ0kP1sU4tcuVNlFLpA0RKWbazfnbzsR\nNtw2A91ti02c7BwvXY8twM1I2IF7l/KQ08cpZ6RAHNBuE/39lJMc0r4J1hCp\nFiw84Jk4cVHk3FLk8OySOmEZygqugpDWhUgG/Ayyu0KNMnm4xz96nU7F6sjg\n/ctjc20pang/Bz612IkD5iMsPjTDtS8V+h2KsJjmCw/Ix7YjOpAVsa1jPiVr\nNdR8rY0qCplTy3St9QfURb2pz3X7F2pU/FMqH8XD0R+J7q5RSSjkC2tsaj6W\n+NfpM5FTuHfAM7UZ7U4r+Zfh5CAQRmzjB39xgEkWjNeHdY5aZeOcLEDkObZC\nKVQdIGV2WGiR78hxAS4qtBXH604wMGt46DMguhr2ngAzoMJb+nx175o7Pn+N\nlut/ipWcZB7hAn+62krY5fm9Ldwtt/LTRioj+zyj2aq1SROKDYi0cywz9bHt\nnlvttg/6Ts4hL7gaWkhGEAdlshSB0I3D/mutHMACxP9SFBzov43ENTnNgaiA\nT3aBAuBPtigRhICrUWfygFg97trNl2DQF6/MqOON7DWMirJ2bCcoPh1nvPsu\ntyI+8NpotdWy/TsJSPkV8pNcXYrC1zYnEDH/pw12J4DPPjRnkTp6HN+j+Ns1\nNaht\r\n=2YUv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^6.0.6","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181-renovate-balena-jellyfish-sync-6-x-a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567_1618525315041_0.669141980560199","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181-renovate-non-major-aff332c4d33e25747b5e105799c8bd41917a28da":{"name":"@balena/jellyfish-test-harness","version":"1.1.181-renovate-non-major-aff332c4d33e25747b5e105799c8bd41917a28da","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181-renovate-non-major-aff332c4d33e25747b5e105799c8bd41917a28da","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"302c3737ecd68d2ff8b5470717beabc812851e48","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181-renovate-non-major-aff332c4d33e25747b5e105799c8bd41917a28da.tgz","fileCount":17,"integrity":"sha512-bsP3i+A9pmMKuNUgYuyCkY6b2M3MjPm34DQRZoB1BY4TocCCXe8pFWrnDsIeSRQpaA87LWqgYhgkGrL1CzFP/A==","signatures":[{"sig":"MEUCIQCHgk/Xz9aYR26SD8TrU6c3PRkV/NQIjN2DdTD3H74D/AIgZX+EmnXGokr8vgoOAduSh/VoxtDMenlsWh0D1kgyDwc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54176,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeNrGCRA9TVsSAnZWagAAUo4P/j9IGXAIaSCFqlyhCflX\n7ZyZOHPxZwbKXN+/5JKr8l/7zbJSBbpfn56xh4Tu2/sTnZnUB8qwSxNKizzF\nnrmExO/Yf81UmC1/0lSAgblCtLdTOBpDlQVeK9rozlMDcuuxjuaB8vBfK5sH\njZztjk3yadl9CWjicYgYLa1sWTjjdV66eyHL/lUsxHLLvD7SGGX38JeEX8b5\nLbss6eR6iHy7jQQuRHEW9woCv1n7+xif0ngFIXRosfKL4/7fMPWWqGQj/K4C\nEV7e9G5V1Oe0pHS/C7Ank4PCRpdPrDZ1GSqYOos9MtFDFWOuXy3DiSRs1slY\nWkefmJ8PYAiQ53WRO1QJs8sQyl4a5UrN8HR3HX7PLELCH/fvvfdH9j6RWoCn\no6IDOs+jEqIC0d0o6BQc3/Zw6fKiSB4e2GZVecJVZlEpriC/QktgCCt0vr5y\n8H5u/FsVqwBY1EOyyosFbEWSn5BNBn+lTrlB8vDmVKcfv/1zfSlUowr8MgwD\ndZ+1W01Nbz5hIqhEO97QHuf7dqVJ+BVnwKh6th+JfYQnTabjo2jm6SVDVdum\nkS40ssW6IVhoXwbylGyB0oFXsvodL6FFhxxUEDfeLxya97N/AsOVEhepS0cP\nPMNCw/LgwP5/x7KBxmnltQkPQ6tWOHOa7b9IBs9Kh7CplNG0LPwZGMUCdyW5\nZyX9\r\n=GYcO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aff332c4d33e25747b5e105799c8bd41917a28da","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.554","@balena/jellyfish-worker":"^4.0.72","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181-renovate-non-major-aff332c4d33e25747b5e105799c8bd41917a28da_1618533062094_0.5904057022858182","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181-renovate-balena-jellyfish-sync-6-x-0d21c53157123ebb274240abebe77fcd529a09f0":{"name":"@balena/jellyfish-test-harness","version":"1.1.181-renovate-balena-jellyfish-sync-6-x-0d21c53157123ebb274240abebe77fcd529a09f0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181-renovate-balena-jellyfish-sync-6-x-0d21c53157123ebb274240abebe77fcd529a09f0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"602f97937f199466dcf3e85631e78dd3a501a42d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181-renovate-balena-jellyfish-sync-6-x-0d21c53157123ebb274240abebe77fcd529a09f0.tgz","fileCount":17,"integrity":"sha512-Mfk1gU3/WlYm/IEUoBo11CXbNLmtOyqUa1RmAODhaF7L613BIe15/CmPCTlFG+nB2Q0lxdQoeI8cJPMgWXJR8A==","signatures":[{"sig":"MEUCIQCqqR7m6HTDe8IhG2PSZ+gmQDmrjyZdLqZjJMQrlQc5HQIgM0H2LOT6HRqAjTnNVjpszH0WOVjiKf8RHrTWefpfmnM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeNryCRA9TVsSAnZWagAA0nQP/345TxVZdhpgTWz/RhcR\nJDgmHaVoWbzjlb91fgexKbXP3fzO0iwGiZoYIz20lQF6qi6OGPEcP+eNgKfz\nJJxmt33aGzRppsqMpbqipgYk6lyPvoit1uX0N6BsJzEoizvwDDJKQYE7gmq/\nr0ZErnSMGjfsv19XD0gvX8J5bRwCk8KTMr0sFhtJbLN6EenZv+7SVWHk+pnf\nSuwZG4f47Zhg93leOxeRxIa2Bviq4VznqfFsg+9tqJPAmjB10P6qUKINYA7P\nzbnHvwM6TVJTckZrq3CQV4C8fT9TtPUcIjHW1eR3j01BOZzAl1MYIFan72qN\nxY9q5UIjuqDbISOKoffkO2l7N2a/l403obn+CaT9WZYdV+iGtsDkU/NphFWu\n5FhHQ/8hzqgLMpJDscQ5ybDf598rBLJk5jWexiLfVtfZua3R/fZzS7YbPAYK\njbdHYFiKTN+a7miwFkUbNruqyV1NCnlkcPyCx8mKht+cWPk8CLunuvvQgiqF\nbsjGHCQhV9VBjZBrHrq+cW5PfCAPsmiMU5/nJzGi1eTx4jwg2kk2yNAKR8CD\nSGMZhQ/YnB2t7zKdT89B2HzDZ4GoYxfIE4Alp9ZAmhn1RH7Y/TQKRVMSblAD\nTw9VkzwODxqtLP3lUHVedSoB+TJhlHOYbbF4iD/5Tt51n7leNkNdL1G+L2iP\n2QaE\r\n=dt3m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0d21c53157123ebb274240abebe77fcd529a09f0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.82","@balena/jellyfish-sync":"^6.0.7","@balena/jellyfish-queue":"0.0.549","@balena/jellyfish-worker":"^4.0.69","@balena/jellyfish-environment":"^4.1.3","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181-renovate-balena-jellyfish-sync-6-x-0d21c53157123ebb274240abebe77fcd529a09f0_1618533105978_0.9617884999419732","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.181":{"name":"@balena/jellyfish-test-harness","version":"1.1.181","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.181","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2c37ead1b2c4a30823a74c579a0a30ab4ed49ff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.181.tgz","fileCount":17,"integrity":"sha512-vU0N+r5YYoxzhzEWPxliRWm9JtBYbYh9rY7keM5jGYzgPCzCgkVaeFv+yrRTi9VNCxfwFz+Fg9S6126ENLl3mQ==","signatures":[{"sig":"MEQCICBMdqyuus/ZWcgIYI5HY90PnLul8KmfWj1MzsCgcIRLAiAeClcp2jwZM857l5u/ESetMJrSzXvmI7WZu0ycfsfm8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeNw7CRA9TVsSAnZWagAANQEP/3z9ebpxxzVVHjh1wpPJ\n7bbGIUL4NXXRSX72tW3LrT1Hrmv5yWnBiJyAIPZWB5KJYEIHvmU1dt1wvKFe\n9Ij8UEHZqkC0LWz5SIHkqnvoh38lrdb3605k6ZQ/fvvcFWxLahJdltZmqSAU\nYD0MBI+ZpzwN89kEUHTDc3ZNpYNLskPoftCWbO+mCNQ5AQu5QPJMxCQgrbQ1\nYS6f56C78MNWHwAabjJ9tDEy7etG8IEXGPoBEj/AfJkndS97TUpEFDgrOVtk\ntBr7eyylZEoCUhcUqTALsWkAJqQx1gpO7uCn2pbubs4NRA72H/IntyyyB1Zz\ncV2a/P9Axwc1F2mhzQnabZM3ul1UVrO+eawOLaQ6zIGI5+yoDOMAThWfa+xG\no2YqB8LrUQEiBJ5HXmDhgCJIJSE6gXykcQsb8RH3Sy3N8HTst5F/y+H4T8K9\n7GxDHBCNVJoStYhwImxnu689Xj4Zs7ON/VXwF+3eWFnnv/TeoYLyZk0RfbSi\nRs6l8TPCIi5kHNxYKKU+StXlYe1lVBQXz1B4TDRo7Eff0jT1gmfAti6/Im1Z\ndeyvktV2T28Xf5+WtpUH05YLKJfuO+mpMH6xE0uU/kQWq6GXC/A61SdqgMkl\n6ig6f6WF2Z6D/4YYgqQzVqXPTw5XcFvSKu7OOynq6/GLtzgcMzl9eU80IwW+\nBMCT\r\n=OzkY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bcf18da896967b7273a95fc48395397e7f818b7a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.554","@balena/jellyfish-worker":"^4.0.72","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.181_1618533435117_0.7696554715150772","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.182-renovate-balena-jellyfish-sync-6-x-e81c1e2a61787cbd13886fdffa3780c6230da8ff":{"name":"@balena/jellyfish-test-harness","version":"1.1.182-renovate-balena-jellyfish-sync-6-x-e81c1e2a61787cbd13886fdffa3780c6230da8ff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.182-renovate-balena-jellyfish-sync-6-x-e81c1e2a61787cbd13886fdffa3780c6230da8ff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"99fab4e4f117c3e27bf75b9a7c2c8500930ea58f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.182-renovate-balena-jellyfish-sync-6-x-e81c1e2a61787cbd13886fdffa3780c6230da8ff.tgz","fileCount":17,"integrity":"sha512-5XIsc8e6ayPLdLF/rFh++9BoLkJLqiE+YqAtftAZMS0em2tpvYjaTyuBY4AIGEeBq5LEVb4SkkBmMT5WiHO7dw==","signatures":[{"sig":"MEQCIAQnBin20Rloe1fCh2q/0Py8Jcrj/YekEc4ZZHPqVxSSAiAUbyTvHXkJ0UkS52d8QWqAxLyHSXBeF4pvGOXhqxg1WA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeNzeCRA9TVsSAnZWagAAE/kQAKQ8b1EoVtS78T/KCSwz\nkf54e7aTMt1QukQ5CK5aGO2N2oNuFcEFxz2vlElC373U2CUKF808vDdVGU8v\ndKML3khlwxtBi+1sTPFR3Ip22hydAJyaEAUwMxnKcNJ7qSl2hdt0eC5uWkVx\nheXyFAYOUDxhX/gKkq1qNrs0u0hLrnbdK5I8wzUqDJ+/6wWy+HlWGkj6DW5K\nEGB/kt+3icD1B4lCTKN7RaZFg8C7fta87+tBgjW4EvEFDhi7HmO7uZpkwZkL\nHal1Nps8z24Ev0AjNZ2Fpj6CJckwyqOSECSpth1WQsQbSSvN/j4pznnVW184\nLsQrxQOhrdFZPCWbJKzntOxhPZ2Q12MF8NMv7B9fOR6tvIdzu6dCOncTJ5w7\nJAgdkoAR6eSVFOzI5cpw5n5Z2oXfrhzGwzy+iD9Ie9dQ+jnOIB9fY21rFhF7\nHwJRPcNnfJbwncZDV95olny+vBjJ7zs7HAkmZ60itluWjFTyAWoxOIPEtFgs\n4iHBUye40VH6+x68R9HVfAudCZL3W+MPdpThvhYzqXNNavEVK2POkrj2lEp/\nJhy9KA8XxSb3VPVdpMpz5GVoUm0QYI/V6s5+0s7xu/+hZLmBkCRe3pN+J7mI\nImIVVeR9yOxGIeQMVRaYHmRCxMZ0uDFRrZOo2aAzAT1NLb56HXVjwJNPK7X9\ntZOC\r\n=bO7v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e81c1e2a61787cbd13886fdffa3780c6230da8ff","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^6.0.7","@balena/jellyfish-queue":"0.0.554","@balena/jellyfish-worker":"^4.0.72","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.182-renovate-balena-jellyfish-sync-6-x-e81c1e2a61787cbd13886fdffa3780c6230da8ff_1618533597819_0.9207354243323929","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.182":{"name":"@balena/jellyfish-test-harness","version":"1.1.182","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.182","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b8ad549c249c62b2ba9ae3770442d6b9e9f2ebcf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.182.tgz","fileCount":17,"integrity":"sha512-e4J9FD984ueLuwGueJfKGiX87om9DFTSLQOYVlHRMkE6tIhXsOve/ziGmAAesVBok7VwHCwaTPIMSf3EBLDQUQ==","signatures":[{"sig":"MEYCIQDccbg+rT8zmTKwks3CQu37IO3kUNf7/tAt6ARWyTI4OwIhAMiVYtfrACGDimD14m38eiy6blLDAQ7+ulguG5j/DF3I","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeQLrCRA9TVsSAnZWagAAENgP/3L0GRnAsh2Tkb6F+rsc\nNdVSxblRLD/MzhsyNRIP7EnLrED2TWb+YU05ZdAzfspVrK2oTswe20iNjF4k\naDB6yJ+88Y8CcXC4+O+SRalZmJnGV1YcxDyKOjm/RrAtIwJtcpTkEZC6RrYx\nXNA1SnkoqrRRprXCcpgY5xuRMsL4lN8hr+XtPoiZOFgQmZZpqytzvqBUGB9m\nT6UG345RnYHv9F+XcrLOxUV+XbcFHNWTp1FXlu37+O7McoD5+vtrCZ9l2MJK\nnnBt5t4kVCYvwij86qtYUX/DGg9JQGQq2GEm1U7ZoI3Bh+wgdWE5R48b7gjf\n/FjBRdEWSwEeRxMMHRDTw91cUyYiyc0V49PG0ZpMLDD2hEw+Ut6gN9kkkXHx\nHc2Ir6c9RGfij0hAPlAHTOZ4sqheIT6bDgj/DXKVn/oE40Esw1yZaoFH4F3Q\n9pmIa0VAH4B6vrgyRkyApls7RRkfkzK3810gZ4UnzEpJeoWRQPkxVuM4Arip\nw5mtKVozIpvTrPDxrPa46w2wch8DfjseGMxEOq6q2jZtAeLaZHgUCWlChR1W\nYRgvp0gokKzWI09N80Afjz5SXUzaMDnseomugwLl216V1upbFqrYWDTe6UwL\niXOr/3sfOf64ZDXBp2Vztq1UuqfoSwonGKgCxK7jxrEl4ByeofJlq396CxHO\nWX3Y\r\n=qXzf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eaeb88d8702935a56ca4d5f878478fdb6dd91a55","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^6.0.7","@balena/jellyfish-queue":"0.0.554","@balena/jellyfish-worker":"^4.0.72","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.182_1618543338822_0.9106268541540787","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.183-renovate-non-major-3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08":{"name":"@balena/jellyfish-test-harness","version":"1.1.183-renovate-non-major-3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.183-renovate-non-major-3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd7213e4295e7818649abccea71cb1f4dea324d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.183-renovate-non-major-3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08.tgz","fileCount":17,"integrity":"sha512-pKHaUdX69/+iWddojy2q2sw7pn7qtRQdIBwx77NZC5nIq7Cr32SGrx5dme14/QM9IUxBIyy2lFI0FE++xqdlYA==","signatures":[{"sig":"MEUCIQDRozcGug4DgBjo3d/F4UsNb0lZTl0jtt7HdnGZuZfM+gIgearB+Q2e67cxH6QuGdKriWGjZAlCUli69KBREEQOFD8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54345,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeQRJCRA9TVsSAnZWagAAN1kP/1yYNNMQsEhwnPaK/oJP\nm7lapuVIzPrsdlMpmmGlkh3sfeZixApg4Ql/zG934zwp7mpeXXUnYfF1yDTY\n+obaSGJstnwHJVVjvwY196xNLpqCOqHgI9fh8I6xBnC4YJlgy+MTEx5K6CkX\nJf5n1E+0GWCYoOTjSTE+D7QmMDNKi1OkgSl1WqxApIKWZjn/S+xVdD4kgWHx\n89q+pNgFERPTbvd2vfBQingpNYYdQfTs+wzj6AAfh8Hx1SFqGBYmV6r4wW8a\nmgNI7itRVH0x1L4sHdBd65ydC3vIHqJfBB2lZat0RCOILM2v+2SYVPd4CTAf\nd2dU4R6cLQuAOzHdkPHAg8lbT51yr2rpygs257VeljamXanrOogYy1vAWjYN\nFY5WPbNoklgpSJ3+55w6bk+Y1meZW1QBsesy7EOtKLwWWWuJHYkFtCPa63Dl\ngStdLIq9zQUZr1MRkeji6ryW5N4KCmnkYhRWGSOOQHrOtR9ZfhRrn33c771i\nfjux+AJ3cdKccAliiy/ptPNpmsfBOWMrVNKAZD/PqqVzrxM7WIOXSdQyi6xy\ncO9+op5ZKwc5oGkFPUmC/LjDcKhrcS9MiZTWT4yeoi7Awl4ZcT+7sQ16TLzR\nvvicikGeBdms1u/J55BUSWR2K8jfsAizh4kRaCV1xcUDyCtEhttuKYRxa3vG\nQLMU\r\n=C5a7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^6.0.9","@balena/jellyfish-queue":"0.0.555","@balena/jellyfish-worker":"^4.0.72","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.183-renovate-non-major-3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08_1618543689052_0.5071064647469259","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.183":{"name":"@balena/jellyfish-test-harness","version":"1.1.183","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.183","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a3a2c2b0e9c1b0657c705866c08bb6847faa2638","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.183.tgz","fileCount":17,"integrity":"sha512-H8DwIOxa3T5YZz4c5LvCKfJ4vAUbl0HpDSyUPHG1HBif/ywwOE6Z/zCclvQbmIW7sQleeSC06IP7I50veVEhdg==","signatures":[{"sig":"MEUCIQC+1BXTEbCtNFVf9je9Qky6K9lkZoLjGq3jcc+EsfV0jgIgBhABFpyvvVLOPFIE2KnZ+NC7HfkMHGe2onx1YaB4utI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54285,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeQWTCRA9TVsSAnZWagAAKK4P/jykE0veKWZClUbl/jCy\n/AlsXEsjRrHuec2MkaXgl16f1TxM4V1NYX4jqUvdZAtlCfX7/L5hAYMNKTIz\nc01uWucY9N2BeJ24HD2HT8wkikjxcmxwKHGLoI2QgxO+O94ejgGkRznwQUEX\nhLRVG/swzAl3dGc32Sw2WV1A7LoTfk9mz/kedx3bzjdEc3JmJzav+I4gYDLE\ncvGCwq+/7pl98BPk+V7XySRUtXLcFXq7lkQ5SmUBe+EAtrrIr/QD82e2zm+/\nrSajTJfMeNUTd8EgJP89+4jwU2KbK9frLNW+w08xz+7TKwZxfSN1QtuGTstr\nfx+Q9bYoDq29vatu9rJrzGlPH9o3JwCnGhoQK7nbYJjYsz/lWgR1A/m8WoMH\nrIU0iHiUz4W6VkQk1q3Yu0yh1+y3yXB2/9R+7+1FpKbXOPe9M4Yuje5q5BwE\nBbiYQbt3O5zjo5FTUkHjFYjp2HxgN7Z/kqsfvsMft1nbNgPqCXHlqqaZNJh+\nAHg6eA3J4xH3QZvmaDe604EL2vO8y1HPpcmFLZVmiGFTuQmi79W44R69DBO+\nBV80uCBOlv1D/zuiOmzbDhwm/5sUFCA/fMQP/jSBei5clflZMzCy0WsLGp5Z\nh90oZy6y3Or2tM/M6xXbe68cdmclleyFHLyhIC7VHhS+g0CFj+a/b/XqAi6B\nwijd\r\n=5ajA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5430f6afb05eb66e158793f38340e14f9a3bb36f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^6.0.9","@balena/jellyfish-queue":"0.0.555","@balena/jellyfish-worker":"^4.0.72","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.183_1618544018937_0.010892439584050395","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.184-renovate-non-major-acc24cf7f92f8be176213c1c6b67b43e32fe2824":{"name":"@balena/jellyfish-test-harness","version":"1.1.184-renovate-non-major-acc24cf7f92f8be176213c1c6b67b43e32fe2824","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.184-renovate-non-major-acc24cf7f92f8be176213c1c6b67b43e32fe2824","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2eb47fdd9196cb3040fc9d130ffcc2efa5103dc9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.184-renovate-non-major-acc24cf7f92f8be176213c1c6b67b43e32fe2824.tgz","fileCount":17,"integrity":"sha512-QXfugmpVxtcWzjlKqSs8gsv+sIEO1RCuM2t+oEKzBBrciG4zEYrlp2O7tCNV3nMlCpGlfHAOvDxiyyVI1OSWJA==","signatures":[{"sig":"MEUCIBgadvev6IlIjKApI2yps9DMNDDgurxNUCMR1farEYqdAiEAxwJNeiPJ+G07tD6DtIW87Qf5a1Oi7XQBhkXao3HMLFI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeQceCRA9TVsSAnZWagAAHCoP/1TzwVySdE+9EkYyP3HF\nNrko27GvvqeMWB0GY6xablpUKv3JlGisy2DuzCX+K7zm6mX7MIdba+4TiHEj\n5yYxyO2juzkAohj0yzus13ELp/Wm9EX5t5FP8rx9iwJ25vOE9T9xkvj2xkqY\nfR/lo+Xv+S4pxPc8TmupixjoNcBbU7/id+XA4LawVEqP4CDlZ4hfFmhTlQ2+\ni7tKjaM+dkJe5Lnrn4YlKMTM/LS/36op/ZJ/n/IF1UlxMVSmc15pxIkr6EIA\nsC1rC4fxUG/3ALPaA+jrwoL5sl8tetROv70FJ+NnAtOEkwtgLw27yidRBb1Z\nuj3yZ1YDfL0J+S7Y4FhnZvmf/LINXCN8oS+FLiDU5aBcU0nR5gehIoSMaDWL\nb3SrKsXUqDU4y6xapOI3T/lcIipTjlEc7dyaewadJF81yWC51Bdxodt7awq/\ndK5EjQO16gfAhJxoUGqvpgiK+6R45tOuieDhQ0cbB6wJ+hpQThF7kinmAayi\nTri6e+iod3bNRJc0/oF4ju3ZlbQHlPdkJsoQSlmVA1LpQLGxLbfSKlnS7v2d\nLZGfP0QJb72DOe4zmojqcKtb+98UBLYFZA/KKlCwd1uEBilpUt6zZLsL9fdG\nF8TdnxjnDI5WuDymSn4vzggkHmF+1lACTQ0yNoFkx7clhi65zKM9a8BZXmsV\nvWTU\r\n=z0eY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"acc24cf7f92f8be176213c1c6b67b43e32fe2824","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^6.0.9","@balena/jellyfish-queue":"0.0.555","@balena/jellyfish-worker":"^4.0.73","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.184-renovate-non-major-acc24cf7f92f8be176213c1c6b67b43e32fe2824_1618544414124_0.705117705951847","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.184":{"name":"@balena/jellyfish-test-harness","version":"1.1.184","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.184","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a75551255f7614521c80e7ad93cf8038eb04e226","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.184.tgz","fileCount":17,"integrity":"sha512-hs58uyJlOqeTdXEzTko9s8dLudtpVgqU2+xwncBB2C9xYlzGMOO4VkSYB4Arw8Wxj2DHEPKlZkWUjLA7HrXVZg==","signatures":[{"sig":"MEQCIBcHt5D/V0gYcm+a7JgNc6mqhpOnaibg3UoJk/6n8ViqAiBXQbg14ezQ32aSr5i0qy2EYtKgRdiPGf1BERnASRnRxQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeQffCRA9TVsSAnZWagAAjg8P/jU8innTTmT/4v6ghWd/\nZZgEiqHRVGyFjA8bO8GAfDBOlFZpRAsnT2VDV4VZjjIujSkWuSDUTROwEjN4\noALIT4+JLtnGLQo+xvwnzUpGZIfcKNjjfEdZt1TtmN+h6QBsEBH6RHYVMgHs\ni0vFqq6rFzUyeJf4/Ldzy8tDjNzvQUefiJ5vqEsySF9iVTxetWm6k+/SCRDl\nfs2BTYUdzTfIy0dqaU/pJcNzsfjxIYazxHyYdlaaDRtlrVayUMGGwtnvLNPj\n0BjFwfEC6xnWadv1iEoPRU8B+4tkZW3CiJmtPh2m2bTONhccDrczwHqUwzNs\nYB3e8FKpgWELbZUMasBKcoIevpL1UExqeJPE3vqSIaGZM7SGd/zRzfbkjebE\nhHjfssZ/Ed588zBTrIHFzzXFNzBsbKBlTAIMoVoz2WTG14hSiNlP3yJWyCpb\n9kAzEl/txcJ73frBod8Vox6oWyXTo/tmgp+Mcbixhy7ta6wWDzMpHBJN0K5L\nTNOF/bV4uujjNXdYUBZHi6ZBfWWeyC0RnypaKinU4HEbWrGkHVTks3ZydzWW\nLl04B6eXEWgKyxhWioiEtedYB5D6dbPGYvSx76SM6mMq7wpvNMi6uW0TZu1o\nlmw5F+G+2ZStAR9dUZD2qcEXqzpUrnf4o9TTWZhKUSpUpdETs4D03W/BxdgL\nuHGC\r\n=IBnf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"562983448c96e83499aacfd0860a2a6ef3a6f713","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^6.0.9","@balena/jellyfish-queue":"0.0.555","@balena/jellyfish-worker":"^4.0.73","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.184_1618544606948_0.653169596050752","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.185-renovate-non-major-259aa171fdfa6b614ef5399fd80a8e2a8561119e":{"name":"@balena/jellyfish-test-harness","version":"1.1.185-renovate-non-major-259aa171fdfa6b614ef5399fd80a8e2a8561119e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.185-renovate-non-major-259aa171fdfa6b614ef5399fd80a8e2a8561119e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ef4b1593f265d88ce5f938dd67aba245e3d431ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.185-renovate-non-major-259aa171fdfa6b614ef5399fd80a8e2a8561119e.tgz","fileCount":17,"integrity":"sha512-Kjk8ELx7POjlzsst2JYVbNq/8Q/V3AvOetSse9dXDNgy17J+qXMsotFME768g0P/hjqn6hU6eGVC7j0u+hoVLg==","signatures":[{"sig":"MEUCIQC7w4V6K5Xxc5X3g0BjFuiKGiMhdb6PSLSAFf8md+KEKQIgZpbuz4PYfK4uTWMxd1lr4ywghY+IHov1moJft8OAOoI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeSA/CRA9TVsSAnZWagAAx+AP/2abUkyyU5DEnG+OJ0TN\nX8upC/RE0VdKgRpeSWPCBSJPSEWWfZRQbZbIQ1kvdmxjZHPah1p4XzvXDMsq\nH4HHXUGQsiOsE3nJSF2g1An8darmnVkOomVZRIGPFsGt4uHZa+kSfkMi2IFp\nmBkO5MFc7Cbm3OgsMlfNxChb6IsZvCYpaFxvo/uMVyU0nTiP+VU4vk07KP+t\nPVafN9/ZfZ48AuYqKBp4g0i7u4opzR7Rw34OD2GvBCgRDo9bWkG8b7htyeyb\nXOiCKv1qRS8l33JkKTwoIngqQ+4bJfXGa9e+v4AIlu437cfIyjX13bBga/kX\nKoNiJdAUei6q5SiR9+aFIsF+6KAFd94PRkqI5g20OOcuOA9yb4SRn2qYdLJq\nQ9xXVhM2ia6QBMpuF/fK3vT3T+FaF9u2G9dE7JdEusP462+1VG6fYPL/08Zb\n8S99Q7wyQFRo0w8T1Etqtub3ro7NGHrnQvjz1bgLnymnCMAxF47R/yt/Ig9x\nsjdGJ/yTL/zZliZapOZnG4cSt5NiqlLqYcGslyRHExlxt3OBvo8fZqXq5UyF\n97DGStIEFE/YeAAPWsLKGNd+UIY/XSU0c713TcmeEyc8kfvw9waxJp/hr6UL\nsanUOQQTd8s9Yl1YZtVWBr5n7GYNUFpz4sNuv25SW8GqxTTdxVB0eJ0F0Rkf\nKVrj\r\n=iIea\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"259aa171fdfa6b614ef5399fd80a8e2a8561119e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.84","@balena/jellyfish-sync":"^6.0.9","@balena/jellyfish-queue":"0.0.555","@balena/jellyfish-worker":"^4.0.73","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.185-renovate-non-major-259aa171fdfa6b614ef5399fd80a8e2a8561119e_1618550846740_0.22681085510706311","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.185":{"name":"@balena/jellyfish-test-harness","version":"1.1.185","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.185","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0fdc17c41202f60d313e484477fe1fba40eb70c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.185.tgz","fileCount":17,"integrity":"sha512-FewxM05nnrJOn876kX0tSmT+hSEAAq41PVS7oarBJy0TQW9/L2rXZ5+8QkEP9i+evKUGEkiT4FgsVZfQiId/Xw==","signatures":[{"sig":"MEUCIQCat0LQMs/FpYM0bqQgJiwvSPY9nXHhNnu6KrvMexUQVAIgETVrQScxiTxZlPYiKung1eqViBOIqC2Mc06ugB2SXZY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeSFMCRA9TVsSAnZWagAA+0wP/24BEj86mreFdg4ivgqY\nHZ7yUrMsiMDZVzKCC1c69H/YR1JF5aBsMrnP2uRXgZSq7/8OFeUMkqBLvwzI\nJh7USV+3Y+9C5HkDzmlVg+7r4NWKm7vbn8YAN3tW3OQeb6YLqW1G6aCl3ZU+\npl54P2cjQ78qs7QXE09SxOe9JTKTqpBZ3rswN8h1Y3Rd0uBI4bB04jgfkL9Z\nhLew3DtTe6WvGFAmOQCDZXmwnVdQXsmeyukG3u8dGASC0ppAnd+rc5jiSMf5\nJIJx85BNyWWu2qOyaufsEQrEDagV3+PJvi602K2mXjQkOrZ1g/+BShSfYUdZ\nnfRPtcFucWgc8/P+ZUZ8dpVbfE7mpxCZA+IIrffGaRPQhj23QCPRp5oG8KAM\n0DDnXknVTs+/5Z7mZH4mQ5ZJShG53SRTKkFZTGyWlF1LOG8Rs1To4y5u24Xq\nmovUqmKaOOk9GHYsjheBB+yZvp/CoRP6D+wYIM6lqD86YmH6e8toms+EpCmG\n/zvyRvOJM0yv5AQl8UTZAi9eQy7F0SeHNnl+kkT9iZlUExhzRb+vYqIKh2Hz\nnbSntDNAhNMsIOu7YCt7XBOQyS+MVmsGRWtCivMpNFNsjhFPbxSIrs836HnQ\n2HZlwE4G/qDnwa5jzIDNyUYYB4++HWO8p4qiSY12icyPjhxPYQKmb4nza1Pt\ngrdE\r\n=KeJI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2d7271a21f06c3cbe5b994c82bda5158dca9e9d5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.84","@balena/jellyfish-sync":"^6.0.9","@balena/jellyfish-queue":"0.0.555","@balena/jellyfish-worker":"^4.0.73","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.185_1618551115964_0.3688938290191035","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.186-renovate-non-major-fb9c7882a01581aeb2ca55f5544f01fa2280c99b":{"name":"@balena/jellyfish-test-harness","version":"1.1.186-renovate-non-major-fb9c7882a01581aeb2ca55f5544f01fa2280c99b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.186-renovate-non-major-fb9c7882a01581aeb2ca55f5544f01fa2280c99b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"77a3706a6425615dad7e2077a2c54e9ab27760c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.186-renovate-non-major-fb9c7882a01581aeb2ca55f5544f01fa2280c99b.tgz","fileCount":17,"integrity":"sha512-LQwzpYBszsquohAMD6lskrUPCWDYQxGh560XTyl1pjuzztgqY/gBxA/h6ipM4vG6mVEt1VyQYIjLqcdj7DoyJA==","signatures":[{"sig":"MEMCIGkSDdJI7HRyc4Yr790Tja8vZ+49peWE42Jxxrhz8nXFAh8TL4FFv/KmpIYXqvMsIJTnhHQlIeUkgrFCicHNuyMf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeWr8CRA9TVsSAnZWagAArwsP/09hJUQoxWEkfjiCOFi1\nD6iQcdNIPwDJXk6MSoLcRNOWB1yyZgth64vUk2QfQ6nC2g61ObpF4qMDm60A\nJin35iy13FG+xkgf3QiqGOIzRMoMy9IAxHelPXa33l5ZHfTxeP/Ll4BjyeGi\n0oeChPXBn8YEZsNVOORV9PCK8Yy98YOAY6ioNMKaqhMIMHqAJjES+37wOFUx\nLDbwWYzXqdTgu213Q/+xJtDua+QlMrr0I5qFzmRa0Xjvzxn38rpIBmnFU4H5\nX+vtbN61u2dKGjLbroUDzIO1m63TiIKiPQ38b+EzbeNVFq0b2+hMj6A9Jh33\nWlzPF+Kl+vCQVr+JwnwIIfvMTctRAXturUvlKxS/miz0WtDobrM/d3f7HFhB\nTUr4UmJT0qdeDsLTsJtpDSLm+MkTrS30Ywkh1b+jt2N4o2xBtH3QGSWL3mxK\nr19zWBrhsekqObo7DuDkWInGWqyrvCvn90W4MPMQg2iVTfCztA1+rxcXPEgk\nOcs03m1tUGqjyu6l5oeI5jC2ZVuzpZa1wJfARz0irF1UB9XvlK3v2uI6FDql\nrFSKxjIZe17UslO5sXc5P+5A8DfKWhAvf0qtfBqdW0CfRr2nqaboKjIsU4ly\nmx59NktFQePLvPFY3SZYo80H1h1e5XCwTHWt6ZOOaFZJXRi+YV/J6iA2zP+c\nt2vN\r\n=BIMG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb9c7882a01581aeb2ca55f5544f01fa2280c99b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.85","@balena/jellyfish-sync":"^6.0.10","@balena/jellyfish-queue":"0.0.556","@balena/jellyfish-worker":"^4.0.75","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.186-renovate-non-major-fb9c7882a01581aeb2ca55f5544f01fa2280c99b_1618569979911_0.9530075245688587","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.186":{"name":"@balena/jellyfish-test-harness","version":"1.1.186","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.186","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6adcdec5064f39b80ceb9a991c17eb19640ba8b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.186.tgz","fileCount":17,"integrity":"sha512-eNxKmvMtYLirXwplmQ5K5wVxJMhEu/YU88gyNt+HfUgWrEwO2neIoLVv/kEk4doyLM4Nk4ThTQDVHPw4IBKqZw==","signatures":[{"sig":"MEUCIG2w31gI0m9kfxehc6jns0XblT+b1Eh0iIrxu9ya/pXnAiEA5STRSG8IDCHY9QJbtaAWcGI0j20mjjUFPrALDJBHpAE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54569,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeWvXCRA9TVsSAnZWagAAyRQQAI1bLANrzqYLwacIEt06\n69qNbFcewE75jFz4DGX2s4uabwO7BWJ385DIKL8VYQ3ktDJRSf4/RVOuQ5iw\nXmtlpi7tYKf8tCLU0cGyldGP9Vg6Isn6ly4+7zajUJz2wGj4ktZM8ZT6QjYd\n10MzMWwRSq15B5l+FpwAncdBLJ9sMn9MXh91OzKQO5kNAzmu5TOzPhq4KNng\nbCVGQ4RhWJUmw9CnS/ODUdFbuB1WRCD4/WdJYaR9DpqoUvjSeV3xLzuikJku\nK8l+aE7gae3VZR+VSqGCPSJ5S5vYRDsf1kQgeruNaEDzp+PUGpD8bfIc1srA\n2tiUft+1CDSZ5Ab99w3HbSb9TaYBcb610wIedfNINr0K7eyMpib4KqjwX5lQ\nDAZX+C13NDi8FFlocOlEOsbvaDD4tm+x/EG5+ntN9DJzQ5EfETYf1NamoGuc\ng0IK0eO5lh0XbuJqzbd38Bb0Ut0hTfU3X17Ht5u8tJMGS1yqzva6Bt7KybQe\nL43VQZXs/+EdkuKu28l90E4vd31DtcLhYOwxIPVSAFbbgN89KMgv4zwW006w\nb2a8Mk8cVNiQ7ESMiElhRXVKZcE9zR8JctT24pWlZ2+W9ecthbVIXzjTBvYh\ns5zT3n0PDTRYZ18/LX3vn7hzsd/7JnC+l5jdRs9InCnibRfDnlfne3WPKSYP\nl11G\r\n=bJ3i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"37247bd04abd59f214b12143755d5ceab68cb44d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.85","@balena/jellyfish-sync":"^6.0.10","@balena/jellyfish-queue":"0.0.556","@balena/jellyfish-worker":"^4.0.75","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.186_1618570199096_0.9946531084712715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.187-renovate-non-major-b43baa7b998ee3dd664fd432fdf57da3f3620b47":{"name":"@balena/jellyfish-test-harness","version":"1.1.187-renovate-non-major-b43baa7b998ee3dd664fd432fdf57da3f3620b47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.187-renovate-non-major-b43baa7b998ee3dd664fd432fdf57da3f3620b47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5355974e1d3d5b5f387f0e5e6e328ba4d40731d5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.187-renovate-non-major-b43baa7b998ee3dd664fd432fdf57da3f3620b47.tgz","fileCount":17,"integrity":"sha512-QNeKlY9//Z9eZekfNQKuQmdEszAs1kHEN1+MC2c8K49Bm2f1JwIkmNfkujfPrMTaeGqvWcQ6RRNx8nq7dLHsmQ==","signatures":[{"sig":"MEQCIDIylFyt8b3CDpGOwxupsy35rG7SBCehbLsl/EH3fL4+AiAhMj3hzekK0DBxh4s1Yt9UZiDY9stgIbVWY499Op8nkg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeW26CRA9TVsSAnZWagAAUhEP/AxK6BwP4b233N3Apaeo\nmduOodtm2VI3Kee3zVGaJCYHDl7Q7pg/F59tqeyd5yE/z/XrcOguiwOUN/L2\nLptcPeBVjnSeAGJqwpmaatg8xtda1yCcz22dmtDad6nq3EEKRnoE9AITT82Q\n9mxAne10MpUSTKjBa21K20l5u7ix12Ol+/IBIwQCwb94qC64P1sNoetpPoSS\nj3mi+cFwQgadhQjvOb+SFytKp5OQQ0XJwMZpsLLXlK02J/iZ5uJOOijlxYV7\nQ6wurM2TUYGKfIylEKjIxTI/YtBn4EPpmw/Ag971mi2hN4zOhAz9QL/gLDoO\n3YOoSL4BE97yeJY2h0SZsPXeuVQ3B8ozPjDKgfguamfs7Crwfcbe51qT2/n7\nwhCJqxIri1jVBOSwmBB2p8NYVHECgCqXD8L9To/8g+gUgEUEw0ubHtbVNwgG\nPF+D8nT35yDx2kyaA2zB6LHknOnb+jM1+0smX8X/FLUpCI1pp87kwwE2UNrJ\nvKdfZ88UCaY9QgbVOc8umNET+T40V8FSjgCg6OK8s4S3NBOjcx8ycPREnOjP\nMxclpitlb6AjImFHAQSNtCvgG4G4xgVxpqg14jre3OvxRfJcnNR0Qq9eNSVM\nz+KKelpBOR/Lx3OAwUHb3XXBC1vcm65xNA1X3VfHtcRjEbPSF+PbE5yOI3td\nfNdS\r\n=6yRX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b43baa7b998ee3dd664fd432fdf57da3f3620b47","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.85","@balena/jellyfish-sync":"^6.0.10","@balena/jellyfish-queue":"0.0.556","@balena/jellyfish-worker":"^4.0.76","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.187-renovate-non-major-b43baa7b998ee3dd664fd432fdf57da3f3620b47_1618570682021_0.40104490866757136","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.187-renovate-non-major-f00dfef857f9da15d7e42184d73b266476de8a85":{"name":"@balena/jellyfish-test-harness","version":"1.1.187-renovate-non-major-f00dfef857f9da15d7e42184d73b266476de8a85","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.187-renovate-non-major-f00dfef857f9da15d7e42184d73b266476de8a85","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d49dd0fb4ad2bf75a90ea0730071fd8a29c94af0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.187-renovate-non-major-f00dfef857f9da15d7e42184d73b266476de8a85.tgz","fileCount":17,"integrity":"sha512-KmJh4RMXTltJhEEeE4pAfG24oIjBqaZmjogOxELq0dGa+ALLPVHuFkT4uFWTs7kiAlcDqfJnEbf5qY5KAx4PzA==","signatures":[{"sig":"MEUCIQCTHMfVfZ+bCrNXEa/xDxBWzweoDQVWuElMbipF6uES2wIgUJ7HZ8qxJieWlzxXoom72v/9wV7mTUyX9pyye0YuNTo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeW82CRA9TVsSAnZWagAAOKsP/0u5bSfmnmYZOnCjP6af\nfnAcMsri3qU3mQuDPLmHWuJH2NSZLfPKoc3MbwtiPS2lVw8wctnmjckLw3EJ\nuDNsZ+bThn6ov5wPcaTjQvEOshDXkYdiUUGBbLhia8KOhHy2n5CKtw9ht3NM\nFgWurRmlvlwXV1CYHjQtoJM1xnABcBmUXT5/1LMb4ZfopQyCF6VbhqY1j/iJ\n++2A3Bluce63H5rqE++WBcisQmVndYaguzgLZCcseEmfVNxnkS8WBmKFLY8K\nsoEg8WSLm3lYEM0tUwjLZr+1VYS6cGbb2ZYIm0LmMSKIjGHfnmlyKrTwSogW\nrWHyvpumorWAJqS/p/ed2D3AuWzJkqeVstYAaxZ/CUfwDwUgFsvO5c90j/Kf\nGT6JfqpxWHdKWgefaxH7IyS0ybcplTwEG9rItRR+l31TFntSqZWP2dDl+Q7F\nSb2cKVnocYazJifgWo+Hi85E2jJ/7MYZKV4NRCNedtQdJiE6sf96QG49H52z\nXmCsy10+isUcHf32EOarKxsM9Gi7RoVsSajp6yTec9oAADxzp/DDnFml04KH\ngbp8K7aBZsl+eI+SHxw6xmQ/18VbrPh9Oi9XfI8N+eJMCADIqDkA1CGkKMrw\nAiyeaNR1TGe3OKqfgBfMO2n9uBCHp08mYGxQZB3WTsCqAMCGe+Z1EYloAzYm\nmTou\r\n=t9QG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f00dfef857f9da15d7e42184d73b266476de8a85","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.85","@balena/jellyfish-sync":"^6.0.11","@balena/jellyfish-queue":"0.0.556","@balena/jellyfish-worker":"^4.0.76","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.187-renovate-non-major-f00dfef857f9da15d7e42184d73b266476de8a85_1618571062172_0.4428622139698424","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.187-renovate-non-major-e28900bb7df7a28948ca1234769228f4ae37ff26":{"name":"@balena/jellyfish-test-harness","version":"1.1.187-renovate-non-major-e28900bb7df7a28948ca1234769228f4ae37ff26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.187-renovate-non-major-e28900bb7df7a28948ca1234769228f4ae37ff26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe456c215afc009b360cc64aa2ee87129bba86aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.187-renovate-non-major-e28900bb7df7a28948ca1234769228f4ae37ff26.tgz","fileCount":17,"integrity":"sha512-6wESDCxoMr8srkTdHxgAMvs9TMnGyse6N2GigE+kZD4BdPwmskXChoF8nPqdfi83X+b6CvJbDUDIPLbDLmTgeA==","signatures":[{"sig":"MEUCIQDGGXsfTlIwrQfSwUEgUvpIbS+ye78LNtdnzRqQf+6BawIgc/viYd4c3URbwHxnOrU1w/MsmTRX54LRuOLEGGyLAGE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeXCGCRA9TVsSAnZWagAA5kcP/3adsiEVe6eZ4sw8ZXfg\nx/jJymIcTBOB1UjV9uQwP3VWaHqO2vdL6WizM3k1ZN7/+OfLX8pjsOLW41Tq\n9CcbBtIrh9IhRaj7d2OI8WadqUfWvxbe3LYBvAcF2kySpjKWL/efVQAUtI8b\ns0sYoXEjKZvbfezA7dBg54UjH+SCR98dBIA0ztWEDsKavHG/UCU5J5W7bjqt\nMyPhHd9EARegdJRoLQCfGlRPCFYpeqxE0MVRcmW4j8WSGg5Yh2B4aExeMSQd\nefQjwMgYfPaK/mZxcNZTrnbVj+j5K2If2NC5Xzq+Zm/6OJRoSoB3M6ARS/rt\nQP/hNPmAMqSdMp8a6hDI69J7fdVJpblRv0qr9n+G+Hrhzm+UpoSqy807MkCU\nJqNyUDxiR8emoBP9TfHEJZGTTqPEY92bzIcLKt9snRNKdDB6VUrsWpFnnyTn\nJWmjdHXaWhkGVtb/fBrTH7SYPY7G4gjsb0kc1EzWKO196ErqZz8RPtTX5b19\nwPwQDsY1MuOgVeH9mRgEOb1VeX8n1W+jaBvxYwP2bbOqnrDSAKcU6Fa7wS1Y\nRtMf90FuqLl6NmTxGW3H66ybkIa6o3pdxT8S5cc0ChaOgeCXXNMl2iQx7o7y\nx/e8XuAwNbtGie+Z1RPgOPx2km7xP6XJ6tdW8uXMT+QmbbWvFu6DQPYY0O2d\nI2jN\r\n=cv+A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e28900bb7df7a28948ca1234769228f4ae37ff26","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.85","@balena/jellyfish-sync":"^6.0.11","@balena/jellyfish-queue":"0.0.556","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.187-renovate-non-major-e28900bb7df7a28948ca1234769228f4ae37ff26_1618571397783_0.8593618209616685","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.187":{"name":"@balena/jellyfish-test-harness","version":"1.1.187","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.187","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8d7711eca8b873a9ecdd957b828cd51b6eb88af9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.187.tgz","fileCount":17,"integrity":"sha512-1aU8DETlZ/sIV+vbUOIxDa/NhPq7SXuVX/5QqbysgHh0KJ4PYxNR7wb/rgKsQME6ZbbrLaVHbQN9Cj8P0FhJJQ==","signatures":[{"sig":"MEUCIQC79df1krsZy1skSrhTA1py6VFayBzfGhDWCu8e2xmmpQIgOKmobXqj6ShcBMSNw0YZro8yCeqfTLKqc+AHD6uafn4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeXF0CRA9TVsSAnZWagAAVsAP/ju2pXLIbnL8bx8XtQAg\nw/QaSKXkPCya879/eWimYrK6SyffdfSiigAPM2tAQw91nct74o27ZT7msf4C\nYv+G0jfokVXuZoVDAWzRct86H6KS5A9Dy9wEGmTazb9MOpQw7p469gn4Cb5T\nLNI4Oc33/mwJqyY6NtUFk6cEztTwlFlWCKwqCAvmJIHUOWdm8Ez2F0hOVkJx\n2xNbNc4LZ4+9MEDslmzvhLx4bpNs6J9gSsNMU0WbFZY6ouPnPJ2l/ICCuA+q\nP1EeRjov734CMMP36GXqkS09ybAjWjDHdkQNjKj7oZUn80Y92hljP1zm+pOI\nZSJZgynzxjFPblZV1y9fXt0CknzP/g09Ww79LMem3SZ2yAD8/HQv0hLQ0E/e\nw+JZWecd3+N8CvleWVHDOLG0tQ15l4L6kljILsNf4RVrpHQX1LQUNB4nfGzM\nU5LrLUNGwGl4EowY/Ot7UD5aVu96tx+1KUGiCEVn7qOmKjF4PthKF0n0rRds\nYUALpPEbVZHB7zU7/xsIf35EZEiudd29Pk+We7g12BaMqN3dkzN5ogVBy9RI\nooyKkuuUXu0dYZrwy9GU3DG2ai7TfYsl1amiKRkhzNeWhJ3sGY4+6Egjj9a4\nI+0IT/FIzZebceEEvY1VELJ/k0Ug+xH37IEWMW2tBBjJ6L7Gxv2VNN9Eonk5\nCJzf\r\n=VMe0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b6cc5dc0fe0bd3140c50ed732091285460654703","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.85","@balena/jellyfish-sync":"^6.0.11","@balena/jellyfish-queue":"0.0.556","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.187_1618571635968_0.0353659971454392","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.188-renovate-non-major-a917bf081b8623ac5bff18c50255e99e32194326":{"name":"@balena/jellyfish-test-harness","version":"1.1.188-renovate-non-major-a917bf081b8623ac5bff18c50255e99e32194326","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.188-renovate-non-major-a917bf081b8623ac5bff18c50255e99e32194326","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"24e060d661658c2b710971b04a5481e89130e5b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.188-renovate-non-major-a917bf081b8623ac5bff18c50255e99e32194326.tgz","fileCount":17,"integrity":"sha512-2jHZsCRIhrRs+yLeHN4JN+R/aYhF/DL8wHN3LkBqNeok5ObZC7xEG47GcaneoB1NkMRmZOsLwXDY5FfcF9LFNA==","signatures":[{"sig":"MEUCIFoi82bCcPoVFDU2W1isYGSuPBKFlOpB5Ar4VJBzOqQ0AiEAwf7QsVw9Sq24NPB7+SwLLsVZCKX4Pkc0UlTa+plPIAg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54769,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeZ0MCRA9TVsSAnZWagAAhWcP/jqebjfd8M3EyRm4hnpa\nuLStxlczMVbTeOebCS68ukIX9WELeslRZInCtHPPsPu4IsC3zsG7wK5C3MoV\nZRKZ645MhhZe2O6xAa62SfAC6QVybOwrb6jkiWj/1KvIbeT9ztLmBFj2UBqO\nAdsfCsorfuCc+Th3jtzLoufaUSzU/zBMnmATfJF1VnibQcngb1aLbXtVoFtu\nt2s7c1lHbzhuMEDjmz0k11Mq+PH6rFx3smrBc2offEU7Rlvs9sZCddOaev0m\nqVwB4mWLk6bxhOVZWOMAnYRAjxJSJXUrq4nFY+sWvsiNc0deY53tI45g4z5D\nDTNaQxKawdHWROW3EGnzt58a8qy+UlkQ0gc3DGgYLhCRhGJjYUlHQPKZPWZ0\n/FVep0UaqfgtuI6qH38LGiP6gQFb9U9MKZkaodSsPNrl70HVVGFjJC0AJhF8\n3spaxbOH4lIS0TEMT6v5UcJ1Inq3/R6ARNIPK9lKT1uFgY5EcluTETLert0Y\nNA7zenN1ZQZxXIJVCPca9/4mu1ncQaxYIys6N1mCDt9H6Xo2Kz8H3ppz+3Wp\nKb33NyqMal8w0GzeTmWPt2inOqNIu+c4/RRn/VgLUcKbVlBQEvj8Jmxdy4F7\ntHogQALa0u9XKmyrK0xvuPIr1cLbU/yKUffFiXxUI/xLWuWr2jp1dReu368G\nvYnJ\r\n=p58m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a917bf081b8623ac5bff18c50255e99e32194326","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.86","@balena/jellyfish-sync":"^6.0.12","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.188-renovate-non-major-a917bf081b8623ac5bff18c50255e99e32194326_1618582796074_0.49108337344818476","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.188":{"name":"@balena/jellyfish-test-harness","version":"1.1.188","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.188","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"316e0be15ee4a1c8e7167cf21c18f8b2ffdac8a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.188.tgz","fileCount":17,"integrity":"sha512-j7p/yEIb89+M3pi8Jb55PA8Kevot6rNa2SWUTaTWNqAFmTyULaIlCTDnOZK+FzMtLVCBK7j7V6k8waR49WPXGg==","signatures":[{"sig":"MEUCIQDRTDx7nAwduWI1wQMQO8EG+4XE5wFQrJrBAi0O5IgN1gIgaTvBgfJ7sW3b/fJoTspJFgzrGRSJ7UV4+GNamuyY+5A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeZ4GCRA9TVsSAnZWagAAH2wQAJvRDhMzgXqiQ4jT1kbR\nbpZJnCAeTssiVwcovq9dNAcCLsBZ9yeopOmb6TjdivDQXLPnj4UNg7pGbWpO\n8kL+LtFTXb2PNd8IxNHLNsgEf9qwTEcd7W0ziP7RnIG0nKXM8YTtKL+U2ORW\nUTt7yHGzscEtIwty8/j9gGoUA2ymAVp1T+NTWIB6xynNv6Pk7Tuhk2K4FQ/l\nPdBgTlDLAz60JC+g9aQTdy20oHjhMLHsYthzYuRaR+p4QCFEq4Q2yBDpg8Fg\nzUwFsP3zX9kTz8RNrSzCblac2qnjiBDQWCHz+MmsnaE2ELSc2Qi8yidEF5TL\n/TF9xisdt88teO3tjrTJf4HufkR2sxkf6xSgFVF2oEbiX3nzy4eE5oz9cBUb\nqHdSfAhOuT/CMI7uzM9aJhlZc+oqCZVn1q2A36jnF6mCF+3SGw/UG8r9iM/m\nSN2P7onfl26AQg1/ufwDgRXraOmxzz3CK7HZNzX3x3GW2ZdX3jT8W0Iqz5ch\n2kRU/X58JDy3T6KzsijZAJ9AHykDpDQbw57lR/z2PUHk8E1+ij41ijuHlkm0\nbkbdkJw0880Ag0dgw7S5mRxPjEeUamCYM//nIhJnXXWciGmgoYzAzYQMyc0a\nKE9BZPHDm32z9Y79vI6fMoaaAUfu24NmmOqpKVVli121PFoX9oxrKdZVODVj\n28bF\r\n=lSRk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1104279349f145167fcaa0a503b4186d7ef2930e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.86","@balena/jellyfish-sync":"^6.0.12","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.188_1618583045874_0.7869201094288352","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-94cb8a5365109bd7569fd393a2995102ef99361b":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-94cb8a5365109bd7569fd393a2995102ef99361b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-94cb8a5365109bd7569fd393a2995102ef99361b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ffb06ba5150351335cd40e1abc50084ecfaf075","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-94cb8a5365109bd7569fd393a2995102ef99361b.tgz","fileCount":24,"integrity":"sha512-1/K4Jb/1ixFrd73u76q3BENNf9qVzewmo99t8dg8Qn7hNj/YxHTQrEQrUja10P6nlnL17ShVGX19j5IMEg9cww==","signatures":[{"sig":"MEUCICMbIN/Ng/mm9fNucFztAlFujg4SdcNrixdu39Z7IgRGAiEAv7dJtiQayVLHXU2jVv7+DpNFgrLBLovhZ41KQYXPWec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeaS5CRA9TVsSAnZWagAA8LIP/1CTteGkAhLkGz+PSBM4\n1fC+AvBrlpBSS9ro5c91DAlgVNNMnA27q1emwZec0XUgsLOW0zD/xo+vp/zt\nhSYasvZPzUMr7NbGnAvfI4J5vztNVqfXgzQkIqdBjKlPaLnSsq14/vrOIgvT\nalC9LpZlfqQdeFgj1SaKWKCenbHTz6Q4sf5tjk7ASn5Mflr1oAUTZRY3P2cL\nugXmDuJUIWYQvb+Z4sTdksVZShMaP9p3caWDmS8C4sg6gV1PIJl8Hqp41P6o\nGh4VU/Vj17+4nm9hSQ2KFQHMITvXmFIgEwH+llaY+nzkeRBK1BqXrz/nt0d8\n1eNeaufGXGsmXZFp9MSlE0kbtE1mpK43Yclr9V72LiQyakisETj0bijWrkJ+\nlek3N1RGhjsmyakFex6q2/MArI1TyWTVPN1HfGdHw6oz2sRMb4u3vE0sTJFf\nZs9y9yK1BOxFa6nnhEMQllhCb9q97mB7heWTHOkP+/X/d7pvp8xWGQSuHrKD\n0t/lX/SaqkmEwST6mRczH62DMHsWKtwvHAbqdfbf8YpPQj+p+jq+nVDI2D5s\ndH5EKMm4vdHDX0p3KVMCL4rQjLiK2Tq5Arjej8aDUK0J3KK4P6L60j6JUQlK\ndm6x78l9JJ/DdQpiZM2M04QGwd1hPI7LRlZKC+pMtYVp0xTc+Gg/MDuRyoFy\nTBPv\r\n=klB4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"94cb8a5365109bd7569fd393a2995102ef99361b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.554","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-94cb8a5365109bd7569fd393a2995102ef99361b_1618584761301_0.9813986374887693","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.189-sync-update-f877757e6466b323d4b2749d2b9fb4d96a92351e":{"name":"@balena/jellyfish-test-harness","version":"1.1.189-sync-update-f877757e6466b323d4b2749d2b9fb4d96a92351e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.189-sync-update-f877757e6466b323d4b2749d2b9fb4d96a92351e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b1adbf1208acaefc6565b035474471d8b6fd0905","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.189-sync-update-f877757e6466b323d4b2749d2b9fb4d96a92351e.tgz","fileCount":17,"integrity":"sha512-0Cobh2HeU3S9pYVXLgmORTBHsE4CCO/zPrzwREQkphX86hLvDOjJIGEKo7tS2yLuoHxBVzWEec+sLns7dvLtZw==","signatures":[{"sig":"MEUCIAkXITOSRmDv3Zj79ZlZmarCiZIk3T/FLMFHiGyUH62kAiEAyyfgh86HA3X4cwNmJN3JD0/gBR+oUOrmZAvXoQ946r4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeb9WCRA9TVsSAnZWagAAV60P/jMvh5TvTWsIOjTf1Gus\nkmN8weinJoDNCtQGhvTq7EbdxOwr6RLaPH3+EvGIf++6Mb75pihCPmk754MW\naYgW8I7Vf8rmGLxTcYKKVQD1WLD2YUJkfJMsgMiUTygl53b6fitsZz+jdNB1\nNpJ/laYqk7YbOYoTdAFOppQwg31Wabi2zcM6SiXiUjsP7cyuH+T8kypzbEn+\nS2XqtXg+WZNbXehvKZHMdWQTlnJlZxfGLlv5OW30GNjaofYIkcKB5VX+NDAT\nPpe+RaUew6M36DYpdhrYL6kJIZKmlN84DXXIfRtrQXOPDzYQFeNW9HLDEi9w\n4W3b2ryJ5lnxMGII2B8ErQ/8XoreYHJWvJh/L3ShalEKpIe0VDWyJuDx9T4y\ns2+/ADgXPN/r26TBBF/t5c+kNc3oijrVUQhDDP/bEE4T5jnOqmmMAPZ/C+VF\n9vwJTDXrkvBN/oMXm+fldmHWvXnEExbVQAPgw5u/w97s6jroarwNjddFBsld\nzJMjxmzXIxt2oobfVrtfbnHZ1RrnhercqRSN8zPZuLV7HLyqZa8JXoqJYsrD\n5c9rFf+f+qowQqb3xf5xp6J/H1fYQjLMlar//KWdwk9qb8FaE+AkayorW/p/\no3k9MIrP/wS2hm8C+1wZvjJ63bDaXXmenfbkpbt6p/KCYpixXJFz8i/R3GUA\nkhKT\r\n=Jzwy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f877757e6466b323d4b2749d2b9fb4d96a92351e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.86","@balena/jellyfish-sync":"6.0.14-fix-metrics-import-0775f707f478f3d995eaac9d00cfaf37e86c88e9","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.189-sync-update-f877757e6466b323d4b2749d2b9fb4d96a92351e_1618591573499_0.1250157778497234","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.189-renovate-non-major-d5fedc8a179c0d483ea56dc38671c4047c1c4e02":{"name":"@balena/jellyfish-test-harness","version":"1.1.189-renovate-non-major-d5fedc8a179c0d483ea56dc38671c4047c1c4e02","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.189-renovate-non-major-d5fedc8a179c0d483ea56dc38671c4047c1c4e02","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"af0acbac5cf52280a119148ef6c7707e7648012a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.189-renovate-non-major-d5fedc8a179c0d483ea56dc38671c4047c1c4e02.tgz","fileCount":17,"integrity":"sha512-MQZ79wsrkU2bBWr9MnKtMO5HSKVZebQPk4KUZZgbiQA8oPl6oOoY/Jfnzg81ZhqxFxjvWvQu4U2QP/WLBTyn7Q==","signatures":[{"sig":"MEUCIBiCP2D8IulOoncN8r1u8w6rPogDqGPeqIZxVVtsQyCMAiEAiC1HT+v4pAFPW7DOGBpJ8z52XOuOM69YQ/uGGn9nEAQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54839,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgecdYCRA9TVsSAnZWagAAr24QAIoxYdloJvjU3ZTfZH5e\nbbftJRe1RPrKNxeFcF3OOBhw50AVHs1d5hEGJBTB+twk9EoVOaxPJdguR7NR\ns4705dm9MJamF/99Q8Fho31YpperKf5QDEmSK76uaJAbSKxFEUdt9apm374K\nG4lMWwnzZCfuwYrMOICIGADsQwdiiKdZ0jGViPMH4NtVvDox5w2KvCnHm/rv\n8+gTPMoBJ3vknyW/JOWHK+5bTIdmEmCqVHoZF8gWk3LpE8l6UIx0XQskZosV\nvYC60wnnYVSslaAxGUcQkW/p1axKCsl6FSpeyLSI/89CCnmKpgoI56WbLI6U\nuUh2wxXb0NwjLJ3Nkou6hxc3O6NjzymhbjqqBVUbXrQnEDSHmvbDCf90/x3C\nYfNcFr7ryGZ9qgSU5OuBc9qq2HpxmzHjflNJO7c2zNKyC2n84kfXPro2R8yw\n+viYrndD1P3djw/GxjjsDyAgk6nffs8aTCcAqlTEtow/1IY0m4AfrZmBp44F\n+cV+kAsVKYgqqBLJZzahnRgK7PtTh3kfDNeRyKhDhUYCE3zKuPFpqbjzGXv7\nijJohmvcLwNflocmGzf+qMjQpXlq3JwLwK2kemHmpkk0Ep8luRqnkDE3KRDz\nOuhqkDBN0qYHc8jWHQc0aQZ3f/1lqDNQ59ax9U6ZmZ6vyO4y7l94Rn1Ea77O\nGXA+\r\n=BKUH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d5fedc8a179c0d483ea56dc38671c4047c1c4e02","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.87","@balena/jellyfish-sync":"^6.0.13","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.79","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.189-renovate-non-major-d5fedc8a179c0d483ea56dc38671c4047c1c4e02_1618593624434_0.04704169243983136","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.189":{"name":"@balena/jellyfish-test-harness","version":"1.1.189","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.189","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f12f4782d3999aab01971f04e9c9dc6fd040c87","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.189.tgz","fileCount":17,"integrity":"sha512-E1GO7Lu+EYvoC+CysoPVvMo7HWmLcJMedM3Smen5l/fWsiHrHPTUWNgfrxszYbrGEQTgaI+DHR5H9o3vaK1cQQ==","signatures":[{"sig":"MEQCIBo0hw9OoV21JaFuLR69f4YASxI6EuoI5yRpnNhfnnPxAiBb7Bf9Hl9Nh8N8e1lBcIwOvtadeGx+RvdKH88tPHAt9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgecgdCRA9TVsSAnZWagAA8LEP/0lWnkgRiEGFxi4O6NTJ\np8qxuOQ6xIpBFi3tJcmEgaqEKXAil2UIfSKhCWr2hfPh1P2H3hKFCMFV87gz\n2QwsUopr49/ATCOD+PK26UVN4jXRBsO3MF/ajAxymOxB/aHM3tzszTCiQqv5\nK7QZkHt22yl0PAmJZeJVcdP809iXndS3uFeiXg8ePF2bh4OCH+LOgRy1QCBf\nAHD4WkdOtRnZsveI0M2ixTLOoVnDGpFXzhbdKg8IO5N4k7bZ7FZ5EQzgus+X\ni9d8fiYTiCHpwGT6Yv3JR3V2PKmwtQ1uBXJROrjQFzZR2kzPV20wxhqMnr0o\nPJsUY3hljtXPATmQ6wicZQL0k03d8qEVdjp3YPjKA9e1+ALaT5jodcdHIahZ\n6gc0lwgWirptrzZutnA4437xyiGka8rt3J6r43E1aHbY7b6yTtctedzv8/g1\nrhlZLwKVApcYFZR4dJD0gzzOZlY93FGjNWRpsso9gyrQk9Gwt26Z6k+eoC3N\ndQUgtghS9suMTsadQ74jGdxhSLgAv3l2AIRbJx/rV0gN0UVJdV7wYY1o2zpS\nr6FpofpBFT4FJsh1d66HFKV/NmbRAIk+PlQFwBnIU4U9S7FS4yipD2FJufRB\n0iaUuTZKDu0d9hViVnB3ZFporQD7xvnr290LziZmtg4Sa9oaEheDEaCuZnTg\nP1vK\r\n=GlMf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aa3c540a5a7158bdafabd20e71ac318b7c3279c0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.87","@balena/jellyfish-sync":"^6.0.13","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.79","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.189_1618593821514_0.4020541078801494","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.190-sync-update-a39246055ce9a037bf88c44991cc6442dd8c51c5":{"name":"@balena/jellyfish-test-harness","version":"1.1.190-sync-update-a39246055ce9a037bf88c44991cc6442dd8c51c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.190-sync-update-a39246055ce9a037bf88c44991cc6442dd8c51c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96ae1bc89b68251d5b185c7f1721a54a50b59378","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.190-sync-update-a39246055ce9a037bf88c44991cc6442dd8c51c5.tgz","fileCount":17,"integrity":"sha512-SmTwwYdkfg0GxnU5QmdxqU8q8Q/Q3Bu/81v5up0pFErCnmVX0iCfv9ZvibVPe9Vg3ir3RN3zXHzPZEszD8QP4g==","signatures":[{"sig":"MEQCIHOjy8cZh4b7YLy/k80+y6MP0xswu5uy2t0+oIb6vTvYAiAXkT+ZpHGLWQglC+znwqKTHUCIxKSoLcd9vtm9DOcpdA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54966,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgedfpCRA9TVsSAnZWagAAWbsP/1vR0vJ6bNd6EDXMblRq\nKbYX/usUcU7P+cizYLBsH43a6vO19mWK8O9EADs7neG79QvIaJG14MyoqPIY\nFv7hK0AA9fn8mYvO56S6nrrkqUJmtcvfAu7J3m2PYluRPsKrScQ07338uAzJ\nxkmCzKRKn7GeBE8Ulp6zpe5DZaDhtm7nBLXezbSTGVIYsDPSgjRaWZQQ6N1O\nt9JDwyGFUbyxJZ/vsPwtoCLS6QmcQATn5B+CRSFicApi9IWVez5/3JU6j9Nj\ntXM1Hcx04mN0nnU+5gth0hr05PQDuG+z3tP0SlyURRCm5CQNecM/1+D6vHCy\nT9arLSqCm7o0oGRc1lnPzABPckF/YFtV2B9+25x+lpPtBas0tN+h3gqKHfgy\nT4TdNJV3veoWEokOqj1xH8K3GXgOBNPgj6TNkHD8fqRqKDINEcNrPIdwfxWK\nEf2o0n8WQUQPVkD67ORTk9Sj3+Skh/eqAwVu5Sq97e4kSEnSDJRzDBMSAlHe\ncHwZoOUJmNr7TLtZjeV9+a9zB8Nhkl8KHd1pR3jA2y/sUGa+2SOmkwxLPDGQ\nvY7dL122RdCfXXtgoygPgokCrz2n4Kx2KMI96xgO5yNN85frmDMJ0KSrpX3p\nI/8q42eq4jkcFDWvqlIfZgj6zTLSEq6ouWSo+ao6dr7jCJaKIXtpXKJrjQlA\ngSTq\r\n=ra2p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a39246055ce9a037bf88c44991cc6442dd8c51c5","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.87","@balena/jellyfish-sync":"6.0.14-fix-metrics-import-a7379c2ea3fb1d2344b1319744ae1b1677daa42b","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.79","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.190-sync-update-a39246055ce9a037bf88c44991cc6442dd8c51c5_1618597864472_0.5835131498276505","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.190-sync-update-f4d712f78634c79d637b4997c598f030deb48180":{"name":"@balena/jellyfish-test-harness","version":"1.1.190-sync-update-f4d712f78634c79d637b4997c598f030deb48180","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.190-sync-update-f4d712f78634c79d637b4997c598f030deb48180","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56230c60e0f521745526c711b1f99b8eb0621326","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.190-sync-update-f4d712f78634c79d637b4997c598f030deb48180.tgz","fileCount":17,"integrity":"sha512-XxWZY1kl2P1KKPvX5uNW8z+cBWXNgZWxcrvo4Umk5tBDbc9OAI9yJA7YirSdVswUhQDm9wZUQtiYRa9x2zXUuQ==","signatures":[{"sig":"MEQCIHbKHPRDOChQeFqGSdrg5pi0Lf19RmsmUbgqPRuPUg6+AiAuFZYULB6/6tB72+j7A6laYOLt6JqrieHwu/pERpLcTg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54907,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeeo7CRA9TVsSAnZWagAAJIQP/3BXcFW2JBqiZC3JLyhx\nuKHoz1BkSaOu+ivyjCULvrtgGjGJeBVrTdKnCoZi/QRfjSNYOZRQF3XVe6MZ\nQ5ZqVbT6HHrLoYEndV2QLtKbh9WK9M/a5Jmkb1ERUkKlNuJThWtnfOWD/qc8\nMmGSTxmoIyW3lk1t2QpjSr8XVZDLPQhUTljBRNg+Bfd5NZ12XdN0oha7jdAj\nEl+YyzT0Wsz3dZCwEaw3u6nIgj5duWaiOq/6GUus7C9RrZtjZleQPLO8HTEl\n1Rp7T5LvojZzxVkDr97CMHhgH+XfNLWwuEfFxlZzJYes9fCu7Fe2Ko+cbmkN\nXASTXqCdUxtoaIchTiQNJdcEe8HDVRHoHclMFYZumFRaiql0dkBk8UGsb7qR\ne3phOgDM1XZq4k+pjQNGO2/t6zOYsj5bASlJ59WP8CmxMoQWi9HndjSNKBJr\n25EIQl0amW4JZ2VOeQJQ6W7CdFRifm1WFmt9hDx2lmDCxyUyTFqisJa/izty\n2PUugQhu+EWlSbwtwqzhF8TnbM5k7DzANYH5ewnK+cC958eo1VupKJZPMlAi\nQof7YlMlNwyI9DFa8kdBRmDyzGg3KX8PDdDrjK8pYvFYXSMhj4l5zQLMvgY0\ncOMYFiFJ2EKrD9KmJn4M92iw/H+Y8FadM7wbDhlwithSABKlkxOdtoCaEA1B\nvT3X\r\n=G5YC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f4d712f78634c79d637b4997c598f030deb48180","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.87","@balena/jellyfish-sync":"^6.0.16","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.79","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.190-sync-update-f4d712f78634c79d637b4997c598f030deb48180_1618602555405_0.7643994703935784","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.190":{"name":"@balena/jellyfish-test-harness","version":"1.1.190","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.190","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"896d5f5d9db2b030762e3bf76e3ec170b4cc8ccb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.190.tgz","fileCount":17,"integrity":"sha512-ouAuWCIujmM+SojObIetGz24E8K+RspUlNMOPK01/iwbXqkJ75G+6zcGKqmABYlA651drSfvy79L3h8t5/atgQ==","signatures":[{"sig":"MEQCIArtd3qPrt5UsJhycxUzuqjqyZ40gFXyieQCmEB6cHT8AiAmWp0g5fawYcuXr1kxDp4/AjcGxbLigmIIFEovsQtjqg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeerkCRA9TVsSAnZWagAAq+YP/i0kTEy4IcsNzdDRSiHE\nXjJhIr0B7/R8eCnBms0+cWZli4gH6m2x2tleICDM0WmrWmAZecqQr4mSH+hz\n6OSSAd/3Y41YUJS8ylR0hY0+HHHXjv+ojD8HYEKIQ1+ZA3mKbT/IJ/SeFwLt\nNJFQ9dpelKNTcm5TSh4hfoWoBZod2z0plK2yXp4ZECDJ8wLVSXlOd2w9qLuS\nWBgcO7QKYwxtX9dPRYwcTxOWmnHeEur86VnJq821qTSVK+fXYYug8mkjICPn\no+wl0k/+KCS88Fq2bR3WWA9MSqMZvP0h3Pt3srk2AfnEdS6mQqr34bJva5IT\nqtpj/xefUT896ENDGh3I/d8RceNZM3urR5QPNI6vwlEHpYkGad/tNai0hb9q\nq9U+YNlcUXONsAT2TKqLqBbpANqbTwGiqSI3dtVJT+ur5+AV4Xfp7xNkpM6x\nB5uD88RJVbihqQ0/s0B3m40COz/vBGgI+bq4fhbpMZLwdxK9na9wWmwglSav\nzq8LMtt7Ia8XepoQN6VPGIty+F4s5sWj4gMCKF1r6J9MSOIj3Ejhb8FwYKac\nNFK8Ro9PSZwoOhHolx2Ugsp3XDyZDtHsMDxs6WYRXxV/6rae79+63oE+quti\n1h7NVlaUFBTqc8MHj2X+mIBG0mUp7dNl4K7h0J1inBz2J67u+pvF+u1NUIbl\nqGb3\r\n=6B7q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3766af4a9fdb9cd7692c84ace9989db58b83bff2","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.87","@balena/jellyfish-sync":"^6.0.16","@balena/jellyfish-queue":"0.0.557","@balena/jellyfish-worker":"^4.0.79","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.190_1618602724361_0.9557926251984608","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.191-renovate-non-major-6c4b0fc6a9336227f0615e1fa6b95a1e4178be73":{"name":"@balena/jellyfish-test-harness","version":"1.1.191-renovate-non-major-6c4b0fc6a9336227f0615e1fa6b95a1e4178be73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.191-renovate-non-major-6c4b0fc6a9336227f0615e1fa6b95a1e4178be73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c40852aa821b76746b9b3e9562220030df55cf16","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.191-renovate-non-major-6c4b0fc6a9336227f0615e1fa6b95a1e4178be73.tgz","fileCount":17,"integrity":"sha512-2WRbSfo1qIx6+jMZpoFWoKNzm6rqSfE8ODrR/E429aeyIW+vOjRQzKVffh74gOvAItBl7kg7v8bO9EmujnJzNg==","signatures":[{"sig":"MEYCIQDY0VySKvu5gclxn4MLwO6V0dVka8+vqHEEGu5hh4VWzAIhAMiEp61AIJa1fdJ+S5ivLg0D3795KNYOFlupDOUMo90X","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54984,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeeu3CRA9TVsSAnZWagAAQAkQAI+eoGfQZCLLkxdqTWIF\nQsGjJ8Miaml4Y/fp4EGFEeneMNnjKRoKvlnGL6p3D5+dPYNajd6aERDP7Esp\nQfgc1sTjovXOm2BXLpiH97J+5+ggd4bIlxB1DGUWKkTruCbWsSjZ25VZ182i\noBIe2DhWT80IVukIsQ7oYcKGPovBxwTi/xVE+Q/J7OizkBTM7QaVE00Hrmwf\n03VmWTnZfIJraaO2QudIL5y0sZltuJri1R/q4sSEJLaRP0YC9SlJOAZlpqAc\nDJriG61ErvlxmH5LdrI5c4IF5uvxNRWmVI6njxbWkhS1R1AR9hJ67pyWQ/uy\nZGEM8/XH0mB1xks3D8foDkvOh1lIfkb60LMAdWrt3jt7xK6BH1ucXbNFCytl\ncKSSqgzgRn8hiviyWpNXBG5dLElG4szjmpnP+PjLgfOoxOOgDYWAjKWLFwH4\ntxC9/nxjuHa3BZM7eJ2LCAfXGgH/JUDN3v2DKJ5iESJ4WiEeiSOfY8SjRQFX\nfsoZ1hiJzBoLkjcU2apK6X+AmaO2akaPQpQKW/R8XP6PUg34P+70QVkAtWbl\nHV4SallFLKaOl5MV40FRwr+XIAZ00RecehGiXLh2KKtzhkIHDWlgv5JVKN+j\n4lN7k32X7ok0RZRkIF5wWZ6lhEzh8qbUMOE8i5nGdqxzKxEoRSWVReV45sQn\nQ9Aw\r\n=YxPl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c4b0fc6a9336227f0615e1fa6b95a1e4178be73","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.88","@balena/jellyfish-sync":"^6.0.16","@balena/jellyfish-queue":"0.0.558","@balena/jellyfish-worker":"^4.0.80","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.191-renovate-non-major-6c4b0fc6a9336227f0615e1fa6b95a1e4178be73_1618602935003_0.04849955419004348","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.191":{"name":"@balena/jellyfish-test-harness","version":"1.1.191","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.191","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"224e064055772c297a21699e3bbb9502bf27d3e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.191.tgz","fileCount":17,"integrity":"sha512-xvqZAQsDCM/gg6JbvSnzjhxBoOFvwpZf9a3gu0TLJ4WL+qqugeEQNv329OMWfIFuz4ZfRpx+8bgRRjwPeVuV8Q==","signatures":[{"sig":"MEQCIG7/RPMwpv1dHXzk1Wrg0tYXzb6ZOFTfXGiyZWLQIJszAiBrlw39C2+vTdeibGQI58xi1f/Vwy4CI2oyxq6Xiol/hA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeezeCRA9TVsSAnZWagAAumwP/AgWSmqr+Pmgt9uWuFhY\nyJyz0TfL87XuBr4qQjBKjz3W0lDgC//wkL6PyD/9kZt4jNky4eEz//ZInRSn\nYFMf/vv55fENKOwMMXrLFJ6URPzXrKPNq/oAkYLu4dZKsL4Rzr+STERXe8Uf\ndPGThugEQv0YycgCz0fm15C6Yku3S6r4mCze/ZJE0PCc7diI9rwo667wDNV5\n//MKnstFCahOELIsZ9j8P3oBfB4kalFpgesEinvsH/bPHokaPIPOKn43stRQ\n6OzQO6NcAEgrkF+Biz7PUuxWO4nWEJw/Rf4x+aVa3XDvQInrfsgBTUu6BurO\nWiMiueSbjHuyNcLH9ANM4ULoVh7lzJIcn8H7+Y5dCxSSFXvMdB6rIApO+KTu\nPDYgiIzlimyl1Z9nsxvplOShU8CX658YsYcqGp5HfvgmgKgcweufVhSvnoAP\n5gXjk0ITY4rQfWNwVy41UFD75GwcyLT00twGyf8YPJbmNVNMJ6D8g8p+WcR0\nsYMATftSH+3un6DzFDAYA2euuZB74es6kkRTeTxRVTISYt5ziWe7Ie/ho44I\nf4Cgoif0EBtSA3BxMRxiqzBYnCQjuMbkms1AcqJCIlH6U0gFV/WP1ZEht0QU\n6/f2IDODwOkQT/tmWDXQignbGnj07fDFFh1OdMs7lISVfXn0HSu9C79eTe/Q\nllXL\r\n=yNCW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a38a8cf3f8e50405e860e75ea0c64f8aab3eaaad","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.88","@balena/jellyfish-sync":"^6.0.16","@balena/jellyfish-queue":"0.0.558","@balena/jellyfish-worker":"^4.0.80","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.191_1618603229872_0.9729362574323037","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.192-renovate-non-major-69410c28255f13a5a89ba7ebe9e8b5ac10beeded":{"name":"@balena/jellyfish-test-harness","version":"1.1.192-renovate-non-major-69410c28255f13a5a89ba7ebe9e8b5ac10beeded","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.192-renovate-non-major-69410c28255f13a5a89ba7ebe9e8b5ac10beeded","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc4aaaa7fcd6e03f2bf656a78ffcfd786cf9f6c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.192-renovate-non-major-69410c28255f13a5a89ba7ebe9e8b5ac10beeded.tgz","fileCount":17,"integrity":"sha512-1u6gtrUqnYzVAh48UKwvnnL+1AD8GlQbp5VaiVaz33fzLJQeYJISQNKhYv6uQVx9FyHlpO2Nqw5Ab6zQDf2ReA==","signatures":[{"sig":"MEQCIBIEOAojwPOYVUY8tZcSqNop2yYAQ4pnZCOBhhdbjBeEAiAYiVgpODO2SiW+YRAyOU//N4VxdAooZEHDehstNxRq1A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeg7/CRA9TVsSAnZWagAAGjcQAJ3U2oJL/7OAA3YYAL3V\n62dPhiIp10CPsOVQ2oObL6ZXbN45vD/5zam6JcbJM/l7ofnrSl9GsOjlhDzT\no+HD70N5z1n9UfLkcVfOj4MERtyryYJ+PzhI4dG/5kFNS/jKVHx5FsDi/a6F\nm5/FJtmeOVyHanrv5f49RCbSVF3XLu/a/E45xGTzjTNSXfKTNjKx7lpif4/w\ndayTP+FIrXogIwywzX96wA1gNvtnfVYLGxbu0LA9DVea9GB3P/tgeQ8ulX1m\niIgS6MVhDHbXfLPl0TD0MXlemd6sJwI6FfsJz9PRY9ewMseNUnFPn+i2Xy1U\nngi13CQXfOiRDmVAeZj5NuEU7wXh6e8dG8yEzIRqSFiiuSbwVLPGXOvgUcOu\npzv4x9GxVTZhVF9tuK5K4EE4rggBeeBlaKslh6Szj0XUg37ELADCWWrU2k+L\nHh5Sx/ff59uQ83BMU1HJhTFk/fKcldHScW8/lgN80BObykmnN7DCrS7BO6uw\nlAhluKG+nP6pKICds9TC9WT9t32NYoE5ZdjBsPk7bGEDi7Y3Ec9RVTS7/2T3\nIolnGrPUX82p7KHCKojSVpPGSpzQwoM4NulNxAeJ20ZB/fL472nK3zgNgzi6\npyv+pLMl25kF0jdzDFyrIqq4lP9TWG74eAiD191xOzDyK69FIYK1iwHiajYY\nJ+5Z\r\n=AVZ4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"69410c28255f13a5a89ba7ebe9e8b5ac10beeded","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.89","@balena/jellyfish-sync":"^6.0.17","@balena/jellyfish-queue":"0.0.559","@balena/jellyfish-worker":"^4.0.80","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.192-renovate-non-major-69410c28255f13a5a89ba7ebe9e8b5ac10beeded_1618611966650_0.055882440860610005","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.192":{"name":"@balena/jellyfish-test-harness","version":"1.1.192","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.192","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61a6a0f60e6287aa635089175d710ccf50544143","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.192.tgz","fileCount":17,"integrity":"sha512-T62k1WCUraWnN/ewoktOXQGJ736/yyWIHRvLUf8mKPcV13oETkhtpKt92HupIy6D/BG2wk9uakwmxdhja4p8Eg==","signatures":[{"sig":"MEUCIDaG/KoQm58KbCKepY0ezEfWVn0cDaAys1Wxdnr+5vgaAiEA1id7ktH8COSXoHGLbYtk+AdFGVvYQnwtTab30DhsBJ8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":54994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeg+2CRA9TVsSAnZWagAA77cP/iis3u94q+gtb004HzI9\nT9k1KGKUaDiq6prGlAoBs4hZMQ4YMgS3rO3OZ4i6d7adqaRNJIpj3zrBmh8j\ndqEyXilch0ZprhcaUFuk0vGWZDcU1wqejFgQC16Q1rRm1eAcCXHNEzO0Elg+\nST9dGzO/AXKw0mjRRvYOTeN5DlkvWO2gDCeVgamSrqZTp7a/XIcHcrVUDHe9\nyhsfc3jNb6JDVi2l7yE2r9SxaHbZo8AwlPO8dTbQHF1VICq8SoASnSy2xanY\nVeMwlDtFdOl+wQPfPUWDNd3q1EvzAW0TSY9EBnVa/XXrUZni1DQ2vyHbVYpo\nnGroDm0ihoRYz3EhLQcOlAMLLeukLGz5+lSAy5AyrNoRsuqvsbmsKqSfaWev\n4E6XdF13GaD6rqUzNqFmvq9GWvFgNtfG/bnwGYpAOvrl4Oxvlca0n7H9hHdu\nJ2NELuUucU4Q0R1gtbpWrZWCDCOcO1AWSwJXQDBY0d8k5CcTxV2HxVFbRVL6\nicIkAw8queqS9HUBb0IrhFQoihlutLTI4BxEKMBe9pTXpjYH4ATBGdUDaQda\nQPggQYsWrj/ojbGeIEjLLseEPF8D78ugu83iy8l/3B/f3DdjiXU4ZkU+joj3\nsK3l2eftOEG38J/lPxdU1gY059ROWZ0KUSDvScIfS/A8rIBREirdfV0LjBP1\n9HSz\r\n=3Tf6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cf516dc845bceee8d816d172be2d3bf8c74ffa37","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.89","@balena/jellyfish-sync":"^6.0.17","@balena/jellyfish-queue":"0.0.559","@balena/jellyfish-worker":"^4.0.80","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.192_1618612149723_0.5960383501785147","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.193-renovate-non-major-303a470cab063a16b8976e6bd4c1368db8cd516f":{"name":"@balena/jellyfish-test-harness","version":"1.1.193-renovate-non-major-303a470cab063a16b8976e6bd4c1368db8cd516f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.193-renovate-non-major-303a470cab063a16b8976e6bd4c1368db8cd516f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d3e41ba031cdc933d4e885ca95b1294ff94df82f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.193-renovate-non-major-303a470cab063a16b8976e6bd4c1368db8cd516f.tgz","fileCount":17,"integrity":"sha512-oJZ/w6E1Dm1gfIyiB90u2COfZV4ldRJf4OpTPiSeqUdPzohKoS7tSeF0ilHFqNmLCPfunA6j1Y2MXr+V/tyOWw==","signatures":[{"sig":"MEUCIGVR2Pyy72BpeVkWEfj+mFmwHriTDzLYMk2LC9ridZehAiEAoWH+LUnsOAYD4Bmey2k4w+OjpIDJAByplI69+2bhNL8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55124,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgejfrCRA9TVsSAnZWagAAbW4P/0czYKVHakMLoGiEr0Aj\nSJtfOa6bbCv+C9Kf46g/sVTLflCByT9IIMNpa04K1beBqXEqD9nfNVOyX+vH\nIl+QTNB2OOr72oZ6VHPzaekRO7xZsz5zSpn5ysZMHZYkst7sa4mBeRH/5IsH\n4N9qnfBbnA55JvW9xv0Islgk6dgXg3hkmuZLK+JIgy1M4NSBOovalxXgNFMk\nY8vBpPQpGBvxk4hsmFjemIOLGRhcVz0FcAvCd1p/hGOkrM0EhD5FhVdh91H8\nuFa3liF3G+pCdbT35fMkhwPpjOnDixuQVn2ZCjeZnyl9xXOnCndf8c1b+Wdh\nM+uW4riTidlPc1YQAk9rgXMxlPkfaN2VVa6a84RB1/ETkcY8rYrSRWJfAm6+\nmVIcsSB8uZuG6I39IgV65BLWYzdoF+r/v11228FNAd/PO+/byPdcbV+PbjS0\nx2OCl+e2zpQLxsde77x6oAnXojOVMxnvtxlJPN/pCERNQQ/DXNp8zAxoTxCV\nOrbuAS/j8QAmV0ChV+5+6d/S5ccE/jNxhf2Xx36DGLIt8la41ps8BSly+u2f\nw+JIgBOWo4VWI6hnBQKakE0sHEO/5KkAZxg1YjsqCxZ7rljfn8eYyCnYdm7y\nbjxnlxB3SHPsfq4yJJZE+iLD/Zhi1wLNCwNxR88yaVxfY7SLwmnI7rRTjBZo\nRWvP\r\n=1FDg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"303a470cab063a16b8976e6bd4c1368db8cd516f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.17","@balena/jellyfish-queue":"0.0.560","@balena/jellyfish-worker":"^4.0.81","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.193-renovate-non-major-303a470cab063a16b8976e6bd4c1368db8cd516f_1618622442586_0.2286806623215083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.193":{"name":"@balena/jellyfish-test-harness","version":"1.1.193","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.193","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04d0679e89266a218ff5467842a232b2ddc3e0e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.193.tgz","fileCount":17,"integrity":"sha512-Q2FoMcBxWlDZcKPOqQ8tysBMlpAJ4gpKiUa+RnuJZb6Um1/JjNach2PHAUcAM1Ow9NgxEryeCwS3p625M9DZMA==","signatures":[{"sig":"MEUCIQCF8E6QxpHNxgyRWKOBwToT7z2cUX3QxGSTVm9aVtux0wIgdnHCbI/YvH35o8jMelsWo1iTPZyY74LPTV8tfqYX4mw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55064,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgejihCRA9TVsSAnZWagAAC3EP/2lZlqvJ5z0xHUwl975e\nZlMcxUwTUfpoW23EzaA+75dhHtlx8ddI+cF5pfGEq1Kl/xiS6J08xS35CWBB\naLV5CO7vJgn5kIT8mdRjnOp+xovCANoXtXAGOn/piLVXOEj3X/XOwxUmOG54\n7XWKKK3+sZAy3SFfAJs0SIGPTABEZ5+xGL8iUjJmZ5nNM3bhdFOne1hBsmHG\nmPoE6DZEhlYDwHMN2Ba5Me/gJDRZR7dd+4o13hr5UTbT5HsbPMNGdpDiH1rZ\nJpj4ENi/JO2sjsnpwioqk3QNLuGSXHlsEw7DvlgMdETntVqBcmPgXMrBJsGK\nyHJAX6K1HBRRL0rtLSPMa79bh9vdYDWJoHKENE2T3+EaCf6X/L/6Od2ng+6z\naSYOiGUFBxiGln9jeUl6Ae2QoPoupKWVPEIIjhtThqpWHcEZP3DaYaJ2r2D9\n/fiy788iqJupQfY/LXb4t/tBF2r+DUHLdzrRRjoip8YbwvPmbhY/lRNveEMA\n73b4FJgrX6NQpwMCD09VylON/E5GZD+rVMfkE4BhMr7EjndOfQZtvg9pil2i\nLj65faHNqTRfxXEsPkKOQbbIv3AU3x4HHxDFSnz9qF0mwu8j4L2fWejfyqYb\nu4mQdzao2M0a8dSqKwKBeHSY1amOirXIF1GmTyAtmkTnvCVhgULughIAN89C\nGrwi\r\n=Kluh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e8e841da21d9faa5bcca0a9044538f5b356188e7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.17","@balena/jellyfish-queue":"0.0.560","@balena/jellyfish-worker":"^4.0.81","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.193_1618622625284_0.5981832300450192","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-75f4d67cfdbe006e623e49061b7685121534b72e":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-75f4d67cfdbe006e623e49061b7685121534b72e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-75f4d67cfdbe006e623e49061b7685121534b72e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e85f19945243659b0632727a0fba354c3fd5678","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-75f4d67cfdbe006e623e49061b7685121534b72e.tgz","fileCount":24,"integrity":"sha512-0SMUqq/ME/VgW/i9pBSCDBVpB+lLouIAaUOu018YB44QzdZDOpL91kN9dwYOU2gAZW9a3iwX+vWIYGiB3IwJ5A==","signatures":[{"sig":"MEUCIAtzfInHrJ4D19nsUt9atGqbVMHEXwSCyaR65HxeHtuiAiEAgHtrC+OK3SyB5KFPFYm+AI1aVF7LsirEoNTnXGyx+y0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":78777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgekKSCRA9TVsSAnZWagAAKa8P/19w7bMHsr8shX32t6v0\nHKnCgalVRli6r36zw86u49VXZYaLk58vZWkzf8W/Ipjo1PDhkjVTiLYZWP3v\nwg9pZFnofAS2VypXKFkSQk1yysdwTlwIiqCdUK/aKMGuxVDW7oiaFRGNABK5\n5R9Tc3w2mtGl5FJ2csk6zaJRrneZ+1rny2/W7ZDHBeynnOtcIytADJ577MeA\nv/mh3TCc+wJ6AvlV9woAtl5Jgn1K+zxkGZjbFlW+T04bTHaKMo0VGYt9W6vx\n3rpKFlv3AFSzKgzKIMKQL85k9icRr/AHMqgfDe5SQ1UbZcNKOzvl5FQ/CyhM\nQK45ES2QW/fatGfVIZ3g9qaMYrN2R8EI1t8tNOcRGVZuHF71W+Ss0YpWF+kS\nz+DWpXsw1z8HBT3qnvEq0mkq3pVEpSeJXzcJLErfcjN/eOgsvEUmd+JDDDmK\n6VerrpbwmNwVXAsIxUHZ04SU4BLKjcfn/ckooQPBUQxUmTHwrPzaahXqLlZY\n2NM2YIXKRjrHTSwyX9lrczFwCNhRTxMq6D3zxEnH3O1AMO7NvaHWPE0dyAEx\nLeyW213zdzlLRleaoprVlUCujUUMFUB1mvhZq3H0/Ji6DyPJWQddevazZ03w\n5a+EBGz0cOrvU1LP6qdAWg/Ou6TwYzQSp4qyz6g6ygwitarlssSARGcHgflj\nsxM0\r\n=/uwS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"75f4d67cfdbe006e623e49061b7685121534b72e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.83","@balena/jellyfish-sync":"^5.2.99","@balena/jellyfish-queue":"0.0.554","@balena/jellyfish-worker":"^4.0.77","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-75f4d67cfdbe006e623e49061b7685121534b72e_1618625170358_0.7322674420517092","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.194-renovate-non-major-b54bb97387deecb7d2a792e6b114e294e87ad830":{"name":"@balena/jellyfish-test-harness","version":"1.1.194-renovate-non-major-b54bb97387deecb7d2a792e6b114e294e87ad830","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.194-renovate-non-major-b54bb97387deecb7d2a792e6b114e294e87ad830","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33c017d90fe90ee7d2dd75b449a5ecbe95a0f37c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.194-renovate-non-major-b54bb97387deecb7d2a792e6b114e294e87ad830.tgz","fileCount":17,"integrity":"sha512-P7KnM1btQPMA907HfAPCTmO8cSUoTMxZxq6uLgzwRuF+vaJezYvuVfZvQiqD4e1v+nOH6aNQ3DDSE6o6R7TVxg==","signatures":[{"sig":"MEYCIQC87OsQVAH5nHB1tNOyBh8q0QV5Y1Npm261xJ3i0mZvLQIhAMNvKaIsA8HONrqJoyjrpI4qVVfYoq/mzjZhcCtoET+Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgel+eCRA9TVsSAnZWagAAujYQAIGZ0acKfUP1He2MjSnf\n8PRv80H5JzxSMiOGiopvEd6pZ/bFGekyWvzhF7zuuA4MkvUHOhFjj+K5rydc\n+9JrLWIDU7SXx9intsGRKK5IB5RysXRnlp3BH2Ync+irTegQcjEGEZz+/7DK\niHBj71u5feCv9zB9jWWGpUGQzH1n8rYJ03SApwy1E9nOcnFiDfd6Gw+gy25l\nUqdhTR2fEoe5PlpAPkRW/oiCRGvdxUDEwsNbAGDz/hqraYL5XoowBDsCjPLW\nPSGX+kbOlLvTv/rrkzLYqpwdsU249Qtk+NPZGJuw6crpFyGFqJJbiQbwXKZk\ni9qsJYdgatYSEC/IYWybXDlxd/LKxjI5lLmy5oFwJqDitqtrjOrv6B16oDAB\n7t/S5jQieABKFq+orYyZgHI2wjIzDKyv9JOIt5YZjdDbhC5mJqe6I6+ticbI\nHvRAllWxXBGYYEBtqQqQH1YT/fnA6pWqK/Dc27qWJTZMrUIxKKjaUDHLo58q\nfaswbq0UJxIfaMPdjQuBNXhD7wpgcTJvqoubRDAmOH598y5I4aNvAXI8FlIS\ndQz9Hjdr5uYTKDebgP8T82gecuG0T4Ex4Z8HjOX4fCFlGD74GjnG8yymdjD3\nQzye51xgC/utq773cWo7+WFmdm/v2ajmrw6WJLh8liVFcEk8YTJCQ1A7wNyg\n3ZYM\r\n=W9qa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b54bb97387deecb7d2a792e6b114e294e87ad830","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.18","@balena/jellyfish-queue":"0.0.560","@balena/jellyfish-worker":"^4.0.82","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.194-renovate-non-major-b54bb97387deecb7d2a792e6b114e294e87ad830_1618632605843_0.8866030899737121","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.194":{"name":"@balena/jellyfish-test-harness","version":"1.1.194","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.194","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15c1c3b5d89469db115b2fe4c9d9f8696e23aec7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.194.tgz","fileCount":17,"integrity":"sha512-xDzBGFbu2NN9iB53a085RMHiQxB0X+ueAXvPTAtdLjixZfpnU6icK+xkYbysvS/ofYGvN6SU77RaudpIoRQElg==","signatures":[{"sig":"MEYCIQCcxQet2ZyR+gGnBYXC0ywzgpodONY0DmvluewfkhDNCgIhAMpd7T8jpTtZ74fXOHJ+075QZVztTVHnpyVGDaGieZcA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55134,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgemBWCRA9TVsSAnZWagAAhs0P/0LfQ9LCHa1RyKt0w9Nl\nWHBZlSnC8ChQQqpgSGwXL8U4a0oSBB4l9abHJPa+xriUcp+sB0BO+VoJpWEl\nu3l4kWBkxh2BsVn2pLGLoReomDzHELEQLxIZeuRNbpgFEcyVjYiPpl5lwGYT\nmYhGPrkrYcqH5LNyjrAEXCRUEqRLOVtTfifjf+p7IeyQz3Y1oWXAhz90n4LL\npCd6cJO+Y1hWbxBORJLCW/D/vX5n8+nDJ5n04eWxRlQQoYYqC6095gh71NOh\nJj4SaZOluzcv3q/0chipL5djjwkZXSqhzu8amrVCIHHtRbmHqrs2YaXpnbJm\nBWJYj3VOtiruWJ12ZZ924L86jFuQFeX6H+xMEB793c9bQ/4E51yoQyxP0n+x\nstVzC1DC9QnBIvD79eyjBZa0w5JrTAW1klGVBgxUig6oZj2avIuLi0S93w/B\njKmtj2Pyru2wNueUorsZGUMNFYsRlpEXBl16HKer3QX0W9DFgDYRqd7RgaQg\nz0TXRZ6YkuNDOPggBuvuZCHr7awqpyiS3xjtXGc+uNn8n46X/aNWjmdQN37Y\n6/jrbTV8XvoCUdLqg23rMsGR3BpSPLtFpchb5M1Oiru5UhjhYzBK17ZixTYA\nR30O9t/+LKdMgdk6gvmXJX5nOWls39ov8Mf0Myfaq50HvuIHjpwsRl4oVfqT\nHphn\r\n=U33+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25a4b2af57698470a6a5253e982ce210b80fa959","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.18","@balena/jellyfish-queue":"0.0.560","@balena/jellyfish-worker":"^4.0.82","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.194_1618632789901_0.9916642452283444","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-a67e5ead1a4abf916d707acef4152f382efff489":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-a67e5ead1a4abf916d707acef4152f382efff489","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-a67e5ead1a4abf916d707acef4152f382efff489","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f0db900a3e8f582c49a99f2adcca91e68af0e466","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-a67e5ead1a4abf916d707acef4152f382efff489.tgz","fileCount":24,"integrity":"sha512-fhoEml7aXT4upTdLczeml4e5wR3gY4jxSldRnnV8ZNDoU29lAWh3pswxT1wB9PKMRYdwybIUovAKH+SvY+xb7Q==","signatures":[{"sig":"MEUCIQC3cTQ/P/oJSYtsA+N2DJ4eIbEPiMpLENHWFSrptKDmdAIgT59psDkhmMLLW/7zyuKFj2LzQDE7htd9FW9VyOwfUDg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79842,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgem02CRA9TVsSAnZWagAAHt8P/3mFOaVoXM/n0ZO9Q36o\nK5k6YU+slbYVfNLxx+HHzCvhUN6byVct7PSWZQbHCcP36g79WDZS4Ax3ddZQ\nSUt5FaQ69792zLG90Sx+UPSDWDxA30P3eVmNb7oFv42BdHGkiEePWqKeOtFm\ncnwaPgVfF5gnx77x58apbh8cpohjus6WYnwFbpnoxYXel0dMdL8Y8YiZPuMy\niYC2hpX1RduCo8NKjet3yTYit8gY8F2x9Men4sSjQ7Kpu1isULr9BMiLapUt\n2qYVV6tfOCIKH5YQ0eoWVHpyEfEAt8Uak/EaJoLmjIoQawaenLSeWhSRAtm/\nLsU1aL7mWlYCtzIub6Jy/nXK1DjhnuaDDmfdsZXPf1icBUHeSWYAjhW5J+3Q\n15M3mOjnW/ReH3k+aa4NPOPn2znBUJz9ZmEXNmrZh0od1CBY2cskCjhKRmwO\nfWOMBt5uCQ6DrksHTMzcC0uwXjlFp78SZFXxmI9gMvQ6ikAbibU2hv2Pq+z1\nKk+W2RLIq8ViPPcn2Thnr8GtPElnl8S7Wbf/AmUKTpj0Sxmj+ob1OZ83UEn6\np67o1tMuRG386cR/JZcHLhpixb1CTh/Ue4ejpWq6dnwmeVr5x6ngpDpKRmIW\nvZJLN1OvuOytnSZ7l6eksMcrf6DZe7xaeDR6GkaKSUooBuE/e8UwIArNy1He\nbKkM\r\n=SNa5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a67e5ead1a4abf916d707acef4152f382efff489","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.18","@balena/jellyfish-queue":"0.0.560","@balena/jellyfish-worker":"^4.0.82","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-a67e5ead1a4abf916d707acef4152f382efff489_1618636085892_0.014340742546117946","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-b4d6a0e56a6a74cf12c30184f8779f11916e7c2c":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-b4d6a0e56a6a74cf12c30184f8779f11916e7c2c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-b4d6a0e56a6a74cf12c30184f8779f11916e7c2c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15fac829f7f7489a33eabdcbfbceb908440dff27","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-b4d6a0e56a6a74cf12c30184f8779f11916e7c2c.tgz","fileCount":24,"integrity":"sha512-4XCBeLceMUuordev/mfthHEEE/uqulXyetbvWHostfTVTITP50wovc6s9MIorObZEgsvQdJlyUnkLdZqa69+Wg==","signatures":[{"sig":"MEUCIQCsCxNYBqaON322550wZopjlEWpIS9izEG41jVeDWNfNwIgUmNSRY/3Gru9MUoLaVzEpsxTVfhZO/cPUdtzgpJVXpw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":79881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgenNHCRA9TVsSAnZWagAAnLoP/2tjxadfUSO84FoPC1z5\nvKt5BImDbrNVqqKZh8HN6Z1Iv6SK0g4G2x4UgZwvU/h8GknnG5T/uQYXQbEI\njopw86l/hqMX7ovfmNzX4o+KEsEC21fGGso2EQ0UXURKpZBUoYs5NZ0FlWOG\n2wGnBxAUTvcog+wQUxnVMPkFfQxjEimP4ulqTNvZZtgg6dQ8u6sVQMC8HpDB\nA25y6mKf7xGQehbBpdqzmgpjW7fRUo15mMEEVVl1GHJ8l+9BtWkKFd11YiaF\n8uUwQev2k2FkDgfxV0XBwBRu3BC2CWYLOdbk8CcUrUUNPV82FCQFmoCaTj3n\nvPm41mIKNxrCLaj+kxiK/baoYTVscKJ+R4KRFVuci1J5+tvZt6uQ5oy36uMK\nNddqoKz0JadHQ6SuZmaxM9BFTHlSyvDGHDwSQe2nO4MwCv+TcgcfIYaFQXOo\n1xdm9VG7JX7FC0OF1Z7odkOY866Zcmpu6JvL0TeJfDHKNIRrbE6AKbIL0d+f\no7YZ3t/iHi5799WSN3J/GfbuOdpITMoI2R6zRCeetdNMnbublMjlbzorxuYd\n0q+qQDlda0LroQ4sHsHA5FKBQMTXxY2HIq7NDDf3JXNaLCnkM1J1KdqV4oZq\nR0ndO4En1CMmPZXl3FE7WLbGnw8ApuCJGgFW9FNwNNvC4/skwV6z4HW2Z6M3\n8i6Q\r\n=1sn6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b4d6a0e56a6a74cf12c30184f8779f11916e7c2c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.18","@balena/jellyfish-queue":"0.0.560","@balena/jellyfish-worker":"^4.0.82","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-b4d6a0e56a6a74cf12c30184f8779f11916e7c2c_1618637639023_0.2718985726881844","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.195-renovate-non-major-c31ad7082126472eebb5dd1dbece4fc4adeab13c":{"name":"@balena/jellyfish-test-harness","version":"1.1.195-renovate-non-major-c31ad7082126472eebb5dd1dbece4fc4adeab13c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.195-renovate-non-major-c31ad7082126472eebb5dd1dbece4fc4adeab13c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f0cb26cca45a9572294ede845cd0b6f37b66cbd7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.195-renovate-non-major-c31ad7082126472eebb5dd1dbece4fc4adeab13c.tgz","fileCount":17,"integrity":"sha512-zwzbtzQ6a2cvKuuTK81ws4w0kv/hpgQIi7xxVPY/G+svDTnbZnOXnauq+FX9hsYhXYNaq5zK2mjg/b65zgdjgQ==","signatures":[{"sig":"MEUCIQCRA6M0huCfLAVIzQVqzGN1+DtSO9WBE1G1P+/IC78ClgIgIUxBniUyb3GT2+iAloC/X3stB2GtVpO5W+Mat5MoR4o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgepaxCRA9TVsSAnZWagAA8Z8QAKFilGYZG36pZ3rOmAq5\nXJBG3ABqzVyWcNIcHdkuR/v1RXFdSz2qU0mP8ANZgax+SG3AdpkJTCJ60wfm\nDLh8wlKWKUb4SsChDGnzGXe5ILad1XUdgSIJBwWorj6UHtnzMujEgvp8DmOi\nc3PiGapHZS8iTMr/49rOFzsR80jCIEBS6w7Vlf2tPu2t4h7z04i38mMUGxFq\ngeJZPMomIsLUcxNVnXZROgth/pnCEqQVP3ItbkkM3zjzDAlbxE5UGsVCeVhh\n6aF7Q0acA9ExQi4wJI2wporBGsaOA8+L01EAGj1MlCqOPWDKoVpLZb2mK5Y/\nsgRhkKCsjFHBwGx6h3aI1TK1J+cZmu9TfJZLhXpkTbNxTJqrHKRVNXb0Bm9l\niR2cy4KVekhi72TyTua366wFYB1xWUOLfAla8Ad5cNexBUxOo0NFC5R8GzHI\nQALIFXEET1kQ2Hf69JzDMpUbM3Wu31ISoIWnkW+8+rcNAV29vC18ubqdGHi/\n0VbvkGlj7u+mulupvXpD7hSQCNRZfMFQpk5me7RH2l2Yub3M3i1lDqcNWTGJ\nm6MD/ReUk4wG4iEfuRXZPA/bCCn9SL7f2x/ug1LFvtJkKtGYImd95gIGtZer\nO83aFdDdq8V4DiK7X5jY7fUAl0jA6eS0faRGkotijd+bQelSMBUidhp9tRj6\nXtPq\r\n=OHKh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c31ad7082126472eebb5dd1dbece4fc4adeab13c","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.19","@balena/jellyfish-queue":"0.0.562","@balena/jellyfish-worker":"^4.0.83","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.195-renovate-non-major-c31ad7082126472eebb5dd1dbece4fc4adeab13c_1618646705063_0.8313052509870695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.195":{"name":"@balena/jellyfish-test-harness","version":"1.1.195","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.195","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2cea82aec9a9a33afd02190f1dac19f9b7d4e1bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.195.tgz","fileCount":17,"integrity":"sha512-/VhhxtE6hoVHJDlPdit9jPvw0Z9/ZcJ/smZYYlX0aTFxW6Z4Hg3CjxiSo9Q37CttxNINwawxYDtl1IIlVxCbDw==","signatures":[{"sig":"MEQCID+BgUWrgjeaa9q2/6V5v5vRsAhv5dpWZon22IdLgPdYAiAKYvKnJrDn7g3xCm2HkUOFx/9nUPV/i3+YrBviiPDIvQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55204,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgepdZCRA9TVsSAnZWagAACZYP/3K+loz91jHZ+jWBZ50C\n7D241FSSaELptlYYZWRraVNnbVM8RdsMqn5+a7mzsCDeABm53uFdLpjxQBrE\nbE4XyAYa/c7hzhH0SKI8D7p4rhvvgWiHdnQoOcY6Qew5QiMZcHte/HxGtyZ8\nKoEZ419AOJn7mjjIsysxxK2KQfcuSg9brXV1pQguifwtp3A0LrknM17fYtg9\n5VOvt6gtLXRDNQ3kgPuDzKiGcB8IZWF2U4DHjPt4VdNGlyJoQKcj5GePOlsS\nuyg+Qva7YO5ldiuWDil08glxUGPuD6tayx8IPcgXQ993sMb59UMqgmBAYPhQ\n1/tubNrPaqmNFBnzDEEl4SXFPO7BBaK6u19ycB8gQT+hQA/ETnWPWEIqnlWp\nP/FNQuCx1iUBfNbufm2UlqJqQt4+ssqubAVV1jyE+ehgbLhn2fpyHTwaVpSV\noiv8Q5scTAQOde8mY0eqzsVFLzduCM37WqmNjy0+VSczteTly1nD3FV4KoUU\nKogJgl011hMqC0GkCBjMDnUBT6IAQy926ZOmmyhACndGuFwwpxnLZAntV993\nPV1+0FnV3wF5yvkaYw+pmd+6FkhiEqVzRQIKSasv+qX7Gi5mBwluQEkea3ow\nF10v5luoZx2aCDLoKu6aknI2TBPAjhFcCBXDa+FlmbElu1492iUOIwtI37Oj\n2g0E\r\n=ft44\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"943c7d84f92e5646712b026208761bb6dcac9b59","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.19","@balena/jellyfish-queue":"0.0.562","@balena/jellyfish-worker":"^4.0.83","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.195_1618646872784_0.9332011290472857","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-4a73e25242ce47743423b64a27bc74d824acd889":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-4a73e25242ce47743423b64a27bc74d824acd889","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-4a73e25242ce47743423b64a27bc74d824acd889","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f7d4f49b192abba2635933b2e20d76a8fca8b69","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-4a73e25242ce47743423b64a27bc74d824acd889.tgz","fileCount":24,"integrity":"sha512-iWLzpzDlFq37tImIi+KcneSitAq7DEUcY4JGTqR4KdC41YzpBfAMSRwt5nvz1m1oWcwGX/FGgIpjJE1s5M6Ahw==","signatures":[{"sig":"MEUCIG5vezgpJ6RsImY6iAmca1ZsaqdJDynLgeuZe33OpHOgAiEA0r9KND9YWpFUn8puA5wyZ6YhLoZSmG0aONUMQcNlyMk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":81698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeqfMCRA9TVsSAnZWagAAGNsQAJQUx/vQs15rsIZZbePN\nD5sfwQuCJmCaZ3mN7+hbHrwFJYsDQtEb+kCtcW9Qh7bwerkmuEzhCt4/ls/d\nA3oI5o/iFBU7B+7RC56gB8K70BeenSVAJXP25bfQZqagBxQWOWXhQOSX1jeO\nKGw4Wa2PsEYVs3NPjumrMXP1YSbqJlkAgRheunPgg8R/TjDmL8litJZCbQJE\nTCt9tYxUlG8BifgG0zGPWCyMyp+9soJRFzy/onVrZ0NbgY4USFIwCvm/SRz7\n/P48iv24ggIna8gr7QcsRa78Ol+9lEh9JZBwS2j8LbPSxj0C1TfDjLivcyAL\nLxRPPWXPAM97nA678cK2Xm2Wdh5jt1gJCrbrWHFQii6RkpPWyE8APrwyC50R\nYnLoREoTXu6DBQV3gle2e7UcNNCua1ikYjfVK1ZQie6tNJOhUvYEcUnn7Viy\nBL1YXS8BIiPGq7xghOetofgVSvtIBYPBcFreCcw8W4+whqWPvoRg8M66T17L\nu/Cvq9W2gPv0R7w/ykcBYyBtGneTI3E8T6ECneNk5W9sqQMRq+q5j+V8dU6M\nHRsl94dONrM0IjlyHWbbhUu2RNiUv8V3GRg5r8PHPAARS6Jwq7H20d4p5ZLO\ntepGsVNzSTnlY61YuVn41gRfCcsOfu+EGi8NV5ghxq9TigDu+gpX7hCWmKI0\nq0cu\r\n=kUeV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4a73e25242ce47743423b64a27bc74d824acd889","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.19","@balena/jellyfish-queue":"0.0.562","@balena/jellyfish-worker":"^4.0.83","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-4a73e25242ce47743423b64a27bc74d824acd889_1618651084298_0.3593215462492625","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.196-renovate-non-major-506bf931379be771f2da1f221f01b15d97d9b1b8":{"name":"@balena/jellyfish-test-harness","version":"1.1.196-renovate-non-major-506bf931379be771f2da1f221f01b15d97d9b1b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.196-renovate-non-major-506bf931379be771f2da1f221f01b15d97d9b1b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5472e11208127ab02250ece0e1ca34217bd27ca3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.196-renovate-non-major-506bf931379be771f2da1f221f01b15d97d9b1b8.tgz","fileCount":17,"integrity":"sha512-0X1J2ZFB0IeGpF+cGVM1kePFtClJeJJ2VHBp7NSpFezJAq0LjQfA9pK6PGc2AkcUOz+uZzFKy5gLRNAORIXGng==","signatures":[{"sig":"MEUCIQDBao6QtSTpOJxHQUI31TX6u2MmoraMeZ5z/rkJl/v0ggIgZ2WJeF32HuhijYlOdy2mhQ1wjDqVzfL8RukW9CPflSU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55371,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeq1kCRA9TVsSAnZWagAAcjgP/jYmqUe+ZkbKTJMwOHlv\nizBpDUnTCEHUYh+/C/sQHr71XX8NmyBI2wMOGdgk/CtFFJ6eW7O2hYUP2wwK\naTj5X7DD2+HajvJCbYLBJ1pr10lXzavB7NsPE74SxWLjeZII7uuP/jUy2Nu+\nQ0AjwtB1BJEUDEhwMDTb6qGSOuGu2fUyJCZYw3a1XmY5fgN3ZlnuvMAye48W\nXTv1ZiJi6oabHZbIC4RLhPShRE+GtjxxyG+JyeDD7gCgbUjJHqJFOIwxXGg/\n43/5Wxh1NlZbnXm6HqraPEGe85Sh7Pwu3oEbdItl14xP026LmU+KLkglXju5\nEe5XbU+UgKMNMfF3C8QR39D/BcIBnSjS4GOudXcNgN2rBga6EQD5ALWNBeid\nVIdlckcJUh4wWAK2MZ/22nm5tI66xMp5oS8p13JiTqNKIo56/TkXisHDz19F\n1zzHgm2o2xlZfwbvNIDiB6FMHyi/jzMMZDNVlJMkSzQbXHZbXm+odH9cGK4T\nXO5Q/gQtHrde6j7f1N3PXwtjUC3yBVmYjxDgY63RNNYtzvJhK/k5NoxfoB0H\nicmNk5bY9sOdeLGCs8Cbt6bC7t7rSuX4hclLW4Uw6h5CgDv4E7ZnEDFGwbvU\nR02nsCm32m8+ceieYEWRWBXRrBFqAsuqHab9TVwhCZhOtSKHgvQLXZavAY0T\nDhIW\r\n=C54p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"506bf931379be771f2da1f221f01b15d97d9b1b8","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.19","@balena/jellyfish-queue":"0.0.562","@balena/jellyfish-worker":"^4.0.84","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.196-renovate-non-major-506bf931379be771f2da1f221f01b15d97d9b1b8_1618652515805_0.8219349180826399","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.196":{"name":"@balena/jellyfish-test-harness","version":"1.1.196","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.196","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b73d589d36235584912ec4d9f1f4f9410a77d8b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.196.tgz","fileCount":17,"integrity":"sha512-LAHBlqC/Foddkl0/OPm1uxi26SvYN23uC9ImsSyArMWdHuspeKiCCxtcWF/q/gxz0h/x4+kNCHNtL35eVPmgaA==","signatures":[{"sig":"MEUCIFDH6U1NuZqwR6E497QSxrpGy5zY3gInpMDV8/saeRi/AiEApKdydYAAKVMIpseySh5wxct4tV45AtB/gHCfCKPv6xU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55311,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeq5RCRA9TVsSAnZWagAA9poP/3jK9gWRq2QK0wvMcM2Z\nQc2ZdW43EZn8MuXBkqgnS5gTKfLSAM+nHN3yW6VdEfK+tbNpdkOE9HeyJGrC\nzRziJtSG8lfezBxh63EQG+QgRsZjLuYFkLC1r0Y/ZnIMaw4dH3Fil9Gm0pM4\nYfZGN3zb9A+gTB6XCJ0s7uRxvPKCYQ3fcZ5v7zjVvguB2om/9TnDxDX+iEj5\nL65fPfgnPSbP2ewBSDJbnamWflKr5wqqBQp/WXjjxX6pAfoso+wFWSAHzWny\nHn4tmLGSBvGRp8ogS6I0G6/1Iw8sKOz5F55QmYJ1bIogJkhKk2TDXDOUgLTf\nKELbOzQuUQOuD/B82eLXuWkypHF4JbD1lSQsUWbqRRG3QtL3oROq4mnSvpg0\nAaFud9s66rbSslps1MjPf72ms+QnoiR84rgr2fRdIaL2wcSRgby+fYtRmZow\n6mn6LrADI7zujHgnhEmMH8ksnu41d2SjPtZoGZGc8jXDjEd2K6Z+vewQVLHR\nF6YbzMUD8E4vO0DZvkGYAZp7YHWFqeTZ3W7M7afdtiuDBKB48g1aPZv2rteX\nhksOL/E0ffqGkywgkHD168o25D3zYp+SbYFDPmmmfxMP7IashbUVumkuaGVv\nUYBUwrGwujzIgtuoOyr1maFnagm4sWumjMUvZvVGnJzqd13uozA9sTHO8O4V\nd1wR\r\n=GFaX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a23d768dc8887c27fb534bc440fde896d22370d","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.19","@balena/jellyfish-queue":"0.0.562","@balena/jellyfish-worker":"^4.0.84","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.196_1618652753246_0.9324587593460378","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-444f12a0850948b84af786f524f842862ab1ca7c":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-444f12a0850948b84af786f524f842862ab1ca7c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-444f12a0850948b84af786f524f842862ab1ca7c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5221ddedd80e7ff729fe12bb9b480c39e3d7c6ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-444f12a0850948b84af786f524f842862ab1ca7c.tgz","fileCount":24,"integrity":"sha512-93n3ranwUe7VfZiHCw6AeXYEM6jhLX6e6qOHGCLDr7WjuiRjp72SS1adVQfsbL/5Xl1mDSMBIrHM2j920pKCcQ==","signatures":[{"sig":"MEUCIQDkF5RbfJfZtiIlvc6Zj+9ySkrfSa6s+/A1rhUVlD3fKAIgI76JsyPbUc/G+pnxFKuzcTTCSdeXQ6OULwHC1m8jXnU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":82530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgerEfCRA9TVsSAnZWagAAvAkP/2gwOOpkmHveDA+TWW8G\nZYG4UT27Y3tsfVkqdo/EwNpVhtssbcBc94gOUYfiGTkei3+Zb9VArhPrxyH0\nruJQVwzdO9LhiatUX9X1ylTn7Toka6FOctAc+fWbnSAXhM8zQNerecthBq0x\nFFK/sPH4MHZhBXl5aNw853cMHXKj8j9TcsgE99r42GpZu/u4BnADTHTSxmgV\nMfC/+I0UaOFEYDEt437x9s3vsbkqDL3XfGZYfvzUk4hBFpRD+f5sZ1p3iCl6\n+xjZPpq1MCqAh0Ey/ibUN78QUhQMzaQ+7Yi0ItlTEenivGTraIl5I/5HJI3G\nRGtaxIlsfMhPbdvNLvn0KXm+AwdJbr/VK8ks+qpB6VH0FIdGLGgRZ5OaN23y\n6P60TaT73e5r2UtlfKah2dr2dysz0b2kT4PixNqRsNgo9Gy9rJky5pllbkQc\nNWpPZLIwdbu1YmxhCpNH2zWdtOv251YRlrL+Yj8njLhzCNYb6fa8BC66dtJL\nqU//CNJ+14OmsMtzOmY6jWRfJclK9iNys7JSGVExVXlxR9lflztVUE/JZs9A\nOEbxZ0PWCSBfSnhwUhkPc57jHX9JtpIqMYoHNKHdeVG84LrszqSNRIZWZ009\noAAgYYY/PDOztot76bY7GGDa+1Mh+01qLmKItIFREcWl1SbF2FxX4roZlTFg\nfb8P\r\n=K0Tc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"444f12a0850948b84af786f524f842862ab1ca7c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.19","@balena/jellyfish-queue":"0.0.562","@balena/jellyfish-worker":"^4.0.83","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-444f12a0850948b84af786f524f842862ab1ca7c_1618653471184_0.9666923723539127","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.197-renovate-non-major-8cc0d7f3950fa0bf008525ff9cfb35339969ac8e":{"name":"@balena/jellyfish-test-harness","version":"1.1.197-renovate-non-major-8cc0d7f3950fa0bf008525ff9cfb35339969ac8e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.197-renovate-non-major-8cc0d7f3950fa0bf008525ff9cfb35339969ac8e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e45f8ec9392a659d21f887d57cf35da73b05527","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.197-renovate-non-major-8cc0d7f3950fa0bf008525ff9cfb35339969ac8e.tgz","fileCount":17,"integrity":"sha512-bF7LUMMwqmqo7xCazNaPmAsG/WHDYHxxGKDqqQKdkF4IwjjHCpOjkCnw1qFpMUbza86boeCaOwmL2Z37D+yFgQ==","signatures":[{"sig":"MEUCIQCoU6jA6JjUOhT8oiKzrr2mAhqzJ05RWXNLvOAyWeGcIAIgSG/vl9aao4PZniehz8+GEq97B3O79bFoLMKL4W0m4rc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgesWyCRA9TVsSAnZWagAA1zwP/1DowL4B1UkzIK2xrwdH\nc4RUvrq8kTIt/bIWAJnGBneNqEqH2gAlpGLCM2oGL2/TLCOzvOXWvFvzVzWV\na3Q+k6Z20BMOdmzkXtdA3Ivq+YOHfC9dNm4qeTiQeGGms1uPzvkTSyQPdFLt\nonJk5Zjdnn+pnmmKfnFGVtTJxEsOScYZWD67PNBYIiJzX9LouGrhcuMrExVN\nFcT2ILFdWfEC4+5JeL7bpBHR3MN/N4a3PzaiWpurRS2A9AsD1nsnR2FWCO21\nwt+q/bxaOWw5PSdry/KPyKd/KZ3GpB3liMrEQ/exrf7vTfLb80WyINXVq9ya\nrW4tm0onZZ25OStjVXIBy1F7NpothCiUpTGfLuQgA7cfq5cTt0L6Vmj0wmZf\nDTxmMMq2THrqhFUwSWyw0HefHLIGHRQwMrn7KNJVg1rSi6zMUYRmFRAVBi4t\nS8GjSoFz/ZWgUDpW5I84jxqkQjcvsIbm46U/40U4+MoJEaP9I1xgI1TGz0h1\nBHdGofuJN+JyM/cnfNz0cvVb7nUyV7xzdRnVENIxENNhVpKsgHBK1NZQ65cK\nG4X5DOQUL6Q1I7NNrmASzorLhs5RoAecHErCuhV0DIiCb8aHQgddRuz8fYIR\nOxdi/+PoA990yOt2xmZIUpxHwMDW0Wn/Uq/b1ev6roV/nnrTa4xmGrHuF2ak\nV9QJ\r\n=NZ2v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8cc0d7f3950fa0bf008525ff9cfb35339969ac8e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.563","@balena/jellyfish-worker":"^4.0.85","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.197-renovate-non-major-8cc0d7f3950fa0bf008525ff9cfb35339969ac8e_1618658738338_0.31049586547106034","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.197-renovate-non-major-b2d55fa8dc46f5ebbc4416007230b392487e8d63":{"name":"@balena/jellyfish-test-harness","version":"1.1.197-renovate-non-major-b2d55fa8dc46f5ebbc4416007230b392487e8d63","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.197-renovate-non-major-b2d55fa8dc46f5ebbc4416007230b392487e8d63","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"784050f7e0389a7870fb5f0df3c3c3067fd4931f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.197-renovate-non-major-b2d55fa8dc46f5ebbc4416007230b392487e8d63.tgz","fileCount":17,"integrity":"sha512-EbBhsy1BsjS6TuNFcoDI8UPIFD1USy+HbxroN5z/2Zd/l5y692WyUmEYKLGozUJVGQ0H5jS4Sz53tlQk9y6+YQ==","signatures":[{"sig":"MEUCIG9YbIBVAVuR00tguoy5ccc1+/OidARUPCBdsjuA6ACtAiEAm9z8hT+cWtUKJ4P9JyPuoKGJLHTdjQaaxk/Ze956aUk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgesbJCRA9TVsSAnZWagAAIUQQAIlgsK4ZOH9hwP+ttdwP\nRRL1U2zTRDUIH3BiIRmFMHK+oJz0JklBfxvN+pMxSJV3WCxxVCPlLcTMmGvm\nllLA6pNnkaZIGljcEqknylUELBTrYNt4vDDof6RSQv/UMEdII8AKgINdxEpq\nkyeKQ+nBu0bgFgrqGtsLpKcLSB7K0LV6f0ooTabSYoT3hNpFAcRgVDU/JBf7\nAQEVR21AR7MHI+43ANNLMi+qW+/KusRhnm6EeW7SMrJXYdBydl9rcza+9gVH\n+nDK6F27AOO8s58GogNC4RbwPBerQ8emKMremxltACmIJtw0fiKTqH/3VvRL\nPVae+rZEyM3ijc85NWDb3vIrV5PiMrAHjcYT7LwmDqtiA4hSI+9WUtf5qXhs\nPtirRuRSLmrTdKS5COo/tOhbuc4fNxL3WuMu+wyGpCBx30xBIxxCgOUxjDB0\ndMiYJa+hEm3YQTcACAOVkwoQlHn9P6SFBOApLn/Z+3Nt/6Oj9nssNaro1rwh\nyJqDF1IGy8KdWZSnw9zna76Nd6XNkOGJSTkGUuFxRGRGd06z6moungZ1YhxC\naLBfgaYeiY3svkrKdE/YcrlttjlJTw+jD9PubbK2SH5IXXXL+LPdd+7iA/PO\nmkRJ+Pgqyr8C0Q0jojdzfChz8f3n5XzBq3NZ2sXFkoQ51CRKD3kwdpYu6nZM\nAOUM\r\n=CFZK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b2d55fa8dc46f5ebbc4416007230b392487e8d63","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.564","@balena/jellyfish-worker":"^4.0.85","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.197-renovate-non-major-b2d55fa8dc46f5ebbc4416007230b392487e8d63_1618659016820_0.7781842602991094","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.197":{"name":"@balena/jellyfish-test-harness","version":"1.1.197","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.197","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"163f66164b31302b81c3f074ac8e582925aef8a5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.197.tgz","fileCount":17,"integrity":"sha512-4SIPcAbIiSQce8b/yF8juAHo8VcA8GQKWqn5owtHZg4VV8AhqC0GKO5hJPV4ctRK2iyaOwcu6T2MEy3F+x7qWA==","signatures":[{"sig":"MEYCIQC/qedKDcf8XG0lrHy8ZNpA7Y7bAUuHffXFMnEJX69aPQIhAIwByZEiaCY9RV4r3H97U3fKDmy/n5Le5n0NifipavjQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55381,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgesd/CRA9TVsSAnZWagAA4yAP/0JxYW/8XICCAaHIIG/z\nkRz3mmEoYUtvEIsYsJMZsWku6DxBL3qnYih47O8SMWlCTeyfxUKOnHT1tNMc\n6wCUNMeC1tq3QZFlvPgg5j/RISztkXnv8deNBC/3pgr5XDcBeJMjM9G97w+W\nSBEt1aBRg23qMJ0JQytdAGMe6qaOhFhbWxoCl5L2z/As5D5ZdgbTlOsU6qtE\nTwGskyuP8uugWkaoKooOH2unNQLWJEwWDzqQQLSHroCy1rdjUj/3/6+6c0xW\nBIs+CWcUZujOhQHBRweFYZjmnE+jF64AofWB0+qZc8xcd4CEJVkhYmF4XcIg\nyECSX79M6WwB7Q15daF5c7XvlDwMLCgJvQNrN7gCwFVve+bGEZZQ67YsG+0G\nV+gGZ9RqV3rgTcGgYo0Z1o3QdHdlb875xMFiXaY1OMj9Ckth7P8kwh4x2b3U\nUaBC4oRQo0XZOGWWKj5E0k7nwiEMNAVKcrDxdc7lrZyx1aM+kmxJHxocjK4k\nJoQPVnCyKXzQNk0pdxqe2sn9MOdKPqCUw1drLS8VnyZbWs7Yq0ZMmxnMNXFx\nCzwDUVPz632iE2SGIXbTZfaWe4mjcCP1fpet9hTqQIz1REAmo2aoH0US79z4\nMI1B7WvUnSSMKiS7WAuaY69Y4kfTMKwxttAeTmSZtktOyup8SsMmu0+LQMB9\n4vAb\r\n=WwN+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e7013db428ec221493bd46b44baac1617eda2d46","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.564","@balena/jellyfish-worker":"^4.0.85","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.197_1618659198726_0.46618097514427004","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-aacaa37abd0feb308128e54d2e2402fe422b66b3":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-aacaa37abd0feb308128e54d2e2402fe422b66b3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-aacaa37abd0feb308128e54d2e2402fe422b66b3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97f839447f0a1c4dce984a9e5e365a8d168c3ec7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-aacaa37abd0feb308128e54d2e2402fe422b66b3.tgz","fileCount":24,"integrity":"sha512-W4+jfPBg6NBRe2uIiJX7rK9ZGQO7OlV7+KEDbAV1MiZA83YPxWL2XCxPVztAeiV9MDwy3p/Bfsl5HO34Ph7HfQ==","signatures":[{"sig":"MEYCIQCnMK1v2btb24bXOThNbI4ypnxNvR5DNZC6ae4XuGBdjgIhANDv8JFiQ8RD3sh9bAcnD0bv4uPPmuf8wTwex9gxkExv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":82707,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeteGCRA9TVsSAnZWagAAqFcP/ii6fDIdzCKeibjLibk2\neMAST9qW16ukZItev/Z9DVkmRsiMk+L03EN1F6cdAe++PwarXhQwOnBpVERL\nLBiaFTyQ7Xh42vkP9vmMx6gz/SU1tzDpELQvXOBrKxUETovy7pkqzjz2ChnD\naC1E4cDsBejdPKkE8ezVQ27olHeg9XtL8rqOVoU3KZ7+5sze/LZMAFFOSmbv\nqy9SbD3JJrAhOaOfmf9Q1JTS13PTb0YkxVq0gPoOiHV3Xl+SsEC9iLBLoZJM\nTz9GfSdvexc4+EDvVXBm81V6DvwLZ5ddbX9sNSFTUNOIHu6s3o3dHkGTXc5+\nuJxIz0YYp8ARnelfe4MeOTFG23BEU/RhaC+TcXrcEVwBVDGKPxU711mJD6kx\nSrAWEGNWG0vupbkD6gaRtt9luP+gfpcxlyOBo3Ah+qcyMPLL9F25YkYSCOjQ\nAwPZ7/UeHZjkmwRHSjI2GF3tt/SxUrcTkSzmDbhtIfv1SsgCszacP77t8Xk7\nhT67vozz5srQEf3zmGuiu7VUe2P5dCCmtqT6l3awU8ukDaciTjnnUn0uVocf\nEbXbHFNPYG+KOPOl9jjnpW6bCAw6JHztqAEXQUTMAfdCnqBt15Unt7+/UZQo\nWIl0HIEgWPqckzJs4mIRLPtb0uojRWZ1Mj5gfUWfxIPFyQy4ywj8qXqqhACU\nROhm\r\n=6JTT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aacaa37abd0feb308128e54d2e2402fe422b66b3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.90","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.564","@balena/jellyfish-worker":"^4.0.85","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-aacaa37abd0feb308128e54d2e2402fe422b66b3_1618663301572_0.8845951510862784","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.198-renovate-non-major-59e3e6355432685a2fdcfffec71671eaf3155f7b":{"name":"@balena/jellyfish-test-harness","version":"1.1.198-renovate-non-major-59e3e6355432685a2fdcfffec71671eaf3155f7b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.198-renovate-non-major-59e3e6355432685a2fdcfffec71671eaf3155f7b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"462622a55390a705399ec14f50c8c6a64ec552b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.198-renovate-non-major-59e3e6355432685a2fdcfffec71671eaf3155f7b.tgz","fileCount":17,"integrity":"sha512-LgvcckmtMCoc8Xf+g3Rw9HVh0RFw0tyAizC701qlbcrboZG+x0AhCQxt5xnBXtuDVzglsB2Zr+oTsodV29It5w==","signatures":[{"sig":"MEQCIAF983LdnAMJJuJBq+igoq4cvCXwO786kmcpn5uV8htOAiBw6ug4GKqt+PN4ncJzJ+i31J2RnDpUmbPMw6lYXj/pkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgevDjCRA9TVsSAnZWagAAfTQP/2eZFPrHWeOXSODGpQBv\n3IKKiiZfTm9QcKdaZF11w+NdiPk5u2AK9jk557cFh0XU0MMTwqswh9owydb5\n0534bm5/HEj0V0PK8qNnAl9iK/qDo2mO6QYyiUH6Aj8YgTSLABadpGbiBSIW\nfY3o7Y/eHg7NeSmm9WZbmWcp/6APHI9HSWFpuzMdw7hox1lvJ7sRFTzxtJ1b\nRZ8164Cvxunb24d6X3O+p1NkSGGNzW/xPkczt0jzrZDJYGPAP840cVNAuNfG\n6N3Pi8mz5+9WP3k1tqdsqca49rGoFkbd6Vc+iYcu85Z9C5pHjDM0bAKhbbMm\nXu+N+SvLpcuLpgnRIEWnczKok4yNVYpYIHWaR1nhAAr7g9Jz28urzLZ5vtac\nl9IMGjAbzoFMBDvABubyl8hbAozPql+gyx3cRxq3abJYgJgYPPa4+WR5UMJy\nbHd+MGprvO3csDSlYiVN9R/NxZBHp55bmLhx58bzqIArElwnPaiTxuKMZtxO\nobfUEb/uOgkKyYvn2kf1g7EabzQh+DBm3Bv/teyMa1zGB3f3bWy7JaJi8kk3\nXL/h9F6Td4KOy4y+18Uf/HNfSwCFe6/MiZwair2b2pQel1Ygjt9Y0dzEjkmM\n7AYwt4G+Nhy0sNtrLBYXjfQu8QFcVLdwQAOecS5cULJRwa7j1Kvk68nneR7h\n/rQM\r\n=Uzic\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"59e3e6355432685a2fdcfffec71671eaf3155f7b","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.92","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.565","@balena/jellyfish-worker":"^4.0.87","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.198-renovate-non-major-59e3e6355432685a2fdcfffec71671eaf3155f7b_1618669795229_0.08642417612999598","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.198":{"name":"@balena/jellyfish-test-harness","version":"1.1.198","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.198","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"196541e1cedaf08b60e12b972983c3a1bb9febad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.198.tgz","fileCount":17,"integrity":"sha512-JaSX2NSMiaA47gjTkfdNtrVLiJT9YtpiqvLgUX9B6IhIIzD5vFnWz4bihphaM0392U0uiDDP1J9FsznhdzZMJQ==","signatures":[{"sig":"MEUCIQCUyhobiIGPO4lImZ9OP7NNKLpr48+D4a1RY2UTrS0CmwIgGUqSCHMi692PpsnFAjmSzBsE+Qfho99cQfD70+SjXAY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55451,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgevHkCRA9TVsSAnZWagAAxCoP/imclw9u+asDYOlTu5jc\nGtqOWhC5Qn9jEckXGBJwS4oTsHR82uf4cmjnW1Tsevbp1reK/oAuMHAtyo7d\nJVdmUolbbZzhy+tvUu0zg9Uca4xsZrRVLrhaF/XEerahygSS+AtqdpgKh+UT\nVUnCCnUK5mdFE3zNU4saRz0PdttKLAR7oYfuxZYv0qz1IAJI8GFQMrfQigJG\nnAKKVdA+BaNS5CGXN0XJDVI+9q0rB1XK6lCFY/3o7YkA6GX8e4NZqiia+U+m\nrAhMKUI9iXrkwMxfBe0QRli4WQ2/UvXtAtrx9fvdw9o97yvt50jqTzcC5ELS\nwjDrpjb3Q2Kllq4z9QqjZ9zuTKwIRwiKANJgllYxH6J1DHadwowilmXiDvSB\nuu4qZEHwI2tQ3wkjcaKtNP8etWa3+RnMXV4/T0zJln2M80pXkbN5+kffMNZJ\nakQ30yNlb+kw+wvaFCmZnDbNVI0LtRzOq4ScURRo3/RtkMWnKNfUgyPBnk/3\nTQog+stJt+zPrb7QObZoSG5nJU8yg6MZ4XMobXix5JY2LAFUAabmE3b3S622\n3pItrxfznF92MUCL6RyAbb95JWchN1AaUbR3nSO8YX0rmV3/Ownmq87uyCDI\nYAKantpKKhNEXKQ+dHscjHlKaxasMtA8+eNqFbiavb1HFW0g3nrwMXtZW9g+\npXU1\r\n=nGOJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ef5caeebe32a20094e0aecf5c13fc13971863a44","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.92","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.565","@balena/jellyfish-worker":"^4.0.87","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.198_1618670051892_0.6275186368747205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.199-renovate-non-major-bf9ee64743bcfc75bf53410621f429251fcbf85f":{"name":"@balena/jellyfish-test-harness","version":"1.1.199-renovate-non-major-bf9ee64743bcfc75bf53410621f429251fcbf85f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.199-renovate-non-major-bf9ee64743bcfc75bf53410621f429251fcbf85f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5e3024f76bf9e4beb9488f0ff0df33408442676","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.199-renovate-non-major-bf9ee64743bcfc75bf53410621f429251fcbf85f.tgz","fileCount":17,"integrity":"sha512-fJmRaDQalW+L6u8BT12nyFw6sg3qEXk0sNf7fA143vGHSv9yGomplES6ictxdUiEWgqTASpcg98A0fUDDhA71Q==","signatures":[{"sig":"MEQCIAJH2NYn1p9dWAwr/fdzF5OzykNc0Y4517Ptbnv2wFLmAiAgeDe6ouwJ7ES0jp3zqMxI4Ox3/5YnfOs6rbHi4bhxtA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55618,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgewjfCRA9TVsSAnZWagAArSoP/Au+nCLq4aOhpETrIbEc\npsFJeRfjJmdy14uvC9rYyLLDr0F+ZP2DNIWxvMsfbwKNXFQg5jhFArhwetUG\nIG1ldjvLIv7cVptyu9HYJ2ATXFf0lVUoSIRwcKIrbvKGx5EzmJimeaFFaPpq\n1Jo6yqJg8qpQdo9XKAubHO7HmIRzqVS5JJtrHcvRZ/b44LFxTFtx4XoazR2g\nU/X8iNxO5XUx/tobXeVFEoeZyNZPt27qsj6ZC+F4b+/Ix7ZXfwYHDkCLCgd+\nLD+BF53m95P7PzvAkvMOWOFf40uSkOi5neNESSIo1KeoiVRKTH9BtQRmCj8F\neYRWhs4Jdd9W4dCqaCyd8K+rJMvzKwLBxRZ1CG6iZqTubh3mNs4fodzocu9x\n6PI82P28S19DDEBTbBJwqgdDrNkUcYvmwQp25GHmpEaehLnnRAwoplBDtyob\nT3hru4Mz8tLeKC9wxl/xENSif6R0rLKGJOt+ZDlqAMyFog9Ed9qjrL/VP/EY\nd/TGfExbB6uCgJ1/vtEuAJq+sIS7SD6Sm/UrTB3f0aXaDP7aEV9yC+AyOslk\n17OrMiZquytkINPgeyTt7GS6OZBg7lEd8Rb1uK7C/zZYZtGssgM2b9nF/Agp\ndDzgT0Pu/np/ua7vAH2abTmq4OLi4iPNnXenLL5o5TQnuf64kHlJjox6FzOi\nHS7r\r\n=Ar/x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bf9ee64743bcfc75bf53410621f429251fcbf85f","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.92","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.565","@balena/jellyfish-worker":"^4.0.88","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.199-renovate-non-major-bf9ee64743bcfc75bf53410621f429251fcbf85f_1618675934905_0.17583823587607972","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.199":{"name":"@balena/jellyfish-test-harness","version":"1.1.199","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.199","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c42c231f78f398a1511736342bbb0f01a5bbd3be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.199.tgz","fileCount":17,"integrity":"sha512-luMwNPbORmwAt+rf45bSd3jvlabszquQH8dR2ToNjIBApliNE45NC3NQIbGTIOCdwoAfACkSXwI701/0HnZyVw==","signatures":[{"sig":"MEUCIE0V/pq6AzjANzcp0v2zgAgwkY8d3l7y6ogxKJsokDm9AiEAsPFdUsE+8ZKqVY3dwI6dBAfp1YyfZUyncZmRyVsbSrM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgewmaCRA9TVsSAnZWagAABwUP/3cO5J0RI1MUPBn8Rj53\nNubqkjJIBUbWEI4feNTOLOaW86a4/pk6lMp4GiJL2bGCJeW6TW4sVFxGL9rz\ndRVOtU7jLtICf7Lg5FI+m5ji2FntYuFijs5zYoD02+ODH5L9nbwRwpC1Mrr3\n6ivc0VnV4AlNFamjeGjcdrDjK+sPGEnPBYFttwWie7G5C8Tfja8hGnfYVgPO\nEH/STVpodtsZYNHoGMegr9ycszOBT0BD2iMTQRUn8AhVd9TOCZtjb5EvSOZQ\nXyZw6/MDQlyNqt5TB4U2ZeSYPA5c9UtpUJQCBwOn5IbKE0tHPLdzH/b/odqo\nK6dTt3BR9t4p8f8F8bhWcpd5GYsvPUHymW/oHZioKm1j94l4jjxwkBCvcTOb\nYkTcWfoe0/ukvxi2FspGPRKfgfy2nwgFdd5plTDC4MKgwTs4ORxg7WL56c/s\n9r34fE29DBhXtfnmjxIX3lyPhfx4VT55os5O22GKKgNte8zMm0G8AY9rrQRv\nJrhpIG/nADK6gkR7O3ppPOhqbN/MYffGTa5BWrS2JtG4CnZ5m1bim4nLX9/f\nsbeaj1qsKUevv9woBtBxLlGZLiteBY8Fkfzz3ln5nh9hoL+gr3cLkUvYf7Fd\nfGm8wXJX3albl01NaozGWTyfjEiPVEKHnTE5SXjg/FUJ/nRNttkBNx2WmIKA\n7Va7\r\n=6Na6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ed18211c24d4bca438fa40997d9d9a83e2f17ec9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.92","@balena/jellyfish-sync":"^6.0.20","@balena/jellyfish-queue":"0.0.565","@balena/jellyfish-worker":"^4.0.88","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.199_1618676122316_0.6290934345306858","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.200-renovate-non-major-9b82ea9894ff811912210f64017897e1bbb90d90":{"name":"@balena/jellyfish-test-harness","version":"1.1.200-renovate-non-major-9b82ea9894ff811912210f64017897e1bbb90d90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.200-renovate-non-major-9b82ea9894ff811912210f64017897e1bbb90d90","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b3577eff1b7bb7e56bfbf7a41593a16603a74e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.200-renovate-non-major-9b82ea9894ff811912210f64017897e1bbb90d90.tgz","fileCount":17,"integrity":"sha512-GVRyTk7v7BYsmSgoVYnBAzQo6PdXBN5b39rpt8YTtglQp0jLXJ80bcqjYkr2aOxnt1VrDDMsiWQBM8K9CaUGDQ==","signatures":[{"sig":"MEQCIHLUUBY44x1DupdPYoobd1T5sza/QmwFF6nTSCKWRtpmAiBvUOwbDri3neQjf2D9cC79as22vsF9zXotSgt1jnFcSQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55688,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeyV0CRA9TVsSAnZWagAA2u4P/0TkCWGI/8QFI/NZWmjE\nh5VvQ69Ex7WM8F7cugNy7ZOIetgvklRY2wo4WANNjlxK5GSfUhonlNIqxjT3\nZO29spI8PJB4pUqIuPYTiqRuJd+TjEdv3hCRDLIJTLPQ/tVXCGL1VL4Tano/\npr5DuTVCcAvguhk8JQS18ahDUheaEU8NMlTXzg5gQvwjBUFPAsQKb4wCqgp4\nH13spWC0iT239iyxLGncjg8KtHmMR2wd99wMG2jB7Gw3PwmSzYD4Ua6ni3lj\nlJNuPWrNZQEWfzZtIbRRlV3YQQ0hnGFt34PZ8UbTBYYeBDz5Ys+k8j4UPJuc\nVe+AA5YF14X2PccUUz3iPw2qiOr4ASduA8PZkBuxDyIYgbfB2V7TKaBVE4Af\njNMKEQW2alWf9Jmti1zLLj5lqR7FyYHCIPzjsijkpL6gkOWWk/jreBrcAUIo\naeK0+57ijLZfMOgbObTPPxSbLlbRuIV4vEx6+o+HWfsY21myH/6qpFFbffk1\njB1RuacIsqD7cpPEhznNRiFbSEhgkk2l3EaisIprpHSdZL3lCnj0Rd8PcxNT\nN6raDXmgwmT91tf0xm6JlFipGP4pON3yNGYKAwpkspeHGmURnMoclTG70k3M\nVTZf90UpoWibCg/CHkarp83+sm5M4csNaV2H9lHfKL2OlSzOoRQXwj5w41nG\n5mfa\r\n=VD1F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9b82ea9894ff811912210f64017897e1bbb90d90","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.92","@balena/jellyfish-sync":"^6.0.21","@balena/jellyfish-queue":"0.0.566","@balena/jellyfish-worker":"^4.0.89","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.200-renovate-non-major-9b82ea9894ff811912210f64017897e1bbb90d90_1618683251543_0.7893283449316759","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.200":{"name":"@balena/jellyfish-test-harness","version":"1.1.200","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.200","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d5988655415eb721cbd4d8a711d40ec453041319","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.200.tgz","fileCount":17,"integrity":"sha512-c4XATgniHdol1O/mI5tXTWj1YCDAWoWGb9NH0tn+zWcDAnnMZFsyYes1IfiAfZF3PVFkSCs6SZBfnw3hHQX+mQ==","signatures":[{"sig":"MEUCIQDCT/LD6pDpV/gkrG5o3uc5WQq/oIat/tntXES3MbixsQIgekWZVmmBRMww/V1nMTtgBwT+okD52LAoZpeP1g15S6g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgeyacCRA9TVsSAnZWagAAez4P/RTe348xG5wpB22mm66a\n4omtdml5so3bnNlOK/dISD56UHKbcKZd+2u5GJ/xyYFFZGfLN4DleXlV2kgc\nyb/XTnTo9kXRtotE+17+8hW6JLZUYp/McmlJHUWhEf9zRw5Ph6aH9EMzw6tx\nQAsDZLH12KwOdTpjhy9GvveTRlrsYRt7p9LdkjM4wH5ibRhjvhFYv/rWBxkE\nljOVLiRXVgagryzNlqiBLtd8PyFJq9h/MHSAhTph08Tnk7Q+v/coXH1GpRYo\ni/BIxe93N6SWHR2vDOgJ7rH2AqTbrxWnNRVAIr8APrKPlYCefKuGb7vXxKZ8\n2tv7P0sN0/ggz5e5FXJjtR1SuPvmbk1ZzJNhCiJZnZCSg0YjhmnpGXBKS1NN\n0cQF/0/fZZxEGJD3Tmstzh1au3iQdeQJtmBORitsidKPfhp8pMyTQk0UdoPP\nadjEuzPINtT8Jc7RazQhGx807q3oRj2R4yo2viRkvaeYHan/IflxHLVRSm75\nRAsi7Z47Cz3MiqhCQ95XNfmjwtckdCLkCC6M1/CQQoVKF/IOaN1CxYqzc4Ii\ncqsscoWF3NUWpxhG6Rri4U+a4eNbXatxdtNh1Cq3HRXY3Bkwk3/otViS2Nj7\nfNJ0u6MATbyXNrL58FpvN1hRLtZ6oupNfB7tuYoZyBoGx9etfVJyLI+fra4P\nLyhr\r\n=RvO6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9e0d96a7a9f8fabca66bb9edec340875fb2fd10e","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.92","@balena/jellyfish-sync":"^6.0.21","@balena/jellyfish-queue":"0.0.566","@balena/jellyfish-worker":"^4.0.89","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.200_1618683548059_0.4699558787366098","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.201-renovate-non-major-1fa94389a929de0608f10776e5473b890d87e5fa":{"name":"@balena/jellyfish-test-harness","version":"1.1.201-renovate-non-major-1fa94389a929de0608f10776e5473b890d87e5fa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.201-renovate-non-major-1fa94389a929de0608f10776e5473b890d87e5fa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2cce025673592e493122210b7b6372f5de54988e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.201-renovate-non-major-1fa94389a929de0608f10776e5473b890d87e5fa.tgz","fileCount":17,"integrity":"sha512-xGzKwexNK1x31f1yslW3rYeM86tH2dIQsSDJtif/CrCbXRjbrEY7nZf763i+MitOSSq5IsTQdPy3ra0M55df7g==","signatures":[{"sig":"MEUCIQDWXr0GK+iaYSVLC1LKTgJBDOb0Z2Xom77SkzXp7AfHvwIgPFMq38oNyy2e+9vOAs5ebl3MHm2LnqvAJk6NC0Ur/1A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge0eBCRA9TVsSAnZWagAA5q0P/2AjYAgXnLTxeWGKz3Sb\nC3/HS3G5d2R2CNvnxrlUWlB+lT1DVqFw8J/6EDZm9pWFS4quAZzaRmKcKge4\nFtS24n25Lk8woMLabM/7emBNUvogFM8s90RPGC1ogxbi7ihOM6ODEno0CzpF\nm6c+V7Bp5tyhQX9gKzmCXN1yxHG9eEXVbIGwwrKwfJ0xl/rFt9h1EC66eKYR\nl4qZ49IFz6GoT0rQyPbTG1cuBgJdOD2VS5BUCC7TpIOunK9EAAobc9qj5WPt\n19bxNkKitp3NueqIMNvLYrrq1XMNLTKS4Ti+V/0bU7Nsda4Vr1Pm7dFf8CPq\nwhedYpmB5Zu3+6TFVDJgs0nsYiAv+7kgnBdcEYf8nLwbl8QC7Moxu9CZyuZN\nEulmoImeyMD03deOs2stKNn2Dc8zqOs6AZIxM1y3Sg5lE3G9rvMG7C8LVt+f\n7TkmZJYMcYlSFFHOkBBXIXfTQ6nU4a9o5ObSmmHSVSBBdTb49dKFa9FD3qxb\npkVSVEkoiRyH+b/SmXSF0H+5hPAE+mvFO3UHSH86xmmsOzOQMrpP9u/MRIv9\nhgRKU1jMmmD434UoO2xVN11iSnD3W9g7djxEcg+S5HJ6eS94EkW2OcLDcTW7\nxIDhrgZFf950nriAVY0HRF4wEFtXgKqn6sRzAqixktd5BHIzfuIS+LnB8KQW\nS2R7\r\n=JrsY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1fa94389a929de0608f10776e5473b890d87e5fa","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.93","@balena/jellyfish-sync":"^6.0.22","@balena/jellyfish-queue":"0.0.567","@balena/jellyfish-worker":"^4.0.90","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.201-renovate-non-major-1fa94389a929de0608f10776e5473b890d87e5fa_1618691968565_0.6833941150621539","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.201-renovate-non-major-00dd4cde3c240ec2f0b555c0839dfaaf1da9e697":{"name":"@balena/jellyfish-test-harness","version":"1.1.201-renovate-non-major-00dd4cde3c240ec2f0b555c0839dfaaf1da9e697","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.201-renovate-non-major-00dd4cde3c240ec2f0b555c0839dfaaf1da9e697","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"54963562bae2719dd85cd6596adeaff6d831d3b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.201-renovate-non-major-00dd4cde3c240ec2f0b555c0839dfaaf1da9e697.tgz","fileCount":17,"integrity":"sha512-uXAnFg+XnMcMNpUaV10FtVLitU8UAqS7JzO5nhiI0Sk8RI/Cbm27dKq4xCDudrF3RFE5u9OH5DfIz0y13wtQZw==","signatures":[{"sig":"MEYCIQCMI23U4ew5Ru+7e2HAy6t2tl15OvJptOut4eKq7n3+PAIhAPKDWKynl9wZgNvVukNs79xaobXrki8LPrHTyDuV0gaR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge0izCRA9TVsSAnZWagAA9BAP/jrl7ik9ENF2k7D1GwQv\nbuaa8A0WwFQWliSE3CEb2ncdT9nVdQLT/cTxFVgKzN89P02KjbOngRpOIbNV\nN2fYWtqlKEF9QoRMHLa/vU/iXbif0ktgg77/ZmebBDcW5sKX52s6ZgNBokj8\nMzafQFFxe9VRQwDVEkcAGgmQ+bWZm/Sqr3Ac3UJvO38ugzQ1Rcz8pn+TyXZq\nyLOfb09xYxt/REejMXAaao8CQ8QKWd31c9/81DruAQj0Ef9wNtvv4mTwwWlB\nphawNgMHn6YIzRtgdxoldZSV9fMvtK6SxUzBPk4eDwJ7+nvwHfDtP8OU0B6Q\n+Tt6j6FD+s/IsHv3QnQc3zcFr/B6Wmn4N0q+0XeQE/RHf4TPbFi63ZwJ7zTT\n12T7mafvhDgEijWvSYKhKPEkRTCYk7gbye96CczeeJkuSMTcm2KcyYhe5EHA\n7zYWNvA4DykG1UgRpEDno6Lv0kTx6/UDXLklqltIXd//ynltf6XrQEN1BAc7\nRim2cfBcJx6VHvfj/uoVGNUxlcK/9m0Ua7AqfBkn3kltGmmikCVdNsqS3Sco\nd9aF8r6fOypCKHxvCrfNxvfZwbfGs3/RxeV+avW0AcIs1mOQY1uj4Ks97QjS\naxuUUlYB+5WhkFbZxneIFPEDnqUGasUpcVohKnbB4h97lmUJ+jgrYK5Uf+70\nERlp\r\n=31f3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"00dd4cde3c240ec2f0b555c0839dfaaf1da9e697","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.93","@balena/jellyfish-sync":"^6.0.23","@balena/jellyfish-queue":"0.0.567","@balena/jellyfish-worker":"^4.0.90","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.201-renovate-non-major-00dd4cde3c240ec2f0b555c0839dfaaf1da9e697_1618692274819_0.31407173816472245","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.201":{"name":"@balena/jellyfish-test-harness","version":"1.1.201","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.201","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"faf1015dc1db750223f036a4f6f57fed4e438e85","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.201.tgz","fileCount":17,"integrity":"sha512-HYtAbJcevH1mv73L6StpWpBdg6a8JToeks1mOsDLJKd/Q0rOUQYeK/Iqf9ZsseFgvZ144A+2+gDNObNIfiyh0w==","signatures":[{"sig":"MEYCIQC2ST0vVGoI2l0cHnECSw9EsadoFyxe8UshBxg1dgvB3QIhAOYUvZczb/R/hA43SMMsyJbYvhk3ORiZWJQpcz2VLSOX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge0luCRA9TVsSAnZWagAA8/8QAIFGZSFryoETJ3DNLSKO\n/We/dmX6lBBBzr0YAdAy+IHAoZwJOxAI6B4chxVUMiEYhoVEDyAb/v50KI/b\n3d6R98qUkDddDxg3zhn8tujYP8ltbr5LBwZ4tKfIhIi2sN8RHjoU+zcNGne7\nWeq098uPZbahVLSa1qcNEs8rUnX95jlUW1Pd6KC5JGajiBjYRXMkMbAE2Q2N\nsyC1NdBHHb7RtRvK/H+5YtMFDwp9ELAxI7v1FbL5VxtMjEZxAWkEZgSA8YXM\nagpxhphAlSfPoGk6/j+9fEZQVSLb3a4Qzy7kOpen13dsMDoBWZ28b3IwXJAW\nVFdV5YcOCnAgxQ3j9WGlRojs6j4yD78XJ6LegA3hWQhTgiXTpcN2txtWUsT0\nFfIM6Iny8gMtYO3eafi+hKt3lnW0TtuEZYglDD2/xKAAt+913DK+9k5JMYWB\nReFcDosjN1ahrlvFlL3AxW086AqnwJ82/Dfl5L3R4dn0ctwr7+6uGdoTTIYS\nfo2CSD90rF6354UTVC6oRjkte+LuchzmLBGdsbqEbuURmVxdegnEZH4i1osO\ntwkxtK47Bi78T1xqgIn9eAZYA6d1afe2wYoTnO+wLlRLBeUYclNPnODdOE3q\nq80GsMH0AGuc/g+jT4Wvilk2OSf5RKEXM78jb6jn6uOSfZrF34hyQHwMGGsA\nsbIm\r\n=QCQD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f6796fe7f3e4e94485168cb88dae28f3a9a66285","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.93","@balena/jellyfish-sync":"^6.0.23","@balena/jellyfish-queue":"0.0.567","@balena/jellyfish-worker":"^4.0.90","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.201_1618692462243_0.18788274320600107","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.202-renovate-non-major-0ff0a137f3e98d2b88953086946bc255ea4cd154":{"name":"@balena/jellyfish-test-harness","version":"1.1.202-renovate-non-major-0ff0a137f3e98d2b88953086946bc255ea4cd154","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.202-renovate-non-major-0ff0a137f3e98d2b88953086946bc255ea4cd154","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"78e756f297b119c114d36a28ce4bbcb3244d71d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.202-renovate-non-major-0ff0a137f3e98d2b88953086946bc255ea4cd154.tgz","fileCount":17,"integrity":"sha512-BBW54QhpKDlDSN3lhSJpAzzzN+Y/iaJWPQXv+XDthOCPiLp1cWo7ZiYQKCmEE+kChSG3CDCq0iarHppybBcViQ==","signatures":[{"sig":"MEYCIQDDK4aFb9j4WfAfATVEGpKUpHAI1e8Et8RTRtNGyHdXkgIhAOeYXQCVPYgf9PPgnoQbfJIkPr+yxuZ6S12F7o0Ruh+j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55863,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge0rdCRA9TVsSAnZWagAAwB8P/Rc3nliN/RaV/R7AZ/ff\nu93XTRC4x2sqF8X2b9p0HaRg3tmOW2rEvITm54b1V3mig/CvzcESixWVI7rz\n2sdJ0o32a8i24eKXt2nJmFdXWX5wbGg3YlBqXBpp47RxpbND85VeW/CpKLcI\ncA8F8TS6XkEAbLsPrAA7/xr8t8xbLBy9fgMxiB8bEZMO1hFEbtsIQawbBTjN\nqosX2tWaPJhq3qdeoR97pLJE6Fm3lL2w2jINM4uDXdvAeIRHXvEYmVlBma/a\nCR6vdx6c9gDTjrQm15fFA9g1CROaEsNCu8s9DuagshyafnfWYx+tMY0Ngg15\nsGKUby54U9ZY/rMvaS8PNG3obyHTCqMpekyTJt2EYy6wqyuYVPHh//NXltOB\n+jS5A/KColXLTDG1sSQn3/DQ8H1zQW7Y+meUxmCdh+RrVEn80DNaq+jAsPFu\ncgOyCA1ZOQwaprKV8ExtI9TyQyEEzMsQCXmIaU5FR4Im7WKxfK1mhopeyX8r\nnLnOhnMfNR8+c8l6SV1dWaA9BB2Ip0CAoW2U/HL6G9CZFeOw3FXFr8/uCFCC\nams8GjYezkIpAUOv4aHBPGFb8W0ybEmsDgQaLBeetx9DDddZgHDt6d8T8YDh\nKnabzDXpBFSW+rtTP/AzjV1LWUSdcTCAQBDoIOnnltkwETy3spyyMWBR9Woy\n3VGy\r\n=JEM1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0ff0a137f3e98d2b88953086946bc255ea4cd154","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.93","@balena/jellyfish-sync":"^6.0.24","@balena/jellyfish-queue":"0.0.567","@balena/jellyfish-worker":"^4.0.90","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.202-renovate-non-major-0ff0a137f3e98d2b88953086946bc255ea4cd154_1618692829472_0.6333670303904082","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.202":{"name":"@balena/jellyfish-test-harness","version":"1.1.202","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.202","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac8cd5ebeba5b87d818e05c3f4b91445d5fcbd7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.202.tgz","fileCount":17,"integrity":"sha512-KCsykXER5uFWZegPFt3G0vs6482e7gPZ2/bqlGTl8G26RIpBhrLjGGfoRTcS2DDorR8G7cXiPoYLr4eNevDcBQ==","signatures":[{"sig":"MEQCIApabokr8ViW/qPJxtsqk+ipw9KbT8xellR9N5C+3a/KAiAoLHhoV37LHRX6bkC/xED55T49oZEnKytStjmy8Don8A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55803,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge0upCRA9TVsSAnZWagAANLMP/Aw+bC3QjuKCxVoM6lJI\nZNG+Om/wjbjkyP35+IgCkJBwIj1WM+NzoububcxDfK+ga5NuLdyIUoq6z16v\nmHxTeU5k5sC+nQZs7MI9088xMswH28quBDzxL/koJRo95OiMUMZ0MKa9JpaY\ni9PFf9n07p5yE/llkAoUi0V++heGmJW/81SoF78QwRsqXiDoLgIvW0U/sT7s\nGYE2j/ghqfnJrb9NwXLi+8rZLUev+jysPA8cX+TOeiEmhMu1Dl0iID/sfXnS\nc3vE9c04/Vqctwhwef8eWmZl2UhhSGQIssfVva/t2FnkIFwndKg6qPwBlGJQ\ntr0y28ljUDbUEEql3BOz+PjFyl4x8GpYW0ZFNVIfdrDvlXEQhpGOHtCa4+1s\nBiadurcjZTtNj6njineOWKkId+S01l0cmelxCkLgMXL1zQ5UIzweZnTKRkij\niz123neIOc1X5+Ra3yBBL83HzI0TAytLaJQkk3iy+SUT41HqyQVs0BKme0NR\nDSwGVbHFjCs8ENQw53p7FjnEW3giR27Rkl6owxZ7WpTIULOUGNI7MZSaGZoE\nFa+l/mrzaDnjt3TqeWhZiZQ1iCuctUwZyHqYPQnb9UPGQILbXL6KVfR5Y1Vh\nYejcSnIokLB6SQ+MfUbEHAmfUUv0uJe5OucqBMPIZD3hHHl1iFjODkphvx5l\nB98K\r\n=M2TW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7f8a1a2cb08e4196a962d6bc3d052a5724d224a0","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.93","@balena/jellyfish-sync":"^6.0.24","@balena/jellyfish-queue":"0.0.567","@balena/jellyfish-worker":"^4.0.90","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.202_1618693033319_0.5105350258126393","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.203-renovate-non-major-d49e9dd32e8f06a5d16a54ae7128931e46b057c9":{"name":"@balena/jellyfish-test-harness","version":"1.1.203-renovate-non-major-d49e9dd32e8f06a5d16a54ae7128931e46b057c9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.203-renovate-non-major-d49e9dd32e8f06a5d16a54ae7128931e46b057c9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"28241abba6d4cfa2f65fc98a416b3c8992ab566f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.203-renovate-non-major-d49e9dd32e8f06a5d16a54ae7128931e46b057c9.tgz","fileCount":17,"integrity":"sha512-83ZT6fMyEhVbAnDZKG4G91RsgAeBtiy+0NQyMYf5MWudQdnFpJT/bXcXg192SwYi60yi9JTJQEYZ4+0JUtwPiA==","signatures":[{"sig":"MEUCIQD7MW8itCdl0ZdDtf02OJfzqwytj0fW88L+DwKHAWS8NwIgTJRN4ca0eLYA6uXq+a5eBdPmISU1cQwsVY9V0nGYyLg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge2B2CRA9TVsSAnZWagAAngQP/R2bM78AN6ZzOzFa274p\nf1QT66R1Cg/uJCa+kxfWhagLGeX4p+GUpaYWGw61vqjEeu6BAGB/uyG+LYXK\nJbZasb9gb0ukmcQ6AdprFmJ545/936NwKoeyPQ58XUF5zBpTUpIwF3Y3EpYQ\ny6RkC1Lduja0d3y0H0qikKsj7ItEf0yyklKKiwBEHA7YbeHJl3tpLryAE2IN\npYq9IjSWQk2VFJiD0q2oCioQp+brHvnxZicKR+Lmr7UtWPni2MKlkU825I7D\n0COfS/tcBrOYscFcN4iwDj4RaCCLkGctVh1qnn6vpU1jcXcWNA08CdMgwaj2\ndou28wHvNd4N1s8StctTejBzP6s8P/LkMHZBcO29CuWRXFtP7Amt50xPYY0+\nk9GCKPJSxhle5CLweIZLUc8NHjaiGtP0ehtdlbb+am8gJV/IwTwPKR9kB9Z0\nfeAMAc04sKJ4nHiL3Exb54XF0F5qfSfpbh+JSZKX1uxcq1+0+nyKIZJrWo7u\neeloKBhw5MLtEdKKGgKY3eZLuFCDTmg5Vk2yI19MOVYD1qAgOaFmI4eobnUo\nqSY2Ob5z+jeS9G3lyOGazxpBUMC0wTjmK+Hhsaj5AtvTqwXHGp2Nz0UhQSFS\nh3wWm3ruwxwJ1/+JH8Ka0Tr//pQTaUk92+OgiboFfW9lxOvHWrQD4HChmQB9\nLDza\r\n=loLn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d49e9dd32e8f06a5d16a54ae7128931e46b057c9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.93","@balena/jellyfish-sync":"^6.0.24","@balena/jellyfish-queue":"0.0.568","@balena/jellyfish-worker":"^4.0.91","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.203-renovate-non-major-d49e9dd32e8f06a5d16a54ae7128931e46b057c9_1618698357495_0.12275375887953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.203-renovate-non-major-e737c043b14d0d421d7d5464b2cce0f4650d4184":{"name":"@balena/jellyfish-test-harness","version":"1.1.203-renovate-non-major-e737c043b14d0d421d7d5464b2cce0f4650d4184","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.203-renovate-non-major-e737c043b14d0d421d7d5464b2cce0f4650d4184","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"518273aae0f8fceb0ad3bf71407f46f1534263a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.203-renovate-non-major-e737c043b14d0d421d7d5464b2cce0f4650d4184.tgz","fileCount":17,"integrity":"sha512-PbuP0OOfNVQwIXrR4tDbsDYOFel4pzYAFxXGBjttj4ngQ21opbFS+BxPoytKYXK3hVD2k19kFsYpOxRqARqNHQ==","signatures":[{"sig":"MEUCIQCEEr/hiPjoH8XUR+8cjKIbzwSWYt2nxxACZtxIaEY3VwIgPEGirAJCMDoAKEVEDL3nZ/wyL5g+OPxGR6d0jxKPCpI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge2GbCRA9TVsSAnZWagAAExsP/1YJcNsMiBm6h58reXp4\nIouNLeIoZ9RcZ/Tqzu6BbZwGcvpn0ouohZYWRrjqL21c7wM/iGrMlfCuGxr/\nns7FwP2OSSrHGcbAPI5bZnGZrqzYmFH7saOLNjBhi7/yDsroEt09DxypDBGd\n6KGxe3gbiSbbxv3bSEda7Y5q7ug6ZMLCi96Mm2d7KVz9jYItnZjp0c6Yvyl7\nHLpGehn/3jz4yIdn+arxHDNB/sQTvcomQW1IXhfEQ8V0MnxLOtP5Sn/rSsN9\nic6RWvv/5Epksbd2quAOPLI0CK/VsEAdOb1r6qAS/N5o2CB5I0MHkZOtdvsm\nd5TyCdJhp/YrffXR7Ov3t2DjBw93N6JcobqMn+xPNpTfMdwl2Qc6eSGRQjDQ\nMcxOIP1LyGGsfhhcf01fNpTy8eQ/VHqV0I5YowwfAIYiUq8OvgJobCs0MFrs\nZJg4Hxt/t6RMpmLltn0wsWnydiu6/5Yc/18VUpf1Krq/2hrYhC3maTQypiUR\nD4U3DAvZLj3sg9qXcEL1tf2JH+iFipq4YOU2VqPZQIIzLL/gg+UWS90YHUNG\nLaAJV0pHlVXWgh/YT7UdF64T1klieGtMNmg30ytqLkqXtxQrY4a2v4JjvieD\nPFy+TayOJxi7+TcZTr8uG8sq6LKO5br2FQ1F9vC18jfbF0kZV4lk+ZsgIAlP\n+qfj\r\n=69Ob\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e737c043b14d0d421d7d5464b2cce0f4650d4184","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.94","@balena/jellyfish-sync":"^6.0.24","@balena/jellyfish-queue":"0.0.568","@balena/jellyfish-worker":"^4.0.91","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.203-renovate-non-major-e737c043b14d0d421d7d5464b2cce0f4650d4184_1618698650564_0.4888389551681105","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.203-renovate-non-major-4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee":{"name":"@balena/jellyfish-test-harness","version":"1.1.203-renovate-non-major-4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.203-renovate-non-major-4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f34d6baedf576113d900b7c0b8ccce1a71e6cea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.203-renovate-non-major-4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee.tgz","fileCount":17,"integrity":"sha512-yQNDJHUeyb1V6C0b462tDgWvOTIG2My3FsPtL+1NUp9pDpdvdW3xEC3sWcYHq3ibWF+RcIsWz79flJJ9rhr7LQ==","signatures":[{"sig":"MEQCIDdV10a0EWt/qbs3TVPo1Q04OOtbjuW4+kyDzKGaRQeVAiBljAfS2i0c/tCHKVEInNojZUXU/K6I+YEP1HjXP9NQCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge2LJCRA9TVsSAnZWagAABJYP/RyaEyB3h0eqjVCGMyIB\nViF9ZoXr7nAcPgWv58BygC/WyDZwfGg1yuhNzjFFphPNqBAwK5TTq9hFhuQY\nv5kXB0kMwrQv0WzA2rwdaYOuW6Y5wWCPMHVH6nAWp1ejRo2bmTD+IDG7g5Xt\neJl5dyhARL68BxcZ5bfOdmHy6BNVRWeNI5v8kMrdOUJfsCsISGZ2RVQ5a83q\nB3htBSF+PTgYcCa7Cwz/LP26gs8dgU1IkLNEMxzNRHVxCpJzZo3cgaYnCGAP\nA2+8WYzX0yIsg5Y64b9+EzNALEEVz3kzDxD0a0DkKIDqpQEy7CTVPjt6qI54\naJxSp9KGJGSTDTLsOaGDBv0Rt4JKvOXBNGIICeWVJJhjniGEJvKAZPa2Ieio\n1UoDloU4g/kWsoLA7kouzONJ5P72zgXUIg/NHILZnNEyfuQapiv9wq1wdoV3\nS5U2t3k+Gzh2tJIjELptsCmD34WoEVqhRizo3RMgL/K2TPnwHmolwZVemGHq\nFhSudnckHnP5/mH4oRHqNNqQeFPrCqapLkUTTDg0Dirg3yBB7fayo1HGDHe9\n22hwmLEdr9djVzMhrIv5rzY8xRmaeEXDskN00sWPa9Qxg5sQoZlGhLdva/Qx\n8y8jiG6QTHVXfTVIjHy2kyLCyTD8kiWKgZIwHQkO5RHf9V1luFitemg3JlO6\nwlsK\r\n=msMG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.94","@balena/jellyfish-sync":"^6.0.25","@balena/jellyfish-queue":"0.0.568","@balena/jellyfish-worker":"^4.0.91","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.203-renovate-non-major-4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee_1618698952943_0.7137582964565812","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.203":{"name":"@balena/jellyfish-test-harness","version":"1.1.203","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.203","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"133c8aa9569da5170c46738078bd201341af4758","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.203.tgz","fileCount":17,"integrity":"sha512-mkO/LL8XWFHs7iMoGJQbv90wBng4eKnvn7WxGmUKHJC7GknSrDU1WKPFhrsDeu+2a/3kSLMxHPfzY4ssJfq6Jw==","signatures":[{"sig":"MEYCIQC+Pzd2mfBdu4koxpov8pQTKWT5brtlCnePAdcK08pL9wIhAOs5bCNi+7+ZTyGtqEx8CIRD6lq4ZFidbGl7xoLu1uzH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge2OcCRA9TVsSAnZWagAA5fgP/AlfEuneP69w2cvoG7NK\nQYS4T9ZcYnHhmiBnpECmwkYxVzB9IL2hBlHVVnxaMrhSuialrNIeh61btAM1\n4lT/Bb+Aj3nzNM3goCmzeITW/roHBOKve+brNX7sVGYZ5sOwm5NqkamQ+L7J\ngiuiy6PMpXbhYCOa15F7H5M5ucX/vSxpuWwKbr7mk+crAbW6/BmVg5enUe05\nE8eC+a+eq86JyUv2z5rA0gEuuaW636h/z3Wir9QhUA3XzgZTgIUrpxIFojqT\nlW9e4N9B8OaBU9mfJtxGiOshEtHcJqxd1R4YDIEZSLCZg3c7ud1mq4vZ+yEV\ni8CghwO7f93qc73Qh19h9ouORul4rfh80eWjjZ3Hllv4seJ3IEUXqQkSwP4E\npllm4PZRhJutcQnvOfvsj//VcYqXIIdNWslFRy6HKoywIUR42GhZ5v+Ej9fg\ncdKmQRPZlal0Kj/i8RH2MLTII7jQ6AU+wrX0ZXmpwYVzuSNB5kxzFDyXvg4H\ndAEwIePKnyyNPkczLWGwd5zENyhPkmqfTZzP+QS7Y9Py1ol3rk6cdOVLjcBn\ntdrTjoM0wBI4gaYo9W367XBTbRrgzs7qwzFOIfb4pIPt0fmd8YPw10A92sy3\nzeqfagsDafoNsnYX3YmU2YUAOFh66D30sd40fKuBTuJYEdcZ7lhTs67BGddq\nyxTr\r\n=Yw2S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"54c9812268d01d761ac63ca875dd38ed144e1a82","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.94","@balena/jellyfish-sync":"^6.0.25","@balena/jellyfish-queue":"0.0.568","@balena/jellyfish-worker":"^4.0.91","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.203_1618699164120_0.13696418647348296","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.204-renovate-non-major-3deffeb24e975b509d9a1e5abf743ee6818da3c9":{"name":"@balena/jellyfish-test-harness","version":"1.1.204-renovate-non-major-3deffeb24e975b509d9a1e5abf743ee6818da3c9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.204-renovate-non-major-3deffeb24e975b509d9a1e5abf743ee6818da3c9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"37eca2729aa457a847ad7410bc8de5a7da71f951","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.204-renovate-non-major-3deffeb24e975b509d9a1e5abf743ee6818da3c9.tgz","fileCount":17,"integrity":"sha512-wR9wXzOxHJcvTkLRaApFcZFmYuMU03n7eyMStW859v0zUGKLqRVed2XcXv03NPnrUc0J9yDA+7WDCVjSvDqTLA==","signatures":[{"sig":"MEQCIDSfKkKWNQzppMaLW2Dwu8sCYmaqSvh30IEyoQJl/X3aAiAqgNKXFg2Htyev4FQxkFexQBFj/z+Qj91QFmp2NNfwRA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56040,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge4FVCRA9TVsSAnZWagAAwsUQAIeW3rkY067hRhbm7+Z1\noVx3X2mFAS2PB8bjfxSYuT5W1KE0JYjWWis7foS5adONBqMDH+lUki0sd1qt\nf1gHKcw0OZe3sNPOq9X6qOsk23biTEOorVVNGrpLCLtnozLiv8staUI5n7jy\nEqvNIva52QDA7flpdwKl+YsLkiXoyRDlYQj00casaBiXVUP4IFgS5StxMgJP\nsu8p15M0z+Owt3eeyhENKWG6qAhBnq/ZQp+XseQGm3fON1p/q6QLJ5JTZkyZ\nLt8UB+4n1XrgXK8tzmHChLS4wDb2DPW+BsvwMkJuuklMkv+QSSbog3petvE2\nhUUoG1GHfy7B8JdjFyvj2a6lmh3LfPjXR/+pNlOn5A+a10XiPoF+WDvU1bAF\nNge5FGDOyde77TjKi39cRnfjm+1A9Lrk0f+vuVAMkQaUREyYnfCDbrpCkkdm\nUSTmq5kqVfJ0tvevYuSVoTbgHgZq1dmJWgG95/vgzTRv3Fqm3CMGZx/zgMl1\nk0M3/GR1wPGqLNWjWx/gmjzQWuwzpdrS8rsFMEU1TYr0aGQDI+TJMqZA0kdq\n00NbZXpwFAE6dFXIL4/+RT3s9EjLw8M2nr0vGWmA/c68YDkO9YiAJXVpB4N+\nvyCo3kmWKcGLl7arH5eRNvHs1noRUCkjR4VFysgr/bOqtxFzEyw97Joc3pfw\nw6Go\r\n=l6RZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3deffeb24e975b509d9a1e5abf743ee6818da3c9","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.94","@balena/jellyfish-sync":"^6.0.25","@balena/jellyfish-queue":"0.0.568","@balena/jellyfish-worker":"^4.0.92","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.204-renovate-non-major-3deffeb24e975b509d9a1e5abf743ee6818da3c9_1618706772777_0.24190881269496134","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.204":{"name":"@balena/jellyfish-test-harness","version":"1.1.204","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.204","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d32b230cfd1cc00b0a83510a6d0e611ca950ae5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.204.tgz","fileCount":17,"integrity":"sha512-9qGnIcljGcBucrp8LalSccOAgkaUm23QHF76MnAW4OyyVNmwitlLbuaiHI6yhoCwrih75oJi2GeN0YJQBrHI/w==","signatures":[{"sig":"MEUCIDQhvS21Jn+a2Yy2IoMFxoLAzPHkpp/fJ0xqi1gIYUCQAiEArX3dPZbSDgGLJUYbQ92Vh/8NrgAcx0DruiqSdtQQZ/A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":55980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge4InCRA9TVsSAnZWagAA7K4P/jmznPXP+eMhrwqupyHj\n8zkfm+xikZ1I0ORWb48+WeEmUYvIJypFF4X+ehHF3tsEkCzq49Hw9SEdbW+r\nTS6pJvVkU/YY+nurRfK53ys+b5+PrMjVgR0pVnJL80F1WgEImNaMpnX/nxJo\n+Ehlt7BBP3yeIg2IRl5WpD6qBJvuUEIMkwD/Az3kcfmcpPHcMOi4JhFpsl8s\nW2McSbum1I0nAkizV8i87EG6eRLepfAdKZhQV5ocv5mSKShwigOEwxXyiKpN\nKsp//Vo91QaJ3MeM6VUuV6HPXBvh7IPVm3AjUGpj+gZ/KUVyeLigsuLOdhNe\ni/D1J6dLEqSQ+35p/YaR4bQGrRGqPVUw/XDEqRARsxJR4BlAStrl17UicMyt\nryXnVYIvFSS6hn50zzCyndP0mECTC51xpTO9LciyqYsuqkMijEdRnV6g2tmh\nHs2BSUYTrLw3A59QMnW7Um1bQX5sQ0wi2RHYDNKwNnPSXx++EHd0vb5fCxbd\nQgAMGn63IOnI7vlh1E3tzFqU4hYRLHfUuq0DjGZx0JmL4bgXz6zMTGsl0726\n11B/wDcGytk0fbudogLkXE3N0CRyL3ZYJitrTrIIAxkfSma++n6qM+Tv9j2g\nH0HYjKtIPzxkeSAMLtCVaDE2yTtHKOk6oXWHVwjq6hxBVaw96ciJX1ubJbe5\njFRV\r\n=TARk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"16f146f0a667a60b9a9a91c9edde10513081ba09","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.94","@balena/jellyfish-sync":"^6.0.25","@balena/jellyfish-queue":"0.0.568","@balena/jellyfish-worker":"^4.0.92","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.204_1618706982657_0.025581185735128242","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.205-renovate-non-major-7d48f7cd562a49ae22dbca341e0244ae445d288a":{"name":"@balena/jellyfish-test-harness","version":"1.1.205-renovate-non-major-7d48f7cd562a49ae22dbca341e0244ae445d288a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.205-renovate-non-major-7d48f7cd562a49ae22dbca341e0244ae445d288a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"650e3d6b35c09ae0575bc151a63a5728120176da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.205-renovate-non-major-7d48f7cd562a49ae22dbca341e0244ae445d288a.tgz","fileCount":17,"integrity":"sha512-chQ4VqyJH6ID5qcbxW4MBjTfALGu6asFwAncIa4C9mu/A4BcIPUYbY73uLCHNfSJtZFXKpq+G63QulITaZzvLg==","signatures":[{"sig":"MEUCIQC9ZVlDRjBNxiT2u4EmTRmCRxhDpVwjFyS4tQQx5wdS8AIgBCpRjUSbNSoQ6fj3scd2zAg3z/QmATaTAxuKvCm+XS0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56110,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge55zCRA9TVsSAnZWagAAdG8P/ipFX9lMX7vT+cTnDeXd\nSa0+wA9YadtwYWRYAXg8IcxS0Uw2icd04zFCfrNuWdkL5bnwdu8oHtGfFwVb\nUtjSfmrMG0dqMahJBQBwzuhtRqWzMJ43aRJ1lZ0j4yMyUK8eei36uIBwbRBQ\n4rcGRwREbHPaBfcQjaFHFE6dLVzRWABJeZ3pAVkdI1swQHcMFf9xr/HhQd3w\nh6NwgcJCfKv5SIMBZTSRJIwgWE4R+Su2c9rd0MGZgU7vGVjCxd6jvgaFDaQC\nN1huyI619Yevx0AKViHsdXjYio1UaqPG+1S3NIj7lw1auFyOhB8FuSU2ftbn\nIk9UgvGsbdUNHwZsSJDKtWcpF++/JOBHfVcUnDZFMoHvaiWlnLTQaPmwD/lZ\nHBOU9hdhilMhfm3Dg7Nj5mbGbiSr/VJiv4p6fh1YAbNW8lmCQPD/zLqSZw7x\nG35d6wB1z9gZEsBiit2up9gdc89f1DDsHzDEe80VLIm9PLeLxOKcqf2MZxni\n7PoZg/WMu52oTC8nZ1SUb1Ry3GyQwYWmbqysbas+g/r3pRQ5ohR+XGEx+S2L\n9ubW+coBT1xE/szKa3XpYmTehcyRpl5f9g5W+e1j4O9GagTe3GSajYkWnD7L\n8+v8O8WFoWfdJF1wF+QPr5N+/ELqgGJ4zDtD5SN8VlICNz1tOlS9jImovy6V\nNhxp\r\n=r4U4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7d48f7cd562a49ae22dbca341e0244ae445d288a","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.26","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.93","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.205-renovate-non-major-7d48f7cd562a49ae22dbca341e0244ae445d288a_1618714226620_0.9659798571683884","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.205":{"name":"@balena/jellyfish-test-harness","version":"1.1.205","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.205","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ec459aa8fe2f4f87a834e8ff0da708bdbd4bef29","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.205.tgz","fileCount":17,"integrity":"sha512-SXpqp/Bb98G88s1swE5z6ndjd9PukLZ31Wlk1aCR71UxEw24BlXQ+kPX8FIZJeTZjwAUtbzIrLOW0iH9Iis7zA==","signatures":[{"sig":"MEUCIFQrcMGIqK2641d3eVl8VOxD1rsHzUetpSDy/ZelKuxBAiEArDEW9roFqY4LpNu9yDF3deZpLhLx+E//lNaxwFqM9OE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56050,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge58yCRA9TVsSAnZWagAAJfwP/2LTsyqRBlAeo50tf3Pq\n8fL1qep5FPyeZA9jZBwrxObrWOjkoau91zUj0InN7iKQIXyKvFNCIRD67aHh\nejwd88Qyrlv/dHjNrCu47sT7QELJeJYKtgvQ/fhLptxa9z6xiL1TNaOXGBCk\nb+yj2Dg5iAeP+93xrRMCfDf+79UojEJsGE8eXondvTjN5CoSJd6NoRScOvl+\n+BjODbclZImcsharF5O9GRXA4bkmcltebYWfAdl9k3R3LbjH4yfSRPYQ+wbL\ngauXt5ESvLPepIGzqnjZ5u2rbpCvCWbX+oCYSItTobN5TWXUiKk2g8nTpGeM\nEzEuFS06XqSXsHlistzn7eP3wYYj/7Uld0o04WWj1dyj2gw3yWNYlELgwSkg\nxMutI9w+BN37sDPiY5tuunpBeu+SpWsF1SranVnflb6X5ZEkq5zAgJ5cISAh\nPuFYlhlGrfL7y3vF6ROGq3BzWuFMI+b5nDoSQUvDKHEQYTtEK6g2tRgkIALP\nfY1NrcYCV9FXT79RCj/OiT8Ee3gqqQUVsTnSkic4oXlLGPjf9P6godxUtUKK\nyXBXAzx28nTOL3G/XVM1Gw09t1E/A35fuxDfw61ARAzwrNkjB0pbeNS20ltx\nTbb7O2DnHyk1DDLLk/GI6h8/GLA/uvQOkViZhOOPlRTCa/aiCdsGzwc53N14\ngaZz\r\n=isyd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2c0535583cba32d4aa2d748aed9e7dced18aa7a7","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.26","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.93","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.205_1618714417763_0.19316411238595022","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.206-renovate-non-major-5395c7fcf7c0de05172cc83bd7146cbcb672af69":{"name":"@balena/jellyfish-test-harness","version":"1.1.206-renovate-non-major-5395c7fcf7c0de05172cc83bd7146cbcb672af69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.206-renovate-non-major-5395c7fcf7c0de05172cc83bd7146cbcb672af69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7fcde77fe30bc50f90e6e7d5460c9811ab979cf2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.206-renovate-non-major-5395c7fcf7c0de05172cc83bd7146cbcb672af69.tgz","fileCount":17,"integrity":"sha512-vjRFgcLJn3N6XPtYWlFjjfABr1l72JuoF+Qtcth6sRIDpOxJ5g9A6xFfU/XxxMH5jfhuQHLcvS+NP5ykveoiSg==","signatures":[{"sig":"MEYCIQDGRt7UVHqzyiPHW3qDEr8SfvE1HCHTkYcgsqXl4aQCSwIhAKgDdCrqPfUqu0izKGzsiCT9YFGXm9WqORxO8divpbpK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56180,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge7uICRA9TVsSAnZWagAAWugP/0c76fZHCgWDCF1L6QBt\n4cNZ/E0RHg3B6dW+585Fp3GcyEPTHjHeKVwwz5aMj9aGeCTRa0uAm4mJCHky\n3+Fv1mWJ8eeS0j/pWlkY57oXs8hDzE/Iwbbwvt1XzkSSQkOxq1Az77LHjx07\nOXm6PlQA/MsNztVnr4XYZVuPDw7OgU+LZsL/KsHoyYx4tZLKeICpkPkcu+W+\nlOKNcmSlxPUHjlzi796Y96EwlxduVLoakp8XO++T1Hf7j1g8bMg/fKp0Ek8/\nWDRQr+BSAMC2TByd9V0y+JUJxf4TgXoVu7Pk6ps987Ywb6uHLDokp/Fiumm3\nJcgPcbS0KBYVUYgF1s3H2Epxca6iaoC2jL5OwN4jBQtbXKw0yxGwNPExn0tR\nH5AQHAFOQQhn8LB+HWyED188zKKsFE1x46kZym0UPe7ScY6cNlPqOmnCYMzg\nTfGFrP2hfWu0Wxw5IiN8A8nlzz/nnJoktJnqYq9bieT2v7U+/GtNwIJpyaC9\nIXVpgV/oF/B+xGartCm8rpuLF1WtEMyo57PdxeQhR5qfYHBDf30ziV3+bu2u\nfpxIzcpo64Ee1Wro8VEmuhPJQJtKpfjnSVoJF+LNJDWZQviBlFzF1RMERqUP\nJvqVlh1+fCnv/RZujQ/kEYXMN6+GvijBgdzkdr0A4jI3AUCENPGMX++zXtex\nMptA\r\n=T38x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5395c7fcf7c0de05172cc83bd7146cbcb672af69","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.206-renovate-non-major-5395c7fcf7c0de05172cc83bd7146cbcb672af69_1618721671548_0.37152832480539066","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"1.1.206":{"name":"@balena/jellyfish-test-harness","version":"1.1.206","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@1.1.206","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa22992b3c2e0337f2895b6075aab34b12e2f0b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-1.1.206.tgz","fileCount":17,"integrity":"sha512-wNSrzBia8Y5PHhV3FIu8KY2hYRyY50sr0Wc1M2gREg19oT+b9EI+8SBQh7+vdDHGr1Wg/8z5K9wUs9HubJ66bA==","signatures":[{"sig":"MEUCIQDGvPmpV0fLlXiw2+TqV+NMy0ozXjDPGguE0+K0ydz+CAIgGvmZzfMjplchvUJWQ5lzsjMcGKOg00m+X3brvjTHsyI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":56120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge7xICRA9TVsSAnZWagAA5GUP/ApqLlEfjHDWHf2PAYBh\nZk++y4hQugYKQ7CRPDKcOmJx1vVCU/PzgWc0Z6ztjvHjp/P/JBQNy14acpjT\na2uZR7CLvRh5l5AMzbjoUn5k39HMCc5vl88NlXnWXl/y2xM/u8OWbQU6kpwW\ng0nUPRNhUpxc25nOeyD32V91K6UdQWlF7ng3+wYczOA93buli+Wo0ZlG0jPe\nGV8EimN/3Oi7S4rYL9BSY1a53PaVL9wHfAqOjkJNBF8u6FvrDUZW2/Q3xtKO\nGxvA4rl3pI0pNBa0vLK9iXD0mLsIFJrw/rmN2DEk8IIVPdhgHuKCuA5Gnpgi\nmCNYyMy6XkBLroczKEVf8MzCOEvlPwwfwWrDg4Jzk3RCn/FWhqO8FywnIpfX\nbeLirXdi0hF6NoGLb7o3jAohiT6TsYYkY742daZVyIKkyskANdnoNsgw3byO\nkDibWBuh9B/4B7avjL+89T1SaZEw/mSKvf+LpjnXMAP9cBWHlhbVYlOwodZu\n2aweMZFQ92lJMpqdYTu6zYMnNKOAZ+21pJirMwJKscfII6qLHfQRj3Fxvb/O\nlOK4J61tHNAt99FlFv4V/8VeSajWBFWLqgetXp/31PJBH+mLWWqsaVHC3bpX\niV3UIw9JCTkcNKOphIDf0LqkXtFVTX7TaEicjeWelUjFVHW33Jvrbt+CutfS\nKVJE\r\n=RgXz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","deplint":{"files":["lib/**/*.{js}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c7696b828afe95d7cd48d40b414d66c6a3562d3","scripts":{"doc":"jsdoc2md --template doc/README.hbs lib/index.js > README.md","test":"npm run doc && catch-uncommitted --skip-node-versionbot-changes && make lint && make test"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.js":["eslint --cache --fix","npm run doc","git add README.md"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.24.0","deplint":"^1.1.3","depcheck":"^1.4.0","lint-staged":"^10.5.4","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","jsdoc-to-markdown":"^7.0.1","@balena/jellycheck":"^0.1.1","eslint-plugin-node":"^11.1.0","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-lodash":"^7.2.0","eslint-plugin-promise":"^5.1.0","eslint-config-standard":"^16.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_1.1.206_1618721863465_0.8686305551394464","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0-typescript-aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b":{"name":"@balena/jellyfish-test-harness","version":"2.0.0-typescript-aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0-typescript-aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c1fbabddcea8611c09fd6c999016f62551a1fd64","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0-typescript-aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b.tgz","fileCount":24,"integrity":"sha512-uddKWf2y4ICOuBOis9nTqhSqvoHA3FxMdYBTS0aK6a1i/CvoBx1J9XK0TYzFztWOt8HLYCw4C/jG9mPE8vGA0g==","signatures":[{"sig":"MEUCIFB+yphO/JiLx2QcbyYlyLxitx/rOcPRnU6KnOogMnTRAiEAr54nxlU5RNseGw58xOTF/RjLxEL3JcQcxkiZB7KXNHI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83446,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge8c+CRA9TVsSAnZWagAAZyAP/3hKZ8JbkcxCxZwJcv1+\nO6D1tSL2JVyxOlNllfQFEfPEmLI8lTRaT5uVcuofYGXje2p6m7+urTLPh21W\nWcC+d2AiOxSYfLIkYf/yBVzRPjqG2FULQqmCPkLK6j+yh59seDbEmYS9MCp3\nGqSl4qmQvN3wiqqlS8kktHGPhd315VV+ync6G6bJ3JFaKTAemN+g4En0DtSN\nCt/GUlBjFqKTPxUsogV7BQrCbM0k/1FDlEK5w5hnpY/bfH5cwfiUpvaoRP+H\nxC9WQXg8knWBxoGvzLRnmUNLimSGNwjekxPr6z17T7m9/VkM3pLZi6B49db+\nwUrUMvCCw/SgRPXXlbglxsj84yrnBVFzavGCmiIpdZ+5oNJQIf0OCeLy02KQ\nwFTGmS8cSl/Lgfb98yxVCCwN6oyXJSA6xRq85VTJJ5giWsqEuotPRLM86tfm\nchbYgk8b3x/1S1dczQTPRx3eFb4JjkOSOTuFwD7+uIeaBw6GtPHnJrad7cxM\nu1AWOTSFVv1t9/lBOmKbK7MHovIoNZh+lWRRBLk8CMWDEFoLgp2zJjF5XMha\nzCG2zIKvvXVCFoZS6dY0+so1H8VP9ACfbv8x5s1hqawGTYRN+uJBuJaEPFzF\npCQ+kTOtoqYZv/cRkzUnEoAWN5jep9DebrGpdNuftXdWHbZseB7/9Ns/l9il\nbQdk\r\n=+trp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0-typescript-aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b_1618724669545_0.23123597800410778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.0":{"name":"@balena/jellyfish-test-harness","version":"2.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df35b3eaab2048f361cce9844e930b88e29c88e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.0.tgz","fileCount":24,"integrity":"sha512-GaFknKwcU9KD8ta1H5peKzwlCfaMbgSI5hI7vQLo5RbhquirFDqokl4vW9mv8hrFz7l2Onl7uVTakoQaJwL1WQ==","signatures":[{"sig":"MEUCIQDg++NZbN1meGN16RcEj2dJ3v6Ggmxdks/Xcp57XcI8VgIgH1JWM5nfxt3aodbxILoPiGsW+31V9rlTPOiDVa30nPc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge8gdCRA9TVsSAnZWagAAbsEQAJgLDFRHKLyaIes7bx/i\noc1z9MHRV6VO1tsNmCl4Ep54URg3slljye5H2UKg7Qso7pNsPreF5N1tpC8Y\nzgJA19Vnkcir87iclF2WPBBtff4e40hYDPJuG8QLqYWcG1E1+xUpTZkk7xQV\n4tfYDZWzchvASAuSpIfk7gePJjoqSLTOWsMkmDlqQW6EEa6CaD7il8ovpLu/\nO7wjwt3d8O8v7RNdxEaR7s2xDeQMHzyg7wQtLabPeQSePSPD9S26AR851fEI\ncJRD+nbx7ySTIFk2oS6P5+9vfcrDlnL7v5IfHuuXKbe7WPvDE+AZQyABxPId\nx+Czm1uw1jPmbmpyU7+WLHEmHtDvyo2PGhiHy28tmvAwJmaqIgWnL9S9MSXu\nTGumWW7oRr8pcxW0SKkwoZNMM52F8y6i+6+vY2hlI5ZC89rs/mdKLmFN9mVC\nCs5Ha7c/AaUAJu39pb7eVeiXYT3RoJbPcivMvShvvqnKIbg6AHbxbxOZ6nNe\n9QntGlzsp4K3+9BxM6N1aeEteMEeksl6lrnyYF8HEbYr8gjqT6JUh70CIbOb\ng2+0L2H1MYcBxO2X+tafECv/vmj4dgJfhUiak94QjB9aHe5kt6dgixoe+8fA\nMoFVeI7HpzeKF3hc1QR6GMjgJmpfeSjWVl4o49timeWtr5/UCp+MSKhCXIdO\nBoHy\r\n=SYiw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d1247208ee5539b437d41df9bcea9559f55e3530","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.4","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.39","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.4.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.0_1618724893086_0.28492997597630265","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.1-renovate-non-major-522f36cea042b9fb0a1e6df4699821bbee2a4802":{"name":"@balena/jellyfish-test-harness","version":"2.0.1-renovate-non-major-522f36cea042b9fb0a1e6df4699821bbee2a4802","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.1-renovate-non-major-522f36cea042b9fb0a1e6df4699821bbee2a4802","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5db4bc0c9b76eccd37bb913d9c8590b3895dba42","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.1-renovate-non-major-522f36cea042b9fb0a1e6df4699821bbee2a4802.tgz","fileCount":24,"integrity":"sha512-G0Zikx7hoqj/KAtaKDBSMLCP/NFRpbHkSu54NtUzhoMsfU8xK7hrukZ7vfDRT4HZRpdZLIil+7yS+YH6J3WWFg==","signatures":[{"sig":"MEUCIF4oVtWZy+EjAMdPEt8nu6U69WBs3yTQ4nOzGSAx9nZnAiEAxu5nCVWwZJDkfFUNYEfvqdEiaOZD7aP9GjVDS3ra5s4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge8keCRA9TVsSAnZWagAA/ewP/3RHoleGRf4z9Rzckn1X\nrxhEK0IrIg9Dg6EeWKvFzSkwzjVGzUVrVDeO37ZRY3DlHH4OpU+IQkHG/O+E\nt1DOwxu57yiRks1YhUw1G751E2e+GOWSJTyEYgiIRIl4Ru0IAZnhIGHgUWbX\nVd0lL10kZ3lPTatporvRjG1I83b8Hph2FCFyRectcin8yxW4bAJypC4n61TT\n6/txaOPOqjhDul27kIHfcnXc6079MDkXsI8qv/3D7C0qxXnxxiuv0tmlaB1d\nTjHAsNQG/YinayuMFib3t9t2H4wd/jYeTJbGkmKZicGun5R/AFAbXQSmJgsH\n4aZKv3Yh0cH7kHTBYBmOI546lsMvYBg1bglJN7LBelS3oHceawDmaTIIfL+z\nB7bpXjQXGkzccAoPJMh+aMMC9UzbsRl6pQZq+u96KLhEE+i0qqqX4za9p5vM\nLEarxYI3tMsla8wgyfisT+6s/nWVUpYaDA/iwHn2CJ5N6vDKbRDKpYTfGmpu\nUCnraegGH+gsqo9yT5mJf1IHSIdeQzOLHTooMKbVDLEOVyXaxt9HWqEkxBrc\ng8xQzduU8KeEYcPtlA+uWRF1HbWYTce2mrjm9TGT6ZOt+cA5jXDjCIuGtc/2\nazcYbCh73lpMkCtl7KOWJ4Oh8JK7427OvcwgG8DqTvpAbEWG7l07uzhm2mBf\nDSyd\r\n=wvb1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it \n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\nJellyfish Test Harness module.\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"522f36cea042b9fb0a1e6df4699821bbee2a4802","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.24"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.1-renovate-non-major-522f36cea042b9fb0a1e6df4699821bbee2a4802_1618725149734_0.4666014251601891","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.1":{"name":"@balena/jellyfish-test-harness","version":"2.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5be4492eb2c2017d67fc63f25b722ca42101401f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.1.tgz","fileCount":24,"integrity":"sha512-y5KLKA9oUjy/6c2Ipv5v+lAnJYCNWCc/3rgk70PJ1PSwsLnMRSXlzMAdxP0Kn8ALgSnzAjDR+ZP2eOIQPp/nqw==","signatures":[{"sig":"MEYCIQDXG9wPHG8GS6XxrbJqPeBpqL8NcUqHqJrfSjVhESfszwIhAMPadqT3Scrs7yW8NopAeijtCQUbon+xod6/zygup1BV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJge8uvCRA9TVsSAnZWagAAKucP/20gWfOuOZztUQTsb8xG\nGgnZ17d+lcNEzD5b0BL8xIsM3qLhnNSe+jlNGLDP2HPjeWsHwOcm8cD5W9eF\ncNvznRBbQ29mNfxQc38UucvfP7ojcXf66TvKAkbs2Y0D92aScprre/WhZ5W2\nbzjikfLZ5Iwn/SSfop/vzGRHJmhv/PItdpfLhpcJpJsQuYFu3QPu43UKMoxX\nddDi8McOfsab6B+Y26r90OonDZ8RmMNmxypB2eQ9hAmbsLFAbxrE2aMRH0+r\n8oxgiyN78u/3JmM9ZDn+q4HD5+5dt39qYo4oNCi25ubDVxlRwgbSBVsW5lwv\nHXb2n8/rMsJ6wamRziApO5XeUxefpsIjK4nZFx6ioXiFW1fgzPeD7gZ0piwu\nFu/8jGMsxe4WIwbR9Fy1QULhfRgvApc5MrwBgUM1ITKCqzFX73T/xf+VZJk1\nJV7UdrrYBNNyxqS7JVON0Mb5jDfoWF9TTGWr8dS0YkCq3kYFlAGPogIYM54F\nXll7Ga+Lq+Lg9H7d9cxQdmoMePJeMzjO9HbcCSBPb4luCMNSIRcRs87ID193\nYO79UpynyllZFASf/0ZCyghx9lbqPdf1ou9CIIwOsZTt/KoWqIsB61akcJyG\nK12s5tz/ouaJ/kDR94IFpQBg383kw+N/YejxWoevq7toLDmWJ1ZRD7ZjUNIL\n7ltQ\r\n=6RpS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fa27eebf92a370ad13ba9b2b02bf9677b27c654c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.24"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.1_1618725807228_0.052859058157409544","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.2-github-action-docs-85693f0c19cf113486a2f3c181d3cd4dadb0b519":{"name":"@balena/jellyfish-test-harness","version":"2.0.2-github-action-docs-85693f0c19cf113486a2f3c181d3cd4dadb0b519","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.2-github-action-docs-85693f0c19cf113486a2f3c181d3cd4dadb0b519","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5bb760c38fec09034529763068f48601807f6fdc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.2-github-action-docs-85693f0c19cf113486a2f3c181d3cd4dadb0b519.tgz","fileCount":24,"integrity":"sha512-l0Vx+Q7H4Q6vf0DhtxAk/hlfy8Y4ZlftO/eKbep4ecOpnI7x7TvKyOC/LBVMk4ZzOtIuyOTJ2OxweLI8GbePGg==","signatures":[{"sig":"MEQCID3Rqx8LLQg4YusLLeGJXMk1u670phmURX8r18ac9PR2AiA2dd+r6ABc0uwzyWsriFGSfTRFeBMhQDOvvXvXL4dvbg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfAPLCRA9TVsSAnZWagAA69AP/05kJTxmpkyIClsKsD4j\nT8nPpFjv0PyR0PVfTBwJMjJoy6nZ4pdQ30CKm0EENj5SZs2Hl1iPhQvAYkSk\nucAOA1mHgk4Id2hIJv8055zmjel0VFMs6F0HSRBFb/jJT/rD2L5Sywne98hC\nvpTw7yzVKztg3KyTY2u5ig2slRXVKkfdOo/1dmfTX0kPwC4oRpaN40RdeLJk\n5/KUafNsK2EPAcEYqhGYzJuWTbY4G159wIQ6MxgJqER9+DtiTcMIMeB7T+7R\nPMBFTT5lw3BbEPA0baXYlhC9pHl4En7yDeK43RDfKNV9BrJzp00Q12fuZw18\nDAGhOhyKh/gIEy+2keb3yJV9qQiG9ZifCQ93cry66wixQIvKIUHydLIDwQBV\nozhbwTcQ27XmmVIrLi22ay+1/T75giqeJqLI+EgjRtoMSoHIWLmOwMcin8w9\nG/r21CZRF+dCbSzd0ISz3QhFwxqzhw6s128hoHTjbFTPrxbfV5vBLfEfOCMz\nnOmHJsZZyUHP5UU0/WWv8blMKWMBYHYKcFmeT507Mk+8G8r00D/cQWd812ki\nMDXUPfwNZRb3JxVQlhCov7GE3EUUcONyPHL3X6VehDNdWs7Myg/9FRcjqDsu\n2BbxtADIv8TdtgWAtf6yRxt86+Xy2TbR97x+Dj2KnV8+UmcLymIv4EWZzCGp\nMEtl\r\n=Trbl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"85693f0c19cf113486a2f3c181d3cd4dadb0b519","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.24"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.2-github-action-docs-85693f0c19cf113486a2f3c181d3cd4dadb0b519_1618740170958_0.6868748267778368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.2":{"name":"@balena/jellyfish-test-harness","version":"2.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49d629a926e1faa2ed043594a2dad2bcb00161d2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.2.tgz","fileCount":24,"integrity":"sha512-FKglcczYMQxkuk1hCr48jJOU0O8EFWcg293WUqoFJTCWx9nmUsavXva4/LeoRzOBP6UaOdVidLQFWmay5sor4g==","signatures":[{"sig":"MEYCIQC5x7KrCJunVjpa1I/NcbTZfbvsDkmDfU+FRb2GowsTfQIhAMAAjeqT3u474igeuu4FvypVGbWWG1RNGvyv+hZFoinZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83820,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfASYCRA9TVsSAnZWagAA5tUP/2f1oQWimypCQG31tAxD\n++Z4pByCqnJOxFyYOewUB9P5/JTm70c8yMPrYFgv+ay+CxzA+iw8bPGH1234\nk1rqRv/+o8h6/aAnKoTs67jaqsJRmq5MFa1EZNmDxTm5+E5CNSpA7LQExH1T\niJeFJ1GqEsRORd5TNUTmhk4nAnH32K25VaTueHK7XzrsJCkRrexRl15Pp/N2\nuL0fi/cpqmjTvP1NK2Xm67/8axnHfzaWmUI6lDnTNwiNrrWzcaugwYQwOnfT\nz6ZBx0+9wcmPT6VpL6+4cJlNBmm+A+TFJsdwqDrmg1Fwvjwze7DIRKOhYB/N\nzbtCZE9XdlIa8fqvC+Zy31Pq5kSkeVZyLRpnXTFGsD9pUwg9kK61HRnFWHVM\npnYpH3QexEZzV7wvB7eV2mWeSotb6LhDRYRmH5Ud43skzC97NMJSNedOMAfm\nVEn00MdEJpQXe0TVH4v4LZP5iqCkJCVbjUmedYmdgNcEBPmYSRY9rzfIXXPV\nVLdTcH7ktAlcCQm3yc6w+KKpin8cGLpGfGYkGwFedDWuYN9sbqB+tIUrp/cn\nsOHGTG6xdFJSZ+dsf2kjIjCVonGZTlzv9SXbxhnemdUwhzUBeBluIat2qgkE\ns3Kv/eUzWRxCWALnXxPRV+qLi7fuELF80f0lgqShD9TsPfAOEoRPS35do5gR\nLY43\r\n=cUEM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a1c1401552f74f15b884f3c758b63d9bc1ba0941","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.27","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.24"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.2_1618740376091_0.09915115925991924","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.3-renovate-non-major-b73c8234eba15f2dd016fc5a7ce9c258d2019417":{"name":"@balena/jellyfish-test-harness","version":"2.0.3-renovate-non-major-b73c8234eba15f2dd016fc5a7ce9c258d2019417","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.3-renovate-non-major-b73c8234eba15f2dd016fc5a7ce9c258d2019417","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b851c73e6b814476854b228ab0499bbba466c55c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.3-renovate-non-major-b73c8234eba15f2dd016fc5a7ce9c258d2019417.tgz","fileCount":24,"integrity":"sha512-SrRX7lSdK+6/mohIaRYIoViENE77M4uBSHiECvljyrAMIVMyh0Vk0lLi/zLUjoTGMj12TO4bKwhiat8Kf32iaA==","signatures":[{"sig":"MEUCIGs3H4LULw7uhn1zYw7aUPVDO6r9k0Vc1qQNbRSl5A/tAiEA0b/x2pNmuxp9VQKjd8JNY2Rbo5JdJDFtXk0VGOkRZUI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfCp2CRA9TVsSAnZWagAAas4P/jsF/AV0Uu2g+Vcoph4W\nWwO5M0ccQtPjcjkWukKGptp5h3QKNPL/61YGaD/7pAEn5QDyDQe07lN/WCpN\nrJRueOq2OZTWd9cmRWMKHv7zisujzqXlTRHsx1pZF9RuHTAh+ZzKQRBJ8v42\n+3MozFSzz3ZJb6hSqytelha15YrJouxESIw58yBlkWibkV6y97AZSl5ai5H0\ny1zo1LSz3g55GnolKIjyIRW6pGjkFWRRUzz+FIpOdXwK2TafaiLkdV1T9zCO\nDV4Ip2h4LLyXI8dk80Av5j0MQYG/RKwAXiBGsVKz1PZcb7pm/o8zgucQXt8Z\n3Hw2joBN1chhUHIovYKTTWOQNWX7Z7AmsJp8c1QH/gGHUyy2MtAyCr8G4Ofi\nHIoYMA7Zkqr5kyfok06cIigV9r1n2vzT6MolmdFBCyK0bjwKg5oIB7ybIQXx\n8mwQLaFwrSv0rp4rKbvZPGfJuNuhX1CNEy6Rn1mzF6UYbiWYiO8upw1n0mPj\nmmjOgby1VDwMtZVPnBrwtlZ1xmduczx9k+F6pg4hT1FkVcsI4GnbN9zzJGFD\nqOjxPysl8lVKUqVrkTC8Ktmw4bEOjmYkfbbIwT/feL782UCmLIysJbXlJTuR\nV0oRGP8rHg9k6EY1n9cMcSHMFToQQz4BYxc7yqc6246AX8CJ2dFbcp84fcjt\nYeJn\r\n=sVih\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b73c8234eba15f2dd016fc5a7ce9c258d2019417","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.28","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.25"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.3-renovate-non-major-b73c8234eba15f2dd016fc5a7ce9c258d2019417_1618750070102_0.2682399832378164","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.3":{"name":"@balena/jellyfish-test-harness","version":"2.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"acae20e7384e21d738b771e9a78eea2068451493","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.3.tgz","fileCount":24,"integrity":"sha512-KSRcRoy1wJMprsktXYuR5/2gnV9ROxeP14ktnz0gU69I/WLLNAyb2SQ/CZg+f1pnxWt/R7w1rivMmwPezsLwYQ==","signatures":[{"sig":"MEYCIQDC49A5Ww1+VxQXHsY+vM/PFdrkshsEL7f4L/s7104hfAIhAMXm+A8iSqzH5gksMiS607wAW4dAPfANRSTG5gNH6a+a","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83888,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfCtXCRA9TVsSAnZWagAAY08P/ikz8YANasAPUodDeJ4d\ns3izgFG9yp6lTDUcrk8hvakeJjjmfzbDQoqyJAAm0DToNcBDJYTeWQ2tILSe\nwycmaaeNww9YLHr/D7KvEWY5gIs4iXFqP7xgKtGKDBKRrjQK8TVBR3YRPCce\ncB3kYbpoar25QO+meTQgGlrk6gqNk6+exRfsg9/MbvLlmOsf38Uihwkhznok\nhZOdb/PT0hHiAfE9tKFs6Jlha6MH1ibpZ8qiWJ7zKiFTCA+JTqlEx3fTwR+N\ndREBMQAQl1nWDC04W7F9XXqI6l0YHQaDtWTGteT8PU+qPTw1nJ0Eq6YMIoc3\nCYr5oQyaw6wA1lcalY47eWZ/e4ocy5HqHAiV/CrPo78GNvHMWiTgEEW5xi0K\noboMmIBq373kA8DPKMy3F7DJRiplDp7AcsNtUOpbRcKyTdmpML5J4KCinJpt\nc4UW1YvLmmhV76SI5MTXZPUBgtfTd6eRuFwovq3dqpUU6pU6uidUQVkacZpq\nvRPAnTwvZ2uDXcKZnS4xoMeBL78Y4Kuz/dBal10k1aWwDFqpsXDARxDo8Abm\nAFFezXHuXIiKVOL9JTOVaNHDCWPPlA6fAvXSsp3kCMGPDT30GHB1AQhokdF7\nsEZspfGYUJ1vsMKt3MwHtpi/0UGa+l2SFTyONH9P0ZUr980vCWxAcf4Jy+K4\n6ZPe\r\n=MNWb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"918539a14b7f0f84fef153e9ccac4824c8a57bef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.28","@balena/jellyfish-queue":"0.0.569","@balena/jellyfish-worker":"^4.0.94","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.25"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.3_1618750294682_0.8696987991727214","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.4-renovate-non-major-1726e211c7695f698b7f84743d449574ececfadd":{"name":"@balena/jellyfish-test-harness","version":"2.0.4-renovate-non-major-1726e211c7695f698b7f84743d449574ececfadd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.4-renovate-non-major-1726e211c7695f698b7f84743d449574ececfadd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56a5c1cc630a6a5fd26c505771245e98484c853e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.4-renovate-non-major-1726e211c7695f698b7f84743d449574ececfadd.tgz","fileCount":24,"integrity":"sha512-s2gqelHXTd0tqHvV3QA+esX/62GvPn/0aUoKdmmUas09QxFRctJ0qn3T8F1kFZzt9ToVYj74ec0XLDd28nuVTQ==","signatures":[{"sig":"MEUCIGq1qoOZDpDwnaYmo1vEbLiFumOu1MQlFEAPYHzMJGryAiEA5EoVzgvb2XQ4qbJgfC4vAwj643GrsfP5FZ5Mb135TVo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfE69CRA9TVsSAnZWagAAq7QP/RlatQpr97C2P0MKe+xV\nMxCS/vepaz+p1Yfg3SN1/YqePClHKyumK9bfiaDZHpoC5XzvShs8jH3b37QQ\nlxKXjypKReF2ptE/eZO+aenzlk1I0j+0tVS8Fds9m11vH48JWHvT/UVMbnX+\nC8f9D6a3Lt3ej8S8YSp51AAl2RVta+HCEuOWMsS+huY3u0cQoY/KSwRYPzRx\n9pLqx/Dv0OJZWQHpkKro4suh5uXH60TkDzkzdFgkKCTHFuuLCZHo6khZMgva\n6yM0tZ9yQauXxOLLjm7a0tttRBdUespqRxByJ2sa8o2WtX656XbdY3lzEKOm\nu4ag7qwCgPmS1LsQb8yng3apBtgN3Wg+DoYgNUI3TKmYGPln2vng3j4SaA+F\nL7FxsnySe61h4rVteELUslYWFT5grJllszaFMJ/Sb8x3yb9MotKhMIXzRy0A\n/W4SLyZb2cTrBTxcSOjuausOAjAYGhYthPFVxCkFdAejOMczekki+izc0mEb\n8rkWwbUWL78YLo/WDaR8dxww8oyLil/I1+zkx7BJ8nlmOv/N1LSvu+zLewCT\npQavtYyGD7bSgUkOOeVp6vPTgeAx+8F36fSW/ZCCxOwikFr7WPJVZl+yPA1y\nwXt5zOCljIX9vkFKHWZP7G6d7JmedkSPRoYdAXEEHwwzaEzH02gWX/K+RhEd\ni5ID\r\n=e9G8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1726e211c7695f698b7f84743d449574ececfadd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.29","@balena/jellyfish-queue":"0.0.570","@balena/jellyfish-worker":"^4.0.96","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.25"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.4-renovate-non-major-1726e211c7695f698b7f84743d449574ececfadd_1618759356867_0.6554808216392503","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.4":{"name":"@balena/jellyfish-test-harness","version":"2.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e5eb5d3f122819d4429aee14ed3949072494999","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.4.tgz","fileCount":24,"integrity":"sha512-DE38XzTl1m+mJGYByrOR2GkXs8BZnLHYeqqbEMVgPac6ZUIL+kfy11kBs4l/XsuTHghwCdvQcQqBWG/xbePcAw==","signatures":[{"sig":"MEUCIQDudcPZ7SPecFJL8UamIjjoCltexGk2/OYYT5ayqO1udgIgPRv0oCZvRmoWPMXFsvAdROsATcMfZg5dTQMAxmzgGXg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":83956,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfE/YCRA9TVsSAnZWagAAwuMP/3cah2/WxE++DuNhMUW/\nLDhW2n8D4IVwFnXV4+ef0WmtJy4Djuc+5frODX97IV91eHw/pddRZ4DYpeez\nTsBzVClObfHq29c1xiM76b+1oR6t7V7LNOWEmXdSNG2tE78TSVex9K7tVHHR\nmluAgSj7bVub7mo5iadT2/mtG5EDDAeCTlq1LSEDmN36ZRMI7HekJxwS5uPO\nZumauohCekTb+nQkqTpDwcBvZqjJbjP9OipZ2BXknn8C37cOz8pPYgLWm0hH\niW9D7XVlf1GWBJBKbUUxBnEpzbquIGCp1izwVSJU2K9vLtkP+wcX4e9jJYLO\nZJ4+btXeFtuXW0lAtEKQhPMcKiqHt2W17yqzH+7eOSlYIf7oBBwiG58+Vzos\nB2CycjDjb13sX7ynU00XRQTPm87ZhhZIfSwE3+2de3fMFqOvBsbqCvyAF9b0\nUyTyaEC+/KScoxZ1INWCbHAtDYyaftvGlCXi2elXP/CBSduvLDOuDFvZtAz4\nztF69iOX8SbhdCsuEyG2Q1lrODyvhNlD73gEernP2NDqWkYvxLu7g2B1SS1l\nysWBeV6lnE7MCk9gvxL7kzVG0Gv/AduuaLwJ1Katf3u5RwV+busg9Z6kzaRF\n2QLuGjYtpp8aYzMfwgPNZ3GuQ2ogtbf78i7lKVpp0ZRh96+KMgPb3wiuTU8q\ntPV4\r\n=k0my\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bf2e3cb3f71c0ec09d7eb94ed08c3368a62490ab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.95","@balena/jellyfish-sync":"^6.0.29","@balena/jellyfish-queue":"0.0.570","@balena/jellyfish-worker":"^4.0.96","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.25"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.4_1618759640019_0.7755556618116692","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.5-renovate-non-major-73c8f54087ef9acae5b91dd4b7379292a6cbcbfc":{"name":"@balena/jellyfish-test-harness","version":"2.0.5-renovate-non-major-73c8f54087ef9acae5b91dd4b7379292a6cbcbfc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.5-renovate-non-major-73c8f54087ef9acae5b91dd4b7379292a6cbcbfc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db2fd9a0e7e67da6c06de8e98b119f96c6727101","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.5-renovate-non-major-73c8f54087ef9acae5b91dd4b7379292a6cbcbfc.tgz","fileCount":24,"integrity":"sha512-7QcCph/ZRCAIq7kTL9jPVY4HXAC137EwUjSqANTjH8owhmbpv8646NnWFhJKsNE5NrUunBFG3xHU1gT8IbaUYw==","signatures":[{"sig":"MEQCIFKZZftVAKqv8p51u/iN+r75aJ3pzWaUw2qPkGmMsgQeAiB+sjUHnAgAqXZGqPI/iGDdIhQ+cp3pJXOPRSBrTLeiNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfHuGCRA9TVsSAnZWagAAaXoQAJ1QOClO9wjQYBwbFpWf\nS8wC/XDbbGDOiUPHtBpiIMmd4pQmKa9+A9LXPPe+tJhZFk1Itll6XFXSjRn2\ncbm+8JFhXEqZ1OnjtPr9pecQIAijHHaKjPV6Rq/33d65yFXvfIf8lTgC0tN9\nzZKQAHF8ifT7IhGjjIU/KULKyguPsObPOSJRJNCbXM981HyJizYqZ98d2rri\nD5gBVmeGy3DHZL5TaQksIVn9WFRVs5K0zwhZLEaOuK4VTYUJUC9ljrbFHkUB\n1J1+EiXimRTmSoyhUTLqkyEY7Go1u96oyWlld6sO1G4tc+SKcgD9h3oF+gTX\nqkQdV9UtNSLdRlaQyrU4cOj447PcQUWKJZXXVpPeTozcBo8XHyy7blII8cv+\no5dBaGdS9bHMZ9ccVGljkf/wklaZPFHENfJ/WrZyGN0U1OJoyUZkbZbn2tMp\nbXcCaRMfxOTDdKF2jaw9c6CYlIMdB7c3+DPi4FSQIkmzCyK7GoNdSI2QHW4/\nfOjyDESZYEl+B35S92IY6V7P6aYRyMcghszrG/w7nhFcWfO4hofjCGtjINT7\nv08C7Jj39WuwMShyAarv5crIK+JeHTU2K44k852WhILOnkdaBK+o2j0mUZRd\nA8J/dy3mVRZ/eovElLVcf0zysMM+Q64mlXK7poxYt1E4pR2aIH2RZ8xIkLuW\nG9Io\r\n=A143\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"73c8f54087ef9acae5b91dd4b7379292a6cbcbfc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.30","@balena/jellyfish-queue":"0.0.570","@balena/jellyfish-worker":"^4.0.97","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.5-renovate-non-major-73c8f54087ef9acae5b91dd4b7379292a6cbcbfc_1618770822381_0.26301132344186184","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.5":{"name":"@balena/jellyfish-test-harness","version":"2.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab80a210f2568ded2a8dd2ca94e74b247f63dd45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.5.tgz","fileCount":24,"integrity":"sha512-TXroAZrOxFSonI4TLw0qoAiY+X/cZDmu9a6TlwSMLaicQ+kE45sBexpnoalNOAKBapf3AFkmvZ3gGmnAgLl5Rg==","signatures":[{"sig":"MEUCIFShuvDESmXcFhAfcnN4ua92jlVAMJvVZ2eKSqBQW3LDAiEAgYFHXz51tYqtTd0a1DOKn245xSrVWwWn9aG0AqozMT4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84024,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfHx5CRA9TVsSAnZWagAAKvMP/3j9J56mXdEWjsl1YYFq\n0RosbXDj1VS7pNZBibN6CyCwCEk+XsPC4n8adzbSmUtKWC3SwXTH8/7XZd0j\nnfFSeMSRvmUswhZZiPkkTCbtjwnvCZCigG/3Q4Ox5D8fKjanczUbKSN4OCSj\nV10TX2tgIXLCApy5+STsUAiMqINB6p359lgEqwlq56gx5z5pvoheyiQFikkH\nd1JzvvjfQOXWWhFfn1W/qjKNwTeltzSj1gFfyl1Sny+ux3YHLgDvG3mlNAtm\nhv8/L4yJLowCec96cuXIBQcIqgOGZ5OAGsp5kcKHWQAiWbg/0cvFwgU68rdG\nSvLsqqu3DgEDBOVec659lKQeEOG5gfDteGTYmU6ID+Fpodoz65NcEFRBMFPy\n1lhD95ZASmX5gL/xszTwRhVPEHG8z5F47qDZ40xsENtxNmS480MBwx0u3t9m\nh9heElwzIeYwjYCFeA7I4LZfMBz/xOpuS5WV4HQ8MISQv5qkMDuvVVhWjQhI\n4HfENueevlpDi7ZE/0T8nCmEr9CpADDr8jELtwS692jjQTnGzezPRNYI1D/f\nFpbyVvNjzNB6TPBbvwBqtuDiWWOlbABelWrl1gK5ar6VlzhkbZ8aiAlirc4j\nK7w1Iq2iugVoadOrTEuLUFLRkwdP7RtTZe3IQph7P5G/aAEhvqHJIOtB8vQL\nCUGa\r\n=jJPx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"48be41d6dada665612150b76c61f8911054ed6d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.30","@balena/jellyfish-queue":"0.0.570","@balena/jellyfish-worker":"^4.0.97","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.5_1618771065235_0.9863529124641399","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.6-renovate-non-major-028274caa248a15901dfc49b4c4d1ce8846c7df0":{"name":"@balena/jellyfish-test-harness","version":"2.0.6-renovate-non-major-028274caa248a15901dfc49b4c4d1ce8846c7df0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.6-renovate-non-major-028274caa248a15901dfc49b4c4d1ce8846c7df0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a7492c512359c1abd5fe2a00372990f073f3637e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.6-renovate-non-major-028274caa248a15901dfc49b4c4d1ce8846c7df0.tgz","fileCount":24,"integrity":"sha512-vIJaUGSJJa9rxYNVTrpganDzvSjobR3M8OcIt0Orjzll/ODlK8F2v9CBm4xYq5W2Bz8qR5yByIvpbdPzLBOA7w==","signatures":[{"sig":"MEQCIA/PEwj2pJqsN4qzXrcMAtUozIOWvKUU/ASGxzqkmaPeAiAO1MDo5sad0i5oS/YbMpie/f45AV0AT351wLIyI9vCQA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84189,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfH3zCRA9TVsSAnZWagAACAsP/27IwSrSenWWi9n2qjaJ\nSoH6lD1P9fq3wAn3scfKFThGLL5y+Mmc8P6inTfcEpXMCBjxxgcRt/kHJdxd\nvjSXCpr7dpzgnD2Ry51inFAzXdBoyXnpwI3DYp8utZpToaw5x1n/1VqQb6Iy\nl2kcgH+cncKW2p4QJ2EZH3QZ4h+IPHdmvfegE8SiOZVqvAGWJwj0gqdmzrFE\nIh8Haws13Qlewc4bi7JWtB8MGb4L0NjGjqxzR2mSu66j2QBRngHlBgd9zuGI\nND1ijl/hz2QV/LqHfxFmFi5/8931Wsa54V5RsXzmzzrzSv//rt+qp3Asz8FQ\nCrbR4MTe3fC1g4Hj38jPG8Wh6cwISklayCqdfwxwuWdRgeAxRMwWeDjtErXF\nBWxHC+vi3WlfBcQzM/dPpci+Ep4a4bRTlG0Qua/GDk7qIN7GGWeSK2QZiIdy\nibsTVE5FVNJWvJdw0jMax0eg5XdAKdfiQHK/hl3PGM0vscTQBxriroPYU7A5\nrc1dMOfHfY38ePLJNJLY1JQNVEHmDMBfInSPPaRnOqLkVrKSOxmAK5TAeHke\nN+sKbeZIFy6q3iZNT1rf/LNXBCCh2nvsI7mYQt4qGupetNV8eoNjjswC9BAh\ng+lctMcRX92YojTkVRqEk0fUKGjfIBlBeZ1Y1rYctcT4HpZMEj7jQgz6iUpu\nj1b7\r\n=mZds\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"028274caa248a15901dfc49b4c4d1ce8846c7df0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.30","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.97","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.6-renovate-non-major-028274caa248a15901dfc49b4c4d1ce8846c7df0_1618771442902_0.05944737244017895","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.6-renovate-non-major-d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2":{"name":"@balena/jellyfish-test-harness","version":"2.0.6-renovate-non-major-d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.6-renovate-non-major-d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"852001f1a55c51afa6d6f9e3a77f985588d41e8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.6-renovate-non-major-d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2.tgz","fileCount":24,"integrity":"sha512-AwEcn4/ZBe9Y+qnTigNsHrLuA25OmwoV9qjzciuXRv+RnTm5KtG77aZTLT5RluRcrmPdMCCPOBj3nURqZJIX9w==","signatures":[{"sig":"MEUCIDyOP2W24EER334vNQVxJyNRop4PQxlbn/v0Omj0cT1KAiEAs1Vck7RaIBFwl7PQPcIU4AXzSF7uW8CagznmBoIkjHw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84152,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfH8QCRA9TVsSAnZWagAAv6IP/jtd45Oj6zkKYzGn119X\ndSA5rstTTNHGLc8lo/4gqVVpDA7ZE0zVMSB4XQqvovDy++bWRHNBPpPtXTLd\nEQPg147+oaDw4+aqcD+IAv2uFCLvp6Ms86UerbRM2Y7kXkeVSTgv8mnznJ3O\nhk1zYSJf7P1MByJgArX6y1nsduHuNRYU0Yojze/QQC+nGsrTEVT1g+SBCwhR\npJ08b34aqWc4qlaf4dQ1zxiJBAovWAzHYd2x89DrkU+FLlCH5+cB51+v3R3d\nr0+GoesJt9yyuz1EZwzcGCLSzEj1m1Okw+beoLftXBk+yuqG7KfffrHdsUM3\nH3mKDrxIXg1Y6Dy3EugGcY9/VKdylKKGoeLSrlegVdMCYEPBPeURspbAX+qr\nYKEwUirLXVuYqn2ZOTkSf/K+SxWxq6isRNiGKaKBStLD1i2AL8MW3Q2h8VhX\nsThhlW4w4toaw3DBChSFHb60qFLwOKIjhTQEtHaQRjbJzQPpZy40PwjzbHOh\n1l2tOjU5skJWEl02/AWWScrjOm5XwKPBUOLiVR3oJAlvFJwdl58YvYBmOljJ\nCAscCcwCwWgkZwOhg9ppLRPoiE3j94TrWkb5nE7mTt/Hq6ab8jhEOPM1Ic4j\nNh5BbEvHfUzGgyH1WHP47OBRtwke53WJrcNU4rWPGxHqo2rhAQF7eh6qDVsZ\nbtcf\r\n=Moao\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.97","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.6-renovate-non-major-d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2_1618771728474_0.43497885778236434","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.6":{"name":"@balena/jellyfish-test-harness","version":"2.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"77246ed3979bfe162c6aee31a2b81c9373898528","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.6.tgz","fileCount":24,"integrity":"sha512-sojLVgMXPPd0LZsgyEnZXZS0mJ27ukUVTnFGfUxno5g0/GcONI3Z1QZYG8Gj0ALC1IqRumy0xX56odxNS7lRzg==","signatures":[{"sig":"MEUCIQCDQ3QiJrrM76mXzevn6Nn7SF7rVsgppTzb0ITcv+UtHgIgbEgn5cxFgdML5ndSCkkPkcSKDW60vgwwprM+jzwhQjE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfH/uCRA9TVsSAnZWagAA/I4P/j0vE0txP9lLEZojnyFc\nK7Jnbjuf9d1ppPt/Vc2UWKFfo/d6/YwpizpIaKLDEZy87+osZjxzW4FTktTm\nhfTEUn0Q71Vx1SUlrjIhTYhmukLxz1o6ml43BF8qXX5QP+XLgnojFD64OXyM\nRaGA4aX1jrWnVFV+abjkPexMOiq+sKnZKki4JMujwR22iVTbU50vs7GWpHMN\ndqRzdYf7bJBtY/ldYqtPrdYgZh4fdu8PII/u9+/uhesvbhVNnHn+zxEmPaDn\n/arZQHGGNYiX8eLnBDJQ/x39TUN0immrs1w6eRbtw8S6FQw7v+QYiOmFvWOt\nhMXY/g9QXNKpNl9Pv9z/vLCPn0BfPjLT4aXVnHTSvhnM2T9uRQESkIPx/S+8\npARRLoicf+V1aiKlaQsqUOz3VMp7nUec/bX+ZPLN31oRjuXbg931JUcD8/4d\n5BEJNheuC1cXvvwF2NBk8CZfWuKykrPshGOx/c8w1nS7//SOs8hDo5AZcs2L\nkzwKRDBO3SwaApY7uFuuS/Bm52dUO+xxuFlIMlxLB40xAQq95/+fH+NFvoIE\nScuGjZkc6w+Ravh9MTq/jfM29Tm2Zc8TU2/2XHmMw9o8JmZ4ZTSK72U4xNSG\n08cMuA/nvhKZ0Wg+eDEA1I31sM8P4Uh0Mz1COYBcj+ReylPAG2fgHWg9Z4g2\n34LN\r\n=964f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"03f2fba666f9268a58282bcefd7c7ca39875ed36","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.97","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.6_1618771949704_0.4593187651794792","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.7-renovate-non-major-4fe5175d7ecb6a1b870814936b6e817776660ae1":{"name":"@balena/jellyfish-test-harness","version":"2.0.7-renovate-non-major-4fe5175d7ecb6a1b870814936b6e817776660ae1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.7-renovate-non-major-4fe5175d7ecb6a1b870814936b6e817776660ae1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"91c6c99dffbc2ef78a263a1d6ebf3a32f3d6bf80","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.7-renovate-non-major-4fe5175d7ecb6a1b870814936b6e817776660ae1.tgz","fileCount":24,"integrity":"sha512-WOEPCXhgVMIJnMqvy+JsJgMB+c26oB1ngrp2gswvAgNzzfJKlS8mJujXRzWTfjS8Ov630BTSv1+XheRbvXKmHA==","signatures":[{"sig":"MEQCIAJVczQgKcaUgUZxXWhleE6AXA2ZukZoOtsuloVnBVwxAiBgh7XT0zUWjyDVhIIhNqGDr13G0aUgGwit2nosMqM3Tg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfKIvCRA9TVsSAnZWagAAfeYQAI7Ayl9G8IxtqJLhPJ/B\nXpIECjPb+BYYb6DLfjfZervzP+s7lRPtAwZwdYlRKDHpoT7zquo5uKGdhEid\n6H4G6dh0HAkKZ6FPb6QZvFc8ivCpMR9oLuDTsRFB7cdo/W5t39+x6hJssp8C\nf2gUWILMglJsql9hseW/NZ7K7quW0kz31u6IzIfZ9p29Xi1gttj2+b4HNJjm\nLiik3OQeH/8qmMtVw/okEbbYBwVCT7eIprrpiiLfKnx8a58f33hJHcRlt/sW\ns65RU+dk84A3GpmZXhMy6bSR79OYYBzn6wHWGoHg63Mxho1FLKf9wUr7nuol\nEkXy2ghAMepRsQ2GUWIlqikbYTg3opVHoYLIDIQjFOoFawlEIdJ9M5bs9yBo\nwTRVVFm96N28UUVaPujBAspv92IG0wP3QyVteNTRhli/N6aymly0t3InNRd/\nRFA6oGUul3989pS0Z8V2fDNHR5LhB4UgWhzjP+YLk9YrhX2X2S8J2IXRNBEK\nRsdm4fljeobLUx8W/WjVsNvhlHs/wxe6dwKSxD2K9+ufTbjH3HWCQHUUPFNc\neYnWiEPsXh0RP96yTUGfM8zf0QB8clb0voE70WcI32drdAlq4a0l6ywFhtf+\n0SbJb+LCEhUtQ20YZ5jC+N+/75OMkWld8kequKHPESD34x/WDoubhvOCd4oa\nAYyZ\r\n=f55V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4fe5175d7ecb6a1b870814936b6e817776660ae1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.98","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.7-renovate-non-major-4fe5175d7ecb6a1b870814936b6e817776660ae1_1618780718590_0.9546662976206646","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.7":{"name":"@balena/jellyfish-test-harness","version":"2.0.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e32c14dabfa105515e7adee8ae1f7e2db010c74f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.7.tgz","fileCount":24,"integrity":"sha512-v/ow4frEetXa0wRzDzJA8fylgi7pXtOWielsE/CP8r5vRMoqIe8eJ6OcYz8JHw6/0NyIHhvjn+ndtxbG+MxhVA==","signatures":[{"sig":"MEUCIQDGhvLxxOWMA948zR0zBc/zmDXJT6SsBfLP0a7mO3z6vgIgX/5GfdqQzetAltLOY/uelVuxzyvsgsYEOsDg/R4Yhig=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84197,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfKMPCRA9TVsSAnZWagAA9f0QAIsO5H2DGcrL/fhkdmiy\nOa+tDSu6cwotmVd6SPkriPWv1EvRxl4wVvdsO2lgKHJNez/mywZj5Nk1PvYw\nXVODIrZgLrssm3zLGYBsD/Sgp6Nn/0AZeY/4LJtC/XYvMkWVjtDV//ZUHdvJ\nF38cCjcQCniw+Qhmyf0T0a+LpP7dGHU8PrX/gluJgg3WIBThHFEs3nEzqlHK\nkzjGRQZjZySUIiVo1spSSMotC093pEc4VW5J4avZGOdblLnH45JWuFitA1Ae\nTvsuYs92UrU+sT//6fZEdjWZPbACuU/obV58Prfa7tu1oAAnPvVYKE1QP/kt\nr/iJsFJ+lX5rkhxnrMsTtj/nMhKNui48Z0XQ7ZS4yuGjf3w9K0aNIO4b1Ir/\nlbRFkorle6+0nmW4/EQxxqvPlRCGoc3z9YO0N/H0Zi4F8cKlyu0cidIf6CqY\n2nxox9OWYVdfisA/gSkR6bQGuEXiy8mzmt9WXfteLSczpEW/5fzXbqk4PdOV\nf4iVAiviSjJbqIK2F7119Ea0cZDiTWyB65juLZi2PIYZ9KyeYS2k4EK6Lgjd\nHmDmtMg3BVkYTJ8OObr+CcE5en8uxZkEWfvCP8qhY2cr6fTa3bBtyTrCF0Wr\nQnDiQR4h6K6nKJeBFf8R47J4JflJO/PyqsV8DvQjq1YzByjp8gZx3VtMM6p/\nAwZz\r\n=yGnn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7a097a557a20a631668c77161ffc143d3c3206b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.96","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.98","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.7_1618780942870_0.0066122961601382535","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.8-renovate-non-major-deada33a5b36c6400ea9e0ba05d92b7af6ab2d82":{"name":"@balena/jellyfish-test-harness","version":"2.0.8-renovate-non-major-deada33a5b36c6400ea9e0ba05d92b7af6ab2d82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.8-renovate-non-major-deada33a5b36c6400ea9e0ba05d92b7af6ab2d82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d27a912b1316b7a0bfae0b86d5805942117cdfd5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.8-renovate-non-major-deada33a5b36c6400ea9e0ba05d92b7af6ab2d82.tgz","fileCount":24,"integrity":"sha512-nbSQcv/pdy2JKwhOtUtIgtLEMREuUdg5SCsHJpI+afDekjSLVaqThIDJNLH8j3P/tcMjsTkIk5pdpHuOMydi+Q==","signatures":[{"sig":"MEQCIGgK+KzRya7BoyeumGHfbHJOQkJiSZqKVWzOBcl/1qMPAiAWwtHmuXu9OU87wk74YvAlyNheWR0glGd+ieFkg8adPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84361,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfKPlCRA9TVsSAnZWagAAec0P/07WWBhHzjAzPwb9U7VX\nEa5EQhNaTme5BFgs+qnBqkaLqgrY5WL0PZbpssfAdwYgWftNTfDx9ZXUvrCP\n/zK7SJHJNA7xiKC6AqTRCq+b5xArmnvxy2tWqnooGGn/t82Wx4NHJrmsbEvl\n74qf393kt/16XkFiMXTxrgLYKieWMVkT7HmizVgCgGtZzadt6FHTrbAXDldO\nKvYOUXVjXivwvqhYe5qSE2xZORMBkiK0/hbquoyat0k9aHdmsgYZOtm4w9Yj\n3MSEUCfsdBo8WMlHw10BBnKNITMBMamgGO9sfL9ZkDxOo+H+u3UJw0KwKC3g\nU7d2XMcSVBjscvhT8GL/SZkJ2eFQypuHtwRru4Qv+TY5Zmi9y5WV4LSpc+Dv\nyTgnuCLtR0UKtYPJIOYS3DmazpHg88dPfhR0hJkWNNaR1brmDZcZVRh4uFfL\nmj3Xutuc97gp4RZLBPQFvbr65p1CL31XVZPHeXncmPHqEVf5MMU+2Lys2p68\nFm0XD6Gt8xYk3iBxGsrEmste6Km6Cx6z2V3jm1xNNCrFnzbVDqamI6pBAR4q\nkj79LjFZ7CaMYbGFXaWt4DzKMb8jTYqlP8ltVweJEkDoLx3j8Eb0UXnlnl95\nOwu7OJZ5gAzP6moIXtxyO3G9HWReG5CsMl/pF9wL924oiubEQr9/9EvwCPd2\n9X0S\r\n=FI/+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"deada33a5b36c6400ea9e0ba05d92b7af6ab2d82","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.98","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.27"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.8-renovate-non-major-deada33a5b36c6400ea9e0ba05d92b7af6ab2d82_1618781156560_0.9128715544944079","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.8-renovate-non-major-5ee101b639fa76ee088a6ebf5829625c2f523d55":{"name":"@balena/jellyfish-test-harness","version":"2.0.8-renovate-non-major-5ee101b639fa76ee088a6ebf5829625c2f523d55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.8-renovate-non-major-5ee101b639fa76ee088a6ebf5829625c2f523d55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a294ae955e3d34a5904964269b21beaaf004a25b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.8-renovate-non-major-5ee101b639fa76ee088a6ebf5829625c2f523d55.tgz","fileCount":24,"integrity":"sha512-YJOK9X+g2W1h15tXoaX4+GtFNJpsvhpxlhNpXS/6R1i/ho+Xf9hg/Jt6k0d/bKwlMSXM+P9x2Dw2Z+aF0jWf2Q==","signatures":[{"sig":"MEQCICYc3Jw5fzdBnfQE//OhHaoDJPbqXysykD2EwLnCl2ozAiBjQKQrsUEZ5fKGolR09S0cIUa4WyZtLer3Gze5Z7wqtw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84325,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfKSFCRA9TVsSAnZWagAASFcP/iNS0VBuf0oEw8CR23MQ\nqsixik0H4IR9w/ZtXIOfdmZEhlWGGh6aoPZvQbDRgiMrSmvbTiepLxYc9nOZ\nZOyl13/70W3aGoERmFvWzDddzxd11WCuy2/fz4Gevphs2LG6+vPt+Vuthxnj\nQ4RbqcvK2i6qv5wonmGtQLmH61Q7OdwWoVES+noFz9rU6vNy6xAs5uVsvFN1\ndyHrcnwfTFL3hyLxV383tQxGi62VAFWU0qe3DhG7Y354Nydjyf9tl7t15s/M\nZ5Gt3FWF2mYsq9pvKyq9jXwFQM5tcXpAdb15/oKLiXe4u7+gCu8JfUBIp8Vl\ntJpxYuEmg2syCim+utWWo+FsvpVDpo02PQ9vC+Sp3ziqKlcS9krU6tRgAHAq\nUsyaYh7jobRVYcSbpksk06mRZaI7QVkUUgk1j987QH+X3cHikVnqWtkilZQz\nNdnvpOT+nieJqLeUBRB93Btd6qIFVU/Jk00k8XwJAYSeg6kG7codBaCFzhh5\nyubSdeyAoAfqWhArmpBwvJcsekBF2xxyHSAkmhCmXlz3ZBlr2rDU+ZCAQYqV\n4peNJiqbWyjOdgmMLm86AQYxGg4L9aOncAQRzG0Gnd7c9fXPYqU4c/6e0AaN\nV3fJPvnsOxBHFbTnOk4Sk+0Lb99kkYGbBx+2u2o6fZTkU03ZHV2woSTGBNnM\nGPTw\r\n=Xlv3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5ee101b639fa76ee088a6ebf5829625c2f523d55","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.98","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.28"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.8-renovate-non-major-5ee101b639fa76ee088a6ebf5829625c2f523d55_1618781317142_0.016872396325624317","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.8":{"name":"@balena/jellyfish-test-harness","version":"2.0.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5e984074dc419427dcc3381af30904beee5ef55","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.8.tgz","fileCount":24,"integrity":"sha512-MkR7BZrt6K8Wf2fY+ILmfL5YK3JHEMNvvr72GmcffmROPQzX/YtacHcVx1v/NgFbOYKIDnDHZAk+/LAHelgIQQ==","signatures":[{"sig":"MEQCIEjgFhBr7oIledEG7Pcrw9K/A96sykiMtJEp1b1PodUwAiAOGz88YplhlXd2e7kP3AjpFZAAt3oGzNxI4td1aa30mQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84265,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfKXoCRA9TVsSAnZWagAAOQwP/3PU3VI9s/tCgagG+IJW\nBkYGQ9jKYT/dUsZY7Dg2AhuWQWiE4+YoZxS63eZFF8l6JBhrGqh1vbsdizGY\nYTEIyxz896hvMAM8VsmV9mSkvLoiRI6odgQmYkgzsFChwfhMet/xBnxBA6v2\nUgRv9nUr2BAdyn7zS8YzChueqlBBpUTkodD1tg/I8z/aYj80c5L7DVWdEvSK\ncZLbee95cbCwnNRdtx+5Tn0n64tytkfXeOYfPRMuizLbOEGpjSbMOdGZvA9i\nc2b1IgwzWlmT0Sb0q1wSgdwRXwsq6Nr8/MTmMl/TDU2iL70PohUqgqSCLk8H\n2zA69PSTma0H60iw9Nj6ag85sM7/3AP6npRRbrEI18Dbp0o79Duvmtxobi6l\nxKVOtAtVWIIuIovjDlmbKfEItpZT0PlrmWoviTLPaAdiYGx1JltQH5bC8aXX\nq0LNsCC/3isqLCA0WAO7wJ0EBBL2XQdLHYcrcJawSKjvPVT3xKOAaoJi39Yy\nJUbgIPr7okz6b2Flt9njdCPntNnlyCWnjH27p0apaw871hfB32j0mT2BngHs\nwa8sTjz+zHuKVywPkVqgpjZYWxXs7pccI1Bywz0VcuDr0efYY+LmSdzFX1h2\nuVBLrOle0W9u+CPyfn+7p70jQtxLs9ZcGr0F+jdCSVB4aGUPWuPkpJ9moZ3Z\nghsj\r\n=pAsl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c32900eb4394af2ebc984b443c6171b8427a80b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.31","@balena/jellyfish-queue":"0.0.571","@balena/jellyfish-worker":"^4.0.98","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.28"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.8_1618781672456_0.8953687969433979","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.9-renovate-non-major-7f0e0dfc718d5bedff8801b6d2b8304151fd1392":{"name":"@balena/jellyfish-test-harness","version":"2.0.9-renovate-non-major-7f0e0dfc718d5bedff8801b6d2b8304151fd1392","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.9-renovate-non-major-7f0e0dfc718d5bedff8801b6d2b8304151fd1392","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0feaab30e4a2bc50f352765583909c09e9b57936","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.9-renovate-non-major-7f0e0dfc718d5bedff8801b6d2b8304151fd1392.tgz","fileCount":24,"integrity":"sha512-gZxD6YwRt9bJ0Yi8UfKeJ2obkw8/OXCBfvzyofRBoBDEZC3aUGA3oogSudXgirzWLQy839S0jxnPXGJpclCzjg==","signatures":[{"sig":"MEQCICVVQ0vCZ4H1RGqAskYZLhsDI79H2vn6hpcpFcc0xhBKAiBHI7+bibNJOMMcmEcq0Gzso7x3udndJJnhq26Y0/UEaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84393,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfNeTCRA9TVsSAnZWagAAVdEP/1am1nC0kXQX8vOHJ61A\nCntrwwwjfqpLVt4nKZhIVrHQ4pjmzdcdzi4Hr8h09VzpTafz26Wk87UbEDPo\nQyexlYcQmxs7t75irhY2o2btvtmPbNJs0Uil+/1axa2MHWE5LbnKZSUr2Qob\nVpH+7qr/Bm+EY6epOiEHjq87qefEpFvWE6P+2us2G1rDkfBL3yIDN5ZPXfFz\nLAKaokD6a5D/GOzX3+N0hTNoj0mEIE/zBxF672CX0CJW68Hoqwbc2QCdFEDv\nk+DuDcbBqVOr6i3nWeVn67MyPqj1nddUjh+rdX43loyclr4ltYwLir9lzC4e\nVcEr8wg5YcHnHgdQy3OZ62yWPxv85YHZMaZKwxHQR+WNKLch8Rue6ZRkBfbL\nS4iPFVm/+c54Ys+klSwjcDJCwlChScW0qkaEudRZ2Kzz9X4uq0QGMTf+Tnzd\nsyA2WLa09W1EWAeSOQwaF8V380P8NuZnZpm2TlVlHrK7sv0SwZuHNN0cygRr\nMvw5pFXE2jyHOJDpdnFNwdNdcaGv435qe29AJQuXGHfwe+aejNWLwRp5Y7id\nucQneND1VYL4SoiDtKyYIVf8TYvtvI/oeYPOFUWkEzKGw/Rof6O8PmBnCUto\nCQeA5SPo9ms51p2CwRZmGeeJE7HSwFCdilGrvBU4Yqzce0PZ4Pu/xoXa+k7i\nl2GA\r\n=3v7C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7f0e0dfc718d5bedff8801b6d2b8304151fd1392","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.32","@balena/jellyfish-queue":"0.0.572","@balena/jellyfish-worker":"^4.0.99","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.9-renovate-non-major-7f0e0dfc718d5bedff8801b6d2b8304151fd1392_1618794387523_0.8773516330558822","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.9-renovate-non-major-248aba4f04763c0d2e4b50c5fd75a0dc492bb567":{"name":"@balena/jellyfish-test-harness","version":"2.0.9-renovate-non-major-248aba4f04763c0d2e4b50c5fd75a0dc492bb567","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.9-renovate-non-major-248aba4f04763c0d2e4b50c5fd75a0dc492bb567","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f01239ebba33cfb26c12f119888c9adcfbf8b18","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.9-renovate-non-major-248aba4f04763c0d2e4b50c5fd75a0dc492bb567.tgz","fileCount":24,"integrity":"sha512-aXdUThNXmYiAMHQnUL5XFrE49tAt5kfoZw1RiBJbZbKjmpfdZx1VnLhuoJ6YmjERC9Dj9NtvaMbI2e+wycTroQ==","signatures":[{"sig":"MEUCIQDqlp5Fq8tuxA33sdKmtYh1tVVRR6d6PwedN6/hpDwrWwIgW+029z+oa3Dhnu3wuoClskbjGWaoGMGgkjp23Q1xhzc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84393,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfNjzCRA9TVsSAnZWagAAHOwP/14dq2oH2mFb79/zLeLD\nckmK5NX4jl10UoImxyAKAa8xf/FqbTfRo0Xz0mrsfn0g2bvyaNW39kgrpaAQ\n81Y2cHdX22YUnajmUuGe4ZvDxW72Iv57rl0WMvjSIjaFhqJ/FokN7l6MkVf3\nAn/Ul7omOCBPOUw9eMu3ZD3k9bKv/2yRG3WH/lMkD681srWEAaY1T5PaphAg\nJQNCibmj5j5R6/KV4qwGNCPZsIPZdUZw52sfQ0xXYlTiC+7w/ihdCjpuCNuJ\nEdtEui2VLzHif9rXkzCIu8wdrDNFjJHI1TouGz3120cxUlV1Q2U7e+atMUWN\n1KNk7v8uhm2rCd7iUIHvxV6H/Twcl3r24UG7wTSdhBTjHrjGfbxQ9tcPDL/c\nStsXOP2tdFUi65srCEJ6VSCJMo489WjcecLe9daEbBk2U5EPTSSVcslCH1NZ\n7dGDiP119oDJhaOcN8FklnJXOoflNGdTuSuEaPLyZjTAMf0WFrXuvtYyyero\n53Mik/KVgRF9NYEF1W3ZwDIbQupJCjvndOerfZNH6Za3sF4MpIuPNkALYXEJ\nB6rRO9WH7K03NOFIEkN9M5bh3lqLNDASMjq+LuD3yrPSGX9qTd660XDxoxo+\nS/LgoNV5qGoDzskCdnra7w2MZvyEoWLREcsjVzRQVGb2qikwyMv1aHuKJwD7\n8Qd1\r\n=tPBV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"248aba4f04763c0d2e4b50c5fd75a0dc492bb567","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.32","@balena/jellyfish-queue":"0.0.572","@balena/jellyfish-worker":"^4.0.99","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.9-renovate-non-major-248aba4f04763c0d2e4b50c5fd75a0dc492bb567_1618794739420_0.08616412177242183","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.9":{"name":"@balena/jellyfish-test-harness","version":"2.0.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1044ed81e723e5cf5f858460bfa22de72ce7cdb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.9.tgz","fileCount":24,"integrity":"sha512-KlRdnRImZSDeoSlmup4KAbxsTHNnME0mYlLfio8LStAfZAVRT4Zi2vUOhv/L9AHq1MW+I8NAa4yLh3KB2vRxLw==","signatures":[{"sig":"MEUCIQD1LK1sCi4DfUNrVGKFhWT3N3dqTOHaJ1V/V96z0prcUgIgOOCPnkDWdRRrf3vS/BnCrKUmK/zV1+eBDeoRF8UclLE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84333,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfNnhCRA9TVsSAnZWagAAKTEP/RjwJAmG5IPhrAWlQIb4\n4j4DXEq+7VbWWwWnsrin2n171ifzDPeVYiFZ02UKe3X9zBK7wkL5MBy2kti/\naYj6XIk9dXkXqHsXZ5MjA4wnmMqjg576qP/GKx28vJeIdMlqonDHM3lfbQYs\nk6Fy888WiPXytiSczwaAXJpvZx0urPkevTU0rLATE5QXi0hoT6+MgE+Xl3q7\nnwQmzzoGY/Nw0c2+Xz0/PvME+GUcRcCrpK9d5igmiHY8EwJ7DdK4la5KL2Bk\nRvNXtpSoF0u4uRTny7wdeIHYVLVGywMYY7tgJBdsoQDgLQ69jwQ7OqOTHQZr\nFNbrShN+wT0i7coZHnyfDPHYEpf9L6vtv2BWkJtphlyo7eQMpHWuVw6uIJqV\npBAImp/sHh4SCwhi1pUWjIhjA0mD/5OdO4X0F1LEqPLhRPzWqEm4bMpOj9Qk\nCNdpjxswQ9pZAKEXrrzj3ua2cF+xeEodZu4nu1hd4+MQRXNbtOZVPBBK0R1G\nws4dW56h0rgvjAQFvlFwUesFqWw4p69FUQmmkOvmQBvodmMuOOoJxZxTNjRr\nLMVQK9FNhjC1v0FPi3IMTmhOzhmCquyCS1uUvLZ41QaeRkKKvHJ0lubO2atN\nFowthT6/27solZrTcdGjtah+lpeUAOAHYqPLtAgVSzr6LxF+RSB/DlgPlHTn\nbzar\r\n=dTRc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9fb122885d2456dec4a418017cbee1b988b480ab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.32","@balena/jellyfish-queue":"0.0.572","@balena/jellyfish-worker":"^4.0.99","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.80"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.9_1618794977255_0.3631942446068628","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.10-renovate-non-major-1f913c4019e05aa92cf37da4e866510aa8d155b7":{"name":"@balena/jellyfish-test-harness","version":"2.0.10-renovate-non-major-1f913c4019e05aa92cf37da4e866510aa8d155b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.10-renovate-non-major-1f913c4019e05aa92cf37da4e866510aa8d155b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09a4502b3c4e3e8a99009201cea449536f7d2852","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.10-renovate-non-major-1f913c4019e05aa92cf37da4e866510aa8d155b7.tgz","fileCount":24,"integrity":"sha512-R3wEfHjavNb2M0Hv4Pv4sYNPWhYZ3624tWQ6xPQN8uZ6QNuYwKOZZLo5f4ihPCDTQlbHk4CZ1OXFTmJmQg0o8A==","signatures":[{"sig":"MEUCIQCkhD0bjY9B9Cu6Q3pbIv1D16yCnG1mG0RCskHuzCzm3AIgOR52FCqAMJ5JEYO+j2zm943UU9wuvio0xuKQulNVQUI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfNt4CRA9TVsSAnZWagAAtNsP/i1biTDNchN0ZrqaCKLk\nZWwQNGP/yLsqDsdFEzw0k1vuTIAcuiUbvNZuX9feoHd9Jr9kwWiX/C0PdqqJ\nMpNLbxrrUykF86ZnTzLyM8oXpSAIdFRH5VfbhhfIKmWRlt8O3OmG26xqhn+4\n/BT4fkp3NW6I1nbUyIkCnlhOXEA0LZDxwLESuS1Rw71w4L02nfneHj2JgfEI\nPMYvCJQa1imDGxhyAUQNDB5GtACR0os06Z4UmeFhfLBqeNPQgH7xkSAYvvf/\nJT/XydkkZ5Q7J4xL6UT1QFR2gpciR6BzVF5q9x7usxsRF+Qamh2LJQmu4weV\nQcR90vcszGRn2CgiZGAEOg6R2kx7F7urohaiCjl67eex1VTPzfKfZ+AjmbsI\n+A03dSLYbXTEV8OIxwl/9sm1BD3WsZuIeBSoY6Q1P5pLG2tzI2Zq/zILHklG\n60be+B7j/bigdwd/IsInbde7AH1hLVkMXtUr6jHS9hF7IWAUE/zt+BJqbx77\nSqgx3mW91T4mqU0pOHDCUrzIc4i9QEa+XvvTDXZm9RvciUKLFEmq9V+lj6fe\ncpsLCgKoVGctAE1uSzGcsegk38qe31emu9AcxdSKC4q6YSlUOW84rKHLSaNN\ny66p4QAUztGjFKK6TSXrryUtNlpA84xAwzCcugQKcDxa1L6k8XxmAiBcS1qO\nWjRi\r\n=moYf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1f913c4019e05aa92cf37da4e866510aa8d155b7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.32","@balena/jellyfish-queue":"0.0.572","@balena/jellyfish-worker":"^4.0.99","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.10-renovate-non-major-1f913c4019e05aa92cf37da4e866510aa8d155b7_1618795383829_0.7830732597973311","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.10":{"name":"@balena/jellyfish-test-harness","version":"2.0.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad9859858ce8745f6f1d96c092f951ec6bd24283","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.10.tgz","fileCount":24,"integrity":"sha512-yUolsNQlam1/qqGXrZ7f7Z4gHBQWs+yJ0CPMUEIT/dPrVNVEJ21PGor4Nh/rtj7M3NqLZQgOqFqHg8sdKGpiow==","signatures":[{"sig":"MEUCIQDgcrqKajGvfMdZ6JmexdvigF6nyIpHxShGy8wKaahf/QIgGX6omvbxKJWTPpiG0SQn6EY9fneqEH+JOBJgSKYNnto=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfNxsCRA9TVsSAnZWagAAN/EP/jVMzrf5oy0b11X1kimp\n9N5X9X16XceKaqF5ijdw5UKuAW3yN3c4b7yKbUR4rRXIt8vkvAGac4wlgisG\nzYhEhI7lxXgCnBGw5/mz3VaaBZ7WvJGZElV5UX7eGx1wahheGUJ6WpGniI5N\nNJdHIy/UbHxXiA+SvZMdWlhpLqGSh81IVevm/8OQD4XsO2dLfHJFnSQfniDo\nDUg9tyAFORfiiFKPp36jKt6KVAk1ig7T1lB38Z95uilhlKTIJ8vaLb/+z2Og\n9BLeO54ZNx4GZwGczWKKRp1OIZbNOOuR/DNrqpXBcWQUcbiwi3t8tcDiNjJL\n7PqU1n5Su1y1VTwtIM4lN/M+G7e8YSNNLA4Se7DnsbTCmw/0LG1h9vUrPX27\nqQhj+Bfv5laRyff9R3yYRsL+mkM43pR0v4jeRABk62qa6V5z6XyMrjMho7bY\nzQvwJVt4zF8Sf+vLhPpdnAAf44Brk/MA7x6eR7BHMjxZcIZJ8ByPC+Rvd50l\njDxzmgT1stQuT8LCy+uCQmpTeKcb8+0xwrNMQw9h1h9O0fRnFufLrolSOFiU\nt/8ZCvOV56HJi4EzwB2/34v76qW79shF3JHZVbn7WjQVXy4xrljwkTwIAHr4\nkCIB5104jsZV5FguErKHckUMHrsGmAfE7SKCqspP4P6NLf1NazSXugcIHq7S\nKN1K\r\n=iGN/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"241623655bf9d19632a5c0c32c35d13f0c86a322","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.32","@balena/jellyfish-queue":"0.0.572","@balena/jellyfish-worker":"^4.0.99","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.10_1618795628435_0.40849702518304754","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.11-renovate-non-major-45a6a0a7a3d43c981cf0339b5e4411d5477f92ac":{"name":"@balena/jellyfish-test-harness","version":"2.0.11-renovate-non-major-45a6a0a7a3d43c981cf0339b5e4411d5477f92ac","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.11-renovate-non-major-45a6a0a7a3d43c981cf0339b5e4411d5477f92ac","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f279fadd4f83781444823ad8fc5f6a1e09c84717","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.11-renovate-non-major-45a6a0a7a3d43c981cf0339b5e4411d5477f92ac.tgz","fileCount":24,"integrity":"sha512-/zb60+eiQZccYSepu17UIBl1+x4TYxVS05FuU5ck0CH+ger+vUc9AM9GzDr5BeZi+FxkDSoga7bY7/SzN5+8OA==","signatures":[{"sig":"MEUCIQCFFiuQNyBfAHpe/5n1a5cYacmAgwSl9UYYUhvgpOms7QIgWOFWYYQF9k5dT5d2i3BDsaNdToS3uWsu0DaLrmcl2ec=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84575,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfROGCRA9TVsSAnZWagAAMyEQAIPX7yD1x+2R6NMSknso\nuRc6KiXuECkm1l7Vj8GDJ7WTht4GFe0JBosL/LNc0Bd6N+jKYtXJM3RzPlgZ\nH7OkypxXehjqVNZOjvdkpwKDoYj0FJKxq9php4ihDZOyzmlUFmIRIz7bXBvU\n42TQ9oOWUVxdIvq64H4iO2bQMZEOCJlEgjfmHmbQPZ94tSBchX7ILY6O5hvH\ndE0XxRYd6a4D9CbIwtsLYV1kt2YN7aHoGs9o9OAAUzL5O5q/DDk4oyFiMPRx\nnjL7grd2OGuVx1UUVOk0LqJcSdpGrWLBqS16lTjAX0g/uNsjheU2bwT3gnng\nnoscyS3pJgWq7l3og+BCet4cBdN9AaGPZtIF58X7wT8s35/VQE0Dkqniku5d\nGShOv5g2e8bCthMKjE4WLIf355QgUsONPQ3bQzniJBJrCBOh0cTDC3jQi9YQ\n2ygFOCsZMsGw68jtZ8nIOeP7NQJyQ3ohw1dumVq1lo3bEBZBaoAdVY0VMdPd\nmdtvm4zR3hmopo/AgAtqVq3n24dN97TmlmuOb/a6AU+arSn7JteUSUMPhRz6\n5Le4DxMtKVL7fdEVm4Ls9GSUO8kKlUgZucXbRFZNpdyYK4eo11NxOaL836bH\n+eOuO3Zh59mAlxIvTY3fQeOYcJj88B6Eha8lJ1MBb9CxT02MK+5372UKps4g\nK71Q\r\n=8uGA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"45a6a0a7a3d43c981cf0339b5e4411d5477f92ac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.33","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.100","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.11-renovate-non-major-45a6a0a7a3d43c981cf0339b5e4411d5477f92ac_1618809734092_0.367069756735634","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.11":{"name":"@balena/jellyfish-test-harness","version":"2.0.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30747b442c3b31357e89b8e110f63f484fd9e622","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.11.tgz","fileCount":24,"integrity":"sha512-LodbpDfxWUKgGQCbEXsNhLkaP20BhNwfYpLyx+6/yflNM/KLGiBhkNI46CY3WfxN8migA7oKMA+LIo3DvI1Hzg==","signatures":[{"sig":"MEUCIQCUQVmPJ4lc10uGNr/PLnLT+0ekqdcm1C4oMIerVqa9PAIgZKjteTvBZxaVd4huVOvL/WuBKhsj9p28nSh8CPvswDI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfRRaCRA9TVsSAnZWagAA+1AP/2UK0/bfYZlg/9v7Jm6W\nQIzHoIvlI+I0ctapt9SulqVGnYmuJU1HhyaNnHkNevnN0+d4qxcTn/FDsPt1\nyRYo+hOyHO80yiB0q31czcEbui6S1F1WySnoLgekXI9kgbA8qKu3VYEL6Sc2\n4wLYOvmTn5M1oHv3Yb0FOBP23vBrMwyLxvQAmd8fc5KsxRW78mMm7s5C5u62\nm5ZfpJzWoujp4x+FSKlSTJm1lQ9jiB6YmbSc/a6re+3TypuR3dkRhRLFxCSY\nT/tTExbyAIsVoNuXrZKVNmpBMSIi0avEbG9tzIuxqP1+5sNX4UndVFVtQ4TI\nvp0Li+0tqI1vaKEPdUksYOLMSkL8FH+VfNBY8caAjcgWShJGvHwHFr3SJhW+\nkZ5YO86SfSb3mtBZ6jq2CDFFsIgPqkGZf192mzb1xew0neYCFs34yPcRXR9q\nyhrt23hEDpEKzxKP0+aQ1GrEFxnNbGnRLuDp4HrGqU0rtW/qXaWhUcGrJXBe\nFAU32QSU9bhECKMiBBdp1zvIo2gwGSVz8YQPTMnqYzAr6+lxaT3mB7Ae9wlG\ncPxfzIDL0UZKDELbmLmIvdDub1hhmMUnH6ublSe9anFVVFlDbmnZ3wvJpEg/\nu96oB90hocjMVkRZTgZh/UdB4+YkZ6gotIepRtnBh2kNvmim8zzxVe8XOj4a\nOlF0\r\n=8rmz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e5b2ab18f2c43fa01029792d5d07656e5313e645","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.97","@balena/jellyfish-sync":"^6.0.33","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.100","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.29"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.11_1618809945940_0.5625489582119747","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.12-renovate-non-major-c841264c8957f0f9aa01d44c37d81374264cde6b":{"name":"@balena/jellyfish-test-harness","version":"2.0.12-renovate-non-major-c841264c8957f0f9aa01d44c37d81374264cde6b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.12-renovate-non-major-c841264c8957f0f9aa01d44c37d81374264cde6b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d27fc0513b968761f889227c4b46e6b1ded7cc03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.12-renovate-non-major-c841264c8957f0f9aa01d44c37d81374264cde6b.tgz","fileCount":24,"integrity":"sha512-GNiTtslhZDCHwO8ouerzTqfzvlDdOieGK13k8uGuvmP+Gxmnkqn0wQ8iF6uDJNMuwzUdckoeyN79njnc3sau6w==","signatures":[{"sig":"MEUCIQD0yoAaCqaAExwzK4SQW8ymoGGQk3YYEEM0BmBoGtDSxgIgfY2VGc3rMPE21J8CNSaUEdHZ7NOXoHMwot4kO9YXGB4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfh3vCRA9TVsSAnZWagAA6yEP/RwW4h1GQL54xv1ALcNS\nHq+KozQVGxNcSpRprUh9g+4Nf8z9JOuY8LAiX/gD6GYHEVhA/vebWa4XUNzM\nvW4Ax89B/NTz2Vk/L3HiK8y4ZPUgxqs590UKtVgyD7xe7PK9QqIE3yQbLIs7\nZLnZrR5P7zUJEa3TVvaSS5r1cVwW8J6rWqZggQpTsv7Mxiiclkf26wm0gBV4\nHNX8UnySh4RwsCx1Bz6PNXpAtmzl8rcJXcbwLUuhZbIYL7qXT3kp1Yc7ZMKZ\nICh0nDa0OHHJNuJdNZdYeK3JxaCJpuGbjD9iwTA235xfkHR5Uj3bXz5fbI9e\nI4MYHdiwzY5YMsOTRzwwyszxoJOXCIGwZaPmyL5z7XKxYo3dKEwtb86vTvXd\nGacKULBJ1hfIMj17BLY6x/E/eelbMEDYwBfdDxZuRat65J05bIp+4upLJ5Vf\nRqeK59kH0X2hKMgZhk7H2EL4v2Yegpn9PSjuotc4NmVc2+birUQzxpEBtuLR\namKhWK+lZt8TA1ok9iUJVzmF8voA6xfblMlGdLi6EMp4jPwlq+Y6IJ6QRunL\nfbR+fvUxAKPSUj4Jph4+cPLIh8L8k0yVBBO9g+VNkczhgB82CRC3gY1HD8Ss\nTTkmD2e1BFn9kS9kukZgYBDufL/FiXbQvMdsz3CyVq5FQEtV5TEq5DyyHvnK\nhBdU\r\n=MI2E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c841264c8957f0f9aa01d44c37d81374264cde6b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.98","@balena/jellyfish-sync":"^6.0.34","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.100","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.30"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.12-renovate-non-major-c841264c8957f0f9aa01d44c37d81374264cde6b_1618877935463_0.2584595099744198","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.12-renovate-non-major-92b341d99d5420b4c40df248c640cce965465c70":{"name":"@balena/jellyfish-test-harness","version":"2.0.12-renovate-non-major-92b341d99d5420b4c40df248c640cce965465c70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.12-renovate-non-major-92b341d99d5420b4c40df248c640cce965465c70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f1f9f252fb5db1b093117bb327f9121f7c02084","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.12-renovate-non-major-92b341d99d5420b4c40df248c640cce965465c70.tgz","fileCount":24,"integrity":"sha512-Xgbw99pjQTCx4VxfZeL6upnN/3VPWquxQjJQn2WKplJxNDT2FxZMFXq1nc5yFffkBg5ZhU7J/lUdWuvNX7dKAw==","signatures":[{"sig":"MEYCIQC5rqmgwifIutqtSpxehV82ow5SUXP/MLK+vAMYsoKlxQIhAJ9i4j4R6V0HaI3q979kustgVKfCbLoApmfe7JVXr7BN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfh8NCRA9TVsSAnZWagAA1ncP/003wmFIvyJg3ZmHsA2i\nuLpMlkl1wQuxTppQE4aQuSr0lUKVqQlwXFXMu2g6h+fQpOCWjJxDTcsDdExa\neRUt7KP9Cq4/fVhCdc3fxp4pZt4BWgnrNYKYQYtG2y1vGr72Qk7EI3Zmnw1y\nPeTRPf8BhQClIhzzjHRNtFlcE3gvLomUDjhrxABiHFUm2lDBRT3vRU5wbQvw\nJCjqWAfbJBPgvUKc+cb8CEzzHEvJ8nbFdJPWBN4TXsg6O3kxsy9jZYAXnb0A\nCQHJKpDV+FYkuZ1XYhHjtXnUbu8fNsjMveX+ITe3r4pl6PE0eUAMrzLAzM9b\nvjvpZ9PIg4lWvvkBdwxLUXShpDPqUGPnADllS47y11MwW/iQVwtOUK3D+RdA\nPew/uz3CIOsfCU/M9DrW0MSZ2pMQI+RDGS2ZzQYimOeNn+rhbsHWRZcO6QWH\ngTmx89rGHP1bfW4P1cI1OnhTuoLt1faiS6Jujl1QcSL9+ekc0pkvOagkvNYy\nDc1jLH2Hgt2lCwpT9g6a+15DkmZvO8sSyv1JlRugzRDQ+jhklcx2qzqYfbBf\nbiiaGTF9Z689A+yQziPS97VLuruI/IvviB1/MeSntuqun9k8DkctayoByKyU\nqhfTSSqUTzQ8oTDQ3Jj36Er/GyEAhIl1DphrKYaGGVTHN8Ql6apaapAVUF9L\nERJJ\r\n=tgZx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"92b341d99d5420b4c40df248c640cce965465c70","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.98","@balena/jellyfish-sync":"^6.0.35","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.100","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.31"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.12-renovate-non-major-92b341d99d5420b4c40df248c640cce965465c70_1618878221474_0.23854869533897727","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.12":{"name":"@balena/jellyfish-test-harness","version":"2.0.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81d5568077e2ba2d568ffc015c1e0f1be1d1bcb7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.12.tgz","fileCount":24,"integrity":"sha512-cEoE72ftoL/XJ+spj8NsXCqtTtSvS6mptwxD/nQ0lv9340TWXW70B94htYzEmwHZPIcfOme1du9WxPoZSD6qJQ==","signatures":[{"sig":"MEUCIQCdvZPyq8m5dc8eeoafhxLqdvezVZBGfrKrNJ0HevI1/QIgd6JsNQFFJYs4acSl7p/VL+6C0KqU10X0EmHy/bb+8/w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84584,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfh/yCRA9TVsSAnZWagAAAHgP/3T4lq3YsvAROhejYzQp\nKCtGZkNTidtEw38QsuI4BYKnDIJj7JoU4keqho4xet0NVnastrfoqK4U+mJ1\n6rZGjY05jojmQSwSy0NQbpHDm4NyZY0Np1AcGxa6h1AobsENpjqrRfNvYEaZ\nl+HII+xir3DBW25YYotDkZ2UQMA3QNS0tXNMXOT5X9zJy9WdjxIk6SsYd2T1\n10ZhQh34ziOBg9BvUG3lLiTyveovkBYZzl1VgnoHxq8JLVZnBVFiJX9LxXju\nTQRXKsYuIRgW+a+g/SfHU8U0SZ3kBCrZTOjAszTb6lEF7S2+v4MSEVNZuCnF\n1qO6mpB17QvXzNg2+dgzRWotLQkMfv3Ke7yZZRh+/mjorkvA679U22Bxratl\nQ7wEzlxolmkZuYmLlLJdi9Rofua5cDdcipnAnqEN1/Wop4BXtTVowCxhWnm3\n+0INHKWMf+ZA9HoYqti+aaYbDQ6VgqbWKB4aDTF26JXAjCzyXmI6WwUoXxGU\nNnEd2SvOe8BgbN1QyNSQZJDbQ0umBa5ENIAgQ9N9Bddu1Xjz9EdHOMdcT2Kc\nIWiEqqrD6b3gAP9buGzgBB5a7pWumkiMwD/wyyp9RwDsg/rmARytPIM12mSU\n9VhDEfkpFyCp3yU5PORvRbaGnHX6dqIWh8HAoUZXxPJwMTJPALP09QiBrzeI\nAbBz\r\n=YOq7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"08bef8a90774d01551c969859b95df70113e3164","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.98","@balena/jellyfish-sync":"^6.0.35","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.100","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.81"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.31"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.12_1618878450128_0.3873276722675496","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.13-renovate-non-major-b4f37db3f497524dc78e20a0dc4ab8128dff7982":{"name":"@balena/jellyfish-test-harness","version":"2.0.13-renovate-non-major-b4f37db3f497524dc78e20a0dc4ab8128dff7982","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.13-renovate-non-major-b4f37db3f497524dc78e20a0dc4ab8128dff7982","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00f47c589bce7110d24a9c8cf5f6353e87341dfc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.13-renovate-non-major-b4f37db3f497524dc78e20a0dc4ab8128dff7982.tgz","fileCount":24,"integrity":"sha512-Mr2E5pAVQE0OepN8Yx1AupRzd309X48UFVXiJxzohS64DjrccKt21moJnA39S1wp06ls2wyOwOlCfv13zJUrMA==","signatures":[{"sig":"MEUCIEifiZL5kovBxstL2chfHqJViBABE/++8BmkWuvBMgseAiEAvsYP2K7Hjjo2bDXsIjBNw5fmmp2vpYvhy0IeqsN5K2c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfjuyCRA9TVsSAnZWagAAOHUP/3EvgI8C5t/QOIi9m3Wk\nJAwaK6Y6ZtkyBKwHyE2i5AnO42ZClBASn67e614P4ZXEXbrmbwDxbReShvcu\n6Qf/24teMGhFqRefRSjAJvAYHmOIr+3z3iReShyOQmKKGdDiCjY15NeoYMig\nsaJaKWrx3QeamLS0NH48J+AeU6fhnNSYNrr58xrFkR0pqypvyq2lEB9JcKzM\n0P8LO0E0Y8c403/RIATnoIm6pGLG6FOJQAYcXYdPLUgj5PGQ5hZ/V2wZEUzR\nvWkyamrlsz4TXXXmLsiQW8rjcnnIn+gC2hI1o/jIU/NxBZuO6FpBcmvgu+Dk\nTuIVXtKfVH/5j8WJ5Hl0DYFRTS2PblOqiKlPIptlqA09fZr6VqhEcJ+1IBnP\nkLsPmPhRxBuKxIUU0gS8kc65ehAWrAtDZBHQObxDTOEm0kfZJoRWT2YD2yeT\nrTjRKZcbAg7HUtOnk48ukmcSjPzlky9T9/3+CZ+CDuq2WQb/LKvthm9gepUi\n2dahla/h+TEeSWHxrCc2QDdn0nHgqjN75O8i1T1hcQAOXFVeHF5Tjllwt3cn\nbb05cj9lq7SFIFMVv9yO+BrFhw1IAJIBM7Su7nmJg03TsCoUEjR4rdMjuy53\nk8CDroTkVgw8cwKj62keLyKawKphg0OpXsAolDIpaydHApYufAuBjYPaV/FR\nj5n9\r\n=EilS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b4f37db3f497524dc78e20a0dc4ab8128dff7982","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.98","@balena/jellyfish-sync":"^6.0.36","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.101","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.31"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.13-renovate-non-major-b4f37db3f497524dc78e20a0dc4ab8128dff7982_1618885553532_0.7455697220348287","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.13":{"name":"@balena/jellyfish-test-harness","version":"2.0.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d39344eac107dd2afed5b175aa6054eecd7aae0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.13.tgz","fileCount":24,"integrity":"sha512-mZaP8tB3A6PS9ZTH3i25+P3Xt6rKcUR9okMO40qjKqyuhCfvMFtBJHZhDfsP/seoBS63fN5iPjFtJq1+TOf7hw==","signatures":[{"sig":"MEUCIQDJDOi7gsvNinYJGy5mVeySknExBeJK8zJqwW80ySyWLwIgKwwVZIZIlLirwBQMcBhGqmUmbk6fYkVrit/L6FAC2wc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84653,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfjyGCRA9TVsSAnZWagAAL24P/2JoRxCtlIlV7tc3uu77\nI5yu7qdZq/T2ov8lJ5ulMGFp0T/BAjjb+a2LLe1YeOKyewMaKyfBxHqqEh+F\nLPDLNkhDy1HitBR4m8qDRXnEzErgZwrt4ExqxKLaUb86ZU8+ffktwuKo2S1H\nWKLs3EFfdIgghXZDBsMiBR2VTWRvgFNZ5TY7wEy8NSx1mxkfYVW9+NJ4gv7Q\neRORBhGNBlm9Jd7Z/H9ILciboUeGFpYNElPAnpKwg7Sa4yHeKbCINeXjk8nS\nJXTNi9NSPMrxBzwqRPz2BREh/TmwET3Ql/dPqC3QolF7TzPjtRErY3jT3KbU\n0fJAABexWTO99UBQkXb8Z+XzEpUqLJlY2lg04U6W/RmZNxRex6uFWu796utI\n+T5olnN2sse7AkmDHQV3LGnGYZPHb+oGNLjlyYfCvLYgWxjpyK4AhaQYrPqI\n8Z0nA7QQ8FSTq6zVxdfDfJSpTuErZHktBRD9JWjhddXt7MX30AH4atcdIL9Q\nXfcIk1tntWRRAJJNTPg6FmsYK1Jb/OXHvXIXgogiqaCoifeDAAWjFQLKib3e\ngj6M11l5fm3Aa01drN0kKaTBbDs4jHvEsAX95/WPs8M1f4cFEX4u7ehbxZeD\nzWfRe7Bgfy/PvKmG5qDZ9RO6Gqv6M9LINPttKWJRNsLneWBavSlQdLEhkp+G\ninnw\r\n=GBsY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0e97f125394eaeb95ff338ed9e4e2c7422c7ba65","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.98","@balena/jellyfish-sync":"^6.0.36","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.101","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.0.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.31"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.13_1618885765757_0.7924372212864068","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.14-renovate-non-major-af3f1f8c03228a351f35734793039e322698856b":{"name":"@balena/jellyfish-test-harness","version":"2.0.14-renovate-non-major-af3f1f8c03228a351f35734793039e322698856b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.14-renovate-non-major-af3f1f8c03228a351f35734793039e322698856b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"244354d826d4d7dd325ceebfd8ff17b5e4d2fe42","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.14-renovate-non-major-af3f1f8c03228a351f35734793039e322698856b.tgz","fileCount":24,"integrity":"sha512-Wyio4qANoOJICS+BuS9qruz/QkBUpQpI5Wm07WINni72L9zJmy1jzef0QTlmEMnH4cBTzLX7yf7W+rz42UwRGA==","signatures":[{"sig":"MEQCIA+tJaenYx4s6AngvItafKUKiIEkLWZuvSSfMjpQ25rlAiBkBet1mKSuZpfZbtFw2ETMbahi4tEtSiZk956OJb6oAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84781,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgflUECRA9TVsSAnZWagAA6yMP/0cBtHpsbXunCNbLpXnY\nXCnTerHDOiJb6sgCRPYEfIRHgfDyWpMYrjkuVzelne5Kvv7hNqgDIhZrugvH\n/D6nPUNDDT02/1xRaVTi/iXAaTfopw9RuxYef+xWG76orbGfsQ/mYMOSm37A\ntkS7FSfRH0Zb/ysF8YxCn0HGCTzHBHjeqgoF8U81QU3zGsfCDoKx7df34mf8\nwUjJ8hIj4onIsoJegC7/rJkbcltzYADV72sE9emojvL/OistcMfuwoJhxd0c\nR0m00E+vp7UkNmVHGU/NBADKSsVWYs3Kvx7HXaIM+80UESVjC/KXeZcNwvZ7\nL2fhORaNVd5z9vNB41lBvkXufjVNpLeINKf5Iiqmwwrhsxb1zmqe1H2rNbaI\nQ/jL56bECL0M40D8Yfkehs20pDg468Ty/GwlxacGf5Ewe59ZqfqDvZjfl2GX\nGDgPj+YHlwb/ltBdc+mzYIgEYAdhQsFw3i/h4zhA9zQfiugt57sXjuIB8km1\nlQUs0flG72rwNz40eLpo0AIxUPpWkDAk8viZjiyqDDD9Pz2FjtPawVtnHxs0\n6Oi0Bp3ifr8PQeozoTQbc/5dUgbWQn3Z4B0EpWc3FI8vEg8STTp64QsEk0up\nrqwwQkhUmf88OHmmeHL5DUvEdbTMFIkK8lJH2Hd4RonBL8WEgsklsRpr5Gvo\nGtgt\r\n=07Dh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"af3f1f8c03228a351f35734793039e322698856b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.99","@balena/jellyfish-sync":"^6.0.36","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.32"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.14-renovate-non-major-af3f1f8c03228a351f35734793039e322698856b_1618892035569_0.03417247272934931","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.14":{"name":"@balena/jellyfish-test-harness","version":"2.0.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de8573ebc9212c11231d5e2b71c90bfbced0dff0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.14.tgz","fileCount":24,"integrity":"sha512-qZxc5NkV9IJp4WHPvtoX/hzqw51X6yzyf4iiLa61bgld+hGv5f9C2Dp6fxLiFJL+Kr5cCRaKznOFux0wGQi55Q==","signatures":[{"sig":"MEUCIQCi2vgjFUQO9S6xcPNT8G1uV42bjveqeZywZzHi3/1lpAIgcdbpGkHVdFclxnR+exbtxhQwQ4GLTHQw2zpUyd6at0Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgflYKCRA9TVsSAnZWagAAR/IP/j2uOj/yH3sckY8dH9gP\nqTwBRsRFqPXk4ZjR2MzuDgPlHej4K05I+kv2hIaxRAjqreDz/TKG9lse/kr2\nD/a0WvW3cXZ3f569sjWZ5H+3Ny85sXlVydqNB25DphjJAV/SskexULRlye07\nL4Ix4C5W7yIKOCQq01Py3T4N/9PWppRT0u0peIJLWFYIPaQZRTSPSSZBSHgk\n0e6QhNTqulpJD2ezIutBNVSv54TdL4m5hDjum7IB/Iw4IyUDJbKCPdq8KmXC\njZ8+2epZ6lg5NQt5yiqc+URf0jL7qZ6v1SBkSecsqAPhpw6xFxPasVP2KL6K\nH/qAkT2yXCMwsBrJAhe+nS8czExEPKAPrnIjbtRNGhbU0rAYwwb/3QMIunaJ\nrjXHdM8LQi2uUsejwFTox9tz3VCqEU9URnZ5Ujf9vTnIhSVTgDF88a1dD9LM\n8NplLPIhX+d3nksiaBFLRU8umWvh82sQrQU3R1CYotHdqBVW1o+9HxCXoxVR\n7CQET/qkxLFhIlL9WxVWAN0H9KFLB4LT06LtR162Ou69gYtzuPllqw+/W4KE\nsGVaho56JSBfu5lCizDdjOXGPDYV/+J86gipePVBof2oqPrGX+xoPnnhvkPN\nqG34ExJgS2d4VPuWZ5exy60QISVy6iMy10gddlHTtzTHR61qcUMJ7wZdVuLR\nqDlC\r\n=5NIL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7dc7b81a77a50de8558708c0b75f962b04ab9d06","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.99","@balena/jellyfish-sync":"^6.0.36","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.32"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.14_1618892297586_0.7178980685448755","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.15-renovate-non-major-d83107571fdff3956eb5c11b37a75fdb32da8b24":{"name":"@balena/jellyfish-test-harness","version":"2.0.15-renovate-non-major-d83107571fdff3956eb5c11b37a75fdb32da8b24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.15-renovate-non-major-d83107571fdff3956eb5c11b37a75fdb32da8b24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"129613c5af4a8fb48d98bb778fb1cef9ad12f845","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.15-renovate-non-major-d83107571fdff3956eb5c11b37a75fdb32da8b24.tgz","fileCount":24,"integrity":"sha512-HLW3vAuoRNhx4oCe0yMlobe3nUTw6rmQudgW41rzwIKYHtdAczZyAIZXv+BxMxL8MqcypdexDj/e5TT1fZQvlw==","signatures":[{"sig":"MEYCIQD9TgJuL9Ld9qoH3+f7+SV7tz/YctTpV09JcPsOOSWw+QIhAOp17G8xWHDNQhFwkqWZDV1Ih43rw+T1p+yFw84qgyup","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgflcyCRA9TVsSAnZWagAA6foP/izsJQAoT++fikzWYmt6\nRw/UZlQSIuCHqEoBD1TUdO8kivX4C4PJC/gJvJ7ak1+bYIl8AzO5Gy5GVuh2\n6UV0wXsr7qK6Xii5ihMUAAw1QvApn3RCYlSsLnV/MWgX1WzpwTIPnaO9bagT\nSN4Duhpw60POX38eGxkJDn4KHmYzwKEQxoBxW20r2sf+MUMCScZRLL/H1McZ\nvrixWfKlLDDL4tmAwaJAyL+X/LHMaizwzFxYTxAEzgHjkFLJg4ho1C06B/Mq\nt7dgSfEScWPikTvJJo6qfja5jok2imlX9Fm/lcQWrHiDILG4Q1mK3YzQuPWs\nj3nsLHHyNSXrW1tNo9FLapAPb0UmiH3YEol5TRwW/Sll1YPlSs7n20EeasdC\nSMvksmxntCePSrZm3UpyCiKCZo5Sgapg1Tv05ZaL3dXNxzrThQzQKk5aVNDA\nSBUzJcQ6awgEZRONIEOZK/8hGzk3L8YpCh1tF8n+U9YtyNjqCAW3VBjLDDXg\nMmDe5d70Jk3QKFRa/Ku+FJzgjOSfuxUdQhSJJqGxy5pveBI1ftPQmZvzUojQ\nYX5tsh32heNXFU3ZXtroStl/k30xQUa41dXwldw2i196DFnQo7s9hvGBpWEq\nT4P7Cw7kaYIkTAiuYD7qf/JiNkRb3lN7s7yYuj/Ljgodawqvv6U6Ax5bWWhu\n/5ra\r\n=V/84\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d83107571fdff3956eb5c11b37a75fdb32da8b24","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.99","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.32"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.15-renovate-non-major-d83107571fdff3956eb5c11b37a75fdb32da8b24_1618892594169_0.786518866911422","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.15":{"name":"@balena/jellyfish-test-harness","version":"2.0.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"febc68954c8477b24039531701f10ea1295ecd20","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.15.tgz","fileCount":24,"integrity":"sha512-rezkbe6fOAvv6q7s4bwT7cQq8LgA3YZTdHVNzzAMhamGrhIq5O6vilkf5csYqOpxjSD+vH8rcD4pvna5s+vqJQ==","signatures":[{"sig":"MEUCIEt/KJNGdVu1OFKK0fXbFVJMfvpb4akGO7fjqDnrJQQDAiEA0WqtEMZ+KYFUYbOg7mZ8RnDKyT0ktc8UsXKmhos372E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgflizCRA9TVsSAnZWagAAlIAQAJWarIbLkiSUG2k/cIec\na3wSpbWl9EN8wshz5XZ4Gl8Y3qz3K27/2xBH62AIjbBBXyRkHvh81f2qi19a\nlWQilY63C8C0Rk7cr8Xah2secJ3vXdtADJOIf2coK7sXFyQYH+uTD10CBS7b\nbcqq4C/HjipYYSj6iFl1uHSBpudyj/3Wtk9YiLlIlMEXeaPhKYMVZ3Vc9FoK\n3X+hmytcNRIhC96dpq0vaVT9PRzp2jvhgqWVWO+N8sgFnFnxDfPgLvE4Ux6z\nNEZ+MBkdTOIHDwCJagns2sxcS7Hqxk52viTHCbno4q+BafRAo72PmBEXbmZq\nFc8qMrUcVaTxyFE4drhPC6e/wOTwWP/nsJh8jqP1biMKdmqiPQnUEIT+PKWE\neOOoSVaFrT8DINeLCIpRM1/700XSUkYD2J/G3vt05nWSo5lM+DjQ0+NtPbts\npS9PPoxD7Pi8CNO8/1ELq5ynFPsEgIp5YJEas2rwHp7J2mrnrNiW3I050pzk\nrBmnsfsz9I2Q291GX0VD2K1iNI6UY82Ww0nbc/zspkoyhlDAZr+wcGY/C5CT\nIrUttL6s2+zxnNmneeIjE8aLSo4S81NqsYtVG46u3UZcsFiEGN339AHYQ7GP\nmAFjAOCed7P+0xT4tqcUuFvqA2w3ByO9C+Z7ehjMP0PLHE5A1+YxnYKNY0Dk\nSLFC\r\n=9GIt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b4f7644a9b33ba87b25a012995b1b6b67c849829","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.99","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.32"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.15_1618892979100_0.8042113686006815","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.16-renovate-non-major-bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea":{"name":"@balena/jellyfish-test-harness","version":"2.0.16-renovate-non-major-bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.16-renovate-non-major-bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3a5c48c79e45d0ae9f3906fe47c1762ef27bec62","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.16-renovate-non-major-bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea.tgz","fileCount":24,"integrity":"sha512-lmEo1+Crk+h+tZULC+mLj53hT96CjTF0Ujz6yXzTVMAsJ7Vee4miN4zqORKZvLx6yiBu89Qhi2qyLCgnaDDr1w==","signatures":[{"sig":"MEUCICqIEv6NhquioucP7nRuD3K94QwtMsMQn/uPhc/mEQMyAiEAidqgkPMm/i66xk1DMxZEjqYkN854vjQewBh6pF8Qf9s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84992,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfqLnCRA9TVsSAnZWagAA9K0P/1YQgumbpZT9DL7oLNsO\nPO+nf7EFCBqtJ29w2lDSmRBg6lv+txBUhLshe+dItBDNUAjVoEolaRIW+m4W\naZBOhL6ycnc8kDX6lV027iU/ejQi+jAZjCw0nw+oNTGa/OTqwReaKuhUBUJD\nI9cX3DMrmzu7dyihFVBHctagZnZJtsdItcfwT6bRZdCD51ifZ9Bur1MyAIjm\niLt49oUQW6wOLFnzJXQaMvSs1b+BEyXN0wT0h/EmwsiBwdNhZWV7mWCGw4Zv\nSAfE5NiugUS9pSueB1Rau1s5j6bGN4oTxZIEgsaiLFfQR7+kOhfdbTDn41At\nQdnSV7VSVhCGpmxIFKSmRYr0LGHS7m2UvN4z7Fa+OAL0qjQB9nbHe1zwrmcY\nffpS6A5Bacbow4cZ1N4l4XsLmUiJc7X4+FILdPosrXrz3zw0CHQ+z7430Ybm\nkBJSLQhAUpwJFBGw+w/rI0RHDmJqum5yultBvqtfEPdkfsImM3NxbCpL/VZH\nsIH6mgaO7bWeqggsOEmdeHAddu9RyWgT8CEjLB4QSTvGUXCM3YyHPRc1vhI8\nooTg0HqolI31rVQxTr7CJniAG0JzObi0x2XVKDuuX6XD9qZOShHX3ERSFiI+\n86/4z/xcc6kdY3Vt+hUNHmiN0hVg4xbkyLi8E0oF64RqZ2wgXYCZ0eh2Zn5v\nKuHU\r\n=6kh3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.32"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.16-renovate-non-major-bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea_1618911974868_0.2635129995192307","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.16":{"name":"@balena/jellyfish-test-harness","version":"2.0.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"24a0cb1ea5accf6aacf60c5955a84e2be746891f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.16.tgz","fileCount":24,"integrity":"sha512-VyFqCDpQ9hK5QGywkYeY1c5xstPUGdhqzqbi4EPqeyiI483YTQ/ildtzv/YbHesspajRAyAeolRJqvR7PsCcsQ==","signatures":[{"sig":"MEQCIFXnnEVNB1NwV0sVBYnvbgBhuynK7tE5u/4fP9hdCYeAAiALfSY29PNuxUQhjBuMekGDg/0J8jyd4rEFCH27ofAInQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":84932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfqU1CRA9TVsSAnZWagAAR1EQAJGVlgXv+A0f4bnsEfdo\nHLriwAmj8Sq/Cxaqn6PNyefKQWHxbauUqcpDHeIRkp9e5+HgEuHbykOs4HyO\nnkwRrIjQ08hZYCpwrkX3xt3g5hpdy3cDQPSt6Db+vMsk7rnxNTpBMcerl2ju\n3JHmxRwIuWF+tKXodTCZp0YjbPaaMOadmkFoKBNxODqOGvYrLKgPs27vDz6D\nAG/JgLaoV9uogfHQZ7XaUz2GSLxAJP2OqM8at9yiqgSG6Up2bTRlj5zLXrvN\nACTtLAiKl/XSvoniIyH6KEj3L3fy4I5D6Vbm6i1LkbOA5NnNAsMtum6JHH7Y\nlQ8K9Nf0MZxpxGLS2Q1cMkSuKBq//cQGZnL9dGvq2TvopSoxo25aKSfgl0Vl\ncVUWyD/YWyGEqq3f5rNIQPo7e0fJv9FXZFf20Kpk90kaEtrxVTOdEXLWmco3\ngA2aZg+UfXOgCeha2pkA2LBe6ECyjp2ayztBIQUCRGKGOY8wtnNTCS83syfB\nbFfI771FktzgWJJ1tQ0Fcbu//Ueo6vUgeHgmNl+0hd1HgPhutiPXcAw/cdTb\neD7Gr/YdGqg+/0KAgdNankP5DHsO6Lqm8oGh4NNkO3tiZlgouXGd+NF/pv1d\nqc9uXCf+RWDUu9jIVHguts7dp9izgyRrKE0uDv/C0kb5tIEm2SxsQzKDITrr\ne2/I\r\n=DfI9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"119ed6ca1a2bf499936901fe97ea533ab30d129b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.32"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.16_1618912564174_0.5289808619929173","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.17-renovate-non-major-b3205727cc6bdc61d9be03b881204c8540bcd1dc":{"name":"@balena/jellyfish-test-harness","version":"2.0.17-renovate-non-major-b3205727cc6bdc61d9be03b881204c8540bcd1dc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.17-renovate-non-major-b3205727cc6bdc61d9be03b881204c8540bcd1dc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30f34f32802574aef68fa2195e980cb5dd970ab5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.17-renovate-non-major-b3205727cc6bdc61d9be03b881204c8540bcd1dc.tgz","fileCount":24,"integrity":"sha512-v8mgABuGiddl+xp/ihSlDyV038WAoDi/qK9dEaSBnlI/AxJa8x8WMfMKTyJTv6PG0CzaKMlVP4ETe0Ev9sTcQA==","signatures":[{"sig":"MEUCIQDLuMeY8qnuC9R6noPZOirER0q5IXu1PTb4GRvyTP/OkQIgHHkFjlAd7SCMRlNtL6xKZJVkLpA+MlyZxyrWRP+fm/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85097,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfqsACRA9TVsSAnZWagAAj0cP/0SN15uFieEtb8jFQKBx\n0u+Dh9je2Qrqmb0+y9RA9WThJaEv4bnkD+Qyw+X/j5QioKwYwsOFWAg+iDr8\n8VRdZakBo4n7UNFm3fLSo0QuCG8WBJAlia2RGIiFFxVmzKj2z4WySjZnGrAZ\nfXfkuGc45JVBqHHrEmFI3puu7YOV+ciNLasuvZgQF+ogh2C25ttws5hikKW1\nkj/ANiZbr7YgHujjLK97muNHZhITRH7XtyYOuOCCFE6IdD65tf27d80Qr2u/\nFc7uvakzQJuflOlGeZlAidxJcGxYjZNsfSISRhuB+RQB4TbATnmF41o2Adb+\nGSyFsrNlDwWMOt0SE0uuIs0aQcFVLexETKsmSY1c7OvOmI1RnrE1sCrAMPHN\n8WABSgwWrWZGJFj8SjqcVdkNOfxy5qSLm6vxxpZs2H5yGj/jnLZ4TzLWUGwI\nyXVdgZ1DsjHIrN1olTtU26EegiyyOedmkNNfIIF1HMNrnWN008oLj64BJ8TT\nsbUQXfN86B4B6TH8Iavpb1R5kBD4fHYFFAcmEgY5x7aCCsasLKEoCkIWiE90\n/+94lOJEM5JjCsXp3+H4YevmnESdC0LNdHtPAo3a6qbJ7HGvW2HjiAEOHpdd\npL+vlFfh6duxEHK0mHczewgdMY5rqIgszTvdESbLULhpFKyldOg4aqE1jIx7\nqdhh\r\n=Fpnw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b3205727cc6bdc61d9be03b881204c8540bcd1dc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.17-renovate-non-major-b3205727cc6bdc61d9be03b881204c8540bcd1dc_1618914048140_0.31572751873417526","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.17":{"name":"@balena/jellyfish-test-harness","version":"2.0.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e2b277586699cfb8b0606961a29c2f203b146cfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.17.tgz","fileCount":24,"integrity":"sha512-rh4nyCCXKitY3dJhM57kxS/n3p3xFLa080y2WOSnigUZbO+IrMnv1EsF8j5YrETUiyeOOqdbvPibIPshLGVerw==","signatures":[{"sig":"MEUCIQCH1e4kSJ8r0K3fHTsUZHlsRVisR+j9hQnBrYbF+s40jQIge1/7Ulvny/LgGcu2nNwY8z+rsc9nT1BRAs5BqsCparA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85037,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfq1sCRA9TVsSAnZWagAANo8QAI8BwsOGPuj+P2CIeysk\nENb4z2AXhA5ZML9KWHTlWTA0jCz35ehVzAU3fDwSe6XHNNKSmp2nSKIWcMOC\nQy2+9Gq8VQNtkiRwg8eNf7GByKqmJ3dl9FegY3F76fKR0HyTB8iZ5BFmWY4g\nI2MZQqRX0hBTu0MlrlO9Uky6bNb8ecfF9+ofnWOjS9Gq9c0V4nMY1rxRYodB\nvk/bzmnfHpqzDdzjHNXq7zLk4lbMfi8xMVzW4KhheR135eiADG53PyAtwMgd\nbRHs6cFhelY5EVIo59ghLWoJfYSr59PI1ahpBJnjHCDiklxzr9cKqP3CZF/J\n7Z0z+WxsYmc5PbXO4f4LfcXD8rY6ID5G6es85NygWj/nv1S2h6diBJeYoYEH\n1YckcdMJWdB6IKXsQN3pgHjNnMRdLFxehK6/UNg+GGW5YOI9gT5+93X1ciio\ngQ9p1mr4/052EFWMEJUVCWlEgxAUygeXVuz9Y1IgkAEMvo+vezxg59hp2EEq\nEZY/jKEnc0nAvGkB0ClD5WORr6PvHvYvCXeepU3H/9lW0YGfs7L8/jJuAyGY\nEKZU0PyNslVkgAxJWsdsIjMnQfx9+TrIReAuzqYi8pF5VVGx4J3QRi9MuFB1\nqg0AZNIlLGIY8lWQY0c9D31Si2/HUj+QLDYS6NR4ZUOfh9SxL9um60EDJVQB\nn0o3\r\n=FW5l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0b7876e754ee0c148041876a59a7eaf55dd71526","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.573","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.17_1618914667724_0.6251109367416903","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.18-renovate-non-major-0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7":{"name":"@balena/jellyfish-test-harness","version":"2.0.18-renovate-non-major-0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.18-renovate-non-major-0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d0b1899428e8c3ccb3d5ff84690c7ab4f3ab2e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.18-renovate-non-major-0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7.tgz","fileCount":24,"integrity":"sha512-kjs1VHzqxpfJgC+jjzwP4G41hfkLcSlaiYFp79cygjJqBy7+yZ5/avcEHN/P9/hip7wWL65CvwL+yo2SI4gZfA==","signatures":[{"sig":"MEUCIDRR9absj025JY+GDZoNlHx/uvCWWndrrit0pOIqseHRAiEA4cfE5/Eb/Ed3pjyTVMrL1c2HxfUBrJltaHehUGFMWKw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85203,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfrE/CRA9TVsSAnZWagAACbsP/RQZf+OGm5BPfqROsKae\nt1HmCSSU7haSzHOx/ddzBm7/OKc4cfS23kPWZBgqZFrrFjz2sSgg8CWQQZOW\ncNx4nOqF9Yq9KGS2jBQU/Lk5u0tSl/bFPrVEbVi2YOVdQLBxM2Z8298gkfcd\nZ9J4sKIv1ONiSZTmcRzKKkqUlB4wRKPNgQofBt7bptLypet1684FPiuDyEuR\ndJCPdSzgjpc+MnD/pp5wanSAVtt/zKzGRAZ7nbh8/gLTWhRgvEiIYTVjW57v\n0Ek8/L0q58n70W0cRc4301+iN7SVmmT8OPrybIEvzRF1kZ7MZdj+WA35cNIl\nBn4r5RjclZP3/9t3nx4tj3XJvFQmqQo+3QujwYboAvF8Fwmu8/dQgnc8IbjA\nMotZs4nMPnGDWcgNlXVTO8Pph4yrRo7FtqJ5VxYxREZ9Nu1zAPVp7LFwOLNW\nrCtqSqveZ4vio8/yx5BLU37PwOpMMuv5GUicTuGa47VqrdD1UTi74tXjeWOc\n5zXti5hzNNLKK7gKFkm8R72w2WzA6MoskUZAyTUENu5TEgQ2uDhNOZUSeaxP\naKSPWQ5bVC1lzIgIWx9x58UIuo1pMxPOd2O6I2L1qHhBptwvs5Xj8rksjtm4\n7dJMo7F37NE2MozAepmkXhj//SCfBVBDp5bSTxR9yctYKbB6NnpEUSk8w403\noU8R\r\n=4+v2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.18-renovate-non-major-0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7_1618915646799_0.520882751621067","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.18":{"name":"@balena/jellyfish-test-harness","version":"2.0.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39c9790e6f83934ca6ed95072331c2be868be33d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.18.tgz","fileCount":24,"integrity":"sha512-X3511DWij7N6QrSVQjCEPHz+wwLgb8vC8sY81zkgekHur0WbR0JvlP28NGXrcYYp9oGNtsHfrFHaVc7o7rxetQ==","signatures":[{"sig":"MEUCIQDToYoV0zZRza7GrxUOCVsJaOi+Z/SOogGZQyYCTluBAAIgPNTJILfueg6BGbgHK8eGM/DgOVOR7p1nRTxt33h8LZM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfrWxCRA9TVsSAnZWagAAOsgP/Rx1MJzU+TqdcqhI4GPS\no+IXiAQm/INi3UOvIdN7Q3PlahHfn0c+xdb0hw8hoCEp/m1hCRQWyk4oo72d\nsnSFRVApta3/2EcDsDjUbEs4lIIf2wOAT3dK8L9+k0oMr1Oan57FTK7Rc0D/\nB8DGyogjQpjKv8QrUcwJUMC3d3v5DZRcOaJUseA9nhQbOvda6LGTni++CvIt\ncFgc1VAmVlyhDSW5eILCF6Qzbb43RIhcVa6hbxtAxfMHRAYQ269mqleQQVWa\nnQ4UWAZgWcrdYtrL79b3FE+NT/ik9ZKHNiPE8J3hHvHEpTpWRHGXl/LLeGQo\n7MZwi9VlIbgTC1BUadHvJDHtKphDRNTn2+EaR03xHBEbWTjnxbnqzykZ1m10\npJxAqwDiYcdEr35wH3/SnGCbjIQwDuEtU/gTd7INTUE4/fHwTmrmKS0Ysf+M\nwBkEQCxShP0btdTk6e1d9zUdA0kat3C76nq9rEJeweiyQqBSTa9AR22yAnZv\n6RpCej0OkzGWgS/pDDz+cPoNeqOfJkOuSTBtCyHQjQqNMNfubqGX/5pIynDw\nichW9pvkJXaKbeeyXnLf4KXwmqzTI91yvOYX/SiIlp3fFjh6Y7SX/WPU2YcD\nZt18b8hEvlOB6gMQvwhwSAOxJ3vwVMIBUCJMqP/pZvQ58x3sWWPec51F1GvV\nEx7R\r\n=+ptk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"26d8b8bdc8b176ca2d10f97a8ab2105a7348cbae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.37","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.102","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.18_1618916784786_0.536226673238362","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.19-renovate-non-major-b6d41a65d7d262d52be34738be2be18c50f873a2":{"name":"@balena/jellyfish-test-harness","version":"2.0.19-renovate-non-major-b6d41a65d7d262d52be34738be2be18c50f873a2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.19-renovate-non-major-b6d41a65d7d262d52be34738be2be18c50f873a2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6eecd8be32576797380c3f364520afdf95ef24ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.19-renovate-non-major-b6d41a65d7d262d52be34738be2be18c50f873a2.tgz","fileCount":24,"integrity":"sha512-Exutgh1nJ6V568ha410GDuiFDbUiTkeKHsLIv6pX6nhmyoMXMUNTaW8X5Qy6BwA7GqvTAPmPzOQ83Ml0akjsew==","signatures":[{"sig":"MEQCIHgmdG+wkGjqkqzbqySmiGkhoWGKm/SJEIkNjGf8d2DFAiBolYbqt/ePhOD52NSnMk24FjrWtKxxm4DtGsCwHYi24w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85272,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfrsYCRA9TVsSAnZWagAAec8P+wfGjjlk6aEaDJdN7OiR\njpD/fxFQy1YRHmI3wT/VfhL0Qkmk7b3zl9fiDXFlmpJEHaC7+40oNF5PDnno\nBX656m7M4pbvYVquUdUPCEHTVhCd8ka5xdSFAaKMiUWKA7TNdIlV4bwr/vZI\nZif8DyDGPvc5AA9OtN43LPPkvkKOWwqu8ZvDfoMQm0AfNod13cRsmXOstlUK\nwkZRhnIPxz7kErjAL47FJa3wYWaAWZkyrHYsMiRfsZurCKAEoVALsZEFAFSo\ns9SY8Y15q5Tk/Dw9ch9IPj6Nq5F2gCwDUZjpzeTrz+epAocQI69qC7uzseGF\nlcG3yyS6H3hW8EONATdG1AdBFgq0LDehxIt5rQpT8how17ffZ4jaKM75lKWA\nrs5Z8AMGlt2CPM5TJpmQr2Qgm2r4LEizBi/zYPAr1r+pVy+IufX549FTlB+D\n8eGMti9CopEaGqvaUb4tepoAySTN+pwQ8ov7qNFaPvLLw7f7sSUqCrnlqI9l\nhJTu6JvphYuEPA0HzZ6iM9qnCl7YbFUDDT5Wm6p1skOYRv9P7AcUYjJtUGrU\nzgHnmrEJphsmTUTSOkOIA//IvYgtIIbY/1pj8Qg33advHDTm2nHRUqLNtce5\n2CcxVF329e6qZy9pD6enlKXC5hbRz6Sl8l4+H1ViWBKN2W8WTLlptuncBdkZ\ngt5w\r\n=oe+2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b6d41a65d7d262d52be34738be2be18c50f873a2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.38","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.103","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.19-renovate-non-major-b6d41a65d7d262d52be34738be2be18c50f873a2_1618918168103_0.3087851112062625","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.19":{"name":"@balena/jellyfish-test-harness","version":"2.0.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.19","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7bfb0ce1dd498639bad6d1d090513298898b782f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.19.tgz","fileCount":24,"integrity":"sha512-jJLV0ag/9mEWU0ZNLK4egBWE8vJpJHt7s4F8MX0tFrgpvEn4wN0hkJwbxJ9frY4RTEfIsVikBk3HFlassLLqgg==","signatures":[{"sig":"MEUCIB2b7vsg3Sh5KKPxQ1cpP8vclVFaQcATA5vOajC4Pbv3AiEAt1Sct5b17p/Y8GzQ3+94muUKuuB2hAAbO9XqFCVU2qU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85212,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfr69CRA9TVsSAnZWagAAW30P/3v/Ld/GEwAd9iHdzJ21\nABvi0Bs/FCd2j7qktILOllST8jIppV4hoej//+9JFKZUJj8CvtsTfTfh+zcX\n4R5Qcr0rqfeQ8ci3I4RyFJtEvJRHJxG/x2TKSHLxIze5mViu438ZO/+1zcA9\n6jDdlfVVtVrnXNKgR114G/rMwZJYT26PkZslUKTeMApzzTAHGS9F391I37xV\ntJHXP8duKoyZKAhufuWqZ9Z2rTFedbcPLy4ZhA5CKYNHW/4yOwiwj5ATR7V7\n3HauGmpzVMipe/gX10kYphaWGPYzcFR7F7Py8hk8WR9y1/EpMaqGA4XMp5bG\nzHTDCNwxBb7/ZruBb9kpqw7XIi+S6Xucj4uYYbgNfKgDIjnwIR4E2zQ2hP73\nd6OQCk+8fhykxxXaRgwD5dlqOJyP/IwY0DgZw3xmDS6desSn/xSUynGUIq1A\nK1PYfSLJbbwooiV/vy/9ut4rYBQ8oJ7JCgE602GKVkbNaXOuSWiZlo8Ps6kL\nn0v2rv/i4SW5OKGFgXo+POq/DwJyXpA+PotoiFAZI/Cn2BIbU5QZ2GDQjvIt\n80pNOm3PhZCbPJNovWtgIp1dr8iLVFnnKFQWhH8rzABlYBSHGsWObLwPat5h\nihl5G+vQWQGJmfsnHllXgZDUKx7keMAMemt0MkgUdwb8tAYUj3dQPz9JXlyK\nr5FN\r\n=gL3U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"18cfa1643ac88ec2898ab434c9cc2d328bb6efe7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.38","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.103","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.19_1618919101145_0.9216999383192406","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.20-renovate-non-major-bb4b2a45c0e79c569ca6325de4d7e65839676389":{"name":"@balena/jellyfish-test-harness","version":"2.0.20-renovate-non-major-bb4b2a45c0e79c569ca6325de4d7e65839676389","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.20-renovate-non-major-bb4b2a45c0e79c569ca6325de4d7e65839676389","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de1b4422af0458a1542f64880d3d69886a296620","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.20-renovate-non-major-bb4b2a45c0e79c569ca6325de4d7e65839676389.tgz","fileCount":24,"integrity":"sha512-g1p0KHtXWkB2gGu61rQ+SFSVG0fZzvqGykWXWL+Bq45rIiL0gFZkzqQI1GsVqfQov78EggVYaNgmUX7V7AoHeg==","signatures":[{"sig":"MEYCIQDtoa7Wik8DLQCbEWBWsm8LTmjm46c787c6DY7VxTDaqwIhANefFn8V3V4zRNfglNWTXABMfrc1eAsI7kaecsmf6Efa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfsTECRA9TVsSAnZWagAAuZIP/jeCR/slV0/t5NzHZVPB\n3U4+rbtUqraT6d1Ou2TkMGpoO2PcHmdqnFxSDaa+Bn1iUcK6ngmovYSAOita\nh3CcvhCNacv2Dq9jdJ7LeuIB4elf5SmfRzeWNJTDGZQg5VwvF2XizoOb/HuS\nd/D1pBwUKXHnqVzrAWsE1DBlUdzhifyCMlI6uJo2C8GbXECJtGwvTjnnM7zs\nK84M+r4LAze/z9l9HhDJWw/t313Vq8Sd/a8jMGN9bMXXaC/dcXYj5hOnCUts\ngpR+4zdmiu7VI8vJ5u36g0DMARz4duo6RsOoILO8JeSO/tA/qiAZ+OvXLNEB\n4rLlGEZNNOV61YU4rJzLFhLhu490F4fV09Zdj2db6zKRRnEalRheCr0oosr7\n88B0qdGzxyZhP3paZYPb913kEbf1PWaVEF2bBGnKscY8zvPsP38cqI1yzy4E\nXbwSLtLhIfdlfmshnDN3HgmdzEap19uMbcZVMl9nmgoTreDWcCWArXjvjLo1\nLjjq6cnCkTmzY1lBCJJOGuP0Csl9wqQ72nlGOQhGmhgCTbeXO2sIMLpM/6fK\n4cV+iHdWgAoFew36j7Q3BJ7ZKIK9DgbnbSXGp4C/TL4exF3v6LNQ7tgSaReC\nTM9XRevWuB/DrPZtJyd+xhQxY/j3aLIIfybXFVk3iXYxO2yqoeLRHtfDe6jh\n5yjR\r\n=J64E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bb4b2a45c0e79c569ca6325de4d7e65839676389","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.38","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.104","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.20-renovate-non-major-bb4b2a45c0e79c569ca6325de4d7e65839676389_1618920643573_0.2025161706427645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.20-renovate-non-major-40f739af22a76cead8e5464f74b0cfd8fe16cefb":{"name":"@balena/jellyfish-test-harness","version":"2.0.20-renovate-non-major-40f739af22a76cead8e5464f74b0cfd8fe16cefb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.20-renovate-non-major-40f739af22a76cead8e5464f74b0cfd8fe16cefb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"473e70eed3d219115862cd7cc912962b49f3e16c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.20-renovate-non-major-40f739af22a76cead8e5464f74b0cfd8fe16cefb.tgz","fileCount":24,"integrity":"sha512-1gwdNkecnu2zIm9DNt3y2R+lRiXctjkdXJq1uB2Qw9P/zObzWcXsnLzkre1CkNJg8ONAuN0018yBdhGJygET6A==","signatures":[{"sig":"MEQCICsUkSvvgNT3DWu+w3tG+j4Gz9gyE0zifcGuyfIFX1MjAiAH8SgDoZkeFcbMtwQ8dPGoEU8A7PLfItTbfVYCN52W3w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfsl4CRA9TVsSAnZWagAAX58P/1yubtlpf+L5gmDj82gj\nR+v1BGWwxG8eGSnYp1LU0wl1EQ4Tru1i1mN4Q6eWa1GzBdPtfU9JAfG9AjFA\nM1NBg4AU/FEXkeDapt60JwTV5slIxPnLasHGfIWMFC2SsBaGAUxXCukgVkBq\ngU5cHINsEWM3SWmsL7vcA4PQE3P2zlbHqmeaQhZ9u+Ox6PDUv0AkF2qGJT9H\n4cGzInitdYVUwr5x940kBDjPXDq3JYKyuU7Co3YY0Hg9Gs/z7PZmWIpUazrK\nQxRDl6H+wEIVe8wlJTr+p7PUNd04WDT1qBB8PmMbvqxvK9RDVNJruyPqwIOY\nT6H/AbxoUxIf5FAIcPvKkSG101bbkvWQT29593m9afWocuZqmmhyJeaWjrWu\nHlFN0ERd/HE0Ww6IhY9bzw1ARJUFl8oQShYjdutDBjy5Yg/8lKXuomkT4Qhv\nfqrYAkXqESTFEV8FMRQXCn4UH0SCntceAQ5/rXedKYyiZoKo7VU9mw8/8xpW\n3bytlWUAKjOosfySNqpEDbm6LtEoTwqWX9RB9v5jSXRgyceMhRW+OvTP+BVj\nn9ViR/0/x7PUYykCweQ1Qsyc+sSUpgqUCgthnllaoJsEYXep9zBtN4bJxVk6\nlK91bFMLlxNrggvLNY0ewUeE2dII3bt9BGjjpjY87nJ5mwNdkrm6knNcb6eI\noCLu\r\n=EzBk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"40f739af22a76cead8e5464f74b0cfd8fe16cefb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.38","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.104","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.20-renovate-non-major-40f739af22a76cead8e5464f74b0cfd8fe16cefb_1618921847953_0.10415930188633915","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.20":{"name":"@balena/jellyfish-test-harness","version":"2.0.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.20","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c3fbb4b023ee0e68fd2c53e9e5207825dafdab2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.20.tgz","fileCount":24,"integrity":"sha512-/nrTczCug9TbPgmhLGmFnbe3ZfTu7+JrSEnL/kK+PshICmuK/BYIZbFBYux5RENPUaWz4MDyMDk8Hjs5FdLCBA==","signatures":[{"sig":"MEUCIBHZkQAfZ27SrpUsGUNsGQJGtejN8B3UyMzXj9oGbbS/AiEA8omNBxVKxyS9h6DE0ZekomV3UPgjLgCA34LrEArOnsU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfsw+CRA9TVsSAnZWagAA+bgQAI12EKMX9Q/lr8g6tFY4\nW8b3F2LjOmQFoZc51Hxmu1sn/0TAfnwX3yjwPMlKp5xycdNi5b61qeYVayeY\nC84Ih1i3TGs1ug08XbpwifezciCkyHMogWZX4JmmznPJpXgNSWnkvzwz2ijj\nih2mzJjqRjDZ+vlOaVe2s14nVKOWeQdjKMlGyk0Zi92N/+zabSjRDBq2H+RS\n7+YxPx3PV+0T8uk2nhAywN8yFyXNftH20lqaQyTW6cs4Yaw//tv/Atkf1+5v\nLpB4/DEyAHv0LRO6yi426U8pFpcLjgDe75zzk8B8bodEr1e3TJV7VY5++rRk\nsedH8Nhv/PcsbhZ93wGuos20gqhQ3hjwJwBeUqnVAJg01Gz0QW9F+X2fEccY\n8ARqSi1as2H84wxAuw2fkHwrPGXbbtHbh4V/0fpEV18JmA2jGqg+doVWb7Fb\n9Pl5vgtz6wD+kVPnaG1cKUBebpHIZb/323EUIwuM8/5gQt2FvFm67Rp1IVsG\nQriPlrPv5kbcvlBJJs33gzMGfwKFgFgwMsu9H3zstocQOvQMGovXBu4wtbtX\nWmPBBA7sUquFLqrvnYwYdrZAaRFhu84GHv5ZLBiE/MJqAT+r4+oaTTozAInC\n87anTLln8ifAXCI2A4EPU/sSzaJJezob6hW9NUKk452HMJ0NpA9CsffT2Etv\nTLP9\r\n=x6WO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"354edcbc8086e38ed54c19035256c11b41f1f7d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.12.100","@balena/jellyfish-sync":"^6.0.38","@balena/jellyfish-queue":"0.0.574","@balena/jellyfish-worker":"^4.0.104","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.20_1618922557811_0.488030279377236","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.21-renovate-non-major-53e72b3af936a2310691ac3030da3c49cd279bc6":{"name":"@balena/jellyfish-test-harness","version":"2.0.21-renovate-non-major-53e72b3af936a2310691ac3030da3c49cd279bc6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.21-renovate-non-major-53e72b3af936a2310691ac3030da3c49cd279bc6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"862045279acf74eb0200649abe403336c1b23232","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.21-renovate-non-major-53e72b3af936a2310691ac3030da3c49cd279bc6.tgz","fileCount":24,"integrity":"sha512-o6hA8KlLmiTquT0XWNJnyL/CgbES4z32y+TTlChqiS7Gqeo+Z2MHYbF+Sg2eCkhF1yRDOIMyWoMTPMf9U4kpSg==","signatures":[{"sig":"MEUCIQD6nvrq9HEFo6XID7r5mvXJiHIlig4VzWSbTYmufqCFGQIgYH1ATXdK4tJ7h+MK9xDPAtGh5CiR0kCBfpNX5DvZ3oc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfwOVCRA9TVsSAnZWagAAWxEP/32spVhczwttwFHTrb/r\nGOvmiMIeFAFKj03XbdMz6RiVqfcSRFc3FKboxlHTMwskd1U3hKhVwCDnXEEy\nLmGVntOpNzr4KLhQr8lmKrtFYguEFlodKeoC0vgvv+90OtxVmlTphykHPc8x\nr6U1cj148FPhCDyCWW27Qgr3L/uyig6XIbrvuO9i2x77NfHp2MQ/JIE9TiAk\nd2iU4eiL26ksTJD1XU//QZkZdjcnUMnvoT2OXjvcGkQMq4XoWJX9htRLstvS\nqQn2M8Gf3gf3WvaShe5OsZMgoesL0MS+iLKPhKFOWdl5VPIlBNOuOuegXRUc\nzqovPO762TVEiTLNkeKUwivIR9SraLcIRtMJe+AwhqMZOMN6paRghqlltM0u\nf2n23fyQp9/eORYC1yQyimK4wkF7mcLgySmFqfCXAVc4zfGpGMlc/FWQaUzO\n0ASSNG7gPP/q6gZS/CEKLu8MeyjHddS+nirQjgNoSDTvZ/tRB+jZjtXOGwpG\ncpFob63BjwAcPxM6X9CrtSdE0D5afwfVyb2r01nlNFxRSeb+5VDIW+P28Sym\nDGTn1JU4jzDHtZYpN+GdsDz5eja1MIOEXid2QupIn7rHj5vUc+5gKjdlx0YU\nGP7/4ZcKMVp1MPX72whIAhzrqx8/EGklB/XdYn802tl30R02KTA2Rk1sOGYT\nhNvO\r\n=wYEi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"53e72b3af936a2310691ac3030da3c49cd279bc6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.0","@balena/jellyfish-sync":"^6.0.39","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.0","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.21-renovate-non-major-53e72b3af936a2310691ac3030da3c49cd279bc6_1618936724859_0.02846679836350674","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.21":{"name":"@balena/jellyfish-test-harness","version":"2.0.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5116064c63f66d6e41c224b8a79079ba1ce709f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.21.tgz","fileCount":24,"integrity":"sha512-OL13xOKVCUX9l8wM8jM+k6gQ/FF3cpG8k2Dqtl14Xn4uTBDC3ebq4+qvXLn7qkgpQBM+skSiA2dt+1rlHHGoEQ==","signatures":[{"sig":"MEQCICBrQsX9747KTGLxDY5T567emycH1cVzuQPB4m5DFCQOAiAZEuYxdtB9SH8gSrfI4IPa3CNUMO/ZOrk4ccUWywmLxw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfwR2CRA9TVsSAnZWagAAq3kQAKBlFZbvlZT3loUC0aNz\nU9iJDcnZ3cznPPXKPzT56aoGrVeuMGZWlbvNjIleRcDTvfJkOsiB51J4Mvaj\nDnOLPWfdfU0cI/yNWcYx/PfZaLhKCn0XRYl9gaX1u4TQVZQunQY4Vt4NCh9y\no2mGonkOsARjWHYL443xf2vC5LTCyHA17TWlLTdwONUUartRFEovEsog/JJS\nscXfIbKprNKUlxEIzZB6j1jfwOAjlBkt7TolimSUQL2Z7VXf3CRxuU0HTBnY\nRAEE9Z9N18ZEcAcRDnAckp+DsZdFhR3zGDxTKmU9/bGWAgKFl2/9Sjr54M/u\nAbbB1z5zB8vlo564z5MWJMlbA2Xpi3hI/deGInlLQK+gb7tOCBBGpq1qcl0A\naRJGmnyr2ZTmRn3thgU7idQ1LRZGEAoF2k6dSiZoAXJtxXD5Zx1Qanhd8Kde\nIyJomv0s4QmhCH6LoGmU+qu50ojGMIUECTNC6LBOFzCyE0VSQR9Sbw2cUS1Y\nAWZFhtWUzR3BxE9gpaeAqKsUE1CgX3VnMfy9XmCYxU0zKjDhfVQmm6Jm5bWW\npchnZXn+Tgmx7Fxyxzd5HUGyxARR8EA4/WquE5CWk7r2+Reu9L6+Zhyxh0lG\neEYHAE5k8wrjDScW53RUy4wX7o81Mr/glArNdBZ0+0/m5gFABO4VOILOu9zZ\n9+Pb\r\n=DlA/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb1c25bd04ceafb72551e55d66ad92ba8dca5370","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.0","@balena/jellyfish-sync":"^6.0.39","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.0","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.21_1618936950062_0.9069396771796865","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.22-renovate-non-major-307098c86f02e416a4cdac5aefdb1a5ea34f9b16":{"name":"@balena/jellyfish-test-harness","version":"2.0.22-renovate-non-major-307098c86f02e416a4cdac5aefdb1a5ea34f9b16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.22-renovate-non-major-307098c86f02e416a4cdac5aefdb1a5ea34f9b16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fa3ce454fb873ecc3dd969b75e27053b2ee44a2a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.22-renovate-non-major-307098c86f02e416a4cdac5aefdb1a5ea34f9b16.tgz","fileCount":24,"integrity":"sha512-phff3vapQ/fpqoWePM1uT1HkaHm9KxZhToFcN1ioa25TWlI3a4EO40p6YmfT/saNgFiSaqbzj4g9E12Tx10fvg==","signatures":[{"sig":"MEYCIQCURTuztUhoBMY9YmSrToHcZYa/lz2dFjkPOQlxRdNGkQIhAOW+3U0WW+IC2XFHNMgdWRMr+hUjHmW34Q9K5fr2KOf8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf0CECRA9TVsSAnZWagAAUnAP/AulCivKxdmhijkYzSAP\np3i3+X8IGEJWc5vugrE1SEiEnGHxwi3dh2iORzXfoSUK0w5iIrCUCKQ7YlSV\nTPYW2DfYCOPz3zWXPkhB6CsI3e+n8rUoZFt2A1pDZ9MiLwNBrM8g698AKM6+\ngsYkiTNt6S4EnXAzcl5YjOzRwgVE8FN5RpSEdJcFFWi7KLViWXOZQU1FCYGc\n7e21/81msKquGDF0yGE+RtZeJirx4RV5egmWW6PwN4ubmffCmbT3ShcrkY3h\n88Q/bN/jeoj7DYwtq0DDDp7rnZuKOwx+TR1Rk53pBeaR1zQfWZdhhn+AGqai\nTHA2kricJkYeGhwD6V+SHIdn4LeMc2JG7ffuSMAhOHmG17y+Izsp1kdqiK6H\nj4Q6WbGUr2C1P6J57oihzay6JqoeU0tIXDaGNJcpfdGITq7mrGCq0lPH3+lA\nckd74bN5H0skTH6cS2wZTTU8sAbC1rzLvr5oubPEFaZ5ICRqdCSJ5B45y7vf\nPFFLEYbHfon3vyScvR3jle3li719hObjDpAMMtUIq/Q8KRr4fAQSiM5FwU+c\n/w3T+TqgUmz0WHPMseRROv4XgtgejFZVNNtWAOCUPriw7Jdo7P1GbndTb7K0\nmCTjsha7DqwBdrCj5MNbnorBR+elnPnnaWbnV8gJGi3Ho/VRwWsoh3jWwKKw\nTJVK\r\n=hE6R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"307098c86f02e416a4cdac5aefdb1a5ea34f9b16","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.0","@balena/jellyfish-sync":"^6.0.40","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.22-renovate-non-major-307098c86f02e416a4cdac5aefdb1a5ea34f9b16_1618952324403_0.02005497907060949","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.22":{"name":"@balena/jellyfish-test-harness","version":"2.0.22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"91478646bb9f19b69b19553e42526935b13e0c8a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.22.tgz","fileCount":24,"integrity":"sha512-KrpmXUtkfp2jOqSc1FteynbzAk8fHBi6OkqWtcG9mTXZazYR8+dibRqQqwUCrRpDi3w+m+aDXwiNFG6eMMjP4A==","signatures":[{"sig":"MEQCICeyOXPMLz32j45jAMF7Or9tCCsU7lpac/S9HlieI56JAiAN/vDA2uOCWeMgaYblfcHk1STRh9WFe+30uooy9gHUVQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85415,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf0GNCRA9TVsSAnZWagAA14sP/0nSKuwGkdYlYoNoYIjH\naZotxrdVagR3kAARh8BJJoyjqHFX9c6SNY6tzhQOSMfH4xYbRMrR2KiAryCp\nnCEprwPZdHeY9jQfEP6OJrijvGW+PTL4zUXDbOCt8Ok3Ga/lZdkN156hn2+1\noYctsBt/my8A0e7Dls3rFWJkGwbvpvrfrp9KmPElmEYNSZ68iYQA8pqNeVpd\nebwGo+csEef0wIs6Zd1Vb9C6oyoTHcY8aQ1+jEct+wWFWwwvqytIa5r0eLoM\nCYAk5Llu5WAkHSFWYW4jcV1IVv0yCbIeR+SvsS7dVyf8M3SPY1bBxVlaKogj\n2fsJkK1lxYW0+p2DZAWNNTK1wZikyUZBsT/AfAvuHOAcyTPpXQb4LBXp//AI\n1Ou8BpN6+5CzVEoUd0ACfhqevNTjBGhz76GdtOBVDuAwN3/YU21CEi8fpD0X\nSyYKgxRab7CMp91ZSQj3ELxOLTKs+thC1uDmb7fRuDDLPt/95iRPHtzYWge3\nZVGYdClMFdPzaEeKK6+2eeVojBhs5iSfcftAz5o6E8codPOWDHLYww08vnZ1\niw9hiKrKqH1+s4AqOlFFy4tgfL6envGu8Hp+ZR55o/+8M8C7Wj6SFzPFDEc1\nzrOrUBnqJjRMpZM2CxOk+J2ZmYd/5QVP/cTf6B2unOMRPwjD/7Elb1uV/1t0\ngwHX\r\n=S9nD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9e9c30d610a6d98fca014ac8c92afd4c27f22a21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.0","@balena/jellyfish-sync":"^6.0.40","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.22_1618952588601_0.39456978878812454","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.23-renovate-non-major-abd1ba9ababc1602dc79822b3d7c0b9ebb194b27":{"name":"@balena/jellyfish-test-harness","version":"2.0.23-renovate-non-major-abd1ba9ababc1602dc79822b3d7c0b9ebb194b27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.23-renovate-non-major-abd1ba9ababc1602dc79822b3d7c0b9ebb194b27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e84243aa55e19f245df32a473641d5494ea415a5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.23-renovate-non-major-abd1ba9ababc1602dc79822b3d7c0b9ebb194b27.tgz","fileCount":24,"integrity":"sha512-ClbI6WCuU0hcAfyrfRENE3nRVvweU14QlJdcXAjuaUUAj5izgM5ZMVZCfEwSbxS+FKCQMgPTgUYfaAkwof2otQ==","signatures":[{"sig":"MEUCIQDrK6EmhErYtba/62MIP3O2LGvkROcUhhEs/mjP3OZTjQIgbBCBzSzphicRFmIzPrHKLIsKQ0nsHqz1ZJww0Xvkud0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf1MsCRA9TVsSAnZWagAA/qsP/R8inziC2AcH+XtIRu+x\njFnQivfdroziMuPgNZfannSe+Sz64Ne3PHLwYtCi4KHMAKnHE8WHWFSo1HbN\nCDYpLJZvd8m6xM9s7HtYU81Rs0+svsVf6vqaOCJ1T9cT12dwLh+D/50dtkm1\nbdNptaDnJv687cpvocyEKehq/MH0MatQi8wCN3bVASZXJAmhoskF2KUdyZHk\noJlOKONuKp15WVFttmpEql7r7OcRPv/+MGvetgWm5doGMB0plxNSU5+Apovh\ncu3aZH9HO/xz7KIMu1jRcA0HRRShNMKf9en1+viRjN+BX0NU8R2zZYnIubfo\nMP5cc3Db42gBK7fjH5WdOMSZUtJqB3zazo/PNhxkKbv2eqJjf2iBLlJY/umu\nztYiZPbdplEAUzja0/6MHTahEhB0uBiMrkmRQjDIH6TQ2G0W0sHvHOEqi3g3\nrk2BnVuU3eBzwM59XyQYLucwFZUgOh1c4KaeuMddE2ecFHj65KcVl9xcKe/L\nF+CToXxwE0Pe4IIQXnQLYGFKq80adSgyKs3rCK8oYt15Zgcpj4yXkMcR6D9M\nrmeELBprjOxKYvvXY68/3bE67Pr615dtJ6U8ceJQmmb+Uho3Jfd8ftHm0mvF\nq8FuUWDVRpQM4Nzrd0ONd/SzoVeUaQywS/MqOOTCGSoXkc7t8hr6QjPBG6K0\nAZS8\r\n=9rfa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"abd1ba9ababc1602dc79822b3d7c0b9ebb194b27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.1","@balena/jellyfish-sync":"^6.0.40","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.23-renovate-non-major-abd1ba9ababc1602dc79822b3d7c0b9ebb194b27_1618957100339_0.9968989072457002","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.23":{"name":"@balena/jellyfish-test-harness","version":"2.0.23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"073b4820eb3551ccaac03b40db5392b04b9d30d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.23.tgz","fileCount":24,"integrity":"sha512-nB6cfZvMA8O2EHIGvcSdI8KbtpaXiFl3Wm443XjP+YHi8nMuBUI4e4qfEfoRJATyRvgKUezFXK33em/v5xtGRQ==","signatures":[{"sig":"MEUCIE+Av+8pHzg6zxgh3w7s8uZcziSVOSqd6EK95wL409RdAiEA4Unfl8QtfCTMim/HX7K6oGLdRhb3/GPggoW5C3ZWOAs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85519,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf1QcCRA9TVsSAnZWagAA7esP+wbfatcN/qSJA4v6/D+a\ne48I4qNKxoQd1FsRTajvr1ogFpOsqvVWZ2FyBXyzecHlm+d9GWYwJt8IsTcC\n82OFRgtxvDcO4z6k06+PsKRM8fjtuiWsJm5e4uRAxNWsgdRHlYyzK2T6/lmp\nUozQRmiBL8wsy+T0PPESi7iMKrbOdP+3u8Egk0NpP3byW7VAmJhxrPZJXIho\nanQGpjs8KL7H/rb0DmYt/Frm0Hakr6OcBYbFYo7qJ8YB8Q/mlw7Jx/O9yzlZ\nK5rlbhHtIktuhFCJcib6tkKD+BZct25T+nSzfUuuhc6UpLgjPoNGJxbzSv4f\nlC2mvCrC3Di07hDChWr/V2DcoTeCDPxZHZ6PwHd8M7RV2PgCJZ9wbzRpfAOa\nRdnTZruhMcnQPlQY7Qb31nxcUTTLd3ri+i1GW7PTbhtMrUvooWdgzqNIkG9t\nHu6bB+kp4rFjZdfTD7nVH0kVKakZZkqgCZpO5DXOyTqZZIl1SRIUq9mrhXUt\nwl3cT/24WBcdwlvQmmahkNGUoFWc5H/c7B/+q3l/yDnXMSHfvXbOwrvAOKK8\nNffbNHGM59KGWFerp9yHVn/t3Ye6MeZEe4oGF6F8N4X02Fp2Bg+G5Nw3OK+O\nlYTHxafDKNNQWWwDroyoZB9gYbAK0dxKtWslXw5TI72sVRleRdjNkVRfyfcd\nf3BH\r\n=eIkR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4e18d709fa70e4c44ac48c882b10a69cdca4f26d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.1","@balena/jellyfish-sync":"^6.0.40","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.23_1618957340367_0.33959008955204273","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.24-renovate-non-major-4c6e76b8c442812fd857f26875336e02787f878d":{"name":"@balena/jellyfish-test-harness","version":"2.0.24-renovate-non-major-4c6e76b8c442812fd857f26875336e02787f878d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.24-renovate-non-major-4c6e76b8c442812fd857f26875336e02787f878d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4981f3ee2a67a6c974b0cfc572b60cf85b9159c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.24-renovate-non-major-4c6e76b8c442812fd857f26875336e02787f878d.tgz","fileCount":24,"integrity":"sha512-RMrzPEP72IzTczjGaNKLUBq7OO4Eg+cdptdoJzuEWLAllizXXej2wIdvEB1t8DtjdLpHyXp/DXNAJ2kMrRER5Q==","signatures":[{"sig":"MEYCIQDLKv8kM8Y9XlfSE9fPf0QuLd9oClpX/ceJetPem4+AzwIhAJnEbLaUkVpOflSQJrHDTcC29Uy9lSUvXE50OKFK/Q8J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85683,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf2/7CRA9TVsSAnZWagAAhAUP/jKArzQqEeEiwsniU9xW\n+v6c41ulp0Zrg5BAY/TbXIO56etuO2zFm1YSwaj3vub1b/wqsixuOwWvHo5w\n4xwtZfeYeTSxPUcTieAvnUlZgmuEi33zsm9vAMj8QJyPEUzwiP8Y7zInWOv7\ndBrqKDs1uQxc6DZGEuXfOCo2OXgkpQv+C2GsQlhUfrGn8s3Os26qK081QUu3\n1ErsdKMUO29/+/kIDwPZivQ8jQS8qZZK1UCZg79DIHccs6UWakzqe1JRbId6\n5pcPU30hMGVWM+TAjYJZxhhQDZcSialctICw83/F1gm7w07IoZ0Qcj1dcYei\n7QSUFIgzZ672roGqU3swJ74C6vMFwzU2IaH81uIzrlQfU0/GwUukBfV9GUlq\n8AryXzZSLDFxfns4wX5nrZjRxs8/QiIMzIof/Up+9w/2mtVKr8b1KAGSQCVx\nzgefOXqjYfjVfx88Aej/oHV1gcX4XtQiX6H9cVtik9FeBLp7EE+5RNkHf15Q\nEi/ioVs9PQUzJwr5Ojn5/j2nvvHlCBY6mko/4x9koG0L2AuuEgVk26/F4PuG\nf6hOectWiv6/tDlmxEcPk1s8qnD2JCWpEZTglmQxYYkFcJeCHQSynI+8sKOg\nV5NpQd46OnR9ITu3Bo3npj0V1YbkaNYfcBu+AJ2MhsInwbbUK72zbbnq1x3T\niws0\r\n=psca\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4c6e76b8c442812fd857f26875336e02787f878d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.40","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.3"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.24-renovate-non-major-4c6e76b8c442812fd857f26875336e02787f878d_1618964475290_0.6837465806262166","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.24":{"name":"@balena/jellyfish-test-harness","version":"2.0.24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"22e5b0eb10ce07eaa6ae8f5b8fd1d84afa9614dd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.24.tgz","fileCount":24,"integrity":"sha512-xK9cf0peao5JvMlFVu6Nt6pY6xE5X3cyPsXu5SbjnuyZZIoC39I5hg80nLcEUWFHsK8lor0c0AaF0psexW9Yrg==","signatures":[{"sig":"MEQCIF0GQz2EF4cOGYUUUK+nmUWUfM9WOyaU0GkW5umwLMxlAiAUL4VhYg9h2atszWWR0vUqhlEPGXRYjJ09PiE2NALXHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf3DXCRA9TVsSAnZWagAAmYQP/As/QimbOMGIMnV12JZl\nenL8IPdSTRfDYdYpQ0Y2ahYHUnij7zpXK5jYbjvFvinTzJGaUuDPftODFuae\n+qsNFxIIhGZztQcJp7R0lg5I7G6cisKuhXHdjFayWYalcILR/t67ODvTd0rg\nGsrUhqfSLoxF+zvS1Pmg/ISp6LqyPzH2+zwoWicgVdZCRCX8Xl6DqsVNJ7DA\nPjbjl/RbeDDO/WOGI0TZocA0QDcmUr0RfNhj8RU/9zkROcOlnG0P1s4Z+v+V\nUf9NvmPMpo7S7p2aTtbt727Lq8QHJbLu9bUpopoP+0GS3+/KDTRG7p8rzrlM\nOzj1spz4der9W8PEQMVCw8+Oqrm6TeKXY1Ych4Mycih2IhqZvZ5VTOvFwN3M\n0kiGShohpURM2x6Zpq8cvSQUXdb1HV4ykmBsN+QsXfdyiDm2Non/RI1R0Ca6\nLZEyJMtPjVHGU3Sf0+5JrHuQf9MgS3YtkAtLd+B7ugrO+vtZ/C7WOUcLHxQC\nbi6lvIhuz0Pj5BYHqk6Zp7GXaDuxkEqfbWJiSLuGI1b00O7S9b35Vl+dRUpp\nrdNO4RCIacKql7o4sJJgvmWBLy8+yQR3W3VXDjMaikCG49p0aOYaCka6p1vR\nnziOxZmxOW6L+ybjdFJSxd+m+RwVhDbxb2aMCXab5xUQEAjGNfGZKeGmzYg+\n/LRi\r\n=Pbx6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ec6959bd78a774d258280f5956c4fb9b9eeb6713","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.40","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.3"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.33"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.24_1618964694966_0.2980551291254703","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.25-renovate-non-major-81b674ae2c5095985a3d6bf943a2ad54413c9a3d":{"name":"@balena/jellyfish-test-harness","version":"2.0.25-renovate-non-major-81b674ae2c5095985a3d6bf943a2ad54413c9a3d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.25-renovate-non-major-81b674ae2c5095985a3d6bf943a2ad54413c9a3d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff5d513defe419766401896d8ed9199def7a6618","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.25-renovate-non-major-81b674ae2c5095985a3d6bf943a2ad54413c9a3d.tgz","fileCount":24,"integrity":"sha512-DD4h2pR5uDS1Jef5s5AX/0QN16Qc3Ory8N7m3oavREPVWkE7hkkDhKzL9vdbkuwpwPTHyMqUjo4K7RPPUI+deQ==","signatures":[{"sig":"MEYCIQDHojKhSSQs2ouZ3zKquQUcS6HNPPdr4zeKS9ABrD8k+AIhANqItnqkgleWciU0GNXOkB+oHkwYgYapnak0fp6ZqvHY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf/3rCRA9TVsSAnZWagAAwWoP/iRuAQMsjyNCN+YnVCJP\n9enbBM9gkEFu5ypoLQvb89q6nQqYkn2Ui08ffCwKpSdZi+WJDx5qb4LhFxqF\nrYus2hHaXr8uXubnwz1vG+PtdBvOjrTIHhJ6qZeauSnHJlwZeS98gSyaSuMl\nMgippiBgZzRZuwxaB3bFwQTiqLOJ3jV8NmUBYti3pM1PrUenQwMQJxGrEi3j\nzVi4m5oZcs4M8HFCNF90pAiCaJb1I4tnPPPHGe42K7J7/1Ntd0mscep4eJ32\nlBXpS0ntWmOaCWupm/ljXTIn37tr1++sIUk9t/JTxTrbLC6PxpOOhyI24jB2\nJfgLwgFS48AiTC03eRK6BzzVQha7yz4U1VvalnythsgO8+kHBDt89N+3P10u\nDBvPmPFcAe2L3lGlu4qmH8/izindWcF0FHs05I+1uIrSPXqfiMZK6tahypdK\nLNF1FV2sPYCzbA+uekPRskImJvwz6/gmF3P0wJ0q36OuovzEVWrXvBtEc7zk\nOpwzs2Chn9XQRb7gMogW2iwD9jKcBzCFHdQgyeXcPgJ7nSSOfh4BClTdFN97\n6pOF7G+xq4AbQHxA9DVESAgqrRmm0hi0lBVw2KiYqNcuq9fs8KO6LxmSaahC\n/2Vm8iPodkXhjedc+jCZ50PcHVr4ZWxVS/UxI+SlcEnhZ0r3ZhDZtNAxh7jh\nnWv5\r\n=J3cI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"81b674ae2c5095985a3d6bf943a2ad54413c9a3d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.41","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.36"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.25-renovate-non-major-81b674ae2c5095985a3d6bf943a2ad54413c9a3d_1619000811343_0.409306668309521","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.25":{"name":"@balena/jellyfish-test-harness","version":"2.0.25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"31449ee122275520e5f7b7c7f74fd28eaf80883b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.25.tgz","fileCount":24,"integrity":"sha512-tAQ9WmaBCaLhGD7b6WZLXD7Eku22Li3M6TzkIljbeP+gZdzxTI23B8Vdyb9N0tWW0D09fzq9G88UhM2bFKGDBw==","signatures":[{"sig":"MEQCIB7TCAhyx31/WPt2SMoN79/ltWOkU9aUtMG7RglpTG7FAiBc3UhBY5RMpRr6jzzUeN5e0iIop92lHbYyxq/Dv29E0w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85692,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgf/69CRA9TVsSAnZWagAAquAP/ReXDKCAr/bWU3uRbrtL\ne5uxwWSEOk86U+oZz+nd68oOOr4SwcQk/CFa5otZMI0gcooyNv3/46dTDlFU\nKQpeoY74H9T29o5d9yUj9QmpDbDb1GTzlJcDRVshyviaSyo0N6a0qssDtZNq\nTpYIWoivdNFJEqAgoYzMwqOvHpzLxKxdzzWxxv4RLyF+sCionljKRHU9/2q1\nqDuYcmkE2Y9IMDb3bN0Q8khAxCC99C7T3KXZwimKBr+r2xW1v9EomGwWxJGY\nep6FVzADc9O6UFluMcfX6TcBxfDVLXi/gn+N2btafmmpojdQe1zLTXUmf6wt\nXpZobKsB5Z6rkjX68R5MS4aUKJ3l1mQdgOfCj6QmYYU5mSAAAWavCwxnESlZ\nlkYCxTzSldnFPgtpXZeSGjhvekjWFu7T/G1PBrYhlSjIUBg9woXm/yg3naLB\nayHkMf2OkksqplQNgjHgdo3MJXtNxApALk09+KrYtbW9C16PTj6I3sn3m5ls\nxGv4+PV4H0b+mDzikfKIFel5YRnwBVOuj7WI+c2BR9JXPA2P8/W9bcCP0E12\nBW55tnZQTTm/U6USqrnUKIS0F9VcC4LlP9Muu2u2e/oVQWAGzOwcabdyUbSv\nJpCYOMoPxq+Ewl6vNB/bQEw7JFE0SMRLanvRtHEn2TdFX4B8NZqBXjrn5NEr\nUr78\r\n=vc7d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6174e937a27f53e176dd8056032c4a4594f34f2c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.41","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.36"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.25_1619001020582_0.444389399189151","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.26-fix-actual-vs-expected-11b3afb1b0f86729764e8ebb165555151aa9e846":{"name":"@balena/jellyfish-test-harness","version":"2.0.26-fix-actual-vs-expected-11b3afb1b0f86729764e8ebb165555151aa9e846","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.26-fix-actual-vs-expected-11b3afb1b0f86729764e8ebb165555151aa9e846","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c58876018f853375f9f178a1e50a0c711a159ad3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.26-fix-actual-vs-expected-11b3afb1b0f86729764e8ebb165555151aa9e846.tgz","fileCount":24,"integrity":"sha512-5YBjW6uVDg1c9u+hKrkuzbBmwtRmUUAEYbGTOD+BWlQSsTCrTaKeQSZ0L4oKGeY+ECXySDOon9/cXAvVPCgNgw==","signatures":[{"sig":"MEQCIAlPPG4nz8phvoJ+9Ua0ak3KAybTsLuWwYiMDSr2WDdqAiBaLdnqmKjJyzhEOt5vQ5+1DKcXaEYNlyk4JAM6c8YtEg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggA89CRA9TVsSAnZWagAAwRsQAKFI0Y3Rn8FxZphTBaf5\nDuAOFy7GpaRvb2WPGoa3qS8M4jH8o7oEBjei6DpHnBu1/aWsnpNpq7/r/ndL\nk0sQcij9DeDZEGHyakoG8Bkki/jaExMNal/F8Em03x/CDbjZjTmzEHtM5YT5\naO29hNyusWjbaGe5Qa+QHfspkFjo2xoInrzcVpZeFiRlTvKq9ytju1Z2wBY7\nCb0LP1xY3w8gMU7KceIOYnfO0seYugBYPLxkwbcdzHYvaoFwurTu/s6Iphc7\nKfKmZsr/rj5UozCDvWmLueXsVdVKZ/NKxkFvBWKmNOGgkrrUr0riXeOxxYng\nMI7h5U2sEg/NVrUKjRf9gtE4C4z5z0HmJG+CF1tsw/RE0h5goD6zHvQyF3f+\nTQZG3l16GbcLvEvdFisBcG/az+z9dJDc6vm0DAFsQhuNYWRIPyAWScu/kfzY\nDFC6c13Q2zXX1NvP4tVDDX0sBbt6tp5H21FNHei/8FGMoSwsPlFzamo3ilMa\nuVMLLjphNm6ffIt9bcJDNU4pSLDGC9scAwbnzQ14E//lPmDFQiwld9JhUG+Z\no3VQgv1TWZDdaNtG8AysMfhpPY7qwtcYLk6jkxPc2VAQNSsfrC8MO01PwaFj\nxFzYe62G+1UU1HU197JPxnl+Vqc/5ZWQ8dCCjupeFbGJVdocpGl51q7JnO55\ncvYx\r\n=Xd0L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"11b3afb1b0f86729764e8ebb165555151aa9e846","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.41","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.1","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.36"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.26-fix-actual-vs-expected-11b3afb1b0f86729764e8ebb165555151aa9e846_1619005244866_0.2881470927317069","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.26-renovate-non-major-ac519d22cb4551fb78f248edf73f10844064f568":{"name":"@balena/jellyfish-test-harness","version":"2.0.26-renovate-non-major-ac519d22cb4551fb78f248edf73f10844064f568","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.26-renovate-non-major-ac519d22cb4551fb78f248edf73f10844064f568","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"682c983967efcb49dac395d5085275d4103f0aee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.26-renovate-non-major-ac519d22cb4551fb78f248edf73f10844064f568.tgz","fileCount":24,"integrity":"sha512-F0ox4GdbLkvhW8rotiBf4X3nl8FllP4tnaFH+YbqEHdE3GgG6T9O7h8a7kC6V28Rmyuk91zV29z84dGkwNrcbw==","signatures":[{"sig":"MEQCIB87q+oFQfTEDp2Tk+amk8WsoKLZj+Ts9Sza/0bvVNMSAiA1DCaCQPa2Dlb1mh5Wc/jqzU3LcNJ2trA65uPVFBx6rg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggBarCRA9TVsSAnZWagAAZsYP/2dPvHISeNQOe5wHRTEf\nroDcJ62QGi9VYuGG6yyGt7I2BE0Q4+4qW406kFI91tD8TqPzSD5sfq8F0t53\nofKTJeNeKSIpI5D6GneH/2kDSURZ9ixwCMoiyt2Sra1fARfwqRLqxdiLjyhv\nPbAoVI2QY/ukdfeou/MimhaerY78me+wQ3fxwfboDvBDKoUiVyx5iYqW1zMC\nbqW2uiR4H0xUknXR0+6NIL/tGEG+TZYBUCU/GWtJG2N86Gn9w8CuztCWncea\np0/REA8am/wcTEqncxP5Lkng/2ZFoXQMUP+rYgjzRgXmNFdKWk5dhvkOFB0f\nGxVxxSa9p0XEKBBptoWUSMKkpjrTJUwfYN2jlxioRljd0WNJfwA7HgUSGu5w\nL5lB/YGye/f2kbqX5XUeo4DOtH8aNG1ORC3nlThv2QV6xCkCSy+ZEiDvj6uO\ny9fPuEiQQXuZNN22TZ186uRbvu0qDitJq5ICZD/D1HzML4LJksoUwvS2Gjxb\nB9EkENgnbLdgkdZKMgJfrMQhcoUyRCeVlSPhCdvZZ72MzBHB3kWyO2bFNBwZ\nySNgAoTOhH7C3/kBRaa9hPuxNpYedQf0HT7iOllHdJDnBazSdL/Qw10VA1UP\nrIxLXrDfKAjRKWxtvu1/BJcTGvazrbzSIQC8vNMCswitwA/iDTRPFE7JfnVU\nmHfw\r\n=daaR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ac519d22cb4551fb78f248edf73f10844064f568","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.42","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.2","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.36"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.26-renovate-non-major-ac519d22cb4551fb78f248edf73f10844064f568_1619007146537_0.9388420897319862","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.26":{"name":"@balena/jellyfish-test-harness","version":"2.0.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"064a9ee60b26beda8b0f78a34734d4eb1d5d12a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.26.tgz","fileCount":24,"integrity":"sha512-KtYRslPpiTsSZ22WEj0h/VEceZ0HiuSjQr9mT87elN06RsUqj2Iiee+0H0yqkHsyuklFUKUHQgDe4kcBj/zibQ==","signatures":[{"sig":"MEQCICcC/C/aqyngB/5P36IQgOA/eYp00fICzeag+VkUyPC4AiBLATM06LOAMX2toIIqcrDR2gMIo6wN+ca0kHKCgaCP4Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggBfKCRA9TVsSAnZWagAAw3MP/RD6fJ6F5hM7aM7yIGw8\nMxGSY7WK6WxhDHjOgst6GwuEipBDvEEuGmcI+ICcssmhaBI+QLQc7L2bzxvp\niNGPcAYnT6DYrq9/xiNw6vlgI9EZ3LMw6nph6Ns5l+pUXv9gsVw1raga3NlK\nAye7UIn+uQMqaYyk3vysNz4K8hWKo/eTqSGILOiAo9wbyniY3UtMmh2kK+Wk\nCPTaj+ynTAE5KQyUFSjbrmY5+lxaNy/218FSVkTH9XW+9LR9LJUtRmY74JEs\neUcuKm2M56+Z6dTA1duU54F5M9Bn3AK906S5cVESbersNtDoBuYpn/88ih7z\noVwWsvl+DyCCMgN32n8QNkL3nqM/ozOmm/CyIyGUGHO0S5vusA945vO05LPJ\nnK/MEmSBWXzEJZSXaAM8JXIXMj26DN0tEnhka8V2/vd49GXHaipQAXGNCPa+\nyLrcup9+RH45WCrvo7GPRvmv4FOXqMyoNm38+bRUpUfmOu5AQIGXNeCG9EPA\nOZvAGlLM87ikHZkHXSefrxiNpWBYXbKk5p7+SzRUSpg7OP63lqHpKT3NC3zv\namMxgZav//5QZ6ipKZ7v4G7PpOsVsnMTwOz0Xk03t/YWKRtMJsDWUeTpMrdZ\nrZWA30U95Kxts9kM1fUwS9mhzbw+r0QWWZoTwkg4qeWWw/pTj+X6+D0RYUn9\ngSq+\r\n=9wx4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"07e6429bd35850fc63d40751d10ec902669f7867","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.42","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.2","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.36"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.26_1619007434437_0.8128801592497277","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.27-renovate-non-major-bac1d44e76ae50d823ac36e2ead97b1e8e66b015":{"name":"@balena/jellyfish-test-harness","version":"2.0.27-renovate-non-major-bac1d44e76ae50d823ac36e2ead97b1e8e66b015","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.27-renovate-non-major-bac1d44e76ae50d823ac36e2ead97b1e8e66b015","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f5d1a8e023e41076b714411dc9d5838fa60b000","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.27-renovate-non-major-bac1d44e76ae50d823ac36e2ead97b1e8e66b015.tgz","fileCount":24,"integrity":"sha512-/HgNLu+IbhXmBRXuSqelu14rclV/iQjNpNfARHt345Uik/SMrPg6qaEhztE2qx0UtF0CGOd6vzuixew0VfVaiQ==","signatures":[{"sig":"MEQCIC7btwvEOJd+0gGTzXrdEOV+YMvChiTK0vH1yvZ2mDzHAiB1YgWI/Iny6dcVv8XNBtzxYz08P/t7VDwJB9KQxK+ebA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85890,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggFL8CRA9TVsSAnZWagAABwEQAKAgteJT4/foKHp2H9Q5\n0iEh1VltdWb+IZ+kvdW1yfiR1KTX3op+HwtiZ1ydvD0stlNJC/AgBPL4YGlB\nwiaWvGqK3PDE7sDw2CqWoBVQvkYci0ZIyaKU+FEW/RsUmJJ+Nazlo+/+BGMu\nWvxLvZOENqG0s82sXiVQgEqdgoW+fwDlxFz4b2AI+d8NA+65PuEtxpOGJDCD\nzUrxqWnLhbVbWp83Ah0T6gvtzKn8EU17D2vl3wm5mbPUvZlxw24v3UVFcXP4\n67AeXSxMnFuZOv2C0gUCGOSCxtqVAKKGAoXa/gWrw1+0LlvXUTfS7AJftn8v\nESdp0uCyoxvZb/6VaFy7H3KL4dl2vXyuBzsuhaGFfRB+OJWFlFEnROOMg/r0\nFsONs7b2HkPihLC8I2AGBZkoJiK1v92owPx86MQ2/e6bbmSTJk3Xof1EttGD\nHnOT1DdMA6nYzRAVSPpjzED5ACTAudeYzhtNCm/cYOUImlG1mxemgOL/YP12\nSu2maljp9t5SzFAJK0xIuaSrYYdwHnXtllpppmuY7hxX1ev6SzlAmK1qAlpT\ngTrowyz5gPioOYSIzJ7wix72z4C2P0m9UUItydb06MTu6CZcaWxLGi7VJmWQ\n6LQQku7KEaAFMd13RqOmUy8z4O4/OBHYL3T7NDekjUW2X9h7s7IDRlqSO/iF\n1+11\r\n=wuqd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bac1d44e76ae50d823ac36e2ead97b1e8e66b015","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.44","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.3","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.38"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.27-renovate-non-major-bac1d44e76ae50d823ac36e2ead97b1e8e66b015_1619022587474_0.2876197766083639","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.27-renovate-non-major-a019146b488e22269acc3e728b222e16a537a877":{"name":"@balena/jellyfish-test-harness","version":"2.0.27-renovate-non-major-a019146b488e22269acc3e728b222e16a537a877","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.27-renovate-non-major-a019146b488e22269acc3e728b222e16a537a877","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8968c908cf429c705b6389f651481daf60d9d622","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.27-renovate-non-major-a019146b488e22269acc3e728b222e16a537a877.tgz","fileCount":24,"integrity":"sha512-Jp4P9VEPjIvXTDcDFnC4xuYwyJpy5RyAeBpEAXTdJQ0X6bZyUwfdfw+QVKhv1BUVP0hbx07DeqKCdyVRYB8aXQ==","signatures":[{"sig":"MEUCIGD9UfaFaHze3wX7AzTzuqCpyZP8/INJSXmVsMeC1l5cAiEAyZItpYObhn8NEoFK7h0vSB8FiZazUAEjvUbw/hUQfOE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggFVhCRA9TVsSAnZWagAACtEP/07QLMXmB3I/6irQX37Z\nnurFBPtIpllrtTTfZmvSUvQ8KubIL/NglIYh/2NPcPsuvj7wIfjrl01DJ7F6\ngcX9UD5Q5gETH2+5WTWkZgOLMwT+2iMVe4TWgbA83svCd8mcIGUNMoRtx6ys\nqkj9Y7iOWCeCLJ7iLn/juYda+q3Zn7Y6ajtgaKz/1YF9YtvwelrArUL5KGpS\nSXKOHM2xpITTHcTYUQUCh17FD99KY15pl3e6GWduq80vB1FuKB+t1j+NyAlm\n9rmUuNhHwK8MvhRHG7AHGlPb3u0+M/fB/WSU1k4ttt0PYqr55omO8aq8KBZF\nOyN7fcgO3Y9Y2JePNVFxspv7DvGBT6Kjq2OWF7uitejDDaDztfyMc89AB/EA\nmC7x67f610O2wuYAJvzwN7CK4cJ8px6XvRRyFDZMEkqoY9aaIzLdaUuEeZWd\nJfuSUByiSrDWfQ5rzV2T7BjfyGzv1b+Jr/A9OyMDGw99JqPmLrY1fjwT4pLv\n8kRTSaX8r6Mxz7ibAaKW8V/BwSnw0o315Z7SbOKjeK7hu7fW0ipiE/hDzkNI\neKHCoRNfc3gQJvNK/c1WI+aqERaPWIe+rGkFo1cBhPMvDClsZih1ZGrfP5tI\n4kGw13lh0I2FM8u7WA2HGGPacFkFpOopNuu5kJqSaqXbz4pr6WTislehdIT7\ns243\r\n=iJGe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a019146b488e22269acc3e728b222e16a537a877","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.44","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.3","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.39"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.27-renovate-non-major-a019146b488e22269acc3e728b222e16a537a877_1619023200571_0.002202066119985746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.27-renovate-non-major-c11004c1feaa8233eb0a34f57d3cac08e738595b":{"name":"@balena/jellyfish-test-harness","version":"2.0.27-renovate-non-major-c11004c1feaa8233eb0a34f57d3cac08e738595b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.27-renovate-non-major-c11004c1feaa8233eb0a34f57d3cac08e738595b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8e84e1fedc3f427f1020a3800b9ba0fd97e5cfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.27-renovate-non-major-c11004c1feaa8233eb0a34f57d3cac08e738595b.tgz","fileCount":24,"integrity":"sha512-mrJ43xNI/TR3Q2x4oi8UMrb+qoG6vGnTGxV92DpIzzOp8X1Z3XMToI0wB+iJJlfjOUZD3iIivKGs32TnEV2dLA==","signatures":[{"sig":"MEQCIHVzDyjDzvdTM3Ad4cWet0q71JBP6fXBd1SEhYW9w2gCAiBk49oNlgxqADE6vpDeaOE16iSyFOF5bhlZsz+BG75uDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggFbYCRA9TVsSAnZWagAAuTUP/0Hbz0Dv7ZFDRGyDbEn3\ncbrlhZbHofu6+ZyHk4swBvI+NdsK6J2Csi7X3GpzdP4x33f9ivgCIv/VgdTN\ndz5BeTDegaUDAKLUNcNMqGI62WSheSDvwARL+QYq3q0nMI4Q+QfQHwBw3pQS\nHQT3vhh/uugOIUBJni8I1brLuuGtI/kFpccbCsTdF9b7HsmacXYBKlyCScq9\naDb0DQNiS618SSuMNXqNrV5hkmx7xtllRqrHAcqM5H6H1YNNw5jVT88U8m4H\nZvHbCVmfjQvSv/TYzQkpBzfFD8geIuHtZ45C6xaSUaYLcJvHCrhHuNHfu54Z\nEQivvyW4XzZqeMKz2VQMc4bKEoMOWncV5IZjs3xhBGXk0fjAX6+j0rWeq0Nu\n2LoQ2nOAXaTBtCBajqUXQOQgjZPaKV23e7GxXW1MaArNcYP8RZxZI/5nweZX\nZCdPcgVnm904i+u3ylzU59x8iZ5C4/vLh/d+SQs/qdZY7m1bp5ITxAjjd/RF\n4XbhvktY7rk8EFrY57EB7gbdTMBLGonaYExKVkBAlRBZHyQc56PSH684s5Ys\nP1IWQzrQ2fR/6jIB40rLU1GBlQr/I8FK/It3fZbhgf9axVKe5XPq5UTC+Ag2\nrX1lIc2YeA7ZtNDeh52KfesakHdFbx1qDwD6FQIfutuYetMLT6R2xW4JZR8X\nKe9Q\r\n=55Vc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c11004c1feaa8233eb0a34f57d3cac08e738595b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.44","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.4","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.39"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.27-renovate-non-major-c11004c1feaa8233eb0a34f57d3cac08e738595b_1619023575967_0.5053962582431262","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.27":{"name":"@balena/jellyfish-test-harness","version":"2.0.27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc7f3b6b4965b6572a61a5638e2dcdecad87d71c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.27.tgz","fileCount":24,"integrity":"sha512-LK95T8OJOOio2275sf1uhiAZNomnnKHpcq/lx1SwcjHyoMoFINyGYw/UJZHXHILkN8jQldfvKkcJz9DxidLotQ==","signatures":[{"sig":"MEUCIQCEhjS+rBwM+pzn/tR6MB6EQRdnY8S8hk//a27554O7AgIgTba2dezVmp8noc0rwDnUuRtrkPOgByvxIzuz49nJsGI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85871,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggFgtCRA9TVsSAnZWagAA83EP/2Jc9MLVdwoegMtBP57X\nxO4zGEbow/oWNp0C7eGW44OpIKmJOoQoZWg5MbJT4Ig8ndUrsvp2Um9V3EPb\nvxF9NfIpJRDzeR0tu4ywugbcC+BzioDshrnSXkg/KqA3E2ly8h2n/luh5Zd6\nICFahCoyU0JiWu3IWtgXHPtEiOxW0nwfWWpOgJJnXrjUK84oEN8QLsVIlYb7\nlsA4M9obomqF1bXA90IoPsQpTjH5cbTFna4gfN6w1k0YVZ/KI9TFdKqlfOV+\nEmYMrvi0UIehC/KICy0s4JM1/CipIkDiY4EiigeYIJNQNedxSRp/wAxjK3lL\ngR+PPkgyBGUmu1u0cSZ/hhwEFCyerH1sWn+OyuHJxadl7diLBKLHAC54OWgh\nZ0BvoQIfudZu3fUXPSmejvRLcjI7fXkX/j2dKfZ1fTkYUMh9w6z4PvPVRtOX\nJfM73qBmmFassa+lcrg6WpD9z/WVcvOdUT7PvFlglAHwIxlFA+fGOvUV29Io\nAkmipCQZrnOA6x6rQISSE7ekLxmSS2l2x6qFivTh7QCzh+HSRqkMbazQvp6T\njJ96Uk7rB6j2G9uisgNbDw38RekjpDi30FTDrOYHTSP8h7PgHjaTQ5rpkhDC\n8cCWhTnjoJ8bD19sY8ENQIsGEO+o/lkgSVq77MJZUMuDYKqhryjAFv2tO1Du\nxZo4\r\n=ilDk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"415d0f7219f3070a03ac5ff846c0c2617121ecce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.44","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.4","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.39"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.27_1619023917420_0.9236863087037241","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.28-renovate-non-major-febebb2ce0a546701884f86826c4448e79a2ec67":{"name":"@balena/jellyfish-test-harness","version":"2.0.28-renovate-non-major-febebb2ce0a546701884f86826c4448e79a2ec67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.28-renovate-non-major-febebb2ce0a546701884f86826c4448e79a2ec67","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac91e31b20bfc64d9f23a34d214700557bccd0ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.28-renovate-non-major-febebb2ce0a546701884f86826c4448e79a2ec67.tgz","fileCount":24,"integrity":"sha512-sIBHJzR0FLaOT5cF2cZzpQSh+dyoIn3Lr/l9pZffGfnNLgZ6BA9dr6Fcp5Iszy22Tz7TZFlU4Ornca7R2hVNAg==","signatures":[{"sig":"MEUCIDjKsTTFYtEgdfifNN/MtQpnvejGsL98sDgqcnzfrGdnAiEAg4QRW7X7S7utwMIiM9LjJ2ix0lM24L1lC69rZPKUnCY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggFo5CRA9TVsSAnZWagAADA0P/RLwBYHdqCDksZ1ojKG7\nqZGCpchVrpk597O7ViupqFcZd8yfQ1/VcneeM9SGvMQqin9Bg0muhLeR9Jio\nZKKgBN0h4b8m6W0zJmrfCqesxuly5KreNcASrkNSHMl+Y0QbdNmirfvPFJF/\nMO6O8Z6PZF+q4SAs5BQoKsDq0iYbXwkeEH7pcjfFM7tQ9n9GM/C4mwhq6YDp\ncSzfghashMtYVAJx1VfSxgWkcY2r3VsBx/3fxlezjUk1QqZcpTuLSUWRvc9b\nbBHoTwtxSVUW7V6IChxBgoyv7MqO/9ESsi+LJWYLcU1mBu7SB1XA5VTQwOoP\ntw4kqlgBZQf+bczYK4MBT0hfWWFzC7SSAZviXboVkGaxWWtPukCq8s8CzOG3\noJhBXiKqxhGH1MUlMe3jaLr35W/YMXrvZxunaAVHDuUPpmOAqeFWYU0PF1Ay\nJqD40TSsGohDjJ3nzLH2eEItBi8o+vfFCcQQFFEo4uueiiywmbnxvHwFPJDk\nNi1pHuvBZJta83NYEOlGC9YT6c4BITfbT+nwXYfOIhqs6o5E5UwW7bUYjyto\noEseJHlkwGRwwfJ5avnZ9fvP79P0HT7PQCyrDt/GIVEwuNWSvn8g6nRGg/Lw\nknDEkVKpjlZbHcsodxxuLm3ViZIFSataPn31SQkDpSAeW1q/+VemzIeJhHcx\ns3PO\r\n=gi1I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"febebb2ce0a546701884f86826c4448e79a2ec67","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.44","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.5","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.39"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.28-renovate-non-major-febebb2ce0a546701884f86826c4448e79a2ec67_1619024440620_0.2608092132823696","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.28":{"name":"@balena/jellyfish-test-harness","version":"2.0.28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.28","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae3cd5790bc5a61282202997fc9f70c3a49f49e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.28.tgz","fileCount":24,"integrity":"sha512-uwlndzNoubWygKvU2i2WEuayqcEGxD4vMjDRHihqqIamt9IsXQoTBXUFfeO+FU1qxy4UFozn80Qed7s+V1CrCQ==","signatures":[{"sig":"MEUCIEZTOYAbxdalp8wirEVNTK/MH/lw4R34rNlcptNxjPJyAiEAn4GJswjWePcu+0DF3mgdzPbzih16cHRPOUQU3C8D1yE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":85976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggFufCRA9TVsSAnZWagAACvYQAJNof9C0AzOth3X4BZeh\nl7r0Ez1yVlCkwa2wxHWRoL7TPAdqXayPT6iMBSsjqSnczA+etRzRIi9z/0s3\n7hWxIMVgKlyZCmKaNeBXelF/a4+nS0cXB8dD88MYy0Hhk+7UYSG1yIr3arQC\nO/B+W0N8IZPUgRufGZ55qkg4Hfz8seut3jkK/yrfNzxckg8JKs+KPAtLdwjJ\ntMx+SN1fXoca7/dIJj4rqCXi3Y+WMEJ8Jd9YWcJO3rmOwN2XjUuXhxVYWgaI\nuVGpeHDJIRr+WTphmu4h8KQiDLigmXjPqRs9yMEL1VETomsRcNkfntNLt8EI\n9pRrQQtTd/gaBE+CSGqEVUb28b4lLoMciFLQPYtBwftmo+cusYjPGuPhN1Fc\nA6zgyWJcCb2PlnokdhmuXYFuSIpo33DvbKZYGbNyAgsCapzg1iwxJwJXi60r\n/mJCW6tr3o68Yh/8zu4XoiMMTS6F33pgaW5K3g/JWnYagzxqbCQaTtpYU8+C\nycJvfss4CV32GP4XsQKqJs8Wue7sCDHXIfFyY2U4xiYEF7Ku8uhUcO1wrWcc\n20PWXPeciTVl8m4nGjvSVW/dUTJQGJiSpzn2rGeEdnmVL2mYKGKCxq8IR4Ml\nsVJtTipygyqMGxcuDngBcLSHHK+6Qe8X5zvqimv0OWCT+UD7G3W4+kTs2PXC\ntwEk\r\n=mvEH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"793f6c70ecf47fcc2ad79cced8c05a769341bcfd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.44","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.5","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.39"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.28_1619024798682_0.4844675826871485","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.29-renovate-non-major-9e43f95aa71f57ec9ab49c27c66f371cf0d0734f":{"name":"@balena/jellyfish-test-harness","version":"2.0.29-renovate-non-major-9e43f95aa71f57ec9ab49c27c66f371cf0d0734f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.29-renovate-non-major-9e43f95aa71f57ec9ab49c27c66f371cf0d0734f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30a8221aa7095e75efb8d3dceb949d19b992d596","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.29-renovate-non-major-9e43f95aa71f57ec9ab49c27c66f371cf0d0734f.tgz","fileCount":24,"integrity":"sha512-tETDRGfML+qXpCCGL4fm4l26byaISq+BW3+YE0+aqWG6264UD0owfoVoUJsDQ2AaeTjf/JqNqyAk1wraM+pD7A==","signatures":[{"sig":"MEQCIDJZ54qi9Lq6Fxyd9pxrCThkrVdRBtlwC52O9UIxu9HOAiBQiE+StBhxHXuOo5rN5gXh0WZw9IKvYtzCYc24Q1YPIA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86105,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggIlQCRA9TVsSAnZWagAAShwP/3eNOOfC8yoGtaNxdEpb\nFZ+d7Up2vpvPof6kJiCf1eGEN1bGUkv0psBIyi4ZTxR9LDwd50kyjKF3PS0R\nxvicbpZPZf6O2x4VilYAZV2doBXEhH9bAMAxPVs08grcZ/fb/wXQv0g9FBjF\nf2oDMFwybTCHvx5unuJ+WYUV5qyRzq2KGTL61VyQwpnWH5HGsibPp70ImIhO\nkG8Nce5yQM5VMoBZfp41/mQrbFDFL4OsWNUs3rwgvwgblJHCd336qpNHeTWI\n22Eod9+iQ86tyoCKxtGE/lRMj71tdgbyJwn1B/t7MDEN9ysDoA5CG5E1ilii\nrmEK1fvUFEGbZHLeQCBfaM31VA8MLdkmPlCUPKpu4m47/Sx9j34GjqSGAxA8\nj1pcahGEotEJhQiVfOtUhiGZEhu1Mm0WWJqxwGlitjpCdJHu3XshZagPmaHO\ngP0gi/iuk5aHO8wbjDJoHrrATMDxiAxfzgosV5IuSRALtiVCKov4HDNtOIhY\nLQl3XPlAAbqyFU8WZWPUc7Sw9aLhAHFvoTfOMYxkZ9eLPhhgn7AxxI/HjIsQ\nWfrF8kwWdnk9OtjevLXRgEV6QcFKA+RCLZcd+HohkzpxUVDpiczVAZy6NmEq\nmZTRVqnMhTF4J2VvH852nx6vj0XgPbG51mYAtwDfJHeBdKR8smd2zRvxkQDY\nZESY\r\n=GSUO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9e43f95aa71f57ec9ab49c27c66f371cf0d0734f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.46","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.5","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.8"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.40"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.29-renovate-non-major-9e43f95aa71f57ec9ab49c27c66f371cf0d0734f_1619036496153_0.19406607396408182","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.29":{"name":"@balena/jellyfish-test-harness","version":"2.0.29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.29","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac99a7b95b90e2a76dd12fbba752c60e2259cd0d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.29.tgz","fileCount":24,"integrity":"sha512-0GOCBASw2orSanHnpKH1pkhNSqNEw/HamBURtNQHaZGQhrgpG0a2kzUA+FWLo0aoOeyETI1RH28nEgicvgfJVg==","signatures":[{"sig":"MEUCIQDZQ1MbYVGcl9Ir2CtJTEt6c2S+RlAid9giPi1Pe83V+wIgEUGAk7nc46p7KWvGfqJsOGEVid7JPa/tS/tJTmP3jFQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggIowCRA9TVsSAnZWagAAwGEP/3+fxNbguxP7yHMMpASH\nz6hj1ds42LYUo7o5LrJZGvweLg52boYKyOvaT4z1VQL07ascKbHAh3VbWfxw\ns241sZfhCWkwofd4wHrNwy1T/CGjNGb5UG81xTPwzg9wYYGQ7tlx7imt5eZa\nopFApKD6ObP7b0BOTE5bzpHbubkd3QFjOG8PwUAMHqQuvnFn0eA5x6sXluVH\nxq7w8D2+Z0+zFPwT4x8gWCexdRqEUqjjTKo2YqClTNhz+be+Q0cODnsuFQ3q\np0b/xyJki9xE41PUAaSygIbnxLxmjfvGM/4zgCr9yTPJRNI4I8I3iUWoXp3D\niVSMTnSGJFoDxwOFyJuC9ATSf/XZ7C9coEwnRGgabH061VT7WlXWZB+bpfLg\ndDySW9a5yA5yEY4c++js15t5qRD5eU3xRImBbHu2DYmf+234ate+ujUxIAh4\nM2qFTKaQKxHpn1NGFDuRtDjIVnJdPGSVnL5tNekJ+kqWyEmaWAD+OH6QJLqD\nphcA45gAnkZ5k5HP8Uz9yFjdvtXG8tyK+5lyqDiWqeSTGUxgBi6LUqMuQ0Vp\naEQWweo3v+aG0nZ+NPcVJAJ046HReshkoMctDITiwQZizzli4C5gqA28fuQe\nEGIYDVBcxk8YJFHqrFKqhRzVwKIpOoqX/r/8S5C+dAATPqRp8fx2J7o7G2ZT\nRDHH\r\n=7h90\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"470ee0ef07a4586bbda013c17d1d09a344ac6fcf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.46","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.5","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.8"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.40"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.29_1619036720380_0.16418482665869938","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.30-renovate-non-major-0eaf644246f4e6385ffa13043479e77fe998a457":{"name":"@balena/jellyfish-test-harness","version":"2.0.30-renovate-non-major-0eaf644246f4e6385ffa13043479e77fe998a457","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.30-renovate-non-major-0eaf644246f4e6385ffa13043479e77fe998a457","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0bc8e05f7a5fdbbc01a7a8c5a4d290e131e3b77c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.30-renovate-non-major-0eaf644246f4e6385ffa13043479e77fe998a457.tgz","fileCount":24,"integrity":"sha512-UAV0FKkobp7peGN4QpVGbZ4GMYxoF6VLBRheHKH7oays5cxAFQO+x/I3HCgUwttRbJEGfKb/yKgpt+IND9rUGg==","signatures":[{"sig":"MEYCIQCiotb9bOs7yy/bFYTwZqWJivn6VqhUWP/63EKijvktSwIhAPf9NqwKuslsVJ3pfwM+NlrlWGrQ0vwRgICC6o6Eg0qC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggKrmCRA9TVsSAnZWagAA2pQP/31G/iuY8A1URHCu3w4a\n3K5t1E7XCHGxn1ayPH5UARTicSi8nPanRzbKGqWoohOP8N+mnZ8H8FtLCUTK\n6RISBaEEit5t9HMRzrkqbsFQoqOcxIV6t71HwREgeKnAUQWkfcogxYv5zn59\nFubTCEoAn/YzFRWoQMD6njWtCW4D+k/Rk4nwEepLuhsBikNZm/jTUrcT8eFr\nW5rbDUg82SJbjaDkX5bSR+lANYpqIh8ZL4em0ioGEmJFy9RuG7z58sAj+nF8\nVOBajPmEB7ht8w584bhUjJVfqZjuoXJ00N5LLQEMXVMzJjY3oeFEUiExxAuE\nmMLywcqlEKOtVIpFHp6j5MVKHvOxW72Mds4EJJD6jO/fw5r8hOzvJFPwkvrP\nXJeoLbPKyDggXj81ZedtqY260A5xiMjK0oo4C3CgRGvNs/ZzC9HrqbvTrDEb\ncQL8ci5JqrV6+tws2VNRDfJTgtsC9sbCikJoJlJKnb1jeMrRDGtt1J5Nsmy2\n6spMXlab0vihRqhovpv6HBHKmmXpOyNMbOkga8jrGl1gBmEyS9gP5hKDJ7yZ\n8xx53okkeeWBP3GWsdoagGXAT94WrNkTQwz/2CcFfBJTLAFtuVKA5aYc4JmH\ngyYIE13q42VL0ZCG/mNAqtXMmgMCbUOAxH/HQqmWp7bnG7QVh0g/ip77SDw9\n8IFm\r\n=A9qB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0eaf644246f4e6385ffa13043479e77fe998a457","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.47","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.6","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.30-renovate-non-major-0eaf644246f4e6385ffa13043479e77fe998a457_1619045093792_0.2301491469672199","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.30":{"name":"@balena/jellyfish-test-harness","version":"2.0.30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1169346a07494fafaa11283bbd2836c24ef850c9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.30.tgz","fileCount":24,"integrity":"sha512-iKGOcoYhmL4Xwy9TW+gtcc5KHtR0e0v8lL1mflMRuR0JE6u0crPzmNojOG63lhA0Fe5akbP/d55km/heJd8rNw==","signatures":[{"sig":"MEYCIQDGCf3ZZ6WSd3pl1XwE9kV4urQ5k0voDzusVSMELpvx0AIhAL1JI/8coyRJogJThqmodrDsO/aaSTtPsAT87mKvNROv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggKyRCRA9TVsSAnZWagAASTYQAIHgUeRmMtdkU0YNJEWi\nVoXKCsyp1L9EekLUsnCqsjXJF9D7K5dKX+HcPtzIQETXFl1qsse+AGNPZBOl\ndgJv0+DdPHhWts1NuhNdGgSpZVCk88gpF3AqYRO4yBAtUBKIfg0OG1nK2Ab3\n5zdySCexBL+cEOZJ9ct8k5qfHKaZjxG2zc5J150RyPLTySKzg5bftu/yOZst\nr2QHJoFHtRioHj5OY+gWZV6221vnkYUZLnDaIcOTk6Qxpac07j9Iq2NHDJ1T\ndqvjmdxlqPUt3LCvMgoHLm9r48vvxU8pS2fRzRYS5l/zOD3/OeYPtfq24jZL\nWS78XWPzJZLFJzJ7aRobmtYVKua4/LpdJ4KEJzAwLVEpLK1Ep46AcTnJU0Rd\noWILLntYLGY4uby0rubRFt152rlxu7V++M7lVmWLVs6m2lbrnatRVMHqIT/M\nQ38e6LsA4Z2BKQVDKvetEl6w3H9Hj+p+YqP4GciWeozrZC0d65mfI2+ghjjm\n6Cx9xLSrfzvTiSiPFz9VtFXc9FORs1UBC319zglwEnrvgpIyM4mdHOFU8YF3\nCwmucVS+UVnNlvzqk3F+v7SqgCeFX+1taKJkGwB8blBIX54lStCzNPEtxrDE\nzuOJox7Na477JJiq+Rhlv5XW42DimI5p23cpCYQbtU7CQckHdl3gu5noclkC\nIqkK\r\n=I2qR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7744ddc07772cae905486d5541749786fc3e8cbf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.47","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.6","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.30_1619045521501_0.3451490331348417","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.31-renovate-non-major-f84fbfe15ce2b934aea5a586f7a8d401e6957b42":{"name":"@balena/jellyfish-test-harness","version":"2.0.31-renovate-non-major-f84fbfe15ce2b934aea5a586f7a8d401e6957b42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.31-renovate-non-major-f84fbfe15ce2b934aea5a586f7a8d401e6957b42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7c4709c6ed2fbbf08b492f5f37665c146c25ad59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.31-renovate-non-major-f84fbfe15ce2b934aea5a586f7a8d401e6957b42.tgz","fileCount":24,"integrity":"sha512-L73iltpNESlyHeew9HT0F3bVWMz3bQ88vYQl6rz//YLQVSwiJ7UWUmKr+ct/WeNcCmOUX/azhotuxw/ocjfQCA==","signatures":[{"sig":"MEQCICXEXqA7jcc1Og1ijV2Fl6HyZACt4eOZvfLdhrREPGK5AiAJOmSn21cc1FeGVRBZE/6mysHbjn9tLSTCgX1LrDvPnw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggK51CRA9TVsSAnZWagAAjgMQAJbQSLWTNRu+AuOTi6Ap\nq23QbjdaQ4LIscf6esdwwCfVbn2BFgezy2LaMRIBcZYaojZv6DGS555GwyyZ\n4juTVcKTvWY5JoLq/PuwyrDnb2VbwnFYAhlgdVYJ2DegY7jgNtweud2Xrczm\n1WvhemM5oE/F5szuRAQFTbQ7p+hbEY9j89EIS4QoPOxL/JpQrB4/Fov0lxRW\nNZHsQPFc04QBeOsdv/qVwIOE+ns9/0n34cnVs6CrAeEIVzRtN5j6xiOJHAEt\nOMFpHJhAsvEsgkWIaeDFmVN3gqdUUxgyrsdu6mhdL612YxjfmkusuUBwP96M\nus4iE3eo0VdCgZMrKTrZiFbnRh6l5hYx1JZhw4MMQTOAERkmqPc4+4BK8fxg\npFWgda94/prcucMzyKWr4dyPiNVmHD2gosBr1JbH2UgyLCLOFh6DSPbjdoT4\nUI0j0y8wAiLeb2n+LN7DMJQN/ptva6vv5pL+BbOwVIn6JFQdB8YzSgBqXZhX\nkg0c4olBiCb/WfWdCK+W0UwLJWWPA8LFLGdPD40jDr4waHqpPAeBME7KQNqn\n+8JOuzy7Zr3Ch0HuDRK2QgTzwdMJSwU2Xl/ni2rRamk81s0vopILa4q2MkY2\niGC6yK2FxDEtiEEX827Qou+tgwFw5hWZ6THI5et9ENgpTtFd9rHU5/nkHIKd\ng0tG\r\n=myoc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f84fbfe15ce2b934aea5a586f7a8d401e6957b42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.47","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.7","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.31-renovate-non-major-f84fbfe15ce2b934aea5a586f7a8d401e6957b42_1619046004806_0.2798428132985651","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.31":{"name":"@balena/jellyfish-test-harness","version":"2.0.31","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.31","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2fc1ee3fed15834092dc71da581315aa696fdcfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.31.tgz","fileCount":24,"integrity":"sha512-56xWYGytCBqoy+ycu37RLtP9su2iMRaJKWmeNFGX0SmFSxrOkh7i2fi/yNWTicjNt0vDwtXCn0L+i9aMSOBf2A==","signatures":[{"sig":"MEUCIQCg4widhFB3I5QQBPXfmLPVO9cgc6GxOwRsjxZfdqasUQIgAJkTfNaI4NuHgh3t4xRce6Xi+SGYWRAKLXfNAlBo3tg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86219,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggK9dCRA9TVsSAnZWagAAJtoP/2+7xRJILc4w7TkMgDod\nRPXsLAYF4n7jptLoIWxZ/kjs0cbRiGbxN82hTXEDu8cVQibTwjyX8R66QhO5\ni/IyO+7PPUZfymTcaA3PMB8XKapu8h/v4V5fD6khL+EJfo/dJ5TZY69Cq77d\nHzKfzFnM/lA0Uvz9Pk43c4XLTQpz0O4teGN0ZdbTI4FHId1SjJxavbD4Hf+Z\nu+WedmF+kMQLQ+QnvVtg4UnszQOFbd11qade3Sii/lWJ4TKE+qIknFUoqbgV\nFVGcbRkCOq+BeEn42i7BI2vTwRmcHqIVzK07ylmFn4cvfK77Y/56W/jWqtV7\n+1Sv9R3Y8cJYz1CzDyVWDbFSMUCBnF3sd2xr3oWPKrudcuNx11wCFU1jw8OB\npkPrnFHXoS0zjjiIIIiS+EnrrMh73mARLHDzvLpIPQjsVh7wtsxXjxBhM9Jp\nl2Wu9+H8VC1EaB4heEYxktawNunc2HBGby5p61/eoZLchWLOAK/P80Ktutqz\nbqqZkv4LGTdEn1NwOO+U4mFPyCOxlNu688izXrxDfHwG+BfV7Hu61pGJNfr/\nqovL+H/NPiaZgLjx97SGZcpQYuBLLaRMVZSLvJa7amnJulK6skt08LdjFFTk\n0+AhAcj26S16DliFlw8qbOSHUDE1RuCnAmAUyRnoKYR5o/SJxGToMm7xsZOG\ntJBt\r\n=wtMM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1be7a52f9e0c3a1417d414fc94161c56ea9e82e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.47","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.7","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.31_1619046236592_0.7993584368582114","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.32-fix-actual-vs-expected-eeea96fa41395fad499f5a384a24945af0199543":{"name":"@balena/jellyfish-test-harness","version":"2.0.32-fix-actual-vs-expected-eeea96fa41395fad499f5a384a24945af0199543","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.32-fix-actual-vs-expected-eeea96fa41395fad499f5a384a24945af0199543","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"60a2052d18f458b82032419bb5df0a654370ba6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.32-fix-actual-vs-expected-eeea96fa41395fad499f5a384a24945af0199543.tgz","fileCount":24,"integrity":"sha512-dOccbOH+FJu/FQ0v5Sd/nOAfXQHOBjlhCVoJT3cFaDm7NyxdlBD9Yh9YIc6EHkCFqOzSyfP3DH2GU8zIqpCrtw==","signatures":[{"sig":"MEUCIQDo9On+zlexn8/mwMy1rqTDulnSDQ1J8vFksiNRQC8e2gIgPNi1822wxCNesZ/G8DdNP6ftqwpcrzoZkg7EzoOLWGY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86375,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMOGCRA9TVsSAnZWagAAj0sP/Rr8+vRgolJyTc1M/gDl\nOx2JoukVVsPwI/84MfMjLxlVt02w56tkhmIpvQMRmvBjPeDqLrd7taXQTtCn\nW5hK+J2t1ERQxrAVv/4B2QkXgHIUcaprtDdvHD3iQqnX1mEQEJ397KW1VFYK\nICihw8nP7ZhgsJnH/qKQN5gzyN92vB+meIp0pwe6uL+iBW/zYb0mzrzNCKxv\nCm3GJm5pRSmhF/JkJKSqrXCp3EbK9UrawfUMKzW+VEmE2quOh/TwWoJ3rViq\ndc0z+8+KdOzclABgfiPc8lh2vHsNp6ubZANBLcw/QcMd0iuR7fZXdat+Ha8q\njSV1N9cHbPpEvEjy1iWxFaUiGvxFmmuutcVKeg44/3//SHnzJGtcxdikSAao\nZ9c/tNAqSCgkRANyjMz3RQjcMbKNwWz+7eMFa7/w1/HHVhvWA+pxtJxvpOob\ndxG/3vZ9ScaSzarIvCC9c7ScuSkaEZwhndZnxWhLPSJxAmnG5oOCKipgdoyn\nr26KtqztCLw9LwNUMvTQYORQqvxrxcTzDEHUojy4Mnnam8WA6zGqsiIYaCa4\ni9kJL+MEED5c2jR0vLGbLsqf4pH3vfchyZsvWWXNCKGF9LhFex6VvMl82r4B\nCW07vWlulC6av1/NiZeajiwUyAXGou51xGOdK0XYHhqmq4R3uaPbs1woQ5ZI\n+LTB\r\n=XdH8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eeea96fa41395fad499f5a384a24945af0199543","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.47","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.7","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.32-fix-actual-vs-expected-eeea96fa41395fad499f5a384a24945af0199543_1619051397642_0.7958431742190841","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.32":{"name":"@balena/jellyfish-test-harness","version":"2.0.32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.32","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7c0b20d9075eebaeaf51ac0ec4f74b052d073b63","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.32.tgz","fileCount":24,"integrity":"sha512-1odkUxpML+G20cLMRD1+KhgZ+/Eebb5/qFhDe/p5qg4yzI8QC5aWsPeISexC007EYDGnlcmZ8v8sAbXTmEaIGQ==","signatures":[{"sig":"MEQCIH0xMfejeWXsViPdGyLcDnkl/CVwJB7NHmJx9XGrygNFAiAGe2scyojegj8ju4NKnJMKVHKHft/ulvn2DTubAPg61A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86311,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMR6CRA9TVsSAnZWagAATTUP/jOKwJn/cMsHSSGGO90R\nspOzoeQ9KTg6K2uLFW2pqABj7pDbeuby+vKt+zAgcXNGkr8eJ+q8J3DEEOdj\npo3jFRcJ7PMjWELtT0mGnMN5P8dqgGdUTLswEMp8WeCzpuWel5wwIbytBt9g\niuvfQ88EZo55y3ZTw3FgfsGT7cfmeLn1sF4yoXEhh+w7uoOjrKo7uaD1Geh+\nPweoWHQniyxZO2cqv9qkb+NFeKYkybqCiNGn+9ALAP8k3ANQmkYDL67fFzUV\nfm53iVz0qiP0DYzZpjld0E/4tWdc/v0NWvGMdLD+LuSK7l2MsK1pnPHxG4Y1\n5f9BmsgSsW7hN81wGiymGiV2B6eFanwuIW+wiwfoVcqtvom9k9xM+HIOECr0\nPmEAwgoXXYNL9bbz3xIemW0ZHAsNVL/qbMistBwdJD5qLLXMpgFssTz0EU97\nj6o514ElQfoQa9FykTqE8IkexdoHNDT0zySTsdqQ81VMJ9ksH7N6txH5r6Z3\nmkLGPnmVw7LbJsaW1Ur0gF4K9L/8yC0sZT0sqyKfGMf6s9UEbszbmi/t/vCz\nMQMDI8XTHnJaVNTeFW9Q+Vw4NpONpPUS9Hx7e5gKK24zZv+vq4BD5V8+9k/c\ni2sgdYQDSb6N+GjHjQMJ9aLDFBnGvW7tPE6X2R2twmuutrNA4dck2yKP4N0p\nnjBx\r\n=Qf7a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"66946b1b62b90b974337d8c824022e987ca00c3b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.2","@balena/jellyfish-sync":"^6.0.47","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.7","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.32_1619051642411_0.604872346669268","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.33-renovate-non-major-0bfb4e47a0f0fc569151c288066cca25fad9979d":{"name":"@balena/jellyfish-test-harness","version":"2.0.33-renovate-non-major-0bfb4e47a0f0fc569151c288066cca25fad9979d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.33-renovate-non-major-0bfb4e47a0f0fc569151c288066cca25fad9979d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"562321dfe13bb6ee2a6f49a24d76b6ffd1a8d1a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.33-renovate-non-major-0bfb4e47a0f0fc569151c288066cca25fad9979d.tgz","fileCount":24,"integrity":"sha512-vwsGUlAwPQFcPn+/oE/2naPbiwajteAiYM2nfir/YwGnPrSo14VyNr0paAtGOhvsM9F3ORvfNMtQURWpkxzWQQ==","signatures":[{"sig":"MEYCIQDEW9RA5hzOSVyEhL15MnJQAvxxq5gFPyIUMDArS3N9YwIhAMG7pilSXVZnCy0ZLNrq3CyvrcFs4Eqr8Q2AeUPr7Jzt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86440,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMf0CRA9TVsSAnZWagAAjQMP/0DjwDPTl3mEDThJJhdO\nZqSaxSnBVuekbB1Jl1yF0+/Y1UC4VhPZ+Toer+24ZgQhA/uePSz+sLeGMUXr\nDzgJLJJbGC5be1L7ZMpNlHDc7KD02K4JZhpzTkLBJE6SoFNeoqQ7rBiB8Lr4\nEmhxiGLtuYW/QkGMA3HAQHu6y7WAxll5FknzZG+my1lCfNxmzQwqr9y1mzD0\n24ks0kalWMV9vO+FlwdBp2Zkm99wESMq+Kaf1UTz6t2KJEJ6Sr4f9wjvevpE\nnzgnQUZ1pP2FyFlgmyJtPCZRHJGfDErGq6oKVtuu66bOTeLHHtscdzdo3qGg\nxsnVrpzzlcwnwsSNSNeX1RAQtT4sYs/UWJ23fMLS42ZZT5yM9SOFM6lO6jCM\nfOLd31tJivFvid6i/FrPCuQTTmKiZOFG2e0cW9Hjpc5SAhsn01radErFkSPZ\nrJ3SF3Ou5Ojt8fMCPxH3evAbbGWbxCyCMHFuw5II4BPAmUdpJjwW2CJEK8ph\n7O3b+b2LqoIoudoktCgW8xxTRbWA6akDsTqn2IEnPKCUbadY8P8Ip63WMmRF\nP3u9ll0huC8flYkUa7v6IXJEsqpk5rAs/2Yam2XQFIJDtEButUp3nGjZcs5c\nHAI/7QI6CsYOAQIDz2gXd5N3IuxJHUMZN+imC2DsaEkjDWUejnfNUTvCYJe5\nRxxY\r\n=nF7i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0bfb4e47a0f0fc569151c288066cca25fad9979d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.7","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.33-renovate-non-major-0bfb4e47a0f0fc569151c288066cca25fad9979d_1619052531853_0.054923240221538716","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.33":{"name":"@balena/jellyfish-test-harness","version":"2.0.33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.33","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d9069d28ffcdbd3ca78fcd53da36f224c2657bc8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.33.tgz","fileCount":24,"integrity":"sha512-eV69PKXPuG2GREHjKcI2Sv1NibICstA3eHA4Vl4yEoVkLC4+/QkEy0m8bmhV0N/+nr2Eub+Zasl4Y29r9i53UQ==","signatures":[{"sig":"MEUCIQDy01vwrmsMxjC1xj7MdmGjPYS0HmKr1e0TwphCU8mCXgIgWrojewgOPDSaUtnlLjmFzAyIJAck8DcrEK7sBt/64NA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86380,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMlTCRA9TVsSAnZWagAAcNcP/3NxO5HnxIrWZMabVu3S\nc6Y22wm0ld1Ygzb07T7xf8Gg3u6L5oQ2N4j6gc2ND64zSyOK+BWxn0+LGwyy\nOvs0j3+sIvxKjoHYiXGsm2ZejuTEeH7lhbc1Hg0DY41WcaK2KBmr7jFqbHE7\nDktRMPbYHGhzyDH6lREk296XuHDFUpWQZVCdylC5SFVR1WbsJLimNxOPDy9I\nuiO/Jux70fV2Eka409QeLi5ZRSG1O612izOPlNx4rzG2I7M9b/r1+SWgpdvB\n5xinFNJ5UwPI6yRKTgLHYhNz8fkTXIUhBPgiU1RJqWjtXvSYnNHbnbS9ZVNc\n721mrMdzr4EDhQ+wzhidNAXE9CiXRtlgZvUQiBco2hcTKhFyf80/6iwdgBjM\ngQelZoBH1Zc1Hn8L2pdqSYnbJFLYjVYFAzuVzUc8N4AV0DXuruGsBTV/1ej0\nZLOvMMo8PUo4gr+CzFiRFk5qjl7BvISYc5k+GMBZiZ3jzB0XWNzt2qEiqnLR\nK4RhOfCCGebGsgmAvKHZA+5ZgAzBqG2K5swkOG2zfC6uqXo0h5xIjIe6WPYk\n5tpDaudaDD80i1i5DgFQAseSIszGw/6h02DGR4OgGiTdHNigmhuGyAu4dHy6\nzihhDjd+hoPxCPbcKuXzVFBYwxHfNvzwK8GAgOOdqi/oUljo6A5XDD97zSSk\ntayK\r\n=byZi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5a192472e8e2b8a0329e85adf92047fd2c0408ae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.7","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.33_1619052883372_0.7374405052778759","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.33-renovate-non-major-e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8":{"name":"@balena/jellyfish-test-harness","version":"2.0.33-renovate-non-major-e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.33-renovate-non-major-e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3371032872df02e1d9200dc878a17d4fbb4e5708","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.33-renovate-non-major-e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8.tgz","fileCount":24,"integrity":"sha512-Eas3UUUh5VZiV0xfJaJHk+xnrOfIkj2V2Mm61VUhGep8FRl8EKnqRYq5ABNdvd2rJjkS804utne6rTwceXDrUA==","signatures":[{"sig":"MEUCIQCA1kvcQZkUeJxyUGceKYkEPiiiwqyp5odfErYzO52JgAIgTjL7HgM5Y5qFbmJH0nL7M0v521pJ+TPaXzwLmdEFaUg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMomCRA9TVsSAnZWagAAzKAP/0+thQ9/02lYsuynQ8Mi\nCa2p8xUQxrVaFxPBJNSO+L0sNpq6TtpEOGgrfL2KOM5BLWD5DzdibNCCVtnh\n09M9DzKjSZQmDEGp635BhmafM8q632VRfmkyVTU3ZkQ9G51G7GIzJT71cVGQ\njrtJ/WBLtaiVYazTLbH6o56/VkqT8Z1fZkxniWHyUgPNv+QbMNpWn80gxZv9\ndzg3HAc37gNyC1r8XN+0YZa/dwujhfpXvnHg8SiGChQClgXv+iSiiy62Wip1\nMBlQgeSu+CvJ7o5/KC3IH4RQPLwUwXse57QzuhCTNVT2Gum2/UtATLojbxDT\nEk1sHsZkA21Qv0ryCVXOLQZL5QwY1nLOy5KqfDa/j2Czrwa03Wv5yigRCPDC\nyPP4z2WYvB/wolaUuCpa+S4lmA8MTaIswzj4gOcWUCBzeM3KEtKCm8jXb6vF\ns4A1Jq+Q0AvKvWwQS4igVpUlsY+0M+TGe5ZjxPzLzx8m+Z+HkK/ATp4ukN3B\nx1rvJBgaM0k2OokhVtpSy8o9Z4dgSey3Uvs6BuDCwSyaAu4kzEKwJdL1Z2LK\nM8B0ncBig2OkyB3u/7Kuq/6M95a2sOspH/uW0eNx74x0EhSkX3Wh41SnsWnW\nJVn15drlk99T1az/2Qvd7+qbqVS/wCuPsbVlJqctOs5UJ6zTv/qlUD/Khb2S\nYbyW\r\n=+lu8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.8","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.33-renovate-non-major-e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8_1619053093593_0.8022666426044451","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.34-renovate-non-major-99fcfaf45b7a6ede0f23d0feee76d04c0afed367":{"name":"@balena/jellyfish-test-harness","version":"2.0.34-renovate-non-major-99fcfaf45b7a6ede0f23d0feee76d04c0afed367","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.34-renovate-non-major-99fcfaf45b7a6ede0f23d0feee76d04c0afed367","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b8f734e29151b8504bde32f19d02e2704adcd9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.34-renovate-non-major-99fcfaf45b7a6ede0f23d0feee76d04c0afed367.tgz","fileCount":24,"integrity":"sha512-GmFAozA/uc6Op4vH4xOEW5HIYJMY7CirpdYj0mEHL2cjB0o8EwKyZOBhLcocVYSeyLQcDq4VwgPirxH7yZrxlg==","signatures":[{"sig":"MEYCIQCNsgd2nOHlE/ZJCTzffWUugqc2Wd3hC4D/eWfr3TzO4wIhAJ2i9sEShfrRSGCjo5R0EoqbWLhyeeNoc8U4/jgzPPzF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMqkCRA9TVsSAnZWagAA248QAJu7bDKqm6W9ACxJFNG5\nffref8Rsb4EInAwEwU3+v842V7uTHnWi7raq8qYTuEBNWWoNwUZObk6cWf3v\nLMmC2m0FZFuu7hcJxiZNe/Wzhis2iNLdZcxbviKgGRUNR6ecw3VET0YkM9G+\ny3TW3ZnzoKdwW6Uot3jhmuBfeJ402f1eJvPXck1/iHn4OWK1wMIpiGAu9MDe\nQ0wGNgxOeM9fA9l8zBtB0XdJMOkbXWZdRIvYnQmJzSkFEE+ZskBJ57+urHns\nsiBP6bG/3bRScdV2b6Mic+d8SYlrNhRlcfoeg/nNSc7nehpKKwZ7TuAlk1Hy\nPb8g096bj9fBm65Faz1qxZi9izupr3l1shPGz/3oMqamO62nm5KKBD9yI0ZT\nAWLeVeKOlAsFLD3uhJvdDLEkfF10/pRNG/ty+QO7B/p9b92yAhFFJ0f16Dz4\nhJoyASZjqzz0p1eSOfgGJvF+4EQwB08J+XqBoE+UTX7y4ZT6gkW/NwiKWmxw\n/SGSat8EabLR4vZp4btpQjnda4CFggncF07s2QdCjceyS2NC7CpuEnpLBsZb\n696S6dGWMZSa/6OIb79JpfsVE56E86IC/Qyv3zmdzCS/i0Zg66B4eB4qkDJH\nC5P+t98V9+p6UezjMvgcnKOO0YhUWPiUE0XiAEv4EhHBmyip9f06y3jiBcgQ\nrh09\r\n=nAIF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"99fcfaf45b7a6ede0f23d0feee76d04c0afed367","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.8","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.34-renovate-non-major-99fcfaf45b7a6ede0f23d0feee76d04c0afed367_1619053220498_0.8913571171879429","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.34":{"name":"@balena/jellyfish-test-harness","version":"2.0.34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"723fec6ca0bb016da7a21728409d43f671ebb44c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.34.tgz","fileCount":24,"integrity":"sha512-gutFzZ5fEhh0kl2hoiFtytcIRh+ONnXJ7L66op+3UiSClU3d8AhylzPrg8pRtsamzOzexcXjDIwMhrhwl2fWZQ==","signatures":[{"sig":"MEUCIHmSlHBeu6fNNG2jMqOPr+yjVtE8hNa6uMooD8O6u1X9AiEAmf3n7xwJS9xlQxu2aedcIxmbW49JPmX75pjTCWh3eW0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggMttCRA9TVsSAnZWagAAEZgP/1+8YnoHcXT49ELIqs+G\nOfGDij/pFF55KXL4w85pPZFgNDha9StkFIN5tE+Lu0xg4Ax1WyuyfBry4lYh\ng3+QuDQ/N/PzQxB/QDfP0Z8jzY7bqfymZK+HvKMwKpSSzIK/HS24Tc5q7ctx\n2vZBOdhnGlp3gWhpWJf/L5bAj0qfwyyxpTIGZF4BcoABe3WLROvQW/u/MejE\nFhWwuOIOdY1NB3OHNMQMgNvct9Mk3VNkasTcIPJto94JuyxtuLkKeSlN139O\naMlAdpMqhgeHQClnqfuZrN2oQu3tMkTE62Nsr9+19kEiJqoHsuEjKriYf+/q\nHwB/f7A0TRq+jmC+ljuR1uuX5Xiy/AWssIaaezP2gfg46S96Q3VvJEEFbFHq\nAjeiYJBr9oi64coMS/pTaeI78T6mfS1P8qGcnFBNlgCWu46+TUzzbSEHU+PC\nvOiZTzVDP45JvddJBVojJTCuoLWY6Slx9hqGzcDe8oJFGm6y6dB+hR0llnNW\nmiCG754AuD7pinYdqHQUMpUUJYeXRLibcJO8ySPRLlWR5bMK58NHo74r6aK+\nr6jAqVmBdDFW35IkN0HttKbwJKfkiGs06y6FYOdoFTWepVOjlN3mXnnC8T88\nabKq0uuULeetAWP9TW1bWefb9JELHMj2ohPOFn7ioqOm3B60PJ/XQmN49qgH\n2eLe\r\n=lBIA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e52cf4fe9ccf1f8fe3e2763dbaaf7fa2c77644c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"0.0.575","@balena/jellyfish-worker":"^4.1.8","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.34_1619053420789_0.22019924512325906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.35-queue-update-d8041d79558474cf803e8e5af54d4e9294572dde":{"name":"@balena/jellyfish-test-harness","version":"2.0.35-queue-update-d8041d79558474cf803e8e5af54d4e9294572dde","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.35-queue-update-d8041d79558474cf803e8e5af54d4e9294572dde","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f60d1241d5a0f331117202906de3e7b7b1a93924","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.35-queue-update-d8041d79558474cf803e8e5af54d4e9294572dde.tgz","fileCount":24,"integrity":"sha512-ihvs2qOY/8T2pSzKOqN3JldWTJ0HiOVfs3twC6In6fGGGQ/COEIGiRWYdPxnkjTyKYf14rU8Fg1c4Kbar1+IDA==","signatures":[{"sig":"MEUCIC97Ujlp8HdbUwdc2GPsL8yrh+uQaCVNAQQOzqQUoqkIAiEA6uBjh8F1p1wCq1OPVcUqbBD69C45p2+YdKGpR2mxkn0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggStuCRA9TVsSAnZWagAAbZEP/jTJPGQ+sI36UyeDQr6/\nLC6Kds0p1qoq32ThkGctWPOhaDsl4EpNrFc/PfSwEZFltyRGnXMaaRNwkCF4\na7UzSxNLDEeIGiNYG5Q22jg4TqdxZziy8ecWLox9+w4NjYRftIFvEuVrVH3i\nXy41Fo2uiTAFn7vWEsyovPEUT3Vlj6twCaXdlcugYavwSkAfP+X2QZwe6IwV\nNrZP5u6uBsS7ezyI+udZbASK5MiK3z6p6MMczcaSnj/lDQVCIy6lKq7XBl0l\ntZLY3nG4bQT2IpBG4BYeNLzQA8HzzUOR/oEe4MR6FpRcLMuuWCLPzYHqonjZ\nxbU0/sb0umMOj8zPLZ9sq4oxbmAMYs18R526Ir03997WQNwvELlBLlQpLi1j\nN59fgjuvVMHfKEU4a1oz90cKfExXVEg2n90yHlHKIUBAGOsWlkheXNGZ2MgT\nTby8zuDZjg+lXvSYgtwFVWKRsa7bWP4Y+kIh3qUXU0PXuL78QduWOzX7QlwX\nle+FUeS+xGYmbpgKlx6s35qodAY/rQEhhXnsXbEL44mqBOq+rtBBSN5lWENC\nCXJYtG8dFTy3bWsX8AwJ8ErpGMXG9D8zC4npVyWMoCte0gQ4guS46+pcVJJx\nxwF6rQSHJZqXi3CEa4MiHvJ16cPU2d95n6rTzJ4MPqrLmCm+WauzjoHA250l\nthBr\r\n=xRRn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d8041d79558474cf803e8e5af54d4e9294572dde","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"1.0.0-typescript-9505c2df9213e1c0467958cedc76aef2f2774e38","@balena/jellyfish-worker":"^4.1.8","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.35-queue-update-d8041d79558474cf803e8e5af54d4e9294572dde_1619077997971_0.19703472110245746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.35-queue-update-b96564019348a6c2e7faf2a2553415e22183fe12":{"name":"@balena/jellyfish-test-harness","version":"2.0.35-queue-update-b96564019348a6c2e7faf2a2553415e22183fe12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.35-queue-update-b96564019348a6c2e7faf2a2553415e22183fe12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"816697a19521baedf70592796ee20deb4570af50","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.35-queue-update-b96564019348a6c2e7faf2a2553415e22183fe12.tgz","fileCount":24,"integrity":"sha512-56r2k8oHzEPHOZYO601IzUX9Gq3n/9R6V2X4GHYsti6dzo1PgFgXhH2jazsDU3pcBNwq2JmrXwSyGSXhdJEt3A==","signatures":[{"sig":"MEQCID7NcneCMnP2EdLNRY9pKydzebKhHqH0loEPzx7Rct8fAiBQ2tUQn4HmZEUSPI00o+otppLobFKJdyDvCd+vyswO6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggUPWCRA9TVsSAnZWagAACNEP/2adK0k3eLKRulmyRnvG\nD3o4GkSurdDDiv1lF4z4uNNDiNhXy74+qjt5TuqZZmEJllYsA/ju0IE5+DPU\n3hr813k75Cp5pDfiaEdOPRPA+4slLTzKtskeAKRJTVBtDS4nWniBMG/KuLEP\nKnXVA+2Rpwm+/qnj4sqvC8xV6J/TGa5iaizcT+Tn2JkjZO737O3nNSdYOxiM\n82U44fm9S5GTaAZAjPN1P4R5ghHkb71AtP8nl6yAXbGDkp+Sd0lEnKUNrHTa\nTIaxFFba39K3z9ckCDY2xN/w+OVMmKANbYk0Bf5MXCAj3bcfyTaz71l+yZZH\nlZTpfKoftl6j9e81lI6i+6w9ghAP+TIggCUo+PqHgLSLpPWRMQFJ7s6w70uY\nsC0rnbCnL/3eeAFbsCyy7x97zMTsjcP52swHb+0b43p5vgHPF5TJUKDozMeM\nO5/WEMa0ZJsRVT2/vDAqDsGH4Scujh3+dSesxYD2rg/H4p5t939I8IwAW8aH\n2thJvWzdRKMI6ztrZWmGT5p6kCNNs88UpIIKhE1yJHpjowaVK8vkWTWVkRq4\nyJWij31slvwNkySEww9eeIC0h+dgB5plqLVoeapv4nvGZBH4NoFJD2GHgm/9\nViUGAKAGuOI4xXFq7TdYCqWjHxJaG/8zkLGMhODhlues4WUvFnOPLpvUVxdl\nSkIG\r\n=nppw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b96564019348a6c2e7faf2a2553415e22183fe12","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"^1.0.0","@balena/jellyfish-worker":"^4.1.8","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.35-queue-update-b96564019348a6c2e7faf2a2553415e22183fe12_1619084245969_0.13355505186651073","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.35":{"name":"@balena/jellyfish-test-harness","version":"2.0.35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65284989cd98917a54c807306d9a27aec9149e7b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.35.tgz","fileCount":24,"integrity":"sha512-7V25hb2SHlg7rGPA0YDHF4hP+dBCWD0h3d8I+Huu49PF8fLs7gfPo+zlnqWPc5tgo3cC8HCwQeMzco7RqthytQ==","signatures":[{"sig":"MEUCIQCbXDmtJ697cteskzLjtRKdU8COm8+E+JImTO1bS2MieQIgYlWkGR6lAorSQFFNoVyzbgHe2RDl2Y12OfLmCPmj/84=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggUckCRA9TVsSAnZWagAA4dIP/iUNr7b8HM0IjEfliz8c\ne12r6e+XFA5L3sqnSzwu8b43RDG5hUX6a3AcnMxzweLMa6kZ/xE2nZkUPbUQ\nL+T8mxPqlYynO/GLm6fbLn3eHNUuOj2L0uaFfG2iplW0C8CjifT5/DS8k7Yo\nC55k/k5F5nNqfMOrRpDgN0oK9dGuZ9b+6GCahn5UDjOaN1LoJYs79RaCC88r\nK2W+rEETM3bVBHaxx6WNQCyOxCSdnMD6pl79tMRc1MEwheCL3ZapwmQ+oZMG\nLVJCClVFgQudYmDe+neg/Z4bYJ8rxvqzemqTg2ZwuxH1kwJKXMM7FU8imZ2o\n3uuLNQrsRLgpE94Z3lF0Qe/kxiUdWy6BV/vtNY+suGmFA9uJaMIyrQcgD0wH\nXWRpx4pRbpndi4/TPlqM6tXvVHGmW/ZD1qu7egYXqN+fQF9adtLApQ1o1m8F\njmrleJc1FyBTpXQNqjx4VJeGt9zFxCCqjC7XAYE3We2WqaXLws5C1ujQOFtP\nH3GnIERmhVj4eA4S6MKsB1DANp0SRFD2hly77zKTxxKtLakA4YFeHURQ0G2j\n57KhIMc5+51SxfO5nexuq5SPAgKOohVlqxpUKXMLNUjuVlUlXqolwNT7TF/d\niYsCyWiXY0kdbZLIy8yxze143zMrUlOMlP16yRknKSCjNV6UESVc4a2fuNH3\nGCZe\r\n=N5/u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b6cd3337ca8fb749b7ccfe92e7a102524f82a910","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"^1.0.0","@balena/jellyfish-worker":"^4.1.8","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.35_1619085091927_0.281052280379253","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.36-renovate-non-major-cec2958e9d44b31254ed631fe2a9363e01d9d30f":{"name":"@balena/jellyfish-test-harness","version":"2.0.36-renovate-non-major-cec2958e9d44b31254ed631fe2a9363e01d9d30f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.36-renovate-non-major-cec2958e9d44b31254ed631fe2a9363e01d9d30f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49f9b8f132546291a814b8a2fb348daf63c03f66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.36-renovate-non-major-cec2958e9d44b31254ed631fe2a9363e01d9d30f.tgz","fileCount":24,"integrity":"sha512-m5c7Uhz6NsKzeezVlExEqJ9eAYRJ87fazXWwtwbzFpuJM1bRNqGmQH6qihZcBuoMFzrsdrj1Yl+7JV+pgmKVDg==","signatures":[{"sig":"MEQCIHQhc2l/+QqVqrCaqoE/4f2C8i/lWIodcVfzilbduRJ1AiBIVumWZhbsj1fzqkaipzi1gpYd+vF6sEcRBL8AqJMAFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggZNsCRA9TVsSAnZWagAARw0QAIMWXUdiyGZQceSMmlj6\nKCdIxu3m/p+2o7cyM7m0h7mzWAfEul8CgwuqAV8Bl1mFbkvMOv7WzYhh4w4i\nCuV7sKMa6PshpTx/h86EyMEnZfHdV4DlxVKZqyZq3dVNu/XiMTJg/ar58gfP\nDWZC6nQuxrX/fneevkiUQnvz1/nQB88FHTNjYook+kHxGd78CMPQvphkf9zi\naPOEFcEVCKpUUwa/rlm2i5gNs+7a07crg11uiwJv6a5KjR5B/2AEsU0KpX8s\nUeT38v9WPhJY0zXkfEkdPbXUJhhi36sO+mYpwqrUDWWqH6Fn5Pby5wgXsY1z\nkBwAp5Y+Lj+4WVKprk8UECGCCoFW9MlQcwlJ/J7V3wIYIdJuNDaDEE/+XoLU\ncrr9T2NjLwUFTSdXU86xRyr52P3NwDdxOUSryLNliZeNFh8SyMZTW8NuTy7W\neVf1zuy2T03xYIQwbGakdj48bayf8aLENa7DXokKoVQimu9aAbrCdXADguzP\nNrD5qHZY0cm/u14jsRb8uzFwU8btcUNqq+ziAcSUEdiVYphkGzjfOhfHk55R\nWUqKj9raDFsVlBAodz5L9AvA+v7IeX2yPemTmGphuyLhROy+6LuWf8gnSWB/\nbTV8PcA5SEdhHcXDMItxIwISWQbdedFDf8lwzJklNNYrz6h3mFdRYebsU6cs\nmCIa\r\n=ovBF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cec2958e9d44b31254ed631fe2a9363e01d9d30f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"^1.0.0","@balena/jellyfish-worker":"^4.1.9","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.36-renovate-non-major-cec2958e9d44b31254ed631fe2a9363e01d9d30f_1619104619874_0.7290972715629376","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.36":{"name":"@balena/jellyfish-test-harness","version":"2.0.36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.36","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7bee3c3a2e7e6c797fc460c5d60567ab1e8d9571","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.36.tgz","fileCount":24,"integrity":"sha512-3m/cxMouib8UWGnmyux7sUdSWCkJRNgnYPldouuv8J8t+5A06JwkEolnTTEdqyfQqOGXlM/6ZStdndNrtklKRg==","signatures":[{"sig":"MEUCIQDHtBCDFLiMXwVzMA5m4mUzgdBWuR0Tq/k/QIb3Gmrj8gIgZxEMAFOikdNtN9ApT6wsnV1ynfvounuoSEFmdukm29k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggZQ6CRA9TVsSAnZWagAAuIQP/24o4HI/0f4EqA/Bm/Ir\nPTqWA9N0glNfCaQ8ZlBwErEYZ+2qSBFo7AwcOCUR91tqUJ5kTHk9LLUeYsy/\ng9Q3D1mVSqGz1BMyNlKuSY2qTAaCOtDozYNU3TURnt7KBAsMF4ht+nHbR0Kg\ndb8goaHV4Be+llRyLeDCfeMks4Xa7u0wflkJmtGfSPzp1E00zcXNn9dbH6Ou\njvrg/F3daZNjnbQKmrTD5IvL5u3voitcg4ft2M/KT+QO9VgVcXTx6XFVzO/l\nl8/54n2oRlBxp/LS7vnSUKsvASUJcOH1IX2wr9bTrZ0vRp1NwgcZCTxJXY6q\nKzv9K9C5M42aaFbnOic19wJ7tFX7uWESwSlWqmLDBfakC86HrDBPF5T2awHG\nValYesFzWFSvFiXIrd0Du/RvXJ3W7MBTq3EeXsbQnT9EwqwouF+1u7W6Ij6i\n1Q8bCpD9JHfi0xTCaAYyvPa1BzyT8Yau6kaUBaVmk5Kmoqru35IrFqhIfSNo\nGSaJED9QQz2B4GXFhbQXTkuxDM77XUWCVEJXXv+sTnfqWC5Iiu1dUTp3lrsr\no2BUzyH6EoyUOJZPEVgsca3mBuz/S7AA4KPZcOL1YO0lKKE1M8LlcK4JW8A3\nXkFHDd7yF9fiSf7ksZ8TEUvdKGIrDguse5iX7Pys1zkHtIDDS9aDpnXKJRIs\nkeuw\r\n=coDj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ce53b969172ebae0016f8e09ca7ae44f50ca7343","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"^1.0.0","@balena/jellyfish-worker":"^4.1.9","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.41"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.36_1619104825790_0.7383800892364765","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.37-renovate-non-major-bd9d3f3d495cb0982b93c730dbd98c6880d70777":{"name":"@balena/jellyfish-test-harness","version":"2.0.37-renovate-non-major-bd9d3f3d495cb0982b93c730dbd98c6880d70777","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.37-renovate-non-major-bd9d3f3d495cb0982b93c730dbd98c6880d70777","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f10a3933fd104c21ae89bbb778edbec264ed4ab","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.37-renovate-non-major-bd9d3f3d495cb0982b93c730dbd98c6880d70777.tgz","fileCount":24,"integrity":"sha512-ly/WDtoORpDf2emtSqfVyqRBIQYdYPM8VSB1ElPt45/tmmrYEukva3Rcn2oLgAPX0OR2q94YPvzzYg3OnYBkeA==","signatures":[{"sig":"MEUCIH5GKqVmBT/FVJMGQnobH277XwHhHZFU7h0tUjn+XPAuAiEA3H7DSVduDmL90VPoq20SNFiz9cHohrds9dykFQhuOk0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggh2MCRA9TVsSAnZWagAAwkQP/RYBgewZZiPAqJ3yCqvq\n2LacP3OjG7c3iuKdnhwteprNspAGioMAUq8oeHyxUBo8AfPAaruAYoIr5E6M\nXcuDRZzMR1iCYUaje/JIDx0vlz8Qx9gElztJ9dXC3nkgAwPhjXhx2t6Lly0E\nYpRUEHFdE/eIsp/3IgKMA698TXX8YujDPiTRn81FYVyElqcm82dQ02TMxCj5\ns0kdbnAmlU1lmt5w6HgDcXlCo5QnJkCNxmg1yP6W0rNF0e31JNF46+0PiF5t\nSgW04JqpV65l+aTsWgjFsjkHTHObRzqTFce36yMa3l8WQR1EiSuB3gIAmYDo\nvJHkLrJ8BiGVMHxjhT1XUW5Ced9sTL4/KnmmLr2Uepfv0yeji0tP665lJgRt\n0j5rW3Ce126BSYb1BkuNjofhq1XN/SLUgXgPoixq0HTY3QaTYjrMqlvw5RZJ\nYf9O8Iv3QFPQUKVAqODV4Zhr8IUAEgmc6wdhpxq1s6IRILBajmuJ/2lU9DlO\nhv/66FJtuSQpROO6ayEyLUFErQyY55MSMD0SapixCp4ypcyPuU6059BQVpTi\nNM1rtAPIJEN8ErMKHozb+OblSijRI1LfFBcYBi+BF5W9xq8TgR2b9FmoMOFy\nrIT6EgzcpkLE5CAyhwwipevhx/TyglnHTGD+p1+7tlk3LfSLOOvTOnqCLXNC\n4inW\r\n=bmsM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bd9d3f3d495cb0982b93c730dbd98c6880d70777","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"^1.0.0","@balena/jellyfish-worker":"^4.1.9","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.42"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.37-renovate-non-major-bd9d3f3d495cb0982b93c730dbd98c6880d70777_1619139979619_0.967706602853621","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.37":{"name":"@balena/jellyfish-test-harness","version":"2.0.37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.37","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17315e107f7a8bf4bb7b3af63c470f7be5521ae9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.37.tgz","fileCount":24,"integrity":"sha512-DnY/QHTw4e0Nt3wtZsAxDM1iPKJe2nGX+28f1Oitc94oJGhKZO+OZSOQkBGngZ/7Dr0V0GUcSwuznZyx2D003Q==","signatures":[{"sig":"MEYCIQDlzaI3nixZowWh3GOmFcIJYfgXoDaJfYL3s1bDjv3gqwIhAKWRRnyB4RIISjRuMJqT+Spb4PqVLWykpHRQw2putFi5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggh55CRA9TVsSAnZWagAAV+kP/3eQ4POS6r8nnRZHP40z\n6K6vAhhxJDKyccwoaAbbwMxhs4v18TCXy7IWuShFLxADISS0umXMV31P7gVR\n40ki2hIhPStG5dm8hiRMnk6deuYMN605mAMu9N4hmuMlFmz7SBDzSrV0qgf2\nLq+Tyal4WxNK/uf8kjDFNVeOxi7GYrRrZZ0/I5Rh49xsI3eUjgVpWhJk+SH8\nOUIlYCIe598/P5aBdBye0rcYlzjEO2muV5rSF7yQ8VMWixQwXW0v1Wau4hVE\nDGl1eMZ8VY8Ze+QQPPpH8Dr5mwKH0rtas5rTfKkxt65ELc0O0hK+y1kN0LOI\na9jFWVUAMlUi1STFS6biBlJP/a6AAooBowoJVUoGXVZNkO9npKFjuuFvRl+3\ntiWQQvOvrswj3JDRB90oHeWxlxXpRTMv7ZoKvi6REyyoRs+6aO3Slx5cg3qx\njv8wBGwLwGzgWQNA9+J39TTdZFCnVnY3RQa9JV497H9czAl17xK7RoZ/C/7m\nFSabrv3kMofpubv5s77Cgxj1kMz8uMrHX9X2biU1q7NxJLT3I0oLEKSiH58l\nBO7dYO98wJdtSEiOj2gJEjKxYLGEJki4fi/3hjf1MRwM+FoMYSFiUB/ERN6H\nrW37mnlJ/RPGwmoRhBlZs7RFb3G8DbE0fk0u6YRD8+jYwZsYq7v63NW0Aimj\n/lCG\r\n=P5DR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0561e2e429b7ef86ea824b1215bfc5e9e4ec4ea6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.3","@balena/jellyfish-sync":"^6.0.48","@balena/jellyfish-queue":"^1.0.0","@balena/jellyfish-worker":"^4.1.9","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.35","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.42"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.37_1619140217268_0.8502524426407425","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.38-renovate-non-major-b37198ff7bdffc46b172f089526114e4b0b0fad0":{"name":"@balena/jellyfish-test-harness","version":"2.0.38-renovate-non-major-b37198ff7bdffc46b172f089526114e4b0b0fad0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.38-renovate-non-major-b37198ff7bdffc46b172f089526114e4b0b0fad0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49534557c8cfe948e84017cdc5926590a029ca74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.38-renovate-non-major-b37198ff7bdffc46b172f089526114e4b0b0fad0.tgz","fileCount":24,"integrity":"sha512-djC4CBeH1YMX6ci4giUR9tVjk2Ahd/9tvgVo8/NQ7/Gcd68EJzOLG1JB9vx7hX4hKTh9sDYuEx6xJPr2MJ+Xpg==","signatures":[{"sig":"MEUCIEAePs/2Z/h6E6mf5bi41+gVbl31pd+fR64IDs1hTXXgAiEA/Y0VJNIpKNmvNEGCG74uZejoGqC/rM4WY4xd9fI6YTg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgglWHCRA9TVsSAnZWagAAEpIP/1MTAwEb8bqdDFnp99bK\n5XL7U0Gpw33rizPzmwzNrmsGrZetcj38vj4oSMnS6rsyrWHldDnFu3rufj1m\n0K56KzFM2I/GD3HHkAo1dmuMPXxtsD3K2I4+4/how2MM/UdQt1FNRLrQOHcq\nFMcnM8MlF9+oCh8Tiqm1y3k5OFQvtoCqeBSfRD2Gozc24wnCFq+Jwd4FyEq5\nbd+e0VqcLyf36WyhkDU4fe9zFJNosJv3EMs+fpryKktIRF8YDj3N3ij7BxXK\nBgVEY9McQkexX9JunyR/iwnZCGLRskLfsQEzGuokwW/D4gtwxA4RnUVyU+cQ\nWnIWqXh1KL6okZCesS3zwFXTY7WnWB4AkLPz+A0jB3vy4jqjc+A6/htwvyzx\ndnlg/bQBQ5/33hpRmPf5AiHKRelEr+90qJF321iSDFvYb5yBY2fi2tNgT4RZ\nkEvrpKGIStXR1iOZlj11aFuq9z5z4WZLKXVr/QZyDFYu9pj8ZJlNYIT30yez\nbeLhvR44ROoxOdj/bEVuDdoJOMvVe9KrO5LfT5pE1kDaLjNStVGlNO1SJzvq\nnSF6En8e8hPL97s7HRJsBT/Wbwf6BcrhnxRR+nYFw1YHSYlOV2WDzEljpfOz\nYWQpvHlOHk/9RAotVTdM+NlPVIqP9bdztdTZRfXKInjx9xLLU6nBRZEeO0uC\n0n97\r\n=XifQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b37198ff7bdffc46b172f089526114e4b0b0fad0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.5","@balena/jellyfish-sync":"^6.0.50","@balena/jellyfish-queue":"^1.0.2","@balena/jellyfish-worker":"^4.1.11","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.43"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.38-renovate-non-major-b37198ff7bdffc46b172f089526114e4b0b0fad0_1619154310417_0.044918530949281","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.38":{"name":"@balena/jellyfish-test-harness","version":"2.0.38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.38","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e83ccc1f398552bf330d0604055e9cbaef5be18b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.38.tgz","fileCount":24,"integrity":"sha512-ony6Mcz6KBZ+BkWWIQxKg2xonHQO0RBvCzf/xTU7e9FVXNBrIFZlt9fzvBnPtaXGoP4oL0L23ZgcK8DsMcztSQ==","signatures":[{"sig":"MEQCIDT4EymLR9BbLvyuS730nRbmJWRhoz0YRAoU9OaLzJ75AiBwW8j4tKZxq39f752dG4YkIwI4JjVTEUqJVRRKHjcAiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgglZqCRA9TVsSAnZWagAAY6oP/R6u7ZiFLtq2pmTFOTE4\nmL84SO2sJdL1g/1RBpCCgWTP1c+AvBeoiRNhwm0jQbIjiIKEJ7crXnDwnFKq\nEFdA3c0+eImsijSKuQUpPxB4CM+QbLg/vj8i0EhblFa5nQHnIlsPpWGtPV+j\nOIPXC3nUFk5rTHIh7TbiYiiqhcuvpxRIPC/Cb7ZrPMiTBoRdba6tVTmGNOzw\nnxt4DxSAhf5V6IHsRfpCBPJSBK86/697y90az4E87Osi23Um74tH6aPpLTa9\nVzTJBNIWKazDY7nbFY/hTruKPJr6b7wsJ+bkfhUapeT3QvbiG12crXtgjHsr\nAnJ2L1uCIXgQqn1IYYKP9ZXWPjcBjHHNLzGSChfQSA6hLDRt7GaSnuuI8Eaw\nkLXUMm92MDhBJX9UK8wPyp65hizukhu8BPzCd6D2flr4C7OaTHfmthRR2A7D\nfqBGpIsUuxdr8ugBKxIo5P2C29MkD2jxgDcZnl+NuRtswyhZedgr2Bxk8hzC\nTX3e4nhE6hI549YFSQeUvCCRL53iXa55V+7D5UZSX6Mbyq22bg3cs362awwe\n1H9CJfQ6y6+dK40Dk5kLMTCzwEC4+mPdDST4TCVYF6AdETXbAcTYOxWECgMQ\ngIA7nkoCzylRFyTfj/IVyirEF5ydUrzALt8UtNGxrgWEXVw+3s6uu8gjQnty\nrNFn\r\n=K5VC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"efaa51e430ee75be4bc80bf1df4a66d372919024","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.5","@balena/jellyfish-sync":"^6.0.50","@balena/jellyfish-queue":"^1.0.2","@balena/jellyfish-worker":"^4.1.11","@balena/jellyfish-environment":"^4.1.4","@balena/jellyfish-plugin-base":"^2.1.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.43"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.38_1619154538355_0.8154479537226897","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.39-renovate-non-major-bd107b5f9d43b2241661d3165a172033cfedf092":{"name":"@balena/jellyfish-test-harness","version":"2.0.39-renovate-non-major-bd107b5f9d43b2241661d3165a172033cfedf092","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.39-renovate-non-major-bd107b5f9d43b2241661d3165a172033cfedf092","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"adae08825a345c73b19bb0e7f283a7d0b803b560","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.39-renovate-non-major-bd107b5f9d43b2241661d3165a172033cfedf092.tgz","fileCount":24,"integrity":"sha512-KKWF48OpSG6MmIZo+yeritBAnMl32qCHfkiiGdtU/Nh/O5TK1EEWprg8YwbUllfOf3JS2hYn9/HrlnMZibao1g==","signatures":[{"sig":"MEUCIQDZOoE6Ci1GrpDrkc30+sMUDc7tdS0oXuLjCECMyGP9QAIgFzkrXxSI8MQUAzlFTaan9bHVNuZQoNBhXiS43sxXW3A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86984,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggpFICRA9TVsSAnZWagAARTQP/1BKeO5W0segD8hOAXp0\ncMG1gj746EEF1Kre28CID9TDRT+f+/CAs5e5B52APM0UJYUx3tQ79HmWDmwf\nEbGRauEqkm/N5yaLoHlmneJT/9tB5iEvfzxvnnvlcZV9iH8ULNtscQ+inbGF\nlAK7Wk+CggS60J7tyHqlqBNcGnBDwE8ydoylcaQKFpSYDaw5TNinw+PzUOV1\nCO9ceJY9n7sWlcpMh+zmHKRx7DOdkzozDpWbwRNX3ZNmfw6bDMmQu4lDj1O0\n7GFcjjb6/lQwWJHsdpvDt+LU19ulU8SwmnvZXB9BOm+a4z1qtlwQPp0nXdyG\nXDywCZju01BftnN1nCbDDsmPneWwYICWBcIRyE05A4I+D0ezofj1iAtUXiIq\n0uxeP0ypSNtxNQ1oHf5mJKaDKo6M5o4rsAs+Rff9Sw5QHOsfNRZWUCTMGyhs\n6G2J7EmVfEKbqZgKYHBMkG5vfG1owctMm08HyoGosnDkC1F4Pj6TPVP5U3Wx\nUbZiZtxLjBR3a8Keqd6dmmz1InqyUZ/TYt7Y1ZHWJyv7dMv8Xi1pwmSFtrZh\nQpq3OszUG3IkmeILbpUWshlYR5s2cBAplR5X1ggdmfDixvA+fIRXppv9rxL2\nVD8kKMVhnzmyhja2qJhJSTfFtzZcohZ/Y7TMkVZw57G00RpNPUoWs1TTAuGY\n22Dg\r\n=/JR0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bd107b5f9d43b2241661d3165a172033cfedf092","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.5","@balena/jellyfish-sync":"^6.0.50","@balena/jellyfish-queue":"^1.0.4","@balena/jellyfish-worker":"^4.1.11","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.43"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.39-renovate-non-major-bd107b5f9d43b2241661d3165a172033cfedf092_1619169608029_0.4608220520659181","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.39":{"name":"@balena/jellyfish-test-harness","version":"2.0.39","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.39","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a57f5dc883714114106baaa87a1dd1f0fd9dbf18","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.39.tgz","fileCount":24,"integrity":"sha512-ldT0D7bJDWwtkvxPa/YeNz/Fgc6euktEEm6098ECPP44tkUKluGm2R/2TKHpX4GcLEluEB5ZmrNJ0J9TdeLT/A==","signatures":[{"sig":"MEQCIFZbqJGTU7ULkXlwaLlSvnaS9yLIKWDdT4+NZVXgZP4dAiB9YzZDRCVyFuf917ju1kVqYXX20WIYLiIAu4IuD700uQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggpJBCRA9TVsSAnZWagAAvuUP/1Zgi7XyydhixUllpp1h\nH6P1XXQbTSfneqLnnEmNrE4DhPlez3uesOJxtfCWFOxvxXsxQ2p4It9elrdS\nV3q+P5vQQ19eQNH8q1XhsI5MKOPUkbeFd+jMO/grtU4oXrhXEElr1ZU5210D\nO6kpTdoFs2QY6lqJb9VugwOPDgZVQFe9hZ5fxLJvtpzLt2867a6GrkcLTSMg\nkyLTpmybI4ohE2AUuXv/8l9Bsg6/B5BJObjkPqMMO5QazMw/iZRSeDQAbKxu\nx06wplgormNzHxr7udtszLolOUSuL9o+rrbMtC+Bp+29Jv3g64GcsxtOalH5\nOw0qbjZAwPLTYkxh9OtvAETrmur9afUME10zRY18b5mfGf3t/9KJUVwYTAFw\nORc9a17VFiNfPOqOtG5QDWy5fbsCL1qHcwRJ2fDITf/rlF6bQbWLBvxgn6j+\njONJuqJh5puJfzy/YKWLQPiLQjFllrA5Mr17Lx/6pI9+avYlweEq0IRy8CXC\nTzQIclMpKqD06fMUx8Q2E2Qf0M8uCMtVSGHf8cZoNnoWBHAJp4pqfc6nlS5W\nRSVCGMPW/aeLejMxPcnMxWl4eQQW55E/iAssMY0TBq/9gNOT4rMqi6sQgZ4J\nx4JvZujMSgTW66dejXkbY2Zw+zrUFCsWEAFwu+ICyvzQ7VVIF9AzxwLsyIBV\nHhhL\r\n=Ig7M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8274414d0fa51085686afcc5c4fa9015569c7bcd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.5","@balena/jellyfish-sync":"^6.0.50","@balena/jellyfish-queue":"^1.0.4","@balena/jellyfish-worker":"^4.1.11","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.43"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.39_1619169857035_0.3347446743318139","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.40-renovate-non-major-6e5382ae0bd27aceeacd78297fd1983dd88fce4c":{"name":"@balena/jellyfish-test-harness","version":"2.0.40-renovate-non-major-6e5382ae0bd27aceeacd78297fd1983dd88fce4c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.40-renovate-non-major-6e5382ae0bd27aceeacd78297fd1983dd88fce4c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aac2f42a046f91fe941850941577071a18904cd6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.40-renovate-non-major-6e5382ae0bd27aceeacd78297fd1983dd88fce4c.tgz","fileCount":24,"integrity":"sha512-QWCEid/vz/RxXG2uEMYLS19OvctRe03f/HkvSTtoY0bK413SlIfDZoi+xMqfLUfEGetHncHsEmI5PVnyicOrAQ==","signatures":[{"sig":"MEUCIQC3PddhTWOq6JQ8eu6muVgvpxJS9lpapK1dGffwQB1bIQIgGN2ClW/9fp991EIKyM7i4j/3FsvqXiwAuHWGc2aQHYU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87053,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgguY5CRA9TVsSAnZWagAA908P/31QUllgU98yaC+MjcJt\nZpaKC/dJnzO6lC23nTqLxgoqmL3WUQsVH9rKGqavwOc7Utn8P7NvrgRoBeEr\nkLzGWk80uoAKefSONYx7gwRYKwCSzDpqSAB4p8wiOBj/4GvhBsFQ0GiOd5vy\nxHQR1HdU+wTbGEUhBslYDqMrOkMcu7ris0esS5OB14sm7xKoU6AbiagHlUrS\nR3+WiUkQlxiJRPRczyJma4YTM2j92mGeXeQApnUFHqw9d77iUN77pLgQL4d0\nBPFE7NhiADo+qwcx4PHtEDSZOKxmx5r3qFqC1bC7Eo+mYhBxSc37cTTY0xj3\nq0d8c9ZL2x1ZefySU23+wd959qdbjnpKJvsk/NpSvCHgki+XkoWWZnn4LIfy\ny4NbOFUmzjJKLkiEybjbN4NomP0easgiO7jCfLh+Eypw//LIxJVST9nEs5UP\nDV2vOiiCyrzgEJ3X91U6L1lvJYL9Y7LG83DDeLojZrdw7BqKhbZpY1oHT3W2\nxg9EKj2wtICwmUhSAOAlATQordO8D7LTTYUKzyzc40J1zMeCIhKD3V+CQ9H/\nIn0Ix3/gLKv4a2D0Y1cUqReQs69u+mXG1plZDirCc4DL1Y6+Kulntc2xNMSF\ntiUvAfWYQ7PYGsIule83XGULc47IL+9LnYSw/LAM4m3rzd+c1puNp45BY2S2\nenTe\r\n=vjnU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6e5382ae0bd27aceeacd78297fd1983dd88fce4c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.7","@balena/jellyfish-sync":"^6.0.53","@balena/jellyfish-queue":"^1.0.6","@balena/jellyfish-worker":"^4.1.13","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.13"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.45"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.40-renovate-non-major-6e5382ae0bd27aceeacd78297fd1983dd88fce4c_1619191352676_0.9324089007921041","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.40":{"name":"@balena/jellyfish-test-harness","version":"2.0.40","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.40","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e3b7904635184dabb5b8c035a014c46525b51c3e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.40.tgz","fileCount":24,"integrity":"sha512-N3etjGCseEEbbdfHr3WZTi1xHgdwlUZLVX/iBfyggvUyqysMRPprGABkIFApuX6UoZRjfurpH3t8/sYTrw1lyg==","signatures":[{"sig":"MEUCIQDHqEmzGqv7/UnI9kj5o56sPkWr8bMTpxUZyER/i3Fj3QIgdi79f8LKsgdpC+Xnh58YfE3PMrhbhtHE/UZa4MNG10Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":86993,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggucPCRA9TVsSAnZWagAALckP/0Zd3U21Sb3KngW4gwxx\nCmZNjyueibL0tdkuk0wjOMqhZR4q5C1zsjnPaRWyLCmohnG4KA7kuZ3xha0z\np+v5gx0TMU3q823/ALRr/r8g+nhfpD4GhoMmbL2xMFJL3S3zmaGu4FFX06S0\nzEhdesWCuzLBJOsSqThMKc4dKBws0Tl1KtPjHlWn+oewrpLBlR6sfaCX6X/x\nE9U6OCUv3azS5bIdLopwxn+HmGZmKEd1iVy0KTq7v8jYtMNBBsCprFbmXceV\nHFx1QOxfd3U2lLCKhHTVlWtnwv2MI27EReJQL1MUj9wUWn9TDlaNY5P3+i9L\neNLs65cPPmEi1MOHnEzV+kIh41E5ryXg4QPeSEYvpocqDpxOzgnK7KlUg/Sx\nDy+FrExZY1wy4bW4HYl+TqCBvS/WwxWDktXyQNWKtdBF/B+VUcRjJzvWDelp\n+aKeVGZr86a+Hhen7BkhPIZ/d3v0HicaqrocXkf1ooZWueVNYS/mhVU5teCq\n88QheWKrtmwNAmJiOSDkq53GvrQbzcK1u2Cs5VEs8XD1Dn6AbBpys6QKM6Ab\nxIiY24PT3gKLJa0MfBfZ2MAZyP+L1OhRUtc/xOiNGb8gChNHieHaRWGMYWTL\nvnP1yIUkn2SzrXphuOdveELkl9IB4yBwZ8wFn+qrBfERanaCldKJTyTxm4DF\nbfHj\r\n=zEk5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"14e9018a667d1e76bd8ae249ef124ce2910763c1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.7","@balena/jellyfish-sync":"^6.0.53","@balena/jellyfish-queue":"^1.0.6","@balena/jellyfish-worker":"^4.1.13","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.13"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.45"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.40_1619191566968_0.4942600583239898","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.41-renovate-non-major-1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480":{"name":"@balena/jellyfish-test-harness","version":"2.0.41-renovate-non-major-1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.41-renovate-non-major-1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"acc694381e17c5bcd16bb0efdcc985b6d0bc315b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.41-renovate-non-major-1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480.tgz","fileCount":24,"integrity":"sha512-C83BYb+7lCqytRERLVHRb11kiWRO6YFX9KSoPXnIWW8jBKbQz2LDQlAE+wEquYlEhX0wQoTHOb1L/Rw1boJPjA==","signatures":[{"sig":"MEYCIQC0E1J+HmL4RpWqICI3867qmns5czSShVFpjDgwbDHWwwIhALA0BsZhnRrBc3mYiwpMYsR4wCpKpNcXeSyQueM+8KK2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggxTzCRA9TVsSAnZWagAA6HMP/2OjHxrgkrpOcu22IjBp\nvw5o9M+X6TM0q3Z5d04o/r34JzUauV5PaIZLGnJ9UB/lYbqFOQm2oc3ItbDT\n9vl/0X/6OCuimA3ryQXuaJ3hQXmRbKHKmtEMrYofA03Empnr1kYqvtKhb4kw\ndYE2UukFdpA9Lq2FPD2xygFwXfIiaenugG9BOwHV6yoDyy5y8NO9TWiBdraR\n+HdFLuVbttqS1kgIcrJnxsOrF5cbssZzkmYK2M6GcnVFjmwn6Y//SYIp7ZNJ\ngbrMNoX34NIWZerVGyXCyFAUx74j1psqoSA5Km5p3aoxYW9Tz3p3wPW51Uas\n+Q3okHLhMiAJ5L1p5V1Cog2puReLr/KGf96o6IGxTkO81bm/T6MvfD69E0Ry\n9e2g7KPxE6F6hIvFJo8v+a6XE8Th5TLIz9jtnr5XzRqN6Dxnru33Wr+ILQX0\nV4aUMfRD794iDmSDM26cpXUpkBchbGFbjyvhU3DBAdUz/XsPhJWgUYoF/ttB\nJBD9/VQEd+bCbuF5hSginiA5HLePiygUfnExr10pPslfSIdaUwaFPuBKf3Zd\nz1ps2FR8zTpxI2TwW1SZeql4b2RW505R4WvcW/CP9+2f2rFDiLQnIkEZ5QKH\nfhqZEH+qUvqeFmkl9FN8Q5oP7KMrckkjV0ko9ju5h/HXcZNIYJRaVZPnAfBW\n7TvS\r\n=1B4d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.7","@balena/jellyfish-sync":"^6.0.53","@balena/jellyfish-queue":"^1.0.7","@balena/jellyfish-worker":"^4.1.15","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.13"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.46"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.41-renovate-non-major-1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480_1619203315281_0.2502309460304226","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.41-renovate-non-major-e23d46ec14887dd3189e784a945f4b515be75b12":{"name":"@balena/jellyfish-test-harness","version":"2.0.41-renovate-non-major-e23d46ec14887dd3189e784a945f4b515be75b12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.41-renovate-non-major-e23d46ec14887dd3189e784a945f4b515be75b12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d928d03ed1c7691f349ef2cb02a5147295c26e5c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.41-renovate-non-major-e23d46ec14887dd3189e784a945f4b515be75b12.tgz","fileCount":24,"integrity":"sha512-S147twyVRNys//zHvKf0njpy6lz+KpVm/md5QEk94YahXqSHV5Yu4UezJUDlslHzsdYbzTDbSfV9YeW/WBqOeg==","signatures":[{"sig":"MEUCIDJwmiTt4T8SacRnyqh6YvpHlYMP/HDDVIkkDhHcJwTDAiEA1Rw7DjazQq5HjO/3PeaSMX4KmQGS7MDmqqnVhPXEezI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggxYnCRA9TVsSAnZWagAA3wYP/2QD/WUbRLqBKcIwlXRb\nssXvWZ6dENQu3E39mRKOf4lXiZ0qOrPD+KPoo6NdboTHpuSQ4HigtvIEVvPY\nuzgVukqgIP1CEOuwVLMM5QDu9l00NRrI9XxjP4UAdt4utpSwZ85BY5bU9f3G\nwHQLix30PDB73816uBxTu2JrjbuhErIsRZVh1RgtcHACJrNjvJhVg0QGTD5/\n3U/1/q9DUVPilMxjRaab23pAlXrEOP4IZoq2w83WyXeLyr0k0pxFeYREBdp5\neN8gdhG7vSWwr3CUDxVXpj342iBMSyT4yy7TaiwL2z15R8S8RPtywqZSB6EM\nxa2pQnShNQbmwoCyy6p9ZOgNZMUr58MoNDJXzaGnESy5MuMyG44JsXPzxAMl\nq69u3qzLcVlZ13fa7CSOfI6I7UcsYCDV/UGMrkrnUcq9LkXW4ajA5T+x4Ggz\nMdHsvrYfvRXQ5ReCtHx8bC2v87TVCZLsHdKqC8gtLlawtNGNQYpIu23zBZGz\nshSy2SsSHNz18zD4mMeXy3yiTRTARI8oBHKMUYWI60rRDM14ZUwcDKbUZQZ1\nNmrBVOf+QB5t2dNYh0sg/2Av0FTNdxYtOE/VXEp7nr62RO37ND4m3P3C/JRW\n9H6jm/EBpb5qA+/dVQaTgd+kOVxO7Ny4BZuA3ZSNMPPFDQ5SLNgyhJAWfrUA\nmVVP\r\n=mRsa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e23d46ec14887dd3189e784a945f4b515be75b12","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.7","@balena/jellyfish-sync":"^6.0.54","@balena/jellyfish-queue":"^1.0.7","@balena/jellyfish-worker":"^4.1.15","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.13"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.46"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.41-renovate-non-major-e23d46ec14887dd3189e784a945f4b515be75b12_1619203622685_0.30790978042999906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.41":{"name":"@balena/jellyfish-test-harness","version":"2.0.41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.41","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a586e9fbca7914ae85ef22a2b5622df472a8a58","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.41.tgz","fileCount":24,"integrity":"sha512-XB0I5Es24Dcv01GNE/zg9du5Y/iWT7aiTsCmxAujdRM9JoI/KxwhEowET5bhR+iV+ddksPw4BXikcGFuNwmVZw==","signatures":[{"sig":"MEUCIBm3srHOY3aJuUmV6vV8Zutwu5+u0JJc+NgyEp59cNWvAiEAv9d5/Kr+aGqYhjTxAkiARDjm4LDkg/BirGQn6apYZh0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggxcECRA9TVsSAnZWagAAtIkP/3G99CZ5+dsygeioLgAY\nl6xCrgUC4pRNvzSNdrOP00VelqadRf0KYO4P2JVY09HXLEV7SJ0p+crXc5dA\nmd17tx57UVH0o7b+YL0fNNMFMilw8eX96UDLRbwERJl0em3tcgHw4fwX9D1U\ndd+PEqA2jfE3yrS1esNe0q2GQaarLYxechKowpzOxrsKCDHP7H3zGk49I5i6\nAmRDskAvgybnwV9BDNQOX/BGWbQBBRS830HxcSLZ8NSfTvdRMcPzEKLoGn4k\nHHQPEME83z4QO6e8lCt90A8yjUgtVdmjGG379cjaK7iwKv70eP2zc2J5iSxt\nLZHu2pYEa5VuNv2eY6aFT6Jr2sF9jN2uhd6qLcTuJoIzDl7PUm5mEgiCpFrF\n/B3AQkI6Hb5087wuBuLnwB4W2uXH+UdYdel2cOG+wOFE7BY0LUw4KhPyhz0f\n1AW638/1ewa2naigX41odpBg+ng5+xGknO56RmMZrrt5h2R0chFiakfQlFEe\nu+wH0LPOhfeDYZMixZJFKnP4dLGOhyQqTPDHrR5PPSgO9/z3AQXMqPtHJ8fR\nWy+Kw04z6y3e87GWk5yHaK2JNMbIN5zieYU8aJBj6B9qRX6lGsasi038KpOj\nyTP0m9QaBXs8wLoKTBIQBILktRpSj8jvvf3gagmTuRN39h7m4Zv22I69V1Jz\nAoDu\r\n=zg82\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f6d53011c71176a3cdbd8bf116f0fd67f8c4147a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.7","@balena/jellyfish-sync":"^6.0.54","@balena/jellyfish-queue":"^1.0.7","@balena/jellyfish-worker":"^4.1.15","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.13"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.46"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.41_1619203842840_0.5611183894897456","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.42-renovate-non-major-37301ebc0e88abeb7eb1e9e53ce66b077a10422a":{"name":"@balena/jellyfish-test-harness","version":"2.0.42-renovate-non-major-37301ebc0e88abeb7eb1e9e53ce66b077a10422a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.42-renovate-non-major-37301ebc0e88abeb7eb1e9e53ce66b077a10422a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a47d71b4ff2e5aef400735cd871bf4cfb6daad72","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.42-renovate-non-major-37301ebc0e88abeb7eb1e9e53ce66b077a10422a.tgz","fileCount":24,"integrity":"sha512-Nif6KyYQhOoonSs39Cfq/SPXGDfM1Gb+y8cdTSwINLi2VhsEqwMS6i5ceMzDj4BsMXATDc1rzIDtOmgK18oO0Q==","signatures":[{"sig":"MEUCIQCr4tOnv3t6BlvJnGszXcViluHYEURlDiQc3c5DVM0GGAIgVsBPiuemilfQ16v8QXkLc4wDo8ZxP6gZoc0I8LG7sUA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87191,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggzyYCRA9TVsSAnZWagAAdJgQAIikRHuMDLTAbPwqezWr\nCBmFqnMMLjlCylfIdElBxHdf5VqyOvn3v0vuAzMSUZQ94yNhidDGMki5mdr1\nP/7XzJfJaeOfy1LZo5qVRcuxp0FeD1XuZGR3NUQgf3DrHqB8Y3Mw5zvMW/aF\nZWI+jZuCGzT4mq/LFHBj7sAdTDFaULu9cYCoi4qOek/4mkgxEfyDOeHvs5+C\nd27qyUOlJ3QarSpobrzJ0JIP4gIMpWZGDOLlf+iZW64LV/swYO4bQ4b1NzzD\nSYnpMIzH+2Lzhf6x6i+W79ouCHxhlVzrA884OFEwxWLUE4RNQ+paf0bntEIy\n3WrHjD1lq1DP3TTOg4JsQ245cOcvIDseZAkEkmAI3EB3mE86n4exqT24u/sn\ntBlMQQxGgK1w0cDZMZCm6hBL46IFmyURnVjzB8zz80CvWRTqorV4Ssm/NNsr\nMqpvumctrZNsvWd0HrOhHJrGK46BY60dcTXto5qGcP2Fr79izWYvUNaA5O64\nbMVtrwgvw1K0MlJShVuOCug6K6ob9bZGoXVqieuYri5/4SjUwoOHDAjKGW20\nFUVwHjVceAbbGvUkfB/GdR/sMEFRJx64mu2Kh4OD6S1lL78WVXseDlOr6ECB\nfqvcrOFrL8d/lTQbf62PV2LR2MWEnM6q91WB3ZKBp5SxDVGjGsJtCj38K7gI\nrEMk\r\n=MjsS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"37301ebc0e88abeb7eb1e9e53ce66b077a10422a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.8","@balena/jellyfish-sync":"^6.0.54","@balena/jellyfish-queue":"^1.0.8","@balena/jellyfish-worker":"^4.1.16","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.14"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.46"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.42-renovate-non-major-37301ebc0e88abeb7eb1e9e53ce66b077a10422a_1619213463704_0.30801364776046913","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.42":{"name":"@balena/jellyfish-test-harness","version":"2.0.42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"566accc7b2629550cb2800f52eb34e0e87cbdd22","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.42.tgz","fileCount":24,"integrity":"sha512-Qo1voIqkpRJBRmspfsD1mQo7yAAkwdFev7l1wDQXBTk5fZuHJA90TPMQRmjndsCWsqjAP89ZxbWAGak5JGGELA==","signatures":[{"sig":"MEYCIQCJtrl2Itjppxp8yBV0r8AtMu6RATh10f/I5Pq3h7XvvQIhAIUun+28xy4YSA9FRW4woH6Q+wjnbXl2/lAZLBi2aPwA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJggz13CRA9TVsSAnZWagAA/CoP/0uDIH6JdlWaQUZMSGFQ\nZvbbJ3CezxR6alO6BOgs04nUv0gx/XC9DHWiiak92/ZuLOMqKqBcfO/9jJIj\nLsRZ8k2svJqZGM3lVx+RIfhDKOgVfy48yZw0OH0CSQ1gMMUOsv3uHl2uCfEo\n+6IwsqP4Nr+8ayCgmcfZ0dXm1HsYoefXtIRaZkKVYz4/mpLEhaawp54lkuqJ\nGssQXVdmByzUXF7C5LoNmk2+2Wa/SKPAIJ4yjAjW8gufB7dOBF6p21n/xRqJ\nBgdojTNP2e9QUedmq7oLpSxLbmnv/wApZPoKrWbZFJ30oHBxaDTe4WAdvAjZ\nEM7fnO8m9KhP9nGm1muv/3BzH9KilbNU37rMKCpC9++PBxo0gxZV6Ulm9yIl\nocL1osoSngScSiA0fc0bK5Qh4s4e3K6OxdJKf3Ufv5ryT2ozNw66I4JQAIeW\nc+3cBulHZAAtirToEY9DxlA7yYRSlK78HSkdxPVqXoclNOwoNOQn0W8mo9k1\n0+tM0zLi6NvADodbugCUo5VQ2rBTh9O7AVv2FL5kgj1ePhLF6uwwAUiwcBye\nIwWQFHcpj5WBBM++qf3jcWqjzrk3nx34FvPLiExFDPN9U/cupcTGzqPsrYmq\nEnmxYrWGD5DPS6AL7IwSsy8hewGvIfq1gksPSq/WG/DvX1hqYiu2Mp8QSY3M\nnAty\r\n=Fwrm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3285ba155360ba83648f88bc6a2cd8b135a620af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.8","@balena/jellyfish-sync":"^6.0.54","@balena/jellyfish-queue":"^1.0.8","@balena/jellyfish-worker":"^4.1.16","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.14"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.46"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.42_1619213687397_0.25094649238003486","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.43-renovate-non-major-eae3d8a7cb1bf60b713502f61310839b481afa53":{"name":"@balena/jellyfish-test-harness","version":"2.0.43-renovate-non-major-eae3d8a7cb1bf60b713502f61310839b481afa53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.43-renovate-non-major-eae3d8a7cb1bf60b713502f61310839b481afa53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56899173d5be2ecbcb6790d2b1c775f14c8d6cb9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.43-renovate-non-major-eae3d8a7cb1bf60b713502f61310839b481afa53.tgz","fileCount":24,"integrity":"sha512-LFJKnP8FqNy82lf0J56tNZFkpCxGPqFXAz/AUdomF2yMmjkBt6PmPLjfCH+jci1C3O2hTWlbP7XZox+nSMZmOg==","signatures":[{"sig":"MEQCIG/1Vd4TnGtElQyvLyDonGCYG6V+CMbsdNhXlUcxjNWgAiBYvi6zwII0cuyS6XUsI58qJSj3F0FY7SHvPKwgZJ8jjg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87260,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg2loCRA9TVsSAnZWagAAUp0P/2gRRTEpIUQ+rqBmE1ag\nPFUMk2sEKsoQKoubWi8aneV7L2h7kIdTixdf6YJE4j0uDI3+R5TQgyRS10qc\nvt9AfujdxylDDQ75q/Nmn0t517qQaWFpwGehdtAM/Wjg4x/vfy+jhkF/3EtI\nIVTd1sfXzOXgQMMTMajLuSAgpsD7F7DV1XdxDqHNJe67NMl7VhgzLVMGNJau\n0Pj9qOgWV+ZT88ZR5E6ShTM7PzKBNiTRJwCvnvEtwpTbLRjvHLCqMhVnlb/S\nJCmFf9x+K1Fjd4RqzFXRJWup44l/F6v8/MrgycdDNDDGFxyMJTsrLQrLTkTn\nolUjRQRsXbkv0zY3K0fv5/zP9VNz2p/RqqDQZtF6MtEnASCHyoOR+1H5sfp9\n7Rt4OySogduVz6SijASoXz7EY6nN1mfJpM9LXfsQq0mlOjqYhtlkXsOjdfq8\ndtOBFFBmLGKu7NJPM33ng+H3pCjReMnRRLxJS0BmbS3t9wgLFUEW9S6RBaHM\njgafVAA5R6rmuyldBt49AXnTvnVj9pFyY16jluwuReRMRvt3jh52y/Iwt1pN\nRbKCgY7ExxMDk7mVcgFjEXFyXG/bkJ9qTndV7jP2dPSjw0X+vF2aob/5zLnG\n6Qor3PwvX05qWcBqoVZg0X2r6HhusIP/H4Vz9WMea3dqKIcTlboHRsSu6uLF\nEEPJ\r\n=0jkP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eae3d8a7cb1bf60b713502f61310839b481afa53","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.9","@balena/jellyfish-sync":"^6.0.54","@balena/jellyfish-queue":"^1.0.8","@balena/jellyfish-worker":"^4.1.16","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.14"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.47"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.43-renovate-non-major-eae3d8a7cb1bf60b713502f61310839b481afa53_1619224936163_0.6833146743993521","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.43":{"name":"@balena/jellyfish-test-harness","version":"2.0.43","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.43","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4926b939d241a43f73aa0d91ee9a401af04471fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.43.tgz","fileCount":24,"integrity":"sha512-IdS/oEoLT2gOEjKszXdmEbqV02KmJTVe6QnRGBIrbv5BXOG5e9MBCd3EQbLRUYNMCdr2yG27dt3lEZCukgX7CQ==","signatures":[{"sig":"MEUCICnyH1U2O9z8iSFWqJVG2STKHjM/CJZ4S3D4H25N/oZLAiEA6mYgk+Yy881JkkY2y56tNp/JxD/YvlyHOaRoYkshZ60=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87200,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg2qfCRA9TVsSAnZWagAAcEQP/RuTRzjAWL8wnP7gT3vo\nUiOCu75Yi8cqyrasEj5ebpjNY+TSy5rQbkCw4KNs70mr4XAEDgR0fXuWLU/I\nF0YF0EAQIbMBkCuGALNKLe/FV8NpWLYhJaGYPqKe2EznK6fNiMOmy0MtcOvB\nQA6TE3HSZ4NR3cvKSRZwH5w67UvaTMC2MDugckop8LbOTe4m4ohkziMWchbi\nCvoFMUxPKjzSZWqiknvQn4dp2yiY4xwirnaDDX4MmMiW5LwylQYbetEBEfgA\n9vfMtEoGmkuqxueKyOu8f3H0Fm2wNqGwYwf/v36rkJMjgWG5EiqoeqiPMPXm\nSIwaZ3z41OOtNQBvQVjyT1O7lDTw85qkz7d4+D8TmsJNsJWQUb9ZBq/GD1yl\nYEV1sHWaO9J18EPbkXLg0rtawrXtej70p9a1DZCpLk7sw37OihH4rxQ9zu6S\nOqzk1FlwWRP7kG+BJDE+8wZ4ocs9L1iiW4EfdQ+2RZFFireqlWBai9afJ0/J\nPfhnsbPdmMOwoUZIM0kShjFkP0o6+tFnDG0GGmBGiQD4zFYmC1nNPss7qwyG\neTm4fIoK9/JXjEn1yYYl2qdbBLB3FYY4riWu2PEvyP2DXvSr6cBTAdQMJnTN\nc/sV3QXw/OXT1k8XqoWWgZ9ORselfybD36/Kt4ncJWNBbOCbXEr4XEDUdPnS\nKU8R\r\n=lIAF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d02e576a9cd2b2f335936ca7cbfc044e64cdc81f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.9","@balena/jellyfish-sync":"^6.0.54","@balena/jellyfish-queue":"^1.0.8","@balena/jellyfish-worker":"^4.1.16","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.14"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.47"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.43_1619225246511_0.4007493270207938","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.44-renovate-non-major-ff60dd43bad4cc925d3114aa54f424f9f172542e":{"name":"@balena/jellyfish-test-harness","version":"2.0.44-renovate-non-major-ff60dd43bad4cc925d3114aa54f424f9f172542e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.44-renovate-non-major-ff60dd43bad4cc925d3114aa54f424f9f172542e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9d8daa450f62960a05e6d984751a05adb166d98","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.44-renovate-non-major-ff60dd43bad4cc925d3114aa54f424f9f172542e.tgz","fileCount":24,"integrity":"sha512-pAbwpRyRIPJcM3KXnwy4VZGb1KDNRrwQpkwU9UglqT0jRV7iLithSLN/8Elzez2X1rIxfWuCvkcs85LBwNr7tw==","signatures":[{"sig":"MEUCIQCv8ifKfpkARZLBeYV6h+sqkPuYJXofM2cAAheV09+SZAIgMlIYeWdnRVNt5e+EjmCN6PF1YGY5ZwXafYU368oE1OI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg5YNCRA9TVsSAnZWagAALjcP/2RXTGuWLeFc1r3kRnBQ\nYB/pzsEp88CdAsWQMWTrFNBMO3KX3OTO8hYFXJgxe1/4D6GZ7hvlbOSeajgp\njl7W9DnLPwJkZvE8QgUsUJO32tImp1b5KVHmi07q4Z/gRTnSqSf3NEgm+TNI\n66pp2z2NNvxfsaVtbzHIRHaV/MzmhDNHXSH9eFIZOp6yyrLJnFzMCeK3a9vE\nE4waf9meSUvK4FNiviIxOAnCuu2+QiR1GmDoabUGmhUToO9vApwzhwDnBUWr\nzUBNS4t70sCXGNsosTWfvjUzMIksez3mKwsbvfb9i1tVrB3CQ+4QMReEme0j\n3Rz/bS2Q/M6oC48QHZMkITSi3NzmcfQhtlux8f2YWNCaFAHeZI14Ig+dvruJ\nm1E7+N7kip0gPJdIJaO12YtzD22BU68Bv7rzTmSFW0F9kVCWQyuboGmPnVhU\n0z5Ani3BaIaKvXT4eCjqp+g3xnyohmXvXInala/1INCqEXsb2l0lyuRF5BCl\nvW0Kmp344xpib1tSvhoSTbO0O9sAxhgsXaeuhSewTQ/6JU+5c9UiVKJp7aaa\nY2AXzalGcnHUTW+e3wny8yiaToWAYiYWbxhN1z/vZ8t2GTeJFTQZN6lsflkn\ngaGhR3D9+bR/a1vidYTmF65zfg3y8P7CZU2uNOmKDtjqgnrkK49wZ05iKKig\nyOew\r\n=NlJQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ff60dd43bad4cc925d3114aa54f424f9f172542e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.9","@balena/jellyfish-sync":"^6.0.56","@balena/jellyfish-queue":"^1.0.9","@balena/jellyfish-worker":"^4.1.18","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.15"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.48"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.44-renovate-non-major-ff60dd43bad4cc925d3114aa54f424f9f172542e_1619236365177_0.3346171678769898","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.44":{"name":"@balena/jellyfish-test-harness","version":"2.0.44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.44","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d573df1347312620653c04bbc4c10979590460bf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.44.tgz","fileCount":24,"integrity":"sha512-qmcM57lZ3KFoy/VcHjCbfCwqqBbKuFKCaAmiM/VTvWeF10xktoCmiVfmKG/gs3qCC/Dkj55kWvX9/xB7bwgbSA==","signatures":[{"sig":"MEUCIEioKwwjhxDBd3an5t+sdHBnW5rG31/uFUTr1w/zc1mhAiEA1wANkQVzjV4Y5gDXNUQUo2crtxXmOeErL7G4J0yOIfE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg5bxCRA9TVsSAnZWagAAUZ8P/3J+S37hjcp9u54WLW7g\n1CyJqHIoOSv58mqjaFTkAT0rlKo3aDKULnwP8Zt20gfu4LRlD+YlucVomG9z\nkTQEjxyzwAs/1Ncb8n0xoE/VcZziRvp8YPZbgwiWZsSI/Kwp/R57TUjQ5G+A\nr68tpm3Y+/lMm6uWVJDhxFZ2uurlZ0QMBwXYZPezyLi1NAKNVGVrX2pz+fiA\nA4eofKWIsmJbkPrh7rfPsIwqlNVcz9+OkoG3VANs2NrZhvT1vq9agi3uuYpK\n3f/00+d04Da2F3nb40FHFbvwrTWfJq4IorrWoq+BGZ0YGpfkwtUPuUETPLfn\neIMJ4NNip5veE+uGGqyI1OSCUTU4WQOdx4d+GUtBBD4X2J/9S+TcFyOWhf4w\nxFOESaQllMkyPIe+Kioup5l36sSKvfM1vWSCWjG/yiYNR76nr/ZLRDV+vpK0\nynN3Yyua2CIgTEEJdPJKDoKx2aGYrat9QxoX1HUFXK+8GcCN1hHk7ATletuU\nmm1zJWgx7qAqSchZTriQjPTOQonoisxXLsSa7SuyB0xZOq3zAWWJ85Jzs4L/\nEIC0wCXPlcuR50KiyDfjc6LdbCKpkANmY3mIRH3k6FID9ZhNLfeaeiXzIaTx\nFM+KAS/QTDIfuqDpeDuz17mc2o8d/PVTMJt0i28QmLwid5edMNBk6/uMXiuD\nM7mn\r\n=8CWq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8945e5fe74888ef9268254aca686ed2631739804","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.9","@balena/jellyfish-sync":"^6.0.56","@balena/jellyfish-queue":"^1.0.9","@balena/jellyfish-worker":"^4.1.18","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.15"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.48"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.44_1619236593367_0.8213457491028435","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.45-renovate-non-major-d6dd763a0b5b4160af3ff97520c577d0cc510095":{"name":"@balena/jellyfish-test-harness","version":"2.0.45-renovate-non-major-d6dd763a0b5b4160af3ff97520c577d0cc510095","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.45-renovate-non-major-d6dd763a0b5b4160af3ff97520c577d0cc510095","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f30aa0ff99d32ec2a13a1e5e49040e0be272688","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.45-renovate-non-major-d6dd763a0b5b4160af3ff97520c577d0cc510095.tgz","fileCount":24,"integrity":"sha512-PdahN0eGlHk3YjvyApN1WLhOc1l1yPdJrf/uLwVOW76akp3J/rwkA3KllD40exNTsmhHY14t8z9rBI1mJUDw6w==","signatures":[{"sig":"MEUCIQCIpeBnZA/Vd1s3Zgd8IxiYTsDFcMzzrGNR9XYiw8G2xwIgX4gXpvM9WDm1zTgBBlpSeykoBmI2s895RKWcJ45O76M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg+w2CRA9TVsSAnZWagAAUU0P/iivtPp7iL0rdW9wfAup\nmKirkEsyp3EzQLqIRoW95hgPQe+s7fkLDCwalAXInam9xKPMgQLPBKylUKNX\n5NLm//WugIea6R4DIVtf25ob4rAqmApwNSQQsay8y1TaR9n291b07saJ7+Zo\nNzuc88QXvkAgcWmsrPzbZbYvWIMIBiFLFlt/0vG7gRa/2q7oI/TnMpodQuZt\ncGhCah0V7H1on+1Cgffe/pd0RHD/yGACi4LPLX4Y78yw9aq3jubPEIfGp7wF\nnZ7Ud7XCIIJdlWS/D87lk4Hxffnuog3Qc1xZYiEODBaxQ0T1Txv+8Azolk8P\n8+LUG2mD47QcCEa/Hzt9lSP8iLWrjU8joN4N40J/RRbPhDLSsLf2UzpLUhQY\nsHMB5vMsy0DdLq2FHdkdg3929WD2Qaj3kReINH7k5XxocRz2gb6Ffh5y8LwS\nCYrYt7G9962ZjiBJ3lTVR1vR37LfLcCq92AsGlDFw9GewSHAAB8gObQApLO0\ne4oBdyNsvyXGBfAvNbRhcnphSXy80g6A/nJDmVUyRElROnBs5cAV79s9eMBN\nBREJ+UgnQBKzrMpK4qt0B8YhMgdK1T1t8015NPvuKHxh20VWA5NodM6wYTSN\nBC2MfY6BIadbZ7NNntZ/c4/9UjLHjyZ33cJ0omtHdddL/J8v/vy3KgxkOQnn\nlKCG\r\n=tvdo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d6dd763a0b5b4160af3ff97520c577d0cc510095","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.10","@balena/jellyfish-sync":"^6.0.56","@balena/jellyfish-queue":"^1.0.9","@balena/jellyfish-worker":"^4.1.18","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.16"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.3.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.49"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.45-renovate-non-major-d6dd763a0b5b4160af3ff97520c577d0cc510095_1619258422245_0.27382221337571666","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.45-renovate-non-major-7bcfdd25b99cec427533d542f4c5189bd2e10c46":{"name":"@balena/jellyfish-test-harness","version":"2.0.45-renovate-non-major-7bcfdd25b99cec427533d542f4c5189bd2e10c46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.45-renovate-non-major-7bcfdd25b99cec427533d542f4c5189bd2e10c46","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9eccf4d13132bb66bdcea1031a4034ae54e56d3c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.45-renovate-non-major-7bcfdd25b99cec427533d542f4c5189bd2e10c46.tgz","fileCount":24,"integrity":"sha512-5I9fsVYozMs2HeFGEL9XnBdl0FcCrNqRksdSKprcDUlbu/SmVdH60Y4cTk52G6YlKI9qSvT8qrGCL1vyvTuUMg==","signatures":[{"sig":"MEYCIQDNHgpzRegAxeULD4StkS40o0qVEj3P1nDnfoycky9MEAIhAM1D+ytApO5jq9gQ3bYfwuXaqSUGcFQoy5sAwzZj4Yi0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87400,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg+5QCRA9TVsSAnZWagAA0S8QAI3yYQdQ/X2GUohDXaJh\nrIbcHU633EiUMjaMxFOjWlZE1NYFV56k3Jh3p9ps8an9GJbgVWr9mZME6R7z\n9NwkzIUGgSqv+tc7+ysW+PNH4xrKtWvxvbsEs+7QfTXR48cCP4xmP/S+8xjI\nUSKpiacGayUsH+4UUQyriUQnlpeJYjkDToqAwjHAfqIPg06XUJ5UMxVGVdaX\nMJONqalw7dsjIiSLsbY+NN91KpTG4DnREhoDuBuPF0cffUL2w5xO2OnIhbUq\n8sIBIkcr2jiVyvVqGCKqDWEFlOqLg1yvPXC70fvyIMjZcVeHS/cWINmtE0nu\nOqT9kGomQq1XJ79QnJygUaTePFzDjO5q9sZHd0cRlMYwxB+smHBbyL7JUs7D\n11H2QdM3YA4SckdDJkREcm5SHSBQW8qFrxUUaNX2a/rfhMaW7GjePxMTjIKT\n7fv/+y2HX2Khnnm5jV55uugUHuFD8MiLraYXMetfs0ffL0DzYqXrOCdVUeeg\nK0aG+V/XUVCtp4kRTwYsYmPJoZTwHUBqYB9L6Ng5t7MbfLkNzeNFAOAXwPxy\nLuNZL/thg9+rUg5hOZGGYt1a+EdBFAlan7JIWJmPSaZobCPKH7ItIyUt+AJg\nn68uMyH2EWj0M9kWm+esRKV0odFJ+bhX8l4m3Vs73Rb+dPBH47qI9pfTd8VT\nhXzM\r\n=8rjV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7bcfdd25b99cec427533d542f4c5189bd2e10c46","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.10","@balena/jellyfish-sync":"^6.0.56","@balena/jellyfish-queue":"^1.0.10","@balena/jellyfish-worker":"^4.1.19","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.16"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.49"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.45-renovate-non-major-7bcfdd25b99cec427533d542f4c5189bd2e10c46_1619258960487_0.825152839122105","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.45":{"name":"@balena/jellyfish-test-harness","version":"2.0.45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.45","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9253c9dfba10a7b22f1ffd19299da9892bd7bbb8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.45.tgz","fileCount":24,"integrity":"sha512-uc/2K7T/ikQyEXxYg+NE45bytZPntjmbLiXPgDjsTdIxn6uK9pwwm7h0UpDNDwWTenwo6C3cVgngm9KJz02bvg==","signatures":[{"sig":"MEUCIQD3G9lc2oqlnLmFaOOcrC5qIh424ElgqMKgwE/Lpk+UdQIgXV+R+7EQ2Ou+mr8Gp7jvzOpZCan42WYy2W/8GLvnYIg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87340,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgg+8oCRA9TVsSAnZWagAAOVgP/2mxwWFacVAKy0EKHWi6\nPNX5q0FK4YvutQMKjYRILwgtR3OUYxTVuUX0vQFQpjrT9r1cYsfu+RvowsR8\n2/pggjPUXqB7sBpPnfUGxYhGrR+aHLbolkDh4mGYXbRTDEdL7b2B+vs2FnRI\nINA+7/lK6lJLVJPQUtVRCfKOrjPPvTJ6rcCBjBva/nwai9adYaqjm/f1mapy\nz9hH/lhaQDcf4RfliDbu0INgIrDsp6XSJyFZpwrr8nRhMnw7vDA6DNXvsgTG\n1BuCbWYGF2YH5bxZk589yz7Q4MYkPcoANYlzEVWwhcbOpIVXGgJrggbd+CH4\nqkE+2/JW1E/cqF4jmgx4+ky/CyljeQnYLTwuj7W7I+yZ1gossyjTKPO9Tuqh\nH690cH7d2JAgB+pn1nXmtaXznHZAB/OqQtcJyaWb+avR1r4R6mgR/lSkkFxO\nzLMlSQ4//nW4wx9XPzA5V45hkTBAMd88j/d304ua+FRjRNdqzE1hYyciLEN4\nZOMwD9Nh2x8CU0x8DMBV671Gy/TdsftqXP7fIUNBFVT0O9gECy8LrpSZM5xk\nQZHHCRUunPCur6FjwmyO21T46twdR03dXL+3ynQQFIjGHqVQijf7T3DiGLX/\nrKwfqxhyoXrxDEFPLsPiys3oTYsmYxge1fD1zurQ2VOTsJghzpzLKg+TARFE\nz04D\r\n=LNIz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d6530ddb6ea0592888a8b75f2291218957dbe07b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.10","@balena/jellyfish-sync":"^6.0.56","@balena/jellyfish-queue":"^1.0.10","@balena/jellyfish-worker":"^4.1.19","@balena/jellyfish-environment":"^4.1.5","@balena/jellyfish-plugin-base":"^2.1.16"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.49"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.45_1619259176256_0.6767432132370577","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.46-renovate-non-major-1136ea11a7d07741e146c481d6e3b639d666f5bc":{"name":"@balena/jellyfish-test-harness","version":"2.0.46-renovate-non-major-1136ea11a7d07741e146c481d6e3b639d666f5bc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.46-renovate-non-major-1136ea11a7d07741e146c481d6e3b639d666f5bc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8db650776bbf68269f07a27a5162d4862f3cc140","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.46-renovate-non-major-1136ea11a7d07741e146c481d6e3b639d666f5bc.tgz","fileCount":24,"integrity":"sha512-DrJFf2GPgxX0/gR2MAoMwdiA/6Cpf+6YpxQT5nG31yRZYFl06/0b7xJW8PPz/Nh2GzP5mmYIsUIhFuRAzZgyUw==","signatures":[{"sig":"MEQCIAJlEbRgYrJzUiLw6OO4x5JV+bjVgwV1TzRzVzYsLke0AiANvPK5S7k0Cs3T+M4xrFy8m7S2o2XMRdofWBgihIwpdw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghDFGCRA9TVsSAnZWagAAkO0P/jlxHfun6nipjHGl+8sf\n8mjnuoEF7cHjinK8Aprj4fYzrjiFP7C1pnObgHEW277ZAQWnvrE/yYc3nYjo\nkCgJwDyR9jqyZC343ssiDSdu+0FDW64pYBU1S0MQV1ua0pkBdzOAfcoQu0Rz\n/UAk6OXNQqpSQzlW6QXApxZz2Qh2nN6e45HkK5N8nOqdxJEWhaDhH87eRtYn\n+df7K0/7Su0s83ygwClzgXJ8CxpoPzUErEjlW9rQRZn7mr36n8QQubnStpe0\nvaopbNnD6v/390v+TjITjC4b0BLXUZNR1ks1xJxdb1yjPwlYI/RhJmtiAgxR\naKPEYTCxRhNr09SeKUX06MLPLvDE7mpqNpVbgQTKqe71FPjuUrp1GP/PsoAJ\nrpz6u21HShq5HTczZqxFAZ3/uy/bBKNoZJ+WuwKoSOHPkx1I98r2pk5essxk\ni7boZffSEjjRnOOj4mHci8ATgfxiYBSII/rWXf4DZF+jg1q1SfFlYto+rqym\n2PKtP9E43pg1TvcFP7Rn6yXqIonPd/K0/VgCMBhk7800lgp3VsNVa/SBAYAd\n1/Jt3OZ+fI+56p6fHbBuz/KUJEH95F8LRAjdFPxbD/hpjZ4S+UI1RZxCoAol\nKxl06kYvINHMgVw44VfqmYdHm01OrKKhoFz/zdLcqSlhs9/Q3UQ1OAar+esI\nYiB3\r\n=6x4K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1136ea11a7d07741e146c481d6e3b639d666f5bc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.11","@balena/jellyfish-sync":"^6.0.57","@balena/jellyfish-queue":"^1.0.11","@balena/jellyfish-worker":"^4.1.20","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.17"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.50"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.46-renovate-non-major-1136ea11a7d07741e146c481d6e3b639d666f5bc_1619276101575_0.5885708749272727","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.46-renovate-non-major-3bdb54a63769817f07f8ca28a1af76c50791e90b":{"name":"@balena/jellyfish-test-harness","version":"2.0.46-renovate-non-major-3bdb54a63769817f07f8ca28a1af76c50791e90b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.46-renovate-non-major-3bdb54a63769817f07f8ca28a1af76c50791e90b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30f736daad6143b888afd80e4e70fa77ccc8ddb6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.46-renovate-non-major-3bdb54a63769817f07f8ca28a1af76c50791e90b.tgz","fileCount":24,"integrity":"sha512-nx4hwc1ULW6pOaxH1e7grLrXYMfJAcuY2v7ULbo/q8z+eGeDUmZZoN7tRhi+Y2rSp1NpYWIJUv1/OEtdZwrVdQ==","signatures":[{"sig":"MEUCIQCvX8aP4yIKjHLND7rTyGp1m3H4JVut5qdO2aoK2M8fmQIgP8DYZ5VS/Yei2J55QxPiBmdvEfYiRHy3NbX0781aWsY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghDKxCRA9TVsSAnZWagAA1igP/1u6iF8rGGFIs31+iIdI\ncbE6f33RbKfGdNxeTLDGWTHEvHuu7S3mTX8qRhn01ZyRIYswmxi+jUZIJriH\nmX9Hen+6FewRcNC28mKyv2CdAR671CXVW0hfbkLDURxxxkLpZ01uufqBZHvY\nBfZaxC3kE4C9WhUOmOv6ItOAzgP/Gb4YKEBj0MfQuGoKhAmJg+Gjw9I3P3/+\nqvNCqEU9evadVYJT2VcrCQBZo4cz7+bfEqBSt5j6Iqoq8J9IPMi5akm7yORl\n+yyQ/itcU98/83+hO4ZGMYyVU7WRGMYtW5DRP1Vuqhjd9UyOJp4qoZPejgLN\nITtAlJURNcf19evy0We1G1VgVKoXQ5jcw0iQamJXrbvz+wZ6Jgf4q5ptXwad\nnjrVZi8i6JefseWjcX9Ec2QNBAvoexZGS3M5eRbgXlIxLEFg2OF6AHa+E9nA\nGeUJK5cCJfnYleTb7W2K2f6ZYVKCpyZrEwJJqFSefbq86595Yy+Hvmy8pimD\nYzUw3E6T5ksxONrSIlhoR83nNVh2MNB3DzS3C9upYlt+apWhgIt4Ef+LmLVi\n+GLicX/xu0l6pVVXLl3Up3u+Xbq9Dv911d+qch5LlrOcMzI3AKNrodqQsbTM\nMOS0M5bQYDTWrl2qcSLZPe4sfgnY/qxuI1ho3OsXJfQ6PEEGa4Vd9gHyd1wl\nCZiX\r\n=fg99\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3bdb54a63769817f07f8ca28a1af76c50791e90b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.11","@balena/jellyfish-sync":"^6.0.57","@balena/jellyfish-queue":"^1.0.12","@balena/jellyfish-worker":"^4.1.21","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.17"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.50"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.46-renovate-non-major-3bdb54a63769817f07f8ca28a1af76c50791e90b_1619276464943_0.07538712284500426","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.46":{"name":"@balena/jellyfish-test-harness","version":"2.0.46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.46","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2e76d5515dd19ebc184fbaeaef375e8b8c04f6ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.46.tgz","fileCount":24,"integrity":"sha512-KjRSmr0miWbmLa8Zo3SBo344GhLC230st3IV6pLxMorvUOE4PXP5PLmaSDvxSsjXkNNuaW5ebGZYRVgkPpCbTg==","signatures":[{"sig":"MEUCIEzn+wlhLDxw6m8Gxl7emynA9P9vl9v+HoXtnCFuMgUYAiEAwGF03WM+yn2TPHETG60mpm0XwUu7SqhrpOjpPWaPmj4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87409,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghDOgCRA9TVsSAnZWagAAE7IP/iHn/MpW6ZHzpt8LYf3p\naJbAtUgDTLjsUyWomYMCHNfonlSlC0ufYQHKD14xaKCGJ5DeKkCGOJ0FSebI\nfANleqe57oSFG15+GYQUTFifU2+M+mURRDtEEpG41WvuaEJ6Nxp68q3UujNC\nzWfwDxf6xsf6W4BqkML8R9+SCgb5GNKbBoQ15PerEwL271Z2poJIvlRBktFM\nW1KgNDSEko399WQfKbqUhwCjkrK+Wdlax+4CVCS6J3yPgsEhixaO8kyHpF5c\ngZzxp0mIx82TEBleBAncAccIt0Um+bHmAFL6XSeNdc+6aGsYd2L1ylxnXQDn\nXncK9uYIIsR+EDHiHMUjhSB8bldZ271+oTsIYWLz9MWe7etDdmQJhOMec90b\nr0xxRK72UGXk2g9KyVTnWtwmLPVfLno6XPwpWaGoX1givDij8KbJwKI5KD4J\n2Onaxw0eaXDOcU7iwS//SFzNfpdnmQOO4ahGFd6cXwzhO/4tVXBe0ToB1Thf\n0uzzezMDqFC+ocWmRHV7/59ky6PWRugBUJXl5tHGkxyHDiwbT/dzBB/LGe8d\n+94tVpsFn85Yxh/Sgh9g5l7IY0/hApL90bf0dgWRGFWieIZs5H+6w+ZbO2bR\n2BCqgDRGSOlJeTWGBmhDN+A5+Mji0l9mK1hv//nG7oYqHy1wyqYA6dJ7CTzt\nUZEK\r\n=Ae12\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ea22eeaacc11206e0184425dd1d648e620a69f6b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.11","@balena/jellyfish-sync":"^6.0.57","@balena/jellyfish-queue":"^1.0.12","@balena/jellyfish-worker":"^4.1.21","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.17"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.50"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.46_1619276704216_0.601760440039772","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.47-renovate-non-major-600ad76a423caa4cdb3986deb6a9427c383bf737":{"name":"@balena/jellyfish-test-harness","version":"2.0.47-renovate-non-major-600ad76a423caa4cdb3986deb6a9427c383bf737","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.47-renovate-non-major-600ad76a423caa4cdb3986deb6a9427c383bf737","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d47036c2f0c4bbe66b2abd2381441d66a39c4a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.47-renovate-non-major-600ad76a423caa4cdb3986deb6a9427c383bf737.tgz","fileCount":24,"integrity":"sha512-xFHloT0cIA1qnLgNvHxb0oLgHXL7qhrzbHnruk/VZI0Vsa51SgBdHAnoYMA0s/ZTvMhRMAFkE6+KdfJawTy05A==","signatures":[{"sig":"MEQCIADTsNsrIufXoIV9qByUAZZJa+i1W1FRN+VontmYMYZpAiBo6X/9uzhb28hdq0KvVsf9SRm4tvz8nQiqm/XrjEvN5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghDTjCRA9TVsSAnZWagAAolcQAJsc1+0SC5QLcjNB6MH5\nMwBbZ5QCHkSU6iFz5zUSiOCvMxqOZ+TRf/cBNqNAlcru24ZVoBUaUmJZUJ8I\n7FN2Lns1wFC5+H+HaOzzbsdKYPc6JmpNvg+l+QcR3dhUg11DvmAZyM+S1H+I\nRoONgoo4N3kAGdMP96yTE5nswkpaXt2UIY+dR7pEHBNBVMMA8iGA8iiXKaQg\nESNTB94p1Bopccto/pQNKYDnmwamIVsJUD1x8bUQSDBdgD0nlnxdXM0XNX+k\no4NaNRvZjf2O31wrbOtAJwJa8/QkNfMuzpFjXZtIQAm7qtill/WVucApIgbG\n8x8y7iJClMEsagS5snETpVbC4r2G5SKWZNdKEq+CoItN92gKXmerAVoOkaoo\nM2Z9lStT2Ov56CEDWF75GAxcsUSZhTfPI+7ypR77OQfMs/vjYKuxvn4alYe6\nUjCPPo/Oei76l9KEHDT4ZoRF5OPL970sSY8/htbnQ5J7tQdAGNfKEbQwNZWa\nuBkOR7v8KUSeSRCIXNWUIIjA0GfwqG6xMExUhALJQz8TvF6aAG8YcOkIFgmS\nvXCBE7aHnvvZLf0FC3WmMTH/9SlnsKUEmtRxR2nT0q1PIKiSLvDAJIUkCMoL\nh/++ayU9KFMHdIMN4eHa5UTVcwnm1Dd1/YmZnYeEtoW03RkT8ElY6d5M7htK\nc/l6\r\n=tHEQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"600ad76a423caa4cdb3986deb6a9427c383bf737","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.12","@balena/jellyfish-sync":"^6.0.57","@balena/jellyfish-queue":"^1.0.12","@balena/jellyfish-worker":"^4.1.21","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.17"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.50"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.47-renovate-non-major-600ad76a423caa4cdb3986deb6a9427c383bf737_1619277027212_0.9942315815740674","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.47":{"name":"@balena/jellyfish-test-harness","version":"2.0.47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9b2763060dc85e41b7c362d698c986c54d663efe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.47.tgz","fileCount":24,"integrity":"sha512-MSvGwDbOqXB7hJm1K9WRTiu9C2jTKtaNbh/VgGHx2G8XHGmapT/Bc9pZSCYwCT9Jeu63b+IyhZ/pA96GVGVA3A==","signatures":[{"sig":"MEYCIQCJkvHY7DK+B5xwEwPHz45MXY47QFBhft4o6ZZiY4VfHAIhAIZUrt+eUuyrc6A8f/8K6lNdlGyM8pNJY8+wqqYxvgcV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghDYOCRA9TVsSAnZWagAAmgAP/0Nhb/7FEOXmKNExKovV\n2YRsCqrnHH8527XPJ5BQFcLZh41aeblhxWsYiCrrCJkbew02UENnXn/niwmt\npJkgZCPzSG4PVx8wtTqZwMb7bnNAXu80Fs3HiqLWb4a2UqXF5mxjFaifjXB1\noBkHXq9HWei6vwUyXu0la5vHOP+qRKdS2RdoDgpOo+srvgVMVtFsF/QXd7OG\n+9aeseYXB9N5m9vnaE92BL2PmGSsh16gUGr8CRfKnVxfVn6r8+mGfWYhMB7D\nw+0P+Tj0YxEZgZ7LKRyJIzCxGXMsPtHpTg9NBBuhaSbc0pu4WCFGpdCF28Al\nLXLPbSzkiOS+yUO3SzJKhEFvdfZPK3V10Nel8br7gjo/Pf+uhbv6kxXnEMLz\nFlLjjXUbJeI0/3gK3kr5DqOP04ETCNWmDnUIjPY8y8EYpM7KtlHsYYHEipdD\nlLetrabtqhms9IkCV4QsxH/X2JIkAHLY+hmE2t7QGjApAChL7v9SRfH99XGw\nBUDBcoAUrzqolemML72/GbZ2Bz0PWN0oOqzrkECYX7AQQ4unJnDexnR+fEhZ\nhdruRIpc/jdOp9SYbpz2StL8Nf7dbAnkKVQuhMOXkpObazonbjf5lZzGbOeY\nq4yL9muZGUSm9e9Zd27s8zwXXJms5QPnkiAX1maEpLZPqTrZUkU3eHCy2USL\nd1ig\r\n=ZPq0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7baae337572fd2763d6e172e90e7498932aeabf1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.12","@balena/jellyfish-sync":"^6.0.57","@balena/jellyfish-queue":"^1.0.12","@balena/jellyfish-worker":"^4.1.21","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.17"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.50"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.47_1619277325807_0.9266828778147698","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.48-renovate-non-major-bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256":{"name":"@balena/jellyfish-test-harness","version":"2.0.48-renovate-non-major-bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.48-renovate-non-major-bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"411e0521214e233bba4e0663a0243c5f763a7653","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.48-renovate-non-major-bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256.tgz","fileCount":24,"integrity":"sha512-Am4G4n2LNPENCfWk/BnQmqpH6LlAWOp+XJ06tZD5tSrMJoLMV3lEJzoN8ueaa+3hXGsNRBEMsmD1i0WMTu8jMQ==","signatures":[{"sig":"MEUCIQDZ5scs/hhvlDJjB7vKyTcDR/hTL9CYbduS8qe2I9x2TgIgXMunmKHPY5e/5x+mRVEzhz99kiOx/+/n/wesauOL9Ws=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87643,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghHtSCRA9TVsSAnZWagAAiawP/Ar1B8/AnqDfrEUUZmIG\naGhBwizz+on3/qWREJWxj61cxooJXChWFD2R+TTMY57nkbDfxUijTzB3QGHE\nXDSFEjl3illKMpCokBk0vJWtRjPKyG7M30aMsg4ioncgmh2/bdyypGs3stac\n83jt3B0aOTQonngjZXRYDdcIDBGXyyt/QLFBD0/vsrwe4DMiI9vaDeDzEOIW\naCgUnuKqmdyEn+d7+nEwDhENnsCeIqLutWoCn7dsO++WTD4dNC7Ol9E2mMA8\nVrcRWT47f7tx31eQQrp6ki2iBqXiC48wnl8D6ZNrDWrZhqK4UBqLSf4VOPgN\n/nwCfKsg32lK3GyiTBy95ZPQubDwhaxHVeuXclB6h2+B9Hnfa7eSSk4BmJEm\nXjnE1Ck/rnzvNdeUFRafPmlAmrTvk2jyNqhBg7WqRsI9V9XIXcmlXc3rsrGK\nj30bVYaJjhyF/FOYXM1RTunv/Tm4AtXzUoMrkwXu24mjS8x+ulJilPYlXXQE\nzJ8GlSrf3y+e0Kjd+1Se4Uad1OSJcqpZtOQ7qayqaplXvVfUArHKBztMTmwg\nlZc0RZ+nrOEhiDbvdh9BbZQLPc8mCamLpPNgZJAg+w5okmcdy46mDSw2fWdY\nKWc3giZc8amMNGdn9vBmz4FQDWwwZvefNvxxgB2E3RkD1JMT1enWy+ZdW9hE\n28YF\r\n=EK+r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.13","@balena/jellyfish-sync":"^6.0.58","@balena/jellyfish-queue":"^1.0.13","@balena/jellyfish-worker":"^4.1.22","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.18"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.51"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.48-renovate-non-major-bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256_1619295057497_0.23329138929884374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.48":{"name":"@balena/jellyfish-test-harness","version":"2.0.48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.48","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff8ffbaceda1bb52d8aaed44842841bebe522504","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.48.tgz","fileCount":24,"integrity":"sha512-hI0meRRFWxypzK7YXQev8/n7cMrEXjd8bfJTJUVpcfccux81q8e8QFaNyv/IZdEPl3nvtkpJaDDVyRHbpkp9KA==","signatures":[{"sig":"MEQCIEWfJNdDmAiWlp1cuG/6RAlnncCL3W0/A1l9VijOhOrVAiAgNa0uQqhERrXJzic5OML38RtdAdQbRLjf3soTMwfa+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghHw8CRA9TVsSAnZWagAAjskP/RA3ZHjypJOKiBK8Xu8H\nL/jeCQuLIZeTgo5Nkf4UtcB8xu5mEpiOsNFf+9gLHR8fxrI2G1KamDVzbJJm\np3cwD1asuxIr7W9e4l0dSuyyBSULV/zLUxNAyr6hJQ+YzI7mJR4Ap9ZZgnHk\nsKoTDodKfy7HnYQeZY3Q9zFLDEIXPYXYUGOm2MyU4/gaf5aDF01/tIj5n6JV\ndmfUh2qiEfmOilEInvVOWogGtuVRVj7WDTOcVdCby0uwfj2Pxpn7c0qEcB2Z\nqbavU1THTxzQaf6PdjHU9l/KeLEedOLaes2k5zJaLUxsdvoAIdyx+SrGxL0P\nXny6cnvZBCEin+JcIkRrWSrGHZb/Jq0XapyB3efCZ21EAmX5YhR1Y+enEBdB\n5EHOcCZNTR0WwPxHj7F7HGUC6hdxdq55r1eIKcqtyLxRPBoGuRcgSajUw8ma\ndMgdTs7zQ140JQhYg8mtuEHJMQaME7sf976fOU2Vlf/MfMK9WL7e60Spbye9\nPHs2OEv9T9JBvps1hADP+aCOlKLBtqNrTTG60JChBoPXaT2KbfkqNbUuGG4/\nTsuCZ9YPxmt9g6iLZJicbUw8DgtrPGYpQ6mEs//S/KKjDb/BC7w+PDeYKGbi\n/hGLkBindKjywSL9trVqULrK8MrMFqoEK+S9h3+fHGJi+PieERRsFJE5Qi8h\nXqJp\r\n=1HXs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"39fc40d9471fd2d62c3a4d53320cc77ced2c1dcd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.13","@balena/jellyfish-sync":"^6.0.58","@balena/jellyfish-queue":"^1.0.13","@balena/jellyfish-worker":"^4.1.22","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.18"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.51"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.48_1619295291532_0.29678078981616607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.49-renovate-non-major-bf4907e2aec4ac2afe42e3c24da6adc7b78940a8":{"name":"@balena/jellyfish-test-harness","version":"2.0.49-renovate-non-major-bf4907e2aec4ac2afe42e3c24da6adc7b78940a8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.49-renovate-non-major-bf4907e2aec4ac2afe42e3c24da6adc7b78940a8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c98698573165945958f7908d31fb78f08d327329","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.49-renovate-non-major-bf4907e2aec4ac2afe42e3c24da6adc7b78940a8.tgz","fileCount":24,"integrity":"sha512-ikq/jfmfUtAvIhjkOCUIdeYHUUp5VVt0IuDFogTKprd3EiQnLIWUOBRVirhu+ngRyTbhcjc6rbd/+ABUM07Bdw==","signatures":[{"sig":"MEUCIQCFu2yyVa2Y9ccIXKZ3sRE8qlkLZhzGv5I8H2XOQ+kyuwIgLOd3QkJwdPmdwASSO42yGS6jiM/qOzJg95ShmXIxzwA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87712,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghMjiCRA9TVsSAnZWagAA+bAP/inNBwlXYACInh3rRT5G\nl9fH+lUz5nS+8eHvk/r6IkhwIEZXXsol6sX6WZ3MJRJHZyj2lIIzGatiQt9H\npRqf2Az1D9mFdS72ReP9w5d0NLVpMHIi0Eo+HG9S0+pPSl3jgMsWZ6xhpQR1\nzSzLx9TKfU5VFyADA8EEznmQsWKgQlnSyZIbGZPoIYdhWKOT8+qRy+c60h89\nl4QOlQatqHRbn/Ep2XzwEe8UuXaWCp64Gnhi10bcLa1aQzFuRzDYzeqL2PH8\ntQjY6fuxM3/bgIOEf6HzAXZLEv5sdcc2lIzYma2SNjQTEE2ZGicHHEKXQm9E\nV4ifR4ryxA6ly8hNtXy0MgyuF8LDSTGVUgKdsULN2iBXM1IoUEzxrjlsGdNS\nXvLO4ajMRKYLysqR0lCBpdqPj5NqD6pogYbQnDArkP2GCxNJaBkyCEuisTjv\nwACBMJc8GQGkG1dcj9GlbCy75je5HFkXJ0w1P3HB6efBIt4+75S+uiTZBf2O\nBe9jJpRR5KKU7Ty6PCyJq9hYXk8EKbL87fW6D62JqNQjvR57bW9I6h+eyAzJ\njmwD+asdc+WcIHjWV/9dHQnAbejg0/DCmoUHGwh/OKjYRLfDj5/FubIhnhit\np4gIajiZXHrYYqaqGDVDWDW9zTjyR/dgYFeAXnGIT+WniF2/PbkJ8LkHe9mb\nTr1X\r\n=wgo6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bf4907e2aec4ac2afe42e3c24da6adc7b78940a8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.14","@balena/jellyfish-sync":"^6.0.58","@balena/jellyfish-queue":"^1.0.14","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.52"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.49-renovate-non-major-bf4907e2aec4ac2afe42e3c24da6adc7b78940a8_1619314913830_0.766662173565487","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.49":{"name":"@balena/jellyfish-test-harness","version":"2.0.49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8d4afd3bbe86eaa0f227846a459b62c4008912f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.49.tgz","fileCount":24,"integrity":"sha512-pCAVJorQE1IXAmMdEQFEUv1rX06WW22KLfM1/DKhcXlP1ZZnxNkxPtqbG9wmBkBIGuFEHBR8gCffbbGGna5wjA==","signatures":[{"sig":"MEUCIQCu/4phb/1mKYismV8LUOmxn6mPdNBQCMShEeCAmXubUAIgY7QQ8MtL4JPP+Am4AcQw+kc2U+8l9NeyiL3ZQ/vRZIc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghMm5CRA9TVsSAnZWagAA2HoP/jal1ica/HLCkPlC98/1\n+m74yH6Qzo+kiZtQdhpG0inp3IhpNPJ3S9U1LjBzIE/bzU2/E+J6O5i6GkxL\n/lpjM0BWmIGq81cJQirMXp1Mr8B5KkjOluLjkCGYiHmirUxZvR2+GCcPtBRx\nd/ckSl6Comf+5KR0/dNb0hbNVRDNCG8w+VfrlQpj9WYatvyy/0IjM0lEUeC9\nFrjIigENaYEsXxlP7gnonhi0qHsJaWUomM18ohrer/0pJYZxZ7T3mAdxF9hu\n6fo58nEPnGSSM2N9ssFICLrY+kJx6IfifYecytpMRms95mRepAB9eDElCUey\nnddOM8Y2LQ7GKunvQa6G6fDcGaBtmqQR2oehEDPeAyx+0yuGzpRkz/sp5B7Q\nlDF6pJsMwk7pW6Rqq+xdpvWM74KLzcfrR33JIH8CFStqmA1FVAJwoF1w6Vyr\nKdygBTkHxYkmtVYth/4+Shnh/OfPTdnaercErn/jINYFv4ME0+plVw0lUNS4\nf0mdZGONCbYcR8ZOs51uRaFIGjYTBwznT+S07S2vXpEp/ZvQudPYGHH6aB3v\ninOA4F52guF7DSlqlm2nPCWvons6XdgPDHUoOokkoofBbAuBrtHKEJ3MBCno\nd1XZHafIYVwKa6LJhXvry80Khc/Sog4vxu9XpOEDX4VBy9nQ8M4oPeU056ur\ny16c\r\n=JcK6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"10c5bdf337e2a69a54d2f34d6cbca9a1a5ec5646","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.14","@balena/jellyfish-sync":"^6.0.58","@balena/jellyfish-queue":"^1.0.14","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.52"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.49_1619315129282_0.06581735460490346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.50-add-uuid-types-24634c5e003886953073c55c690db2f6d52aaed4":{"name":"@balena/jellyfish-test-harness","version":"2.0.50-add-uuid-types-24634c5e003886953073c55c690db2f6d52aaed4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.50-add-uuid-types-24634c5e003886953073c55c690db2f6d52aaed4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7291d26fe3c04116ea4bfa8e5a15f03a80749012","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.50-add-uuid-types-24634c5e003886953073c55c690db2f6d52aaed4.tgz","fileCount":24,"integrity":"sha512-yX6QAi9o32ItS35sKhJkU+rFYLv6gaDn8Wx4Z//VU1cizy0JoWEo0bbtHjwqKbiQ/5A1vzIgddNSCzxp04zn2w==","signatures":[{"sig":"MEQCIA5mt686D0SHg7N66eRuxJACt83L8Fnj+sLK5jf5HiZyAiAhjMgMTPO4XVVXGAL7CeVQv8Cdj6v/I2RK764Cz0ftrA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghfF0CRA9TVsSAnZWagAA6AMQAIQRN9sFJ9O8DhOp/N6I\njn4ZVuM+IC2BG3sprb9m6O4XupBHcha06ojXFTp7GkXAko5Va1QXTIIFqSwD\nkl5PAvIzsHHFQW1p8uieKxM5/4ZVnWP8QZiXf1KegN9DCXHjN9L88NV0y5Qv\nCNBfYRd/fY2dtiM25N8aZtJ2Z8taGYhYGd59oKCEp+/KV7HYzLyiCqvpvGh3\nhsLA2uuyuYdqOYn9hzb6IZjs9NItn5jtNWwj9Ol4C9dJnLx64g6kB/iArM+f\n6czJ8ixNTt4NeEv1XN4wcrvy4Jf2g7HUim6yha8R3mTaj/74GXe2GmFRV79V\nxSkAQb68pq2o0vW93iyzx9FluF9f2NfLZ4L+XcT2+jDQgsgiBLyZq7QUYfpL\nUxLunY38hX8Y4HmLIEYPMvf1dTfULj0h9CLuvXpInx/Ige/5/QXtA+0vZ3zr\nuwjpYmwnoytzgfk4MmECbHCcDpLz7DGSYw3oLDdCSMoUb7cilMN36UePg9HO\nnwrC37UKeHSibHG91limeAVHLrAU6DdUDMSqUQcBmU8Y3+GXSRJGCieq5FpA\nzLkg4RKu8/w6DwV1o3BeLXp/ivCpkvOWXBzbAAyGOrrAFpZRTSEaeZG3XnYP\nY5CbC2Mbzotd8E2SfJeOyykdmissgBjJhqTCKHI+j7J7qu4vpfFdooG9wFQI\nRVS7\r\n=Wdmh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"24634c5e003886953073c55c690db2f6d52aaed4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.14","@balena/jellyfish-sync":"^6.0.58","@balena/jellyfish-queue":"^1.0.14","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.52"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.50-add-uuid-types-24634c5e003886953073c55c690db2f6d52aaed4_1619390835610_0.7102432858622394","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.50":{"name":"@balena/jellyfish-test-harness","version":"2.0.50","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.50","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c1b3ec05fb8dd439e821ee2a7d63bdd0dedae509","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.50.tgz","fileCount":24,"integrity":"sha512-sNwU6jLtB2YEtkzUErzKHAZotZWon8Ol3ijaS23mqadLp5cSDrC8jQeHyiePeoR1pQV/fepsu5vyjPCx9SIZcQ==","signatures":[{"sig":"MEUCIQCrWwUgrR9YEe6Fu9IHJYpUJ2xtCWvmpShDx0opdp2J9QIgCUBNXT0bkHFn1IngI/9R84ARph3BcaJVlhOcyhurdjg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghfJACRA9TVsSAnZWagAA5ToP/id5BMiQVu6wwO6TAgv+\nb0Q+56T3bxHMsBgxez9/8Oj4KGC0fDz4U4W5xJ7UZMGZti40F3uFC/tRLVLb\netd3XkU/f8KkKl9Z7EEL0Hx/a5btty9FbCwiNxby/8IU5CJOAPp0EhIBtNO+\nKvhp0qBDcuZNv7ukj6E79679CqkNVWRd0OS58QT50JmOkbSZzD4N7AiankuI\nd/1rkNwz0FBLqM+M/oqeR8iRaq6vjL4/qzSJEuPwDdyAUnJxGAoDg4uVGw07\n+iXwJXB4eyYs6JqlmbkRRoPlYBrWpy2TLK0RxnHW39Asc/oDso9TRuQCdgpN\nhl4UB8q5CvpK4xxga8MIBP6KNU5sv73Hm2thL8HUXEzUqixSuJcz6Jrvv7CT\nXm/HUzRv5KKJ7M+RRYLFRViJDEgPLAtf4D//YhwH4WEBtumGFeL+ZC0Qc9yD\n6fAHvlpDwwSlFbX2co1+/zOg/1/ZNUz72FGB7uDlMNmiWu54zrUv6sJmQyNx\n1fMfhtNqTFhlhdzHnZt+jTu1ed0oeEIILJ76e+uhIAvMg+VfPyYCIhvdgfS4\nDRX9Q/XAsd5L0Y6/Zgmu9uN8urF01DYXLR/WcVcqnKs/iwUJB9eoOwP5X99b\nAoOPn0Czgp5XM9dz53bRLe38zdjSGisVbpE75NoLk8tXNaWNvnxHuCAnfz7z\nsw6h\r\n=snST\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dd38ece47dc1874f5ea6b35c55cd92e190e99a86","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.14","@balena/jellyfish-sync":"^6.0.58","@balena/jellyfish-queue":"^1.0.14","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.52"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.50_1619391039788_0.29459442891399834","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.51-renovate-non-major-665ff66b7455ea14f988ce1d48ea4a95e9bebdb2":{"name":"@balena/jellyfish-test-harness","version":"2.0.51-renovate-non-major-665ff66b7455ea14f988ce1d48ea4a95e9bebdb2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.51-renovate-non-major-665ff66b7455ea14f988ce1d48ea4a95e9bebdb2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f878ab32311af121598642b57aa43663656eb84","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.51-renovate-non-major-665ff66b7455ea14f988ce1d48ea4a95e9bebdb2.tgz","fileCount":24,"integrity":"sha512-RdRPzp+Ao3VpsdaT5s/63F/8Aajgs0nkTuwlVaW6THs3J+ySBozlqHkBcSc5PAlzqdMlwf7RvmPCSCy/OMWc/g==","signatures":[{"sig":"MEUCIQCkY74fkdInudZB/CpAkbXE4rIAAx4Q1gyZEy7I7FsbFQIgT7ULVKFQIWkL2BnrRn1ZQHbA0HtGqmg0j6nztVr35Fw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87878,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghfMYCRA9TVsSAnZWagAAo2wP/0VzwfkpxHno+JnZUnma\nd7duI4XdjRW3nfUS+XaWhATj3DGkySj0711PHtHmGmMhPI/YH8eYIWHp6nsj\nPyCzH9IIcJ1rIiMcA66W8mUCbEom4833m2bzAMQc+9KdU2BHp6E3e1wdzyKj\n6sLykB03G190xy0FA0ZvyLmhYiLHofLzNeasY3KvsecXQlbumXEmt6Lhrt8r\n2BxxPK8eDZFSblki0SeqSREDoAEB5JD2SN6O8l+I0s4OVujD7IPfu3NBO4Dl\nEVDQ3Vi+DxRQo+XD9Y8HTgWt9Xtcol/4/U9b+8usTmnosBG9NAzMOIjpNTA+\nMXFUJOF2sUYl2kGdnj4mvV0O+7DdbbtWtGUf+utlC5/Z6gb9aUbllTih99ZV\nIKLljAOMegmaKiousWvbJoMePhK+NUDYUArySxwb2Lyiepok+gNzfkhoZg8Q\nIPKHlioHIonXdkdIrN5Chvgv/r3fFerQemAriLg5fXUgG3HeRixd2bGxa2V3\ndlAnRJbemI3B2RzJ7krnEMi55CfetAfS8t6Dg4ZxsHnV+nOfvMwhjP0Y+eV2\neecBXhTEL/oY44CXpa0ea/6Z+RstmH6GAJl9rGWPfbay8cw7dhhYzs6SDZg/\n+WoLQtuGUoj+CHSlheQ+jhc6+DdYhxmjK+tVhKshghf09vMzKm9kdd4kxvMA\nFNGV\r\n=9AD+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"665ff66b7455ea14f988ce1d48ea4a95e9bebdb2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.16","@balena/jellyfish-sync":"^6.0.59","@balena/jellyfish-queue":"^1.0.15","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.53"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.51-renovate-non-major-665ff66b7455ea14f988ce1d48ea4a95e9bebdb2_1619391255643_0.5120507922953708","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.51":{"name":"@balena/jellyfish-test-harness","version":"2.0.51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d60131ee5ac702d95f8019d377ee6cb650bcb02","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.51.tgz","fileCount":24,"integrity":"sha512-eZ2aiHQjB3baduhriEQyHXb/kThCKGIsZwvcz2pkyYJQFAhByRhx9viSx+qxMvdqraNhI3b4AeOjGPWj9/T0iQ==","signatures":[{"sig":"MEYCIQC42ZZekXjQTKH5Gz6Ddb9dT7ubEe0EnKl4LCVgG71mZgIhAKAZPkfLSZPzT3FrpN7RcFtmbgh2fnE9XDBtpqtYOr08","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghfWECRA9TVsSAnZWagAAYQ8P/iXeOWxggZWoylEgwOXh\nuh5GJ+ixJrZyhnlswW1OnZ+oQr0mdkgyRa5L25XRzEqFqvIYYMAma+7L6cx6\np0CFN1heduijvs5WSpokjDYFdryPG1aS6mhcQIp8H0chNc2dM7BlKPiw8gxb\n21mjJLbYcKZrxutSLxry2xVkr+ibAfiVMEBRTJd+6jPqLftLJ/O1CVFr+nQx\ngxQrK+hAqWKre8SCfi2Oc7fQ9yhta39fK7Bw49SERsjK+/IcMm8aLPwUYbOJ\npIIy/+IqtjsAYVTIavKKGEHQgkvtICtFhoPzebZnSqIwIQP2jQ3HCzCfMqGh\nZrEDZ+kp1wvqVv6ODsFkkmcjjuyMvA21ta14FipGiVfZZKigKQoiO9LM4TX1\nMrWJ8SETuNbPHCh1sZgwK0CaUrID5tC0lFrS62CjyrMO9dviGhAg7GP0yHlA\nGO2PCOhdWbaaLSrIg+RxoXZr6hYLbduQJMvv32Lk+g2LwainSTagouIVkvLr\nSDy3O1kQfvwnQZ0drOSykNtX3DuQP9Y23CCVhvWM+2G80FKLdXEcDAxDl52f\nbwjiUrWLgUHXLEJfJGogHTizDSmu913c0gyKHsAdce0PaAeixReODsu739Yc\nI17YU76mzFudvH7Rs5bfDpplQCA9w+CX08CZWmlChwaeAB+IQ9yxL8jvliue\nWz/j\r\n=dKjv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"02e4312f8ff4794b3e5e8e8ebef1a335ea2c3fbc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.16","@balena/jellyfish-sync":"^6.0.59","@balena/jellyfish-queue":"^1.0.15","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.53"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.51_1619391876141_0.20552665083298827","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.52-renovate-non-major-a45ef63ec924c0b81d2d28828f6af5d72f4fddb4":{"name":"@balena/jellyfish-test-harness","version":"2.0.52-renovate-non-major-a45ef63ec924c0b81d2d28828f6af5d72f4fddb4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.52-renovate-non-major-a45ef63ec924c0b81d2d28828f6af5d72f4fddb4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f203ecbd9648ff26d7995573e5518f5934418f1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.52-renovate-non-major-a45ef63ec924c0b81d2d28828f6af5d72f4fddb4.tgz","fileCount":24,"integrity":"sha512-yIs/joZO9sdrdibOVpt9unn/xKi687Ky6quYV2ctkXuF6IHBpMCyx6OAfrEiU4rEJY/SfaU7MDCePl3pSqh6/A==","signatures":[{"sig":"MEUCIQCjWWYDs+R2e9dv7yrL9ss31TGOojrZhoKCrF1qKYkaHAIgHlDfV4tSUe4Lbbc4+5FzrjhUM1OUvel7g2Z+Jr4v/8A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghgO0CRA9TVsSAnZWagAAfWUP/RECE+uFgj8VUZsEquRg\n2GkoZuaZ3XQI2+8jbY/M7Ep8cN7hPqhSEU5GLMWJxo307ssu8jsF5eK6bgek\nVYF88ZX+k7IeklsKvcVVNx6kKzZlyq3bNatDG9wWyqIVHvs/ZCKt3K7i3kSg\njjQgdgvYK58MpoUBlv1t7G5y9jMza+pixpOuv3ZRwbRUD3mfhRsuImtPY1vG\nzdiyrMQX7Tk0fL9FP0ldXNWqLKFjsloFDaIhKh760vZTOBh5yQDRzCDQlxzI\n2riC65MtZywhyTJpoJAOUShm7IslSUj0P1eS5DdbJ4AH/l/O+TwUcVm/gQjG\nMRWUkEmxxWCMpGVNI4Pd4pH31qLZMmv3kH9kKJnTd3WcnPfaZHjYaszV5eO7\ngN/stjBWfbRA0P2LbyHIzPq3orjt1z138PQNILLsnHVezsfYTXAuoY+w4AKG\n1ISm5//KlFosHTIThaOYZU6HqUCdU377HoplBs/Rc+pVjXN/fx0ig0iBTFg0\nmL0//6g6JDQzGlVI24fRvbspUe+rJTQPg1iVnOj680erP6w6wmPciyGD79X0\nrXLD810Gg9qKuaFMsMc0ApcXXBPWaVz8Zqdk+Xm2vntlsEaCk0jdqBgZRIL0\n70ZqQK+a4Hf7xTytS4iAc7ZfFLknoCD/83vdRCDSY72KFLp+qWfJl2yoRGW8\nIJzL\r\n=CaN0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a45ef63ec924c0b81d2d28828f6af5d72f4fddb4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.16","@balena/jellyfish-sync":"^6.0.60","@balena/jellyfish-queue":"^1.0.15","@balena/jellyfish-worker":"^4.1.23","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.53"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.52-renovate-non-major-a45ef63ec924c0b81d2d28828f6af5d72f4fddb4_1619395508494_0.6198093725142921","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.52-renovate-non-major-cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8":{"name":"@balena/jellyfish-test-harness","version":"2.0.52-renovate-non-major-cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.52-renovate-non-major-cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eed25f93fe4ad3425ff47b916bb4946a56f0676b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.52-renovate-non-major-cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8.tgz","fileCount":24,"integrity":"sha512-q50oP7qKZG6YEk7JgvNpaLNV2+9zFjTahrb52vARUVrBFvb3NM7Ve3Z6O7LE9TkTJDOAdak6LVmc7vYCwQgsoQ==","signatures":[{"sig":"MEQCIGfJOr6gM6I6GfEbFfVw0fGzbmwbUftxr01QjR+XGByjAiBNsgaslcmOu26bzDx4SchiZsw27VfEwZiN83GC6WA6xA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghgSyCRA9TVsSAnZWagAAaEoP/AgX2uWTsTptSZk9iTJ6\nmRIomPGQik3EplT6txQzZzC+WLBnoWx5CVoSIgvRHI8eLgDjQp3Z7wV3Ase2\nRzT+CsIdsb6QlZDam0/xunzFWbf4PxOMifoGEJAdyQojPBXjOXh9zg8q6ojG\nCfCtVCwLPESE9k5zROk62kq1QmSD7jWgncb2v7pBFiqQUIOf8j9BnxuiuZB5\nrsAGM0l6Uzv5O4eLRpEzbj8Wkb0pUAeNtLg3nOsKFtIT/aRA2F78L9y7lf6H\nPEPp1FcSHbaCKdXX/tgpr6U5LYy81YpcEFNRkbfMRRqZow+vQV/RDY1jueYM\nBqJ3rfZ0ge9zLV9Ts2Zh1PQnVo2Tf4D+fPKscNm70/JADBA6ofgSFo2KU0WY\ndi9Rgv8rTRymxWabcNemRl+W9cj2mOpn6Q5f/eI6TVwl3xKRY9AVKncOYlwp\nluAok28TmUPAZXbv0Ji7Cf6wZIhcUWSfmxQHr+OG8NG+ckWoSk7yuxVAfkTS\n/TASsA1TRyFZfJKcAG8o6y/jyjN0ElzwnhjmXEA3YPmOt9bczVvHNQju2rEb\ny0M4Zn8gm1kzsrF/1/qCu2UgZ9fPDS/D/DX1sFu1yN4Iq3ipmACsJUeiE8pm\n/z9JDXXcdH8bHJu0vVPukk0ae/bLyhXqVNluhxzJru3z4/RVgCUR3Cd3wpMQ\nsOUa\r\n=m44P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.16","@balena/jellyfish-sync":"^6.0.60","@balena/jellyfish-queue":"^1.0.15","@balena/jellyfish-worker":"^4.1.24","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.54"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.52-renovate-non-major-cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8_1619395762202_0.8511742795989048","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.52":{"name":"@balena/jellyfish-test-harness","version":"2.0.52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.52","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30f3a7b51a2ffd2ababe77569d82ca53b19956e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.52.tgz","fileCount":24,"integrity":"sha512-JYxITPCyh24uvZESQOVm2H5wfpjTl3hvmwlhUZxHqS6xplE2ubUUE5mYgiBpX8UX/47vkh1bAl+9C4LUknZkvw==","signatures":[{"sig":"MEQCIFIuLC/Y8X64Sfe9rJ4f511uAkV8+lPo2fD5c2WMEambAiBIZi7nTIkrdWfmAxUdGGfEvEZJPdi4H1aaQ6tyNnuEWw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87887,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghgWHCRA9TVsSAnZWagAAGjAP/3Uy+v9oSjc9hosMlc/l\nfVSfIid+jACNCpInc6MtFSRuh70XFNa42MkDso6zhlAcwafauewnfg1b6uZZ\nBDAeRfQY0WNLMzgBlCemQ5Iq0V8aN53dD4iVXs6S4pibv/3psOAu/rMnJuTv\nFX8iTJzU73jySAeYcChvOmrAQTUyQf1N4lbAyHkm4rMvffn3hQ0QZ8QSve1n\nyEtpHRrlN+JAkFqPXouEaUfvJ383LKe6gsJ99/s5RAJqpBA3jjlsVFcwkLX4\n8Gw4+ZXvzNsQ+SKvXZa/zpLS/SxYg8llwFflF+76DvYHlifGy7Yc/ArW93oS\nVsK9OZ4EShxUperS/B1vlojlsan4SXKw4ZMbG8DpeOhR++p9FIBorVsItVTB\neuyAbFeHIjKkTGzA1a4CMkZigOnATB/5eS2O14Hnwr0BzEjQtmzXrRGbN2pe\nH0Pn6KlNrgSYDta0Yhl9NNwTL5CRmCWNzPw0anDR/FYxeownxb2RnxXTWbkq\npaDLixCqePVIgs0gjcSDRD/32Wx+Zr6O0+/1DuJGKRaZQg0f6DOMwcr5bhrJ\nVIPrADs/Jommfqn2YoBZ6+pUAuzJJoWCt/ATHqLFeNOD5MGYfo9B5zUHRJzp\nfNWd2Lot1JZYTG69GBhwIQnecLHV8+t0myuBOiSpVcjolyCkOo4y2Rao0KW1\n1BxP\r\n=TCY7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fc713e62522d9c5bf7196720155d9150e8b41ffc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.16","@balena/jellyfish-sync":"^6.0.60","@balena/jellyfish-queue":"^1.0.15","@balena/jellyfish-worker":"^4.1.24","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.20"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.54"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.52_1619395975307_0.623651431568456","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.53-renovate-non-major-f7e3654153f6b606d7cc240646bd5cc924ff0e4a":{"name":"@balena/jellyfish-test-harness","version":"2.0.53-renovate-non-major-f7e3654153f6b606d7cc240646bd5cc924ff0e4a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.53-renovate-non-major-f7e3654153f6b606d7cc240646bd5cc924ff0e4a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b8e67243cd5b826de23141f641eed51ab0c137b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.53-renovate-non-major-f7e3654153f6b606d7cc240646bd5cc924ff0e4a.tgz","fileCount":24,"integrity":"sha512-qIeWUtqwepIWjrvFI5/cykfmuxQ7E+kJy5RIN7TLY0vg4sAAPLijb+ll9pWQ0GMqf/tfj2a/nKLaB0EnjYz+zQ==","signatures":[{"sig":"MEUCIQCBSHC4cSYYDlSyfFmdUIxDWyVTeeVgi+ttiBiD9WC3aAIgPhyrtWAvYhbs7K1qtg/LdIsM1Xr5vT0d28jYjfxoBwc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88016,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghh7sCRA9TVsSAnZWagAA5rwP/iA4ugOQMX/DWKMS2ZZk\nFSv8PCw8/qdvc3W5DHfcOh9k5ctRMq7sQeNjtWZ2Gza2F+pxyLqs+A472tCK\npkE/pxB/4F3f+DOjWPSMRHBf9ErAB5Ep7OuMGifHok1jn8uDyRZTUFMdSyBN\nGA1MhMwkzLnvz3bmnq7gM0Yq+R/pgXuYlFuoYO2qZ4SxaUB1oTO/H6hkmEvd\njfiljpmC7Xz97MKSlm754Vu4A8vjLjQJISIA/K72K46sMTzyjgl6K3r9NZ2I\nvh6B3hgx9uvJJ2O0JS0elrve4kiZ2nGerMag4wB4JtkeU/kmm+Q9p0hc+3Qt\nr3NfWZEBtYMhMQ3hWY1D5/Xx29tae4Nawo2nkbbsQxFny2xuJZV6zEaL7m/X\nIAeI9Dc+WmHrWqpPhJHrzfuCc7HqwKvm863EY9nBGI+1L0Sl+7LtZaR0MtEp\nJRVVq3Han4iRks87/TaLETORYdWQNiMheTsdF0nWhPehvlz1iyHcOgY6HuyC\nYsHQUJTj1T92Y8AKPTKkPhqm7WJl/bMcrmHhznV4fIA/GDUSO/kyE3LGcjtq\nifEtyeSFBAS2zrVYgi7tvuVhGqfzOibTSGHXRK5GEgj+b4oGQ+9lY6bxCBwM\ntWQZ4bB1OU21YL9kPNIEdaoR8wA/km+1Rp/AV1EmKdIbNHaqUOJJf2qn9XkI\nJzZL\r\n=GFdZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f7e3654153f6b606d7cc240646bd5cc924ff0e4a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.17","@balena/jellyfish-sync":"^6.0.61","@balena/jellyfish-queue":"^1.0.16","@balena/jellyfish-worker":"^4.1.25","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.21"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.53-renovate-non-major-f7e3654153f6b606d7cc240646bd5cc924ff0e4a_1619402476180_0.2689475633471192","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.53":{"name":"@balena/jellyfish-test-harness","version":"2.0.53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f80a03ee75e6422a5607945d164ae94e58be861e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.53.tgz","fileCount":24,"integrity":"sha512-g1ZIq9QDeHmQPwfIeuhTVynPFMG7/M0xOymhyXrqVeAed6pTn7OMpTlkGwWHoyM2i3AkBbSGFia3yAJRvqlxeQ==","signatures":[{"sig":"MEYCIQD9T2v0jfhF+REvpJkgcPujl3subSE71q4k10NJbqhe/gIhAKx3KirWGY4PaWFHbbSvLV39LfwWw3EPk3gmp4U4P24M","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":87956,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghh/3CRA9TVsSAnZWagAAI9AP/0KSYhwRlzOcXMl8Jlre\nQP7DeAJoAkhlknRTf5IkyMvzV75D2KdPCSUN+1EQt6ZNQOomjsq+SgvGJ3BR\nqccRv29SHDoU7wPi0JvKLaNsDcK2wh+vJjQzxpAo5LnuqwHFPp/o7uQt34OS\nMocxYCrnpBJmq1YhEVRoMdY5jQae2YrXfDzrgkuZSRVs69wO/IDowvjYNr++\nQVsqux4LySS2ssNAsnJM69lGYDFo0Jla3KSrbxJtsezICwa7sVYVl1gdAyAS\npNnoSYkjxgTLo9utG6qoNEYYuNW2Q8PB+qAXrMnwhpj2mtApV6dFjK0X+F+J\nNNFDqxAa9nIOK/14jtWinccjONYXmmzPMtJ3mDfF96j+Mk8vRzeBKCtaMnt4\nnDBpqeJIy2LJmNaqc7iXi4SqCFSq/6/agOxYdCIoOIlJ6zBLlhsftNKOTY2d\nJPnoAlndHocnrBVEjGua2qF25+NNBV/mX0MjA9UbfYf0BKm69C7zahEMByrM\nUKYp2WyOF7b4aa2WhzAsG4z9wyJTU/Atyap1aae8uPCJ845m5oUnFkO7SUfS\n87UmZFcxEIHXkdmcc53VssyWJSyCHw6p95BXa4GRyrTUb+4tJyFlvgVpzKMr\nXLAZMCXHtIMbS699Xn9S6aTx0HPgreyneHRnlIPGNWxrGCXwihdB1YxYct1C\nA4nF\r\n=r0hJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4e8690860a76055f0c36e490ff17875b30d7412b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.17","@balena/jellyfish-sync":"^6.0.61","@balena/jellyfish-queue":"^1.0.16","@balena/jellyfish-worker":"^4.1.25","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.21"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.53_1619402743196_0.06690203550987239","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.54-renovate-non-major-81db8fbe2a18eb9abb12327eaa4306b90a6d169e":{"name":"@balena/jellyfish-test-harness","version":"2.0.54-renovate-non-major-81db8fbe2a18eb9abb12327eaa4306b90a6d169e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.54-renovate-non-major-81db8fbe2a18eb9abb12327eaa4306b90a6d169e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0dde5cab5551cbcde67827ea0c102bf97e8eae54","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.54-renovate-non-major-81db8fbe2a18eb9abb12327eaa4306b90a6d169e.tgz","fileCount":24,"integrity":"sha512-ltykb+32TehIJrio5hQIS5rIGP3fiDcKwaopzwpUXD7YCU5gQgmVdaQ6wdppIlQSQedi2buS1vYx+S6em0fgFA==","signatures":[{"sig":"MEUCIQCYWxoGHnASncjdEayh/HmB5yjXtG19i5Ul3KWjAgKhIgIgXNsEAO1Z6eoh8gyKwAMTwpQAuqqIpBWnEGgPE6DHSZQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88085,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghjLaCRA9TVsSAnZWagAAK1QP/17vC+KULNgcPYIZBNyQ\nCcjV9tCpNgBrKEg+9EOEQa9MZa5awdZlZa1OY9chpTkJoEx0L66h//FUDct/\nWTZ3aS1fngZanb15ZeUEoDv3QhyD1kz5kwpJLxw/MmYT+WRjyunZ6KX4UzXq\n6d2RFaiT/JYQGnrRQP7iqrSr40fbQDI+y03UqZ8bL/yodExo3pEneEJ8Irqy\nNJKuMzy8n9Cng9bSSuNTUWvdoujFbg5fhj7SK71evDfiiLwKW5V2dAz6NSX2\n7y6/n8HQ85YQrqcRZsXRXEaWrDs+2t0vuZczVZLIN+RgJJc31FsRRS/LoEhf\nEwgCyNskfsZiOKdYSZQufoYnG/n+ALc0WXuYp8JVKJQGoQ3LcFUOFJBSd3aL\nnFAtLkyRQbjpLtVnen/OkAcpw7qftwLTtdmalQGtrcyEHxxKKbeNeFJxh/n4\nwBKN1A77w0LNR1LcBRIothpTiQP/gEvh/KsxF7+D7uDYCIdTjXbScDARdoWP\nt2KsjMG/ybNde7VoSqB/zzsXFa/bv5+pcQb5rNXZv0/dCtrgbBjEBMOhZxPI\nwiGIcXN3qs9ozj0tOvla7BluHCjdis0zKMG4uOrkJmpCtqSeMi7/UIX7FWD0\nM/6D1huzEWHGjpLV2wsANA5fqablja8v0XQs8HcAxC5m6gO6EevhFqdGzgeT\nF6Z8\r\n=dr2Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"81db8fbe2a18eb9abb12327eaa4306b90a6d169e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.62","@balena/jellyfish-queue":"^1.0.16","@balena/jellyfish-worker":"^4.1.26","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.21"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.54-renovate-non-major-81db8fbe2a18eb9abb12327eaa4306b90a6d169e_1619407578068_0.2537744234398156","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.54":{"name":"@balena/jellyfish-test-harness","version":"2.0.54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.54","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6915c9fc65c55f4b2f89ceccc2338d025ba82b60","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.54.tgz","fileCount":24,"integrity":"sha512-cWalkxxdqWHUUwx/XzFbQg+HxdwI86UgwUrwV9LGUqMKge5i7fV2GMQgx65gIbV/DqAqtpu1J0KG30dNbkniXg==","signatures":[{"sig":"MEYCIQC6cMj4EKqgZYnhRrRgaiFf/P/2kjUa3AfzmLynMo08RQIhALMsxMu1bnR8IYaYVhAu9DRqTXxf4DvKhts9OUm62rwa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghjO1CRA9TVsSAnZWagAAss0P/2I0HynU0wd96DkRb1Id\nZzMz7kq2bE6p8n9lX9lEBK7vg5mX8KqNj62Av6orf5nVlEKXp2k3Z4K7UeSG\nISy7X1RYvPvZQeikIw1sgAzNBSRF/+LqCEuE67Cxhn78DTqyqHyAz71o9F6E\nk6/nyyKw3VpAecVu42jjDry0r58TWN0W+775okmhH1NlL/5kDpiq5DZ8dyJf\njf1pBh5YSyqeFCA+Fu/mYBBnRX5Lbb6EutKKA9NMWaBjs1vgKZ8uMy0S5+TD\neLOUFf+3/b4fsN7AS1BtBo3PaFLJGjrzG3rdMTq9bselpIK9NHr69PNYZ8UN\nmNIHdhBRAL+SKX69Kh6QCW0DLD8YB/SOuix/4El2Aa5t03HMlITiFO7WzDRs\nvGj55YfVEzBNNJrdc9d3cP7WsEcxv9aKuFJU3GSWlXqBlotTJs/rZ1WKr51e\nIX/0nwwFsaNQdnNURzoI9i094ZRrj3NOlHY1s49vqun4BY+J99ZtiqtMNRuF\nVdZGv1O7tx1LioacIELJsgHSgH/op+V7dqLNtEyLbdsXkJIOLvRMmfyJQ6T5\nSFI54bmrXB7FgSivPtFA175ICyM2jutrXTFDzI5xcUEe8BFTGdUgVlQrXxRK\neHwjMShnSrl07yzg23UVRf6j9LlzhJ0nquDuRptlxqC3uDC6y81FHi9jM3+1\neDUT\r\n=joDI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"377766158b5a9bab60a8bbc3c74bbc8781212ba1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.62","@balena/jellyfish-queue":"^1.0.16","@balena/jellyfish-worker":"^4.1.26","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.21"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.54_1619407796715_0.4816291824905967","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.55-renovate-non-major-433e8f8638b9ae1525026f7dda345b09fde09db6":{"name":"@balena/jellyfish-test-harness","version":"2.0.55-renovate-non-major-433e8f8638b9ae1525026f7dda345b09fde09db6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.55-renovate-non-major-433e8f8638b9ae1525026f7dda345b09fde09db6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"38a005300a9c2963fc50f490599c6a0f64bcaee9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.55-renovate-non-major-433e8f8638b9ae1525026f7dda345b09fde09db6.tgz","fileCount":24,"integrity":"sha512-FR5WurlLmGR2+mjAtChrrTplJbVGmADqjTtrCq31iTs8zXJUr+CbozaPwJHDYs5djTaUXuZLsdXiR3sAMrK5ow==","signatures":[{"sig":"MEQCICOqBjLBqbQcU2DCKZspaiQbkAef/O0gLDd1+9hoNJeZAiBXu5iqpu/rv2t+Ov4fckRU5M1vgnB3Pu3M2WfVK2CVYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88154,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghk/sCRA9TVsSAnZWagAAFqIP/3gowBfKANNcA/K3PXIi\nk/W3btvPLI2KorkMY3+zXYuwOkqHks3nK+IAIcUuBH4JXAtJYd0j5kuKdYvU\ncmD8XyXxK125wxOWS/LBLgBFoQA0jgKI9kUqjy7kyFqqX2VVTKJv5qJZhwIE\ns1j7x8upBtIJAc5dnBLY3Rkx3jVYiC3ixTWyrWgyPVhgRPAQWwVeo/3k66Oa\naPePjvb5DTdMwRrKJrjz0xMQdXcEp3tmWKrlWRyN526QBxj029sAdOM8bGsy\naB16sgFYf2NKy9FyOtSXnLzwfUN85QDIQV3uiWNh9MqyUdUMnYI/2zlg8Bna\nOfQXUMiiKZlFGcjuWw8FuXVYUmFvsd3+DJHFqdgpXJVrejf+kycSabVNVtGu\nz+TSI+GqBJ479O4yQWud0Rz7BQwaHIlQmBDx4Hu+BjLTylZe0Gfv/HGpmL3h\nSkSq6YpkLH2oPNbS3qwmJuBgPL8fp8xYDvsBpqrI21axoWQOJWyv4GiwjCTM\n1i+gaXPGOg6vCtFC95ReH1hftaxKvOHpVnO93SqQx7x4jhXbdm+E2zpKTq7K\nyORfSEm2nIrYV9eFHoCq3vtA2WvIhYJJvevUZECumn/kD84HPPcS+pDSW0El\n7R3GfTTZwt42znT/PMQDsQLkVhJitf0nhjzesPWrmfqWgvpfpqx/gTdrcW8S\nrkZ1\r\n=Z3Se\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"433e8f8638b9ae1525026f7dda345b09fde09db6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.27","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.55-renovate-non-major-433e8f8638b9ae1525026f7dda345b09fde09db6_1619415020081_0.23829619798249868","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.55":{"name":"@balena/jellyfish-test-harness","version":"2.0.55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"19039a30f342fbb68d143532907c397e2fe288ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.55.tgz","fileCount":24,"integrity":"sha512-AlgS9MzKwnGQKTsG7CecOjT1CDf0tFHnt+JC2S807S3kfZB4sCM7ChpjMNznyidTjEPd+QyL3Da5ighjPC7Bgw==","signatures":[{"sig":"MEUCIQDjS1Qb45fgD6cD2sZD884XOCPpfPLMvekvFY6Qw+NtIwIgfeVuXVPxw8RqjB5/LEdomwjKIaI69N3700YQAtOPwlE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88094,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghlDCCRA9TVsSAnZWagAAl+wP/1g1f23qArd1KPpze2er\nAfvZz0XV1XNMg56DG00O7//L41N24QiFN6VA4QJMo0Q6IE0N9x2EewjLPJA3\n/7E1l1CoLjXE+QkqfCHWXgaJJQ0Z/y8/RP46c3A4XBVdnVV7hYuaIfLAAjLk\ni0QiwZW7Gwa60u1Abkoh2b4LFgRjdGF9m5WnUxR1kdHWXxhzZMc9mTkLcLdd\n5BZMWXpMqQXcJp7/4wbl1e0l6x7FabGyCEDCAtPX0BjYDqXunHTBacnG+rV2\nB3hqDd7YVCFUQuyuxtwp1Iv8/+47+zeJNhylrPLhLuFKQrIaOBEGLpa2Pmuy\nZ8ka+YMJLzGsEzeFy2Jz85/2uyOiAXUcxOwITOuOKJaEyOC1/IXY19vRZnKq\n+aI6RHgLbxRYICjZBgaH2mI3Z46c9Zie9lz6ieFI9SVuys/prWrlU20DXesQ\n5EaC9xHVpUy3l5nDqVcw+pBBZMULjAHo8VFYaN938luWuum7amxbGQTBbwTf\nW/bsQXFkdUDCOYsgFFU1Q+xBTJq15K4Q3xgC68VRozgJFSOKOlBgPTY927Tj\nW6CXgYv/Rtmpn5LtU+nLsSMVML3Y9G5yFeSAKYyp50gZSmSYFIZp8KGXMYdP\nKySaL6FCkUnzlitkR7GXlEfWRuoG0UyR8sX72Gbap0xdpjxKLOqbAj0g4cSk\nWbeK\r\n=LaBZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8dc209b9df55c8fc561bc5e758701d6af72e2753","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.27","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.55_1619415234014_0.3037031939162871","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.56-renovate-non-major-bd5d6a4d572b038c41a25883412859b5c500b1d1":{"name":"@balena/jellyfish-test-harness","version":"2.0.56-renovate-non-major-bd5d6a4d572b038c41a25883412859b5c500b1d1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.56-renovate-non-major-bd5d6a4d572b038c41a25883412859b5c500b1d1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0c3f9f1ce91b65df30dbf3ba86e91329354756c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.56-renovate-non-major-bd5d6a4d572b038c41a25883412859b5c500b1d1.tgz","fileCount":24,"integrity":"sha512-gzjYJNlCCOCWx90q6mQMCxswBYynThmlZjrMkoOfF7h2ZzPOKpCpdHhhIY+jzEXfFAhIX5efw7kQYVC/Kg8QEw==","signatures":[{"sig":"MEYCIQDzzP5l0q+eO3YboG4u4gCrZl4u0XvbmfBYInLd9OqiJgIhAMW4nwrVK7vqp/lumVTieL0EF57Tj9TLVgJjjtJALBRj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88260,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghnXHCRA9TVsSAnZWagAAPtYQAIXMfd+Hi9KfthbHkTWa\ni3mtFHbM6IJz9td7/3qtnp75BxTkVDdc8dHEf5pl2WkifO5o5xzEf2KIvM0h\n8h8HTKzGZOvXGRkljaQYnMubW8jzcotz25Yh+LVDQPz2B4CvkxKuXSlh8b8w\nrNGWZdLCBxx+nsXrwg4seF+1q/tF5Bm1yNcXL1d3mNBTDUvfx0HPujZfRfoO\n/OIaqJGaAEsRFtki9eA8U375oX1JvohC0P3qY2tPaxvyLe0BdR2zh/+mHwBZ\ngWvks8ZXVL35pg3vFLdK+CfyJcaFLavlLqb+8IYmvpz5u2ZSIfWRHlEyYbiF\nC8MAD+Mb7IHFvIhnjSLSEpYr5LvSmEeNTNML3YzW0nLF53pVNa/S9coldUjb\nX1D8+lPmenPJeD4HZPHNGLmCjkN9o7naHswpFNJEIEo9bfpv0VCDurgrfqma\nj6/9L0ss6d8+yO8ph+pi7izQ7tBJZclVoTUqLjoHMOZAFECXP0ENKcV9sFeW\nkCqNI0ELxTbcsi6IxGT23jntRl5QyIlVo7IxKNKyatnbicIzgoIkmGSsdpwe\nxuoheYBfM2gYBc20NEzk0N4HBHLsQ324xGhhLAy+aR2akFkO21eV1EqrmBCd\nqhreFvEXJWsCEGo3QMLZOa6IzmmkMrYH80XPNwa3jq1xiyCcKQqzcL4MwwTQ\n5zGd\r\n=bWY/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bd5d6a4d572b038c41a25883412859b5c500b1d1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.29","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.56-renovate-non-major-bd5d6a4d572b038c41a25883412859b5c500b1d1_1619424711029_0.17758329558615227","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.56":{"name":"@balena/jellyfish-test-harness","version":"2.0.56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.56","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d1d2f7e0bcf8df95111fb2a33ca14ed03370600","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.56.tgz","fileCount":24,"integrity":"sha512-Nfbv5gs777cUULGcer4wtZD5oH+MFw8UcDIvxapbPxqX4snV/2Sfj+wLKHwYJ5CWWMh5tGGsRRv5dGKkWrmNwQ==","signatures":[{"sig":"MEUCICuog4/ynAg2+IHGGYYoZf5ZP4+fAOq9m/uDURqxPCfmAiEAt64yTnkO5dxMBagAbzl1JnEEXr/bWbFrblPIqAbXzA8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88200,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghnbJCRA9TVsSAnZWagAASPMP/1a+BHCQZLq3SFq3ZKJL\nUGudwBbPBBHLSLq47yQb4oCHAZBN5F8cfB7IvqRYaFBvEAJ9d6TCqypNxQqA\n0WgIBE5QmPuhjsLKbNhj8x9TxxnIBrlej9YdwV5f6Ru2IBZ7hSL7mFn1jsYR\nXIjHljk/8X2FEyyUk4QTRNlDGOEGrhrwTHlTT8Q8TLXcInkq2Qseeppb18LZ\nQg5Sm9zpF1ZQdGOhl6b1upKc8cekrN9P4jNiagq/n3PF+xdqh6GM8/K9tV2M\nD0NCnokaweHwoPk3D38Vg6XW6EaSnOqNrM9kOnCHizKqQ9rj7CWPDi/lEfJY\nxkXt+GtowHjrWEgUUWvZYryT/JaLlQT+pIGckrFfv5pFKEd7yDgfNbBquHIQ\nsxZI8B+p8YUiKiDG/eh6Bay66gF4AehFj5F3DMVZ6kYAKc88EBDiu4c+O732\n4r234xT/wOXyyTiXLWDD6ZGBhcUN8YWOWn3dnOa035XwgAmpwZoqZbj3h4hF\nzOpWu3jmykcykXIZbcHwk/tuWDsKKPKQCIuM66uxAiOb5yCZLnKFaxs9s5md\n80t0WSarKfRPKZ440mVz/sSjhlPNsxz+1+FVPMeHQXxs6mrL8AY39ejxa3/D\n0HBFAE25ns4BIOwb8Yh3ymsP64WrcwfsvIQdYLJ5j6CVuplDMODqV3zWPMLT\nXGjh\r\n=c5H+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"becff4b60c8d1fb3e3b555ad41c49bf06a7e965b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.29","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.22","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.56_1619424969064_0.07357475628749954","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.57-renovate-non-major-98282c85f86564e328cf5189bd1adabc02267133":{"name":"@balena/jellyfish-test-harness","version":"2.0.57-renovate-non-major-98282c85f86564e328cf5189bd1adabc02267133","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.57-renovate-non-major-98282c85f86564e328cf5189bd1adabc02267133","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"644400d1fcb87d16def6f9e7ae97fab41e72a167","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.57-renovate-non-major-98282c85f86564e328cf5189bd1adabc02267133.tgz","fileCount":24,"integrity":"sha512-Hv2CYHVUJ5WlnUYVelN6e+BrL3Xw4I3Pb/SXwPx+eeZdJJ9J4K51cs8a2+CDCk5sPQoIncSZ/nedpg0z7skDXg==","signatures":[{"sig":"MEUCIDRWNCOozXqjp4DfHCZFw2KVEWkRMefCaYAtQzMWCrYnAiEAiw0Tv1sPgZFSlO4S9Ol6Q39O8TUk+vQggJCre6+Lfzw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghqMnCRA9TVsSAnZWagAAjVcP/3gzfY0Oy3HnHEhZJ412\n37Gaivv9yyq2sr8hTVfyEuaELekBaIBvauSQTw0kxon5IwhWfj6XxmYsfdS1\n2xSeXKAPe2UF1p2jVh6AE7LcgupRI4FiZJ+wEK1waWeX4EqBNhif+jgtuhTy\nRKG5wNzLrt7iLp44gg+EAFOgkfL4K40foWnbXbFHiMWwAbVc5LU0r04faTwA\nVOXq2GjxJOBoAGBMZH2VQ+ODdAQLC0IC4aplbSqYtjVMQJ174VJVr1qlQexd\nrGM9YnKPLeKDgbY8yXUxnWmJ9UNeOQRifk/+PbmfCH1UQLVyBlIGaVyIr+UJ\nwfEwU3tnfyC/vN0fXLFCJHfgb0Rc4wqNztWJerNvRjOz6//a8AXwE2v6V3wd\nV64uDHstXqEDgd90ZN9UHIzydeO43En6Z1RvVT9uA1eUgHCAJ1tnEniTyRNX\n3zz3msStSiYbBrEvHltmLyI2H/JbLIvA/8IpYYAcPuAEKU4VytPkwTnuvdeC\n5ePgSBlimCYPKywS4BeWN0KAA15eUyF+dkR01D/rN8mqc0wfhbTd9kwWhY2g\naHoAFlzen1D7lnnn1Q0QM33LqSGGvV7NHQlHsLl67GQfQrIPA/E2QgD4FrH+\nMTf0QVntHoacXpxm8/HW9YLeMjcPUSKcZbHc6ym5pjHn5vQ8kfHxVfgjECtF\nEQMf\r\n=kyOv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"98282c85f86564e328cf5189bd1adabc02267133","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.30","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.57-renovate-non-major-98282c85f86564e328cf5189bd1adabc02267133_1619436326538_0.3062970548366595","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.57":{"name":"@balena/jellyfish-test-harness","version":"2.0.57","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.57","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"970e517d7d54a1f4b5d8070e895e554dfe2b86ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.57.tgz","fileCount":24,"integrity":"sha512-zKZqkNh0D7JvwyJHZB7qpx/8bC5cHmsKfn9u59LKkEcoa3aQa0PiD4rr51mHyZjTPTKxFyxRtAxo7lelxYa/jQ==","signatures":[{"sig":"MEQCIGqlWinlfRrlzs4Bek3oFDmaq/TLs79nQ2R153FTxR1xAiAdsYPaBFYK4MYBOQjdanR2pk85jtWcsbLbkY3to0uu3A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghqQUCRA9TVsSAnZWagAAo6oQAIqxDj9XX4artz8LiQIh\nP8+X4cKfYgrsIQnmSF3uGMIy1w3LrRQ1DNxzsZCSP6eK0RtYpXVPOpSVEZuc\nyXGz+M5yfV0EQ2ESvFdc5tcQ3LBYUTe/m1/vSJjnAZgBXZjXLvNXBiSw1LIH\nFUSvQL2v+Y7MHtG02Ebx3dELSC6WeCuSitzZJqdRm720Rnr5Ad7hxfVzLITw\n3FB9OIcQXqZa+xwig01MzRAV6AHdPawrTcYGN7WtX7l+QEG78/+8C9eLYot3\nMXxkbnGGmh4eBaL9RfQsiVGvGRX3JNcTkzdhnKhU3onNBEjWkybdSRiS8llH\n2LygmVA5nbIkKlmvG6gie1SDUPrzAVKcDLCsCAEr6gUqFs+bsOeHiFMzmbL3\nNvmcjJsmpDuCrcogrrg38+r7rHXwHpP7vm2FrWlQLrk+3LX2kERForeXVnLG\nDnszmVNdEXnOx2A/rl46V93WYllBth3zxSLTD6/eHug6Rzdixh4RAKRaeQfh\n9K6wyU22qoxlggJvPysKgQAw2MwNpPEfia7DivtfmeudfqPyjxh7L1n3rNBK\nMxASwlacBHeQB5Wdbhsr3DxCHQwf9PrIwNwaXuryS+HLuq7TmeNMd2Pc1hcs\n6BK9nXtjxzgw7Hmr2Yhtl5wqEOcnk3i5j2+WikfuZn2MMIhG61+wWy6uUb5T\nAad1\r\n=Oi/P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f0044ef535a907a9040be56a6a159aab4f93306a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.19","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.30","@balena/jellyfish-environment":"^4.1.6","@balena/jellyfish-plugin-base":"^2.1.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.55"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.57_1619436563910_0.533301975411689","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.58-renovate-non-major-299d95b78a38db254913e506077657791eac5f35":{"name":"@balena/jellyfish-test-harness","version":"2.0.58-renovate-non-major-299d95b78a38db254913e506077657791eac5f35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.58-renovate-non-major-299d95b78a38db254913e506077657791eac5f35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c7806d78c1936eedf6918e9474d917cd07867096","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.58-renovate-non-major-299d95b78a38db254913e506077657791eac5f35.tgz","fileCount":24,"integrity":"sha512-r7e/p8csC4/BUOlImyzIclkmDFasxFQTKUgZ4YuKEiojH+HBmiTgvxDp1GHGXQmPaFUuw8GHMmZn9L3Sa5eZ2w==","signatures":[{"sig":"MEUCIQDyFvmT8Ls7WubGsFISQJyv/Akr3YrHipOgkLJGxXW0dAIgIsou7DbfAJOfSYona/rvOvNIWT2XG6aEkLv6A4gPAew=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghwX4CRA9TVsSAnZWagAAoBoQAI+i7PZEHrcqN/f+fNBu\n2d44BmBf4Jc6QsUnDVVzewFYlBD6SIPE7x3+1lYou0OpkmNRTG8yRnd/E5ke\nLXgmDunX8A4NZtKFmmBi9teIH+ADYfWUsWGd1/rjiuVNNlmk4MLs9zZdTt65\nsgH8TcEJytsP13HWyaLvO5fx30uqcgAqYq+Z3oMsvR4b76GqG2wTeplGsjrc\nRhC2RVvQjilCRdpRipjBtj2ridAplfFLAGxmj6mNcWvpZ6EVJSTsbipOXerX\nwO8t7HJp7eoZvtnMRC8BNuT1AOlwG1McXgL5TVqW25WM5ZCRQuXUoAaxaLb6\neMdcMcc3dtH/zbCUnLLBztBNsFYrgBi4bO2/xOXkNSg3dOtnkWJaKJGYhV+k\njynEYScDw3Siz+/3w08H/q7o0tSlO7K5cBvRiYi0kn5QNWSIT2aEHbzqrB6W\n2xSGCX7NNVPaMDmG5Y0yAKYJSkCVbE7cXRVHdgzFVaSQtcynEeouKlMkp1bm\nWIlwHe4KLG/TL76O+L3GDWJ3Er9NIKhlkDgWG7/OXyg9MW/RivUS9bPUMtVs\nO2loHDFyP4bzN+8mmI+YlAnmuK6Olwq2JYEqY09l8RHidQASdE7VGEG10S9b\nawbXplkANp82Gt9cd7CA/Mqt+dtdSB+VVDA7ne+kTQ+vaT5oYNQYY6FIuEfd\nlXnA\r\n=+9nU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"299d95b78a38db254913e506077657791eac5f35","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.20","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.32","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.56"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.58-renovate-non-major-299d95b78a38db254913e506077657791eac5f35_1619461623539_0.2648945080815319","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.58-renovate-non-major-31fec8f75cc5333c159cec52fe5bbe6c71f8a027":{"name":"@balena/jellyfish-test-harness","version":"2.0.58-renovate-non-major-31fec8f75cc5333c159cec52fe5bbe6c71f8a027","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.58-renovate-non-major-31fec8f75cc5333c159cec52fe5bbe6c71f8a027","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"82e7bf0b8dd23497f78e751634612a12179c408f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.58-renovate-non-major-31fec8f75cc5333c159cec52fe5bbe6c71f8a027.tgz","fileCount":24,"integrity":"sha512-4hvDz+MOuu5OS1Ra7k+mqZjSQt6tloRPA2p7DbtMG4ldnnFs3GvvkKMJ/2JPl2PDqtSiAKCX4yh150B0+AwAVQ==","signatures":[{"sig":"MEQCID14/ZmWZV0Zys1fMHR6TsB3unN8TMni1Gh6K/DC9nb2AiBHqE6kiFonXbsfINWAnFyhrLDF0qFsfv6SzJqwyEfgcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghwdaCRA9TVsSAnZWagAAesMP/0CK4EXXvyBSovzJqdBN\nHige9L5G7YAWnXkT0fX+3BtyJmSepB4F382GmJbg3sSY1DzPdODU1AUEFF2n\nOA6JCub/06FcShAmEMan/wl+GYom8WVvtrgWxucex6pHuUifb2WZMS3LZeOJ\n8hlVEwehb1t2NOukPRPmlsTlVdaf9KYF7cKWV1G4QoxaDBh7uSjYGCO5kqvF\nFERsG6cGWX8jDL2CF3h6nthHJWzOW1ldNPjaS31hRgR0VoH15giRerl7avXS\niEMjvJF0c8dxw4iDHI5VNedGQwyXDSv0g7hefbuyfhCwVW4/4ln7N6eNJ/7W\nb31dmKZ+bYN5bF2JghmHmViUkSrCNMnfRF4np4U3LPkn7hQaW5qJmyj8QOAr\ngKeY2W/puULoOJ9xHqb8Y9x+yR3qNamR877Esk44cmp9TjAF00lDL3Q/xcuN\nhFq0zVMcbZXvLgcFiwCJ8rsaO+GCHq5QDfulx5v8Vy4aqwNO/MVHlQGxTIQa\nXB6uTcG3qqb5dCLwYFmSVj+ZxldTUS7uRbGFxk0znzJrlwCwTzf7E7ntMuBU\n/wR66elfJrxU08DsTPV/G2DRNYVQBM8aVVHkrLqGTuEy5t06FeJSM1kVC0WD\nhGkNFHFqHXqJFb3/j9IwS9Nc8SuwZlkJbuM8DRsEFS0zKqbfndv1G14Ke+rE\n9K0t\r\n=orqr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"31fec8f75cc5333c159cec52fe5bbe6c71f8a027","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.20","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.32","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.24"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.57"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.58-renovate-non-major-31fec8f75cc5333c159cec52fe5bbe6c71f8a027_1619461977864_0.2676843775981257","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.58":{"name":"@balena/jellyfish-test-harness","version":"2.0.58","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.58","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14d7f98d6a79020c0a21655bcaefeb9e83d5dfb2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.58.tgz","fileCount":24,"integrity":"sha512-oh3b+IvC84F032vviLRiuhfCXGCGPHp5KDEkS1xM89/pMnsBTE6DtoG8Gji2ntCm2FUav9yvGGi/IvABAhd7ZQ==","signatures":[{"sig":"MEUCIQCgOmKVJ/FqvgmdzKIMUtnaXsitmZhP9zVnlLm21L/pxgIgWcBfIy1/YhBqVSFWfzK6kOdqIKTIAN2I079loR14h4Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghwgoCRA9TVsSAnZWagAAMYUP/02k5T5Iz4WFOuHSjAf9\neBPZs8VsHWtqBktbEqd8rWeG3Qn9OF22JR8HAuR2Lsp8YZNAFmYhKmDCIVMB\ngUNhRl6uD7rLJOQX3tAsOtVurlsRxfUb/Hxm/gYIsofoRKCy2Y18IGkU1KET\n379fWcKPWFtIvnXRpev4FzHnYZxC+9vSeCZcUW8XA1G2SgW6iQPrOT6ozj6F\npIbXZPTSgRrQECap14xQ4GDkslYkpiqCTEE1rcw0qDT3z7QuWjHs8y6Tlpw6\nARckAjwlU54PPkls0ojG+TZzS/Bc2Q/gq7Mr8JlLqmj3YSFbJKofyKTuPABB\n5Ma4rqMgHXcvlNJepprAuxZ9k6XZ4jUxtiyHIvcRalRsuXkopkpoWSrvIgU4\nGvfbhmxo9PII8vvbpKyW2gJGffrrJ9mHCaSPfLK7T1TKIczdrQ0CWzwDkrHl\nmDOTA0PReyg8UXC3p9Lpmm73X4bjpUsg1MDqGzPxmiJf6tlocyBosmQuXPc3\ntdxtdMY40vrkUK4LYt+GbIWMoE1xMxcHOkdj3TWtdk0eqsfITnuIKPoZ4xul\nAK/Z1KXOakJ3Mokcodi4AB5PzDUEqRMEHWirCIq6aDS+MbYPT4YRGLEoA8OP\nf5rWSM/CaJ/98S9lLESIOseuWT0vcjJGC9pylxV7CzR03hbMlXdgsiBFfsTv\nadxl\r\n=NvgF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"196c1ef43193b0973a579bbd4d67a41aaa65a9b6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.20","@balena/jellyfish-sync":"^6.0.63","@balena/jellyfish-queue":"^1.0.17","@balena/jellyfish-worker":"^4.1.32","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.24"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.41","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.57"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.58_1619462183625_0.057516864903858655","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.59-renovate-non-major-ad59efd47607ff5e79ddbd32a23df3667b43b579":{"name":"@balena/jellyfish-test-harness","version":"2.0.59-renovate-non-major-ad59efd47607ff5e79ddbd32a23df3667b43b579","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.59-renovate-non-major-ad59efd47607ff5e79ddbd32a23df3667b43b579","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db62e51de7a2942024f434f7c7f304d5c5555b6e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.59-renovate-non-major-ad59efd47607ff5e79ddbd32a23df3667b43b579.tgz","fileCount":24,"integrity":"sha512-XdHOXSYWJ9ncM87yzCNmTc7KDVWz6fWHVhWe5bJzsY8q8/5q9tlk7CtRxvpNSWVSFbdmjVClSoRryc1u0Zx4aw==","signatures":[{"sig":"MEYCIQCHLW5GlAKTTRkeQ2qVk2lCsiEOHE5ps03QZpaoSkEGrwIhAP+UWXYtR2BLmEoaag2LJu8kftmm8LumAExojv+UXExe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghyFgCRA9TVsSAnZWagAAJ68P/2hNMHySoauXhI/BFhSM\nBpszQ2jbqOeciLPU9BmyH7zNEC0Pg4J4X/hmREpbk5zbH8Yn/RCfqp4/tx7Y\natCGBwMp0ctSe0d+uOYHoMQkwWEvxBOYrP5FBuGLA9IFQkpXWOTt0AD/uNq1\nO/uOq/NM8Q89n9ly4m3wOEXukxYSJJCVt2jdfnnm7QSKIX7UEjJT1C4mZBIl\n5OpqE/M6jentGUDRKxkWBzFKr7LHAD9H4dJK6rT9DxWOhsHIn/Hsxi1zCfEN\nNl0zdyQoFH3AIuqFesi1K9czUgb5ZznZ8hsq2Zxp4uTH0ZYxaF87d6DFIFeJ\nWrt+FtoBcWAQ4TsU5sQ4EPLrwj3IIKrx2nZVWI/DNReUlTjKOwfVInxjpmnf\nnZJ/akJ/lRyY3TdSD3iMrfgu2E5FIxH9vdGJ4BH4VdivACn/VD73op7uPYMP\n3O6C0Xcew2a/qZAb6GsvvrEMpc/+eSv5R+OQZuWiEPVQ0vWTYDkaA3p8UjDI\ny3pFN2NxTZ/ygqj45tqxdxQTR+ummw2W4Zy4ImDEKqXQZ3Z36B8rwdBUNg9+\nu6mEph7jktN5S3/2uy+ylBsBfPoeyPZFX8tFUEUdyhlY3SkdZZnzPzBzcWqu\nPYosGIr5GJoX8htjP3vvkz8TdjYaICtGOjpJZ06GjWNRn7zvd3/LeMxWZNkk\nhS+L\r\n=UDok\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ad59efd47607ff5e79ddbd32a23df3667b43b579","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.21","@balena/jellyfish-sync":"^6.0.64","@balena/jellyfish-queue":"^1.0.18","@balena/jellyfish-worker":"^4.1.33","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.25"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.58"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.59-renovate-non-major-ad59efd47607ff5e79ddbd32a23df3667b43b579_1619468639989_0.9135449785664687","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.59-renovate-non-major-0ef1a52cc698590b05c84cedb7252083a7dd8e41":{"name":"@balena/jellyfish-test-harness","version":"2.0.59-renovate-non-major-0ef1a52cc698590b05c84cedb7252083a7dd8e41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.59-renovate-non-major-0ef1a52cc698590b05c84cedb7252083a7dd8e41","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f86eab2512531da8e44c9c3d150dd078820fb9b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.59-renovate-non-major-0ef1a52cc698590b05c84cedb7252083a7dd8e41.tgz","fileCount":24,"integrity":"sha512-njH8kQqARnML1MGsuQdFFQ8Wp03KynatPJf/87jHi57RLQO6d5xreQUeXdvPdG7nsDnkQDpOYP5Jf+ILzGVc2g==","signatures":[{"sig":"MEUCIEjdlMaS5PCnz8bVbpuOiDLAJBNJDBrllAXLOxRYu2bIAiEAu/O+BvS4bYtogQ2Jo10ik6xvmzdBg/hM0LkNZ+UZSiM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghz69CRA9TVsSAnZWagAAW4oQAJjoh367S6UQ1nS85W5r\n0dNOMHYF6Z1TnfW9Nawf0FqxQi5Vj0EMQBKnwheV8BooTUyxD0fTS4rBDVPQ\n+AemEJluYiKyJwa4+9/AIeC99crqLFgonwIGN1EGO1zoloaf53luzGY/K+sZ\niX3nGMPVKpIavFXy6nleqv7Ai7HpW0P8vJB8EOcbB1YkxamfYO0ACBEGO/xk\neB3ZRjaZbqzaP7uatrSSf12rBHnZnWgbXliVXfTXuuQeBJHnCM5+qevShHR4\ngjPxVisiIPrHco8LjfOqkrODn+x2TPAJO22J5S7nDxNkkaamTb97pCBMR4xV\nsSY5IqZ8mQICwxMKN9BwBsboLLh+2rQlnQLPUv98FyelY7r0+hfZESmfq6pJ\ngC/GCHqKZBT9bQP4xH/u4GJsifN6FctLBAKtP6X7ChUTexmBpgJ23xAs9yyA\nfiQZfc9W2UvvYi/nGZtph5JZnV8p62RCBgMeG9GPOPrHsn2sbt6oz3VfSmSt\nCJTV8RvsZVAuORhZdUSCMK6lRIE2OWLEkUXpM3NCEHD0TZm7GDQb9iwQoB4t\nTZLvWBmMuQKqIrRablQcZys8F+FIXveaTWbJkt+o3cg4J32EFSbfoOHgijDp\ng1+Q75P4KmhegNNw3wIJboUGEYSVrD0utEnqn4cuxZWWZf0YhUP2OCL5D5xB\nfL5o\r\n=vBzo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0ef1a52cc698590b05c84cedb7252083a7dd8e41","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.21","@balena/jellyfish-sync":"^6.0.65","@balena/jellyfish-queue":"^1.0.18","@balena/jellyfish-worker":"^4.1.33","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.26"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.58"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.59-renovate-non-major-0ef1a52cc698590b05c84cedb7252083a7dd8e41_1619476156607_0.4892754338970766","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.59":{"name":"@balena/jellyfish-test-harness","version":"2.0.59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d773a7aa4458e44502b866874b2d566a68d59b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.59.tgz","fileCount":24,"integrity":"sha512-tleGJS0202mwsRqdGDJIyMMWmyAHow/VRRgzuJSaHkrP3yfufktGuWLCJikRIPM3Fhi1yDys3zfXPVfW2JeL/w==","signatures":[{"sig":"MEUCIQDzvfmYN5sDvl0RCZYN+K4cMfexdZG+u7SKPuNpDFhbyAIgYQUUSJK86wq4w2Z1hsJbNZxDNEXS2Knx+xC/Kpc0ke8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh1h6CRA9TVsSAnZWagAA0a4P/24Zf1rY/Tf9sStfZ6Nk\nT+pMp6ucBWNhh91I1BocbHAas/DwsIR1ZQgSMNcBJFQ42w9pJK8ez/3nk7HJ\nOJjhs/Y0vn4MbQ+C6DVHb2sDRko4eR/kFlg8XQIqKOVJ5zdqlH+8RVfho7mW\nxQsksJ/lapXuwrdO7Mil6Xf7P68rreAf6oA2VepDr/OVpFcVkXQDMfPZiCVN\nJ+D/VAQcUP1f5ZQssk4zbdDIGHHmEmbg71wDjwoHFZEJL6ytz5CfivIf/nwM\nMMnmLijdItYM4RPgLnEyxFxstHKAIZjGIax95NYhyokxK1aEmzP0r4528muF\nhh1Ma4p78/DJ4tz8hojJvA5TnkDultOCy2iENvujEEZXpyMG1y4hd+bLLJVa\nDE2XMqtUuojuz7fqucPOdhjp28hMWpZTPG804JGddXx65QzW5qHHbF+5DNSK\ntJDBKvMalruKkvViwtOcpH2lzAUgJAgHCj2lfmdSX70fewVJrnzqeuRWXy/J\n1IN+rEl9Delb7Ogou5cqx9VbYj43f2EaCk30z1FRPwvykSYHtEw4pFVGBycQ\nWVLmvwBePjOTSVjwSxnlN/zzh1iE5A6oyRvqFzcanY72eSTWlGPNjt0ECJhV\ntOqVqQ1eQOdQLyNuhVtM9XH2Ke/VdU6ugHemsNozWnMc84t052L5AiDiKbGa\nd7wA\r\n=yUsa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ce340e2ca12504405bfde17f32a0c8fc513b326e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.21","@balena/jellyfish-sync":"^6.0.65","@balena/jellyfish-queue":"^1.0.18","@balena/jellyfish-worker":"^4.1.33","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.26"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.58"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.59_1619482746327_0.41256103259665067","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.60-renovate-non-major-7e7f39e6ede074932ac7007b4facc81f4a0a9a92":{"name":"@balena/jellyfish-test-harness","version":"2.0.60-renovate-non-major-7e7f39e6ede074932ac7007b4facc81f4a0a9a92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.60-renovate-non-major-7e7f39e6ede074932ac7007b4facc81f4a0a9a92","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"277b60b0175b222f32e42b60edccbf77474fd8ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.60-renovate-non-major-7e7f39e6ede074932ac7007b4facc81f4a0a9a92.tgz","fileCount":24,"integrity":"sha512-F59UYGIhh+gINDPzMGw4eIFJMgEl8kT/usf2oXMPdAUpKSQmMMFtzsMHxRAgDFhA7ca/0NSpW0uefytpr5ttnw==","signatures":[{"sig":"MEUCIQDSTKVQESNdfCx9x8iDGgv57vpljeYwcA6E68p8x6TEawIgFcHai+zRnFdC9LSdOvAooPsG7O2hSw8rF0ex7p0qe+o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88536,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh2y3CRA9TVsSAnZWagAA0xkP/33wHNy5odwrbl8Fxufm\n6ELkmZk4q7quyf3SddtnqRrk6YWOEIyU8eZapVmCsNsKy1QX13onB8yD8OrE\n14r3uvL/fC2vORm7wuz5eWOwGnbffOjekQzdmqZ+OoNaqcFYlspRqIrGVwTD\n1almi+3ydyKDJ+I6t2QYlho+qkR6l7r513p1sELKvpOxJq8aoMDOjdnJPe2/\n8i1ZyldKEcrFvuIHyyrpTw3HT/gSn7WyqYzciz7YOxP01Ei8/kbHY6hvx/U5\nImOhKSxZcSsb4Q6ippjpX8JJ3uXNZH86eVVgxKUtt+G5LsS7OIAT3EA+VY58\nnG5uKsCrbdt0iULvveLmK8L2sQ5B9/gD/p8t1Fb46jyOhfaycz7zSUD1Wwq7\ngumGAiTSgcX7wOMoyHY3YsTBsptA0bgmz6d9z9TDKicqZ6lDGTlTQfjpss7Z\ni86LAnl1GM8DLeFoZZlemBppBgCpeTdWfCtrQwRQEUmgHhbG/r+NjyrIPR4i\nGwACO6umNEqixnv/GelyqBaFL5hKuB67oGXnMccb+FyPP2ctxMh1X+gM1VxU\np2qTrOHaVGzE7mUMnerYh+9ch0XMMDJOJE8oXzSBS034YOsFrK4rQ+8Lb/xL\naj0VzWyEmJ06Eb8l98hYSU7Otr339NsOMA+GpUtyf9BVVK3Ns/xQn0nQusr5\n2Nv1\r\n=caVT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7e7f39e6ede074932ac7007b4facc81f4a0a9a92","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.22","@balena/jellyfish-sync":"^6.0.66","@balena/jellyfish-queue":"^1.0.18","@balena/jellyfish-worker":"^4.1.34","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.26"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.58"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.60-renovate-non-major-7e7f39e6ede074932ac7007b4facc81f4a0a9a92_1619487926889_0.03028955280909429","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.60":{"name":"@balena/jellyfish-test-harness","version":"2.0.60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1d7560a7c1f80f0c993c79af64065cb0ac40915","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.60.tgz","fileCount":24,"integrity":"sha512-pyc2vXqhES5wyYYsXklCXjI89vMrLq6xRAjhcF0CgUvZnTBEhsGdKGJiCa7W50w6j8HbdgWXu9/UQywiVVwM7A==","signatures":[{"sig":"MEQCIAOaEGf/T2PlkNHkSj5Rn0+dJnM+jxjyU3tc2kFkCqV7AiAcQtyOChjvTFd77VvSzPyKGfb85ipeIAbFvjxl+wuh+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88476,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh229CRA9TVsSAnZWagAA214P/A8bCCvs3KJxlBQPm5Iy\ni8NX8JXc4yFrSL7CFxS5ySW4vH94jYJGj/J8aGfsdiK/Jx6IN7hwaf1xotWh\nNV7mX4MazRZ/+sAGGeuweTx8EQNqFieM77GsGJrRyS7J1beEN4XXf5eFoIzL\neOPpEZRNFz7xit54IICw/GNB9nxdG/IbuUeD1yPfO1GpwMwkrL03oAcVtvx1\nZRdiwoxUOItn6pxzSvFoKYz8agWZ5QDnf4+DKSS+8L07R1LqJZ6LIsqt4hIc\naRAPKqRNlOvP38kS5+/djOQoKeqMMfo5n8KJy8yF6/3CH8T9w4H19SznP2Xc\nhmcQTkNX8uU0gLPWpsGuXRdC3x9zmeUPjuM5290LtSjQQWitabgSf14Ylbih\n+Zam3tjW7qAkMZdotGT/BgZOhXYa1huSajI3XnMvVPzdOITd8/1QdDC/d+16\nOS+eYVdSDfEHq6KgVWDTRjjDZtuuJfZtkpZUVh9oUnU1halzuPoN0A2WTIIO\nATxZtrxIDj0NbPoMRyWg0D7vJgQCRWMxe7pj6Zi5CkGIkt4sqATkQxTMLUX9\n4+twfwtYgs88psAQB4JnaSHKevkpRnPSvxDw7H+VOn7qxLvp/4Z4lZAUoGvk\nqKQvnRc4gEfaSE2jwoih2XTKcvqrvu6YLPJQhn5p0lGacU94gQCnV45SpZwV\nwVuU\r\n=w/R8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c011d34f042825e3a83262a71bd53a97f336c96f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.22","@balena/jellyfish-sync":"^6.0.66","@balena/jellyfish-queue":"^1.0.18","@balena/jellyfish-worker":"^4.1.34","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.26"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.58"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.60_1619488189005_0.18470070075460598","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.61-renovate-non-major-32552ab87ea360993bf44981aefb2eb93bc31e64":{"name":"@balena/jellyfish-test-harness","version":"2.0.61-renovate-non-major-32552ab87ea360993bf44981aefb2eb93bc31e64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.61-renovate-non-major-32552ab87ea360993bf44981aefb2eb93bc31e64","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de19c1aec0f83da605b756dbf84becf40c97cd03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.61-renovate-non-major-32552ab87ea360993bf44981aefb2eb93bc31e64.tgz","fileCount":24,"integrity":"sha512-doAFeNplvjA9XKgyby8N4RJFBu8b2AV2YoyPeQfIpTE+KdCCoDNKvUPUWOFg1Z+yN3NBt2JyraFQKl1210p2Zg==","signatures":[{"sig":"MEYCIQDTYvmXkomkSbeW7jQndgakRlIvS0QBtTWgjKc+ufYA7wIhAI9SDd6NpagNoyX+UWq0fGfUxomuVAx3nh1y1c3ruxCH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh30MCRA9TVsSAnZWagAAVzYP/ilMEO0xKSvGr20sYov+\n0nzLppyTNJFiy+RnNAcyIwy6DzAzHZA3NOTpqCRGrnNUiKEfpGAcP2dFtACr\nVHJ2yXYIZ6WiTzVmPag/st2PaM6su+wMuhpSgip+pFaNTo6MN2bmcEYDRGHX\nIyt5sRBE28KVQMZqSj/i2fQiysRwT4AEu6T2lcov1Ook/VucoPcD0WaO8AYH\n+fl+4duWprMAZRDxXz0UEt8XFqaq0vldhIk6soPMysSqsfLY0BTgRMsF2hJH\nZUSVR0J9Xf8VpWWpFJWnN0O6DZmaA6VYWNv/Gna8OPylJjJG1rxc4Wwh3J84\nveLDpkN1YW7Ce5i4MBP0/tCJhG8z7uOeloHOdjHNWtkH9HM8WLy9LUSBzXpX\nSfDEbzAREb7bPH0lAqSGLZokQHH/qeCWViRkT7HjOqS7N+SO3JYatm0B8d2y\ndzRh5lBAxYntlCmLQNl99LOyqCIAewUGFd7R7dCKNodCYKnAM5VPrJ5Qd0pg\nnY77rHmnupYIs/IzpjWMYcy9kv0A7kIE/F3k3WevQGXRVFCYUbs3f3BSbfQ5\nk8TE5ABzaWeS/WEdv8nuXkGcOOKjFhiejvCmQKTf3dk9a2CIxWGQ1P87zMEh\n5jyIVY3qicC+U9H0RFisZj7+2rup1abOt8qNBtP2/c0sohZxKn49/cpGqobx\nL4nK\r\n=6S+b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"32552ab87ea360993bf44981aefb2eb93bc31e64","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.24","@balena/jellyfish-sync":"^6.0.66","@balena/jellyfish-queue":"^1.0.19","@balena/jellyfish-worker":"^4.1.35","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.61-renovate-non-major-32552ab87ea360993bf44981aefb2eb93bc31e64_1619492107952_0.8077369071364948","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.61-renovate-non-major-5501a24806f437db50d6af951db92e6969504d41":{"name":"@balena/jellyfish-test-harness","version":"2.0.61-renovate-non-major-5501a24806f437db50d6af951db92e6969504d41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.61-renovate-non-major-5501a24806f437db50d6af951db92e6969504d41","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"471b0f07c6cf5afa94106d23051f2ebd50bbca77","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.61-renovate-non-major-5501a24806f437db50d6af951db92e6969504d41.tgz","fileCount":24,"integrity":"sha512-a2iKr2178qp1Mg02lnJeghM44q6xRVp8xYOzsWfHpOEz9krRPqqwDm4V3wDZ391Q6+3hRDjew5Nhke6sZrXKwA==","signatures":[{"sig":"MEYCIQCprapQ2GaPkcluI8athU8y8dSy2w4VNUHcF38U+eM7VQIhAJ+r4EsGpYGKm91AxYjbbHaqee0XY2myixqM0JeoBU6b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh358CRA9TVsSAnZWagAAI4oP/22lBPP1ZOBgdgBUP77g\nkJ5a9kfjrxbWH3737aOh1p/ilYLxqwhRJeqlHmqAxmFC4xd9hPHnqS5SOVKK\nCltunTcczCcH10UEv7Itkkq7xZmVbXiD4HYde2Mr91owdn9gWHkBJjXG0x4K\nt2iAGG+ai2TUeoBjHT0QMbWHAudg1N57DHilDU4EwcYtkrXidFG9uKDphZ0f\nhCLo16euj27zSWtNgP3LWKITsI7St/ekO4rg/iVws7Dgz/OmVK5/h3cOZIjk\nyavHy9xhSZFAO43YHgG+BgCLxLWUAI1e7+AOBFkdXQcv0ACaWcx0gFU4Phi9\n87Bq/Pyw2d/zCrWxErXpHFiwvKMQmw7SqwjmEH1P04AZAKHH+/uubHkpTu1F\nL6S1q9C6/FViZfK/ZuRi42TASrsc7YEJZlon5rpLNIraZDcbBP2GHdNQnLq4\nJapwPaYqarOVEdf9x9jr2r/7R5CaXqfhT7QJa6dKHLY5kPzkyTG0v4jlwJfP\nX2jmWjVFF4UpE9wAhWdRe32c9CO4Z07Oy71Eq6SEx8dBMegdtv6znfNHtPRD\nwIePHErd05tBtOZY/cNrH9yu8BqJGscmzYc692pG0ijucNPTRiADm5ikPNXv\nBm6/mUZx9Zyqmw7KIgsPoodKZltotxt3cwDjQklGd/rgsjFZlbxd8T0XxyWJ\nliMt\r\n=Q1eA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5501a24806f437db50d6af951db92e6969504d41","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.24","@balena/jellyfish-sync":"^6.0.66","@balena/jellyfish-queue":"^1.0.19","@balena/jellyfish-worker":"^4.1.36","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.61-renovate-non-major-5501a24806f437db50d6af951db92e6969504d41_1619492475752_0.9315335582081146","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.61":{"name":"@balena/jellyfish-test-harness","version":"2.0.61","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.61","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac2123f721d8098fa61e60ca512bc65b350076b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.61.tgz","fileCount":24,"integrity":"sha512-jgrW91M2WcAbvjR004S6N2CsqPEk/gub/uwUP6pqeT7i1l6/PM+S6ud7Ioyd0eAefa7ZVnp6BajYkbmkKk7xAA==","signatures":[{"sig":"MEUCIQCvZpdpzIztyn0c+rOTsMiyZh3050uofqEjxpI9vTygigIgZ2wVLknY1VGzhHyTxRxv8/xLYEYzmR80P8LteinI7V4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh39hCRA9TVsSAnZWagAAq5UP/0fLTRHv25WeMYVu9N/b\n2XMJKbAVNUlyP71TYxTz6mKOEPP6VH2qtfjCb/RQQ3K+xUQkx2bb0wZYKYPp\nP/psi/fKe5QHv0ymk0ZqlRHNOww+IrLIVoE49iFZs/3wd3Kn1DPbww1aak51\nwt+T/IOIw/jtaApzDs2Q5aTJihQ1HXckAsQ6u7TEjcbl7AJ2iC5VWODp7NAo\npjDk9ir9QEnBnahKlsL08mQR4P9N1TpnVDva4+YOmoRMBMp0mgA1L0ROrOVX\n7bbXzC4wmxfofYhU0ZgSeBOvBYcUQAtmvvxxIzjh3vAVoUviYovs7ynmVRiD\nZs/mgHn6cgpkSGPqXxeglDy0QjncFURX6ZPCmjqkRMGGyQpr/tnuu2AflG5C\n/XnHUW44e3NXSaLrqur+9hZwSrNPZH7QNsKA1Pqn3tWPjsOjL+7QkcMUsFIR\nhuqgke7A3UzY3dIJiNbkpOzGwWOvs4T5XKoYnwiKPj7vXGRsyUh4QT56lFg9\nzo0Bo0E7+KRMGSqTbAiKiNaTVGUxRYOUo8i/AZeSs2ZWyBXsXxHSuvuHZ5P9\nVhmjFM9FSXhzwykHL29QZSorV2w7Aijc2hGYmHBlo68Fbt03Rt7/Yg7RMB67\nXBo71nWoLS6Op0eaROv5U1mIw4WsVAPVFcMEgg7geJUOBfbtQKtaGI5496ax\n006I\r\n=PBXy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6c60b179e482c6419ce5b0920a1da19fd79c2a07","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.24","@balena/jellyfish-sync":"^6.0.66","@balena/jellyfish-queue":"^1.0.19","@balena/jellyfish-worker":"^4.1.36","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.61_1619492704735_0.44436805880052876","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.62-renovate-non-major-7ef11ac619c91457d7f353450826750951d3d165":{"name":"@balena/jellyfish-test-harness","version":"2.0.62-renovate-non-major-7ef11ac619c91457d7f353450826750951d3d165","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.62-renovate-non-major-7ef11ac619c91457d7f353450826750951d3d165","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c25709a091bf4daffdb4af9fe2100cc89db5a1de","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.62-renovate-non-major-7ef11ac619c91457d7f353450826750951d3d165.tgz","fileCount":24,"integrity":"sha512-kBds37QHX7g7y4Vi5GfKUbqPNASjChngZtQzZrIQa+sifQU7bw/pzzJJOvArMv6N3q0wJhqehoHeSjBrJkxqmg==","signatures":[{"sig":"MEQCIFyp9wEIvITCsAaJc8Y+mEDq+nD5fxike4JRa7q7Sj6tAiBLweJdFX/3OLFiI64E0QzNOqe23lWmOUNWBTISQgQPLw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88674,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh4xYCRA9TVsSAnZWagAACOsP/1PyAi2ZBSI1XxpmdTPV\ncsZ+7b6fiKHcdb2Ai1TeVxtukj3Cths9C3Aeg78Us4dniljUzt1GGxpbqOcI\n9ei4vGHQB4ISY7b4+609MjKX1HdrkF9dtwMmmHRob3AdeEIKwfgJcLSUTOxR\nlPZ9uVdQxcEH9PrKCXJZunT4q1pve33C5vV/9VKmfOgMeWqACClwLteJ2bQI\nRgQg3ADHDKV57bMeExnjq+I8e0Pmq4CjKVPFOrVgweLruPGJq1Cij4/LhQ3A\nM+eNZITu2ljTVQavg9VKJ+RRc+lNgkXs2Tmh7dglphGHNzOf9kbQJNfwbaVw\nboQvtndF2XXIBE3dZ57ipnXrzSesEH9rYunPuJah48b6/76gA1rWhPceC6OT\nsihgOcYiO0tZBuVC4Ld+Z1B1MtCqbPAEWyJ/qZGTm321x8uehG+91jWM2U6M\nwci3LGc9ZzNtD4pwthIUfZcGKdTsx8zwV02AVWbvmMbS9peK6TF5SBJfpann\ny2XdZfm4PeoCom7JaEVB9Bt+IlShzkIrRDvVFaZKxbPxQ8hmGUp40Qv9iEWC\nnpGxgZ0GoiVxeewBg6mnGkGn4reoLeGg+PYr2evYctYoppi+JwAgE5rHtYaj\nmCYD/xdNS47EQVf+YEKCMj+2CoMkEnWPLjJbMmahCCPsFlX1X/wbt8snTDvB\n7NxW\r\n=kX17\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7ef11ac619c91457d7f353450826750951d3d165","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.25","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.19","@balena/jellyfish-worker":"^4.1.36","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.62-renovate-non-major-7ef11ac619c91457d7f353450826750951d3d165_1619496024438_0.750016935019826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.62-renovate-non-major-1558427a8faea8fafde950d5b695149eb332ebd7":{"name":"@balena/jellyfish-test-harness","version":"2.0.62-renovate-non-major-1558427a8faea8fafde950d5b695149eb332ebd7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.62-renovate-non-major-1558427a8faea8fafde950d5b695149eb332ebd7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eedbb526505a205af11d110749c2f1d4a81b48ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.62-renovate-non-major-1558427a8faea8fafde950d5b695149eb332ebd7.tgz","fileCount":24,"integrity":"sha512-5Z5QMBCsd8XkeEFY3Pwoq/XTPSTAc8himwqywluOS4WMU0SIK4pTT5hYEYrtXXW0VGkPfMwDoRuTyIb+RUbprg==","signatures":[{"sig":"MEYCIQDW8h/AGT2r/cAVI0+pXOYoSrqpMWEuTg0SLvdrWblHJgIhAL5s2f4sAxaFmXemLMMhUvElrGVKaXRFpVbWTpXBPslD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88674,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh41lCRA9TVsSAnZWagAArDIQAJSzaORJO7YHH+NgToIU\nLPLNCBQKIgwFII/6zw71FW4dpM15t4njrsTAFWM3VgxTv1BSocSZMPYHwsPm\nw+Saw5/PQrqB3rbF1Le90cvJ3VKNC7XCDIiEzrMLPwNZ2fGR69B+Frct9iAy\nk1KJZUxhVolV3DiSHFVBnYpjVDmT+DqjSWgYXaWMeitgmk8CGeR+71HPT9/b\nRjnsGxFa4zmGddd677Bqs/1ssvyHKvifHpZN+lXL+twfXd0Zqe/5twOotlOe\ncMfgo1p0rNHTBiJ4nBsUCicmJf8/ttGHvdvmeavyJpGSAeHLkm80BfWbbpGK\nOyCqq5QqcWa2O/GPkQmllDxeB8E0+XWpEm0wAWfHLym+hh3ufkKeMPxvf8Y6\nN1lRWDt5AXSe3Bk2B6Rrs7MxS6BX5SIu27u//YsLj3fQJdNDS6SZndInHp+R\nP9/WAoYdigJFXK5JQwtKfcFb9KsGmas5f5ZIhNRYp+IzLFvrOomzIx7TUha8\n6OESouRgr9yLdfIIdc5ecRkCpMusnqQkTy9BfhKQkYLMQJAlld21a34HJ/z7\nwcS/tBaiGuj8KVjSg4p7M+UwBP7e5oCjvU585IMAcpm6oA2YZHpfY2ZBm6EH\nvE931i7LFziSCYAdbzI48TEdp5gxzj7dLKQI1Mw2nP6wWEXpzuvPX3YkquKq\nRFWh\r\n=ebeT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1558427a8faea8fafde950d5b695149eb332ebd7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.25","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.36","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.62-renovate-non-major-1558427a8faea8fafde950d5b695149eb332ebd7_1619496292953_0.6600828617447143","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.62":{"name":"@balena/jellyfish-test-harness","version":"2.0.62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.62","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c34e6b72a5d55f0e73d0cb3390e27d49e01c38a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.62.tgz","fileCount":24,"integrity":"sha512-xUceuV8WGebqY0bUVtXeqTLhXlNqz1bYHiAme9Q9AhrRPMZL/HTxMuxYGuFZi/f5SdaXfGtgbbMvGcV2peBixg==","signatures":[{"sig":"MEUCIQDa25jI/i2qnf3kiOla7QGJ1wuwp/kvVBr3ksCfHfQ68wIgOuJLAtzghI44iB5cwcj78C1jU7ucJFvcf4yFN6ilX6M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh44nCRA9TVsSAnZWagAAsZEP/RRCW3pAKBpxgBT2oXGU\nzDaiFmH9DZZTouMouFZXz3zz2Iu8kTp9qY9rKjzANQEmT4km2ZeKZaCwjY05\nGzS0jj+fTCj1HmZeWGP9CipuLBPJIVo71sNS2/HALRj+xcBtHlY6LUhQpknk\n43/oO9dqsfZ+iSAWqdpGcoywz4VkxZjf3LVnBZQLeRxDkFIXbrtu3CMhYCj4\ngw+TZB/IrIrSRWFKsHrkNYg9+PB09wddRL2/QgwFPhMpNGn2vGtWUdUctWld\nWnb/2fWCrxIOuOnK4PLE8U+yGSlbHlw1Lq5u1U7xT/hnuRoHH/b93MlrKRCK\nJcdTwYHitVaQEMj8thj4s09U/lazz6iz3S86fxAvsockweMsHF0nHA0V5AJn\n+grnAiLSTuzIN2kK7V+3JeVgktvxwo8PpS/3/ieVAlQL+ORCR+ILsxEDhDG2\n8rARj7w/BraXX2RUVRwuPaHw5Kl1Kjo71JXhyTaeved5xHv5Y3yXVfmCVMRx\nnPmpV0JDw+4F3wYz5tJDYIFK2suBoYMoQ0Tk93NRPKd7hsC8Cb1LxOK/TBY6\nKbcafvJ0gSvD3GEQaaE93U50UMVK7WERTuk2K4ogxdjCl2W9INq4PXzMQv6R\nLkLbHMEP0uydfW7epezy2q4c/n5U4jnE1H+FuYb1FS+JUXuSJp/J5VWCeMUs\n9gCR\r\n=BnFf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7c9f6ebdfb9547e1e79ced190389f7c0df4ace01","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.25","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.36","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.62_1619496487342_0.6435293298368205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.63-renovate-non-major-36e3efca09f07989923e7275004b475622bb6878":{"name":"@balena/jellyfish-test-harness","version":"2.0.63-renovate-non-major-36e3efca09f07989923e7275004b475622bb6878","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.63-renovate-non-major-36e3efca09f07989923e7275004b475622bb6878","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"658a786d4f67ea612bb8c2e329e7a8112772c536","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.63-renovate-non-major-36e3efca09f07989923e7275004b475622bb6878.tgz","fileCount":24,"integrity":"sha512-Q3ogwayFhSmOVr9Z6txb211o8/wC77lj4f0O1xoQZ/MhjuOo3mKd9Jobhy/fWzp7f7n8a7+bgOcGD2hEY21IBQ==","signatures":[{"sig":"MEQCIDnmuHdO9xLONhgnRUslsWvmg/P7MPq38S8pi5nYPXeUAiBBBw/ZN2fxP255BQWmnvry7jmh/qgHpvA30KlB2IZBjA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh6CACRA9TVsSAnZWagAAHUAP/iUK5w09WUIH/4/SGpaF\nr+V8poBA+prRfWrnEWe23q2VOmD2yC+FPjhMWJCVjPef5I4bj2fmZaIu9kFh\nrKZlYvC/mg8xg7vX3ykMO/X8AMdvbZHdWqbOpZ72TTv3XQCmZ910aBYuxBBk\nLvNYMsdCiYEn8uj2FlSelNugtP5oepizPVYUkR+cQDZvO6if3n6mwzPUmNsA\necx+GIUKvn/UxxlIOfCn4ktlGRqLGjlaC9+uvA/+WI7di4oFaccvoS/RRMZO\ntwnTYKbNGUOATQRDMeayoZ8NLrlK8OahdZA/5us95bmDnoHoWPXTV/8GSz2C\ntdsO6WfLAaVBbq6BiN44eZ+iAExzNzqXIOKA60zShow+cIJQG/UYXiOaFuYO\nXxGMDhbU43ZAilyvLcqlBnIABWt4O/nxeJzJJd+Ao1HFCwlA8KK+zIyEqofb\nSC2Yg0Wt6dZMb/ZMxqcj0evXHTUNNnsU1o9sAgUaCVEUO6COUxTxL9dKMWHm\nYYdZYnJZvescDCviZsr+Sod0iEEWZ7i/NcQHBM/HI+wnRaUEXAvEdVJ4KbHG\nrUG5rKXD4sCe0u7nqeIE41yHFxEpvAAziAxU5qMSxyQjJmpo4nSE/Kr192pj\nc/qbp7qBrvDkDSVPOV/L0jIWFJ1uQiplYqhAzSrQloWeWMTfleDgefnyleq3\ndQrL\r\n=4I4n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"36e3efca09f07989923e7275004b475622bb6878","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.26","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.63-renovate-non-major-36e3efca09f07989923e7275004b475622bb6878_1619501184350_0.4379593161303923","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.63":{"name":"@balena/jellyfish-test-harness","version":"2.0.63","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.63","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5a03b91e2040a5b5fd4215bacd4fac4dc84bdd14","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.63.tgz","fileCount":24,"integrity":"sha512-ptYtCGDZ9z3SEJlDjROEF8bcS0tlWqTW+wYAePZElgN4Xv7uFBUDNASXJQ7eVpMQXSuhowmguEDkE+QBwYldwg==","signatures":[{"sig":"MEUCIG+qnqm0C6gkzsUtQkkOFmtsi5F0pGgF0Xl5GtxMAEB0AiEAvKr0MV4V0BmKqw/7/Njsb5EibUUXIFcBOyj+fTXi674=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88683,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgh6E/CRA9TVsSAnZWagAAoyMP/1wat53/iGAeKv7NJBfP\nYstbcn9XRhIki4NGXqM4uXWm8bQ71hrD/c963IkPtgfNOLgDxb5IG+W5vyod\nJoc2dYd0M5+fZT1AONz+CRbeyvC+zomvOXmzrQr0EPQLKc9aAT4vMMiMX6g1\npRt1ebP5zdt3GC9KuUe5vF6dw5xwnb3ijBy3vAGEo06r/uF5AaVi0dnMJBJS\nZ4APPxE8JT+XTlQylgxfQtIOrocXi02G7ZQ6RCR0uLfo9nozVPFYb90fnDRO\nXeNR/FQX8llz41oNfpbTeVdtrKbiuWOONiIzKA7o38a5uqQ46nkSWldG4wbx\n316ThutU2FGVisUjhaAaILu3aEjU4yLz9CGzPq18xCYNGPAbn4JtCbWUPaQh\nqfHtoQRtVv7rFb3ujgceAMFGZHBcGY+Xoa94LoaKcg5MfEqPigpo44j6A7u3\nm2DDqWkYL4/i9iEROVNAPaOP+gCsposmoBLS4ULuElsFpYlPL8Hn++bhramM\n46FjfraIc1VB7BJuj2ggIqeg+L7t8lBhFfgmNamhBDWxqzaWftohd3qiz2pk\n48Z0ynYBI+6KAdq/UDlZV7tt4A1SnUhJSdGvf3NQ0FYclvPd0kXJJ1hrUZG+\nAVW9qBXBOXwOCPO0J6sOT2AcxwckYOGo7yPFUDO/NCSYk1nNR7JvFZQ/Rxmb\nnGi3\r\n=arCi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"09632dc3c391a9cce24916ab630949c53a9c0db9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.26","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.42","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.63_1619501374742_0.2704938822108829","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.64-renovate-non-major-aa2fe42c7536d053144a5f3acaabe621d8c37fe4":{"name":"@balena/jellyfish-test-harness","version":"2.0.64-renovate-non-major-aa2fe42c7536d053144a5f3acaabe621d8c37fe4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.64-renovate-non-major-aa2fe42c7536d053144a5f3acaabe621d8c37fe4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bf9fd3a65f76811954c4e9bfe42fb3b2aadbea1d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.64-renovate-non-major-aa2fe42c7536d053144a5f3acaabe621d8c37fe4.tgz","fileCount":24,"integrity":"sha512-REgvsUPCjq7VVN5ladgQkUKCl+Q8tqlkY+plIpHJaGA80WfCBg2Prg+dZgSyjjmWOfZhyB7uFb/qGsDHgcFpDQ==","signatures":[{"sig":"MEYCIQDLT8A0j27RCZscYqRfW/eDRj/1O/66geR9Vh8VBFb9rQIhALlMZ2J0+WCOhMcPoB4QMiF6iGw6nbcim7jR5F5sqVxQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiCvyCRA9TVsSAnZWagAAC50P/RomRV8BuXyGzdREuJJR\nLbpMxj5ezOE1Rb9RDqtGywzy83Y1T7KObSFcpq0WQSUC8TgUlHC3MEZdoHz7\nWtq3CbriGgjYarzArVYEZSGj27SzB/fIfRtbMWXVdchJR+PpiZYUIEfHOUqt\nr3aN7h/TPJUqwDbDyAt95VwxmX3PWtudgAPIt45db0odENkfNHQ3iG7EgKF4\nva7BLItQ7WmNGgn7FW6zAh8iGRH5DcgFkSHjgUBZxPs+ZFaiVkHCCEnmrVfs\nQsC1g7JT6c3drhy2kMO2tCyry/kA4PeGFGGVYtQuvj0w7ZsZbENSHETTG11C\nZWVzaD1OECr+1zHppbbIYjfQMYC1y+4MCK5NfosL8ayVjVO5CvHBArqp9MXp\npK2rgl9Q+K3eopHJAMMxa6gbYxuL+peRr9xvwTJntPfYp6nuZZi9s6Vzp27d\n2T7L0MMWV6kLX5N5fPzeEITBSHBRjTYWFwjyEqDykKuhyCAV/Jg5nSK5r0G+\n5fFHnxnYWoQAuAqTUwv445cuVGhzn8skGZ41uazQBVJrfwFJY+OBpgiQb/Kx\n+e1mCTeJ8FHrWYxQb2jVwPS/IuLxZctHVTfaPhmk6JAY2KIdcGkUvyv44Eri\n19udD4ge6iKTy1P/4oFHPIGizE+piSO6xEdWSZTg+Z+1mntK/0qVa6YcNgLK\nlQzZ\r\n=xYHN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aa2fe42c7536d053144a5f3acaabe621d8c37fe4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.26","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.27"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.64-renovate-non-major-aa2fe42c7536d053144a5f3acaabe621d8c37fe4_1619536881841_0.7116304601203562","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.64-renovate-non-major-1bff933eeec406a82e5e1f7904d32691058b452d":{"name":"@balena/jellyfish-test-harness","version":"2.0.64-renovate-non-major-1bff933eeec406a82e5e1f7904d32691058b452d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.64-renovate-non-major-1bff933eeec406a82e5e1f7904d32691058b452d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"690ad883f3a2338062f7cd84e7a520233b654a1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.64-renovate-non-major-1bff933eeec406a82e5e1f7904d32691058b452d.tgz","fileCount":24,"integrity":"sha512-U14XyCDgFlwjjJuVh7gzV87sg2LOjVgNeyKVHMo/qs0c9hbc+3CktJrK/zJAUxaC+8A9qnSU/+/TeCycoOidYg==","signatures":[{"sig":"MEUCIEo25a2tNyLuSsbfK8O+KB92TnOnvGu99AI8GCMKc4SbAiEA8JupsUqtCsyk1+z3lDpnfu2F0OgZOeklR1l8P2cG/vQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiC06CRA9TVsSAnZWagAAgvEQAJPk1mJ5ZeZux9L5Ch5Z\nMTJQSsHskYFGkBFkwYY318Oil+cvDQM2ivGEykOJEjXNLV9eqq/gqLFq8W+/\nUqHY1cMREGfH+c7LY1QZK0IBT7e4U1KoP3YyHqD0Pg5tX4DNxatRDfdiNs7T\nOmA+I6Olw7Eqzz5+cL8mUJNecvEMsnNKEwjzRMCSrhWekR9PJAKBLAp0ICXD\nMrPa4NnxTfxDY86DmWfjm/uK/XAh6NwypaAhAuhNc2+xRkTQKoZ1vmewFB+/\niEum1ZMxOvy39E3irI7EkC1ataTxE3vHSypZHFw5hZF6FkM7cBYfyzJk+k8Y\n+bNJ3Bp5un+3u6sUhSPL5sOA+0x8HG7TP8oWiyub1jchswGyUumzXkFceEvk\nuDENc3w2TAmGkzVdaiJl1Ly4kHwbKRYtlyRmV1ILOmK/7WZu7YupOVkf5E8v\n9uiklP2cFhFKe0FPKmgozrejwVlDaOv6KTTrXsgJzGtvs0SnRCoFEaTA7mQj\n6/XBK7TTHMvzj90owJhTM55Xzt8HfKqZ4y3fratB6coAIjL1oGocph5xQvUG\ndr9/4bt/DdhchJ8NauRonVU39G7P2bMMJPhdQenUnyPclEoE1H8p+uxtiqxo\naW37VmrxYbYgc+GxtWAp6P1WbgZtFmaLcrqppm3lsa0nmKqZ44ohI7yzAl//\nRP4l\r\n=lyZ8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1bff933eeec406a82e5e1f7904d32691058b452d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.26","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.28"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.64-renovate-non-major-1bff933eeec406a82e5e1f7904d32691058b452d_1619537209939_0.562932155435016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.64":{"name":"@balena/jellyfish-test-harness","version":"2.0.64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.64","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30ca0506609d3b632b396ec186f9013e5b9d9048","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.64.tgz","fileCount":24,"integrity":"sha512-zu/DgorKRiCDsSFT6Z6ZQX/sWkdJ9dikSI0lYCv0DRvnnafaj6rzN+/VaZme8mlkDsyeHq5eVUqVX1o3pNkzGA==","signatures":[{"sig":"MEQCIFOFD/wR52JAoqpVUbeaUt0LJfqJ+R26R5mlJfWrhKT+AiBc+1Xr7uhzROQSukLVTkolvwg2sd7E7wQa10k86iQMrQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiC4UCRA9TVsSAnZWagAA+9sQAIgDZZ+ZUyMUAJqeLsz0\nx2hK/Ona49tcbnctCXIwEy9bG7pTuFGjEfryuIP84w8cmlZWJXkNutjrMUO6\npXydOHa09+u1AWW0OARYz0qBKjwBx6+24ZLVBm4e+e7qSO3es9C96nY0849o\nMXHSqqder24MA0UaOZtL1KzkDwWNoV4iOco5Teq9rm/5NqEjq756Dlx4fpY7\nluxrVkM6qV6Be0cL0iBBVV+xZl/tjCyWd7TNdBqyiEXnMEspmJO+uMsxwUcS\noW3NweLb1Nqw/fi6s/ReubusTO4MD7L32NnUAzOqARuviuf2WNWJj2h/mzG+\nHXHtT7vI7RiK7mncxLINTc0C0jk25+OMZF9BIe4+zRlHUmZDuwCeDHtEgvvG\n6dKPgxJn4SRza+m2+PMoX4FmPvXTfVfn/mydIMbJR3OovmDO7H6MC0KATcCb\nqm8Ol9h2k2EipCCv1DjWRUajKEJT/eePxXX3H/0Nzsr1CAQHVMkW9hXN4AI4\n++jpNfNQ9d/9bDueOi7FZlPcUOGmG50bPw8PqkLglSVhPmN40mPWb1UdgD3P\nqXz87i1S2R5qRhkX1STcUFi6UYPu3jgOD+a5/xGN892pNCtftrHkxjKdjcZJ\nZ2q5+sa4AW5Mm7mLX/lmwvNl3AZOrCVyWa+VhYU75/QBxlYgAV/+TSzW/AFP\nj14p\r\n=Vkdr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"381b743c359aec5c87de1785bbf5ebba65ca4ef1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.26","@balena/jellyfish-sync":"^6.0.67","@balena/jellyfish-queue":"^1.0.20","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.28"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.64_1619537427973_0.8029445159352788","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.65-renovate-non-major-3e3933a172d5a50c7373387274ac49918cf9d8a1":{"name":"@balena/jellyfish-test-harness","version":"2.0.65-renovate-non-major-3e3933a172d5a50c7373387274ac49918cf9d8a1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.65-renovate-non-major-3e3933a172d5a50c7373387274ac49918cf9d8a1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3d7f44b2c32a8cbca059d247a24b9e658ea5b161","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.65-renovate-non-major-3e3933a172d5a50c7373387274ac49918cf9d8a1.tgz","fileCount":24,"integrity":"sha512-KTYT5yqBh85wAgDG2UUQ+jqUyp4Q1Gz7ik9twSrBA7c0z3pEz6Upmd7QwVEXeQ2HS1fOdCCgUUWmHeDvCuMHyQ==","signatures":[{"sig":"MEUCIQDhnEV0etqtpdSvUQXoVUseV7ykQ9LseS/EqU4t7xq+nAIgKQ5d8FA51M0xbaTVMTehZWQZ5sf5MjD9mtZc0GK/xuc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88881,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiEIdCRA9TVsSAnZWagAA5/kQAKJMbqMh8xk8Vs4EMu57\nv1ouenPnc8ZK5Z5RcW81vE5zlLWwlYPNxUGOu9WL29okd5NuEKbjerp7DPC4\nuA/1hu+7mev0XcDmQBlWNExlhpCn5i8OFU+lO3K6zzgonboOZxqxxEplTZYP\nR54hfvC1SzEKfYHwiPXktHi0ZbSGnbRkT4PQNSXDyVk9f+bsLSBnuBEaFwCi\nN0SKcDVwSSsPqFpz5BXrlFsu3BCrvfrUr2AXXcFMuHP99NTuTgGHVSP8UeM5\nNswAXDm5BCvrVNOxPiak/TY1KGdBXVVfq1pnwJnUgtqpDwfrKxQ/6Hp8EwAH\nUVCHTwFZdcmqLqYErPD/py/6GBqEhnjMGERYYFBYfY+f6B4Ahsg2yEZtWDFE\nmIDYQwmOJ6fKC4JL+p/jAzbMJRLWRclfg/6uYXqJm67hjzzr7ORtZC6MH4rP\nlzcqfg9dMEaaGJy0k18M0/ih4QuwDUWDVdsMLKj0LsE26mSBphoMQE+EJ0Oo\nUKNuMmOVpAZFe1jt/vYVC0ghrOJkghMhPMGHYpQUK3f36gWih8aQv6hjFg+o\nYOY1NEmt7gouxPZaZyT6my+hvquE+jv1N+Fuyj30K3a2dWAjbNAbaDw10oZh\nlIrUpPGsx8V+2qlnqZQH9RpaqxCRo65sRsFqscUymDobvHiXRviCISKu68ln\nWbhX\r\n=T1s9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3e3933a172d5a50c7373387274ac49918cf9d8a1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.27","@balena/jellyfish-sync":"^6.0.69","@balena/jellyfish-queue":"^1.0.21","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.28"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.65-renovate-non-major-3e3933a172d5a50c7373387274ac49918cf9d8a1_1619542556685_0.6413880444214035","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.65":{"name":"@balena/jellyfish-test-harness","version":"2.0.65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.65","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba178b305372088bad5fd65c630c9def4fde9318","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.65.tgz","fileCount":24,"integrity":"sha512-K6FPQkhhyyDsPpVkFo8Lg5HTzQPVBIsC/bUuH8Fa42tUujBOcTTzOiadbUuhuErBjS8fSX1jmf7+wzQOxn76ig==","signatures":[{"sig":"MEQCIB71X8/7X9fmPdpzPq+uvoqpZF3CC/Lc+LJljaCDrZOFAiB7KYnLOXBFQSY/WEEjKvZ+sufaaKFiy2fdtVrvf4e9IA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiELvCRA9TVsSAnZWagAAGtcQAJDk8EIuluidTKV6bc7x\nrhZawjyllgOSFUsk6H6PcbCHOxEyWwykLHdHt6WRG4ytxYu4rjrXCvda+/Et\npODUMwOI3+VcqE34WVToUdWT/U70Ndfqsk8pRBpr5CLOy7Fr3E3QKwKT7fML\nuQV3eN1/yX/3ekbQuyvcq2kDyPLCUUoSL9jma73fveKBsdz6zI4iNVYEUtUB\nNOpAs3GYW0xVPEXhGwog/JJoF2pJlP6ymnHfQ0YZJZR+cx2hip4JwK61rEmG\nxQDndsVywIzz8EwXNIgdnekAsbts2wXYyYXLMfnkUtUFyCIOZuDQFeAIuihC\nGOfsQI+GjJR0rQVz9CEueIHa6zVpTdIn6+Jg+c0EZK8cx6IkJktEippgQWfs\nAP2ysrP+2dBF+Fj9fEa8APhXcEUwBxlGaN9A6M2noFYqwSM4GELQF4r80onW\nq+YMwmGzv/8jJUNlfZ5YgKkze8BexWiw6CkkUFE92+WXNpGkNSsRMJlnNchQ\n2VCg+F3Bkk7gJrcSohZ5tskU9ULZuyhaqg4+r0gUnlqfYFLWrFbVweBGpEyN\nMUOuTFfKfJYrx9G0TqXEwt6c68Tbvp4AvrOBJqJs8C1hFypy+CvUaYEoF34e\nRt6QbSymqnNaIIJ5ARcw/pk0Bf+R2FpQqG696sKDW7BaWbnF6qTzWGPDjQUy\nQrCX\r\n=pB8U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d4a8d3701459e5741b082da061ff8580412a7ed7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.27","@balena/jellyfish-sync":"^6.0.69","@balena/jellyfish-queue":"^1.0.21","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.28"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.65_1619542766978_0.055625210845728024","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.66-renovate-non-major-e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a":{"name":"@balena/jellyfish-test-harness","version":"2.0.66-renovate-non-major-e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.66-renovate-non-major-e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b988108c703104d50a788f676cc10d101a02bafe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.66-renovate-non-major-e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a.tgz","fileCount":24,"integrity":"sha512-xnzfSyWbsDrPn/AGbEmudwCXjHguXlHLKF4/KKomiOWMbhi+QI0iOASTsZ6JRzw/h1YvQyfKg/bV1agEmw6/1A==","signatures":[{"sig":"MEQCIHt7DA1H5JbWbM3O0r1f2ckZpMkKzVjhYZNbsiS+SsrRAiAIJx49QRPXqCq/JW48llQpAceJ774EggAOVDNSCL6kpw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiNaECRA9TVsSAnZWagAAWoAP/jMVM1n2LUM36w26wqfp\n1aiBTig0g1TxHVEhlGpTulWDHXdJhkkiWBT+BD+je7POVYyBrGc6TDc0I/pV\n+2mBZ2Vy3XgsQil1U/4QgJMr8N790e3VrxTe/yg7e8w3teMS0C2loJvYalQI\nDcsxoE1bylAwilrXWXUWCmK186vOrfzuayykTsji/ShEQxrv94N41dhcuNcz\nnit/pxwkxKNynfmY46sOTEp9ulYfDbjB8z0ufwwjw/j7JNCW2DDURzj6CAcd\nc7ZA4npq4jzh8B83yWJCu3wXe76X8qkBOeNKq3xkAqZ4+isV8cKhHiu4VOUT\nlJ9htgoKNpK5nWHTL5qdGivM78Uwnl75jL6sfNBls5LT3hWqBScaQw49c4fj\n+42kNvOhsCM1z1F53y9yZS8PiPrHlKEpgIqLwxdglcxRjU+Z55eHMVaOzWN2\nVUosAeadB3j+0HnRb2xMl/1sw4d2aDYKQxAaCofqWFSZ0EYeyr5yUrFAq55M\nOAWi1TD0biTOyGSE+j40LKxV4sxYxPPR71O3tFh+K6BvpylR3m/TolEWOw13\nDZPwC9Mh3WR9ya8397xdCerr9RVOrceNKNcFbbYPwc6tuGaTVqbYLJb8eFMv\nIsSRRHFG4Z45Hl9+GVS5VNqUs6uPG8LniwN/H+yfap3QBU0HNfD/Htj8kx7d\nFxuD\r\n=iiYR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.28","@balena/jellyfish-sync":"^6.0.69","@balena/jellyfish-queue":"^1.0.21","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.28"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.66-renovate-non-major-e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a_1619580547579_0.18411816271732961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.66":{"name":"@balena/jellyfish-test-harness","version":"2.0.66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"edbab10c15512cf7a6a421040723ff775a22e99c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.66.tgz","fileCount":24,"integrity":"sha512-gMHfqybw26IU3hvpTOeaAtqTW1zvUXIz/l2h2fU3iVoYtugOwumNjR941E5FQGHMaA2QervL4dkcHKZm/eFQcw==","signatures":[{"sig":"MEUCIQDtYaT8D+JEUPC5uwYo4/bAn0G+SCtJ1t0ymBrnIB+qEAIgEeSq2oS05LVeS37VwEiQFn20I5hPw2ZQOF6Z3YtuS+w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiNdZCRA9TVsSAnZWagAAH7wP/RGcA+oMqF5L5//O49zj\nUCw2Jo5yF0cugeeEU5Lmg5nftArxkD+nyStFZn9IMFiuD88VyydIdnB61gm9\ncbhwhU2E8MP1M96DEum6Y3iCBafI2ERsoKEsktMNUMk/8Wgsg7lrkRaZt/u/\n5HH8xutqmz7eLnF6Z5dV+c35egMcuEmHYsDLQEbp3CujF1Bmf+kj2Fs7emAs\nx8NdH7d98ldVGhnuqsJ1Ak3A4XrhV/fYlAtCYZ1gLsWGkqw3aLK30eY0q4y3\nlIjgQiloC8bcRB6Y+OqQfaWyKZHzYiYZRocdHc3cqUVMlF7uGrgn5RiGCt5U\newuUAFyYbhG8eWaN+2XOLqUitcCWI7soNdkuD+XgnqZL0DNHJlUF2Btm6xlw\nzOPRLXFFhDrbik2HSuyoidiyFVXZWD+ER6Alg0Jv0CtsvDSmHnzZHxYNCiRW\ntfRcINy2IazY/P0PTxP5eC+t9VV1imf7BPmGmn+oYS2VR2GZaat8WUl5EMGm\noe8lvZNfH8JyJQIpzTQf73cE7C0C4h5XZ9xdqqAccA9FIB3nTEX/Yx9Upe/q\nl4/74r4oNbYwmRDNUSezsgbpVTrSkqO4+8HqhDABSrK8D2y3svfGeVVWQun3\nSfzcbtBUM1g1QKqpj6kYLN6gcugS4qBVy7awtQGVcaAA7UjMZM6J/95TMXbr\nAFGy\r\n=quwg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"023c08ed627e357791dd70ace10f28af12bc034c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.28","@balena/jellyfish-sync":"^6.0.69","@balena/jellyfish-queue":"^1.0.21","@balena/jellyfish-worker":"^4.1.37","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.28"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.66_1619580760963_0.7159325161256993","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.67-renovate-non-major-63cb0cfb665f0af5b64db6bf5676c84c78b3fd15":{"name":"@balena/jellyfish-test-harness","version":"2.0.67-renovate-non-major-63cb0cfb665f0af5b64db6bf5676c84c78b3fd15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.67-renovate-non-major-63cb0cfb665f0af5b64db6bf5676c84c78b3fd15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cb9f5536378fd49a07d86afcaa21ec83d5ff570a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.67-renovate-non-major-63cb0cfb665f0af5b64db6bf5676c84c78b3fd15.tgz","fileCount":24,"integrity":"sha512-n3rXk4Ww49JY78g3uQ1S1/4xIuCVgnnFX5sZfRWTxpXiGukEU4u7mmB1pkGAhC3gaDGTVLoGGIIYiicgUVHF3Q==","signatures":[{"sig":"MEUCIQDVz6pgZFwbQ24N0lZ7CJe2SVpN/vE3/HNhDXGh7YqkWAIgFK44SNrI8ZzZxq16Becp7QrYDRp4hyVsR93uO794wV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89055,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiXW0CRA9TVsSAnZWagAAiPoP/0EAvto6R3Fq2weyCke2\nonECUR1A3fXPz+FbNYdMt3ybuAyQ9XmwET8YIEMa/NZYSMOjQTwfUji+QRsH\nvKbIhnxkMMVv7NX3UuRL1kA4GYAOVsmRryN6hYYiR+QQL6+Eqxu9Ot9HUeT3\n3EUpkUZqBCTuTrPGI52Xeoifi+3FbYOxIhyqCnltYFxEoMYsht8xVs3te6ni\n+gNlEMZEkn5RK0xIWNXrOqvTBWVlQAdWrooXgLVQ+V2vcIG5R21CJNGDL08J\n4iY7icAy9jKh23G5B6fJ6Wqr8m9zxQogRgPbRcCul1EWb+EiWo1ADnShDc0q\nUMlv0da5qSpYCBLyGlWpijlbuBqMx2ejDmGs3GNH5WvkcCh1vhTJhdf5lbG/\nee/ZBRgOtHy5edVl5VbaSVkOvgjH1VKut3QEbkbI/BonORRbAB5JIFFRJd6E\nDYSUSopBYVXv+u/RQsGIWz+f5Q+A+OAoBk9UrhozEIGIoNWX2eHQ4k0CEvxv\nd9268PrRU4nCaP3ADGi1oFMa2S9TGgy8eW3tl9jgXXgQk8E3nAvbYdwoqjtt\nOjaSFMiLXroakUQiz2lFpL7wvGcUguDDh71IpkavkSqL5q6kAgjNC3FiDzQp\nYAF43XgMaN0MWWTWNc6Dw4q5IMrF/Mevt51DVZd+tqp/dc/kL50js43iIJj3\nlGJW\r\n=WIQm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"63cb0cfb665f0af5b64db6bf5676c84c78b3fd15","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.70","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.38","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.29"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.67-renovate-non-major-63cb0cfb665f0af5b64db6bf5676c84c78b3fd15_1619621300162_0.9449779348100242","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.67":{"name":"@balena/jellyfish-test-harness","version":"2.0.67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.67","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"350a2370706583945d28694de8fe2b6277dec84c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.67.tgz","fileCount":24,"integrity":"sha512-SYwxbWpKbW6PKCcgt2GQKt7M8d5yQ/nBcNKd/BEOzqFdCKUUgmRT3Qk+lNKZpR/OH/p0DhJkjfMndzUXyPPOfw==","signatures":[{"sig":"MEUCIQDYbKzUCo6WFkVnZgsS+G90Uodl/8yIdXU5NDKdHZLp1QIgR8sk2rbdsL4ZLGXWW7ymJXOEi67qN1fylvNOHCgqECQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":88995,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiXbVCRA9TVsSAnZWagAAIuAP/ApctyOgMnTzi+TwR4ZW\ne8O+ntk4wyzAfWgYAg6L/r/noRX6Gyzzd85kdvvMb3y/gVAglyhV1+Qo6O5v\n+O8cIoE3A9pGpSeXP7W3xQgkm5BcWowUHTy9X0xV8goGxb49TFdZZK2TIhBa\n37uqo42IwdehGNNwxnMPfkiAbMAPOXejks8e+yy+LHf6ENIPxROFEGbN4hdl\nZIgrtMx06IcmSCY72BNdvW1egk3byeiZeIBCtPg15IU81GlssdzYPrgzIF+i\nDBImaXrYWJ+Hav3IpD4kAMmaOlSq/rUwhzXzFt2TU7uwLE9czJOctgWQH20q\nGONYZ0fBLPl5HM5jtLdit77HL5/kaRDrEnYDrHhJ0lLCjFRulTtrwOIri1Ry\nppfFpaqQmSN5Q70thCqSnsbkuNxXLxWhSgqKhZB+3ERyBnYvSvBnkSVG7o8Z\nKoY8GnGnXvMEuihmUDJOiCLoJuV2Ug39on9dU7ANwGUzY4cSV6fpmSNg7YhO\niyBWyjA+Epl3zBucBbSJ+Kuk/RlYT38AP+Bmvgvv3hBny8/MXruSr67j66X9\nLjjrUSzDgHivjdWcH36aCKef7L80DAbBUnRjCy9RAPicU6jGxtsoMpoOkhT6\nwt5ZdMd+KD9lnCh/hvZJXJZgyNg3PuLICIP4X/EXDsB5E2mJgwtR7LLNWdYu\nhDyG\r\n=szMP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c57a479b3df94d2f9987287274054934d2873705","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.70","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.38","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.29"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.59"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.67_1619621589159_0.5180518087115658","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.68-renovate-non-major-6f9a14c4e30bc67c8ca9d6e3ed6063689267f045":{"name":"@balena/jellyfish-test-harness","version":"2.0.68-renovate-non-major-6f9a14c4e30bc67c8ca9d6e3ed6063689267f045","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.68-renovate-non-major-6f9a14c4e30bc67c8ca9d6e3ed6063689267f045","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"83ee344aa59c52cdff9a30aae52fe90f887fcf28","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.68-renovate-non-major-6f9a14c4e30bc67c8ca9d6e3ed6063689267f045.tgz","fileCount":24,"integrity":"sha512-aQlui5tLzCtTJ11vjNY3hRbpZXpH8dw7Pp7T9brR0sIVTtYKd83nWEeQ9PmHZUO9Ea8xbOiUvrQji4K6hz1ofQ==","signatures":[{"sig":"MEYCIQCkRq86PH/ysCV/IC3Vl9NvwANkggxC2VmOIuV7v8CBZQIhAJ1tr0W5Q+voJAAUeCItkDD9v3rHmFVuZJeMh0Ual/EI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89124,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgigmJCRA9TVsSAnZWagAA6SMP/0zTwAcU6eCi1sEnnuAy\nQMhBqHZLgvKmSkGLP5ypyxvDKooK7MgOiIwYJXgOIyQ2HxeedbBz8EBMqC4R\n3DRnaAFkHR7vWQsml3fozZLsauN41sL9FJ1XJeRV/cuPHuS6Sfz+E1W888UQ\ngjpq3SS0rX4bT79WIp3eIJwmylaiosH29k1NxOnAyu3BPepw5DjoyYPpNkM2\n6r7wANmnUbNXBT5TZLI95kMLVXc6XZuTh0d5ChicBPPohCXMq9bda54gKhui\nKx09SeToK0Xd8YJi2k8nw0TAcIlT+vMWa+uFSJw2xbMnKAAfZ3aoiuthtX3P\non/1kGnBKUcqAtPbE+d7XKysHAJUfruWmhwV/FcCG6FSBROnY5Nio8KAEbCB\ncTLeZ/ElEz/4LtIPGevb6VnRqsB0G0Tj7L7zoOdRTU3PofGuaRKj40ZKyDul\n4uLRkIWmSLd3FZCZD5SRyjHV7XTeXV/wOwYqntgZPXwi1wfKHgnb85sZxesl\nl2MPMLjGmAg+Jtujfreq/or/dAGPQJrdPBFTGiGGzppP8cxcOumZDgBb3Qlo\n3QYbu7nSYoVwkrtZt7gZKPHxm8OlMbTQLSwdpZXUqorEVO3fEPxcnMq7SIKJ\n2TD0ELU6HKIDIWm4oB4CVDd/rvXMdyjjlYWbdpxc1+CX8JueqbuJcy5Goupd\n8qCc\r\n=fo1x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6f9a14c4e30bc67c8ca9d6e3ed6063689267f045","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.70","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.39","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.29"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.60"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.68-renovate-non-major-6f9a14c4e30bc67c8ca9d6e3ed6063689267f045_1619659144460_0.1291154256386895","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.68":{"name":"@balena/jellyfish-test-harness","version":"2.0.68","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.68","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f1fda951bc4f1ea8c65f19769da4087522fc422b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.68.tgz","fileCount":24,"integrity":"sha512-PdB7l0or2GGjbTeh/7FK4As6K1hh9FkOVEpV54/bs9691KP3Fmz9LJZDXmAMNzX54o6YKPlbNGkV4FrJ02Vd1w==","signatures":[{"sig":"MEQCIChlC/jH7yo8IV9Vq/M8Gm9It+nS84iQH187K2nSFy7DAiABumhkZg7NL1BW3BS3fkbftb764JdOc64N6Z5zmF0qnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89064,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgigpjCRA9TVsSAnZWagAAeTAP/i3NryjjqRjTDEj6iMiv\ngummNu6/KZMiX2i9bmg/ZnaDG+Ar0RlQ0fLtnlac1FaNnbLfuKM12zlrvlbq\n9V6CUnZMjujBoAOc4xdScmibioRjMFVJIBY9rTGD7qCyslF0E+mFjeNmII8+\n1wT2DYAzga8jddGzGS8hf0jRQfpmvRI8Y5OBQfI5WoFPREb1v4CqsTbBWd7N\n3Cl4CHiU5ok0ptTIV80wp3EHfyT10thuAn5ENeAEV8EfUL+GPRBWgyh45tH0\n8gulxpHA5qy8zYT3XhW50lpZlSiy7XBXCV6Q/Gw5Wdd7VtZe33dRTTYhOsyf\nfUE/FTlZiJizvZxAlS91pwUYTFsHN5thsSNy8Hd782GI2olfwUWtt9Sc4hN2\nb33xgQxqONWTD579bMk50dE9GKgfE3O1IkaVTZl+DIhGtInk+bEf62QnRzHU\n8b1W24HXserQ+9bDQ6B8Y/NGNGZCkhHdc4sk/iMhyioyx49EknxO2V5eTXzN\nwahNhVez6KN9zUP3pr8yau65EFAR14MwEd5DGx50oi/EZ4Q2TAZe1WkSXtQs\nJ7r7inTgjO1J77jI6Yw0DmB9g660eaP4VqrLqpPIsECLc8YTnM/jdq6YdoNe\njWwU9/LMV3Z5hFFo5yM53F2wPkODqbg9ul133OdtnaQ3Ku1pm3ShK19VY0rK\nh73Y\r\n=1FGJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7a8236ea818dc3fe5a2bfb885b748d2d4bfeccaf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.70","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.39","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.29"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.60"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.68_1619659363322_0.905013198904951","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.69-renovate-non-major-c0afea070568dc0f660cca4734cab45c59a6ae94":{"name":"@balena/jellyfish-test-harness","version":"2.0.69-renovate-non-major-c0afea070568dc0f660cca4734cab45c59a6ae94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.69-renovate-non-major-c0afea070568dc0f660cca4734cab45c59a6ae94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d78d0d5337c8b6a2e868483c481a361233b427e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.69-renovate-non-major-c0afea070568dc0f660cca4734cab45c59a6ae94.tgz","fileCount":24,"integrity":"sha512-NYKkv6ld8WMq07I0zbRlD8ckL3hJjZ6K3LE80ib3Ti5jsxUWKtLWskBx4rm9lWrtn5Gd3ZDt0H8SFMF23oVvcA==","signatures":[{"sig":"MEUCIQDxZnWrqFUqS+t13o9ACDPv4RalUJ9QuZG0nY9/cR+uQwIgUipeprFdr/6jIwwWbMs/XcaydIVu1kjKbKdsHmdJzDA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89193,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgii65CRA9TVsSAnZWagAApVwP/14zVGW8AshVLGteP+iv\n6OCm6IYdR0FxqjSfM0LRC12oPAAUJY6bfpFvb7pI9dUtkNgm/5dacZxv3J0r\n0GRoqlc3EYPI0dcAvpq0c74vsEf90IpwA3uuzXeTX5wHaSzFzZVKQc7H0VWK\nLdiU2LEDmfAm5T9zU1MotVYSlHgkh9g6V+QFPMeJPgtS4YabEiJL6lst5OvJ\nv7buYzp5ZvhABZQ07/xYxCrrbNKAZpc99TNHcyTbO888db+jnfXVx3uB+2+K\nY/DyIPKBIqER3zL/QFXesH68+MBsRqpCnaqcBEBp8JM1EfdbHuNokjFiIOq+\nESoiCp89Bx+uTU4+tS2+/1gdI3kurrje+Lcx9wIRf0uLJTGcZEDj59cxXCCw\nAc3vNYncQuAicKbFiB1E7No/GJqBKHiCC7M+2LfN+wRuyY2kV9EJRMmZnO0S\nxt/eioJqBqScUsYc4YOYrJfq43S0B/kdIuUZKfeJKOkA5wXGctiYDMziPejF\nVeM/lBdEN4VT0a4myVhjMfC6jrbrt7v8Qj1biPDz7MqwjyeLjhHUftPOJini\nj4ofjARjrO71pAeqiwnQsN/ON9LZ/a1XPH/LfiSBQeswdPPX6miL+E8YrUMT\niCVzmxFaRtrC0t+/1TTp76F840wxn8tG3SG5b7t+cIHZfzuKT8ZvfwaxejTE\nswkW\r\n=ePFe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c0afea070568dc0f660cca4734cab45c59a6ae94","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.72","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.41","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.30"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.61"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.69-renovate-non-major-c0afea070568dc0f660cca4734cab45c59a6ae94_1619668665161_0.6394024811540875","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.69-renovate-non-major-1fbab53dfebf07a836e09b214120bdb5963c275f":{"name":"@balena/jellyfish-test-harness","version":"2.0.69-renovate-non-major-1fbab53dfebf07a836e09b214120bdb5963c275f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.69-renovate-non-major-1fbab53dfebf07a836e09b214120bdb5963c275f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1a5700288a0857715b496bcaa8fb343e900ff190","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.69-renovate-non-major-1fbab53dfebf07a836e09b214120bdb5963c275f.tgz","fileCount":24,"integrity":"sha512-N86ztuFg2+uiILyiVRUuBoRG8Dz0ZZKo7zzz/hja2kLf12BH9weF3V8368jm9rU6U5PCzXhUNqTtxnTKnUK4Qg==","signatures":[{"sig":"MEYCIQCPPuzVg+OryJXwgRBIpBFHfkmHVy/79IUnymSnMIhsOgIhAM+qU1Nny1OJoy3jym8K2ms0Xv7M/904k/3bMNCairZp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89193,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgijENCRA9TVsSAnZWagAANPcP/Rn0W0X+c1PRFUyDWXAA\ncSLlYfGNYBiMCzGiBgG9EIjeRnnW2Urbp0GP5/Tl6vcCuZcQAqV9pavAmyP3\nmh7I9xoeygp5g82mKrzRFKi7vJ3b8M6gHvnMDkTXxR7sGpenVaWHyjjRU2se\n/75SptlobaUl7tGdNkXaRsW7xNdYsoXX+I8lGRL7/fbPBBMlK1521o0PEFDM\nYSYL3TwJRpfqG7aLxdXkA2FZN4n6HB0PfEbj8+p558OM6OYEQovIssUyFedI\nq9nnOFp89aOqT9h2+VJfzTJ7wQu0VVQcJKrkPJ7EV3ZbVqEHTUTBzHH8gIOs\nnpZonSoe68e4Y5n0F4WNMKc9YDCP5ErzkzdVegHgUFs2sfJLqGOeHwr9fXd8\nCNelxBoKF0I3kdpixOxXu0+z53W9fUnvbYyQhn/gKh/ixvzKEvhZNbkSLnlR\nvhkLH5LEdOh2Yz2LC8e9iXT2ZsKnfmutUqjQ7WlmlShmaKFKJh6LIVlmand3\nvA6vNSY1R4rTKBuC0VrwsrNuad999qtotVe87xhHU8tvoxJvBOFK82gObDK/\nfbcc/cosuw2CEtq5szvQnYLgpRvEw6cmj65jj5AtXb//gPHH83p7kSVzf832\nzZbEXh4zQWU/ElSkR4C4IUkMs6orsqLP6yCthLdp4f+OHbnk/C6/aeZojQ/x\n/sOE\r\n=6VdA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1fbab53dfebf07a836e09b214120bdb5963c275f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.72","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.41","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.61"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.69-renovate-non-major-1fbab53dfebf07a836e09b214120bdb5963c275f_1619669260938_0.38266645923134335","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.69":{"name":"@balena/jellyfish-test-harness","version":"2.0.69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"748c7f7ab86a9dad96822878760c2868c23f84e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.69.tgz","fileCount":24,"integrity":"sha512-cFGTLU4eAOOPTgFa98Av0dcNwVHbjSK4R7XQXlGzO1K6oRRJBz1DXm/qNVsyGw3tS9IOwo8hbIo0x6LUBA01bQ==","signatures":[{"sig":"MEQCIEgegS9QPDZDQsg8Jy29P9fxAZIx4t9TkjrQkzQkqjJ5AiAGJ+IUYnk2qY1iF6BO2TI4fuPtczxL6GwULGoARzqeiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89133,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgijH4CRA9TVsSAnZWagAAqv4QAIiNp27ZcVCNa/n8R5+U\nvbcpRlO9+YMgxzjlQTJzyAT4SZb11j03Dohk6bCqG0qfZZyM9B2lYPOMhpzj\n9gnl3+t9aJFNkHYuIQDb8idEMeJpROkUVBn5rQEhj0PUgy/smBc0ARVAjnyI\nNfGXG881aOL+/lHSJ6ubzLx2xJ60xUSxj32kiklvi3/T58hD4J54QsfzLIg2\n7DuHJ2qQk0phUSh0kCSjeG11ZN1EUHB14pdBA1g+r61DEuGl8WCF6W2kn7lG\n8Iz+FRozB7GJHXEPcNdNGqPg7cQFzJejkYFG4uaBCJ1tDP6v1eOfKmUnrsr5\nETXzXuQ43QCe0KqnDgjKbAXcIgz83SCZCpe8dRt5tYghcRZkHEWm916JSvNx\neKEnju5AxEE1uiT2nTi0OceZpKeGQ9s9bEp4QuESC5hAS/js3WkcaHUlW+jk\ndqjPIpiGD1e6z2wLyFpWctrm+1x4HlMC5Kb0t03kTyd5qIwDiP3YxDoosKM3\nZJ1A8vn3DWH+Rn2Ew12aC1SDTr7/ptJlMdes94qclIuMt2y9Hjw0VJTlfHVc\nRO/Smpw9HiobsIjQvwqBJ4bYPMiMwBGNF9vUCx5eso7ijZZCZukxBVYlMLdT\nYpEHkOzavJaukl0psQOhHsFrF3boldIS3GE+14Oi5/cGkprhzorhhlfzP74R\nDAwb\r\n=Fzvk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8f661e85ef90ea9e36a5083de877d491cf038bcb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.29","@balena/jellyfish-sync":"^6.0.72","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.41","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.31"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.61"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.69_1619669495937_0.21448665651088472","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.70-renovate-non-major-2fcd4ef2c8556ab3d7936c62c975305107b566d9":{"name":"@balena/jellyfish-test-harness","version":"2.0.70-renovate-non-major-2fcd4ef2c8556ab3d7936c62c975305107b566d9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.70-renovate-non-major-2fcd4ef2c8556ab3d7936c62c975305107b566d9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1fd3b6fab96c7dc7a93e93e0ac407884721aca41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.70-renovate-non-major-2fcd4ef2c8556ab3d7936c62c975305107b566d9.tgz","fileCount":24,"integrity":"sha512-YEEYi+PwTD/dpBFUJ3brRXe6BR+3MIvZ9lQA+BSyYH5LnL+J0bGNJAHSobUKHltE8b5PsjYDYce5Pemo4FgKPA==","signatures":[{"sig":"MEYCIQCFwKQKPPt02WnJyuB3aMcvp3H9KxgqDQjmKxCP+S/ObAIhAN30rUXQQtDoSGnDXn4X3LRh3joTQ71KEny30beM0OpD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89262,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiluUCRA9TVsSAnZWagAA8qcP/3FAMFD61rFnra5yeMOr\nD51k4eTJ+CzbQ+uB10j3qV21zNXUlPi19ScPahzBrpMxVCv9J2061pQjTSkU\nkvZDAc/r+JMeTqiQ3wdV8JXzQ8/M+UK9FvCBuCDHCFtmhXsl7rB0goITLdHZ\nK8z8fyweK3QzweDgwii2bOIpWwz0IAyI/RB20i7BGknt4L/X4Tq5vYd7YqDV\n5qs1yB68eBql5intTtG9fj5apxHpYBBtlVBErbBfWB6qyRlW/wsftXCBLjx4\nV09RxTCRYNF6wiHNsC7O0x/1L9nuNrFv5VAHclNs0e7pzFBmC0lVpbOxDH3k\n2ZlNE8g8WYku/hxTcaOl8drScLMQ0yUnTp22mnvFRa2AOy1TnfTus7PIkv4H\nBCDnZVA7d0IYL0HBBUN44OzItUNz0qiW09f16YYeW1EOBSBrhHTFI5NTd/Kj\n8JlIa7yIVdlZ0mX2wSaz6xpZoFGECyUyIBqAq5zNQ9zBwBxX1RmGNFVLwPKw\noyJITX46JyLnx+DjXcX9h72BT7/BCVtcS355AQACbFwcjKA8+A1u0V7zTGQQ\nYN8Gbz3msurJ7G0UiCs46dhAWbhqOsnnq9IqMei/O613nK9+T4KGt67VfDkH\nZT63fQRILb6qTkBHQcu61j9am9PJq9uu8V2rwMVk8pZL2KzmH0ef+uu7bfn+\nA1Q/\r\n=+rPw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2fcd4ef2c8556ab3d7936c62c975305107b566d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.73","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.42","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.62"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.70-renovate-non-major-2fcd4ef2c8556ab3d7936c62c975305107b566d9_1619680148028_0.7036621112564367","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.70":{"name":"@balena/jellyfish-test-harness","version":"2.0.70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a335d5727ae0077cbb5ec99e32e219594af27444","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.70.tgz","fileCount":24,"integrity":"sha512-raYVOf/2f2WwnTxeGxJgFkPkLW3lin7sc2pCVmY1ohBB9gxaMup8rj3sUgr3yggCOaKzojAIj3I26chRdV9Qlg==","signatures":[{"sig":"MEUCIDour0GuRqTo+yoD/J0gTbv6Z5BEY1QA/GORYpcfdzFSAiEAl5aWMMYgZfAVlOZLGGxSGUTjkMSYoD/E/pi4ufwSqog=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89202,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgily7CRA9TVsSAnZWagAA834QAJ0aZXBgasPnmfKilUhR\nh3tbBIkCDxQzdKPXOwoxDBAqk25o6kzcPeDtb+tM9k8NipG7SD6SCIcHs0OR\ntVq3cOM0GDbIQKggQwRdDfrsc/Ken4VU26wQngmL9sY4jN3kwRMjEZJqE8ds\nfjNA5BcFMVCp4wn+XvmXOc4rE2WAUf6pifwPBU6HPjiSLCiit8j/uQFLgsDw\nQBw/VLZjOJ9Ts/36lMLOz8pq8xkroC/7r4ja2OQjculitWykROeYFLzYJDJT\nRO37TtQJlh+60uM3Low146bLXbo67gDKJXky2upZvwdh4sZvWMT+6Aalr+YD\nG7v+M6VYwoe9XG/ZtTLIZp5wIhurqURyotHU1oTz6Z/as4zgewKc75qPjF8v\nJh9WB/SgzUdiN0up0xgECrJR2n0OC9D+EcKsYx48+Y6X7acXHkEkcocKn5AA\nZpsK3aJF7LHHrnXCu7LjQy/X7aH/KCKHJWbHetb30xBTizwvgrfX66QHkiRe\nSI3w+cs4dGuD9Zxjdzavb8Ke6yBQ2afARUFTj7+G8Z4PtIorD2euMJQ6obtP\n9nygUJ8e5SQbA8CT3jgMkJMe/BfG39Q/2A2UmAghEOlcWVkCv/PkyWdE99Q1\n1LenmBtJ0ZG4onMmuAIYoPzrlOg9Yu1mEF6/K+IztHuX5i1rkaETzexpQUr5\ngK8+\r\n=7Db7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c6ef138080e70a83577531197795ee4e7d44dfea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.73","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.42","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.31"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.62"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.70_1619680443019_0.33317106374325745","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.71-renovate-non-major-e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a":{"name":"@balena/jellyfish-test-harness","version":"2.0.71-renovate-non-major-e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.71-renovate-non-major-e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ebb0a0d8af0ae0cb4213f8f4fa69b5b1dfa8fb0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.71-renovate-non-major-e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a.tgz","fileCount":24,"integrity":"sha512-+u5Y/7qhqR+BuE6Wh6Am2vj3v9XnZEGMtTdmXQgk3kTKk3rFnfdTJb2X2oe9/VTAdv6ZoY1pTn9J2KQ3KXgHpQ==","signatures":[{"sig":"MEUCIQC9ttIxRcsqdCXOtrvIfW6oi5ohIbeTpc4dfacMLWRcIQIgJ1+DQ9IMF/vNqsMrUmht8xne14PN/MWxfDb41PEbXXw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgil68CRA9TVsSAnZWagAAg/4QAI/WAMEeYYWaE23HNaY3\nmbJcnPTUGlEm7BqDkhLqFPcoy3MB7dFDxUiT4yZX30u5PsY19EUibJkdVExG\nCjbPccH6CzLb+JyRaByaV9mWgTEY9cfoqyFI49gB7c7kD9O3NrZf7SZXPdKA\nGOyby8n/cIRTn8jipnZU9oG7UvjGSMmXHc20OLDM1CM+XTUJEkDdE4QwwDAa\nQfJrYxuyCDi7dXESfa3xGMmcmZbJe2KJl59F6fCJL2wvUt+qGWzXGYHV08oE\nGOSPdD5Smrdk0co0PY/x0kk2iqvbf1cY50AGVKK7hiOwyMFYBoz6F5XXiNrZ\naUofiCO1PJYPd6PgZ7AAJ69R6+zRTrDbQDmtOz04MgmU/IS7rxyywukvRLqo\nF9x3x116tTrvHA0mV/fuZVzh12esaAU3RBveW7MWsfkdBg/Fi2Yim/LfMVp2\nvIyHo+MZsny5C1gc5woLPcIQu9h4wrZ57rzEqa46kScpVQbKfg5Xp9z7rYAx\n/QZShzEqqP0Gnvqt7qUDG+LKU74kRA9vJRQ9KaPInO/1qoiLWt95cNlLeaXE\n4cVIVdLUoZ+S6IxK2QdyoqjLdJQfVmFDUQ3bFguWghV/TD67anYnMrDjwQfh\n84tY8vHPIQJPeUw9VkVJrwo88PjP20M25N71H4cFwkicgsj68z07JqaMEQUE\ndocn\r\n=lmxd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.73","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.43","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.31"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.62"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.71-renovate-non-major-e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a_1619680955704_0.09821124089967448","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.71":{"name":"@balena/jellyfish-test-harness","version":"2.0.71","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.71","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab31e0b4b0f5fa92c2442021a77dc7d58423971a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.71.tgz","fileCount":24,"integrity":"sha512-YCqX9x+hcicj23q8tbcY0OxPbwMqVefmav3Tp79Qq3DSBppQSVqduFypzPzchILb++72DyYdQDB+Yb84+z10Iw==","signatures":[{"sig":"MEUCIHVs9ihZR0CnPXu+jdP1VvdkedHtZSd8n750nhK0eMXZAiEA7cZSYBoIFpUGB/Opp6LJAbDnSilZcpHpkDqbrXVgIao=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89308,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgimBGCRA9TVsSAnZWagAAHyMP/0KnP12aXj1WJQ4QR6iJ\ntS/0YEQuMKVNZPw4lNCTxuqZot1BTY4wzmdTeTaYr9V0RX9FGpts+FxeK+jO\n64RnIJ11YRNM9TwXe6vdE+638i3tjYIfy00UbEHMoRFx7AH/k5OPpIFkCgaz\nifuxI3AU5+pdu5+zUsLAnjJB8IgOegM0duvy8lCAxTYGWI8AOimyMDDQ8E9e\nzLXXso3w/VU01YsNOI+POoQZZUjrcXuvfm87MJ/5nc70lEdlpwqqWcmd4+Re\nPbVQr/YoIpEMWP9dJYe+WCITDUny9Lk59hizOttcMQyqHfOWxVe0/gTEY81y\n4x6oinnj8Gl4nFtBMkKondzEiL3guIlA1Ir1EMS3Y1SdlOnJ3wYWZPYyG9+6\nIVsB+fKr3OK3/k26iPbLxlcsRkZAzFKLfdvjsxncsVdJUBSNMfoqMDXgV00k\nBTM2gr22TPoB/nmByznTpWKQ7M4zBHwOmaE4hIaiVX66bvWtr7Yxf1jrFVaJ\n/Xu7rrmyqfTenF0TWSzZLedhW23/CZ8ACNQWTI8jF+nJo6IndEe7fb4ZRKEb\n4Q3WTu//xQX7cr7EdjASnbiABOHmGNS9cSt3LlB9yGjooP3l1fgx7JeBy4D7\nymtdUYbvSCr2da5g+JdQd4z6f8pSLUYGK/8M3AeCBU+ZSdiDCNC5SZJFB/Lz\nh52t\r\n=ej8/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"92d2ec664489d7d8b984ca84f07ebc13a0707791","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.73","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.43","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.31"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.62"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.71_1619681349789_0.6300677436596163","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.72-renovate-non-major-e90a44d588ebbf8aa4223de82ea460826700751a":{"name":"@balena/jellyfish-test-harness","version":"2.0.72-renovate-non-major-e90a44d588ebbf8aa4223de82ea460826700751a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.72-renovate-non-major-e90a44d588ebbf8aa4223de82ea460826700751a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a84cdf9ce3619e296a01e4ea62e18e3901e7ed26","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.72-renovate-non-major-e90a44d588ebbf8aa4223de82ea460826700751a.tgz","fileCount":24,"integrity":"sha512-Mb7mY7+zSjv6gzcG3BffCNZK7rAQJG7WqstZyN0lwwW1U6x2lM82dybFm10a5Do+ibNSp98Vz0o6dSThqTi0Gw==","signatures":[{"sig":"MEUCIQD9FiFsu8z1EW7bPJWvvZCy1Banb15aSXaLcXlgZ1ZRWwIgTIuLBUN1cUyKW+zZN4LF1aiUqk7/DIpkofRQl95dNe8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJginLCCRA9TVsSAnZWagAAciIP/0bCPDn9SHiMHHl2Hmmu\n2z1nbe5Q6eqGdAvvYexUT6mEMKq9HUZFhGd+DdYaJbfRxk5Zb6+UH9B77vMA\n0bjd8hCaV+c4Ecwd/1bJSgrFme8QLdRn2U608JKaoo/Tat6shC19w5e9tntE\nezfVmJaP6OQIEOYbJjLCdY6c/JImiTNiZ+quKXvEerALC2rTzqrC3Zr7iIo1\nzUaBClxkX7/ecpQoPcKJLttcGNXAqXVWrX44r/4XURzt0MnpWvEYx+CIWcV/\nxCQuEpUlzFwtU9gNk5bjyGwZIBL6KB3oaPb9Gz3AhMWipJQvRbD4WcZlKkLq\nP+lb5zvCEAFD8wqT0vtJCdgVL0Urh1ARhvGza+cTdc+aD9CenLRgJ2K5cWf8\nOaWOuExYtSV5tJxmLfnnTcK+9Al0a59+GzRxH5fcBOwwj1Aa3AaH38XGxKcO\nhBsTK6jBYLRPJ5hq1mZ9dur6w1PuSici0uURbxQLM7f23zkyolvSpHzVa/eu\n3Eco3aCxCxNdMIkchytffJUntY+SDWQvMCkdkU7UiG3PX+FrdYa/fZ1rRK89\nQi989g6+JrfpLIdZusDBO9lpwMh+vAuStHpp+wCMAECwLsEQdUOaRZg4i0c+\nmnNA91GrHkVjW4DxUcXyp5o2yiMmWpoIv1l1Go7B/VDLgtQB//y8PMZSSvHe\n+kxe\r\n=vrHF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e90a44d588ebbf8aa4223de82ea460826700751a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.73","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.44","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.63"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.72-renovate-non-major-e90a44d588ebbf8aa4223de82ea460826700751a_1619686082210_0.5219275293382326","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.72":{"name":"@balena/jellyfish-test-harness","version":"2.0.72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4acc68ea1efb1277a59578f85cf627ea6444059","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.72.tgz","fileCount":24,"integrity":"sha512-wH76c3kanQGuHJM5BO8nNDTFaRWOqeG9orSF4wS+6xGdvt8UyHbSXyttwIcH7h1kgOJ26YvEkmfXj4ZGVVHYjQ==","signatures":[{"sig":"MEUCIQDyyEGxPK1rj0n4BciuUPrXq2MF/K54SaHmcqbfTOr2BwIgS1qQ3eBIwgSw2di1fnL6Unqu2enWAJkpMC63ruLOCmw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89377,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJginOZCRA9TVsSAnZWagAAfqwP/3mec8C4bU+fWAtfNlBz\nTOjXzK0ExuPjY9ZQ2l9d2KxbdABoOKk+wv6f21mYEhKzCPtSV4huZHOcO+LS\nivZGXmcUa1EVdbNPGllaQbur9J/ht+D2xSApAhQKORTz2TU26hlOj/ydELyB\nUkOIzUQuXwqb4OyrWu9vL/+tR0l2qVK2hxeKaDQl/SLq8bboc1AWvPaORSpv\ndFx74mwbyVIYD+tGd2nqIi5M+RZTYWGRoIEiwobAND206PXD/WbI9QlLEZiF\nbn9gkHn4Um+4KR9mqI8iT9qxFzMOl2B3qFHKHdOzdW5bHfmlYmGy39hVb6s9\n2oizOs3d/Fyy4bidAHr9KgXhdNimzxMbCVmDahI46k24qV1/XwjSpgnZVPHW\nVkjuqMWZ6vpYxtxG1YgggBShPzy8jlXk+SUanXOz+uBCBbfbrPCr4Ph5vEqb\n3D8TI3/OPh3UFKsvHf9CaTUk3rHVQGaGYdtS11JIPwnrhwe+QedSRqwwxspE\nVn/DZyllU2t4MRB8kCDbUceICyB/Fp+I5DE3wltMVpNChtRe3wC6uW42++47\niFhFWA3UFYicvrFUd6Q8ZCaSWcbdwWFxMr5dh13rr4r0snqWVq8KFXMAhkH4\nKrE7LX3APrZ0gjshMwk0V1BQj7ZFWacYanXlXbECsXbKmmXJZRtD+bVam687\npH8V\r\n=sD4O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b0abb0946f94950211194188b8eddccd94493365","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.73","@balena/jellyfish-queue":"^1.0.22","@balena/jellyfish-worker":"^4.1.44","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.32"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.63"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.72_1619686297296_0.32161410962340264","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.73-renovate-non-major-657d2d72572175ec97666cff9fb409a063e82b78":{"name":"@balena/jellyfish-test-harness","version":"2.0.73-renovate-non-major-657d2d72572175ec97666cff9fb409a063e82b78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.73-renovate-non-major-657d2d72572175ec97666cff9fb409a063e82b78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a6d45686f72924943752926a2ba16e419a25a4db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.73-renovate-non-major-657d2d72572175ec97666cff9fb409a063e82b78.tgz","fileCount":24,"integrity":"sha512-rxPLkNzkgU/XPv4UiVY/gTKxhW/lquLMv/lycyt0zRTqOZByhrBPTCnhSUsXba7JHnEaFQE6LnepOhUqctjeyQ==","signatures":[{"sig":"MEYCIQD7gcyfIQPXqaOmczyvtjScz1yZQs+5PP+XdJMRgGuvswIhAMD+wt3w89tFtpoLOZ0THUdBSvthHdCIfZUomJO7ciwO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiouZCRA9TVsSAnZWagAAN0wP/0pmdkBr/VWS6RIzXa3H\nFSBWV7+T2tUCUe4SYtyDjuMbh2rbQP2879imlk9nEFiKQfBhHBraXxa7Dhal\nXHT4DqM/peuug+w3CgJ8dyE6UFR62++GLiaVOZ3MAvdjM/kfoe764GeE/Fou\nzIyAKl0mD9AkQhHSbIstrU3o9gsSmyPxfDe+Akgf2BJhpspU5hR0LnhXSMao\nZyahyynQtllbEjnVGzT2vAN1pkD79UbKo+jVk0flenk3CU3t7ksrBAqbeoZj\nxSPJPvPMmytRw44y+adb3RHU35Le4UyXcSUXyvLfwLdbsuwvKv7jf0ugAUOL\njoPIWjAWoJLjdRC6TUsE+ukUuNeaYPVcFlh+4LPj+Doz2TOGEa2aXlXoiGoR\nmpBJm7tIygCNDvQextOabo2+FAz5GPurQry/wxp/8d7kyo/l3uUFxPyn5IQn\n6cr3u5/XV0JR6DCFgeSprwub12s+Gte1Xi6El0WZqCJN9Q0iI2Tcpkrsj9xZ\n5gmTfHYS3uiRPCiRmZ7yDeA5ZtVq0v1eaRcyhC9bWWSkN9jgLERBMkA7xui7\nWqpzrTy/X3UglWS6PsrHquT0iQjI8UqTJyNlOjqAFeCdMemGQkko/zlEq699\npnb7bL6i0CEXjmkTkCIwk/sgO7YWh3+kRJhNhkJJfagw04UjsbAzg9BekLoI\nuBCv\r\n=X5jp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"657d2d72572175ec97666cff9fb409a063e82b78","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.75","@balena/jellyfish-queue":"^1.0.23","@balena/jellyfish-worker":"^4.1.45","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.73-renovate-non-major-657d2d72572175ec97666cff9fb409a063e82b78_1619692441322_0.9295500934122067","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.73":{"name":"@balena/jellyfish-test-harness","version":"2.0.73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3cd46f2f18febf2a8f1d9b7b071b9414d9d638a3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.73.tgz","fileCount":24,"integrity":"sha512-L1+FMwDR62xAc8hXZQS1UWwRmUxLsnTKKgPDN8PZ9eqz+qAknV3Cxffi/etgq+RswNuJBwaoHZuYQZb+fiX0mA==","signatures":[{"sig":"MEUCIQC2LXR2aT1HEnv9LsvDiGjRjxOLsquNMODwm+Qb8Alz3AIgDn30l4kNfNN+Ht934FfGEc1zNOAfxDa7po7+Fk9CZhM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89446,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgioxwCRA9TVsSAnZWagAAIXsQAJIy7BJ1oiKhhdpePR5t\nNIG3cBx3YIc77vf34ZZOLCvFnY0mCSPt/bL2AAUGKRtx3+8S9q03han0ZBfB\nl5vsvh/EmeN+rLzIrkXDclMFDzDJy39QZXvSQ70USy3YbJqk9fOHYVHcLemD\noIGKBwlrUGsFrGnZ/iNlMCOEBWxM76HwDG/GN7teg8f14AHHQ6wgXRcZOeM8\nbyMcFGBeZgUZGlnhNNvgFQj7IIWq3PVY7Qq6RpQ0Fj8g9vPlq5vFw482y3ZT\nyES0Fjd2+Il40/UJsFbF30FPi8lBhcZj6rw8OnfgAwfa4DT2GFFYfntfeF/E\n0pg8fHgbzGY0295N0wU8vmB1Ur63l8VZzXTbPXEPp9OQGE5tx4Io/Sj6ewvX\nOoafTaWDh74Lh2aLmCMncKibXQDmpwz8Kafq1Tthy7N9ackHkuKq8rLvqzZ7\ndKGIEYOTaNUfWxSAnlaVEtUJpSqXyPLyPiQIEwaPGMiVErgENySh7CegwHU1\n8U3oMsAowd4dOSsYKPs10pN3RfJc3aH+gOXie3z0/njwcgLWzDz/6Jyc9FMU\npP/7tsf7B1aJWiKiXDEQrFT7pUlndPqMhW+l9mR7aq/ALDgPfJZDEj7cQdok\neEwyyVBGNMxnCNPUU/rWYjQgi6ya+JZokyM5ajqIj3HxAe1Xe5nmFB0CN8Fs\nYpzF\r\n=iOjx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3d4d856672958f03cc4c7f5f4abdfc302109abb5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.30","@balena/jellyfish-sync":"^6.0.75","@balena/jellyfish-queue":"^1.0.23","@balena/jellyfish-worker":"^4.1.45","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.32"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.73_1619692656408_0.24530100454660575","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.74-renovate-non-major-8135f73c8f3ed38763b761b5171f8595a09d08e9":{"name":"@balena/jellyfish-test-harness","version":"2.0.74-renovate-non-major-8135f73c8f3ed38763b761b5171f8595a09d08e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.74-renovate-non-major-8135f73c8f3ed38763b761b5171f8595a09d08e9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"357302077eb33a7540a79bc446ce93c7a8b0d58e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.74-renovate-non-major-8135f73c8f3ed38763b761b5171f8595a09d08e9.tgz","fileCount":24,"integrity":"sha512-cj9sCElO42AtH3qgHJYmBgM7wotohrWrzXdOb8pt9ItXUelDuiB57iOKM8EA3z3SU7cC4ayOh0vOgneXlJlBuw==","signatures":[{"sig":"MEQCIGzwhNG9Av7fM3uCravGplezDqkoFdoUizjBbbIBKK/qAiBvJgzePhe4nVnjkSMA/bk4zIQ3XwdvpnMYf9nBBLrqgw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgio3tCRA9TVsSAnZWagAAvI8P/R6u78m+cHXYCA8EaNXw\nbGU4bgi+MriO7nxQcHfqQ3lKrbrYlqS6VGCEWBUbdQjKObgF+GbxbEjW1FrI\neV6gb+vjitbBk2ziYATjq4eBXBzdp3a5Xp6XsgqoKMOvzDTxSSf0XGVzxdWy\nqL4O43vwJMqTG0d+RCoM7d6x8NxD7SxAZWo4Kgan2bewD8hkw8B9xxORxMbA\nyZCTpde+tLObuytltXAGkxhjGnYzV4O7tOvN/czaXEE6Gj47Cfd7NBW++SZZ\nbAAvIHcsJhRc4BvEvZxej22sUimmPZdPvpxqelXRSZHaR8FqEsmRiU42XoDH\n3/JlPeaGSHkMtT7vD26G0EE/Gzk6QlAr5cwX7Fck/JkwASPsmA7tvkmQKRte\nKeINx6SqnUgFPsWVHw0Q60SVqFhiOUAEDpqQik2rheLEDP560m4yBq/l/V2v\n8i/N+BAvWXZRu3W88JcofC5DsNRm3QmylDHrqEAooKEugFRuDXTKkvI5vWAs\nPpOAbfpjRwpnM8zD96oUAYAmqx6swrPsUCIK+kGVzK8xIv9DYL6asFsqU4Jh\nHzFkfk0ZPxPUXcvosZZF/5gIOeBk+5fItVaRT/FCFJIW4AUFuHk3TYtwirQp\njHGm35vmwS7DRYzYq6xvPIEA00UPbEUiAvKV1DVabnFL9MJ44g6yF+7SpbuC\n0RKV\r\n=z+ay\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8135f73c8f3ed38763b761b5171f8595a09d08e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.31","@balena/jellyfish-sync":"^6.0.75","@balena/jellyfish-queue":"^1.0.23","@balena/jellyfish-worker":"^4.1.45","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.32"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.74-renovate-non-major-8135f73c8f3ed38763b761b5171f8595a09d08e9_1619693037089_0.666487143544046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.74":{"name":"@balena/jellyfish-test-harness","version":"2.0.74","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.74","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"72a0cd2dc0f85050a451b311a3ab7332575baeed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.74.tgz","fileCount":24,"integrity":"sha512-m4JlW6LodaSgmWMqvF8mZrC4ibINtgGXOWpSursSYv6m8wa82NJlZnYf9315j0VgNaWlb/Nh6vENYx3Kx5LFcw==","signatures":[{"sig":"MEQCIDkgJuazZgFKyZWsbhZb4t4xtRlcFPqZDlVCQ36obPZ1AiBTMtpXeoPCrtVcPwzbXES4DWB41ailmVt5SLpkyirQDQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgio7iCRA9TVsSAnZWagAA0AMP/0lB/YlU38KPebG0RhrF\nE+vLioZETyvd2xL1yV8NRxSae8dgUwcyWbrGTM95AktAZDjI0jfFUFbZZKlG\nYHwTvUi45u60z/IBVKhdZDoRAxHh+xNtn/3DMdWyvLbpKcz9rC9GzZyMwKo8\n1j1lXI5xtrhRKl0UyyugbNTPrZhHALrlNltj1cDg2vjrwRduX336PRDXovtF\njddGjTyZVFhv455EHPIl79rcoHL0BcAH1dCdY2hXZ0MfxUpGLMvBEL3KyROH\nff5ddtlnfRd6cPflNSQr1RDgl81t7j64O1y9dnFP2EjVyU+5l0imhalyJble\n7ObyvKVelEfOdLZZZ2bgZGlexFloCuB67dqC1/kIMelPhWzbSdl2tqjHHs4n\n7Ip0m4nwO5Red2OuC2KhBSagpogpN16m1ZicSFX+it69E/r/2agfkvQr5/s2\ncWCBV5KCAYF2kla+HSY3LCsjWaK2t2IaHcvTx7r4nshhuXc2OeE2+chWfHI0\nLgAv7Jki5XWzf+Fcylm7kRKQPezUixVGyE0RFrNEpefPHP0etKBdBR8Jokgy\n3ApwOwIdYE8YAK1r2qvJVAqHJhELaw9zqhH4wawHIwJhaGiampapRkwbeGCA\nKBLJTVk+rYqZZ8AP3vXvjcoOKeagJmlj1bgMLUVxRICqVHf7ClH5vvOaWXPr\n4jLc\r\n=40tf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"86bf48d10120c5ed8ccfc026d93161af2a50d97f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.31","@balena/jellyfish-sync":"^6.0.75","@balena/jellyfish-queue":"^1.0.23","@balena/jellyfish-worker":"^4.1.45","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.32"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.74_1619693282067_0.8984775171903843","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.75-renovate-non-major-9af530c5b6fe37f8f8edabc1e057481041cb2d99":{"name":"@balena/jellyfish-test-harness","version":"2.0.75-renovate-non-major-9af530c5b6fe37f8f8edabc1e057481041cb2d99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.75-renovate-non-major-9af530c5b6fe37f8f8edabc1e057481041cb2d99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33dab65db665745de134d6915fdc5a4462339131","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.75-renovate-non-major-9af530c5b6fe37f8f8edabc1e057481041cb2d99.tgz","fileCount":24,"integrity":"sha512-JTyFMBiqZLnUHHLjQKbC4Dtfqd4jv8BbflX2B7zfL7xgjmjH6A4HvTOMO7WoWVu+b8IVVflh2ah9LKsqQ+mhUQ==","signatures":[{"sig":"MEYCIQClqkQJaDRetCCKqz6nKGgFMsAIyGmtsny4gMCq24Ng8AIhAIbHQQW5acEhJX4sT0YtjfUrM4KG0tQgJ3ASaBSFAZK6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89680,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiqWyCRA9TVsSAnZWagAA98oP/0RXWhOEl6wjla0xh/po\nmylFGLjPTsOct26ZfF6b5YGFyohTEEKt35aqI253dTemw8oDdDAjQH6yumxY\nk1Mebg7aE5VUzWE4ge/Df4eXwNV1oywsyg5uietgF444V9uAWKPttlt+SO3G\niiRQXUPtskHaW+SkqhEjcc76OmWhS+itnBpK4N3HFoDruq8IZy1Tj+YOd6tg\na6X1oZd53SG4RCE3uWer4LynLRLAR4E8tefH2RQAwWlRvPDoRTmsQgvQT7Pf\nPpd0zlulapPuRNLY3v6e+kQOTqvZT+4KjFWa2NkOZI43yjR9RDSP4qbgW43I\nJderpTGuvUbUA0y/WlmpLoA/BF4LDW1fVFKK7ktJWxpyAkxS+ULbd/uGT+Qu\nkWd4AgL1Yp1GP0AKCkm/1stpfoqiGf2N001hjE1YnvSdeyS9WqacxlSqBCbk\n8BcbcKuFh7+393e3Ty0vEC/3wVd3Q+Q08a2ka/Ykjc7eDM4frFgDc/esM7Q6\n6Y9b4O6Fd/NnQEdktVQN5bqQpYZwRZEE/W4e+lMoNSDzptygoF2bXyJjHwSm\nc614sSgI/P9VcSI8hCcijJ7O2ayLOnF9vff5xUHPtI5afKyR6AiEaOObmYR3\n0LcvABaxfeIdOgyqaw+v0mCBdRglhDz0kRQPj1G/lEKM8FvtfDiyvxGQ7HbJ\na+LP\r\n=QFc5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9af530c5b6fe37f8f8edabc1e057481041cb2d99","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.31","@balena/jellyfish-sync":"^6.0.76","@balena/jellyfish-queue":"^1.0.24","@balena/jellyfish-worker":"^4.1.46","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.33"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.75-renovate-non-major-9af530c5b6fe37f8f8edabc1e057481041cb2d99_1619699122497_0.1015693896501284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.75-renovate-non-major-07e91f5664db2b54bb96a0f65280ed4dbaadb10d":{"name":"@balena/jellyfish-test-harness","version":"2.0.75-renovate-non-major-07e91f5664db2b54bb96a0f65280ed4dbaadb10d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.75-renovate-non-major-07e91f5664db2b54bb96a0f65280ed4dbaadb10d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3caa1695fb5fd591cbd9314b938e9d36728d44b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.75-renovate-non-major-07e91f5664db2b54bb96a0f65280ed4dbaadb10d.tgz","fileCount":24,"integrity":"sha512-TtXh0tRv71tPRotQorwtr1Y8AswSpUKWEkXNNCTmFM987HZ0yJNUFHzDqllbREHE9vPEEa3d3VJCsWgmGY502Q==","signatures":[{"sig":"MEQCIFMV1hIHPF60zS20xVZtkibM+E2jTVrA1C6R7kfr9r13AiA2f/SmRbvSYI4rT0qdxSD2SDirdUCx+QNG3IhSTGmCPQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89680,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiqb3CRA9TVsSAnZWagAAf3kP/1kK7xP1wb33rpqEOVC1\nZ9PkDyNQgAiW3Y2h4Nm/qedkIIZdjeZPmlvofCX0LDRu2LJfrH9VIbKC8Q2k\ne1uJFNlPOi1QcbYyHRhQOni8koznKwKu8NqgD7zKfAEjAsFK/kBC1qNm6z2I\nMu8pdANAsfUGduY2Qp8fWP2WWHf1JNox+qUhRDiigJbQWaYN4QMKRBxwB5kW\nAwEy91MqqUYkdyUe+Qv7evxoDxJD2z2oOd7I9wjXTHPsX4sMB3lLN84Z2YHJ\ndmgB9L7bkAUz6CM/2CinGRKN+U6ID3Z7CkzS+R0gHBZ4YnP4FnBSdrU5B3Bh\nkOZGt3O67ehbT+RdqTGDbeotNxKkCD8xFXfpQVkLYXT/kfzXPqf4gOwNzLAz\n768q7rYTvc6iS1FcAdsYbA4Fc6rIIrROVUOiym4KJYLnQHmSBgqK190Ta9Zm\nDy0quBs3+kZQfpvr3VxlCSF4w6W8M/oAMLIRV9QWX2OPBUUNc8QigRENP+WR\nDjodaQ3Ja5nOdNOX1C0tSAvm7+BtLj5Na9j1uWICN/pQjL3Yv2REXOT1aTsk\nxYuqinFuIY9wrbg24IdQgpgY4coH3r0aa0thp7V0mJ8bi/2QkOVCQW4L9E8h\nVLtXmUShNsf0sMKEU/0y6XXAT+SoWXJpCYe1dlm0rIZ1HSYpBPw1UDOcgvyD\nuv0X\r\n=mYHQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"07e91f5664db2b54bb96a0f65280ed4dbaadb10d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.32","@balena/jellyfish-sync":"^6.0.76","@balena/jellyfish-queue":"^1.0.24","@balena/jellyfish-worker":"^4.1.46","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.33"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.75-renovate-non-major-07e91f5664db2b54bb96a0f65280ed4dbaadb10d_1619699446824_0.17977027099194798","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.75":{"name":"@balena/jellyfish-test-harness","version":"2.0.75","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.75","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"562115e4bd1803b6b5125817a45e8aca32f4e863","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.75.tgz","fileCount":24,"integrity":"sha512-8Cqb7jtYYXBQ7F124Y3fnvOCGTA8Q9gAE7e7cqEgXB0qtbme7A/aXloQiumdNev3E4UZgQctkWysq4kUp8/ihA==","signatures":[{"sig":"MEUCIEQtRS/+blBE+X/BVYhDphUcoFggfaAjZ3+wIk6feCdiAiEAqz5gu1QadvBP53rrUhO4v9Jl0CGlpaO6b4QbFz0nOBI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89620,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiqfgCRA9TVsSAnZWagAAuaYP+wdNiE3AyhrrqANqH+fm\nDPzRtXGBOcq4lYDvPxW/9w2dyC8AjxgZRdwrv4x6nqjNBNAXc3QZasPFOqJt\nCoKWHO3j1DvBTks9Bl6l4NHxsLLwWWAu4JqwemC47xfuLSe6VJF++gqR1jAl\nrdv1AjC/JjIbNm1rmxBmOFmbmtQ6vhhYoi4Xe7xvj1n4PSHpqnEuqbEFXZTh\na3ouKV0IW+WaXKYF7VIN93EZfvcRXyH0BaaIeKGeG+J9ZU/aYVmMl0Oo52ji\nVVa3WKrXGCJJhiRMzU0GAiCxiPmpxMBfTtVXPSfMBj0REpkiVv3RP1XGg8xo\ndMk+qWvkKLid+smXyyIWaxcy67G2sxbWRzihum+IS0pJ1VXn475Fm5xk9Syz\nSb+CJ+pa92lnBcdJIkmPazp3wMMtTtLwk6hNnx3RBxmsHUsasGVEb0AmB+6x\nWLpWIw04EajwxMakAujwxDMBDxWVNMti29yNDkCXTdR0ApPuqwJs+f3aHR8Z\nDSbfRqgJp2h47wB+msnKJthdRhflzIs3wSOKQ/iE5074GvF1DHr9vQ0ABzhY\nhMNBS2y8CGXpuSTnhd0Z7BUdpQbgecY1e6KLsRP5N/bVrULd6QHECxuN7VOB\nYWc8ooWJc5QzuDYkjSep5aq7I8C/51cWB9Q9pCJm6612Sf6zIIWY9FqgciEW\nKBLR\r\n=ZhiB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"22959ddfda708326a591dbc1154d13cf2512bef1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.32","@balena/jellyfish-sync":"^6.0.76","@balena/jellyfish-queue":"^1.0.24","@balena/jellyfish-worker":"^4.1.46","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.33"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.64"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.75_1619699680289_0.07884397196933723","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.76-renovate-non-major-9b84b57d0fa956596ca742e604f1db4e1a99c334":{"name":"@balena/jellyfish-test-harness","version":"2.0.76-renovate-non-major-9b84b57d0fa956596ca742e604f1db4e1a99c334","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.76-renovate-non-major-9b84b57d0fa956596ca742e604f1db4e1a99c334","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"642b5e99ec67de2ea01e0cf01142a29eefbf2be3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.76-renovate-non-major-9b84b57d0fa956596ca742e604f1db4e1a99c334.tgz","fileCount":24,"integrity":"sha512-k38OvPtSiv6MtsepvwsXddKJGzQCMg8RYBDpjAejydKquSvrmDl496JfPHKB5Xtm2KVVWVMqpN4HT+qREmB73A==","signatures":[{"sig":"MEQCIAsi5aS7o7c5EKy6FkgBO3LmuHyXoI13Q19PTE+9wEcNAiATo+SNbGstYBdsWIQVMYcVT0JdLN5eAyTKyVlOrgu6og==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgitRqCRA9TVsSAnZWagAAsyAP/jBZF5qrp2zHM7y1NkeP\n/zMxP7gRzJagIU5YIL+UVQXQ9bSeLxsHe+3AI7+gzMh98F/zKxrLwEbG45LH\nQAPMEtEEalri4KifK1GzEHaxNXjW7vm8Hev0TJMl5Mu8psqc1d9vyEJS8MuX\n80eqR/xFFT9YmEnG7AriiYsuN4Ku5TWRGUE5VsoKVh8GlBMF63mP6CscwJU+\niDv7knyeVqagzz2JSQedAxdwKmzxWUrjVREEUCZS6DYakQTfGpuINJkKDTB2\nhosYvWPB4c8Oso5J5h3l0ZXUvmVWH8KvuDsk3RH2njXhQGdbOQrNmo4vD2yW\noNaTafoIuJfeQdu4cul0UdnCpvPaFKv6v7XVUNJVHfel8sb0u2D+6e/qk1TM\ngFJACiEqHt4dPbl2MLZQH419d9KsLdk+dUtsHUVUwa2WeEQo69RxF8Gg6mYf\nEhcRA+elEWtMYv5S8Rz+eohfuwbjebQ2mX6ZcSosR+7RBj1yLubmk51r0ild\n20Wga84KsLoa6RZjSsEosHAj+8metHE86NnzowkcAuD3OvOAp2Q9rZhm7q7C\nxg8+3Znmv/1m749WKfZY/zP+zNNWVfNqEqhpFisSPqKnyl/pcT6Dfqk3SENY\npsooolQZXiElyCTbBbgV75cqdyyY1UslajG9X4BebVHfvUO5HxZ1I5+Zjnem\nUoeA\r\n=9/jg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9b84b57d0fa956596ca742e604f1db4e1a99c334","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.32","@balena/jellyfish-sync":"^6.0.77","@balena/jellyfish-queue":"^1.0.24","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.65"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.76-renovate-non-major-9b84b57d0fa956596ca742e604f1db4e1a99c334_1619711081697_0.33711032937002194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.76":{"name":"@balena/jellyfish-test-harness","version":"2.0.76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be8ac8ce6461b3178f972ae90f0ed99987ff27ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.76.tgz","fileCount":24,"integrity":"sha512-OmbjY4eji+I+5SZqfm5fPh1Vz/7I2SbwePp+Za3DsV7+nMQeYOOHBIJFsfpJIAv/a+MzuSSVQNCnVxz0J9+gFg==","signatures":[{"sig":"MEUCIEbMIwmE0nGTb61aFCPJIcBl7MXfXqSrDkT5FDWG9n5yAiEAl1S8WhfWHBAjUrnV0QYVkSCZyRKguUHu+1xoZYy1aKk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgitVFCRA9TVsSAnZWagAAyA8P/16viTOzW9n0FXK3oXyW\n2wNdtWbhW319uaVfrFICtZ2Jb5mYpMve8mMsKDM+R53IROvfQjGtceMRLp0q\nJDMrcs9+Ox/utO2Nw1sUfm9Fa+tk8dWa8pf7elkQCy7R3SmlzQsgegShBhf8\nui/+xYlO06SewyTO2LRD1rzPPzxonETPtuRTlvH/8SDhoY1tW5KbF81209H0\njRIpKwuuQM2NACRqgeDykTaOUIB5joX3Qg2hVC1qLVHdoFDBQYczHuLVEXva\nKucaUrVcvEw7aYsCbY648Jdxj2y4saQ1XYReaNxA5hgbkNSNgzKYTSv6PE+K\nJGJunfW/WCQloOBeAJUi0EPxbooAJKkT97eXIlMSnohC4/E7tCNeO47NzW/i\nxDC7SxEipUFmGpYJMIU/8/a33QSoMqZl+U5ggfl7GqWdrWLMWMxzUm6mA5pN\n/ZzWplECOKQHXuTcF9LcDBOz2LHFzd2kXJEGe4SeZWh2NW2ey97n3brfGag4\nDUDMhv6xejVrTBQLzbCmSG8roEjvg+Jq64p/HniHPkYuWAHn1cGL+Akrn1M+\njS97zqLKQ/prOlWUFL2Z3fNimUcmRumhyqxs0RMD0C2CVxhT5vWH+gIMl3gq\nV3ptymisGyMD4iLa8ZExYPPSe1VxOkwYFViYOkUMj9hUse6pHYFLd8ju72av\n9zt4\r\n=8w21\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1ad7e93b63f455657fc68122b95e34bb2cfcdc4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.32","@balena/jellyfish-sync":"^6.0.77","@balena/jellyfish-queue":"^1.0.24","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.34"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.65"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.76_1619711300638_0.04215697443227895","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.77-renovate-non-major-ccc6b9aa85be21716e54aa774ea558bda38327e3":{"name":"@balena/jellyfish-test-harness","version":"2.0.77-renovate-non-major-ccc6b9aa85be21716e54aa774ea558bda38327e3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.77-renovate-non-major-ccc6b9aa85be21716e54aa774ea558bda38327e3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8571a186a9fd80a2b6680fc62868c45ac6e60021","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.77-renovate-non-major-ccc6b9aa85be21716e54aa774ea558bda38327e3.tgz","fileCount":24,"integrity":"sha512-w8PvD4bLOW3KwZ7HMVRJLFImE48DEEc/Rg0ZNRJ4GwJqtypeSOaXeIAwgDeEYCergKa1qmhLlwHAUlPToOIrsA==","signatures":[{"sig":"MEYCIQCiuIye9naGJ7O/NXJZedbpS6vkIYU61nffi3PJtQjnCgIhAPnJ2momcINzioBdYPixhDSGqpnzvML265Jox+5WY+QT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiub+CRA9TVsSAnZWagAAf4MP/idP61mCoKlZ0bnmYJlJ\nNOud7Q7AEejLLl6iIs6wF/jP6zgQ9PioAhxcnDIfVAPDILqmCQ1A0GLS7+Nr\nWv1Kf+GSso4iRqK5bC/lMoFba3zarRAdhPkUyYOdFDRk3R1QuVyD7yC0nB/C\nFssmYLDWH98qilMktTXeNsExoYU2FgrtklgADnsPiFNRiXfK/KFrEI07VyTq\nSz5WV/BadhU5yEjvoATLi1Ipp/kv+tEidqxLVwc8KK5N2L8p4C7rJQbTUJPH\ngjhIE6xH43s8eNELNeawQT/mr857O7IDLHq1TFt5mBFspG9JEAe4gU5/d5K5\ntcd3efwqSgsmSJk57SQybagsprIfimiUTkrTaE4hqrLCn5l5I138QLRX0z9I\nua/PGCWNi+WN7uvShhMKBZ6jn0wxter8V5N7pSxsNvMeONmbv4BqTlP7rvCu\nupVT2PG1PJCdAA8pABX0831GemgjKlB+dFwtc2+4r6MnVaeSgYqdDa85Z0Cn\ndwjV3YRPFPG+nIuBKqYFkkBbKiyMw4zH98SvraodE7qMnkC/vIwuNHNrZJFl\nuiRjKVdOU3CWQ43Bs73mIidu0kmK/LgWBV4gqjPk3++1JF8bP/6wtb+62b7s\nFO22JPGyJsAsH8fRXU4vbEMgu1ANZVbxnKYi6KPkDLsP1QXCr0kOKhh/Put7\nsooy\r\n=WX92\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ccc6b9aa85be21716e54aa774ea558bda38327e3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.33","@balena/jellyfish-sync":"^6.0.79","@balena/jellyfish-queue":"^1.0.25","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.34"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.66"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.77-renovate-non-major-ccc6b9aa85be21716e54aa774ea558bda38327e3_1619715838350_0.4693020126730605","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.77":{"name":"@balena/jellyfish-test-harness","version":"2.0.77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2c3492ffbec627115179f403bc630c07fa58650","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.77.tgz","fileCount":24,"integrity":"sha512-/5cC9GzKG5xjQtvm5eFUb4qexlqsLC8tsvS3UZzaNzdNSfkJLntNkc+jB/XgHYPzcY2CzK/X8jDoGCq1rVc4Uw==","signatures":[{"sig":"MEUCIAcnyKJBF1bmN6vzTieZuK8RGSnzz+Hh5xj1xB2YQOUDAiEAw4hzybTCz3VeAJy3BJiJVaoP/aIH647b+D3l6/FtfOo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89758,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgiufeCRA9TVsSAnZWagAApncQAJ9Mki0sY9Aji8bTpxaf\nvAvcgp5zIKi0R03K2eGG0MiEC4QDQW/Cl14EXUtferGU81pvySP+Lk1wIWcR\nau2gHw3Ej8auaTTRFY5zCYDyvFTYwF9NHRKxkUZW6HxGw9aBcq++G1wjWxUH\nAM8pEyWA82wse4N8f1kjduKqUGZ5VZxQAsz1pHdj7A9CQFlgIizarGuGXwMu\niUsrVyE1+XitpXyX/PoqQNKsPu76/CzExQAae/Ua7hrASBHadw7rUJy1LDJn\n98GN1rdnh1s3FDhyce1rUM/kMNi2wXGLnaIG/CtwBv+ki5kbXh9Ig5RIqBi3\nw8jDNr1JYq5M3xAy207M8DVlqcFYLTP9qP/h4CFxFSMyRJT2Gu+YveuQzkuh\nnATAnz3ZAozO90lvZTLG/XKF9F6Oj80qMTkOBkvJzkGKhEhRKOBL4I5WsV2O\nliKMJnheQqtteoYrdUUjkRmsqe/gLjn9fxaMDdGUTEWw8g1PP+/YQiZVoa0/\npmjeGdMk5easl6IgBP7csKTexZicaWC/fVfaVYoTmLsflR1lB6Bj2rr/YuXm\njauJHnjgvlXs42FtisUPwHfgue0jL4tQm/m72Hu1ZJE6kQLAxApP79e3wuQh\nC2yOomf/xJ6GTJ3hcA/rF60FLf5iCDMozmP68FS+SAneZCEiqhdyBP4Z0VND\net25\r\n=qLQr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8f8b23fee4b8b8d67cac9e953d7633e1de63a12d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.33","@balena/jellyfish-sync":"^6.0.79","@balena/jellyfish-queue":"^1.0.25","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.34"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.66"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.77_1619716061722_0.5798572647938323","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.78-renovate-non-major-3fed5b7efc601def0c714f5c181b4f8d6e8356a0":{"name":"@balena/jellyfish-test-harness","version":"2.0.78-renovate-non-major-3fed5b7efc601def0c714f5c181b4f8d6e8356a0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.78-renovate-non-major-3fed5b7efc601def0c714f5c181b4f8d6e8356a0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"80bfdc0c5902949622472b9faeea52bfd2b76b2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.78-renovate-non-major-3fed5b7efc601def0c714f5c181b4f8d6e8356a0.tgz","fileCount":24,"integrity":"sha512-Lp/IyEC9xxIJkOFZHeqsT5PhuEGlcZ6e9oTFaKdRzT1HECeCIGeJPD6F40E0eXy2gfBG/ngnnwOeOrgCmw3mqA==","signatures":[{"sig":"MEUCIDkl9eDV0at6DvlxoY4ADQyDgOG8xsp0kAO2BCW4OVY1AiEA/F6Ce0ChYvcWeJd8J2/AQU4mZA8vOhQgGQaVc+Mksmc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89929,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgivPACRA9TVsSAnZWagAA5yoP/2E5SIHYAaHPbP1IJXaX\nzcV82aQb/I7VeufO+QDlr8A4KEjxixJqG6A0nslMt3FqtaC2mt1O2sslp/0/\nU4RV7omZ9S+7ZfqFr62m72Pf7cc4FW8KweItrlDIJPGDOT8qPbxUEFzXoxli\nx4cgRnWTDCN79yFIY5jPxFXyxklUTRWpJX0TKD5ioyRP077AVOlbmXT/Wdvy\nLt6X81IFckfYBeTkXMU7tFEVCqCfaDOnlmnIp7ihzcnoyiYD0FPY8FtGGIKW\nK2dfel/1bkxOVt3EBIu4kWovZyWhj1KLv/LwuP1KZC0s3sJVBZzjJLJwA1S0\nyo8moDrkLlpS5hwSpwyOpbwuTnnyTBjftZiSWxcYfhJUxLkkAan7NHKb/gDm\nMTEUQDqnXn9PeSgh7fZ3YanxgLlGxz5AIdPewGDGGxTpyw10yITSuMF5wfGS\nEsMX0qW6vIB5guRIcwTmOesWCdWDWoCkI/5K/SKaUjly4M4Gx9qVB0ndjuAR\nZhyn2BnCamMdG0LGbX051NmuMj2NieRczAh2puElinMNO/cNHIggzXezCE2D\n15/hye3cbg3ns/KzwD0tFlp/Asoq3CeZCyH7sQlFHMvJ/uVYyS6UNiCtS0F4\nB/AwWZjqXknFewamV7k7XLPLyAWRynu0Nqp0wr45jBz1OoW+u0z9bCOUIJ2H\ncS63\r\n=5OGG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3fed5b7efc601def0c714f5c181b4f8d6e8356a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.33","@balena/jellyfish-sync":"^6.0.79","@balena/jellyfish-queue":"^1.0.25","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.66"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.78-renovate-non-major-3fed5b7efc601def0c714f5c181b4f8d6e8356a0_1619719104237_0.6789524077448592","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.78":{"name":"@balena/jellyfish-test-harness","version":"2.0.78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7de5ba7bbe7bfa435c28c4cca0bed21ee6893d3f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.78.tgz","fileCount":24,"integrity":"sha512-1lfHrT1/SN4+ZO9kiydMbM/tImcu4yvky2TWgW94WESymPYuq2kPu+siygAEPrpudZ25UfsXzI3A1qjQBZVzBw==","signatures":[{"sig":"MEUCIQC+q2KS9XJ75DyTBLPCZ14/dg4zKmvEixdfNR1rFGH01QIgd7hxtTVD4DaqNZb1SP1q7HK4QleTnKVoic8zbM0whzQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgivSvCRA9TVsSAnZWagAA6OoP/jn8RKR2mlNmVLjUdknj\n0wFnqlkE9eaF58a7GmfsMUXer0fpdXWRNMsIwZaS2Ni6ItR9U+pEw7xm6u+s\nwGO9rPMULQM9RVG2vPOfvsp8TQpB9v29YfvYyRJbHRIj7tIORVuBo9Q57P4L\nLQF/dR6NLy1gMP4HZ0lZK7TKHVqa1a4wB51CT+U9zLasyJwM4qD0jfbQ3mLR\nhL/6Pbkw75OIA7ChCc7qruFkS9VNxH0kqFrHFJyj96GDss2XXM+QnHOXk2jm\nsjiK0AUHVWyyqsD0q7bbZHjoRsI/HFauubbNsguy7VOHdozboZfgAatwH3D6\nQFrFEahiEZ7hcmGVZTXP4bktbdyOFWrSSOJt2ImbIroh4ya/0YfgVQ8OoQ16\nrQn//w5YSVu03EuoTXiQlPRetOWCn4kWPCR0Q+yl+laX7kJwPC+KeAgjF8cp\nvotgkB9IMWxARyofSK/ue1AOjRAJLGCwQHolhV2D/XQOFslepgdfCsYVoqua\nDY+X2K78V51lNoBnO0zQdbv++OQ84v4mFY0QcgwXeFT8P/VBcn5eSzJ3kkJD\nu0VHITLVMlhLfgXRsMNG0b2qKR0L+zZ/1+F3D7Sl0XimOwYjhiDcjtzIqBIa\nhfuKP4VowX+RmTs1YoDM6z7zy3VebjtXCos2ObuClumri1lJ8WMi0r7cnTIC\nexLJ\r\n=LLdw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"04b1eeafe90a3162283e465eea4ce755db34a3a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.33","@balena/jellyfish-sync":"^6.0.79","@balena/jellyfish-queue":"^1.0.25","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.66"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.78_1619719342584_0.12018219822564435","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.79-renovate-non-major-7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86":{"name":"@balena/jellyfish-test-harness","version":"2.0.79-renovate-non-major-7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.79-renovate-non-major-7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c6ca82740bb24c5a3b8927543d7afc97d09275ff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.79-renovate-non-major-7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86.tgz","fileCount":24,"integrity":"sha512-avllIikR63gUlab6o2xuIHCK+QNLi+kQGjr6RYVimYe93KejBBdbgBkVb4xyuaGrFfifhW4FVS1HcaTPrJCmUQ==","signatures":[{"sig":"MEYCIQCQeYNYVLPy/nzIbN7cKWOX64nxe4/JsmkV62O3xZ6AVAIhALCLSV/gu2NsPuyddIYQcJ8NP0qaDStHZprJxymAt77b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgivWbCRA9TVsSAnZWagAA/BEQAJ2/F8kmW9Q01h1hcTQH\nyZ37EOZ+I/92EgxJowaToFhLFZ2MW3tsbtAkSroYVXySzorOonDTHOR2evII\nH4ckfNpLm/nlmiceTT0hqls+N3YfQtn9HXXdgbooawzJS6QsJsGVyLuun44l\n5EoPzmYK7XQ0CEC86rDKPXcYFEIEmW1h/GrfqihUBoM651EfyzBctPjjMNFk\nPN8C0gI7xcFr0wW6f5farkUh3cn9lj/c9SbXgM2pVcAdV4ixyW5JGUdoHoKB\nzmIrtjJWQyn8iv4nKMb8jpkOanOfy4y6c2gOdwM6dv58xvb9t8gJOVW9KsEH\nl74KMETKZNbVVp08P+fE4xBe5BKL2F567gfyIKKU/4cKEoN8KguBQ2PKdHq/\nDu3AzBI2smo4/RX55SQ7RpDrDU8I2yZTfGAlfP3+Y8nUBK6MynQ4mduuFXNi\nCHa48eN8fzla862/bz01Is045TF8XZq6WMemDarA+WvF3EmX+aVE8ud7YhmK\nFegRYfjY1lNMlH52xq5JII/QYlUtXngdPRRswcE2edtmXScHCkh2nURUdgl7\n8s7p2Xda5j2C1K2Sp2mFD7y+7OY3M1WJp7dFCq+4lLhRufPEQRrAxeEUU9vC\nt2eHGmVFtFtJ6M6HFtjHfp04GOHFl2rS25ivVQNlSxZiMsMCoOMOJtaRYWmN\nu2uA\r\n=jsLq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.34","@balena/jellyfish-sync":"^6.0.80","@balena/jellyfish-queue":"^1.0.25","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.66"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.79-renovate-non-major-7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86_1619719578661_0.8826997658868483","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.79":{"name":"@balena/jellyfish-test-harness","version":"2.0.79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.79","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3299b8d13cee84de51d9da924769ded230826888","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.79.tgz","fileCount":24,"integrity":"sha512-FXaEm0TPPFsp+7fhqPz2Lb3PyS78W5Vj2UpesBZ8YceGCpVoPukw7vjZ9J/QxTOWsh3LPF1CIOaG8k69koyFSQ==","signatures":[{"sig":"MEUCIQC0tCsbBSbfvVOSd5wFyRFHpMCoLgkpaLCRl1clFq0+GgIgHIwxBrjdLbvN00EdMkNf5S5uP7SHNbLmjKTTUDW8dgs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":89938,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgivcRCRA9TVsSAnZWagAA+KMP/iWpx6sLJBgyVV7EfKtG\nMHTDpms3D60RiXLMjnClDGcYQLARnUU3OQznftuQ40kg+bc3Cv/NnYTBYWaN\nh/M2z0bwmWvunzDXUT+GzhScMWJuaTk73EwjZn+nl6PsABKML60nvDqfJaj4\nOqZI4c8dNE18pjzqGhOBZ46WKNuvnak7fwmdDNO4EqrPvoJgnIPyigZhgEuu\napUO9qgFRRiFbXD8XeXk7c7nhH4nA3Q/mimndw7tJwizVxs2EHRAh/KNJds+\nbjp+7/LBV3lXAtxMAxl33k+cOTRO2e1UD8XUNT3l4wifJ6VXv3GZn/IhmLU9\nBtFTry97LuQER8cjWEXIPR2RNinHqXdQw+GoPPcmZkjuP79Si4JV2kmNLFt6\nk0IUUweRIARFNFsFASSAaRzgOjEriy2vfGjp3837d8eYfMGMUc0LFonDJsxW\nxQFRxCh2VFmVIpAgPteY5iP9qd5ancdVapLLv21ptcakw5RgkaYtRR832hOC\nkOHp5jrEZ8lxuMIdorhyioKeZsBDRSrkt4s17b1l0vRLgwnyPbWm97s61WE8\nC5jffYe4owb7TfoVtwPz2pYkiX1ObBjbKT3ErjTu2Oi3UKzFRB6QIX7jCeL+\ngmVJV0Z5DlHnbxHLp92f+tc45FjY58ochGYPAozseh4vG/8ns4TAbjN6A7Bp\nfTXU\r\n=G5Gw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"87e10ba61289b6df6c634742bed9dedd3c8b3f24","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.34","@balena/jellyfish-sync":"^6.0.80","@balena/jellyfish-queue":"^1.0.25","@balena/jellyfish-worker":"^4.1.47","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.66"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.79_1619719952517_0.6182911265560982","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.80-renovate-non-major-4c8b1ed01122e84d97bbb35646ff2134842998dd":{"name":"@balena/jellyfish-test-harness","version":"2.0.80-renovate-non-major-4c8b1ed01122e84d97bbb35646ff2134842998dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.80-renovate-non-major-4c8b1ed01122e84d97bbb35646ff2134842998dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"595783bae6de3722411b94741ca77bddd2bfc542","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.80-renovate-non-major-4c8b1ed01122e84d97bbb35646ff2134842998dd.tgz","fileCount":24,"integrity":"sha512-bgb4SMe/WckrDiL4brh6KCD5P3WcGAwZDV1GgBAQH2nrDELss3+1o/eBfopj+brBwl78VvM0eK8HMoYMVOipEg==","signatures":[{"sig":"MEUCIBOBO7CONU6tW9D+974VnbE0ck7RSKpYelPH8Hc6LozTAiEAmCF6HgFqC++JhzlOC4k6IbqG5gTr6AQp9E3snflEw80=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgixMeCRA9TVsSAnZWagAAcE0P/1R80I3uVJEA0vgXLMun\nOWk4fkmz8dmQWURQ9C+WA8nR9kZAvNw43anL5JlTdmgnSqolEcuEgfjNKNQn\nfo/5KaTc1eQ1Z+l9a8UJkmZ+RiiDMISMV9H40MFRvdnW5QfKSxUvqOUpc1H8\n7BBmzhYDlwnPxU9zY5xmSuALYhwV8n7iHBu6cd+NdhsWRkMfWWlLJsyPOXzj\n/Kp1TUU62rH9RVsi0bXGsZq4M97VMNz2QfXsAGQqxd5g85vYtoucE8FrS3x2\nkhAbQKAor2S18xz91ysEt1BTHRDXieGa8XmEEEvsatoP/dgG5or04hsCmOhq\nlU5jruEEhItUNDSMjC0gUlrsWt6b7aDM0W4PIaN4YYct+5TMn4lqPcnW2yvi\njO29IzpXIHcm4V4y6w4cwQEydNO4DwDkeRsf/JzMH2WUplsybJUPHJ5NmLFt\nonTPrR9kh356XIEJwLXiB3D4CCTm9smVJMDGi0BVJN8PwjY8+tpar5B6Gagw\n4m980FWC+wKVpoC9OBO1U3xnvtgPLnQsxdIYG9NmUveuYwGqhJJj4E8K6Lxt\n6TR6YTmHhcP/P9SQXoAhxzNtse48B0ONm6/YO/nyCsX/YIIcAt2CGub+aLAM\nkzlshsFgcNL9wr/FoY4KAkq6ThJGpjohd89g3G0pmton4iZeFh0vM1rzuVky\nBG7R\r\n=8A6J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4c8b1ed01122e84d97bbb35646ff2134842998dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.34","@balena/jellyfish-sync":"^6.0.81","@balena/jellyfish-queue":"^1.0.26","@balena/jellyfish-worker":"^4.1.48","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.67"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.80-renovate-non-major-4c8b1ed01122e84d97bbb35646ff2134842998dd_1619727133907_0.3795328455873288","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.80-renovate-non-major-65ccd7d649b4b7586890ddb3d497cd619d30a31f":{"name":"@balena/jellyfish-test-harness","version":"2.0.80-renovate-non-major-65ccd7d649b4b7586890ddb3d497cd619d30a31f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.80-renovate-non-major-65ccd7d649b4b7586890ddb3d497cd619d30a31f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"587d3ae7a1b4061fd0a72bf5ef72920a4bf45b05","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.80-renovate-non-major-65ccd7d649b4b7586890ddb3d497cd619d30a31f.tgz","fileCount":24,"integrity":"sha512-aLAFU0Ql2t70KEl6LxAP9KjFcJ5m5m8nvWmsLCAWzf1MSYmJBCkj0G6VPe/hkqqTUMpjbNni9+BG7rpbt6Jcxg==","signatures":[{"sig":"MEUCIB4DgvZuC37NUuuKqdR8GC/jSJrz4xec+Rpeq2xxxooGAiEA+Jo8+sO1V4YT7I6yISYlUfJ3IbEfauZ03rjfnPp51rc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgixRDCRA9TVsSAnZWagAAWHoP/R/gLC7ZGnWQpPHNJ0mi\nsrL2+GQhRfZmLr4NnZw8ig3cKsOwGVbfkrqPGWlspU5AXIuyHXHsLRaGsgrF\nohgOQ8FapdSkXmSDaZH+40iKub8EhVqp9MSte7s+puY9MhGts+zuxAuFDPAS\n7vmZoYeIW/ckU8tT6HjqNw6mWowfUfrpRA1Xa8uMDiVNi+68sXU0LLC9K5iD\nm71ij3/cqJEaCMSs8PBFgtAdiSqYTya7at/gVAvxT45G0ls9DQnFlz6rvqCO\naG98K7eQ8PJWdf8b45s24xFKpK5hRaIBRU3jOmaqDci3Xw7TaLQeayWWW2yy\ngbUUDJ0F27pWyayYsr5XMkxgjSC+k8OAZHkW2kEQfnpv0is3zc/SQQ3+6Gnv\nkELLfQG4UN0jU08hhzESqlGrc9dKTjjZXDcl3b9U+E7TlM4wAkqvgcpK2ajs\no1McbZWssgzFiZzGHk2x1vnhoR6rpeejNSQVV3m+mySN2ad2OiRPadzklZQG\nrc7DzWWmwwoevxvlZNpM+dI1Tb58+h+81lRAlkIJp6DEuecZ1Yh992dw+MbQ\nBGv4S6LjNK1lOcgptiRAC74qrEmd7cviMj//Tpp6LkPy0uT+rgg3+ea6wsTG\nBaXdyZ15+C0+ozjQjtm6cOrmzuiGG9lYx4grYrmhWC/ofazWCGBc9jy+I4bw\ndL9F\r\n=t8bd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"65ccd7d649b4b7586890ddb3d497cd619d30a31f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.34","@balena/jellyfish-sync":"^6.0.81","@balena/jellyfish-queue":"^1.0.27","@balena/jellyfish-worker":"^4.1.48","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.67"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.80-renovate-non-major-65ccd7d649b4b7586890ddb3d497cd619d30a31f_1619727426699_0.6806961133935094","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.80-renovate-non-major-cbb14ff6153ae703b02ba5a884566df148351133":{"name":"@balena/jellyfish-test-harness","version":"2.0.80-renovate-non-major-cbb14ff6153ae703b02ba5a884566df148351133","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.80-renovate-non-major-cbb14ff6153ae703b02ba5a884566df148351133","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f1fbe19eae61da9a21d874a8a1202daf9333de9f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.80-renovate-non-major-cbb14ff6153ae703b02ba5a884566df148351133.tgz","fileCount":24,"integrity":"sha512-siqDGWvfK0NKKu5fTmHEhv+Wm094A4DaxuYfd0uQ6aunnXHKPi5zTA1Wkk9o2Nukij05pu4QL/HSTDqgJMOjbw==","signatures":[{"sig":"MEUCIEa2TrHYy6bt3n+uxlCFKUMVdu/LrOL069kQSdAahUi0AiEAzOPeYki+ylMIbQ1jveCd/wtk0A/9OgaIbh/OC3gGnc0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgixVzCRA9TVsSAnZWagAA254P+QEIyn+uPRmR3XG021Rp\n/T5jgbuZdCK10LtYJHHqDqpuJ3XQHD6drYHWHy//NQvMQjyMOPioGSZTEP/1\n+0GxQYEM4Wy35T2KCpwFXLzj69l7xwHaMpxItPZFPwxj0p83nW/bSzEJ5OKU\nP+Qlph9OdlYx6Nola1FecMBb/Gk/gMvPOS5RrveBfiBbcXjcTeTyyG+ERMf7\nIUM53Ux99/elgDrmsGnxn5JQd5BxQtMT78jT/F62uXgoUt7fWfrHOhKM5YTr\nIRAnOhZ872SercZmTEEnRr/18bO003gDoGkUbdu0OStl8Doa7CNmw+n4mxKu\nof1Bn8rHK2vhPtTJkDfUMvlbz++UrvKOaGWPgB5PHCrG9E04R99juY0K0UWL\nT9grpBK55m/RitnfoVZ/74pmiH2KR+QfE895cEXlAgnmGt74cKlA2yEv2A18\n0byROZ7J58RZX+DbBJMIwjdN6TgGsFBM6/PTV6dlatRtsEEj0gj+7X5X61vi\natJrBfpe4Q/d7AtyGdPzInZs8kb35TmgcoJ7zdx7sYYQlN/jOKRCp+MRQi7j\nvu/QtiI9Vd3X2NC1cwjkpq2mbW4WELbB1J77AoYpCDI4DQX+oFdxRGvuR8jU\nlV2QhB4UcRYynstmkTKVKElx71p6h32ckGjvO1l/VbnQ2qbGDn4L5HVQ22zC\nCkCS\r\n=oTMa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cbb14ff6153ae703b02ba5a884566df148351133","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.34","@balena/jellyfish-sync":"^6.0.81","@balena/jellyfish-queue":"^1.0.27","@balena/jellyfish-worker":"^4.1.48","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.68"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.80-renovate-non-major-cbb14ff6153ae703b02ba5a884566df148351133_1619727731269_0.6411620572295198","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.80":{"name":"@balena/jellyfish-test-harness","version":"2.0.80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a2d44da95127ec0ce7812e039bdd5d79404f4b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.80.tgz","fileCount":24,"integrity":"sha512-c8QL58Zgq6t3MhiFgqbaUuO1fQAmgXywOsoZ3Myp3ZIg5riB8be1r2Jy1+qfTvyihbQ9Qsb1DOzWOWDaDLpf1A==","signatures":[{"sig":"MEUCIQDBgUEqfpls9IgvGQI9GfCSU5GC5dx8Qa0GLSFYZFYWUgIgGI3KvpZfoNIST/mHoLu39G0B8t137xjFkVE0tOCX7QU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90007,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgixZiCRA9TVsSAnZWagAAi7UP/00wxAQK7KvBYcIjll7D\nBzVd6Aer1MrM1kYkk8A8KUlUC+ts5c514VQQaVR31KXv9olHKQaTKKz1Wc8A\n0+zB8htMoobS5KzdaWb2h4eREURAEAT3KxQMcxBVMoQJ+FhyFe4ukP4YNVhT\nFR7uqmLBmCSklA0Bk1PUAOvQDawFKYe/s8KSbGOpkcAJh9NLFpOhx90TsYIR\njjdGZkZL6u2VUTjjBJOeW9f0mthouDoB0tr6FOIbBQpHS6IF+yIDBHMI+2Wc\nhSP1RXkggTlOPMYBUoYlfC0L75Me09h74VQmW+E4poWbKau7TVZ787cJdMHs\nO/JgDPnwMw++YyW+PFMy7fyu8bISc1KavAjnrApa2PJrVcyk1O5UuBqRABnX\n+d43DVE8GNpiKFMvtPhoANz6Sqm1YlUtpdPI86oej8ac9Zgirm5bk0kXiUlI\nSxns/rSEBnEZF6FShylp5U5WqJJSCqOMkus+hXofETUfb+cd7AWefTioVbUH\nigGUxvc2KCWGDp4yRCijlsXIdxt7oLpOfn1EQ7Is2P3+PVe2a4N6+gYAri6j\n00FN9bJTqBWEO+kvHe2jsQn/bFJrzY/0K0P0QUh6V0svJnAWaOqCQK0HEde/\nWSiXm1Tw/xFTqjJSuQIwm0jN79euIcNrg643FbTtWIP7u062UXEDsVtAjzpI\nH0gK\r\n=28ye\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e87aa2285fb052f112c4cd29f334c76071e9f570","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.34","@balena/jellyfish-sync":"^6.0.81","@balena/jellyfish-queue":"^1.0.27","@balena/jellyfish-worker":"^4.1.48","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.35"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.68"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.80_1619727969607_0.8170817170785045","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.81-renovate-non-major-ab86ddb7340f89b4b9322b47022514cd78cea80d":{"name":"@balena/jellyfish-test-harness","version":"2.0.81-renovate-non-major-ab86ddb7340f89b4b9322b47022514cd78cea80d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.81-renovate-non-major-ab86ddb7340f89b4b9322b47022514cd78cea80d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"736d6110a98aad710d59bd346723a25cfefe93d2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.81-renovate-non-major-ab86ddb7340f89b4b9322b47022514cd78cea80d.tgz","fileCount":24,"integrity":"sha512-69bkV9iUM1BcIbmVLZiZ9W20entsRJ9IJYRXGmeK7JxRgHQpAPIVP/DEUiZONBO5D615SmSXszqPfMCeBzT40w==","signatures":[{"sig":"MEUCIQC7/QBGrlnJwz1xrdb3e5kASYJNGDByPM4vegJqrvm0TwIgOpUiP2r1878sBtg24Shf5nHwzgutd/z5qhWaPelhxC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90136,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgizTUCRA9TVsSAnZWagAAfPoP/0Guu2BvYCq/TJrdZlH1\n/uNOfvm04Smg9gaT2EVTomJatUh4AS5CQzgWnFYk5/fnj/LrCFkesA8VMW3d\nIosNKDmEepNN05NA/oVsy2KxmUvCGueIMzJWcgss4/5nQ4P29dEqiAjlfPtz\n5PtyJO5327NC4mCSlB/EEM2CKQyTyFGmo3rWuV4XKv7TNx5+c3Wd3meHgPP/\nR5pTfRMcmk6iy5QKDCAzTOoayIfC/Uo5IMVbd5rVm+JhbbBus4QHkyMS/vaB\nqSJ2/QkfJR9VGTzJRIPJ92dldNyopq2Am4tolkZvPqg/6H7K34Jk6wSJkLZ5\n+TNokKmaEIn0qo3GR9OvDefXsSGNjP0gnHRMXZygs5/jgj1EdL00HsBBKROc\nc9124uJr0WFAPvSYZauvU6WYcthEf6J28KIh/yYP6CWcGGhYBLRFCWwBm3MA\nBzrLqzh9KuHd21ggcNxDb60yedhi4/IHWNAbYbmehrhFctJi6G7kOADjrDL+\nCT6O1LK7u7vWofzq7BvTMbq7gbw8kDfHo5EoK7hSC7/ekgFvAdA4/t19uoFB\nGD8tOjNRouqvIahSFr+i9txhWb7STTaS9dgel5k84LJ7bgeKzZtkHGH4vkL2\nNJiPLTKvMjhFvmH01yNB3AAXMhWvggQmr90Js6YY7WN9pGygTjmFshs8dqlL\nwMeU\r\n=3fJl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ab86ddb7340f89b4b9322b47022514cd78cea80d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.35","@balena/jellyfish-sync":"^6.0.82","@balena/jellyfish-queue":"^1.0.27","@balena/jellyfish-worker":"^4.1.48","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.68"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.81-renovate-non-major-ab86ddb7340f89b4b9322b47022514cd78cea80d_1619735763817_0.6665967761029836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.81-renovate-non-major-726baab442a38e243e4eeb1e2ccde548fbf6ad03":{"name":"@balena/jellyfish-test-harness","version":"2.0.81-renovate-non-major-726baab442a38e243e4eeb1e2ccde548fbf6ad03","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.81-renovate-non-major-726baab442a38e243e4eeb1e2ccde548fbf6ad03","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e112aa9b5b58273556a9e3cfb1dca4472dd6c54f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.81-renovate-non-major-726baab442a38e243e4eeb1e2ccde548fbf6ad03.tgz","fileCount":24,"integrity":"sha512-NLczY375ZCv6ax5OLqAjBO+thQ+BkrOC8MWuUKYFhQJC4ckZu0QbGrQ6g5v3vurmYLMJ4bdFSAe5unFej6hmSQ==","signatures":[{"sig":"MEQCIHRLO+MFXcFagO9i7OQx/CqAaGcapbo1a9VwQWE2URsBAiBHd2GKXLzAbyjfBO5oglizqjORwcQ+rhpNOMPTsr+MEQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90136,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi1p0CRA9TVsSAnZWagAA4E0P/1KR2KFc0ARFnl7rSncR\ndAvGt07wsQL+rmzkdlC3TqyGyjEzUgHDnwS1YdNrYjJD5EpVh7/trQbGp43E\nrT/nhuIvgqEveFgqkuvQgdPaDh+1b9/9EJK7Q+lI+tDjNVFHvMjMqldEok1x\nYw6PRxck5e8SidQaxNFLBFZjrmXcl3IZAjmNGfeI9yqji/fTiMI61A0qMAx4\nW6yDcsSPbuleeCoXePfrNPD3GefchSEc6VfLcyy8FwDNt4/WLt2rLTvbe7e1\nUUhPihfSzx8iK/g1LFm6h5N9W3zUVx6bbcT93I2PTseNHu/NhutgSY5Z2VE6\nyC6B7ZLjpDFQuTjhMn0p9eeaBH87pADRQQ1fRjPrOEuP/xnyLIN2dbcQ45FP\nE3MsXMz0YaINo7v96YEBvGDYfbYQztly8PEqG/MpqTpKn4sE8k5f0QJqUxR1\nu5QaNDL3lvANx9Ci1Im8xOh236JLzRtdc9TAoz758HpJViuR9Bh9ffIkVNPq\nAkwhtqbPB27N3BmGnOkHvsYs7RFM6aYrczwtIEYQm/hiJNcBsfYmb2SqRCq0\nyvYrdLCJNpZy7VSeFGxfqVm56sQk97aqNwZlKOEVJ6ElFWuYVb5SqbkyUSLJ\nVzDBiVg11jtwhL4fYpnoAEuiy2W+QFXzObmBKXYPvwlJIIDdFL6l6OkyQlQZ\nBkxQ\r\n=+kwN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"726baab442a38e243e4eeb1e2ccde548fbf6ad03","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.36","@balena/jellyfish-sync":"^6.0.83","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.50","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.36"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.69"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.81-renovate-non-major-726baab442a38e243e4eeb1e2ccde548fbf6ad03_1619745395781_0.7484445812125471","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.81":{"name":"@balena/jellyfish-test-harness","version":"2.0.81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.81","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c62745e0fa58acb2f7c63fbc7a80e619025a307","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.81.tgz","fileCount":24,"integrity":"sha512-5fMMppzm6rhE12sFIw6LebpnhgNoXUkQ+viDTED6YtvQXTSPZ5AbBLgLk4y1S0MH5NR8VgKa3N9YiIwd9ybrjA==","signatures":[{"sig":"MEYCIQDwbKPw/e7aM6JT4RCFh/wXiVGHcY+dyHrke660vqMCiwIhANFzJ00FLiXOdzbGRkc5DlRK1HkfOpP4r3LjeWr3w7hW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi1s7CRA9TVsSAnZWagAArqIP/0LzUHEHD84sYSG6Gn4b\ny9faVc0HvyewufFTer64i3jVWE3jvqGeTSeUGbRzEzAxwuDW5fb1EFd4uBNC\n+yPehV87OcBi35j5ymgGPKmAJ52xGc3Hm06ty/UeaR1hz/g5mu2HPLNjnYcy\ne410B1oT/Uj2WXcpa07/BGaBvBRiwWwcDmKE0rtk7U5/6tRKDgUxvPF3NOjB\nRqTMM7dhg3jjDvVv1DW8w1EiLHpLeHhlk3e0+YvAGB9sniLvGQ8CLugAWBkR\nvsiQseFdffmhpjD40W4v9iwtCDdlNLFjSwaJUD4sJEkiS1YxgslAcS20ljwf\nBR7mpc8VXI829dcHXOFdZRyHQJC12d1l9KAcQQL6gS3YSKg9xNWdgh21OG3o\nTZTbh/9KmfbBV3VpgqiDyfampeMH08iJFRjQ+Yb3oOXOF27Jm7Pkkd7BEaf5\nvftPHOkA8DyTsvICWyUv9fFUMtAYIDJl3iQYza/oeEXZWtsXcAtcvfRU8CPR\nsgIT1/xYjk9NcrHgqZljEIh2N2BzgKJZpZhl9HIxifZ9oXmO8FtgxrryNg7t\nRooCw/3Rn5Y29cqDvteDDPiIjlzjYvCqKXWE6li93ss7D4jG2Zlo8Sg/LCta\nquO7sE8PwD6IC/qfIfApO8seHBQgiwEcNO4TU4dnpiLLB1ewLc3fnfCL/82e\nmTsp\r\n=xWX+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e7a4b53be20b70879146fcec4a1293a1a4602732","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.36","@balena/jellyfish-sync":"^6.0.83","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.50","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.36"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.69"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.81_1619745594732_0.5196959802224208","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.82-renovate-non-major-67d0a67554a7f356e299fbc6d4deb489796c7f66":{"name":"@balena/jellyfish-test-harness","version":"2.0.82-renovate-non-major-67d0a67554a7f356e299fbc6d4deb489796c7f66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.82-renovate-non-major-67d0a67554a7f356e299fbc6d4deb489796c7f66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93a68bb3c21b33b3db6ab644e0f0e24c410dd5b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.82-renovate-non-major-67d0a67554a7f356e299fbc6d4deb489796c7f66.tgz","fileCount":24,"integrity":"sha512-cv5i43oG8ztSJe1X9LJXS5ROskHRBp/WDiBfgJEfqY1uw8irA97RMN5MD/fXwdaozNs/5ks90ukjuHBPditKag==","signatures":[{"sig":"MEYCIQCQZRFt67a8f32sJBCQ06RXDRamQ+iR2hoRvZisSSjsBgIhALeTdMg5q/Gyh6HrgmL7y13HczGuscx9dRQ3fw0riecL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi3d7CRA9TVsSAnZWagAAGc0P/1ygjiCwM8uUHRq34qMn\nlMmp3eQFLceRxKO8H7/VYCGMCsIE/+LEnvfxsPyNhRRrSNFR/bskMqWWFvT0\nAh6ByfUN+q4OWmegk+L/7ex0YtG8pM19qpNXuDAzceqA8PupI/SfSbl9DJH4\nnfHZc8ajuYW2rZSHS1sPmr9wYu1hS+aT61cZseHK1WUfpHjBgzdENawtWzQX\nDxzDvgflhpK2/oGeyCMlOx6qw6cfjB5oll27oqd4Fuc+hAMmbj4zJXBPsipq\n9a5WKc6KO532lOtx2zUPGKEklJVPqsGQNrOp6cCv6BzmM1ceV3xyKRZeEJR/\nKJMRwnhZNnprWvycjSSb2LIUW54BOtD7OlMKTpU69Or4fZWGeFoFPckPTwhi\n7aeskyyftLtyOVe01YoUpe5a9/GK55PeSS7oage0TtAWXvGi1F98AtvYqIgP\nn0YNy2puxOK57qOOKQKitJVc/XdNMc/RwMnGrDrsi9HNjeRC5yoZ5D9Mjl+O\n611QWsnEtfT1NPSzdEBnO6diNEC6POQjfkTf0OCSnJzKfTBEGA7vxJtVCYOr\nxjITueql6QcdgNY8UPFPEV0WOWIezKVdcfgtYDU7sIDksFNouMLcDW9zPMCY\nKYszb4HaPnk20sR1mpjOQlTA68VviYU9by8OfVRZ93iHQtQbCTejf3QcT20j\nPcUh\r\n=0KxY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"67d0a67554a7f356e299fbc6d4deb489796c7f66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.37","@balena/jellyfish-sync":"^6.0.84","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.51","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.70"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.82-renovate-non-major-67d0a67554a7f356e299fbc6d4deb489796c7f66_1619752826997_0.3702151070489257","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.82-renovate-non-major-398cf9c0a8ae59fcdb9c8237823256661a1556a0":{"name":"@balena/jellyfish-test-harness","version":"2.0.82-renovate-non-major-398cf9c0a8ae59fcdb9c8237823256661a1556a0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.82-renovate-non-major-398cf9c0a8ae59fcdb9c8237823256661a1556a0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"155cab817076298f12c5306e2e387767d57b8a95","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.82-renovate-non-major-398cf9c0a8ae59fcdb9c8237823256661a1556a0.tgz","fileCount":24,"integrity":"sha512-EpDdaMYIEtcxmivOp9RZzsC7ywg7347nFkjnTuL3SQFuDXK4EtUOFuUne/ZmIZhZKYfdAT36vOnDYbp4vOr92g==","signatures":[{"sig":"MEUCIQDutnZw8pw6gi1btCM7ZaibN2Gwy/ptHKDfoyPaj9VXgwIgGVM3zrYVi7xOWSYIr+5ZX7zDyzuHsZynPAdee9Wizio=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90205,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi3iqCRA9TVsSAnZWagAAFc8P/0s778vQVhmcFkcSwAqr\njVIkahV4ByWBAC1Wd9s9h0MFYZktXr545RCk/CHRcTcTutHxoXRq8M3rPl3L\nhCzsom0ljNzlpVjPXkLpDxudtyWQ1g+tuViVL5+E29K8FJ8NgWVNnv2TZnfG\n5Tj7MliQ8lw7YlZeKDc/HeA8H/ITZqBubfIkkGn8wHydXLrWzDSmIE6LsiJW\n37BX2qgfPnbOnLNsoNYZ2BdEGMASjuIbvTnTojBRfiqlA8U1MGiiDnxtaRbY\n0Ua5C1sG8ANVOi23Pghd5y2IDldpKU8ks2mL5swVkE912E9Jpf8IwSpOHf/d\nEjHhNnY9EIctd6sbcAXKYjGxRvvoAxQmcDGKQIWPyGKVuoyzB3YITzNGc5zo\n0YKnI3PSVx9enVZ8p6hgolJNm9EUXW+XM+Y9KPNf1VsUr8L90gFQ857+y3jE\npOfZ47/YYoCv4J58MRFujcaS7ALFZmCoGdZF8RK48wrXVCZQZCxyWNn06i8x\nN25743+CIgOKlglT3d+ZVIQvu0G/yKPC1MrPBbOrTAHep5KEEj3lrC09Zt40\nXDK5PjvxAEXWY49OYQmdXVyFWSaBiXhd8ccvK8RF/KMwEqinm8CWgIMGg4Dz\nR/WMNQynN3BmiNWvn26QgenVWv07qMpOnnGhb43qDWPKyk30Uh5pd+fd5Bpx\nyXvc\r\n=+qqR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"398cf9c0a8ae59fcdb9c8237823256661a1556a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.37","@balena/jellyfish-sync":"^6.0.84","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.51","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.71"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.82-renovate-non-major-398cf9c0a8ae59fcdb9c8237823256661a1556a0_1619753129837_0.9503937863410541","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.82":{"name":"@balena/jellyfish-test-harness","version":"2.0.82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ec3d8fcd0d9ea2b028ee885d33db4fdac7e76177","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.82.tgz","fileCount":24,"integrity":"sha512-qrnG+ORIwv8UJwdMfkNeDmDUSBkdBq9jnxjtjje+6J2psqvb0wBUsulhJoZJyKyRvmc8g+aoKnW0UA48chLlAA==","signatures":[{"sig":"MEQCIH8AjC0mOxo24d/6AXXFKowywX5QzpAi1ZDTSnVFRGa+AiBbjDxIO5zKiBeEl1C3Vu7JklHndabCrhH4zqoS9TLtMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi3mXCRA9TVsSAnZWagAAobgP/0Xnv/6yVq0obZ1/nJ8t\ndyZJBNgGbQbA+q3Gx76AYNCSIHYeLd+tTUztpuOUdYuJn5wHvgM3lxEh62Th\n+CWlLQWXZ/x5Ah+7PCUWYJvcxgEbG8fBgmRf93EVo7svf5yjbnajopQcUh5i\n09G3IOQgn0uR873dxrEsiS42lt1IG3BvVEwTFvt1Q57ZrOrngGnt4Dinnqzz\nx1HHpnOSrwUUlpyqIz7SPsFR3UbttOZ+2umjWNpvZw0xJVgQLKHKnU7M1Xtq\n2PcemeejnLzCxr4vtRCIWd86glf2vfxqUJa0nd201cdTD85Plfr/SSG7pR/Y\n9rlC8pgmJ1ERR1u7oJhH5V+N7ff0Vvf5E19fbXY06VjK7qv+I4hFsqzUbnBm\nx4cMqqyTjwnx2fbZtXYPLVSE+fFRS0MNsD14FqIHNoasL7RBY5trkYl5HpQY\n50OnM/BLKKarIrFe00wa3iyYqUVQJRSkoIvvEjKfDqKyRELOJrhVuiZh8QiN\nid4aP3ZZZginmfH8CPjhbmbago5qCY50adtpZZDPn/bRQXqlMDfOP8gmErga\nJVx2a4k44mKEUtwi/ewVIO+4PCtoO+WOhZkjrj1vk8xyjCQaLBSPO/Sxyv+U\n3lYWvzueRAluDT9RMQ5Yp+4DLeTR7kzUhxfDSGw5dwjHDeYUO18Mj3u5qDWq\nVXjP\r\n=LNps\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"93b148420aa02a395f9b793433f1e9de109a16b7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.37","@balena/jellyfish-sync":"^6.0.84","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.51","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.37"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.71"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.82_1619753367195_0.7081084368433546","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.83-renovate-non-major-97e4ee02d8f385a1f39bc472561e38fb80b1f28c":{"name":"@balena/jellyfish-test-harness","version":"2.0.83-renovate-non-major-97e4ee02d8f385a1f39bc472561e38fb80b1f28c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.83-renovate-non-major-97e4ee02d8f385a1f39bc472561e38fb80b1f28c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddb7ee11f98f362aab56b5e86b18ac2315bcd7c3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.83-renovate-non-major-97e4ee02d8f385a1f39bc472561e38fb80b1f28c.tgz","fileCount":24,"integrity":"sha512-s3dFP7kMeeAZGQGhSGy6ihcmwR6hGp9mIdlWuR5UG5ZLQCEIP5gl76VDyOgK7Y3TWQGy+tkyaq6W4J+jiHqWoQ==","signatures":[{"sig":"MEUCIQDPNOhISTwB1m+1XL4xaK+H4auUoltm6LpHE1HwBOP+WgIgcO9ctFEgK0133XLjRLueNlmWLfjihEiCmZmK9FghTwA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90309,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi3rnCRA9TVsSAnZWagAAhakP/1hhkICdF/AoaUMTZkCH\n9mg/A6/VFFqV5Pb6czQhpTMEK92Wan8xZdhEk0DoQ/8JV3BCcrQrNfxmj11a\nclfnoZ8PbBeqUJa7wWxo0LfiVZpBOeFTFJPfo7c/kZtn40yAv3O5fA0GBtmX\n7WqinyfAdJLGrMlf/JhMMbs9F2bj6V+tKN5f46iGk50HTyTHFk7G8A/wpBs+\nP+AUqMvkOHZJ1UkyT3ll90G+BkIYneQvJf1Gh02MV1TVaEi1pYVNetlExTgR\nINWb/agZ9AJZ1GhPTf5ZsxGF0sgsXKs1h79itbOHQH5uja5/f0zd7WuDOye0\nkE09VMUWxFyIkiFucIvxakiIeYC+1SwsG2uyg1EuW2CzOOSgMCWtXvMqwX93\ndfM2rYNBafcmK9O+twewV7eR/0/k0fmnHxTXJpqx/wVfX1ylsRSW69zdvlG/\n5FvZuHxg119qWTR3rY6xx2egPXQGhhqmrOPbhShQTnGWYXZfG5C07LNuzGDy\n1wQ8Lj8c65MGFwLCldy5gjLD2NuUjshcdaoQJAa3OM/6atAls5ujTQbAv4V5\nkRHozlYAh1RnQkb1z9D+EIurOSnD9s+/58qp5z8HOO/N2CugtLk3f216a7pa\n3t7y/76pZphNEvAeatIZSN42XaCMuIWjZT5gO/DlW7sOMP01p6bMdGhST9GX\nSWjl\r\n=WTQl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"97e4ee02d8f385a1f39bc472561e38fb80b1f28c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.37","@balena/jellyfish-sync":"^6.0.85","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.51","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.37"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.71"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.83-renovate-non-major-97e4ee02d8f385a1f39bc472561e38fb80b1f28c_1619753702814_0.9376881817604938","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.83":{"name":"@balena/jellyfish-test-harness","version":"2.0.83","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.83","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"481681395ca1d50a2308fb1a403095e08b5c62e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.83.tgz","fileCount":24,"integrity":"sha512-c4VmFfQUdf50sH5l41DQQgsZyJBv77qM7OwRooLwVPLn2Wr0lnaPgtSwZcz47hWPjpx0AIJzRhSLsWE7GMfdcw==","signatures":[{"sig":"MEQCIH0H4pqpU7YBOHPJwOWGgz5hjjz+i78DT7ZriBN5JrVuAiBsb5AtKWfnWjxKr6AjzWJPwGnobQ06GHuoWMowT2yk7A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi3uqCRA9TVsSAnZWagAAT+oP/j9XVKB1EbK56ntGkfmb\ngOC682FPTrQubzrkjBsCnNQLC/CAYcJx8bYu7fqyYAOwWJPLIkRH7tguOu2h\nVXFwoLsBY7LD3/bl5dDZPFHISHak5UqztF26BLpmAnFmTVfw8wVeQiemBHoR\nlUlS7uFLt0cIrZRckWE9PAI0s0COwCXqvovKHd4C4Y/xNa7rxcr8w26uD5+N\nRnubFlk/26iYg1RNRha0Pxsfkozh1Kjbg5Xyl7Qv2n1Y/36SRlEbbeh8t5HE\nJTMAm7sbgwBgqyKMeqQCnsSDeGMY2LKp1u4WxbI7S8CkYt3GK61+qE2hNzvj\nt4HLt/i5yJMHIhE4WFY4ePIJasosQNWWm72OWhD7fLU9uc/bjO4Ubcebc1Nr\nXDqK6xP6sCeQhkB/eR27ZJsTctcAIEp4wEv86v/6g2Ng7fM6txvEwZxdfwce\n1DGPFzR6q6ZeT8BxkqzvMtZjvwhNWEAzhjil4fmPpTXN4I+OdH5FYcy2/tNh\nwcP+7TJYGCBqqC/HH1hI3wIOv14i6DpAnOl2O+MjyAbyDXTak9SVvhAWsDwT\nKNR4+FbKCTeRVCUxw8Z2M0SG5aImk5EH3yy1XhShBr3sPECMBN83ZGoj6r53\nT5Wqz95Ty03M4FlF/mDVG4goWwvV53OqroissFBJsjAj+Dt3k/puctuspbLI\n3+e1\r\n=3bST\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dcf0429cab4e9c5f1bd45fffd614fc58df44ccb3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.37","@balena/jellyfish-sync":"^6.0.85","@balena/jellyfish-queue":"^1.0.28","@balena/jellyfish-worker":"^4.1.51","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.37"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.71"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.83_1619753898496_0.24925129759423603","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.84-renovate-non-major-e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce":{"name":"@balena/jellyfish-test-harness","version":"2.0.84-renovate-non-major-e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.84-renovate-non-major-e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"286a139387b7772cff3c911d7670559f0253cd85","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.84-renovate-non-major-e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce.tgz","fileCount":24,"integrity":"sha512-ayIv2eZmZdsmVOcVKY74gUcKFPRrP34Tw7pIbDwHOdnOD5idWc+AlJIUpJSQp34N8uAkMqoV6U6kDg/IpSW1JQ==","signatures":[{"sig":"MEUCIQD1wm0aMNZ3TQ3b1w5MqKjJmAtfX6G+/qXc/VKQ0gfa0wIgGt+EwnCAr0XWt4ULf11w2u5tPRBzW6ZnR0QND7oM5Oc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90378,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi5HpCRA9TVsSAnZWagAApPwP/0FQoJtZqgkMJjljShoE\nUETgr0U/XjG7OObVSwJ7WJo+DwVPW8no1ShDclJJDlcpLfLNcXENvCWx07S8\nKW12jV7bKPHm8xTrCxMDB5dslHx2AdfOyUnvuFdoZQLYhiLAlK30YfXjO+nW\nY8N1AxzGpeefSTrDTsWOUgYdBdVhhKgVEp/sWDrWz5K9UK4W+UG2o/Nh9/35\nSx6wT/7jw9l/SPaREDfItha5lD1lF/w8/sW0GsreKfJWq3ka2eXFlln9WNVW\n7Pck72D9/3dXrXN5hgvbS9BODHlfqqkzT18KCTgeWAxPltLBvq0vpm91/EdX\nUyqvU0EBuTpL4c18P11irm2Q747SK4Vj04AjRclLFwye2WGYcF525iSAUIkz\n6HiRPUWUhz5Oiiz4zu/Jr/4erJU5Yt1n3qM2Pryf3B0HJDdfL3EjDppEGl5J\nd+T7KHvcN47gJcxiA1hmic1xB10xSvCZInXLRkcDvYQSqAYpOXASp3wNwjt9\nuUARQSlQoiwekqdWC+15Yp/nIY9MkfoIEalIpLVGxEYOCqcJffj1loNfI51G\nCEIewGk3Ixvf+pxXYqH+tSJj4rSvFyqQMIEYwKVmKqBuSZS1U1eV07s6De5k\nOC8C6FuZe7q2Kop9nGHyeRKyUO3RcQ5mrJXhrtgPH3xkyMDku/+R62sRXHxg\nF18N\r\n=HKN0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.38","@balena/jellyfish-sync":"^6.0.85","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.52","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.71"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.84-renovate-non-major-e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce_1619759593219_0.5216043646586708","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.84":{"name":"@balena/jellyfish-test-harness","version":"2.0.84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.84","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e8cb73823b253f52307349a9f3d3c01a1a05d27","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.84.tgz","fileCount":24,"integrity":"sha512-GRyy1PCi4xBdPrpanl8kKIn0XcJG9yS7B56OpqAyvuj0Yg3m4XTBztI7OfILgLT2ouN76oyJ5fjlNoVxgHYM3w==","signatures":[{"sig":"MEQCIDZa1JR6DSzlaexifUp9kWq1b5OfXzZKQ7cBiUQBO+ppAiBBcwcjtnxrOV+xHc5A0xHblKolvlSb/Gh54SjwOFywPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi5LgCRA9TVsSAnZWagAAwwsP/RvR84DXMah251KxPAAJ\n5/4108Yprvf1PYfsvjf5ZYbyeo12gnIqsLKb2mIOjLuXSnAc224H6Cq/IbPi\n44AX7aRGDI5YYBN33fh3cSI7v5k0j7ZAPZ7GdaVX62FSRQEQSXyCo93KvDrP\nv4Sooi1YfuaPHi0y61NM6ARN0BXDdJZXM3bKUqpL9A8VrWdHQModSX4uMBKo\nz2ArOm6vZB1EA53GReihHQwsCkrzaZ7XH3bTbVUUbV9rWyiMcnjWso4zlbj8\nCzRNYLNel16PFPTYDEmrXEpywxS1b6owmIPLg034oYK/vyfF/xSmYqINF+Ei\nNsCtdaD4U+ffH+T0vR67+tcqPqVOSxGd/JB2/jtm14FUzAcxkPpWsqA2YBCq\nVIDvWWEH5CXppibwaekOCZ0buXy3bAYyCvUnCTf9bJxrgWB2r2A3d1hP6E0W\niImZCsGTRj+OWw3VvCxY5MNBcQCP97Wc0lS4RPJEq2599uZ5y7F024myEBZe\n/qwaKr5DPz5M+YjE7bJxB14BRa+QkwxUhMPgBcNU6WhzAD7JE/qGVy5v1suD\ndTcKy7Qa0DvURidmKOSX5Xh9sBNVkC8/kb6kwxatiz5K0Wi/Ff2OJwHz+wGG\nm3rweo5sgGz+MqXzJVaS+dGaUeqS8boq1BmssodI/xf5FjTmS0AQLLO2l4Z4\nTUSa\r\n=sQ+W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d0fac5f066608bc0b80be522bc5894c627568683","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.38","@balena/jellyfish-sync":"^6.0.85","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.52","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.71"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.84_1619759840055_0.6057351410589096","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.85-renovate-non-major-5ae99a7a75e08fd1dae97888859f9c8fd260ff42":{"name":"@balena/jellyfish-test-harness","version":"2.0.85-renovate-non-major-5ae99a7a75e08fd1dae97888859f9c8fd260ff42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.85-renovate-non-major-5ae99a7a75e08fd1dae97888859f9c8fd260ff42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"173b948a103723112fff00ae7922f21db0ea8f1d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.85-renovate-non-major-5ae99a7a75e08fd1dae97888859f9c8fd260ff42.tgz","fileCount":24,"integrity":"sha512-dkPuhzhYLafNH1SMoP4retjxPU/bkzl9kPo/U9PDYrxR9AsTePZj5m9IYcmR4MGVSqjgBHOkdEAzCHgUl21pRw==","signatures":[{"sig":"MEQCIDDf6mr/d/OYuxvefKIRvYr6ksEdrWBTeVvT2/95OHGAAiA6/ycAtng4mWv+uVp78U92RfxELrG1Jv9H41BhvWs8Tg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90483,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi5RKCRA9TVsSAnZWagAAt2MP/3siaBnSyfnSJcApJKuL\nXZzHrs5aoZtxqwCaptQQKXSdCc6xd7lACjX2nzo8fXiM/9/zpHPdaSlO/yJu\nIxhku4QOr9LvrJSu5M3zXDchOs81wtjoDN7V4435WkrCwkKm4tNz0Qf9j7+u\noL2+wcUkyXCl5Se7DVsqfr4anhqP3W6/6VOyjidxXzSvFC5ckz0dni6+8ha8\n5k5lBOQsp8wiodzgXG9XeOW5PAr6lhXxPQIGfOpNcgwz3rtxDEQnsZZVVtZS\nBGkYeIACXzqvec6hLG+XnxLgwNvzNu9i5snzShwaEkeoT8Cq3QZJtTmsTBhf\nlgvZcgi5afJVJhbZH00nu9WQMzQD8WU8dkPjFuzby56o3MFku7AVhUJNZKXN\nHCcQs3rD/wrs40Yy9EhRGJN88RKh0C4NXOEUmoDosdeAyOqUac3tT+Ii5Vi4\nD0sivKroeIgyeGJvdTNBvCw3YzZmdEbxx9JEw0jEIDsanN0SZkzeTdPPzD8/\nabHyT5+TJEEaJOdRoNtXux9ZmPKwD5xtBWv6DZ5HWsdxUHmJQN9vyOBJsnDu\nIxiUuohBOQDtvk/jENg1r3mkhEocZVz5Fy5OzhgD+z0cx1hGnhFfd3QbmZc1\nLPNGJhc2eqKPSsXlVXa2bkh4Z1Cq1cHbgku85Drw4cu1hHk+VCM2yJL27Gde\n1dYt\r\n=+yxW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5ae99a7a75e08fd1dae97888859f9c8fd260ff42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.38","@balena/jellyfish-sync":"^6.0.85","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.52","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.38"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.85-renovate-non-major-5ae99a7a75e08fd1dae97888859f9c8fd260ff42_1619760202530_0.3588906385548769","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.85":{"name":"@balena/jellyfish-test-harness","version":"2.0.85","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.85","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a8b7a7d5d211f0b1c199dbbd29b535a965f7805","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.85.tgz","fileCount":24,"integrity":"sha512-UNJL4/7m0PBWBbm3ka6S5x9ARNXijMvTnzPgwFX0gKvJgty3x3L5/0Dy2lbvn5ov9sGwhBd74yNLUYMqPjA/ag==","signatures":[{"sig":"MEUCIBpFcPWRUApkAUc8UWxjwGDWjvTenj+ppd0E/SGp3ARnAiEAl8Oua0G5Kf0Iz+OJOJ5EMUxTc7I1T61yLnrQH2BiZhs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90423,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi5UtCRA9TVsSAnZWagAA0QUQAIDNeeiUlpx0wv8dW4lA\nbkSFOmkdCugFXYa9rDT0wWp9PSEQE58SHwIeWnUi22j8N2cYRnTOmKL2byqR\nIs1E207yvp8Uuvtl5dW7pWkZ8F7Y7gJtsA44IMq+nYAgszvJ0QMWzf7zXNq7\nmcSc7fysaw1wwvugSspVY9TiKmsSV8t7iHnxqYtGvasWWI3DQ80sESMPRfqY\notQK3pJSJXw+a37+YO89XunJYl/QQXzko38UpjtMAj6ZWSDTjtIKA2SAtpzJ\niljjJ0wAgdILuVFXRH9ql+zxskKzXxKPVvHpaPRgmv/fm8VH3xXLMqOb2o+X\nte/LcOJP/xJGCBl5056jcl00r4o8Qzhk1sHmxn3+Oep/D0N0llONS8oGVbOv\nzA+dL1pS2UC7HkdJXHygDd7aRWP9EOLlWwBG5FacEP92s60CnU2HVqQ88YqQ\nBEHY/JmiTroD2vhY7Dxgxp98W8WVrhTDzaely3cvvaIFxYcc7lDPEDczdDgv\nsGTbbJ/PksXdemRij8fyicFMHZ4eb7ctyq1aqQlbbG0b64fkIaODUPaeK+i+\n22FrnV05nePzWjtOzppil66jNwRnzh9SkwEyqe6KKw3E0leW8HWMuNxlZUsk\nkyL1ATzUGuUeNaO6DLpG9i9IhNAA/OtIE9t2txYFo62k2Lo9GDlfIAd7RGOk\n4cVE\r\n=vNY/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f018486ac4098bcda4c2de60a9a7d58869ff855c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.38","@balena/jellyfish-sync":"^6.0.85","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.52","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.38"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.85_1619760428982_0.8232363548117714","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.86-renovate-non-major-30da07237d55fbbd5f4ece21dccaa58e7ed581df":{"name":"@balena/jellyfish-test-harness","version":"2.0.86-renovate-non-major-30da07237d55fbbd5f4ece21dccaa58e7ed581df","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.86-renovate-non-major-30da07237d55fbbd5f4ece21dccaa58e7ed581df","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c82f31dbf061c352f319ddc03b1488ddd8b724b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.86-renovate-non-major-30da07237d55fbbd5f4ece21dccaa58e7ed581df.tgz","fileCount":24,"integrity":"sha512-oPNvfuacsHcBvlL8kWObdyrMAex7osVICmHsYLiiewhJpG9RiMMaxWjvM/zji52mZbV2dPhQf4QMvnwNc/NjfA==","signatures":[{"sig":"MEUCIGx2D5GfGHQJ1NKUaw+DCs/JNOX8TaYMhnf9o4IK8YMIAiEA2uF1PODeZrsAaDr97LzifbpGA9xQ6eiAuo7Fx/I6G4A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi82bCRA9TVsSAnZWagAA/9sQAIyXulNyl+tWmlPTFkug\natV4o7ceUHEQ+GpXSAaf2T5F6FHs2H4pVVSAiJXQxdFimGJHbEVNstSt9XlC\nc2F7bnQ8sCS8jFvJGenYTKg2atrAB6hj8IKNKgqeHbzMbCqHavHxUy2P14TZ\neZjy0WycX0L/uvG1i8fFmOSjBloqWggbCg4IC0fkhFQPzL1jts8ujIbNsIg1\nymnbTjk1R49ekENiRdTEwNclDchAyVI/ZCY9CPmUbpvYxj9/gyxmDUnc9E1a\no+PtSbFtIC9/s1Zlhg8UYXrRzp/rPQhjVqqw8/CbDCHaaZsDzbfD8e84kq/E\nd0Sp1p5zDMYFxYSGZA2e48scr87fzjDFvciYDyuVnBzPHfU22l7BM5Wr9oMO\nu/GK7zuhorcCyNQJKW42hXei9VoMmDDfpkl36fU4z4uETPUCnAKXTAKIJPZE\nEGaY9OUNMbSaQNwuwn/70eyjNuBwmUNCjFiBIbkJq6jwGREnuKKTbX6Rb/i8\nZG/y5CITOv7sAoQJ/Pr/WevC/nRT1+rwfzo+9x7fVt+SdrBUUV9gKtYdFw5O\nDjYmupgXgHoM1rivCsLBv/1tXWcBzlTKGb5IeqaCycMu7/+WI9lekTVUVyq/\nfKc20KC3aiOWJ9WAgX6LDJauD0tZ3aPXiJpfTE6NQBoJra+mWvgns65pFFSX\nK2vb\r\n=a4rS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"30da07237d55fbbd5f4ece21dccaa58e7ed581df","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.39","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.53","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.86-renovate-non-major-30da07237d55fbbd5f4ece21dccaa58e7ed581df_1619774875188_0.7657934784706113","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.86":{"name":"@balena/jellyfish-test-harness","version":"2.0.86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c037e2730fd8acbad917a8aa0dec737ef8d995fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.86.tgz","fileCount":24,"integrity":"sha512-juwzaUlC29fTq6J9qK/rboHkhxjiYoPkcR+zsGJqGs3hes2h+rPw5g/FIXEGpFXNxKQpBQClZPC5v2+Hf0aTWg==","signatures":[{"sig":"MEQCIDffpfPPUpHh+XDEOiFtXGoX+T1s5Sa5c89i77o7oJs7AiA+w8JlPq9ekP1IFG3Z+hmXlse5PEBFdmntvihzwLWXfw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90492,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi853CRA9TVsSAnZWagAAvuMP+gKdikj5mE4E9yEZBseA\nb2vzd14uCfelKro79tgeaALIbI79moJnvPjuIFDJHhKdHuthA2q0cM7d6Sjk\nAxYHg5INlyqt+dCDFOI8VcstRbb4eP0gZLgJWP9nTZNYVTHEkcfQe3ACf/Od\nNTuynmpgNRLnC6mUM+jlqmLrJygjnW3BLRtkg8ANu0dRv4IScbOCGckbwaj9\nSoW6KA16NFXqKx+1tvwGUbWTYKoN8xvSJ3Lv1Txd10YCVowy5ZYdiPs9PBW5\nrTkZ139+M+KixJkqFve4qoy8qPGbAEDoq+iMJ1OUDbbHA7hryKZd4Zp4OoIv\nWbA167XRfSqx1ibPgyPJ+0GB/aOLoaLKi2vloUwkcZ+PRr8xBwNeZY7alYvJ\nQYHWwMGiabr5NXhVDNqKsLuftX1Yo5DZ3es0RnWw25RkuIj1lU49lUcovNan\nDsxOCDdClUhGYWozkkfS7ox5OE+Dsdjn0fnU3O1kRaa3EIrb72Rp4dEXxR6i\n/MFrId7Y0g8Ffsa+5JSQevcMvzYD59ipls5rn2k/1eosNTMkBGxfoJcpdJPR\niXAJv4FyDyF9OsvzSUGNcuXe2V3uQzyeoCIZ5iSFs9UCmiJ7/Kydo24eXTaj\ngNfej+RXTQyter11SEVP2y7tmCIJleFlVI4V7DHYfAiqqUsbDRX8CtKAwL5y\n2JdH\r\n=4irV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4d5768d5021fecd849565eb25c2236aefe2ab283","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.39","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.53","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.86_1619775095082_0.854094977938749","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.87-renovate-non-major-f616cef691548beb0940fe4dd0e0b3c2277866d9":{"name":"@balena/jellyfish-test-harness","version":"2.0.87-renovate-non-major-f616cef691548beb0940fe4dd0e0b3c2277866d9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.87-renovate-non-major-f616cef691548beb0940fe4dd0e0b3c2277866d9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"354490dc944bb258058b64c7725d774ca5373297","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.87-renovate-non-major-f616cef691548beb0940fe4dd0e0b3c2277866d9.tgz","fileCount":24,"integrity":"sha512-tKXhTeX/eYTH2Ws1mkMdcuJXu9OJUTg9vcnWcQwpa860cp9dLQ3xazf7Krq4EuqhNBqs7uiqFCeD31UkIBIDGg==","signatures":[{"sig":"MEUCIEp3+0l9rIJbVQ66Ru2BoObshxG1f9QwFAs/JVgPtkQkAiEA2txoINkEhmq7Hvx2xzYjcPwO7RQ18ITSOF/yf/qOSe8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90657,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi9A5CRA9TVsSAnZWagAAnAMQAI2RhrJEmL8dA+lesfjM\nCKPLLBjaym6ONHCzNWfCzWPJv4bR+ZIa8ZL5k4VJV4l62p3v/Cg086i4RSEC\nMHj4QDVj/6cT7Sms8QwADvJfN2CzByzDYyUfgcsrIyOV/YFxuT32CiSBXeuO\n+AyA8XZwGPrq/UuR/WMnllPwBKJYCdo5p92IOw4yeM4vKPb+g7ZigcKWts5I\nC0jZtabF8ulFHeZh+4kxzf3K3800/pRmUUxUSXvTAuOKvOyI1oLWINogzRKD\nlGAZa9+5a5SHf3NuQfOtlEVC+Psfas+j8RTnq544QCN+HnQA1h5YWhe5O3Og\nktvMsOSe9aOowoUVWWxWjIHSI66xG0sMNzJrjgzd68tiPUryn4x34PKqkmmN\nUi+L+POd7k5ug/8fpaiaGszZ0Ir1KQHPREZu5auOkEKLWH8xoucF08XvYD9+\ntZQBuQUvSDrlh10wgvmu4y/ttLYxVx4Dcj6jIdkq2kKJu+z0ts116YWrzmqS\nINXVid129kjYJqCqEQDAxMTuud+wdcSwQBU9ZWszLIFZ62S5mQjzJUk+8HlV\nL2HSw6QRGaFqanKOmBkqUlwINxnT/qjiR/NAV20C4bLuhHGFerGEU+qHtEnZ\nAMupuWiX/BErI+gjmhpMejKTSwJtTUkisoOk7tZlAF1lg6lwHFEG6hzPZ1e1\nylgf\r\n=P1hk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f616cef691548beb0940fe4dd0e0b3c2277866d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.40","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.53","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.87-renovate-non-major-f616cef691548beb0940fe4dd0e0b3c2277866d9_1619775544809_0.7729023027676569","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.87":{"name":"@balena/jellyfish-test-harness","version":"2.0.87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.87","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7ce1b2f2c6a04bf96a6f7f02b3d4d9bfb2f0060","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.87.tgz","fileCount":24,"integrity":"sha512-oZ5SYw2yhCsifmO9B2336udoIA0AIZHSORsSDNq0CiLnD8xkvtJIAzgQC2Ey5ZqT39lP0YaRSsHU1uvpu4SBag==","signatures":[{"sig":"MEUCIAxeelbCF+Ng4GN5PML4w064+nOpwXhP2sJcc1ylSR5UAiEAuM4oLOvG7wAWfiKIMe14/mRioxP6W0StaZvsYdu1hME=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi9EOCRA9TVsSAnZWagAArhcP/ilIvDYc+5pDUbs6Pfp2\nksAi8S0+DZTIkOeJTUM8eE4pZ06MG+1ExCHx/KtqXG6Ph5JsYYRXs/YzlWd/\nsGzG5uDt0wVLP9r/ptUnF+uW0Q7D2FPB+i1HMgVEX+JHcXKwpI8Il00UDjT4\n/asTXXz+rSQydX11LR8kS9P8SZnyFlEKE/ooMQBC2QoiljGrnx9UM7phgMZK\n8y3TO2Z/JErpRzFER1F/I7h2EROhm7Ay1ffGSbERtBgo/rGr4thjg/fkdKl8\nORPr9CtEuip3fWv4bmUo9/ADOWIsGv7B8CKFAH2YsYdrep/PAs3MbdzSBDfD\n+R9yLjs8YNM4olZWuJh9axAD0uZUmliNSuo0HljnEwLjEVvNL6masD03gKJV\npvnr9BYMkd+XcVmoU3jjuvdYr4zTNRcNE7Rruyy9unEwCC1eGwEJilqzWmxJ\nGjMvxHfHfBgBLcS1PumrFYCn5FzJf2z5FeKx2dOjBDIBC4SyAKDWE2+IWq97\nFK8UY3tTuEnfeW6adrwFnS3q3JHG+8tmV7/PKX3zlB3RQCtmbND+O2Hg9WGa\nd4uIdyu/YItCq3MpWo8taGkFb15cyOwjtTvQicLz3g16wpLYFghPrtb1DXrk\naF2J1vAXBj6D0r96CXG0QSodde+fiFdXIZ2dLBkrMsSNhFEdRE+f4rfc1lgI\niueF\r\n=GFBd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bbad6cead4d55327c0a96b924dc6ad27f7f180ab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.40","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.29","@balena/jellyfish-worker":"^4.1.53","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.87_1619775758419_0.8119376699488472","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.88-renovate-non-major-6a722751c967ac3a57b6df8bb9a394ef754ba8cd":{"name":"@balena/jellyfish-test-harness","version":"2.0.88-renovate-non-major-6a722751c967ac3a57b6df8bb9a394ef754ba8cd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.88-renovate-non-major-6a722751c967ac3a57b6df8bb9a394ef754ba8cd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4fe655cc27f61a4612d1c4245e4dbbcd4a4080ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.88-renovate-non-major-6a722751c967ac3a57b6df8bb9a394ef754ba8cd.tgz","fileCount":24,"integrity":"sha512-emyLJasj1Hoy5tuypyYmkBmzbqfotW08UN4nA+8MUIHiZ9V8rJKDI1cjHEvGQCXwc8CB6qxexuFIB9nM8uyxOQ==","signatures":[{"sig":"MEUCIG6gCH7UocXLE19XLZf5XZnMfRAX89OjrcdZy1cqjhooAiEAjVq1/vzpxb4S0g5ezb7fa3ZXNfsDb+Xz6nlLuxa2hjU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90762,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi+1QCRA9TVsSAnZWagAA+LYQAIXeGyDddTuqsx4Rgfsw\nUHZj2QxVUcm2YnKgoqc/8sAkPQZg54GDmzW6QsIx+u2I6N7BEDJH4joxHAtM\nLI9s9fh1Ia+TRVDuXK2hR22Pa4kfHw3LHDF7BQ8+IHKsIV0g4kicyeYHwEGC\n5wiY1SNiqvfSaVPWDTWBeJezquPN3NnZEPKMvVn/r1RO0KngNmqoIGNlQPeu\nwDD1H6EO9L5mqtgSB4P1W+tHX0BnWmPh/zxYlK6N3tsKmCFJIm2rwQP6ZMnU\nVhtfT38HNzpFQDcS3Ms44iRgeOg0LiafTHeZagGwh0TAZkylinbYNGvHdaZE\nwSdpVrZ8HKHryC2w9KpPlbVaig+96qmesyCR/p46TLpVcZXBC/YYnLLrWIwp\nKc6uh2XWLKPdbXDR2omRjK6KfzSd1wG0zA8oGUIBUErzDyHWMsnduAUfUmr7\nRpvoe4pPKS2/i0t6ytBX1NE381xDx1paY/A/EzqoOE1ebUBgSOoyQE1br3QX\nDO1MOTqoMx1AtQ7is8P2CzqOH1V3/x2smFTNDj8Lo5w8Cs39KyV/9P7E0hlq\nRfnN40kyKzMWVxASB6BRQuKwISvrFqa6CG2vJisLugVJII7tSfVCw4ciCAkS\nKnr9lqb8yxPrUfERg/0G4GYnrmh9BuSSsKwP8BzIZZMhJbEnbvKrHmFf2TUE\nkzBW\r\n=GpBd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6a722751c967ac3a57b6df8bb9a394ef754ba8cd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.40","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.30","@balena/jellyfish-worker":"^4.1.53","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.88-renovate-non-major-6a722751c967ac3a57b6df8bb9a394ef754ba8cd_1619782991904_0.7719153503743836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.88":{"name":"@balena/jellyfish-test-harness","version":"2.0.88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.88","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"984afdc47482f63e359de2ab4f1a0a9eb20b0c74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.88.tgz","fileCount":24,"integrity":"sha512-CIk7/A+8O42pV5tRs2mjhPWtvUxkOH8vMC9yu1n9YDYkdlNUBqoEFo7T89d4pH5r+yKhIcKSL4XVtUHcdFVlxQ==","signatures":[{"sig":"MEQCIE/+AhFcTsDTvVcjVx2nbOw+Qt5sPDFuAO8KLPst+cvxAiBo7N2UNd7Ea+hmL8pQZpVtMY3kV9ttthLki5mUsrO85g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgi+5ECRA9TVsSAnZWagAApHQP/ROM1ZHdtc2/0nQvbQzK\n5zIvMSgK9TM+DtZTri4v5lW7gxEOqiKtgpRf+pRRr4lG4X5LhQQR4gxSKB+k\npes+WsRLvRB00TNcIfnHItzIS5C6QfDsJ0hPvCZn0UNcM+IfL47PKY1vSDIr\nimEo76QlOW5Ce57Zqb07iMJ0mZVPjf6dw49x2tuekYc7ukT3dgQ8s1fHb9N6\ne+IddV2Ga/OyjQ0MQNTJzGB871U0tr5M+1JayyPkI1pCdhKrqN04p4jlUC3H\nnZxuf2kx9X69rbil0NcO/RMJAMT8N6lYkWN90XEuddwbjkFr8ywwnmOAG3i5\n4MbF0FHmmFUf37vjEtVN8AvlUkltYE9E2Eudj6VDOB/lorFBSbA9yxi+HZ0B\nRqsm54j3N24jLXB56U2u7jsVH/7TuKomMmBUBqOSzJVuXeMiQZ/NI6ePu6Vd\nuD+/oGeaah5teKnY3DqkPY8WKTd2PpjtcZF8iD5Xi3UO5dMMWn1ysUj/6C3E\nciRo/0MN3SXsUT6q9uWRa157azyTf/g+SGYxN88ICt5vuDYXdHZlNeeOm3rS\ncTCi2OjCXKAC4OLOizFN2olY37Ay9D2B/UEGOFZXEN2Y32vVhvoIiSikOBBd\nnnanDFd+585o19jvTojZ41YTmGBWhDFBKSFz/RvbRJ/vXodr5pPrsiHHe+zp\neiXu\r\n=4Aoo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6ac632fa4ca86f466f50188989fed549b0c2909d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.40","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.30","@balena/jellyfish-worker":"^4.1.53","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.88_1619783235816_0.6047759662886485","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-a013133427b52a4b0f22b46457d8fc1d0dd9ff4f":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-a013133427b52a4b0f22b46457d8fc1d0dd9ff4f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-a013133427b52a4b0f22b46457d8fc1d0dd9ff4f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d10eb684847676282b1f9d26dd442a14c3db4f95","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-a013133427b52a4b0f22b46457d8fc1d0dd9ff4f.tgz","fileCount":24,"integrity":"sha512-7tiLeVtVozZ5ETr+1LAMPqPWFxzmDsLNWav/HLwOqHt4EL1SEvXBtrxOc9563NgdPqxEThmp29IsF+NM4w1emA==","signatures":[{"sig":"MEYCIQCqZ2p21Fh5sDSXu1Q16/mbhbX4vvkuAgul37a5HRx9YgIhAMk+Lx4qRE6P/lY4iWqzy5f4QpJR2InJd+q0ZVCFtqlh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjCbOCRA9TVsSAnZWagAAJEoP/3CPlIn3zUjy2GzA7jBC\n0XlXQar0gss/2YGsybIW5PEt4fdlZRMULObk6FWm0q4+qKklLNniYPXI5ozu\nyJoS/Xxtb+VuoqC3zDsSdWNT4Y/OokPLcbmfQ6tarIPWAlAd+RJlhJ1/NItI\nEv1GH+h1UlCRoHiNRHoGXm1kZTR4RWJ4yANN2hl4p6XAH6yFElghu4lUUdNF\ndDmt51iGYbc0eFSbDqcQs9wHXLEedBsDbgTyI1RGnpJyz6NSTSjkPqX9vfS7\nRjwunI1sowqvhqDOPOOeyNj7PCa/wJFw/T+PGHvJMPv7NIL77Ui1GVgROJk5\nqGa70TMWO7OOpfDZVtlYgQCgXd6GyFiTBkyIP335dVj0lKPlKUs8uprzmjuD\nA6e5NuN3SfM3szl3+u6uwTAA31svHIs1CYhLQ3WQujOvuaY9adUbYEpeqvBP\nMWTSDRGz6/IOh6SaAthU/oscrmmgzmz0Ae7k+5v6ItRWtjE2J9HcqpBSqpRw\n2IkTe7Qh0/Lqaw+Uv4tVjbYoOx7rKXDecb5DaCEANowaJmFSUsiY1YcaWioh\n63A5jWgAAJX1VyczUHc1XsaDOyQo4YPBAkRWkVoN5xcHgNeqXu1mb6ujRqDM\nWMyI369l5dy5Z56G3GMQYS2oaKjTudyoR4j2n60QwDnhFMgpY9j26pV+rx2r\n++jg\r\n=EzNR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a013133427b52a4b0f22b46457d8fc1d0dd9ff4f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.41","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.30","@balena/jellyfish-worker":"^4.1.54","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.39"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-a013133427b52a4b0f22b46457d8fc1d0dd9ff4f_1619797709595_0.6098634072393117","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-9473fa84921de4aa994311193328ae095dc41490":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-9473fa84921de4aa994311193328ae095dc41490","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-9473fa84921de4aa994311193328ae095dc41490","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a58025781199c4ae9aa2b6a8246447e1370a6235","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-9473fa84921de4aa994311193328ae095dc41490.tgz","fileCount":24,"integrity":"sha512-FpSHWpBGkRGv0S/A4eYw+FtuAmxJy9y1umdzd6DQkUB7t6zjp0pvmF1L25zuxCGivWqi2QayBR7vG18PGFqeDg==","signatures":[{"sig":"MEUCIC5Sf5rDb/M2os2ekWean0ks2Wk8oGEI6cJrPjRfKFpfAiEAu1scwBvvV6vB6FTzaSbdFyECOpO4yGy+viI68Hkb4Zs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjCkACRA9TVsSAnZWagAAsPEP/iW37lTOguDsXyYJ1TlQ\ndY0W3+6eaGjEihYleAFIMBVE6o3XO4WjoHwHxBDPX9REe/7LtniRlv41JKRW\nEAjgTEuVfBXndzndP3E042jewtTJ04HD5r76FM6O6nzKhO8y+ygWwjUVN8gp\nJ2fVCadBAdei0go/ORgc9Hx5RC491wZ4VaKYTJYs4rUazh1Md44niSQYzL8J\ncgW6ex8sW6qGJ/DdHV67jGIpCnFe8TWTPECoXIY0C/VQPtHpBcAgbe5Eh+fp\nHyOSk6BdAFCPiMHlfYkX2XZT7KOgrThDi/xj95IilRF+ZF23EvI/5xLylEBF\nMaaV404tkja62g9rAZ9+/2iyimq6+zBiS4+L6a9+d6YqX7LQTzis8IyyFm9u\n1/CEH+bzw5kctbHvMXl7REvb8yCzt6vcw5OEvjWRhOdJAaLsorA9L3G/fY83\nvJHG7CGBbUIsDlq6sBxNqoJnXX83C6bwT4Zdu12TszNVqQkEPEGqePytikIB\nMI0p05ogGxWDrbpmR6Ef+TsmY/A+0NVPXwrPARd+5YOMgt+J6fkGg1/qkFSO\ni1JBmJUQGj/y3uZu2iG4juhxAf2CSYmhSrHPdNYZNqVy+jLbtA+FquNmoaso\nSxE8M7yfm2Kl1CGZB3zuDwUSW0/+jYmMS47l1D55X1kvMdTr4gAh885zxt0+\nYSKY\r\n=PDxU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9473fa84921de4aa994311193328ae095dc41490","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.41","@balena/jellyfish-sync":"^6.0.86","@balena/jellyfish-queue":"^1.0.31","@balena/jellyfish-worker":"^4.1.54","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.40"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-9473fa84921de4aa994311193328ae095dc41490_1619798272321_0.2026533828094168","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"36c17a1fd1696886c4f8ccf9c5c10007300bbdf3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8.tgz","fileCount":24,"integrity":"sha512-x7Y+Y8xVPoXfSzTIivvP4ZZOQrjGgJSvRjiQUQ4fiq40r5Fru0s0j+v45sY5SKX+37OS/CifBUrDEij0wO9TCA==","signatures":[{"sig":"MEYCIQCBaa4vna8/wOIgNWtQFeaEJS6yo1tXb5IrFo/URh09iQIhANoDC57YkoeC5eLq34MyOYYIHZjK/bVLyeaShhU6HoQF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjEPECRA9TVsSAnZWagAAW5gP/REVmBc4jPt8B/3dKuDr\n3M2qamX7IVboUN3l0C+vOn1T95tQ1x/0RyABrpKq0zO+3QOiew+Ptd1aXL1V\nUztchc4R32PedmJZ3xOP2huXUFZUpjVXAG1Sjctt/L5bWCj2qngDpMKNdQ0U\n6BS2fJwHkhXGo5NUjyi5Nc8dwsUS1DJA/QeECPXdE+VtffOKZ1xolkh0paqo\nxDLdqNFT7QnZ3JpRHDDUkpZLi5A5S3WQanTpYyEnR4xjCsvA8T1fakSIZG0U\nC66g3ZGuVvroI5M4fzudfpuzT0kf4sDIp8wIuStOyBCmIdR6aYfpsbTldzMB\nxjMXGjwsFWgw4MAJKGWukrxiEyRa/msmFpvzfdFu41rZROFHHleJ/76z23Ie\nDdHjVC5m/tW0oHhrtwGxx3RJHiVz05wY8Gz6LpBdDYbp5F5202AhLSpansU8\nBTPZowk0bLiFZgV/ttVuKiPQX+j1Tz48eaCSeQR6j6ewryzJQHZpmLhXCX2Z\nsdbTLeDzUUy2sNXeC8HveoP5NBcnKp5KJ5A8y0dPU8eOpI2gKvUs9hdygNI3\nqFV6RymyexZvZ2xI+gk9t+35rpoeAg2iJ6hDcwMs4RcaJLnGNUhBef9KJreu\nvVLpufgcj/Lz38M6qWHAThbaFvgj+IzeIO1qAEWjPpKJGPzj2IPt6Hf0s5wF\nOTJK\r\n=OTJD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.42","@balena/jellyfish-sync":"^6.0.87","@balena/jellyfish-queue":"^1.0.31","@balena/jellyfish-worker":"^4.1.55","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8_1619805124139_0.029006969546720995","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-eb6dbdf94ec75ce26418e4b90965501730b21fa7":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-eb6dbdf94ec75ce26418e4b90965501730b21fa7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-eb6dbdf94ec75ce26418e4b90965501730b21fa7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0597db2f68c050cfd4d815abb2cdeb4a6d7312de","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-eb6dbdf94ec75ce26418e4b90965501730b21fa7.tgz","fileCount":24,"integrity":"sha512-TIe3Va+MSyWcCA0nVuKuAPXAUX7A/Luba+Xcc8jj/zJVZEe9jjTsY0/+BMKL8CXz5mo5dJ0k/ePzB/2ljedDiA==","signatures":[{"sig":"MEYCIQDyPPqLjeB0wljbQfrBmacJtTDH59IP2gtKfERjmhEVvQIhAOIMJbAu/O/wFShgoWJFpiif6hJO4Tl+mMUCjCs/K6Y/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjGM2CRA9TVsSAnZWagAANCAP/jpQOS3ITm3wntyqjx3h\nxuS6Q5QWYWBIYrOZJkgnIQ5TA+UikPeOpZxMUnh2msmPOvU28fqHzwsPi/wG\n5PkM8MDoX8mBW9r2GiKDdTY4ZX2FgOhwGMY7SNZ7/cL+ft4zMCyB/HAOtM3N\nXJ39pQ9qVnvHP4lmmfSn52aYWaA6SP4q9aBbqPTMV+CDq+G5mZNxdrP9usO6\nhEp2cuWqub0T3appyn+lzjosNc7ZXm74QHYEnY4ANQGHQoWfVQdd7fUzTZGC\nYw15R5byGrnN8dOH0UTz7qPCECUOViSqWj2Q/fVOuy1pj8N7QFGHVCUqxlNi\n2PlmTc4K3fdOcEqmEnyQWQ/dUnmTZCEkFMBax2/k3wOY5pL0yjH0blWD3Ob5\npxkxFFXr+p3D/7O+0LE+XReOTelf74mviAZi2/LLOPBR19mwIIpK2NWHvAeJ\ns9aYAubMywsBtnaEby/DhOJaGqym84riZNR3/Id8PcROLoz6Q1CQZ+fBctaq\n4XzFnexFPVaSSlVG1KFzSUS3bd5YMCN1H7wEtpPCW/3CQNdnQIucuk0NVQpY\np1tm04dHcCv4GxVvj/pbOy5tNfURanV1PF3TIWN1Ri23ii9NgDFge6MgObG5\nOdHCYFIXYTCCa7Mvx8U0D5Lthte/jX9kKrmITYHDSIaX8u+z3zvFP7vAaPI+\nNUCM\r\n=xvY5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eb6dbdf94ec75ce26418e4b90965501730b21fa7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.42","@balena/jellyfish-sync":"^6.0.88","@balena/jellyfish-queue":"^1.0.32","@balena/jellyfish-worker":"^4.1.55","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.72"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-eb6dbdf94ec75ce26418e4b90965501730b21fa7_1619813173834_0.7012459621900444","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-66d60e157d6a6381a768e76ba748a08ea092f17e":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-66d60e157d6a6381a768e76ba748a08ea092f17e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-66d60e157d6a6381a768e76ba748a08ea092f17e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"446dc2686d561a43d3699be0e5f14db064c0ea22","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-66d60e157d6a6381a768e76ba748a08ea092f17e.tgz","fileCount":24,"integrity":"sha512-HooCOMGUW9B8cpmqGkIPiODEcI26rRzxDdnt04CPD4IBbhhLYvUVAgBvlEVGGdjGawilHR9Kav4yBhVsur5EUg==","signatures":[{"sig":"MEYCIQCcmfFKKcQqlovp61ttyiYdwW4BzZ4+KdYC0gwEzTvH0gIhALckv3Qe2B18FcUnx7j36XWN+G8gfvRHJJEAldpLGE1H","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjLWnCRA9TVsSAnZWagAAHxkP/RVSvRH88WskUBZABbhL\nNelOrzAnxvsbyvCJ0X30g3+R7ttc93pfVkENuyaJC0uqMmRz5rXDpX5xUa0a\nV4ObxCJKW0fRxvRJHpPX1+5uugMmXw4KXfXt1x4LfKB2MO3LEhqxoHI3WRpa\n3plxEM0a122r7mKcNJqychfwM6TaDMTWAqeZlSkI6PDaWM6XN/tAKIMTj6FY\nVfUOW0BxPfgajeiI4vTGk5Fu3u0au7A3q2vHFa/eyDNTRdbMoVWHc6GYYJVU\nH+EzhwnXD1S07VMESlkQeJJAcuBfpqt9A17EkTis/8m2Q5IYM6s2uMVAZTIZ\nDmvG3o+dJAOdkFaRtS8os8po4uqukMbCWPjOkLK3BKaun/1myzajE9Hp56BH\nKYYS54ICvNQFdNm8XFg5i6kckZ5Id3pNsz4mu+/YtNQUDmY6NvlP8h3ixfEF\ncV+bqs6YNW0yv1xMfAi8vuUoBlZAxGlNACPLwFOi+lmreU08NRmJtUL+NCRC\nF1n20k0OmnnAYyObx9y++ri/zvTS7Y8/nVV3hfEjNGaXAwCDBVZEMI2AtAeh\n/XxN8Zobt5NkARR26H57pLVzmEOVVzCkoS50LDBM2Z8t9REuxRt7BZf/uQyg\nDY99b7bIOSYqY3/8MNQaPkYhawMSf7K2NKSEkyX+2gd0cZt0846dsb6C6CeY\nxWHZ\r\n=bLHo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"66d60e157d6a6381a768e76ba748a08ea092f17e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.43","@balena/jellyfish-sync":"^6.0.89","@balena/jellyfish-queue":"^1.0.32","@balena/jellyfish-worker":"^4.1.56","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.74"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-66d60e157d6a6381a768e76ba748a08ea092f17e_1619834279188_0.6600872987507369","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-8e572f20e4de18f50a660a3d94bb56d8001666f1":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-8e572f20e4de18f50a660a3d94bb56d8001666f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-8e572f20e4de18f50a660a3d94bb56d8001666f1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"781bd80365ff32f6956957061ca9beec37ebdd55","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-8e572f20e4de18f50a660a3d94bb56d8001666f1.tgz","fileCount":24,"integrity":"sha512-aJE6fm+9HDJPK1LJ/WP4TSbCOFr9vZy/CS8RE7jWSUUDdB9AsoYgMeC3c2uCW1UCckHzoOJF4+hMKvIr3kgmuA==","signatures":[{"sig":"MEYCIQCv8tQfzVUjjachzXO+IGpiMVmaHbKaZ3OIM9G3jzA4VgIhAMgXvQEJl7VGaglZihotcfOVV15irmZPe6paob7XPsPr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjLcBCRA9TVsSAnZWagAAAR4P/RNAI1YAOxkqh1UxSLOn\n++sKdqn3PF3d0sbXXqAnTp4wm+BMts49xhBHiN6PzgTqNF7UyGXSToam5u7J\nLVYnC5pZqGtEncOYTXhmqjjfJCD8Cx8LCPzJ1LuVJ/equ8SoJ77d7jUazRXR\nYUTjB7ln0S9hB1nl3yDGjaYbB04NfIU+HFartSiaM8gLlnIJZPm5+0KfSrTe\nMCcb4SRFy/ieYkKU3lX/9xRctZELwVaPPG76x2W/nkmVXINx6SQYF7gS6Z4Q\n6MQjd7SxpVEyy2EnFDkx2zNeDTlFO7YprP/dIZxKnRs/SUuu6ZvUi/73qt5K\nAvj3f4kqjOTNwUdH7UZNLF5usMR0BJTA/WMC7esTI3nGv2YxD6HWjT+adn8J\naE2kmAytD4HNrPSJom1CZcILnMeOu/ckh1hOIOWKc5oswBvzj3xpQR9iBShr\nWu4pWH9fYLhGVRHnoHxx6Ko6BYr/2q014fAdwK8sFsUqcG+ViBh35k4Zf95X\nfTNqnPxbxXP1Xi+ApsWbjVtht5x3l6bb0PgKoRuJHVbJvruXGHJFPmObHl0a\nxoTm0xm03AZ0UhXxSzEx8Mh5z+o/U2eLgVfasi61tsWIwXDZYlQYDIjiXLcc\nxhfnBLmy6QoYWKsGV0p8JLby74dwj2/sCOFhRc4EETy/EdnPEW44v3rAEJtD\niX+Z\r\n=oHUD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8e572f20e4de18f50a660a3d94bb56d8001666f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.44","@balena/jellyfish-sync":"^6.0.89","@balena/jellyfish-queue":"^1.0.32","@balena/jellyfish-worker":"^4.1.56","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.41"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.74"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-8e572f20e4de18f50a660a3d94bb56d8001666f1_1619834624711_0.13225626867904516","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-55354837b9181057de5f3b9b0c23fb584c6ebdf7":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-55354837b9181057de5f3b9b0c23fb584c6ebdf7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-55354837b9181057de5f3b9b0c23fb584c6ebdf7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5cc0ea0536dd9c56bff38c7773669c8bf361ce3b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-55354837b9181057de5f3b9b0c23fb584c6ebdf7.tgz","fileCount":24,"integrity":"sha512-+pXVcmz6ElFlYoaf06fjTost5rpAd31l9IxrUicx0g8vb3rZZMU4ZyrjWKlWJLhC1rxJxsXLhjkKIwsnnHg3Ug==","signatures":[{"sig":"MEUCIDmeZvRnCwyf1czQVrBtmydSBrhlh8Np3lXzFG2CXAzDAiEAwGFjK+h6fnANHmM6ZtftrkutbaAlBE8wsAHxRBKkfLQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjMy2CRA9TVsSAnZWagAA+EIP/0o6D/aqI6fqw0X+QPsQ\nixqFsX/OOMml2DZ8vhJdY2ly4Yhf/ZuOdWYlBNhBVwY9d51QsXqpuUCBi9TN\n1iQFhgMkTIg4OymXvwfzgIE8+Nr2xMCVO6xJeKlLH56GCdH1nCQ4CsXbgS/P\nll9QLmIDpLcXJ620vOTFInFOW20SMxB2LdWaZLMxEopotVhwtimUPITVNYbk\nNpv9yfkM4K0eG9G96MTWfIsVFI1HfOU8wGSD5Fx3kOY3daxAZOJ8RY81s2TV\n7NpBefsYTi/mkFE3KENUjTgswPDfdJoRQEWQIrg/UM7xXh37iZa+gq4NSoJk\nkeby8GZr8NKJFafJuPq8dIAFgyTera+UHcxyZ3pQOEqpB4JVA2fOpZXCvfqK\nk0qlkId4krB/eq4zh8mzHvpjk5FbAM2qUbDAPkF0webPUlyn1iNPlgPdAGha\nwirLaP7lKx+qMulO2KrQC09yiQ3BxsXunh4pDT5Udw2B0+g34sqZCcMG7Lja\nM5zK6UrbqpzwyPE7jVC3QPAnO17qJDGpHmdYoAaBoSsOBrqNQCVp/uhanHJV\nsX1Y2qhgfwxnbfThOplAjs7z/OvoN2SEnAsC+HX5pNNsWXIOmpDpvz4IQ/tY\n1TN9A1xKw0jAqzD6lPk4l+bdGQREpzmZtfF4LNefp59zWLSshQBPMJupZW+T\nO7Y1\r\n=TRab\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"55354837b9181057de5f3b9b0c23fb584c6ebdf7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.44","@balena/jellyfish-sync":"^6.0.90","@balena/jellyfish-queue":"^1.0.33","@balena/jellyfish-worker":"^4.1.56","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.74"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-55354837b9181057de5f3b9b0c23fb584c6ebdf7_1619840182057_0.4121063251752555","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-cd305340c60c6b4edba4be93eccc6e4c94946c36":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-cd305340c60c6b4edba4be93eccc6e4c94946c36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-cd305340c60c6b4edba4be93eccc6e4c94946c36","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e4ad5db7b0067b356ea685ba55a26a2cf103fd1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-cd305340c60c6b4edba4be93eccc6e4c94946c36.tgz","fileCount":24,"integrity":"sha512-qRHMGxe63Oho77Sn6EvXzKm1z/kSwo60seKYgGPakMH+iojnlDLJ431oA2yBxYAqQdFKEeqYoJgWJwduaV6Uww==","signatures":[{"sig":"MEUCIBw/pL3lyTm4QH32n58pe9YdNRWYh7GAHCkrk4jpPljeAiEA9+WQ8tCAC82cXvDVB/6oyfw50IqT8YLeOXSHuAWLURM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjOpJCRA9TVsSAnZWagAA7YsP/ilaMu5TIFswt+gkYhLl\ntIngO6ILc/Kn7jpDBVBYKgETzFrz37D+RO8rKINdyoqafjX0HxMhuyAn1QI5\nv24zV1QW7xmob96SkP1BLq4Tn9mL5KwyoYXbIHdVgMgUAp0+0K/JC6w9WlXc\ny/WNFjsImMgU6p0ffU2npv9+Je3aANZvvY5LCm7F50OW9Rbv7x/7yBSNE6/Y\niLVOLvYg+IzQKPq0OrCwjdaL2fmPaQ3naOYqQyPY/5lVpdisPmaCgngBHjvU\nHje/206/37JJh3GJ6tMPlIYwLEM0y81YWEY/9UyZaOP6G3Kel4A9/0bfqq85\neTItwcvJ0w62qkr3q36/M11qchcolPCnUbVIcMEV6hxApBqigtOOugxtnoFY\n/XLtJxC9Wi+HDMt4iZ/0bd9HKwKmAWPEasOm9eeSAEr+zxIT4t/SBGplXTB3\npSGVR0UMjDfc/8qJXAACk4w5LxUMGrob7IJ+A+4L73svbk/E3OGqPa99rsTF\nfmzbPELVd0WUSxEBXiKivZ3skPvtM60IuzxqGi6VEE4bHHY3XQ7bXJOnJG67\nSB1MJoltVTbnpjeWmOHgKB2lZT/Jl6+xDYXrs/86KcvIYixUpc8tOjuPC99U\no/Qazz6xoU7syjs9ee9LzT6tcXVKoOvORS1zuW+JAakh1guJ9rk44bAOr2sq\nzuGR\r\n=DmPO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cd305340c60c6b4edba4be93eccc6e4c94946c36","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.45","@balena/jellyfish-sync":"^6.0.90","@balena/jellyfish-queue":"^1.0.34","@balena/jellyfish-worker":"^4.1.57","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.75"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-cd305340c60c6b4edba4be93eccc6e4c94946c36_1619847753221_0.3584889344040092","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-14e0c71922ab3c8d0215af34f631d8319c83cf5b":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-14e0c71922ab3c8d0215af34f631d8319c83cf5b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-14e0c71922ab3c8d0215af34f631d8319c83cf5b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4533727c556553a2821a633f9b721b94c4016ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-14e0c71922ab3c8d0215af34f631d8319c83cf5b.tgz","fileCount":24,"integrity":"sha512-pGaig60lHQ3fuAa2QQQs9ymkvAWJUdaH7YMJD+ibQI/1Xtr2F5+Ldrv2kByKdzJevk+HLIbncRPPdgLRKrPgjQ==","signatures":[{"sig":"MEUCIQDSNHxFQHLv1vEUnB/UcUbMC5Pu1FxO77KtA8LBbrMonwIgUTpa2MBda8KhxE0fy7zNYBl7v8LTlj64Ic9u67CXaSI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjRWoCRA9TVsSAnZWagAAr3cP/jAGPqglyVH+WEMGLJxE\nI8Hn+ep7fi24HNkn2V0+FW3nPWo51Bw7BffzosBozfp7CGvq0vuKtioj3d5q\nDxIMMHKskiZoip6kYj6aTKNYphv/gZl2FizMJlsNpm+Fp8AwUjjk1JK+4lYw\nLclccA0pxdfB4TCW1GnVeL359wD4iPpsi6u42OyzRn92I+6JY04I1uJDWePH\n+DZ2Tda5shlUupWyzwFmwSRF/l9AbyRUFxda7kuRKeFBdbuF111qqwTiERgh\n6EfJIfOEbufUkD+V+fFxYT9GyXKhpawOzyIIpfVZXZgQrIB9Gj2MaG134PJy\ne4CAwi4CFfk0Ls89vVfPQgSuyN5OXUFDRA6kfGI5VJXwFoi6kQfUZQYYoZQz\nf76riMYeLzKGa+vucc7DlrcLk8nDMnIDv1iqFkLtcq97FegrfoyzRVJhjeSd\niux0OwaM4GVZb9lbjuuU9XDwsr0olo1/ETZEEMS9IywGmJnMkQ3S+zfaNClA\nZQJrhn5wIOwlfYcXQdZ1ajitLo5jk+IbQC+hxkY/m8t/2vLCU8XUAct77f6Z\nh47bHLcKpXsj64wou0LsKCnJTpdfsW1pxdoJFzBnuMxfrv9pFd3VjTy/PsI6\n61m5NRFx+kF76c++8xKvaXd56E8A2LJZdaIs5lA1Eqiri7Qkz8mQ8JzncL47\nmLP2\r\n=8js7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"14e0c71922ab3c8d0215af34f631d8319c83cf5b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.45","@balena/jellyfish-sync":"^6.0.91","@balena/jellyfish-queue":"^1.0.34","@balena/jellyfish-worker":"^4.1.57","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.42"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.75"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-14e0c71922ab3c8d0215af34f631d8319c83cf5b_1619858856530_0.42630601908431176","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-2628d6fb1416b0d6a6e889b0dbd67b53229acab6":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-2628d6fb1416b0d6a6e889b0dbd67b53229acab6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-2628d6fb1416b0d6a6e889b0dbd67b53229acab6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2ec4de8a8f8d7574f7867f5dde804c6a0848f83","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-2628d6fb1416b0d6a6e889b0dbd67b53229acab6.tgz","fileCount":24,"integrity":"sha512-niCcnoWsdVKGbrT1Lv52QtZP0mTNJxsIlAZNTcCMVqWo/VvUHIZXUH4Hx1PlPe5SrdtyzOk+LU7wkg0qQ6uiXA==","signatures":[{"sig":"MEUCIC/OrQwrRMIegXt8r+iV8RQQC9YlY3yymMdZoiy6ABRFAiEAumAeD7GyRA00qjd3XlyxwsJskLVjdhTGu+A2Ulhinsg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjRcOCRA9TVsSAnZWagAABngQAITIxeczGHGwZyPfTvY8\nt7z+B/0+8pwN7+f6tT0Uka7nt0WpMeUBRJwT0ZALbJVb1O5sBTAuW9uiYZdJ\n+vjmIqvgUGWpN5cFIjAYweRuW9ji1U3LJuLz4dDVer/Dta0HPkfeXJwYQ+7k\nrpJVe9fQc1danHv0UUoMueg3oRQxZu2jYZTsU2v0X/ukm6swMSOr0K/XzE4r\nc+lD7R38KapC7wKo7sG2bU1hBfoISfw5hpVJblhl4KEkTcrPVhEUWVLK6wxv\nhmAu78dCSnXSUwmHjlzPN4i5mtxelbx59uUo6C4nByIZA3rfH4cHn2H+YOzq\nonsd5j1QU312PiukM63MetP8QrhxsMkPHvWAD+sIcOreHRawARaT09+CKriS\nhccTD8mDHb5l9w4hTUz9Pbd8VdNnSY9N28VdkXEuu/BMmT2bHwQP3Ef/ZF91\nOxaseM0C2981Uxs/uSIuVbQliDU+XoXAqVt7j7Ih3HzFryiuuVzLUSNiBPz7\n7Jvue88aXd+MTVBjLzCnMcqW0gLkKTiRKG8iFwXlqn+64zHuioJYtJFl3txy\nY09IiFqTNrKSCnwaQtptxERJLYUssiyb44yyFlyfuu1GJZWr7H8rd3cbj5x5\nfhwzzxNWDMFOcilzpJkIGB/LU9e3+4+dR1pq1esHwaM0lLu+3At5TbbY7Q8m\n1zhN\r\n=Pb6J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2628d6fb1416b0d6a6e889b0dbd67b53229acab6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.45","@balena/jellyfish-sync":"^6.0.91","@balena/jellyfish-queue":"^1.0.34","@balena/jellyfish-worker":"^4.1.57","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.43"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.75"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-2628d6fb1416b0d6a6e889b0dbd67b53229acab6_1619859213552_0.35741217266072556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-736788a64333b3e987bfe1200684b221397ee649":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-736788a64333b3e987bfe1200684b221397ee649","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-736788a64333b3e987bfe1200684b221397ee649","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6659c68cf79d9f03e35052c0724ae1f19906038","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-736788a64333b3e987bfe1200684b221397ee649.tgz","fileCount":24,"integrity":"sha512-v3sdvCH4luw6mFSdEwsZc+yHCkO21WgT4KYaZImSx7hI8yyGVYdvgv//tHWp6O+kBsbImHfyKqeHe6NyvS5M+Q==","signatures":[{"sig":"MEUCIQCgP0a1+aYWUDAXQCdnmWQqE1Jdm8rvVzGYEYokqosWDgIgX3onGVokL0gFqT0UOuekJgJGNy93gT7BiSWerxjs8qk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjSdPCRA9TVsSAnZWagAABA0P/080InrI2CIwR3U/o4Qe\nj+60NRqXF/kCMwb7Ep8m0OKgylOYFR8+0yXelyP3lXB2Nql9vHnlZK+uJ4zp\nidO4nOZm07DA8Fs2pXcieRllZfYylu44QxSXjoszGcIJQVBtcoTRHwxqzl+T\n2wZK1L5lj1c93ifD7HeYtcZKfmjazkMsD5ZQIakUfwAwnI2c/YmxKTEdh+Tm\nnRiwsI5PqsC7nDu/9sHgBt4m68BlMBs4lzNj+pflPo20wpncPA5jG7DSGuyY\nhfqy7b42n1cCZHheVYcdQDLY5antK3lM63uHOYuAcKVQZ5tgY8gSyJ15oJ1b\nSopaOd4jYg9O+GzaeEk1Z0JKIxodmQw+dcONEdJ5vnIHGPpOgyTYsQms8l/F\n9VbZxQ/oX3KEyrBHaajAOOL46ohLLScXybO0pNhfDiTkcqupxFoE8G6D+hHN\neEAS73U58DU49rFjf8gZ8N5y2Q+xWuTISW/FvpvwdNI/ZbnauP7fwPNoPlCe\ngJz7FAEWEySgj0BPVwJdHASAKrPuy6z5mUUFhekxrdQQiu/R9vGyCPrqrzd9\nglWNkyofznMlOsXhgX9TAt+1/mkGgnghy1XPJwnmDTiBsPr5GzFQbKcimY0/\nEQfna3VRrkfb+dBWQRYgSFLng7s0/sPRpWcoAeQ5GTZXM1r4J0P1KHsNOz+w\nRR2B\r\n=wC4p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"736788a64333b3e987bfe1200684b221397ee649","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.45","@balena/jellyfish-sync":"^6.0.92","@balena/jellyfish-queue":"^1.0.34","@balena/jellyfish-worker":"^4.1.57","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.43"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.75"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-736788a64333b3e987bfe1200684b221397ee649_1619863374729_0.05381521960380864","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-a90d86030e953f5931f37f33e193e51788f88161":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-a90d86030e953f5931f37f33e193e51788f88161","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-a90d86030e953f5931f37f33e193e51788f88161","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a841d56f66ade339b4702ada44f96aae62d69f45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-a90d86030e953f5931f37f33e193e51788f88161.tgz","fileCount":24,"integrity":"sha512-IbdVPBxPZ3ZcUo/XU1bqi2xwbmEQnbWZhDHPV6Upc2Sg8jRWMUIl8TZCdHOc6wz8EqQ8oWN03KaaNnyvZRDzhA==","signatures":[{"sig":"MEQCIDATMtiF4sLE/JKE2LKFPiptkeACNtxCvOETRRax3V8UAiBLydrstCiHZEa9vH+/hYCKNJz5LRaCNcospRxzUej36w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjSjvCRA9TVsSAnZWagAAxzwP/RLRROCz9R5hbDDLAFvg\nids08EHLTcKQVIpPx3yL+2Qu7ZIrFNZd057b+ENCKc+f2MJC7s2MtMjGYM/K\n9LEeACfU1VtcMxELTBOad9Avhj+4WB3K4zSrAppfrI3E2dByNsU3BneTzF1G\nd7cy6U6E5VpyKlsneXZWdWW6aOYz7+ckl3zOJQ8KiLYoG7s/khFshBFhKmoX\n9keGMsmrwde9QrNpLjnrnTa/zwzXhJ9Pmv0s5FD2NQdlQjO8sJhJN3c7pphr\ndBT9OKz2dchM+aoobrJm34XXTX85TeuJSioC5MNQhBtU4FYLKfUbMynafXs9\n2dip6tZhdYcLp0JG0OZlUs0+6tQBCV6hMV+aT98Q7l/AfA0DyShdtWro4X4x\nHOQeMbXWutSiirFKoATTY3sqT3oFecxCqU4GthQKAdHH57GZXjOPjvT5XpOK\nNcY5HIROlxyXjJDE4y76Xt6BFXR8WvVXgWEHMAKh7eBPb+NrzGXTO7IMe47r\nhv6osCCv7xUfYIGG4yQeIuNpgfean3/Wx60N0oel0LObz+bUOQnH0++2IhNd\nDtxdAdVpm+BJGr9xv191FRMMOPMCFbm1DKj3s0fXjdoEb7uREmiW5np73bTl\n+wpwVMIN1o4BugM7wo63IoXM176ica9EPRB0tqCxcqFpOKCbrY3MdxCBNKz+\nVu/S\r\n=P/Pu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a90d86030e953f5931f37f33e193e51788f88161","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.46","@balena/jellyfish-sync":"^6.0.92","@balena/jellyfish-queue":"^1.0.34","@balena/jellyfish-worker":"^4.1.57","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.43"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.75"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-a90d86030e953f5931f37f33e193e51788f88161_1619863791404_0.2375198423128999","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-ba70b983aed2fc175d6f5fd0c6c69a92f11c3683":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-ba70b983aed2fc175d6f5fd0c6c69a92f11c3683","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-ba70b983aed2fc175d6f5fd0c6c69a92f11c3683","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ed010e44416b75e80759b2692204ac1f6af54f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-ba70b983aed2fc175d6f5fd0c6c69a92f11c3683.tgz","fileCount":24,"integrity":"sha512-zSE4USXwfw1kZsvIDi8rHa9o4a9ob3f4wHdK9fhId3aM1dPNmfyyRDEFEVbhf75nLIhoPFzIoPyZ7A0ZsFmRIg==","signatures":[{"sig":"MEUCIF6UH3BGqeTortbvEUugbQTaCihyHePumkPd0qkPxZ+BAiEA1MgLaJZ0DMM9tB7uaeLXrHd6mjo8J88ZEZPV7L7errw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjTj7CRA9TVsSAnZWagAAv0oQAKNjidsxMz1hOx4FECSY\nHKYNsyQ6xzup8oriXBhYUDQUG/0WVr4MuvNNIY44tfNGE/PjGiJQepET8ZUT\nVQt06z1mdIc74ljTNm88wul12dbSNIfVoZ8/uqMfGi/F+WsLRscvDQ8qPTCS\nocs2vuByy1NY6Rm2/ufgK+LvANHPE091r62BcaEhVniZROnVnL41/Y1WxNua\n87HbZeUq889FlNKvviz1jcS0mYVoUzYZAhxI5PvRL/Dmct2Kim3iNjrF0HLi\n1Dfz1G2tBSpAtdMCXjjh2hLEQIcYWmVpKwxRcq+RTyO9tKkoO13Tsp7+v+b/\nyChDvijSs+XrUuZVwFJx0QT85HjoFPyPBsBFA1Dh9WVKmBkpcGszBzO2HmAk\nzOlf2z4rlWFn6h2wPnxrltSt3vn+WwQvwRegqC2/PufEv/+XgV8h3ViwjRH5\nS/l0BdXoVOLBbH+oj07k5GPZWPeaIuHUU/vwL3hHRBVDABzmE3CMwfiygsyJ\nD1U32c9L6h6lF3COUo2wIIk3pjVletN0DK1MXB1LWm3qkvTa4yCjDlseAevr\np2+vrvn7gmc60oyOG7vQeTn+Qv2w+FGcuTpNQaYwi3ehIMv4wq0tCF4tmtHT\nKiglc+kbstHKcyAwyc1K/hkCsjM0GPOHIkJ0Kn8W4Ml3Pbek79BIcqLiIcMa\nNOyv\r\n=lmk4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ba70b983aed2fc175d6f5fd0c6c69a92f11c3683","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.46","@balena/jellyfish-sync":"^6.0.92","@balena/jellyfish-queue":"^1.0.35","@balena/jellyfish-worker":"^4.1.57","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.44"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.76"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-ba70b983aed2fc175d6f5fd0c6c69a92f11c3683_1619867898581_0.6658331249443843","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89-renovate-non-major-b8dd86ff8c5f50a2759ff43376f22479ed0966cb":{"name":"@balena/jellyfish-test-harness","version":"2.0.89-renovate-non-major-b8dd86ff8c5f50a2759ff43376f22479ed0966cb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89-renovate-non-major-b8dd86ff8c5f50a2759ff43376f22479ed0966cb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dbc3466d0c179a9b99fc34b1d4b290f50384d817","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89-renovate-non-major-b8dd86ff8c5f50a2759ff43376f22479ed0966cb.tgz","fileCount":24,"integrity":"sha512-wdBEZ/xRiUm8ngMOf4GmocTS7k8tJREfVh5GHzFP6UoacUEgrnh1DUjHU8qzaD7gJ+boUFxy5RuU5C1p6aEsMQ==","signatures":[{"sig":"MEUCIEQe1j7EFbO4Cf7b3d8WDLDBf5SrWYqV3hEcGdXSBjjJAiEA5HIZIUcDpF8HuMEhZT/gEhAiy/DzT/M5/oP9og3mdSk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjVz4CRA9TVsSAnZWagAAGN4P/2iFPZyogzOO3ammsUec\nwehbgFFyy1Qf0PYhWzHRgOK+zJCXq65M8YOLkYxmzWCn8TaJm6obEJzXCvi4\nIfEi4TDdEbGUPjh40hf7XSwMxpRIoCPjnQDI/xxl7t9rx3YI3+ymb75YjOHV\n0M24yWpqeDB6A5Wd39cXbH13NaL9VF4+ImqUg6wG0iIS+wbWGRPujCUvIvSN\nJeI0JCQVnHxWkmQznQbS7SCuzDIascgYtTfneqhjnjc5J4hGWLTRI9UfH1xm\niZ/Ngm/CIYAhdv3IZOlX1HRR348qx/PWnO7/v5DvzC/wCypo5MtYjPYDKrU+\nVUGajXSpJeNS2hOyKaNewPEgJoxCSE+kcXJiGdGw+J7ZhknQE6gHmRGQfIwY\nWB/pN/w4aRbRTf5dcasD/0K8MIps/GnSZHk4B/pvIubvbRqmd7JwHsbPOlFJ\nGjtGCzfTw15G75pE8YMMLJvIiOPyxnFw8GLRvJCFoOBYf3COaq1AyudtkM0C\nAJXFa8ITkVsxe7lXh7oP9lDeFJhl+kipwY/F8DaMG5qKKhRYBGaufbqar4Zi\nmaLIf9r2kV004/7CHHKeB+OUdd8SPMlnSW5K5jN6HxCWV3cKWQmrPmmKDddL\nGtK389M2nRv6Flc9eIwYRQ4IQtMRdqB2SmzixaH/UkKokeY1geN58X4zTZTb\nlkOc\r\n=MOSk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b8dd86ff8c5f50a2759ff43376f22479ed0966cb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.47","@balena/jellyfish-sync":"^6.0.94","@balena/jellyfish-queue":"^1.0.36","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.77"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89-renovate-non-major-b8dd86ff8c5f50a2759ff43376f22479ed0966cb_1619877111539_0.6797592709118152","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.89":{"name":"@balena/jellyfish-test-harness","version":"2.0.89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.89","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"768bbb9502f9b64edff68749519cf970d45cba9b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.89.tgz","fileCount":24,"integrity":"sha512-lsQ+lBxA85jWl1O3l9w/mK6NQQoU+JrFmBDFKZhd1fXM3UTCBTnQIDveRMmYCdf57ZGcffpw9vgqPCov1qroMA==","signatures":[{"sig":"MEUCIQCk1X+bCj0nXV9SCyIq9f4SLEaxqXIor6qrJ0qbbC6jrgIgaNqlYrwR0KQPqyxnUGx3GBENYgTu9uRvztgw1HBu1fU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjV3aCRA9TVsSAnZWagAAlzgP/3CdrAqB5zfz7Y9hciD2\nXlpjn4gJVi3Wsc2r74xAbTe0iSu1EqMgOSrSPxzeqlwvLXU2JQycGiRLXPja\ntOqrLVzniS+eElEyYDjPnM9qZ6RxYg5Iv1atBuwW4eaGZc2PwL27n0TYaTYo\nurvZgzbrRJZ0ijKQJ6+Ip3DZBagt+cfX4J4ROmsgDngxCHox8yPBin4Mumrl\n1sn3a9KlDESZVqXd45ls6F4uR96pBzjpqhNtzFELnbIVZg96dto5zRJyCaxK\nd/qP41ngUbpL9VAFEXAorHJWJ3EeFn1VKoDDWE/LN9jKrOyTPjwNoaDAVf4Y\nhPjABsW8nBciXkYxacjp/Vu9aC/BZmDiHggANfmXZPppybeaU/hMGIR11s5C\nfGKalJWx9HXTvmiy28z5R73wah8l21M4eVEVWkhG+GDWPnPEmptDKCMk8ip9\nJ3BjKZGQlEg3yBY8Zl/gNfOaKsJy/8Z7r7ju2u6f8iBiiv2iiZnQWGxP9vWu\nkTMCk/OU1nIpg0QIMaypZgLpSxUQvirQ81SXi65syfaFslnHUdpD2y73na9f\nwucaZhHBRiy/21VfJ8U9ewR9Wa4x5fpMHA/qcPW4f7Sz8MeHxDT2u/L1RzFv\n3p/GTQfdsgQifj4lopmzvoIq+DUPtMftw9sE/tUIIJ1ho0ry6Pcv4xnpm4v9\nvdfo\r\n=KrIn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d0c0efc69b8eee756a69cc7f75ae81ccf815a2e3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.47","@balena/jellyfish-sync":"^6.0.94","@balena/jellyfish-queue":"^1.0.36","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.45"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.77"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.89_1619877338115_0.9585569067056599","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.90-renovate-non-major-861b95dbe64695ba3bf151a446a8409598630a99":{"name":"@balena/jellyfish-test-harness","version":"2.0.90-renovate-non-major-861b95dbe64695ba3bf151a446a8409598630a99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.90-renovate-non-major-861b95dbe64695ba3bf151a446a8409598630a99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"106758ccd1a2d4595d304e080a768b83173955f9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.90-renovate-non-major-861b95dbe64695ba3bf151a446a8409598630a99.tgz","fileCount":24,"integrity":"sha512-DL9HVcF0ELxB6TYEJaTaDK7hat1+OhKS2zhQH7YyKQJ5td7S0xupIdlsp/6LDZIRt6XCE9qq1j2dRPviQUhZXg==","signatures":[{"sig":"MEUCIQC8w1WMCtX3EhOQh7ZsEUTX/GAeYrR143O/Ft2MlLHeQgIgFmokVmikMHK8kS6cP5D4gQUZlF+vx/TlIkNCtZYsfJc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjW1yCRA9TVsSAnZWagAAHB8QAJ0b8BYFpEfrgeOt9QsA\nJKFJsO+4Ke+UhfKRZc0m7+3XUwpYohAYhRHIIANBPL1suy5ySmQZxZD0zKRo\nqIwA6JzzCWzJlznydO8qZ5CcpayyPNNnHnmtLeMfoDdkTKgAuZi9aUolepbP\nchyCMvaelH2ZoOA5j/qcCspLbHPhcr0x2nb7NBMy2pKsdbyPCKPPgIPUNXGP\n4Nn1t8GEkmE7Hst7h+wyHuryqV8RaU2/Y4/flZOjJ2VPjZRXHPITKlDWBLJz\n5NFgs9olK0Na6ZJ1YbyhYKc5Ow9Ak72qMsvwmTW3jHmhg4/j9OlREiLUDst3\nhUiPjY9pjqtJ/xn/6VATpBtJold3r586KZFwQW0PvHrpja/NF/POv55nYInn\nxv1UfB4hRvoKVhVlIx7Vc6umwY3RBipgyon/0tz5YNbwF8f0+0EbOUZNDRKf\nb1jhstW+ZEeFpvzwEBzfZAYCqDw/hYPaXFFMYE8db8eE7elA9LrvAiBe0SgZ\nUupjnjCTsbZSc/9udTH/pkuk91/thCeombBJXcv4TwTyUfNlqGDN4vWuZg3D\nFX1KCTcTpsl7g/AC1UbADhrgcgBA/lKdducBqif3Xi34gyobfd9inksRfRCL\nk19y/LaoNlZbGJfmamkDF/rR90DkY6xBWeKrt05ICqAZOCxwjyYOKUVJssHP\nY9Ew\r\n=WoEV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"861b95dbe64695ba3bf151a446a8409598630a99","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.47","@balena/jellyfish-sync":"^6.0.94","@balena/jellyfish-queue":"^1.0.36","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.45"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.78"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.90-renovate-non-major-861b95dbe64695ba3bf151a446a8409598630a99_1619881330342_0.8453952622455876","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.90":{"name":"@balena/jellyfish-test-harness","version":"2.0.90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.90","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b95c4f771bff34f50a813518063e3aba279a9912","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.90.tgz","fileCount":24,"integrity":"sha512-Q0NLpTB16qV9Ogutz6gaqS+0/vebWKMpCi9QGJykHijt30180KKMvlDuVEBUGamE2iwEq+m4vf8tRLpDpIZLzw==","signatures":[{"sig":"MEUCIAu+5gOUwYkRQethjl17B+zhzev+RvnTOSu0E9fE3BbMAiEA5QXe+ICuNhhzILjx54BToIoAZyOKRFWM2T017hVolBY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjW5ECRA9TVsSAnZWagAAchQP/1f8vLpwkiymbS2YT4ag\nEKg49KzA/wVcF0799VUIrNIdAZRUrVbbRy6u95FMiGa37VEqDk0PNOxUQLWu\n5fV+RrZ8/PPh28WfTKwXPG4qObvva+MIN4JXu2krNcPAkqwob2ZMB4a42V8L\nu+ltu9I6vM5c59HpmrQFkk7iTL1bc0jWVIvOZCdTQW62xKCxex+mRocFMa9M\nR48u7Wo4Q29xhbw6XShW1RfWNJFXaq8VHRgA9qKN9fTnb4ZzXjODAt9ufc/B\nGli03yeMVfTpCDCavTb+ptrMrQZZQm5l//+KxurbGppotYxui8IcQYz7yBxD\nairH498vBieH5VHT4rBidVEOKLkYuHR1wwmjvLu/6pPbW0P4aEzY8eP7f/0j\ngYGSk+C9PaLmdYWZyuoyV7fa+N1V1xI75asnE7pqWeq4VFR5RWNS2567Zhb5\nKCVY1yItSRu+BmpCfM8/rJ6r1hEJWm60gS3NoTOM6Zfc4Key0N/Xa5yAiblA\nBLtBr33SNQrF2mOLN3qKKFn6V7silZKIzUfnHdW45+RqSQLuCT65Kw7msBJ8\naX+kVpMyHWHXTgyEqiTxk0jdRLljLw9M4ufNPBrTXHcUqVs9WYTmimJqVZGJ\nQ4bN/IJmH7vkGBz0Jtb4v+gw7cHnyEkpJl1sHhHlf67s3Wm1tCxPvoB5Guwj\nLOA+\r\n=ucYm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"91bb162c269e3ec8927df9ae5712926010795b84","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.47","@balena/jellyfish-sync":"^6.0.94","@balena/jellyfish-queue":"^1.0.36","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.45"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.78"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.90_1619881539731_0.08672376254748704","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.91-renovate-non-major-393bd27c74a18b0435bf7f62bfa3dc05fc6821dd":{"name":"@balena/jellyfish-test-harness","version":"2.0.91-renovate-non-major-393bd27c74a18b0435bf7f62bfa3dc05fc6821dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.91-renovate-non-major-393bd27c74a18b0435bf7f62bfa3dc05fc6821dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7086a27ae6edefb0bef2d3227f1e932caa502a17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.91-renovate-non-major-393bd27c74a18b0435bf7f62bfa3dc05fc6821dd.tgz","fileCount":24,"integrity":"sha512-7stN05AZsDZP9hk9Cms1iwkJNyOMaezSjgp6TEfH/oMN4py36vceV0oiJ1TLz1wTNrysmcHN6gdjcT3lhZbeKA==","signatures":[{"sig":"MEYCIQCJ1Oz+NRZd+cc/83cW2uALhwHvi6jzCaHVF8y8n6QKxwIhAK+Mv+jNXbcuzePuskVPOhpoZAB8XOu1ol2AeEhd+75s","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91047,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjXvfCRA9TVsSAnZWagAATS8P/R8yetpUdrfcnEusWlfv\nsrnAX8cjuOJQYlG7TWeed55lXQ7k+WWplyY3nyuZ2abtLwswsVq6P2w5XOry\nWOqXb8LOVElTcxWrNreaywJztJOTx7RuJn/+GyOidOOdGGqe5nPwSXKglsC9\nxIDAe6GGnDUrm8Z4dQN4aIsSe9KYnGXk6Wgqe5g9vMmF6MwTb5+P0ymazZxB\nLOoxAk2xjmqNEIoMzM5EQLscag9B1fXsMrlteZQvG2B5HgOc5PbBvkD0gyK+\ncdvMbrmT7Sx9Sjlz5QT2qUEgtUeVc4xQ1zdDX4b1LBieJcdxr6ueqdj6lqMa\nKd77GIYZhXMj4M+CK/XMy1NOmx4l+5DW7ZO7/ZjejIh3Z9zSyvvZ8wTk6n+L\nx9fJ5Ho0UHndYdOu7M4wOzq+/vW2CvU1EbNmVepgVoXRYUHe6kmSMCS5vMKt\nvsi1Ytc0EBN9fJJgd20C8jep2nvxijDP20rtZcnbGE2VMC2BIVPtmHF0yJau\ngj+TkZZAxLk4aFoks5/RhXNUCuXpuBzxnfJpVgmCn5Qsn4Ccpi6Phl3kUnIJ\ne5XcBbrop1i5J7xAir9Dqk7C9jYWQ04bNX9avtqXHk3sWQGgJjQKOmPxbzxz\nCvLozpV1MYYRCpgSMbN9lWCTSyCTUKSqi6iBSgXqUtnbwD6ZREL1L9Rh9mKf\ny/Vi\r\n=4CDS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"393bd27c74a18b0435bf7f62bfa3dc05fc6821dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.47","@balena/jellyfish-sync":"^6.0.94","@balena/jellyfish-queue":"^1.0.36","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.46"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.78"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.91-renovate-non-major-393bd27c74a18b0435bf7f62bfa3dc05fc6821dd_1619885022843_0.9400234647310741","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.91":{"name":"@balena/jellyfish-test-harness","version":"2.0.91","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.91","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1237fc0a8ddd946fce8509cc3d34d2d86cc30ff2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.91.tgz","fileCount":24,"integrity":"sha512-Qmb9Z5clQK7pFEPkDY4yQdakGg6UYiqi5X9XIeO96jwNJMKa8/J9hRr9TyBkksSGAp/HK6H2KbCq8vEEVsaNDg==","signatures":[{"sig":"MEUCIQDKDxsyjyKokNixbbABChXwPTFH1Ovh0PYBqFGo0h9L1wIgarYxbuEFn9sPisKcNQ0jEWRdDV90amFC5ME33ilknm0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":90987,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjXycCRA9TVsSAnZWagAAhhYP/3Hvru1A6Z5MWgByBXKc\ncmEkDqKoQdc3GqMtyRdEUHS5Ao0BfwZpKgquh6VUSbPJx7YNv+o1ulnyEWWA\nliImscSP2Mt+gkxNgI4S6cKnPOzBLvMON6Eh08B5iNywzmqz2+K2Aod0vwfK\n0gKjG9zbG1izdnCwRfdsRwBe1S28r7VvGHOzi2nTsA9W+FikEMs4LNn3lpvZ\nXCIEwE5jDCQ59Jlf5FdEvPTdcMLfqCzlKJS6TYOV70EtSvOPkX3SmalafT0r\nNFAZUG8MVFBjqD5KV6WZbZbUPRKRISIi/lfgLmjgfk7YS8m1khf35oOanvfE\n//fwfzqZDkTwxe+4wx7Uv5Rlctee6TH5gBtJPxJFfvy51BpQm25FdHBlyXxf\ncMpvqzYDcKL9NvHMu8BtR2nyTU+L6yeCHSMcCkNETC8GRe9NrzMnOD1at2Ly\nJtAJFbJOs3vafsB5eDlrYXYuWZM8f30tVAY6cih20rpqm3RzUrrbqk8fdaic\n7NuQmtD4ivUrI5q1014rTklV1e9xWDgaakbpFgVoVRI/iPWuXzC8/IeC6Frq\nDaraFDiZGH4EcTHVaKGg9mG2HZ0lf/TDvnG/8jvZr/e4ecCsHZ/1Kv2uDcb/\nkvgh64FXpKjaspvvi+Pkh9eg4MmOPyNglmPF7zjJToBHSxiXvDIpl6QFOCsg\nIGSC\r\n=A/Yr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8c4ddf5e2db5f45e69dbc42f38b310be667ca5b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.47","@balena/jellyfish-sync":"^6.0.94","@balena/jellyfish-queue":"^1.0.36","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.46"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.78"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.91_1619885211580_0.11505046914056849","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.92-renovate-non-major-e4846fa248bafa732b4d4e2693cb9d715bb2666c":{"name":"@balena/jellyfish-test-harness","version":"2.0.92-renovate-non-major-e4846fa248bafa732b4d4e2693cb9d715bb2666c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.92-renovate-non-major-e4846fa248bafa732b4d4e2693cb9d715bb2666c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce09043815cad5ad50fe0204ef4ba03d912c3991","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.92-renovate-non-major-e4846fa248bafa732b4d4e2693cb9d715bb2666c.tgz","fileCount":24,"integrity":"sha512-BSXbGRfxnqcjqospznQ8Z7XVB6njE2kkjTscOgWrEaKupig2aEjCEhCEzrx+bJzSiMKNWumGi1CPU3i2xhmfTA==","signatures":[{"sig":"MEUCIDmw+FIh8gDfbZ6TdnmNiixsSBRzznwhq0/DbkLSvwGTAiEAskU82KVMPHMxtcvoKnr2fQ9/FHXmjfkR0ozkeZ58XvI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjYcPCRA9TVsSAnZWagAASvQP/2glcigCWtCSURbADGYJ\n9p8jeymnor43u+FPpky+CbvRraKK8lg8Ah8o9QnZD+ty63hMUdVwwkbAGEpf\n9EkNx+2ozfLRdE6YYHcmYClZra3rtkh0KRDaxuHUX3J9sx/ziJLWH3GtZ/gX\nxA8k8Cl8591DJ09xyM8f7Qjn3ue/s5KWzkAIUv/gIKRJECf5QEv4t4OfBC41\nOjtkN7/2xqE/y6NDzydWR4SyZAYUNJt0hZccbh0hTWKGAYC+2bfRd68yjVD6\n5l7kk67j3Gi5NUi1EQrDOpwkqEKqRBMcuHZgfVBeqz/D7qHzihb/pl8owywS\nWLoAMEsLinyL2ZVbh6vL4I0p6o9/Rz1BJbXw5jDvQ2XHccZquUNL4UmlXcnN\nPumluxw9kK6ODKkZT5AUqPMNtx9eZMKY+Hpm7GJQNHzi3XqKJzIrCvJrjp/Z\nZu6soyxUsZBHwO1Lx7lBLptfs+BzWK/FHcLgqK9PRgEqvfHQuj+D2zd8Wgf0\nj1JwA2jmDd01DpMxeR4bHCDyNYfJ7KKwWgDXgPJKDYLG+zteyVkPMnnGbq0G\nIhnEw1xAtl9qgwtW+0ty66AGGGG/MbHmm+oCslEBSyoiK7jj+9aAKq53uf4j\nktzgpL99Gbd07ELg4uWeNgDXxbDF8BtHoezaYee9h5H6hFy4YaLT0i9K74FG\nniMp\r\n=AW8Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e4846fa248bafa732b4d4e2693cb9d715bb2666c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.48","@balena/jellyfish-sync":"^6.0.95","@balena/jellyfish-queue":"^1.0.37","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.79"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.92-renovate-non-major-e4846fa248bafa732b4d4e2693cb9d715bb2666c_1619887886728_0.3032584849890698","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.92":{"name":"@balena/jellyfish-test-harness","version":"2.0.92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.92","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"91a3d57decded2136966f43f690f6c23ce225ca8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.92.tgz","fileCount":24,"integrity":"sha512-BLPvxeZV4YiTdfphUjrQ7wiiFNo52/IahPQnV0frB1GIWJpg5r6LdAVMRmVqWxYnYTN7GCx7MZRJBMC97SJibA==","signatures":[{"sig":"MEQCIHdeGl9qm9NnsEIBooKsD6gvnoKuraU0UX3VWgX2/ykiAiAMiOhVFcYTAi/nrJocj1dMr5tF4jI5e53EwYR8y5LvDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjYgMCRA9TVsSAnZWagAAodQP/3aOAiIwfOzit5SNGnaS\n9qyL3zFqwv0XZxzvOTwOVA7aJ1cet5wlbqeOMCMFb+8xQoQqg3QIL5NdikBo\nWDxmUfESlmOonZetaJhwlEAPWbIW+QCU/UVa2VKevbxFfPiSOZFYnMUITm08\nC/oEg2o2OZNwH9hvk4V1xK4IBr3w8B4t/9k0IeVpwON97mbNtWC7TTxJssFh\nvwfhn57CV1DYYeoCKpe9n4jx5k8IZw/2OOFKEAEkxfQ45AQq04exRfADyEqP\nrtN7Mlre7pxecWAWIGYnLaiXHi0VsM7tZRlNJt2pc5TBT6camS1wkZqCNXcR\nRAuGFSiwYDV3J51GBmErzdtvtfydR1oAPTjAXIGzjqJGva2MbSmLwe3OJSCA\nGYrQIh49J6RZKPjSNBw6GOzF6FUWd1YwEh8UGwXoJrw8GB3/JbBncNm1t80Q\nFc6IOYFuDM1+DenS1vcnet8ygxHPT+CJweKQ+RGrGluIV+AvJprpHRnlyB0I\nAeUpgqF9RktvSeEOoKmg9tEcEKFiSMMeT4B5Udl2304xKEXH5/qeKbNnNKAC\n7u/Yf1QO2hxtjVJfCqAeVubcwLzdUr/Z3WgbM8E9WHAWWL7QG0bIzlm8OhF8\ng6GIoz2lt0YKjr7KhIXPQKyTmhqqOeZqsgAh5g7c7yDMFJBVuiqrFSKwkjxU\nrQKy\r\n=7Ud5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"629c2483ad97371b2b19443526fff0b7db37e0a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.48","@balena/jellyfish-sync":"^6.0.95","@balena/jellyfish-queue":"^1.0.37","@balena/jellyfish-worker":"^4.1.59","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.47"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.79"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.92_1619888139903_0.7712208257063153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.93-renovate-non-major-76e91f01ef500fa2560287e718d3388af6ad6303":{"name":"@balena/jellyfish-test-harness","version":"2.0.93-renovate-non-major-76e91f01ef500fa2560287e718d3388af6ad6303","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.93-renovate-non-major-76e91f01ef500fa2560287e718d3388af6ad6303","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9694944a05b4d08d589636b7c30f0fae8ab5b2e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.93-renovate-non-major-76e91f01ef500fa2560287e718d3388af6ad6303.tgz","fileCount":24,"integrity":"sha512-M5S7B0Cn+T2vhoxxjGKZSqQPksa1LWJ4WyDuApfMkiXtDOsJ7hWfJs1ZFBVz5RWIMNtpcjjdtm0TSNVXASD6YQ==","signatures":[{"sig":"MEYCIQCW5ZAqO/E3o83n0guu30NZBsFubifaiNnN2oP1e+Lt0wIhALecDbJLo/8Zx1rCGHt4kA2pqo4JtedKFlqC37qmyJ1H","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91185,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjZgLCRA9TVsSAnZWagAA4ZMP+gOrgoBRaB/g0TWRrN6Y\nKIwT0t+KVWKI8flCaPJFh0ENhtm0ysccLtCUZh2V065T4ew+Fs7h/NpuoIT+\nUWEtsLqW0qW0mFWzV+8sQrzgzYIz0ZEFBfmBrh6Wo8ZEeTNsDc8SND+SmSIA\nsraf1a2wzDpyQznOSN+yKYu9HixvlILPK63A0jWIpZrmqH3MefWvKMwhb9EW\nHD6FprRofugDP1ppcG4jR6KJYszrte7ponuJjYktDnUQJZ74xniZiMYANlt1\nHd7OUyavFx3norlY0J5/uqhFy2rQ4uknG214SC8Imu/SQVWXvp9F2MvoL5nk\nO8335EEfJzyD7EY8U6jkTvd9DAfCJ190ZLNxFwOvO2DkPYXjQopeN7mIBa7C\nIuUhJusRye2SKl7yOsw9Gfxc4CyyY6tGJv4QT2mz5yHzPv8bxBRwz+/jczmG\nZ3cdDqIQa0Hmh4yFVYYYIeb/rEWksur3YqZZ0RDWD06MOS447uEv3NW22UVP\nKTK4HfGvMW1Y+mWtZdGDak2FoKh1uAxY3zT/UulJqxa3y03IwbXQa3WyVRQ/\ndiubUawa4SsrxmS/pgrldZPS1/rzro2vhAsBsxgctKlE9Vi4viH7NM0QxJib\nY5OR80B9bKOvKbc4r7Vzx90Tn8gKj5kojvLOLbVfWI2gFyJOF/tCYjrbS6n8\nnPwe\r\n=pvEI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"76e91f01ef500fa2560287e718d3388af6ad6303","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.49","@balena/jellyfish-sync":"^6.0.96","@balena/jellyfish-queue":"^1.0.38","@balena/jellyfish-worker":"^4.1.60","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.79"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.93-renovate-non-major-76e91f01ef500fa2560287e718d3388af6ad6303_1619892234715_0.028090654317790786","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.93":{"name":"@balena/jellyfish-test-harness","version":"2.0.93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.93","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1a16bc770851b7d2694699f4efc16067ca99d9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.93.tgz","fileCount":24,"integrity":"sha512-mGJj1wqkF1hBAI4Lz4tLN7ESSskLYlMgKXuZHZDk9Fpbj1ZoYbacXv2grbX5zi6Lr9I53Gp+iwo4IlIyq5uzmw==","signatures":[{"sig":"MEYCIQD4AAJBdEsfhVtpqUtKoVmrzQJREzuDcxozxMAF47F33gIhAMl9QCtHiSWvUhp11M+gw1RxvV/qnMF0NdJBZR8f8CRd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91125,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjZjaCRA9TVsSAnZWagAAaiIP+QDBFaz3Vwd0ddd+osMT\nttGCuFnPGN7jA0SRUveCPxDqtfaDoblwa2inQtX0cD/NpIQOvPrQ9zh0Ujaf\n4QDuWOvfpbjO5gbCkRMGkF80WzC9q21AVnloMzh0k28IMIXPmRx/b/fXD9+v\nFbJFAMdhXZnz+VtxSS+zLTPTDMaR3MGzTrDeyX/Sion9GtrVYb2VxB6M8ZZR\nYX2oo12K07zDK8ohBp0vC1Dmxx6okFz0vwf5UKkTsxdJFdhNrJ/YZy8S0CR3\nBB5VxaCD14oWd7yBYpxyXfdcuEOi+b+AhnKvUOJOeaDEQke1Uy8SZYd96zJX\nyjq4Z6RxebMkgC09hRwHTTILlVTbUCjFWbpcPNEHdcCPH6OmJB0Fu62nEX7R\nIGOadvq5blwSWxcU50Ie8yeAKKLcBUwod5fybNAQHa1yoz8Kmpjx4sPrDfCn\n0gyC6Tcc4BrG4BdbCRIJ/ZcuaZWco+vSFLvLM7tYd+VO2UQ8U73qGKw3z9G5\nJWeaCQiy/iepXvIsrcylBUi22SOhZgAfT0B9wi0aLIRMs6bEagqbkoWkxJKl\nhCWWpd9N0tNBU9SfqcVzSDWyLPCnIKyB9PGS9Mp23Q2amF8bBJyy+d+ESo2P\n7oDqlImNWBqYeiWU8OR3Y6Asz2J+/KLcsJDiNFDtxmdTYMJm907C2ZCVCvbx\nBpS2\r\n=NeWi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1f2af00a8eee0bbeb8c71d356e734b26cb471c06","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.49","@balena/jellyfish-sync":"^6.0.96","@balena/jellyfish-queue":"^1.0.38","@balena/jellyfish-worker":"^4.1.60","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.47"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.79"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.93_1619892442173_0.5505816958721377","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.94-renovate-non-major-cae44e40fa057dd815ced5f0f9b55f97d4a3c750":{"name":"@balena/jellyfish-test-harness","version":"2.0.94-renovate-non-major-cae44e40fa057dd815ced5f0f9b55f97d4a3c750","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.94-renovate-non-major-cae44e40fa057dd815ced5f0f9b55f97d4a3c750","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be89b043f532fa544c130b57ce50f0bad6f0e912","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.94-renovate-non-major-cae44e40fa057dd815ced5f0f9b55f97d4a3c750.tgz","fileCount":24,"integrity":"sha512-EoqVqLUXKMLUn9zsJr5tJg6UXnTHnkk2oK/aNs9+Df4DMPf9+U5aU0bcyiiX2VEBsikCbgXueffDYEHqGe7FNg==","signatures":[{"sig":"MEUCIQCVdim2ALhwpoFg9Ay80wCAuW3DR1sdG/e/PDw+FlVkiwIgYG7NOsi6QRyu3C2PoFOam3znPzLD0E/Q7Ez8vyi6bdU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjgT2CRA9TVsSAnZWagAASDgP/30DBBSKLf9837hCBPN9\nhmx91MLsrfcSPeUsLripi2I/XU7UtXe9FFat10yajXL2taRISzNzVUITwSRr\nEdXIyJUQ5ll7eSK/wTPnt/Ut33QAstwJWohsobpG7TVdhFh/zNdGBCnO43ga\nUcn6a9Qdr4DWHaovEHlghVjBIULLxKtWANVasSktpCb87awh31AXLjLDnHu1\nrazu7mKVbXh5jLaZewYxbDrVe0WgDjw10By2PSA7ROAvl/4ekw9Bpx3Lyfjw\npP/Fq2gxN8hSumfrO/BQsizx0Xeu3YoS0dGjk+6BOXAtygzhQeJs4g4zz/Zi\nfJ2B6AtyRymxFtarNBcFoGETW3qjS8L/3IwX/GNWlnWmh84HLXdar04An/ot\nVu1WLoc2XzmvsKIVKG5TVNKyHnJlFVYZfdsZupiFYkHIjs8wS1Y+NTKbMzmu\nS+esM8H2vuyz7N29sE5ALIDsnrWnze3OZYHaGB694YalkSayuVH6IolALC9h\nDRQH0AzStjkA65fhZNOeY1ennjEZEVR0BDpBg656chiWMNfjNBnAAcKTO0yg\npoWytiuMw0c/vOFBNQRlFVI2PPPPc67v/hscH25Vt9UsRGj6SiHhpexcm+yV\nYtqKiUF2QnBgQcMQhAwpSad8qt0uZIxUYUcCkO5gLCx/q97NyhImvYm3QfGQ\nbA4F\r\n=5jfr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cae44e40fa057dd815ced5f0f9b55f97d4a3c750","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.49","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.38","@balena/jellyfish-worker":"^4.1.60","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.47"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.80"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.94-renovate-non-major-cae44e40fa057dd815ced5f0f9b55f97d4a3c750_1619920118256_0.7834144351791237","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.94-renovate-non-major-0dc45fe6c6efdf0015ca4c2a448ec059f152f917":{"name":"@balena/jellyfish-test-harness","version":"2.0.94-renovate-non-major-0dc45fe6c6efdf0015ca4c2a448ec059f152f917","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.94-renovate-non-major-0dc45fe6c6efdf0015ca4c2a448ec059f152f917","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9c52c18b5bece195a8e40cad834a661ac34ca46","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.94-renovate-non-major-0dc45fe6c6efdf0015ca4c2a448ec059f152f917.tgz","fileCount":24,"integrity":"sha512-tgi9AneUwlic8HklshlTyKIKJQgyT4w3TQXORnd4vloHRT8AzJIRYaySp8IwdvfglSO+rW7mtgWOy3SNtFp9SA==","signatures":[{"sig":"MEQCIDcCCJJwrLmPM4Y4UdYIlWGapU9D2MmyH4jX9Sdv8gjNAiAy3zwwN1VCuXCeWu/YB4Ky3LtELh+spLHpnM7OAU2uSg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjgZmCRA9TVsSAnZWagAAXEcP/23cr5aAf+WPg5wg6HLP\nB6y9d11gytsAYzUGEvsOmJfvXJhJKhWVznJeLAwo9K5tlRCwRDX/jXkrApkv\n4czBJnAglgNXc/a1Cu+FqjQq8nVQ2BuFgge1s+kbcV7eaiVYzsXZYV3hj9Sp\nzib43QjjWIOMNd4sdImqQho0wQrv0JR7Pv5Szsz0AL6fA2u+CZI7ZpQ0q786\nW2lBaAdGkBih2qn/LBFBKqIhgZ0z3FM91w0KOpArXS9mwRPN9wNxmb3cs3n0\nFSfZFhSipLNnZKhJ1SpfXmUC9BbETxNdj2qfp2DJZRknzeH6RrNKVc/lF0QJ\n4Slgg07joKyq/Mue4U2gxYlB7N8HvGASIB3916NjpJvhGVdt4V2o/dSTUhVS\nk4ZtH5H9n/v2vu8pWh40X6PsSQhWMAfvLMI3fUnk6nJvcJYfhRaOhjVN4Bm+\nuq39Huz9cdK6U0/iIxcbrgefD38aAjuz9HuCZOPq204AsxE49lusLkmpC3l4\nkD906JdlYf37t4gubxFxU64Qnb57kub4UK1+V4Ys0nxus0gcKiN9Jtlz7/9P\nrgSUUOvRLgPDLrtpUKYzzQn0IkRSNbHiLY/U9T5ZQNrqKJ1uyYM1GPqZCM4B\nWFOyDneWK+AZisxjY8YFtw+z7jSjSBVCh0Wg+52G4k1FCbYepZoPCMCfen8/\n6JRW\r\n=Ab4N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0dc45fe6c6efdf0015ca4c2a448ec059f152f917","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.49","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.38","@balena/jellyfish-worker":"^4.1.60","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.48"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.80"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.94-renovate-non-major-0dc45fe6c6efdf0015ca4c2a448ec059f152f917_1619920486000_0.21179909373351147","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.94-renovate-non-major-12556f529e015ce7629b57d8c0c73c27cce6d455":{"name":"@balena/jellyfish-test-harness","version":"2.0.94-renovate-non-major-12556f529e015ce7629b57d8c0c73c27cce6d455","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.94-renovate-non-major-12556f529e015ce7629b57d8c0c73c27cce6d455","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d3847abb500289813cd70cdc90b1c0cd3168bd2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.94-renovate-non-major-12556f529e015ce7629b57d8c0c73c27cce6d455.tgz","fileCount":24,"integrity":"sha512-jdpo8eGt8Syu0Oz7v0CiBwh5Ji4+zSbBAb3qfh/OUb6cmUUVEj3VblawmVFtoTNLxPYSxrHG/0vMhJ4oScZyRg==","signatures":[{"sig":"MEYCIQD8lZkAt01blcpZoI+QsDgndK1gTfr3nzZapjJfYhFuIwIhAKHB4WXBvi7UUvICS15cSlm8AFtjzT+SemvnzryYC2s0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91254,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjgePCRA9TVsSAnZWagAA/FwQAJBVm46OKoNI0ENtExap\n03B/HRDhY/nSvTkhYDPuL1fQnQI8YaBzasnrejiNlCSlE1gIPkLX8HrlUEnx\niNjYOOF5VtF+pM2Hz7Wix9ySIJbHdubWA/I3rHRemFgiPdCquZn3NSpAxU83\ncTRMazwnuqZv1sMRH3EFD5/2IET31jlo9uPKyEpACTNbwzsBuEN5tFhnudI4\nelpcLZGxT0ATQpi/gsA/uskndp0YSUS8du0HePPiAjgp24QMk5qviYpEAhvQ\nKsUZKyp9/C+pTaOP8VvFhpp4xsWSU+CekGeQ8yCOYa84pdzzYlqEHWLcO6oY\nAeupcdIa/NM1Q/hQBpYaG+BxmTtQB21fpf2pMDwPMShunEyrajdgsAVPxAMm\n80kiMcnSPDPFGkQJOox1NQ/FllZmjjJOfNfer8JS8XaTefI6i9SprNfrnU8V\nvliSBXVJkesm4Erp/Rn9SBWqUJNaTq7f7+TjbX4qZUiiJGWo7OJBNnri4b+1\nCzXwwrHFIVwZN2mb1N9pmW611vH/aU1XfV4LXRHRRBuLVl6APSZEBhbYXgq3\nmshFUH7UviRRK+1i32O0IUDiu0Kpfqd3E/i1zHxpn1eI8g/9mPMtCdKh7WyZ\nWOvtL839NfLj5XgRg8/0UgFT3Wm6gr06pLQVrm565MOuuRpCeQiqKvSGlEcD\n8og9\r\n=OGKH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"12556f529e015ce7629b57d8c0c73c27cce6d455","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.49","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.38","@balena/jellyfish-worker":"^4.1.61","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.48"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.80"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.94-renovate-non-major-12556f529e015ce7629b57d8c0c73c27cce6d455_1619920782921_0.784886707359908","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.94":{"name":"@balena/jellyfish-test-harness","version":"2.0.94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3e419a6c28efbddd7166012488c741be7e7df56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.94.tgz","fileCount":24,"integrity":"sha512-rnwZGWu8Sk3KFwLYz9VaXblSWIasEgS2VhmBEeoNQAkw8epwlwGQnDlNuLLL4SfRu+l+lLE3hfDB9AwclxRuhA==","signatures":[{"sig":"MEUCIQD/81aur7i/H/KpgK9o2aALX6nBintnCqOzp56WV6sBSgIgI5HURM6HfXJG33oX/fckrIDXBZH/C3p4bw+/XCVno90=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjgiPCRA9TVsSAnZWagAAKNsP/08a282wq8ppDRUOnIeB\nGPvzbFXAQL2EysEjGHJkUJ03wVFntK4ZI6eJ/ZWuneGLfK5atLbxvobAWP5W\nReBkgB/x3M8j10v3yU/r3x1NOn6SRbJnFExXMtk/4O93oBfp9nEkloAM1RRw\nugEA9sWoan06qOYl+gPrqUwcIIfImpgESNtYSFlocyzSwK24c+ZWwJ+VZ6ci\nqJ6baUOPwYYKnVTyaBdLIGUtgM94f7nVuUwqqxQxrBq2NAfOa948jD/io9PM\ngrnwp4TUibILDVY/Pr85nNR/9wxQsYevnecgqXG5Gn3mn7RI+1gslD0zY/eR\nCkBnkuMzKNtS8Mmbpxpf806YWDRexj93G/OQQrHv42dtztyQEKhAB4MA0wcM\n5jI3vwfqz11oULWaCSU2e97jEQiF0xxsq2X1tBAjev+CMhawNfxjoWuJXi5k\nuis0ZDy24zL3nU9MepppsPCjJSIfq4N+5YdAeTXWGcQHp8KInHSOm0ISEH8s\nHuwucoxJybLUtC/nvVurssVRiI0iiNFPcRMapwvXJJo6ZBB5zFZ5+Rg3zM45\nzExDwzcgWVpgd3dKPHschvwwLXVi+hyMJzg9JP7A/p9aYqw2VzS6TE6Fi1wG\nshkPWA94SAvAVciVRuaJ5hqhDAfTlq2ggzOdcvOurQpmuDYSKWE1hHfHJCHg\ni/SB\r\n=hS87\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"72e96ac436c8f1a458c78be2c2d29e99c0955897","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.49","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.38","@balena/jellyfish-worker":"^4.1.61","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.48"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.80"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.94_1619921038436_0.2392261207864388","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.95-renovate-non-major-035025ed8304f8033878593da4f4eaae01cf56e0":{"name":"@balena/jellyfish-test-harness","version":"2.0.95-renovate-non-major-035025ed8304f8033878593da4f4eaae01cf56e0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.95-renovate-non-major-035025ed8304f8033878593da4f4eaae01cf56e0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c37b2e99aec5658cd66047edfbc6f4fc69beb263","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.95-renovate-non-major-035025ed8304f8033878593da4f4eaae01cf56e0.tgz","fileCount":24,"integrity":"sha512-SlU/xu35OeOhuSFIRT1PHKuDFEZpJgfJuV91tGNYhJ6pAIoRbt3womDOp91YHRwKu3vEnjXahcbi2bCsDhuG8w==","signatures":[{"sig":"MEUCIQD37w52Oo6f9zcIB9Kj30nAl0TsEMm+p9AYOvXipmCCbAIgR5AAxtG+sDA2KrLdAtoh0SlcOeoiLD3SCz0zzBm/obs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91323,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjhHnCRA9TVsSAnZWagAAL1EQAIAGMggS1GgDFMdxYjnz\n/q/RqtTfWHk/rTkYk7zPxKzNYgSMT3Z8YDVJK8/jx7kiGbsOWOUqNnHKE8it\nMIpuPeos+W2VhqtfCNf+//7myUsALD14m3H+FVsmtGsR+/mb5JGnFjUMztR7\nz/OFj99x/ZEqdlMz+G2tiaWNft5wP6ebM8YnJ3XR8OyLvh0jGhGfhXq5xcbf\nN8DRTVIQXGbO9EdBOeMGLq8xiHLBnWrEyaXR9AeIqU0QWqS5sSKTjUSnTOsS\nE4UAIWCr3pfIUeKGJNIx1OQANTAioAme4dLUI+wnsqxTrcVORBbhKNNKcC+d\nsFj0f9tDEME2H9JtSvLerUCTlpfssvFGk8Z7Dow4ygVGtxPLkXUh7OXNWuLL\n2xX6fgU4FHtr8gX4DpRFE7BkqprS6bT6ilJsNwxx77+ryjK51qYynMd0xVTX\n1T65yk3g1WO6zD9Z5AmSCqzF+YrYJcS3tqGcwoEIKtbmMzvBg+mV+XinUtOG\n3cLKmRjFZotyQGeBdd61HXFKJpqGR7bfNgTyCLS73kNS0khv8Z8TIGqlZWVF\nLnGZGHKYSYMEpIBIZbrcec1EE7I1fmPJkj5qT3XlWqGv4RKMTtnsUdGDAd/F\nb1B74n+VBRSXm1i37IVKKrI0f4CR09k3TC1Jynh8vyPBpf1x2qear4JAWcJ0\nS4vm\r\n=rznv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"035025ed8304f8033878593da4f4eaae01cf56e0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.61","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.48"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.81"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.95-renovate-non-major-035025ed8304f8033878593da4f4eaae01cf56e0_1619923430647_0.7150827007813756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.95":{"name":"@balena/jellyfish-test-harness","version":"2.0.95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9c7bf6ed659fe04b8b09bb9aee34be45c2fde1d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.95.tgz","fileCount":24,"integrity":"sha512-oa9BMGYOsq9Kgpz0YJjDVWyGw4cGv9wQNKKfI/cyLDbd7AnpeA7txCMTaDCKsZpOTio1/jGjKTHYKaYO9CUW5A==","signatures":[{"sig":"MEYCIQDzNOWsH4ZMEG12Lj774wYaAJ6A3bJOykbSdeP+4sVgcQIhAJ3uTE+k35nXsVyYTngQCoXCkorpWWAKMuiv8jUSwGXm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91263,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjhLDCRA9TVsSAnZWagAA2Q8QAJHV9dlcZulGMdBLTDqI\nvYsbVxPFDZGNqcF8G1E1MxAzun5gt/++Z+UlofoQ0u4IuI7rQJtcEpXqTeUt\n1/nsvUWg2BnawZX4g5wuOi2fcAcoUsSz8rZNd2bagyvCmT05XJoJ61NQljRJ\n0IXC8liZRD6sK5oYDk82z8mPlVvBisC+ES4459cPf2QuKGn4aidjpP25hOp8\n5ytsAgkc4vSQXsHlZBLmPuc/Hx4OL3NyCMiKLvQF1bc7OxIKUWgtK8n87hxU\nqYygekHEHxtE4ysN+wHgeDMp8Xl33ZERU4BNhXqj9BBBtCT/Me2g1ZVHSgCo\nte7r/V74G/FWpBS+K9DeRuAX8gwidXQ2ZmKfN+M4tMaFgxnW/EmTHmYkjSh0\nE1ylWgcZFYg2blX9+TkYoJ2UpUl11wuOHFQ2f99Ae26M2uUJ3uGoPPoTtxsf\n5sq3wxb/LbLzTd1P8oBx+DzoEVAaXE92SIyNL+ucnXHHauAUvfi88sBgRgCV\n5QD/9env5iVLKjShnsUR3rz2JB7vs76p4Iq6CrSKAAWQ1sZTKWjm0TJR+AHC\nYswHLOXu2t2wDH6+uyaupvsillZfctItIVXKnZDZd89Fl5SAUVul00XBhQ31\n/FUw5v7hdZAr+EHrFmEsQck4FREXStXgYrGd9HWjJXiz+srpncNPGocuPScn\nE6G0\r\n=d45V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c1b2258767922e8f0395ba2a30563b10c2b91f21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.61","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.48"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.81"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.95_1619923651353_0.6165726494446748","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.96-renovate-non-major-fa9feccf447e14b1623748df5f7614c41efa2d1d":{"name":"@balena/jellyfish-test-harness","version":"2.0.96-renovate-non-major-fa9feccf447e14b1623748df5f7614c41efa2d1d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.96-renovate-non-major-fa9feccf447e14b1623748df5f7614c41efa2d1d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6548ca04b985b4bf34c7216ea7134be9bf991085","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.96-renovate-non-major-fa9feccf447e14b1623748df5f7614c41efa2d1d.tgz","fileCount":24,"integrity":"sha512-a0mtf2IPCrwNVGdDL/SkVI6e1IP6Hcwh5KruNiHcI3BCs4vvuMKO/dw8hOUz18YgbuOOkD8eqtqI/nq08wo4vQ==","signatures":[{"sig":"MEUCIH2mPoz3I06fnFGN4FVTB3+U+dZUv0HqDauXoTh4lOpeAiEA0F59q1AZ9DfXz9KrCPnBXW9huPrsJQcSh4LTrC3zlPU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjhxBCRA9TVsSAnZWagAAOiIP/3Tmimt1yJacGUXFHS2M\n5Tfwr8z+ZsY7eUN4U/w6Op7Gnq5xVLOxjSRvHK2SBi+6gpuhY12uGckElipe\ner81J6pRIauTKdkfrMtrwh0gxelQ7uYYZNZWuWF15lAXPHGPrtecX5dKYAyJ\nbT1bfdTtVUgYkx32zO6b7UPMZbjEFaP08KUd4KmFpWRz6cNZpFPCoPgrDyQT\n7FWelCm4GDjezXsnDmt59U7qAmVE/6GBzC6Gm+jbR80AyyPbAjxJ8X0Oha4Z\nvoTCzU362JQ9D2wGEqXDqZ018Qea5zL/G7BbNkfjmwjDt+eyDznSoRBj/w5O\nPHnSz1Nr1jTp8ZT3pqWXZDs7XnIomMFV9Z6RtDbMjEmPx/aiJQaeTx+g7dqE\nKrwC0wgDYQLHiH3ksHVVitTBompCfkgXnuZaIJz1ECGLcCxUp7w4eqlVH6Bn\nF0rgbn8bflLX05/idIs7+BGQWKhHw8jpFAC/fhqdTbboDkOywlUnrbm4dSWh\n0rnfFwxi7eG/68hcYc5I8UkoSDJ15MzXdWRtZcL4faGvqL8bRts2HoYccc3a\niEOyZc87OWaM3yPoICmPgDh6mPv+jQST6vmX9NPh1D/zdNg0y/2hwV+XzeN3\n8a1x3S+bODBnayxZmWEa0tEeispe8kovcDVDSPMnsAUFjF0paSwqJCf0Q0LL\ntf4F\r\n=8wwL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fa9feccf447e14b1623748df5f7614c41efa2d1d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.62","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.81"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.96-renovate-non-major-fa9feccf447e14b1623748df5f7614c41efa2d1d_1619926081355_0.6882689613218242","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.96":{"name":"@balena/jellyfish-test-harness","version":"2.0.96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.96","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a87ea4eed26b715eef7eb89508b8d0a1a154b753","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.96.tgz","fileCount":24,"integrity":"sha512-FoA/Lm0NmzSTSXQkTdLM3Vr0dhSGbEjXype3QOYhZSx42UC8xUHZGfk4nJFvUpQIOjR9T3HUYXRW8EPpXl2JgQ==","signatures":[{"sig":"MEQCIAJ3X4HT41IQTwLOLpa6yL3p43vxfk7Wz/W9KUe1TbgoAiA4ekKQRCPnMjNoo0sIjU21k1h5T4nBDzoqQskfmj5BBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjh0uCRA9TVsSAnZWagAAJ80QAJdoz7eVyPRW2iVC+I2D\nkxqwfcPh2uw6rcoSVM8D55k6c8mIqeXHQ6NFinI/oJZeWdB4IwLBZzmX1JpN\nfIsOxshC+KsEiQ399TZKhbYOgc3DWmNMe1/HdodOFrntgE6lDv+W86FEnWzw\n5w6qhHRdEWmW54f8uToGm+1PZhnLOdevaKUuL8MyhY1ben7rl0puAtWrATbH\nVCzP2rVmvWXFWCoeKDDkc+Dzn7v/APk7P1XIcphrH5wiHhdM6olXxLgjbbyc\nxqB/7ZRw90kMEXflBd7cHuh+bGmaFhLnrOg9l7ZfEVmOmsjzOIyvzsu+b5gD\nEOq0E1VpaU8QEN3oE1Hn+vlr+q0Gg0+DWweYlZprzQShS1VSEchpuyZr9nKt\nOEsXUw0Dv9ga/QznH8W+7FUpIV/wbvgrCGu4HRaPTVxrVG+QmeD5fw4dRF0A\nu1FCaYyti9vNh0gfMR1CnpT8JcEcmCKLcFrwyRvnr0XBivnpAzlgGecolrT1\nGoVTjm72+gFqt/gejVSxFEt6eDYuxXArJciBV3ZDb/IXcE10Te6fSA+1Y5+1\n5HlmXdGJDiyhnSHiY3rgKP4ZtR672PBkIsfz5MMTnlD7XBSTZ153lirZB5vR\ntToyixnlNbZ0lFIDvUIm3uzTKj+tplA68ZK1Hl83+3l7Tm+k5clCmIdblb8P\n2x+Q\r\n=cGNg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"38743f0e840590755924e4d8e19ca9f60a8f2f77","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.97","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.62","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.81"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.96_1619926317836_0.6730230838880116","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.97-renovate-non-major-18b8b24de08dd06dbd77749b6056b3dc083826e7":{"name":"@balena/jellyfish-test-harness","version":"2.0.97-renovate-non-major-18b8b24de08dd06dbd77749b6056b3dc083826e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.97-renovate-non-major-18b8b24de08dd06dbd77749b6056b3dc083826e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"968625416ea19f468ec05341fff4ed78b0284f4b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.97-renovate-non-major-18b8b24de08dd06dbd77749b6056b3dc083826e7.tgz","fileCount":24,"integrity":"sha512-UgfJARrv2YUnA3Ib3+izkhR5pQviC7RYkHF6G4sE4ldR3jwjv2xJ72jLJnibz+Ee2HllpWi0HkNIiGxfbUdHjQ==","signatures":[{"sig":"MEYCIQCg6sxsxrBwuIiOQFs3llP4o6O3RiVrJKUxPmAAo+B42QIhAK/2TyPysI2aR/lPqRpx1zWDOKEHtAVCIesVtJryEjCf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjh3+CRA9TVsSAnZWagAAWb8QAKHsM6sk9rJ5Y8NOWLfx\nPc6kXjG29MYNR1cGU727Vloe0cA/h6F2ZVweolGS2pkYXMI3NX6WJybcM75A\nBE8qH+CU6WzsziWW6EmKVIQcAoIQDw90cXQBspizPhz4+xTeTTaYshV+m6kD\nS0jPnLeA40zeCqp3ZasfribznmHvRiYDMubUzRBnnmiwG/AkgRJDB33RAmMQ\nBHAPiHY3PyanezC/1ZdiH2SFxRJZqaHv6tNo9rY2151+Ao16Hwckg+r/iEfT\nNG0DQnud7fFeYx7kw1vgd7uIQRMBczUPOax86Fja4/2VPQEMKwZPdvOSTkL/\n4MOQDZKVwIjA8EYZEeuqg+5KJia5fTIrhaJRxvSkZBP8LnEyQryI+MdA1vjm\nyiw6zqjXSe5aasAnfWOBIM05882lgE4+Aal0ygWeJYiJ9gtZtmzwOCG6uVuh\n8XErR2SbdDM3FR5p2pgu4atvDNQ/HaYThkaksLSoZj1/E9wlkVLb0bTpRw2n\n8Ia5H9CcTeu6Il1aqZMjH1Ls0joRKEYx8kBYRAziOXL36wyPxwYzpf7tbo68\nAarGrSHlt99VUr/Ve4dpOM0Z3X7AiTk9fPnH7NhWSMklYepRd4F4K27lrJkw\nQgbOffZpUb+ykB0u+u9986RnNf2AvKTHX88rUEN0Y+E5nMD53M0lM6uB2hHt\novNE\r\n=hmKw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"18b8b24de08dd06dbd77749b6056b3dc083826e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.98","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.62","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.82"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.97-renovate-non-major-18b8b24de08dd06dbd77749b6056b3dc083826e7_1619926525724_0.7355346972776773","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.97":{"name":"@balena/jellyfish-test-harness","version":"2.0.97","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.97","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81e24e08a139cce4212ac71d560a09ddaeb8819a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.97.tgz","fileCount":24,"integrity":"sha512-1xFktGQfwXgIdG4mo/at1jd3CEn2GizmGU5LiFNNfOnPElhWh6vMzsdP0vp8WVei5CpX5TgB7uSlpQRwH+iUjw==","signatures":[{"sig":"MEUCIQD/Q10UCOlFAZauKNUphAREybGlY2yIzc+joBfqxc3HwQIgejdhcqEv0u0biB1RXE85fSX0AKzRHHrU+nGgLcXTlgM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91401,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjh+RCRA9TVsSAnZWagAAsqgQAJ33C2piGfsKszADzXZ4\nGRjNAVI7WpAF6K4WgMJOgnGtmoumwb81wICdxhEq4N+j/SpzMZVuxPGCsxa7\n2BxqVkQnkFfQg2omZJaOzP527CBeUTdFXMVCfPQ0TgRUZYPhPKy0iU1YZ3BE\nrk3wGUZag1Ix9KuBjuW3VLT6xW4A2L2SHRgl1BzxXbMiOCsOsc1zq2mtVAKL\nlVJCQAP2kj+X6fASPn4KkdJGXqB2IzprOvs6ITQyTW23ntT5EB+iQ+Gnv6UK\nL1TA1r3RoJTCeTwlmjiIUAjtfZx8n69KQzSU101/cAXneNSNqBXkAjBUDnQq\nxDr6Nu/BMTXO6a0l2+epCsLC6QoRKPwGy9Vz0ZLvGd+kJNr2Eb/2cNNh3F30\nic4KbI89XCxe6z9FZOJ83yvD+pPAgtqHeqc2ud6nteeQFR/mpMz8ZwMyYXdp\nbx1f4mD76duZ3UG+xl4tk1Z2Sja7ClpADoHs6mZHVC5U+NmEoHGYQzzZlMjB\nvivTUtDAOj9x44+6ezBKN49BQt0qCr1q1wgjV2ExpZ3gfJx57U6b8dRlIVHL\ndcfJyUVMsX9O4AZjOV53Z243DgBn5H6FSpSveSUGCwvoa3iM1s2rVVVqZHpW\nNQc164bW++yvI+tJ8q0xHhT64UhArCDCJufFDBnpd3YSwO6n+QxW4l8PvKCX\nCNZ8\r\n=dBsj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a99b7d83fa264305dbf289cb87118c7c1f8f4248","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.98","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.62","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.82"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.97_1619926929169_0.5733452749050267","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.98-renovate-non-major-b5078cb3638d79688afb25af2955de46cdbaa647":{"name":"@balena/jellyfish-test-harness","version":"2.0.98-renovate-non-major-b5078cb3638d79688afb25af2955de46cdbaa647","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.98-renovate-non-major-b5078cb3638d79688afb25af2955de46cdbaa647","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f6e0a81b703c6263fbe4e00551fab69d425a1ad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.98-renovate-non-major-b5078cb3638d79688afb25af2955de46cdbaa647.tgz","fileCount":24,"integrity":"sha512-MQItXf+OPXQZNk3Ds4TCZYZM5nczypmDx/ngdSZr38Gks9kX5om0PhkqyBZMSzIaPIphIcgUvSKJJkfnwRhAmA==","signatures":[{"sig":"MEUCIQDB0yUDbYx5/yUzNJBKylS7eoRXDlq7VUB5k5bvtsr2nAIgS01j3E0sdt4j2tOYxBl6t+B+ctxqW7dA2/f5cyqqI0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91567,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgji/3CRA9TVsSAnZWagAAVjEP/i26TklnsNhNAW/V/6KR\nguiweSO7i7+SwJOxzb5bOA3R/+8GWbxKLh1ymL9tCA82fHIAl5C3lKol7vTh\nRaK7+t8T6AyOCKwsoE3GaU4442uSth0ByFI+RZdgp3nDDgub3cL6ZMfkOh9J\nL8G6ngsgsQcv5L8UmGYQt9Nc4vT+HqzzZz0rAwpE2PgeGrw1t3CEyfeST7mt\nR1ekFz5P4K/sWRpbyVsjxODXTUyBuc8Phk3p5kX4mAQq9A+VzWMPnWdAfknD\nKbzBWh2VljiarN9AcFftaWk7B46U6hiYs/QfANsJVJKyJ6+HmkTc9ajfkS4U\nlcSHIbPHEIybPxM0L0yXmklEOgEvdKgmhaKX9bH9SqbIRfSN0nMBRdyvv6xF\n/3gMt4KEWQj9AGQ+EmspqZZKhOJbDKDCRu7vGd6qVZRQayNjZ5XRytv5/KqJ\nSYOIMYpJnmitkevnmUbxDDLaQndOEmjpB5QbLeILvW0ig8Z5/vF5e1sVTxIp\nOpNHSYEyOdz4SJ9EM6/i3BGJApfjIvKkI91nJX1/XPfU0nUTwIwi3xmh95In\nyZ13spUTkoZ+gtGQ9LZWTK8PihxIN9eYckyXqs2mdzMN0hufAfYEjyHiAn17\nNjwZP7jfJdBWsX3Ml4wYnai1D2HOKlxLgdAa9RkNr/LZwK8RMdxXD5iEil4M\n/kMZ\r\n=hXWR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b5078cb3638d79688afb25af2955de46cdbaa647","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.50","@balena/jellyfish-sync":"^6.0.98","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.64","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.82"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.98-renovate-non-major-b5078cb3638d79688afb25af2955de46cdbaa647_1619931126978_0.5135563957604579","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.98-renovate-non-major-6060cb8240bc064989a269ad0a012e4a42696d54":{"name":"@balena/jellyfish-test-harness","version":"2.0.98-renovate-non-major-6060cb8240bc064989a269ad0a012e4a42696d54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.98-renovate-non-major-6060cb8240bc064989a269ad0a012e4a42696d54","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e8368ebf7c04e32b135120f433d8952ddf88e66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.98-renovate-non-major-6060cb8240bc064989a269ad0a012e4a42696d54.tgz","fileCount":24,"integrity":"sha512-2f86RWGTJtmpNjePQG5i/vGnOt4h8h8XNe/gKDCmQozC3Y84+fLCDy9G8WiPG/UJCN/FG43Rzzal1cMs3kHbVw==","signatures":[{"sig":"MEYCIQCKs2ac2/tPwxioeqlS49OmMMPK7VO+8kyTzCaEhvlDmQIhAMukWGrG2BUPyimWDCGNMG8oiyefjHL5McRRefNwRXHt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjjDmCRA9TVsSAnZWagAABSgP/2i9VktUfehdCbZ7BqZ1\n0XGz+CxNbDNAM8/I/E6g/TUuN39yjWKUyMQxgLFYXx+OIeHWW6NwyJSyeopX\ng0tjcTBx3bRbg5izF/H/qfiauzxpRsJfgw65AZasqBdl1xPD10B8svb/QdOY\ngjP0tXiCch5rhbrkW482rUx/VNXgcq0LacUcvKQ4GvjBGQQdoch2uuULYOAK\ncGoBFgF1W7+69W9YxOfieTZhrlrehBnFdJcKQXX0Hkwe6mq4/Ynqoty0MWov\nikwI2CU4eTP95cBXabfMf9ZYldmT782HbLBYZRL0Eg6ID6q5gnFZG0LSabBS\ndhWQbtoOwKNzZiZJkyniafz49Nt0lpn+OMesliyHfuN7U6mcNSjGUinoj2Uu\nMuIOslkV1rgdJV/o7wR/6l6oPQ7+1qeWeUhm05YZB7EfbHlodTfV6GmyxY6U\nEIJ+fFnsidgE7o1z1/VlNrPMC1r/FNXSj9Su1hf7nZT8OrHqxVFiaT01ygYA\nJe7v3zYzdXjQ/e0vHIrOAAZNUjm4UNGoLUSXAnNc1TvhnhCDeBAP87kMXzvd\nBSjqhvDyPILurgFW7pMnIf6RZanuFk1K0MHWKbnu6XYtfkI4uFc7/RAIHUcn\n4Z7CstZwrYXuQBoX6aIrgWgo0Y3V06wHYgEvdjoS6wjEwkeKaI0xancddyYb\nTCxx\r\n=54fG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6060cb8240bc064989a269ad0a012e4a42696d54","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.98","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.64","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.82"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.98-renovate-non-major-6060cb8240bc064989a269ad0a012e4a42696d54_1619931366223_0.05322625130692127","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.98":{"name":"@balena/jellyfish-test-harness","version":"2.0.98","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.98","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f43b50c64757e4a4a01f4e7b8a838fcd97ac8b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.98.tgz","fileCount":24,"integrity":"sha512-qHWIFmdI8cCnXLR1nYlOwVZrNOTQTgQC0palFqpp72gqs8aPH8V04EFsbcj8Q0YYacrRGtNprOb2PPiN7AT3hg==","signatures":[{"sig":"MEUCIGp8PiF0hdxNDG/+H007e7v6pZ+onWkfPmhJXrh+U/GeAiEAofp3mO2eP0E8mhFTFqQAr2vWBygfEK6jACjdEwyQsJE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91470,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjjHzCRA9TVsSAnZWagAAGuQQAIpnvb1G7jzWxfOsgx0c\nkNVOj1KwNbYiQc8Qn9iAYZMpo0cj2S46r4fpNwMiN8/KMDSeltfsl4gpEvA7\nRz1ah8DAj7aAZQJgqYOCF5yTbJnwWgXONDLb3tqnUYVgr7Y547bpHY0ZwN1b\nc1AkO0SUCn6bjepHxyOJ6+KqCNpGslWitzZNvwQ1gFm6l4VUbQlqmeGjhu+7\nHS+i6l+LgOdvAGysydpfBu8IFMDLhX7+KXLelQlBwmuL6LKpXCqXSuYRFTCs\nkUQ+7kHvwPT9yt+029CaJhR9c6WPlYURX/KAbevS3TmVsAGBJfUG18nhP0zL\nRtvHRapdn1+koIvkzvXbzJuAPg61NdbPPQfg1as0Z+CVY9Ep9A12Szac2QkC\nkkfaJGihdqdH0wjqVGsY+nmjP5RrwX1S0GpxJUPlnhqf6Wg+AH/cugqCuyLw\nQYqEz8UKINt7Rv67lxTadOt3cGGQxEe2Xt1YeX915OO4jSnqPMm3Jgs1Lnyw\npsg6B27wKNSXXjUjjZjSYxeVQXe4Ff6lW6XDA26zr5yRYnEtK5PzhN6VFMU+\nPVsveobuSy1C2sM5e86p+qgWgjNybI/8N/TuyE2oNMwV7cf0ZoaY2k8c/cyA\nXNkpDMs0VUCysXpzf6YbAKoMeGOo0Viu3EtekGQMcffWzIRGCN/9cLotGH5f\nmdIF\r\n=2zyZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"444e12af7900b9da61ec873833eeda46813a1417","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.98","@balena/jellyfish-queue":"^1.0.39","@balena/jellyfish-worker":"^4.1.64","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.49"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.82"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.98_1619931635476_0.543660399562558","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.99-renovate-non-major-549ac0013c23ebe0c418e83f486c011565a81fe2":{"name":"@balena/jellyfish-test-harness","version":"2.0.99-renovate-non-major-549ac0013c23ebe0c418e83f486c011565a81fe2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.99-renovate-non-major-549ac0013c23ebe0c418e83f486c011565a81fe2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a266faa0120a4721679e747515363eb9ea7d395f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.99-renovate-non-major-549ac0013c23ebe0c418e83f486c011565a81fe2.tgz","fileCount":24,"integrity":"sha512-zDhz7d9r9fckGshHKAaK6mW0VWmstv5X6k4V31LDJ47YGp5rPkmCm5NbUVVo7Lh1F+CQnojcWAWmpepLFR+3xA==","signatures":[{"sig":"MEUCIFNtKGpLDsGRTMUEYV3NerRObqTBPx5KXf7WPmVvM7D6AiEAvwoZHXlUs36C0OQ1QxiDJxzGs7xj02uCgvShDWrufOM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjk/rCRA9TVsSAnZWagAAeFwP/jDuIkoIOgyuKc50BA6i\n1PN57L0lRu0oqAeL+DyVD5HTC8lLEBBfMhsuftnuTIo18VlNhVgwm9QsAmqL\nld27zTOP3lbRn0raPS5IFnSSNsO1DYJ7Aeq4XAtGm2TlIlMBKKt6l6TMF+2L\n3y5Co6auxTkqJJ3aNR4iMlE307O9nrO69ELqe5odAriJQ+fanFf021LpNPal\nfRIWoMxx38s5a0yKESbw31947qg7L6HvTPz8NCKMPrMIkRurgpW5g6IcuvVJ\nfZofpvciP6zR4of5IpAFy4KsXu9sSNEW8lEjCxH6IPZ61Oj68fdtuDOu2L1G\nITDFSjrE2hEtzs8omOITTYiBVH2l8Hhd+u27tuaNq4j6d1Y+NKUqy5HFysyr\nR0Uah+cmF1llW7+goaQP5T6AC6tOpDMR611/gvdHMvWCFfskYFPJH4wsYmla\n//E5E3H6QeFC7OJPbIFjRbDMAXqf4zmssH7Ch8B3mXdsNJJeNDKhVrbWy6Oi\nLYhcr1CR7hq7N46Ul/uBdNKuM4xkX4n9Dwbv74lWtX9r/naC3iWirHGcovo0\n/+GV2RoUm21agoOtuotQSpZvpFuKj7P2dwUoA+jPW0uzCLPpfvdV6cNNhUh/\nlOrfUV1I+AcnB+fjquzKh0ZmcmUhzQuSRcd175NNRaSHFL8/b5nTxdpBsEVG\nialO\r\n=PHlN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"549ac0013c23ebe0c418e83f486c011565a81fe2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.99","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.64","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.50"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.83"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.99-renovate-non-major-549ac0013c23ebe0c418e83f486c011565a81fe2_1619939306757_0.6931606708991052","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.99":{"name":"@balena/jellyfish-test-harness","version":"2.0.99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"91cd6c7ad01d71be52994e83d0a71a45d0c9cd6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.99.tgz","fileCount":24,"integrity":"sha512-eEiBI/ZKREliE6mlUAARG1BDa6g5GnW0MJWv/VG0ElkOzb0ZYqe/wuPy9ROCvnSWr53NNxRg3AftWxcrB4K4Bg==","signatures":[{"sig":"MEUCIQDHpM5uTLZB14E4o04FSniB/FV+5GkKRiJtQtNjdqB6IAIgNUkRxZXSnj5jX3UzvldFgXkicwKZYCW5MLSIEtm6zjE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91539,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjlC2CRA9TVsSAnZWagAA/rQP/jDWvi0U/55iWKL8B8GO\nllytp1dMQcI3H/3w3eP3ZodSMkL0q/GkB5cNOULXJ+BUXOD0506Uvce137/X\n+PMh+GZm7EbxeVcQJOZs5wGr72joXWiqkodEpKsJxjJsEGbe5KNXWZdbxxGQ\n5vyivhoscU/+tN/ojaVdU5JOekBWM10mPNH2Di1kJnTZvBVkW0jYdkAa5qRD\nQqC+X8MZc7h5Sji3rIy4bX6qYx2T+vS5ipU2z8DrkK9aUunMOQYvOvVb5k99\n9a9LrbRI5wZ10x/coofBID78JzlEAEF+kfyXrJlPiS9sMB5x3PIHEk/4tCqe\nxzrt/klIBHOzaXgSww76v8EpMJqGahnQ3Hh5PHsiCgr3jnrp6KpbpIrgjN2F\n8GpVgPyZZ5LDK4WDjgq5XsEntdNRFy/iuG0vYPQsNF9+GPM9Dopzdi7Ix4zP\n0+G/2spPJyEMMLeeiCGhAlkMQwY0DGV9dPjAT32yR2u6fg0OikD+h9zt5VVo\nbEC7uXGggjUApTx92YOzL3UxZKZbdA8rXAI5lIhBhZNK76ug2I0y3LhdnvDx\ntp0XnJpUpMURX3lmBC9MjPI0i5W5OVVUiZA+xlW+YfFnyUG8SmguBNaPWJN/\n2bBQLiZiDX4XLd8yxFXOGb0GOag/bwE4v5ehIszBGW3FfTejYaZhP/BHexIT\nuvWF\r\n=e0mj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dbd2e998e2f77f55d3ef1c137393c3a03d292e46","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.99","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.64","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.50"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.83"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.99_1619939509823_0.19691413374761724","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.100-renovate-non-major-391594dd61043512132066cce47dfef0de19fe04":{"name":"@balena/jellyfish-test-harness","version":"2.0.100-renovate-non-major-391594dd61043512132066cce47dfef0de19fe04","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.100-renovate-non-major-391594dd61043512132066cce47dfef0de19fe04","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2157303aceda30e6f8cd0826d88e68aea0b0bdba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.100-renovate-non-major-391594dd61043512132066cce47dfef0de19fe04.tgz","fileCount":24,"integrity":"sha512-Dh5EyHGXSGQ6fOvlB0cWFE6tzacTczC90h+iip8xnQ7/F4Mw+FEA7UPKKj+YS3GmdoBUB5VyBT8faujWijT57w==","signatures":[{"sig":"MEUCIQDGCEwceQjMh4mPmVQpblZN7QZY1bcpzqAiNY9FwpAk3gIgbGi6bdSCqMeHCTeJuUmFKnbMG09ZxJEGx1QfxKFrDRw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjm8DCRA9TVsSAnZWagAAd9YP/RUr6Hx2NF2UdfC3DEi3\nOa6Ifr0IKRkasuyDSECa8BzZer464l3v2sLpmoQUiGPyIkLCxYl/4ellJpgt\nx9TkwT9cZKfRzCRMRV8jvU4jspT3iqD3wiO3M+n54U8M4jAgavsOoLL9dTxq\nkZdrLdjMhnYIiVvFEVJKdkjeJnp9pHWjUuubNpawNs9vvQ+Ms9t2i0pCCZe/\n105aNOEKRC4qu/AP4W7v938wg9QCRisBeQSawyc0yoA3YIrhSLCYjm93C3Z3\n2i286xM4hDvonbcWiGIt2ajfspLYqZiCNMOsQjTeEjYff9vCqaeSQSGykisx\nQi/Jae/cSQP0LR7cOh0dLDFpHHdHdgbiwc7ojlRhz3bVGVDzCTGI8yjfDfN9\nhTnF3vgR6yL6tM96FgPE314d2fCJI3/jeLRN1BOoHiNJuB0WkX9TrxR4cHS2\nuexKAcA7CThTu/yHMkO3D2H49GXa+/k3NGs9AIY5XY4siIiy5Sf7Rr2nk9Hz\nT+7BSEaEjWLi1y/I0waXFdZp0K4epjWBo0Q2FMCxbDIYExUgmy73tZMcUyNY\n36GK2TA/9KoS0Bwq0j2yVAMv9NlGQkLhRUqP3b+VxAD+i7BUx2B/dmLsX8Ln\nLmPnpt5MJ1BJKTf90PhC671chLZkXh7ruQSWDcdGIkSTnZFYqNiOrtzPK5Lx\nMwbx\r\n=dI1P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"391594dd61043512132066cce47dfef0de19fe04","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.100","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.65","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.51"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.84"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.100-renovate-non-major-391594dd61043512132066cce47dfef0de19fe04_1619947266900_0.5145460991245079","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.100":{"name":"@balena/jellyfish-test-harness","version":"2.0.100","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.100","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97d1edef8ec8013337f0caba0d4a164a01e1dbf3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.100.tgz","fileCount":24,"integrity":"sha512-X92sPSHPCfcZNDfZmr1HgY80wA165Aa8XVYup5Z/+Zc2rWodQRVSHZe1IvupIQxvHPrjI4g0AXmxV9C+5ZZmxw==","signatures":[{"sig":"MEQCICDT+v9cd9w3QWbCcqbfSoibijaEytxqKxcecBOjVhu3AiBWSFIuIHX/rW2kUtvRPuhUPW9F2bbx8Y3WGXc3e5aUMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjm/ICRA9TVsSAnZWagAAiagP/3lnUdcwrWIduqvRjDtU\n0vaGnjRMVM21SMu/o2/FU//EpMIUOBT81e6xtClKr1R+TBrQh7jPzediwKPy\nDDi6NtzBbJc4tWxoPO8G2ZOkuvMQFtw7+0HmFr+BeYVbsQ0eWKth/d1IgH6e\nFXFe1MChrCHTvt8yc5D1BQmHMANXpIWC3ztvFesm7cRs2ToJG66K64NKU18v\n4M4n7t1I861w2SdxRdL7hrgshWVg5sbc5dmL7H+1WOR6EOvtOQPNTPi8bvDB\nWDnpDkhDTEfeXsI88I2Z3PVPYKKIsjzTMFHL8sgpxp4+MTHZtRJVEqIbTL71\nKADCnNJKjZF6L9tiXp5how6I+JWpZXWDLTrGtDpMdwbjTI3+YZOHfMGMb9Qp\n/nCqLR05voC5SOe8sbMxYbK34Fd8gKIPlftdKFB2ftzwfZpDGgh+Jjm3/Nfa\n6aQf0i11ZTz3V3ONi+mKAdk3fKXgBxLrBxV23qHocOQ4i9gRfGx9RUjiBxz3\nirJ7UwWv2oefEncZg8/P4HZ40OHQ1uPXUVKRiaWZvLzuh4+TWFcav4HwR3nw\nE5uYoUx2cVR5NYOibGBbazU//CwO07RgH1sneZQblfABDLSfYPLIAOLaC3QB\nX1dD96sj66Jc3Eukhml1Aa2jzDZJbTk5IZ8PJEzNFQxFD2pFKqYylg+5WX2U\n90HT\r\n=gVrh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b5a8332720dfd5e9ad6a636c58ccd6e03d0798a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.100","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.65","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.51"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.84"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.100_1619947463838_0.9573032068182918","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.101-renovate-non-major-cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8":{"name":"@balena/jellyfish-test-harness","version":"2.0.101-renovate-non-major-cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.101-renovate-non-major-cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ef57c6bce4dfe3a92657223ead9116058ba589a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.101-renovate-non-major-cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8.tgz","fileCount":24,"integrity":"sha512-3WRRBlVdPSdvghQmkfBlN0pXSmOW7Ulhi/dzVtfJ/tsI4cfpt2TLbm1AvKExcp/NDQbbFD7flcdlCiQHE07EDg==","signatures":[{"sig":"MEYCIQCe+DqbgzLHxftG9GfajGtAJG/vpNC86kIl82s0GvnBfgIhAJKAd012HvwcPdTESYFQ3+FiUu4ClBy6LnmYz8FFoYP/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjogICRA9TVsSAnZWagAAdjwP/imEda13o8mHfu6fA1tK\n3R/kyk+Pmb6YjOXn84ezrjvXl9KuVyM3viizU/SrFD6H/+BJB65QbyfVeuTc\nuTYj/eccMuB45JprR4dkBPIbN5W1buSxX7N+IeQImN/Dqsy+g4hGYOlWH8/1\nH9YdkOq2gvYbKf+oEMGZixdc/SBVP22AmI1GBmt44qeZHZawBOi83UiYaSIC\nJyYi1QJ8cx7nR56IPl0vG2vivOTuiFwmi8zy+E9akpWZ/ujFF1QTDbp7TQt8\nGX81BJoEZT3NDAYPEGeonrxNNIT+V0z749t6iP+xbrIJi3gAIs9spDt6BZDt\n53Znbzj14BTubGdoqMM7fMY9JDGHhEmlIC4/qUrks7NfYZCOqnhR1kurxj3N\n+fln+KvkOoQRAxQRO8jrJKAda04XEk8eZ7mSAtxxPD7r15yiCq1oyG9a+fYN\n/EnybfKac9GxIJjrgpgjBy8ookVkHRPvzg/dm7rn0sPhLFszXQNx9F8Z4GaV\nMQ04ZoPwfq5DC5je73P5bXu2bXoari1KwOAdp4JULnwNgA7fxvseZ7Z3BxAl\ne5ffmMVAQ/aBdy6kinJTpRRYPWfYnqi0lx6c5+gnqwhC9qiMTTuYCqk4tEYs\n3nWbVRRYPvAB2uPvJIAe7qcgF0w4eb6huR8Q/W+u56rRGpHTqRFzpn/PFzkA\njfeD\r\n=g206\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.100","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.51"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.84"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.101-renovate-non-major-cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8_1619953671808_0.18053399008692583","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.101":{"name":"@balena/jellyfish-test-harness","version":"2.0.101","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.101","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"42c1589001e958c2df837cdaee37f36b5a549579","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.101.tgz","fileCount":24,"integrity":"sha512-G9jdr/Wh6FHdEnc85b228/omxAnSMNHpWevk/VcpyG3A0h/eBH3dhfA9xZiQKXpEsDjQpY8/NSqkmXwqgly0nw==","signatures":[{"sig":"MEQCIGohiClQgveNs3wAx4ByyVts9kcWpWxSMwO2xXkF7tOcAiBNzthl7nrutwHkBUyGdCOQ+bkKvH6mmh0Ybzel71eb2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgjoi8CRA9TVsSAnZWagAALSsP/j5nz5z7O/10FFdCmSJR\nnS7yHzC4F5D5FWW4EQUbrtodOx0KOsajvN7/sSDhR5+FXJag5yNEOrESzhlO\nmbYu0ZiouIrVL+6aCUZZX20X2+XwPPs9Ni3H5i14XdTE5UXGisMb1AaTTMgl\nmBeEfdm/6i3KYFjNl5mQTBbadL+HDy25aBXbB6R40rt6lEd9qi+n3EMrlkh7\nO6MerB1OHISoXkeFVMXxstkKhVHc4QRaDcKNS6D3izqtYxYsbzA+zBZppqE8\nC/HaAen/wRsVI9MdBG1+ZyeiiqEu/f5G3czgcFw8+/5ELz0s6hscojVEhtp0\nIwLoMqclJZhU9woMaxGsoXH29tkJDJBRnmmubBDEc/QeZO3ldLajpo0KDzJc\nVQS24eL9Zv+veirMq0w3KuOif+a3VaaezApo/dttGBJwTsHJtdbiFZk1lGx+\nsu/xvywek4N5q9aaSjT00qnZwgqHuxeYXr/enC0eW7+Lj+miUq1416XLpcOl\nCQaCYEZUGnLrVB9/qMRLGcH2YlOevL8GS5d+3/2HIajAHBC9y+LijtZGjm4i\n/6v3yNZlFHTYBiJ7i4KUE8N8rmYZcKs0ICnNCbQIwo3e7LbVhtHYu22UyVj9\nj25LOvuXehIKlUGkGk7ISE+R4kM4oacqX3gojeOaQ6RrCiR9KoruJcrTLR2y\nzBs2\r\n=x+Ck\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fe65aeea28e0c7bb6d4afc540611f2a9d0f5625b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.51","@balena/jellyfish-sync":"^6.0.100","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.51"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.84"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.101_1619953851685_0.3483677522179016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.102-renovate-non-major-fba720de96aa53585efec9dcbd4f071c4f22acdd":{"name":"@balena/jellyfish-test-harness","version":"2.0.102-renovate-non-major-fba720de96aa53585efec9dcbd4f071c4f22acdd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.102-renovate-non-major-fba720de96aa53585efec9dcbd4f071c4f22acdd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d8a91c36c36a8aa28305d899b40d0671c3a7f991","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.102-renovate-non-major-fba720de96aa53585efec9dcbd4f071c4f22acdd.tgz","fileCount":24,"integrity":"sha512-SpWEfM/yMqE/kh4RQBUtgOudkW/L88FuLGk6bSOBoeI3C/G4ayqE177+/iGBxpWFmKWMF7yXuQktmyjiJuSvdw==","signatures":[{"sig":"MEYCIQCw+/MK+MYZ8HYgfVkn/GVCSZyoK+L61OL4AnAawUnA+QIhANx1FO46dvt+PT30j0wXfnkdUz9LIxWmkEDTJqzLNqPQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj1r4CRA9TVsSAnZWagAAQFUP/j4Dj8A2Lnb954tcbF2q\nPhsckYAv0TBmwL3Q7bE9Es5X4WKQp8BpWfX+fd+qpGD+zhHbGXU5qbh47CxY\n6YL44Su9TC/Tj0Uo3SfG4Gq8V6kB5q1k5AN7ooonJkPSPA4644ND/S0lQcR0\nANdyEApL72oiX2HQlgGmkC6ofGSInAqAdd9F49HQdnzA6U42IXQ2nZAMdNd8\n1vHOyipBZiRECmPBz7M8X9/y8H08u9ymxqRwViG05hPmM2cyW9j420W+6R0j\nSpzhBqc0pyB30laPySqZZFIz9erpNH6NUnQzKO5OpwO8XvSumeFxqmynHqBp\nHK6fWRzLDQFW2n+P1mTzxQn+0Cn6DI6fjUo+r3K+91y+WfLyC3aCNO8WI/Gt\nDtd+F9th0KV+PV+t+3iyDhf/WjGvMASgUBtcVuEewxjtMytV6dpJ2uTXjcff\naJaPm7M6TbRqGXevw9soy/oikiJLkFQ7RzXaQ9Qm4eKVblIZWtPPkh55RLel\nIq5KqBhMUZmjJ6aKToYT/SsMjuVaNldpPMfDtUfC1LlnhCW+3r4/jIt4HFiI\nuIDYizbRUA/DUhalecg5Ku3QhMhLgLFHgAPoY3+uBbSAr/9ISbfMVpdpRjeV\nbtt3cfRHo/9AFmhvoznX5rwEwQuwIcoA9Ra+X3pOGLrtGFOCwn0nsS2UpFo8\nhbXE\r\n=2zmE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fba720de96aa53585efec9dcbd4f071c4f22acdd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.52","@balena/jellyfish-sync":"^6.0.100","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.52"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.85"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.102-renovate-non-major-fba720de96aa53585efec9dcbd4f071c4f22acdd_1620007671726_0.6747285619660068","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.102-renovate-non-major-3bdd92fc17aaef877e4aef32de56c766fa1510c6":{"name":"@balena/jellyfish-test-harness","version":"2.0.102-renovate-non-major-3bdd92fc17aaef877e4aef32de56c766fa1510c6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.102-renovate-non-major-3bdd92fc17aaef877e4aef32de56c766fa1510c6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3fef6b8cecfd046f1cd733c3938f0ad4e3216aed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.102-renovate-non-major-3bdd92fc17aaef877e4aef32de56c766fa1510c6.tgz","fileCount":24,"integrity":"sha512-DBb5qVXpYP196AZ0nErPSD3tqJt5tn3idCH6KHwdDOAaRAHljjAKz1SBmi8mNe5WBTrsEye7Gpx+0b3AZtzj+g==","signatures":[{"sig":"MEYCIQDBPzJ4H90MoYpGDkRcM7QLpzu+OKu+RBwn6jENfwhjxAIhAI+MiET1zQykbxlmvcTIr0FKVRp9AzM/QUxhFSZkPs7l","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj1w8CRA9TVsSAnZWagAAPAkP/3oGwrmHpOs9ty8wSmqP\nbHCw+qIL60IZX931/rAWGkRPfqVLe1M3puuX+4WkfaBC9EkEzc3oXMPgePtQ\nt4xvJo5AFjEcdhC3m+/nkdzpdHDAk/DPH7erbt6wAxxdSn+98y0FUMmBJzUQ\nzr/QS3x/PIfSaUc07ew63ZP6wYhy6E9oLTNAsFCrEyjZ6wTjgtsXPbWQYf11\nLkcWFrsOMn7tLC4f0UPQ+B+oVI/GcoNPZEY8kOzYjoDJP12jaBfx2T3I1A2e\n9/mJbwG55qABXYqK9rCuCO5TrevoTe0AkeKBIu/rlHTbNFhb2O+4o9EJcFHC\nzm12wCwzqpusfQ80J4AV3CZhovJe5hvCspJiEZ9oQYfHM7tDY0OavstvkPNj\nLY6AxXYvJytfevwQSZQG0iK4yi6OQdRBPPMZPp27DSi+eM+lW03Fbm7xddDr\nMZclVCK8cchAAjJ8/FmgV5W5A40UMOJsZV9wgGBtd2+tkCSvL2gJVJF3Ipj8\n7JDRQh5IuVuGnfFjbWQ2Xmg9PUQoVXMKyw/nLxN2mGSOAM9UMgnrZcp/fIlD\nJO8FMIWLBr7K7JsUXFQRv2pa+1fOkmPsiyaky3SUAxUE8BZh1sWoVu+gLpz4\nOBooPZHaXHWBUnmPJdOm8YosuyGTB2xPerqGfU/3OZ9k6DQ8hDE/RDaqR21L\nrgHF\r\n=CXbR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3bdd92fc17aaef877e4aef32de56c766fa1510c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.52","@balena/jellyfish-sync":"^6.0.101","@balena/jellyfish-queue":"^1.0.40","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.52"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.85"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.102-renovate-non-major-3bdd92fc17aaef877e4aef32de56c766fa1510c6_1620007995520_0.41975950878787316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.102-renovate-non-major-7280ccca6643af16a9dcb9aad9df8826d16d7e60":{"name":"@balena/jellyfish-test-harness","version":"2.0.102-renovate-non-major-7280ccca6643af16a9dcb9aad9df8826d16d7e60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.102-renovate-non-major-7280ccca6643af16a9dcb9aad9df8826d16d7e60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76e4cc6df20a32d17387cd6f136a60d6879ffa2c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.102-renovate-non-major-7280ccca6643af16a9dcb9aad9df8826d16d7e60.tgz","fileCount":24,"integrity":"sha512-dif2PyFe++WT3NaBesTp2OHbWQaT0wwf99SS+qZndJ6Ol10sPMs6/TL7ylSW66L6dtv4E4KBbr7xQJSCV3r0jQ==","signatures":[{"sig":"MEQCIDjQ2nLOEIA1Nu89goyqrpP7NCorplQ7BmhwImNERtiHAiA8NUAhDN7IRL0M3xC3WwB7beozZLFKyEpW8Z57dCquVg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj11/CRA9TVsSAnZWagAAMbkP/3MUfoB8UbeNVtC51ga1\nnQ9brONUPYigmvIoOIknB5EakKx+X0IKoOSygAVBqjpSZVoQTpWd+VwbEXD1\nwx7/AQGvr7L6Iy1SpmxdDWyMFDJiA5Tu+xESkoDzNtrL0mkJItTW3/ZijJXx\nN+QDkNMGv03koPp689FM8Lj0EvpCV5NXVJKQflAV1jZXGmCRYcatuegjZ6xs\nryGAIYRPOQo7vV/XMqnYQtXfUaxJTMwQPBb7v9Zncrt3+vDm00kjlVjwVLnR\nbVW/2ATNlqtKC07ZAJ/Rgbgy0E5Qhc5iJifaZQ94UuVX4BbE0GYi5UEp+2tR\nLU0HUftR4DvoK8uT5IE7VoAZSfaKy8fxorYBh2RBu8oo0WGrGueSKWO2RVHc\nmSeUYzx6Te8aqaOQE+HBlC3EiTfYUE6+Ze2VbFvu0xue5Ou7SC+BXwVo9g69\n8MzTId/0oLm27Vttjhr8mqgFWGY4jBu7gwhyYqD9aivTuu00Jxh0F5A6tX5e\nP7j0jL4u+13+Vg+/MN+oaBpM5A2J2eisfRbKjifVGpZqxFY0MMHPAeofkY7y\nTTFTlGQTOm8P7lPnaUS46S1QuUHUjAOclTf+G0r0QFLiVktTfLxo4zZiiOsy\ncHg0N5JkIbjA/sKTcfNggJd+USBKGxuY5HZ9pbUKi8wwEAm5uIKmZkQCQwX4\nf0eM\r\n=H5Pm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7280ccca6643af16a9dcb9aad9df8826d16d7e60","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.52","@balena/jellyfish-sync":"^6.0.101","@balena/jellyfish-queue":"^1.0.41","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.52"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.85"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.102-renovate-non-major-7280ccca6643af16a9dcb9aad9df8826d16d7e60_1620008318942_0.212156257673775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.102":{"name":"@balena/jellyfish-test-harness","version":"2.0.102","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.102","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8c264ae9d4b8a632f067db26b1d925266e3e0391","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.102.tgz","fileCount":24,"integrity":"sha512-nzWJ4WcK5dzBxGKFsxPl2PMMXTn9sntTfYcApMei1CkrrG9uQDkfDMT3xTrqAPw3sgJ/ljQVs1eKUF9qLwi4xA==","signatures":[{"sig":"MEUCIQCHX/pEX0vCbg0dm4uQNDxo27UUIyqcFqJfOmVNSLluLQIgGCYMY2YFcHfV+fAsFPdDexKHwrsWsRwDPYa7xYDh5UM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91788,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj16UCRA9TVsSAnZWagAAJvsQAJNHnbFLERK1CpOz0gD4\njIN4/FOpAqQSc5XEfR8fYZgqcCIl91CJpfoJHW/gzjnvVr2JMxYlv3YwvC0T\nmiDK5g3rkeSipLRo/S64PJHmN6dA3mZLTJfZQ9YPN+wzgYVVBTBzP+cCR8fz\n36BVTgGeJuczeBOJpgaGMSptRehg7yMrwDUrm208O/8w6n8y3LPLU4g9r/5X\nzVlX80QFa5IUFbaFADMP8Uw4XgxR5FmPZrYekOYoOAjQz2WWEiGAp8oonSTD\n+IITvtGoP2TjpsKzHWV/IL9WiB3lusjgKEaY9qmQBtO2wMOS5gqqbgXzmimX\nx/JAzoqZ869T5SV8g0Ysshz1sOdlsamgjQMtIPMKkG5Wc4bzayFnljJtsn8M\n+RlaYPV3BKBFq8kGsCIW+dCWw0NfHmRRbAqY8BCeKFiHlTtpmlcK9xL2J9ww\nq49B4t8oPApAs1at+9vieZkuQK4eHm4KTJ+sqcmdowy06qjE4wJlHdWC/d0l\nNm1D5CGV8+p8BtErOuIycEpUGKTAdDZoPNuSSYv7EDqnRpcsgSC0tSxSNlUx\nz3zZKkH8P9AuwtbWUvM2p4pA57DJC8JXU9IYpeaXrjd8plnbvaY58pRaEVwN\njUBZoGo6Qiq+ut8U+6FxLe+bI2hiup1PcIgi5sUGNZxDpY4866YJ3HF1dHwP\nzIAn\r\n=J3vL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"31d7f1c7e54429e055a62a8028cdf2fa2a68db2c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.52","@balena/jellyfish-sync":"^6.0.101","@balena/jellyfish-queue":"^1.0.41","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.52"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.85"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.102_1620008595606_0.9781053577381271","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.103-renovate-non-major-0b1fc21b05981fa8b030efa3f814e5fe00e7d863":{"name":"@balena/jellyfish-test-harness","version":"2.0.103-renovate-non-major-0b1fc21b05981fa8b030efa3f814e5fe00e7d863","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.103-renovate-non-major-0b1fc21b05981fa8b030efa3f814e5fe00e7d863","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a2ecb24fc60a7ef5780f01354e5613f03760efc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.103-renovate-non-major-0b1fc21b05981fa8b030efa3f814e5fe00e7d863.tgz","fileCount":24,"integrity":"sha512-S9A4dDydPj6gTDN9Fy1HaxdnzAVRyp6hgYDjCI1oX6lEErSauoWU9rB1EWTVR5P3XhmWW1l65t6hDGtaj6Gw8Q==","signatures":[{"sig":"MEQCIBgYv1dzXHzXCHeZWyGc/zk+c52KPdatzU3YIID8ao5XAiAihBxC7WHx9Olofj05SjfL3q/1uyzUU8mhdmSdS0AoUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj32HCRA9TVsSAnZWagAA/ecP/2XVHFBzRmUjia7amWap\nmDpI8uW4VkQkMUECg7QFLsPKnX3Yzt2zxr4Myym8Hqht3+nmRQQX1m08lG0Z\ne7JaRwGmD0qIe5ugbb9cgo8ZoTho6cseVzQqc9RmtKAbjXsuPATEvJCQipuh\n/OopC2bbWyT2sHFKMoNAgjyq0fteyuurAQag+525+qThwmnIZ5V1Zke2411U\nAyYrsGjcI+HIHOnA6EDqHZUiUTpvYcha6dXHIj7tmpT0l09q97hmE6NtR4Qr\nTVgkVHfbKprfg7iEckbyTnmkfw5FoHZdXeDYK5Xfzo2LxiBcbQlRm90SUnzK\nzNce/1QLhIAHwYzIGxWcjj/jnKewqyouRlC2IPXQL2dk9cTyZd/5GPSbozEp\nokTw7iCdVn3gVJABNQgD6vG53TqsPK/S1YMXVdPj4MGlvl9pUMCiEu2mHE0q\nCkzlUNL/9z+5YgQBL+r425PwfjL0cKUolJRcIukj4mo+k38/PWeuYQABvqse\n0G3GGFa5CBbVXv01S+hgcU5G1CpEb2S+F4qCN85voIeM9iynFxH0B+PVvJ6t\nZxZwzJ5YFSrQb/igKcUPLuLQUv4/igGdCCKs8QS5qoJc/BA1Yuj7nZRNdtQX\n+zbjtjmJuIu2A3xGWMGCvv4Sm7xqFssPlrLxLvvSfHVH0C8HXZan7+iJLexL\nYsT6\r\n=kAv1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0b1fc21b05981fa8b030efa3f814e5fe00e7d863","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.102","@balena/jellyfish-queue":"^1.0.42","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.52"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.86"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.103-renovate-non-major-0b1fc21b05981fa8b030efa3f814e5fe00e7d863_1620016518617_0.9127279502520211","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.103":{"name":"@balena/jellyfish-test-harness","version":"2.0.103","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.103","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"19e55074720cdef7507bde17420c194dfbc4fc92","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.103.tgz","fileCount":24,"integrity":"sha512-tfAtp/XQSd1os7AlN9T+n2Tc+mecOZ+p2W56M5vERzLu1+1Eo6Pp5QpYG+dC39HdYERqX+Ij4edtCzax+MjmfA==","signatures":[{"sig":"MEQCIAV1dsVpy0/mx155mUNUdLkfmhnCmdIEKz5/edCf7Z64AiA9IeF0wwSp/7KroMP4G2zyO/mge4PtMkKtJBsArFM2Rw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91858,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj36ZCRA9TVsSAnZWagAAhj8QAJ4l1bjCXzs+LywowMnu\nV2tIhYeamv6KBlOK/hC0Yi2hEi15m6+bDXJkJhY2kkuc1Ih8pmF2zqT/iBep\nRaW3ix20/hxOgjPYwKx52RhfOnQ0lDg+orI2RtM3wsG36bjZ3cj9J+cO/+Ld\nmg+iLUJojTphCD7bfD6Vp+6p4PFgzJHCsDrT3N09H5M8ilNvCNA4U2j3H4ht\nQKZxklcoBDoV8+UXEtKWfaiSqt2l0NK+o2dLDozhdNYDXTlDAWAikLgGlkY0\nCsQxXbQwQSbaPqOfAYD+ym0dA0b9fmlBwMlKIcCuxur89EceDkKkjdaz4KHZ\n2Ec6eAzRARZUT4v7jG8DgbSaljlunKPiA7hk6wwV/UGcms2mQqnPlFcRWoSF\nxRTC/uFVpXwuVuDkWmNUM8flnNMewMDNCpCFILe6qTryXJJ4wmL2xQsajdOC\nDXYbTprmhocJBf2SJEwFTXWN6CxEUica9XVWtRge3l00RsJBaPx3ZidO3UQq\n+fH82s9ozQm+59IJLjxLUMl5ARIDV56mcJjSkau1wTZ+7RN1XCBNC2YUpITh\nvVN9ooqQuaYx5Y6jlQ2gPjukuzb+LTW5GdmRUXkmx7IeGM07l06oHHWMDyNi\n6SthXM3XulRqrlBfdHm4tA+C5Og8VscC8ZqH2lFVwiZ9VGgjn/0G4Fz038RQ\n8bBO\r\n=r2bs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e45f45a2f31055744082b3c3fc4cd216bfb3c052","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.102","@balena/jellyfish-queue":"^1.0.42","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.52"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.86"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.103_1620016792588_0.3736983338286577","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.104-renovate-non-major-7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad":{"name":"@balena/jellyfish-test-harness","version":"2.0.104-renovate-non-major-7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.104-renovate-non-major-7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b8e617230dbdc1bf92271e1e8c292c050031b46","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.104-renovate-non-major-7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad.tgz","fileCount":24,"integrity":"sha512-FBNzThIoEaFILsZV1q+PCcLMPPo1vPbIibf2UlWhwdWpc/MGsfdEs/K5jgiEvSuyQuSo4MrqHniUmCyrZZgkyA==","signatures":[{"sig":"MEUCIQDhBkhWL63e6meJjqj5M7D0QBZLVr006P8HSllMh62wkAIgHgn1dE0LC/Ij54CGawPUPDCMnw7VqPCPsznwGjRL0HY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91988,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj60lCRA9TVsSAnZWagAAWE8P/iPTbuRwdy36dWCgJfPp\nDL2W+AnmRc6Ll5DunD0/D9PJ6RDQmrW7+0ZwWmk4G62tTrsNgg8wmLB+WDZm\nV0IqqGn/amtxduFhGBh8+wcXElkeCWlH93nItcTBvf4R/egKYots1JTHW+64\nuO4rorbrCuVQgsQwKX5u/AnxWgxxnBet8zzqSmyhJWBrx9TqgJGg3sN91y7z\nlSo5HlmQzU8DemOG4C5btQ54s29HkvOdQv0LjuwIwDR9eJzTgyEA4rHsxOA4\nIzqRjC0BBwgN+W91eaU7fct5Rl955ry04QuPff4kyQe/GY3Oxm1hO085W5uS\ngG6jjhqw5d/t2u7BZlBFNyZ2Mwx2L4IBQS+4APQ6eatVEN85j/ArcaNkJcDU\nVo9nlvwlrpv3YmshAxw9TrrcOfKvGFWT8jSu22rnm1G7a4BRCRvEbfcEHGWd\n10x3vIRlsFOcgXtoI8NlTaKeoddDYQMsPHhKUdejrrL2dhrUEcTruByZgNgC\nLZkrv3N5l24BLj/da6agTFLD6ekejnBIYbkudCt9afLSaMtb4gufa0UiWy/I\n0RPmovTmbhPIPA9Lp7463tmED9XDWChaYbOwrEQsw2RQm2fEqmdUDfaBw+qq\nd6Ximlnc+Kf6mB5iLqrkjeCBpROV7PUvhxSAxddUhrpbJHdiElrwJl9If3R/\n3Vx7\r\n=FqSh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.103","@balena/jellyfish-queue":"^1.0.43","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.53"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.86"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.104-renovate-non-major-7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad_1620028708569_0.9028481560430985","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.104":{"name":"@balena/jellyfish-test-harness","version":"2.0.104","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.104","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"40fe6d385f91361bc56ddf046707bd9fbe8ee1b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.104.tgz","fileCount":24,"integrity":"sha512-sjUFp9lKDfQ32qVMmAeQaa2VSJmdnQ6KShK5kp8FiSadGIXfVoM8dlLy2R/sZdVVM3M8LBmQOq41LvSHNqLLRg==","signatures":[{"sig":"MEQCIFMvOOqNP0yKhqq7xMExVzhPvJwPq7wfjOmGMmj67+lFAiBOTQCJAV3ofv8EMhOkpPnTagUEtzT7Uw6AKT8oT3a2Ew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91928,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj66ZCRA9TVsSAnZWagAAWqMP/2e8x6kDmYfCR+ezYaIh\nFzLpuHHTAPxKHROweNUgfcJPz7Us2w6g/Xp82Ejdw5vVfIbg257BHcvWchDq\nce+gPRZtOohkMSqSdzdWBUK6l4OFVpcRlKyuvGdf2NJClEOxUOPcs8PIvi9K\n9djrhiQRRL1WM2t3tgOiIl/OonaPMdGIUiaLsLpB7ZJ8aVju/ROfkMLFX09p\nrhEpH98Ng92GkMZzojtn9/TuvbY8Xv/wxx05Zk9zrNyJVPoQl4zXFxDNir+q\nx9xGxilhpMxpkhMng4urBDxE5Swo6itF4Jqff4Sww0LtoRKGeFhnUyjcii+y\nLDnwgCh0ryQEoQDWl7wvpwBMCdWcjw235dz8sUPC+8euDHdpwFebA7NEX+TE\nQfUdiA3/CxdCfK+MINVOyizq2CshKcyvC+sTeU/ZtyqCl60FqOOEzQPQLftD\n/bKLEPgK1s+1clAbUCWwEN+UcZic7avnjXlNEfStI0ujUrR+4SBgAVJPfuOq\nzrwBiGhs+xB4HeRup5ElRca7HUemkrTCkbadU+jBACgUlosErPSSjf/53nZb\nKRfJtk5FT/xL2kaM9KGl7WK9IyFiNU9Jn6XBZevFv7M+ED1x6fB22TtYE1+n\ncTXckwcUEe808DZqRK+Uk4GurtjMmBC4xkNKNVsVV+z5zNlWIDlwFuPwWRQH\nLuIg\r\n=h9jM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"663299188f373cd9eb03a2aeeef823dedbfc3589","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.103","@balena/jellyfish-queue":"^1.0.43","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.53"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.86"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.104_1620029080631_0.35211957591992693","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.105-renovate-non-major-889304743d75aad80459d31d7a2cd1ab739bd9c3":{"name":"@balena/jellyfish-test-harness","version":"2.0.105-renovate-non-major-889304743d75aad80459d31d7a2cd1ab739bd9c3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.105-renovate-non-major-889304743d75aad80459d31d7a2cd1ab739bd9c3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2dc2db54d3086fc452dc4078b8d0d17efd8fbef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.105-renovate-non-major-889304743d75aad80459d31d7a2cd1ab739bd9c3.tgz","fileCount":24,"integrity":"sha512-sUTpHUwaEteLxzsc/n5+JVPuhl2/gD/0CYVktzYI/O3RMud9Q5KPt26ao8frgji7xEHSN3Z+8taFAVo75CyFfA==","signatures":[{"sig":"MEYCIQCaXXASrhfNAnRRTzpVHveB7ebkF5PqrWWZhBhOW6iZHAIhAIGGEIxUlWgT59DIJhqRckPYIA7OOyMouqYHptiEHkgm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj77KCRA9TVsSAnZWagAAnoMP/0mYdsUl3PtBy6Uhnz5E\nhnzLDKcHRH4uOSQ8AwsWM0PJTc15F5YGAfYsulu0pSuYmf4/BnaF/E0tJrUo\nOhBNMrtukLMh1JZB8MtYVxZQVtANQpa8YAombxkor4E7idYgfzbl2Nq1MPNQ\nfwjBlxHgv5aBqNDSxwmpGoXF9u+lD7SD/5CxkJeS2T9q0Q4fz7QaMo/7Hxdl\niGUWOmo0OjAPHOc4GA4WiSxx6WtqtNNz94zfQ05cowreFuAuBmt4n2yn4sVz\nVw4SOMaCCqyZQpZ8/OwFBdAlMNrB9I7T9L6yNI6MGeNJsxgiz3Ft6rB8yxjy\nAFL6JiNekBsjUnXhLOyNpmR84KZrwZLAaNyyK+OBK2Ry6WS9gejIz7ifzy8U\nwnlHVzbsxK1IwSMSyzuzdNFXNL5oCda3UbjipeJvRIAbt2b/X2mDHGP4LYq+\ntkZ/gh3z1CPAYAX2CHn8QnM1LloVt/LQYu7theNV2XHq+q/NEfgpkl6cBWmK\ni2/i/LAxi+18+024lnnDrEhA4aU25qhylYyqWjTh+AP6bXr4beXRkvGZ/DCu\nG/l3havmAm9rJwbVNGN3l0aZJDgeJm99yqtNTDyh/7jRLJ8IwLQLVq6nNcDW\nxOVPGpi6fH3eGGhsE/C+S2RTfE/J762J1xpptMfEaQsnJ6pTcitr0GFOJ294\nm/oh\r\n=j1aX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"889304743d75aad80459d31d7a2cd1ab739bd9c3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.104","@balena/jellyfish-queue":"^1.0.43","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.54"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.87"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.105-renovate-non-major-889304743d75aad80459d31d7a2cd1ab739bd9c3_1620033226220_0.18747340816400726","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.105":{"name":"@balena/jellyfish-test-harness","version":"2.0.105","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.105","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"16aa50548e7a5852fe636104fe96d733486d98b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.105.tgz","fileCount":24,"integrity":"sha512-Za9zJZBAzJsCYFBPsiNpPzekJbg7D11MWHQPqahHh0Ez1WUuuMSYVz9HG8oEpBWuE74V/bz0ZPFwr8MUeMlZ1A==","signatures":[{"sig":"MEUCIQDMR5DwCwLPkpY8hnYdtdRAYhBSCo7u6/1XQpM5EgPJMwIgLpusK689gfjErJx9t1IjmbxT5Hx9Mq6dbnpRx4uWeX0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":91998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj7+eCRA9TVsSAnZWagAA6H0QAIiB7xRQxSxIyV6mpyBi\nkdMWEup6k6r++Oq3fmtyZIjPLcUv5xElabiQVGjuWLu11wU5ifaM+iQI2s6J\nGuZiO/YyDMPuXF0X3JIZPT1mg0HFXUy5pN5Yvg4t9lXWUwb9Z64xAl4h5Zf0\nWswDC3gUSyBwahM1+SOtO7PFCy+hApjs9bXuRlt5lWfhuEvemPJeGjgTm0EQ\nGm5ZKcAlPFaM5NpwKkxdSKLwzweNGiIWoh4eM+gLTySgpC3jrKfN8w1Pdl9W\nany+1bg9uzGRQCp98RCxpGqr3kosZ2cGBH6yiPfR60meURjpO+3aQki6DyUv\np9QdGWWbDoLRTHBGv+VQRZO0t9IU4MTITRmnP/LlpNdrgYzo1O8Z+M+G2beZ\nKv4i8URFgJ19Pp/xqsiPBIFPIX+gxRAPjoYfoK3mk53QOBDNZdGNa9mdyneF\nQwbUdk4fCwVhNUS70QAz+Ra36wR9u19Q6K1W+hZEPN1WMV1/XTOGAMI+qHyu\nukok4woGLoQynCQK37qjDflHVEa5RbUN/nFhlBCP+PrAMF+x+JxdlLfxDotE\nQkBlbgVRjUck7g3J8TGUwY8cFXs9Wbx+LD9XAtfaoM2GET2ikNvo4NXE51Dt\nqMrxf9RZOifEHOS8SV621VoHN6+IvUVPS2r4N6rODF4Dg+L46gQabyj0UKnD\nrNNG\r\n=OjOh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d5347f7ab7d731046231590095adc18de19691c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.104","@balena/jellyfish-queue":"^1.0.43","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.7","@balena/jellyfish-plugin-base":"^2.1.54"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.87"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.105_1620033438212_0.22897121632322404","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.106-renovate-non-major-ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44":{"name":"@balena/jellyfish-test-harness","version":"2.0.106-renovate-non-major-ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.106-renovate-non-major-ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ecb2b0ba26af0471a8febe204de31fc103f66937","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.106-renovate-non-major-ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44.tgz","fileCount":24,"integrity":"sha512-GmSt07CZkJyOVgAgGqDdYquWn1W9Il5uGKdBx+BUVNG/m5RIYzeaK1bCUMg/wrWSTYgFSbvc/89BcrXKNaqZHw==","signatures":[{"sig":"MEUCIQCqiu4tU4nXfcT2obB68bMdpsu87AiLJrqS5+TUv+zuVAIgOXz6eWGXUFNIhGo/ljPnlPN9l6QnLI8Tc43vBZukssE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj+IACRA9TVsSAnZWagAA/OIP/1p9QPWZOj+1XsqiPpG9\nxz3bbf3K1wdVAes0xOysmIxXB7zbRMqmH4nSaIYTK7LoEJswc52Aj4UG979M\ndW4+QuwHx6exgGv/9Fk+gOlO3ksV1ipfybp5lpnW2mk3CCJ+oGisXUYOzqAn\nmN/Qf/8B9XSDPHu3sMBXA3EUoPQMeXGyxsgHbENHH0sOtVjTbVPxMbDB6UdK\ndWbkL0YBn5VMcxdHJXBBGK/FtunwAhvnHdzfIi3T8laTc0TUdJuJfnMf7q4N\nW3NTXqNib+fX4N6cqpvuZTiFtrYd86yEL7k+vrlHVwoGW00rdWcpeTWZf3rQ\no20B7GdBomipau370EWou5FS+qb6q7IKzQP5hjgMt3xlbr6J601g+KLFarmA\nWjrFu9GA9l+w8j5Ur5X+aDf1pIp19o7E7r9kQ5W0A5hAPXkUnXsY0O5FT5wS\n1fj4iSAhDGvWVvbAd0/yhU8fP/pbONoQWwTGQeoRul8rydctCE6l0XVe6fmt\nvtOJOoNLMk1wAdVVVuuLOT0FKbx/1QMT+xkcUl3XbTs/Rt6d042fo8yDjfUp\n0JPyABi8d7awx3ZRKeBjfpJ+U8I3nD3Ko0KcEfM5GUsCJZOQ6NwvzQx+XkyZ\naQObxOqYP+hRZHYO/bgSzbTYiQWmksszqB32OT8nwU7Bb+++P5hhRn6IHLBG\nGSJP\r\n=2FPx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.105","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.55"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.88"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.106-renovate-non-major-ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44_1620042240365_0.6200021011419197","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.106":{"name":"@balena/jellyfish-test-harness","version":"2.0.106","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.106","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6598871d2aa45ac93aaadb641a1b1ad7e653654f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.106.tgz","fileCount":24,"integrity":"sha512-noxp87L+UNV+T9sMZRIWbNsZksNPoiNRbU/OGWPzxP4UG8d2Lhl0eE23x4zJ8fC+G5bmGe1pZ0WP6wcTheEmtQ==","signatures":[{"sig":"MEUCIQCp6AaaHq/hSbmbhnZ8/UD3VnwXyqe7VG9lUWU2KD3xigIgSKJofWqP8fqTs8/lqj3nyFzpkkQgavrO7Fu76Jv8yq4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92068,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj+LyCRA9TVsSAnZWagAAmScP/0k1ZNuwcZfed6mCtuOe\nZ+jOfahSemMfYZ+MqpmhaxhkLZKfXiuNiM8sZdz34NH04iH8fJPLCqguHta9\nkxAq2QUaff18LxVKIVurOfp+pNbFw9BleTsIYVmQUq5bGlGd8LPw6rg/ljfu\n+hg094bXapt/HJjioINXN0r2NWAJ5YZkS86sJvYk67r0HhE/QwnkKtdyD/nI\nIOd5dLYSJG/wWqhymz3QHWF1m/lAWdmL2ZEMD1F/WGvWCVHV1GaZpd0MdeTw\nyb4UPZaZCTpTNE10anAjdXsBYxhUE7F4Bw9PQZcfIKt8SL9589Aw8cOj0tzT\nYCK3xaw+gAwlFcjTSqeWUj60yxB+Uy+12fjFbO+Q0oO3Uoj2wSGTLowQg9Op\nWkjXxkg93MO/aTvvcL/4Z2HN4PdDpFohyV5HvQqmU2AwwaHby4D28sXCDZHn\nOU//dnCP05NA/+p+gAPsUed7rm3XGis0lFCG2/5MU87l3hrRvIUvHHAnJsXt\n3IgCW7damgq4dIJKeFpignrcyj8+qWhs0zx1MAwN5hFrHY0EoBnacnObUvzo\nG0qQ1lgCbwBVyOgfZ9NtExeULnp/JFCY6zCctsbk/fKoTzdxybnpsa/tBQsX\n9zNYe/CSRU8XiGnRBsBt/YSY1jyIfy8qJEN6zU6PRP80G0SvdUWROIcg/n/C\n+2Lo\r\n=Q/iH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f76a04e7748888b54ef116d36f52b849e4e0d5c0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.105","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.55"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.88"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.106_1620042482079_0.5012347967473758","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.107-renovate-non-major-aecefd61becfb17519d74f61fe183e3d37a5d38e":{"name":"@balena/jellyfish-test-harness","version":"2.0.107-renovate-non-major-aecefd61becfb17519d74f61fe183e3d37a5d38e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.107-renovate-non-major-aecefd61becfb17519d74f61fe183e3d37a5d38e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0555b2d70097ba7c58e2ac0b71951339e7df6740","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.107-renovate-non-major-aecefd61becfb17519d74f61fe183e3d37a5d38e.tgz","fileCount":24,"integrity":"sha512-jQ4iYZiqOt1gUs+PkZi//BX0Vn2fV6lU31E30CbOFKeKD2A4EALH2wh0Ezd0loiZjOT4pEv1dXNAS+42K+7jLw==","signatures":[{"sig":"MEQCIFmKIR/tOMweeZ9bKsLvQqA9NgvMumtk+B8HzBBipFVxAiBzLJN8puqhV21UBr5gsdLnv/bvvWhVwc6IbrVLhq0y9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj+1wCRA9TVsSAnZWagAAQUkP/2aXjJ4ThiBhUEgEGxqv\nI0iFMv6446N1odScrp9fqsNlb5sOcNP3D2HcgVze9H6Edu6FtOzGR9lw0XfQ\nm4Br6kk3Pus0A5pgiJ7Q8T4n/5Fafkj6JuCAgwSKfCqnouf3QhnhjFLjE5L3\nNoLIgPGFrUz/fEileEoH/w8YIivGzIs+fdH9sJqsxbwisEaFG0tWdZubhBC6\nSs6H/YN2i6VgLGr8kkcmTTrwZAW2ZOsPtiDCYg3LyYnwycB+wXAIZSJm0PFy\n2iLFAi097e50EvIiI0qYevL5HjsFY8wWSqEi1Ldir6gvk61D1UJoyUB3tOPQ\ntgAxXzLBMiPHRB9UIssmkjMfUocdytDq4LEJsfloQFsGgnoSb27+pmnMH0ea\nmH/lDQ8235StoBhpxT0yG5zX9quTAyEipdCd23Cq5GypnOIRc79R8e8DsK99\nF2gKX3BdWUGvqCLG09iQVqQhIHkFgSYTxZDabiS237J2pEtIqbZidLNgGB3y\n1K/OCCymWXAch8fHucjNbFqKMwsYea2MguYGZDsdywKTNxN25G69zkjCeEqf\n1W82+1KS/bv2VGd/nliFb1PUZE6B5ZBTl50b26aL/ze+3K7qX1jMnAfdpM50\nFI2IlaI0ZVnJtsvarU3bxw/lX8oFkaU4oN9kvn/M8CW2ReDg3q97NymXullT\nM0bR\r\n=PTO4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aecefd61becfb17519d74f61fe183e3d37a5d38e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.53","@balena/jellyfish-sync":"^6.0.106","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.55"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.89"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.107-renovate-non-major-aecefd61becfb17519d74f61fe183e3d37a5d38e_1620045167989_0.3766325281527987","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.107-renovate-non-major-06e7303abd166c9561e767f40e3d63576dd2f5cd":{"name":"@balena/jellyfish-test-harness","version":"2.0.107-renovate-non-major-06e7303abd166c9561e767f40e3d63576dd2f5cd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.107-renovate-non-major-06e7303abd166c9561e767f40e3d63576dd2f5cd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9a1bebeb05958fe2996b138dc5bd7ea4ddd4576f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.107-renovate-non-major-06e7303abd166c9561e767f40e3d63576dd2f5cd.tgz","fileCount":24,"integrity":"sha512-v7RkgdwTAPmjzz6VKW9SSLJxMDKZz5LF9Cb4d4oo+kG4V24gb8lNXz4L+f+nt4VnlILHS/xmQFI6hMBkJE0nSw==","signatures":[{"sig":"MEYCIQDPxSls088sNCWkE9RbB1qAKtznZFIkcaDmWdUyXjWb8wIhAMpjTvuHc52TZVAxT45u6IqwTi0sdXU9ees2kDqzkqiz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj+6FCRA9TVsSAnZWagAA8MEP/08c/LX0ESyHFEknx5IX\nghlZRE1BZRU5O+MDo5ueDaJgBWRzv3xW2EC6GKtSlDPlAeVha8HXLp9kCxu1\ndSROirHmz6SUsnRyiQAc+iOwxTs8x7TwvIeX9v258/LauI1xHsYhC90/gfiZ\nB8t3JHqZ4tHeGjL7BojT5zJP0flb/BbART/24feui2mWGgFHqCoAM5Gvctka\n3wT3OMZ4PSkGJvWrKNT63j2UYEj1IjWuc2BdZwmhUETBOLl26wWOLugBtWBp\noLjRboyLw8M3SaaDG3VXaXdD2qWmlOxeGVDc7I6cHY6YzZhx2+2CEABRu5e4\nqpR3/sR7+AuqBcf/pe1wA+IuRXZA5TMvNyIimL2Bym/xmQkmWNbEUSh4ojM9\nGPxAIY3WqmGOfABMTbja47qnWNrK3EMT+WcL4ZNgz1ko3OYrBTbXuUtGIF2j\nCWnjUzUUgB+SSK8Lh1HX7K9ifaqkW9Q3yRQMpJtujlRICxrM9DDxLdJwf1hD\np+9XUAAjdpI5K97KUyJ2VebxKgALfT7kZVggU7hz3J1qNtxBf5vPKmDinjV6\nr2AtepVKtYWo8fmYrU4c0VeNVkuilTouYcYyr3fotJ8zBzVgDtabCUGdLV0v\nRWpSMh+j70RnZSf2TZKCddjiAyBLFkwPPlGzzullTjKxAO1++iSkrdFiY2co\n35wq\r\n=gwbS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"06e7303abd166c9561e767f40e3d63576dd2f5cd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.54","@balena/jellyfish-sync":"^6.0.106","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.89"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.107-renovate-non-major-06e7303abd166c9561e767f40e3d63576dd2f5cd_1620045444757_0.5827110868699725","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.107-renovate-non-major-0ee5adff77509335d23b803ac1a2ac08ea4a0699":{"name":"@balena/jellyfish-test-harness","version":"2.0.107-renovate-non-major-0ee5adff77509335d23b803ac1a2ac08ea4a0699","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.107-renovate-non-major-0ee5adff77509335d23b803ac1a2ac08ea4a0699","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc60a85a4804772da8d20afc3b97506d91fd2a8a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.107-renovate-non-major-0ee5adff77509335d23b803ac1a2ac08ea4a0699.tgz","fileCount":24,"integrity":"sha512-UPQjlP82Rf6GToIL3bwFzRqRrM5GQRmLvAsZnwUyd8czfpcmwTcrIbCpkPsQYhfNDRAljDAPSefeTjl0arlAgw==","signatures":[{"sig":"MEQCIH15pEBI6lRgcm+GwcKoBsrW5OAVYmEEQRarEBWm+w+PAiACc817Q2Nsqop6cxa8//2FfQWDTv/c9QNUOJOdWoXPFQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj+/vCRA9TVsSAnZWagAAFq0P/jDJsk6Xp/JABrtEADsJ\navnzl3zabd5SDLscwSArFTe2cWPmvlZOPUBX/2TOEMfgvWuByiq/dqlZcHPi\nTn4gLxysC6u6zp2a9vzN+0kh1jo56dzscPmCB8p3+a7WPqKyYXZ4orYny/jZ\n3acYAPNflZOm92FYazIhTWBiI6rUC7NosA2zGbkC/TEWZq6RLOfjZDGzwwda\n7ej4OFv1S9USqy/SaFX2qjGmKzbR2a/o+vTRe5IM+p+XqoOpIrnpd/yVtwOF\nMRSsJBW3Dg4zjwtR45nBrB0UTj4JV4+MxIKl9IS+5NlmDfrfrB2XDwlpB16L\nNOB7Dh9YnwsKz5NnkQkvaMwbDCIRejztnXifrcl+/lG7WmTjDadDHaCHw3rT\nL0PQhiM6f+AnugI4hiS2GDUJQ3ZEDbOQrGHlgn3i4Gf9ECSQ42e+iGtsdxnX\nBFPzCHdxOTFyD6oR5N6mMgSFoq8GtIFgnFVED21DPVXKhHhmjlbNUhUUFhnE\n2ysp/OlAo90hOlnN4yE4leTMDNxSsFc4w7joAWpQ5cBZVIynSjTDeDmGUb3l\njD9WcbZBHKPeNqbwB4yoa5eKepEXj2v8Ap63XBKEVJqrltmQh2ZpwVCv5n4h\nN/C/HHvn3FT4zWpF3NUmgTBHCTGzokvrC+lGXfsqpog72vNAHT8NaMrpmYMk\njijJ\r\n=jkp4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0ee5adff77509335d23b803ac1a2ac08ea4a0699","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.54","@balena/jellyfish-sync":"^6.0.106","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.107-renovate-non-major-0ee5adff77509335d23b803ac1a2ac08ea4a0699_1620045807539_0.9038397197236534","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.107":{"name":"@balena/jellyfish-test-harness","version":"2.0.107","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.107","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"83046290deb07a18d173dc265c3c080b33b6f72e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.107.tgz","fileCount":24,"integrity":"sha512-QX0YFRNIMKe+fsDCeHb2AtQLTEPJ3AZeFRLebRjiHnBaRI45nKPama0wwIT/AJLxBQ+0mlZexuea2cEAvG1eCw==","signatures":[{"sig":"MEUCIBEG1XKr2gZKBRzGbyLhR17s6b3ZhtIrjdla4X3LvZwWAiEAnm3AcD0d5YxPnntUMAkRWaY36C0GbGZvmUjMNAsqHGU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj/DcCRA9TVsSAnZWagAA4P8P/Ap1h/cFkzsYT4qFKkvN\nIpDJoMBpq70I+Im2OoVCkHcf59sgYEDu+FBzdV+upfRpNOql37ABNkeIWn9D\n3MnWdRvP49o1UDyTgziSsZm0l8dQBcgtKPMg/igvunkK06T6N1FnSr/yidMx\nlHdbmADwP2G/HR/fleUGDKQVutymxb4Apn/rVkp8qeo2OCkk8114pOE6/5RX\ngocho2CXnGPwlfm6rU8khuiRGv1cQcDLYCj73m5M/si3LyGvJilRLlzyO+GS\nzZ42s9EPZkFJ3KO5zBhvpnnB0KGoLWJLIXBdP2vgDTmBtbeQArhF4cD78SEO\ne0VBE6mmwtmHbFCStsSVVbG3/YhFfvDX1UwOs74S+T8w0d2VpbjCgXmX3ygh\nvFfkbp92sNc2UXFyV4ItQVyWivu8QbKkFLrzuGshda0IVmKPtsth4GRSRG7d\n/xKRDy8HYZJCOzEC2rvsLnnhRllcbweyyy7FSOy8+Pt69Zv1ftm3EmH6qvXZ\nZ/vK5cKKb/0yYb7I95FMmYxar5R3C6G+oAaTneX+EKpPBpiuyvWw9tuYOxOd\nbaXbjo33MbY5N7ABzQkHEQQj1lpxY5zXw/Kpm7Y85ToLPE+bSSl8cpXLYDW/\nz8JMJOLLSIiyPhKTeIQTMKUVxb+j5IArOOwZRZd4EGxiioOXdYtcCYe4n95F\nojMY\r\n=yk96\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"53c762b5b9aef3be8b2f9e8e11ff863fa55a29f0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.54","@balena/jellyfish-sync":"^6.0.106","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.107_1620046043754_0.030643716959973588","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.108-renovate-non-major-a3729c12f672fa1989f84489346706e02ed05421":{"name":"@balena/jellyfish-test-harness","version":"2.0.108-renovate-non-major-a3729c12f672fa1989f84489346706e02ed05421","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.108-renovate-non-major-a3729c12f672fa1989f84489346706e02ed05421","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8d2e0a280e4703cc01487cefdf9a18ce958db70","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.108-renovate-non-major-a3729c12f672fa1989f84489346706e02ed05421.tgz","fileCount":24,"integrity":"sha512-OqeVqgKhra4tHZ5TFCNXJf0u1PmC5lG8WFsa/HVk8S88MzsMUc5bJCb/o3WGOWSTmlIiPXPgeyQgRHr2am+p4Q==","signatures":[{"sig":"MEYCIQChruGBIzmgyjofGBKiMPt9l8RxI+pQHeOyKnIWjzRzLwIhAJKMQR3Tftk7tsYb3TLycQh7KBX1CRy18laMcbuoC6x3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj/pPCRA9TVsSAnZWagAAHtMQAJ5QErZy/USeHxzwChEX\nkSGVJTuu9G7cG0/1b9/k1T5epr8AkoZTaVk/xAp2FbFev3hfU3z7dq/m3O1j\nxYgC0t4uGKDBh6dV3cuTM/9uyot0oMqTJDiogrXY+IPaJOiSJx+L1dk+KiOj\nho495SXP6zvVfI9rZY4juYv3K8S7jVf1tPWvWd5+luJVudCCaCM3yPw7mnRI\n6133N/O92H1Xf762dxKRXojBAup7Wn4IHUKvt1yn6vpnl8edGj4HeIsvb6Nx\nkgxWBBZQgQU2XjN4AOkuxw78KJm3RtOiALOiB59zPFc68gT3OzKvwqeWAshE\nMTqGXQVWzsMnq1MX/VSBHBWtgD/0ejt+oWgKXAlJyPpAT0ELN4+u4a+ODZSV\n4245qKUiM4jQXoZ6FcXcrJ1D4bjCgubn9IlZo7tw4hStapxUwz+VmAfM7ixg\nn6EutFehM0u5tLULHj6fiKxWqd3hTFn8LtZEYf2cEbT2b8S9ShUCMAR1+e6/\nc2cGfBxU8ouZ/lJIUn/jpfSqqIxnkVD70VI2yCLxihgjv2RDdMpHebKmbVi/\n+o3A9D9/JH4yVWzrFW6Z5rDZ59atkOZOira3IcKENBSzonmsPmAKuHml4TsW\npwWWu6tBWGNvG5e5sTvXJWaYvxVXKeuBV4ssWgrPhpQC4Mn5l1YFIbIDXk9D\nmuFf\r\n=1sYP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a3729c12f672fa1989f84489346706e02ed05421","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.54","@balena/jellyfish-sync":"^6.0.107","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.108-renovate-non-major-a3729c12f672fa1989f84489346706e02ed05421_1620048462588_0.68195737897967","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.108":{"name":"@balena/jellyfish-test-harness","version":"2.0.108","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.108","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a9407ec35fc8c2b89e85d121704e76cf521bce35","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.108.tgz","fileCount":24,"integrity":"sha512-VQ3PFjJbKicKoQjTWJamF5VQO/pKcgQ3UfaQFEn4OwVPUHhejvWk7ygB4e1drXUUHTmgYvGBPQ6rV8occqwJ9Q==","signatures":[{"sig":"MEUCIQCPOgBpMaCxhQT30bDCgq87MrI6CCoE8Th/H1nnxUvKVQIgMCcFc+tunwOeEyccZo8QuW2XtXk35XuzBm5oVwOhan0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgj/teCRA9TVsSAnZWagAAeCMP/3jZTW4/CNOQJHf+9LQC\nKIxX99kqaqrpIgaIlCzTr/DSiGRCbpNIgG14cpP5fsVHTwFJkbIoQes3kXJh\nH+2tTmQ67+19w2N/ljV8U6W0lGiD/lf9NDXeQD1PpnbfaLcg5W0LkRdP/Azc\nAZd95t9AugKDwOZQ3EwJheAxqrohl7co9m5PKhtGjq0BC654ngj5x7eCNdAP\nZo3XQ9JmyjeVpj3FegWGIfyrOBQ39wRNHzWXVeqOFN9/CPYrqrQoUGiwn7KU\nsCIJSO15bq090eU9hY05g33Bg5Z/KfmSHSm7PZfhHIUVsJY/jWHB9VsV5k7w\nqNzlLjT8E5Uqa7mcd1b5ASwVJ0Lv3KTzzdGicTX3fM//FiFyn6wVN0RgW/bb\n5UPML3g/1jO8oRXcSHYc8Ds9WPX+c4/SJOdPPEbBi9Wm/uQ+uxPDpCjpFpLt\nyGTuWkDaumpLDkGjk8JFJ6N9zq9pFunF5nqNb7L9f1VVEtM8wngMNCQfvQLk\nx1VDn2HG2adLpMN4R3SvjJm8Uo6+jMvnRJwnMJjBeErwOgUqlRc6sO/DGd5t\nVzD5eMR7xMrQpN6YOeVP6nt49A853TwF0dXGzvfzl3w2KOv/fs2Ot0v3ib8U\nz98h8leXQEsy3Z3Mot8q4mFCJV4OMkUYwaNIzoDWZT9bXiZr2yJwKMkvMepX\nzPj9\r\n=V9C2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"03986c57e9167a2a436b36631c3528c06af34aee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.54","@balena/jellyfish-sync":"^6.0.107","@balena/jellyfish-queue":"^1.0.47","@balena/jellyfish-worker":"^4.1.66","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.108_1620048733922_0.8289028760784976","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.109-renovate-non-major-c26b1c3406e0650192219da26fed4dea7f86682b":{"name":"@balena/jellyfish-test-harness","version":"2.0.109-renovate-non-major-c26b1c3406e0650192219da26fed4dea7f86682b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.109-renovate-non-major-c26b1c3406e0650192219da26fed4dea7f86682b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39e4e3aef1b785e231d02a1374bde815ff0813f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.109-renovate-non-major-c26b1c3406e0650192219da26fed4dea7f86682b.tgz","fileCount":24,"integrity":"sha512-mOVpFbPR3QgRVCY2yw31g0zzE7qYRSKkdULXtJVP4KeMSsizFdw9SQv9QvA004ejvHsRSZOrvMKCqdPHIEIupw==","signatures":[{"sig":"MEQCIHDo6gzB0h4+ywMPtO8Exw9FCP1GPs4eAhlQbJ9OWI+IAiBjhHMYHezMWtFM/Vy/Iogy/7dyCpBrHR1SZiV9Y3qPsw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92374,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkAz/CRA9TVsSAnZWagAAGP8P/0YJafsj5b2Z7+kkO/ON\nnSpMnVEoxmzqeH0/AJ2AsoEPAn//K3nJP5itbnsN5du3+qfRoYppa5dwkP0p\nF+bfcIC9lZImmXyIL5x3/ffSzgXIUQlWyknSQtiBiKVWIp2a4ssVyk6KQ+gN\nwLzj3gQinmqBGGBPnoz28kDmV0ITfUQhHEMBFLjOXeVBkq3JB7WO5zvsVrl/\nM92Eu0dv5dTl4DJiU1wleJDq1OZ4rUF/OKkGhajJHXFdBh8ZvjzdC3wNrpk7\nq/4Rkwi8x9K00YJARZnPx02m7nVuUBVKWVzD9JuaQQ8BSO1xyh1vEzN8rx8U\nW79JETG6G+aXq1H1538eaCD4wAVvE6vzJIN6vVa1cfGhp7Q/FOXech8VqRoe\npLlMw/lP7dqsRsVrDj6fEdgOwhd2P3svX2iAs8rZ9L2jVsOKnPM8uhSXapBz\nsquofYs2zZxuuDYyIHZDh0LQebW1351z20Nd/1ohOiFCfylcuwOpJEWWteIs\nitMjY976Sc3M8rrhyHXTbJiVghyY/IPN5qjnBL8TxF3dOEyMqck5EELvgvcA\nXmqhgcQoIWFKL8nPE5Pq6aKP5i2RaTvEZrv1oN72A6mvXKdSeeUTazucKmKf\nbEKWkhj154XVT7wpolAporer6ZChli1Mx/qshNkx7lSvqv7uoidOjDn4LdPV\nQrKD\r\n=Xw86\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c26b1c3406e0650192219da26fed4dea7f86682b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.56","@balena/jellyfish-sync":"^6.0.108","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.67","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.109-renovate-non-major-c26b1c3406e0650192219da26fed4dea7f86682b_1620053247075_0.682777594890495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.109-renovate-non-major-fb1c48d3db15f03306993789ac7e0884d1e291f3":{"name":"@balena/jellyfish-test-harness","version":"2.0.109-renovate-non-major-fb1c48d3db15f03306993789ac7e0884d1e291f3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.109-renovate-non-major-fb1c48d3db15f03306993789ac7e0884d1e291f3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d5d52fcfed76afcd705dc818b01c174ce9ba081","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.109-renovate-non-major-fb1c48d3db15f03306993789ac7e0884d1e291f3.tgz","fileCount":24,"integrity":"sha512-2ty82G6ArX+aimGo9GLhPn0fdYCfR0fdzEj7/GXkn3SdMGvHIPw+YkgfkHPUtwGoajPqRvhov3+L+y0u0dXHxw==","signatures":[{"sig":"MEUCIQDqfQsgfVNRQiq3Kb57ZPz61gVjqo+Y2lV6T/Iwe2arcAIgZhDT5d+fRRNEve1DBjfF1Z1tIoYjPt5n7U8YtayRt+0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92374,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkA45CRA9TVsSAnZWagAAIvAP+QGSC43X/zLyKAa42Po0\nAXykMvaT57kUYHVfvYOyhqYvL7EXq5SaC+CMz02IlO7m/BNALXX7+1URggR8\ntxtX4W3ozH4KSN7k8VHYTJCLo05pdkXq8L+S9FGKPOeanEuPKKFiohsv/dv4\nAfnQJlXY6TBwTDJjiXHRB5cMIaoclMrPw593Fbj9G/ysxvjFqIIYp/0OWMJc\nPoudUryZAugtggQbA12HB/Ww1BTfkhNSMZQT8L6wql0b3TDqbzwmGh6nd7e4\nG6CLa5YxX8geaq5aMFrbVzwRchPdjT5KerhJr90AavFOSeU+W40a20gewQs0\nZbvQ2LliIANEODVhiQePSR2zdQ3zSnUo17XhuPhgwG1m3X2Dxs/Y2DKp9hA4\nLNBbqJWAczpYBnHWB4Co8psvldys4cqO/yGEygFwQgpPi32bfuovprHk5Xje\n6e/VaT8bAV4wTg/ssaNsyxT4NWNz4joLxi44xslNwIJkm7y5GcocZkBg4MmM\nUWnisoHlX13adxz6Qd5kyquA+Oad//yr318Y9SfIkLyOvSlKxPpqrGg9x1Vn\n4al36ZSy93y9gthPGd4jHc7xxJJU+HY0ySXck/1cd9P5v+w/8byirjTdjR+O\nFh566YjsNhyZsKbXkVv+BlAOSa9Q65tTGB5yZ38gsdGmkcYRwpODkUNUGTEV\nMmXm\r\n=WWgb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fb1c48d3db15f03306993789ac7e0884d1e291f3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.56","@balena/jellyfish-sync":"^6.0.108","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.109-renovate-non-major-fb1c48d3db15f03306993789ac7e0884d1e291f3_1620053560838_0.9648331818463622","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.109":{"name":"@balena/jellyfish-test-harness","version":"2.0.109","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.109","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ad6eb46555bbca1de86a3eff4add0f4135da400","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.109.tgz","fileCount":24,"integrity":"sha512-EbHbqecqtuFVT7UEegOvRgfqOIXy88A6USXtWJ720WxtpKf4QUDHRvzGCzndzx4slC/y4utQjxZYWyXxkRKKIw==","signatures":[{"sig":"MEQCICNFcVUw2yd2LWvBweyFgs9kda+nyRrZ4CJhxeiVFobWAiADzHTJA5OcqOFLRg2RMYtqbm4jW6nAfwMoaUvUO/KQIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92314,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkA8QCRA9TVsSAnZWagAA8ZYP/3ZOyt9Hjc5Mn7rEWg1Q\na+K8uYXPVDwpGFHL33EZLF6tdm554hP4IBRdZpnWEOeDvmrnjK7tEfo811Sk\nyUE8ikivYcLG6noT+XfTLTWLmhfPfniCEDZbwCFBCiBC3JgR7jS2p5rp/dPc\nY4IdPTU6Z2H64S08G2s8THUwTHx1pTSgfpKi4kFPFujei9/zGoMITaOgMMBt\nHjeG73jXtI/xPmX63vZTZ5D/Buarc/2JMr6qAaLEINLAnMx3qbx9z4GDMbJB\nzz2CEMhzxmMn/iUkgigLtx+5xsHHTQaSa/nqqTybdiaVK3BwCo06DCECORts\n2n8+XlItFS9sULlmqdTFAsgwFqmq7VUJFrmy5sZIdm9T6+wLCg1JG/eTAaP6\nOGOGQ6IYkZHXJJCu6Ln6Xl3ul7+bxAWGxgTqWRPUaNbp87Xmmxmh1p11v8CW\nSu3saEecy7pIpPngC0Tsn2WC6UBcPOCwD8fl+L69IYpLvcWZhC6h1bkN59NJ\nkqBdJ7WfcRmEmjTTWxLuwIQ2OEfPKq7ZjPNk47EfNbnHDsflWw8dV9MQtrKg\nL9zl5U5gX/lEiW4ZjZ/W/d/r1bAM/uu8pyAh8b1jcOrT1MrdgbZ+jqwPD5Ni\nt/DpMNd4HnZyo1YZcmR9m0I/vCzcyASZpxYiCqU4aBY3tL4YdVvTBZt0WJWu\n7SZz\r\n=NdCt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a37e30cf41cd57be29a32bdb71d23c7813e0b969","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.56","@balena/jellyfish-sync":"^6.0.108","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.56"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.90"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.109_1620053775972_0.8498249831204261","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.110-renovate-non-major-c566e949c2509f47c4f963d86c2ec479a330658b":{"name":"@balena/jellyfish-test-harness","version":"2.0.110-renovate-non-major-c566e949c2509f47c4f963d86c2ec479a330658b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.110-renovate-non-major-c566e949c2509f47c4f963d86c2ec479a330658b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4be13fbf0eee3fb1685c555e156abe505a8ae9ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.110-renovate-non-major-c566e949c2509f47c4f963d86c2ec479a330658b.tgz","fileCount":24,"integrity":"sha512-LzMri/eT8CJ4BOigdKJuFtyiRHgoCYZxWWnN8gj+HRkOZSPzdCq7ZO9K8q9NgbD2634oFNZhBHo7dbkGli/RHQ==","signatures":[{"sig":"MEUCIQDU7mqj/RWL+0cU5buELlL2GxSW3FoBXTBxLnSmNkfCrAIgSd69guasDYiweRej6enY40ZgLvCnkYm2x/0JQkPDmlA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92444,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkBiyCRA9TVsSAnZWagAAuywQAIj6OMshhlqGZ+O/cJpB\nf1S+LWse54lxoAevtDeoafD0BxCniN8nWOmwC7hVceL/a1own+k2+vFqs5QM\nfGbeIfnB2JroolgquubF5YiuDnXanSX4qxG4cMUdVXp6rCsgegSNpnBrSptJ\nhFsCKk/TEwTdtLdUsY6KzWPo8aCG3Rzww+YnmU6IOgzZOKuo+R8p2BjjyvBP\nibrmbOBic0bnQIoTVYK5cJb+5vw8C1R2ryrCpY+sjtGlU7RibamSf9hfUmHx\nju275VulBhwDym3eN1A80+SkJRYNfgHhaCjjF9dW+Hjy9q3b1lU8YDEuCttP\nh2hbLT4+eggq2Mnm6cSx0ICaDKfB+aKdK0lBrTD5JRG9VbS8D7btWrv/gPdM\nHFNjZLP9ulVBfCV9cum6CrTgsM2fsVSylzW2t/2qXTMvIqOjL0fAuTS1Qxx5\nbjA9mveR3hVgsAC9URaY6W6CNpLXZuPXd94vr3MA1uYfi3Fxtg7hb3yofGhV\nKcCzftEzRWbvrlIxJ/67gps8fk2HyZWVARbX0r+lapHDFJjjWUIAwFKzw+sM\nLXp4QAlfM9Rp9fKkompJwesAOGepyGoW3wxAuZvi9dH1Ko5TQluhJqVDd7D4\nnKKLDA/SNf0o1jrsccRGMcpEvSe3CsoCOps5eUqj1ybKvYlo/5DUtdtH5ye1\n57XG\r\n=Qwlh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c566e949c2509f47c4f963d86c2ec479a330658b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.56","@balena/jellyfish-sync":"^6.0.108","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.57"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.91"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.110-renovate-non-major-c566e949c2509f47c4f963d86c2ec479a330658b_1620056242021_0.21574591453033998","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.110":{"name":"@balena/jellyfish-test-harness","version":"2.0.110","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.110","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a97a98b9b3caaf5ca5453cfcc55a7d097c2b6f3a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.110.tgz","fileCount":24,"integrity":"sha512-ZOQb5GfMsDWit0NRMpoVeK4znttnyKzi7NXTZNveO/dZT7/X9lFPDMZL+Ow5wkcrVjy9CZaGckI9+ca24wWaoA==","signatures":[{"sig":"MEQCIGttbS93WwXet6I7Ali8rNb++FRQ3rIeN7nbY/6sJ3U1AiBZ7k+gw272UMInZZ9yL/lvOOmkj4eIlhiefjTH1McHiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkBmnCRA9TVsSAnZWagAAfFQQAJqkiwPDQD+OPCeXVv2a\nxhQQVlypFrvKQffvuJ9nI/05NIeRRSvzgRZ2JnaNVPVOlhHfh9Kasyw5LGbb\nUChECF9AnFit++D+lDLG8eObPNRj7W54oJAfKfPwOgUCIqScNrM1iDxppBt8\nHsOw7XGvHPtQRjoAaY7eirzu6mIpUmwt/Gq3VX+hxe2rWPuhbGL7EezYvavC\nT/OpoLMZI5LwRhlJiJBXEuhlfd6x5KsuBlfrnY7qiLwK2xWKWlyQoiIjbhD+\ngZ1z10UHHyzqXDKoAXKaBtizVUtFBDnLjRZY0Tj3gGvqr4LcpoBle45Pzjsl\nw3Hnww8ejcVCwQjyw2Nm2hiCjnOf2hzNVWRuChA72NBZPcd0YLFO2+reYA4f\nGC2VMYAep6ATyP9+h2vW3yg9Z/lvqdlxfV8ueuFtJ8Geji276m44InnjBmVK\nA8Fpj30ZhG7fY+p6SjpJOGI5a2M6sKSktdFvCKgpoLPQ4Ga5uGUdU0AYNMXj\nFYR0YjIF0Zc9JWW9/zuLHWcHRWl3RWDTnoM1UuDx1Gt0COihuH+PZvLGkoxl\nnaxK14JOj0tupivd7A1CJI6HK0/DloqOOb5Sqz83UptnXVMuLmMgQEyIn72L\nyEJcRdbvPu/Mn+I7G40EPEZCJlMXHMja2FEYzXvT1o6MxqgvBQJ3lfQYfSd7\nccyz\r\n=oxsE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0652d4ac682071560359683f9ff1d1af94d4d8f5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.56","@balena/jellyfish-sync":"^6.0.108","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.91"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.110_1620056487045_0.4192101267161523","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.111-renovate-non-major-f92e61ba81f15698a84f215d4ce55f27d0ea09cd":{"name":"@balena/jellyfish-test-harness","version":"2.0.111-renovate-non-major-f92e61ba81f15698a84f215d4ce55f27d0ea09cd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.111-renovate-non-major-f92e61ba81f15698a84f215d4ce55f27d0ea09cd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b026102b4b763cb8aa3461d85e73ce6984b7b28e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.111-renovate-non-major-f92e61ba81f15698a84f215d4ce55f27d0ea09cd.tgz","fileCount":24,"integrity":"sha512-zAHQCIo9fJmX7qgHWAgjsUSUg0qadROwxNbFZDbGythQsAz8xFKF6v6twOLIfRiuDxHHVveiaBL4idAMosFNZg==","signatures":[{"sig":"MEYCIQC6lW4lDEGFVRlyHwsjduZFCKx1XvgdTsRLrmuivoZljwIhAO8NPipBGWZT3KG3oQoSQyg+qGiuthTp1xINjjCd6j8j","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkDIiCRA9TVsSAnZWagAA6P4P/0KwsFDUEUM75YDgqL/s\nzru7cvx8VuJYpWS11IInv4qKLw/E5kBpmElsk1dov24nU6gWWjQmDKs7TrlT\nKrml02oAGrO5OiUmwBuoJEjPtbkihI4knaUFsNr4p4WbxO3yxP9tqKyIRgcY\nRsqWpNOoxkD0yGvtyBWIP5/1tZ/QjhmatMwIH/yoa+h6WBplJDY/SSjPGeOC\noky15FE9FTsa8m/won6TYEyrQPUESb601bn/Ryy+YE3F+jAa+8IFj9W/Xoo/\nvEdQon3aHsriDdAtJTfA+jzvdxXWv8VCkqcbZtYr0uok6cNuL6DfKJvpWzKK\njsFMVqtKTO3wMwl2z5lR0kj5FCy0WfGu+TMkeYLbdp+hAY6AKAU7nsj4c6CG\nEXa03tppPL3ELTs+VpyYBn5n6QOfOrWNidY/QNE1ZMZmNeFcMaXkUy8hGiDL\nAFYP3r4Isw8wSqiF7DUERQwAB0O6Ll/3ZiPPIstZgjwT09YpM3iMi/kwIKdj\nmfxozqYE3uKn2J6DcjAeCEe5LSB5uUwBskCoZJOM5TzKq7yp4YPupCCvSGE2\ne4p9l4l9qCWhPrEwBQ6rXjIkaEXMGkGttGyx8OrDmCpS9l40kRSWgk24rKUq\nZ8ieOu/IecdIYvuxSjY7fHIPApRdxDpKlDj/dLccOjKiEXuHUmYCnFIGjH+k\nq20V\r\n=7WYd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f92e61ba81f15698a84f215d4ce55f27d0ea09cd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.57","@balena/jellyfish-sync":"^6.0.109","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.57"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.92"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.111-renovate-non-major-f92e61ba81f15698a84f215d4ce55f27d0ea09cd_1620062754437_0.08517812990042439","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.111":{"name":"@balena/jellyfish-test-harness","version":"2.0.111","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.111","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f5cdeb7ba238420977a796a14bf29d825bff438","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.111.tgz","fileCount":24,"integrity":"sha512-Vz+rUo35ntSLEAxkMBbgsyPRdu31zLalfVeHaJw1MBz03U/QbSNfC/W3gu4AYm4jDUbG86qnyYoQ2NteKoTpXg==","signatures":[{"sig":"MEUCIAVmvEU/7K/2LONvcGf5JGzhpWcKakMxdtfh3vV6rzb4AiEAnJdcXvj1CKHnKq9xThAQ+I8hicsqDlBL86LVMklw/lI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92454,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkDLjCRA9TVsSAnZWagAA1M4P/iyxYOhQKwkzakM9C3Wa\nFkUKCwQqr+60Fc1TpvSYrBytPEBpqoak6XxRoDLhG5E9Q3MMx4+ktyzHmb/v\nmDjbF0zzCa7gVTSG6bDabsY5nn/8eGM3bsYwMSSUDFs81ujZj2gerJhAwwt4\nM4Cg1NN6BDg97Wnl2bvKxQaLhMPGqD2QBqKtN1aX40XIIisHsp9oYplqDN9M\ne6mgtZl7u+p6fi5/L1zjnFqn0ZPQ5MK1i5d+1rpDwa8OtylRqBaxWe+fowJz\nz7AHwhlLzIUgRGHk7doJK4OARDrqplwIahPXC6tWx/1+aIgniGwGAWQTPmTj\nn7M8FlktasqG+8K9BiecT3TA5l7VHl71FdoBC1xiSivoeJF73f/5M7w4G+dZ\nZVagqtlDJrCmSCMV+iQxCaBP2+iH28wOdQGOiUcOwVHXzFg9YK8Rn2NUC6yR\nOLP7xEPcOvKe3Yqup1ipV08Td6wx1GC5YnD0/sOJ8cWj4zNbaxjjkYsJl+cs\n16Dg9MYakeMcYLVq+2Beynr3SxG6ppb6Ew9X7vKT7G2Jhu62eu82ivj4WNvr\n9zKluKCsD8mRtzthsJlv4KDtayt9m4wvb4CXPS8Nv6pPZn8NUA6Hi25gtQee\nBSc7NGbtPEeAvX3vMJI0hpXzIBjldbbAyUpDtp9m80QCR+wu5E7dsxInv3wF\n2Ekv\r\n=ZAvM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e2baeb2e0a950bb8726b1b7faa965a2720b3abf7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.57","@balena/jellyfish-sync":"^6.0.109","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.57"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.92"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.111_1620062947231_0.7765524833079556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.112-renovate-non-major-88f853ebbc9c8f75f566c7a1d8817120e875b9e7":{"name":"@balena/jellyfish-test-harness","version":"2.0.112-renovate-non-major-88f853ebbc9c8f75f566c7a1d8817120e875b9e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.112-renovate-non-major-88f853ebbc9c8f75f566c7a1d8817120e875b9e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3bcb59f95da200c38b6d9543aa757d629a31836c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.112-renovate-non-major-88f853ebbc9c8f75f566c7a1d8817120e875b9e7.tgz","fileCount":24,"integrity":"sha512-b6oRVyC9kvfuhDNZTBai60nQoxTQfsswf9qlZYsyWWYrgRkjw/G1+sC1baq4TduK0oYwswa83MM5vWCcKCVl4Q==","signatures":[{"sig":"MEYCIQCTNzLCYvGxVuzWEq63OrWhbAFcqpDLJwzLTr/cQxDRkgIhAOs5fS8nGBcyFU1xQvd7lCEswEK72jNRHhm9FDqNu6qi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92584,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkE4+CRA9TVsSAnZWagAAjEIQAIoO/fwG/nExTsu6SOFv\nSnSRRxW1IvCzEawingI7qe5UD75X0D6W6BSqv2Yqus7ERDgyfUHEkfkxsLUT\nC1Wa3cuCsUt0F8c6WzuunPmtbw+Nm0TENw5W17bUJswkGFDTZ6f7WEq1CxHA\nUiv8bD4Y8EY8MV1qUUJ8TGdgNbAoWHTm1HIEnRaaUhnZ0+/wxIZa7NIbaPUu\nVnuoa6RfiPj/zhDNJZlC2/RZ88AQLriJtIY3FVRbFJsUphS/0lMwNusM0Dy5\nuTRDM0WKsZnHqrjTnWLGQUyXdq92NC+mEIBX2nvuA0l7GMANaCA/KSqqIPbD\nVsj00Qd3tvhENp5j4vBZi1VEPcMxXnW2QbxE8IYKtNtSGdyAFIQlDuhZzeOu\nzMBBZEwbWfMcorwdaAGTyshD6RBE4vSH6NRtpWcPruvPcjx4AgmMtYnxZh8f\nTS+/oDmsrWUs7aGnkjCXRpgHVuK8MrTMxrkQr7n6v78fkx/TTR1Vh+JeGViA\nBDANUEeg6GSpK6cQnYu3K7RG0UXpvMmPj6MCawzrhHTgIOFfjy82wKzhf2MO\nz9ATXnPTwswGUJKOOGIp/KCmiuIHyMOUkazmYLs2hny/8Ae3hwwuXQBPUUCP\nIWJHoYivAhFerdiwKabPDuWgWfaZ9mkQJcUoOkgCojNaD91qEkRIX6ru19sq\nGbxd\r\n=48GB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"88f853ebbc9c8f75f566c7a1d8817120e875b9e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.110","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.92"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.112-renovate-non-major-88f853ebbc9c8f75f566c7a1d8817120e875b9e7_1620069949344_0.2564697603525443","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.112":{"name":"@balena/jellyfish-test-harness","version":"2.0.112","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.112","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5bb9f800c61254a84754492944c129159169f2d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.112.tgz","fileCount":24,"integrity":"sha512-7CnGLk0Isi6cBgIJbIzO+LPV0tRh1QPeO2W4OUJ2qCeKmxeaImF7nfeShPGmq24zUwSpRAvcvc30aDri1BF5Xw==","signatures":[{"sig":"MEUCIQCWhuS0vlPBwWXZp46oj/xarwq/sdWEr5W7owizbq1z2gIgA76y0kkqiAsDwhWS/dPElx/eF8mwli3MA7SIE6d1178=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkE8zCRA9TVsSAnZWagAA23IP/RD/UuiN8zLEcJcqGJov\n7Y3UEXnlm8OBAed4YZivaCukYOKrwKYDA1NuJm1Qi6ygzXDt6ATM9tkpJYpE\n9O80ylQzPqvDpo0dv6GT7Q4VkQUDu5Dra1BOafUeTohsD7nx0ZMgUOH9ccy4\nJw9/8+Lwt5O0oWfkzmAjNcwCuEGRJJGpgh2VpGrEiQDmLX3ooQ3Pcx5yi3t4\nUpl/W4qdab6vR8jdBwOaS2zm+0wDC4uDOXCk8vOtMRCl+SVIQjzuQnpooeFP\nKgyU8LKxIyOF9DvWOK7H+50dXwcH0qWkBxVadStgI0kdZIaHzqp76o6l0h13\nVO1JFYQcM4WyB/Dobm9Hak5fzToaS0OElV+JLu3r8vFXUeNMwVj+wbbmF6mD\n60+7EzeUlkZWzajw3gBAE1gX1nE5vnq7P+cZqc2eOFtkKeyfLiVdc5k4mnsn\n2NrsmgM5TXfxGHFDhd12lx8657oM5oBukPGOfWQzUyePZEFxRtjdsgpJL0Gm\n0jpliEg7ahKOCRkIyFmgeSO0t2BnXaZUHbdz6acbUPQHN6dyhGsQBccbDyGF\netoQaqNwnmYB0fWeDjKR/5lchmJMx8ToWSwTju+Hi/DT0qoq60/HAH5kf+Qg\nbELGNCaRJTv/LyUej75dKoJkDE3AmcA0diy+2QjfG03mIQnpVd2vq9h2PG2Y\nBAsu\r\n=ztKb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7ceaf5a4589723f5b47a8b767ac64aeaeec3aa4a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.110","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.58"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.92"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.112_1620070194922_0.900753881414053","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.112-renovate-non-major-53a63d71bbca69eeb727119daba60c6b8a2245a3":{"name":"@balena/jellyfish-test-harness","version":"2.0.112-renovate-non-major-53a63d71bbca69eeb727119daba60c6b8a2245a3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.112-renovate-non-major-53a63d71bbca69eeb727119daba60c6b8a2245a3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d82dab8b61e9e803652fd1e318ea80035a172ac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.112-renovate-non-major-53a63d71bbca69eeb727119daba60c6b8a2245a3.tgz","fileCount":24,"integrity":"sha512-6CXBkuZ5e3rna63i26NBbSYALWqsZjl7ilg5G2Lw73Ia8j6+oUwAr4ohKXlCZ34RqDkBsNcOLvHb2FpR9I2aWg==","signatures":[{"sig":"MEUCIQCcA/wHuBg7s2PzKLfchj2xDdKvh2VZrt4ivNcFiC1SiAIgX+9lYCYXIiYB4QAJX78yyJzyQhXlTE1GlaoMB6PB18s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkFCSCRA9TVsSAnZWagAAp0kP/RbkKowahVD90/giJPqQ\nqc4ftWZihXb+QtlijxAHIukI562zAjtSXeYfEqYvnvH2BqLaSDCz6kemaqPG\nZzuX+rho0W4wq7l3FpOlUcCGGSLltpIMozGlAf7t4QPliRzzxh25L3Gt1mOY\ngQkAxei5Ek6sRxNjElh5yLycK9rgBgFxAWWWcUYfPVJbsKQ+6S+lC5/1Z/jF\ngjkxHvsSiVm6H+7C2Xv3RIWnQAsn6y6NgoepCOljwwiqUZUTiQ0JIN4iz/vg\ndZIZMSM385IlcdfzRdUCJH24ESXCcUBte0HeIa0HjQn/7hxCrQgOji3HrKnn\ng+TYfdDhJvtV7LxUnWbEio4ndkPqNYUe3d/akCcC4niyRSyL0WbbVrHihVGz\ndgd2/+U8ZQQr4wv5/PFXXGk5/vi3FTs3p2l3gbfzi+A9RO+Y4Q1ZGr9YPWYD\nAD0nNcf93sYiTdTr5gNVFaYcwdR7To5jhE7ZvW1ICw2VVVjoyiOnnWAauEV/\nH8uz2ugr+4g1DgxMhFVxM03DfelTs9JwE2wMEn8k618F2qo3FyboR8OXn52G\nGGYyKb84KI1u0q4ht4Eh7v0dZq/2SCnkHCHCHWMAaCK10sqWcxrpI0j9Y92/\nYI9/aA6cHiD6wG94lT8zgCWtmJncmMBU93c08VgVtrhhPCVORrjrDiEAzUsE\nLlmh\r\n=3eqs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"53a63d71bbca69eeb727119daba60c6b8a2245a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.110","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.93"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.112-renovate-non-major-53a63d71bbca69eeb727119daba60c6b8a2245a3_1620070545847_0.2689209308592244","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.113-renovate-non-major-c4f53a9e09c5a71f09669fd9647a4d427ba906fa":{"name":"@balena/jellyfish-test-harness","version":"2.0.113-renovate-non-major-c4f53a9e09c5a71f09669fd9647a4d427ba906fa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.113-renovate-non-major-c4f53a9e09c5a71f09669fd9647a4d427ba906fa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cc33b6f427bb572dd94b358102e6bd18286f8a49","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.113-renovate-non-major-c4f53a9e09c5a71f09669fd9647a4d427ba906fa.tgz","fileCount":24,"integrity":"sha512-ht/PoAq3LehJpcrpqtiqTZGm1qpaYQvMTSM8sRhor4qCNGA/UUYx+YDbtliapTLR1wneEszJpmQ5xzYn4woUtg==","signatures":[{"sig":"MEYCIQDxV9wJNp9TlwUL9yVsaHGAJklO5MCKA04FLzch+MtNoQIhAPnGl3EQFECoW46AjDfSD1V+g9fx/9krPZpKdEibtTTM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92690,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkFD+CRA9TVsSAnZWagAAciQP/i0/JuHWGyH+Op1fB7RB\nAKQktQJgSAd+o5axLlpGzlhBlaT4OFDMkERImEmqZQghOb/+oxQKKwowSRJn\norFuptFbkMOMojfwXg5IuUsr/PkRuK+I3glP5ZyXFwGLB9XbUHzkpvgdMeIW\nq/PGGLp60IHLtM52BKehZj8Zv+9ZIvpl0fQLtAwNjaUw37+HoV7r5fiajX7w\n5IwrQyKuhGkRQ9y2rryFvGtNs8b2MS1J2xlGMyINe+yTia2sOkxA7pCI8ENU\neijZskkWRWqSbp+4PQN6LB3lQyY5VCAs6Qg4RuA3tGDat4pAtKehqt20F3G8\n2Pbj1oLJAdyb9WWh3RrzdtikYJdggrvPbw6Oo+AAWLkHSQeJc3UV+TJvEjd8\nU/BpPH1gYokturCqRX3x2RfqRhXEi34q9wTQ3XvCqADHRKShw7KrQHjVwj1R\nSJS56XQquSDwlyM4wURoWcckgpuykL9kx+ASSuD99WnlY6kjKYukAHwyO0bQ\nb3VWlG9clgpbrLVwiP/U6B/+06dPI/S47LM47Bav5VUeUrHWTElAqhsT7zja\n/kBbV38YQ9Orz+TyCsLZ+dEcsWs3rifkGe/VnuA3PmLaKAthz0FnT3Xd41nY\nUYvGYGqhKGVkX+Z0aYCqVbOjz5sxHiKr2bqlC7zb6nofpUTFVfiiMRunpO3Q\n5Poa\r\n=YqA8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c4f53a9e09c5a71f09669fd9647a4d427ba906fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.110","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.58"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.93"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.113-renovate-non-major-c4f53a9e09c5a71f09669fd9647a4d427ba906fa_1620070653849_0.3369921597820382","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.113":{"name":"@balena/jellyfish-test-harness","version":"2.0.113","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.113","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"256257bcb32f190c067a930d8e43ccffda7c9e51","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.113.tgz","fileCount":24,"integrity":"sha512-57w6GJ8YuHjJ4oh9XviIqEy4FUd0YyA2F7rU2a8wJM/JedNXg6NhMsEp9HRfFsZx1jYoyo9H7jPf1JsalIjf9w==","signatures":[{"sig":"MEUCIQDMGJCGXhhZA5tdyzTWUDuM6zefrEdmOUk6ABnjM/VRgQIgaiIzjpvS+YdVolUsFOiKoSp0Iaz6sFFAkDaPOdXh74U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92630,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkFHzCRA9TVsSAnZWagAAEg4P/32+Ees/KJuUFduh2B1p\nGY37IejjsurUnPc7kcDA6ksPxY3sYvv5sXlBXx6rQO3jE1BJ+mGFNnctjvhv\nCFdGLRssDfyN1/HwhLPDazI4VZxgfrYzuDusOJme7dbNU9bjfMiu5QAwpOx/\nC/2Skc14emv162A4i3nxpvktP2BJtx2+Q9Y8nTN0Efo7e31NO1xOBSrRtedO\n0BnP4Py49gwPuS4zyzOHt04SxaKH3nmCPBJMbiOug67bbenvY+K4+WImGz7K\nvWobYc8ft6f7qvE8GMipo/oifpPfmwEPTNNY9A3p7YgFDpNk4sraH5SZehp7\nYOnmqfQP1YY6c3kcZDX+Wp5qRFkFi+yjIBr3gAidoBUmunFQER3Br/5y+rYs\n8aQkpTLvdCDl3mmiiHmHdNuq6+SnS4EXnjWXoyvzvYhSgSDoZNlzUEolmSRN\nDw8ZbhFfsWDg5WdvuKpKdiyQ4RhcW49bguRI9armoteI7d6bouY092K8gsFM\n2ZD4tPrS3l/j9xI5C9vHQIccqj/hmaJKoSYMOsAf79ffQqHoKaRVMPaSbXCM\nM8SawWsi4xpHUuu7LEGjjwr2aBmJa8kOeILl/+nCFXdyLOTOElSXc1sdPsYd\nBZggNUyQ8hbk6Z07ItENekqqqgUSIznaI39F/CWusM05PSI0z6Nzz2jDvT1B\nl7x9\r\n=2iWi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c2045b51299fbebd602e58f9cdf05ac0ab3ac325","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.110","@balena/jellyfish-queue":"^1.0.48","@balena/jellyfish-worker":"^4.1.68","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.58"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.93"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.113_1620070898631_0.34408556149164804","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.114-renovate-non-major-9a143ceef6ad2b522827f09762b5ee8f7b089a16":{"name":"@balena/jellyfish-test-harness","version":"2.0.114-renovate-non-major-9a143ceef6ad2b522827f09762b5ee8f7b089a16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.114-renovate-non-major-9a143ceef6ad2b522827f09762b5ee8f7b089a16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ebbcfb323213e89ae2787297dbe6f706776073a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.114-renovate-non-major-9a143ceef6ad2b522827f09762b5ee8f7b089a16.tgz","fileCount":24,"integrity":"sha512-V770Jnl2t4MKO+YUXO8ShdzFThqPN2Xk+2tYKaG7Ejmbs/xy/Ib2MDwJ4iJJBOEaV7lGzg6PxcX/mZF6ylZTPQ==","signatures":[{"sig":"MEUCIQCIYDGvUCU0sQz5DrYfHePT7qAoO4hJ9C2xZ/Os/dnWOQIgEMB9iJSIZhrnUBkIN+7g0ABzUTC9lniz0+JHa8BEjOk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkGKiCRA9TVsSAnZWagAAIK0P/iHOeURFx6L2uVNwCCNl\nJfi/bWNNAnR9O975Mi6JSp/e63cww2byVSSB3VpuLVymKCDXsNReloLB6/WM\nYH7tBsGDHNfE4UkuRwtzWZo7CQpNCf/xkalUALTvSJwu6Cjup+zCLGnvaYJb\nEPPh+y818huxp2eqPiH+ItZ2zE+OnVHrNzCsvF1mYY7K0gr2gLYgjLRH1pWU\nJYBQy9/UY/7bpPE3MnpbBjbfLy0lSGV/wFwUkDoU0Dt7j4p5+yRwcn4blDvD\nso2W9n6I5id/McGoqVyn6i3j0sLTQUAA/tuNjMkAWnzaA8wJaz4aZNQrVC7X\njRF+IwtIEHXfNOMpOHIjyvadcEwjqBNPyDInD3kjREF3OgaS5tVe6GDkVvCT\nLigypnbZ4WqsLhnigl/xX3ee4fvTzNEzjAlpVrvTihrWcHLGW6NgSIA5Om28\nhZlXc1CZ6K9XjG63TDJtmU9wpsyRdmzN7vRa1F9BPJwz4IUPmAjX7j0opflF\nn2VpiJ9GG6p+WNieTlkB9xAtRk2QLgNOxTx5nA2/Owv04nJGO8j0hM7FRLW8\nnVhF0PWMGT0IIpZ2sAp5F+GbeNPBKyxDpmbL7xO3KW7JZYA+E2qiOCM6JKWH\npXzWUs1lFqz4eyq+nDQOfQK1d49dbaUjGKpT8JeQwiWPziBRYS6Vrsk6I6wh\nvh64\r\n=2wQ7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9a143ceef6ad2b522827f09762b5ee8f7b089a16","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.111","@balena/jellyfish-queue":"^1.0.49","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.93"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.114-renovate-non-major-9a143ceef6ad2b522827f09762b5ee8f7b089a16_1620075170092_0.18639125711480786","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.114":{"name":"@balena/jellyfish-test-harness","version":"2.0.114","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.114","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f0bcd4b9eb7f3cd289851780cd315897480729c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.114.tgz","fileCount":24,"integrity":"sha512-kHWsqyXUnMEaa29KWDLFqIXXyCZyPxe+2FYnN9Qa5I7vBxl1hECFVSwzYUEDTJ+SCVD1Nfs91SZzQQU/ORc/Lg==","signatures":[{"sig":"MEUCIQD1othLUTL9NXtcGe+L17yZsxckTvxo1Q/W6kdv8bey/wIgSi8oDqbRTt9AjPYhl8RkAZTVq7iohAM/2rqNAqmoKRw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92700,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkGOlCRA9TVsSAnZWagAA6ZEP/3ioRkGNj5zjTMHeMwBa\ndZWqE+B9uKCUCtbgt9YdPnZkL81iQi3+LR4kdbc0Ga/sDKhPIeNr6c0h9cEj\nRrIY6vSh/yUkqKFTNV7uK69DJZSBXOdZGXBuJoYqV/bIm7Wph8XVpCn7Qddb\nFMw7g7F/vEWNgsCOnZZXKp0UA1qpOU3vaYl64FS7FeEsPMcj08u1JayKG9DT\n36BMDk13CRRWjHzswRyBfwH/108cVj63Xgv9cjjIEBTiHXPWMUx893nPwY2h\nPDL2ayH59Kil5BP2XOzUmQoEKbANHWMUQ9KvrMWKAYPL1jeM2D4eYqBxjF9Z\nDzwxqLknsBPQqJCdGHeCp2A/vVcos+53xEdwLR3GmQ2fzfNRDm0CZrvlAw0J\naTu7VogOPjqDFuu+clbNvcv8Ev+Vh+unVF+dfcOncENXmnRtdAwaBEMasNNT\nh1kcKareK1NPMwQ5Ynl7Z7l3uYdNGwVw0LLT22T7ABILjety44MCFbdBy+Sf\nOBb8WhIpQOQeh2ff7f/dBG79mkGIlHVgCEPBTFvoh+TAZNX4k9WyJLvRpPPv\nNP+kzs+KakrtH2Qpyrj5ZnunoX+qC3SA1FNnJUzYEUmbBpKzltzXfx/UXTY9\nD8//GRjZDw31o4xBabhoM2yeoCK1n7f08F3UsO99x3Pt95/RCW+FlJTFxB5u\njtln\r\n=Vx9X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f2af15839606cd2a6d02ac9dba3166f909d51f56","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.58","@balena/jellyfish-sync":"^6.0.111","@balena/jellyfish-queue":"^1.0.49","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.93"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.114_1620075429046_0.5017237603709876","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.115-renovate-non-major-ca4f0894af35aaaa0c59060e96cd8511775e2cfb":{"name":"@balena/jellyfish-test-harness","version":"2.0.115-renovate-non-major-ca4f0894af35aaaa0c59060e96cd8511775e2cfb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.115-renovate-non-major-ca4f0894af35aaaa0c59060e96cd8511775e2cfb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b444eb5218dc20af042a96db5cc292e6bebe149","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.115-renovate-non-major-ca4f0894af35aaaa0c59060e96cd8511775e2cfb.tgz","fileCount":24,"integrity":"sha512-J5lgu+Jq7HYs8x+gjR0br5mMFBNQ1r1bx2zSzcIfp4ru3NHjnSb536eTfS+qdTp+kbrMFywI2RRRlvH4fQbfDA==","signatures":[{"sig":"MEQCIG2UN1lsKUoJeBf0nttec3SnPTaDlqbSswmTuJSeq6FhAiBKKFtpWyFXkTYaWMaLdClJolwrQFf4vx7qib5RS9iNzw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkHoSCRA9TVsSAnZWagAAurkP/jKTX6s++uBQUxRvUKA6\nIDe1sQgrzCZQLUqfINDmab1tBrAwS6zwHUs8+eb9zNwPlPDNy0E5T97xJ1dq\n1bpt3zLmO+eNTDcgPhmbLMKaw88MnU20ZwGLmg1rEoEIa7TRc3kq9aA9TF9x\nyXaaSlsltoqCXk6jVDrmt4jHCRlyqDdcI6TDeLD5h7r+DcuIXY83A/fK329D\nHLs5Uk5Oy7pNxv8ZzqDRwEmhCA2hE6A0+e6o8cgqVccCcKiy6O+/yNvBri9C\n11yHk3adL+egnpNp6ORAtoCzJ/U4okjLNsP3i4bRx/BdrA9U6UjD66hHgtRB\ngGhNDdxn5/u4U/Kcj1M3nTdz8UbtrONM3IPdDV8+WLaWOQU/3CcXV8f5C8c+\nsiiI23rK4QVzhcHXJzP5C6Vw+9rqs58Ka3zjgdpNyi0sLVkTCiMnvbL4oQLj\n/f7rdG5VCnbpkjQmpx8+iqy5+GwPXY+VMpLhP3DWdxJzaLU2+/flTMhyuBvN\niCFjNrmaki5l3Y6S/CZzs6tlc3BryEliIdTPDUhA81LWkhs/axzGu1DNhK/a\nqdtpvV4YCIiuj4yheKrghy/y8cV9z86JWFmPRPngqA4ZYLF70TxC2MSHdj8W\nZ1FHR7hbkWPQQ1pHuIqI4d0SwD8HnQzsyCSQ1HGHs92jKa1SPggtTUlump4K\nmIA9\r\n=f01m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ca4f0894af35aaaa0c59060e96cd8511775e2cfb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.59","@balena/jellyfish-sync":"^6.0.112","@balena/jellyfish-queue":"^1.0.50","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.94"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.115-renovate-non-major-ca4f0894af35aaaa0c59060e96cd8511775e2cfb_1620081169647_0.9933789610351413","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.115":{"name":"@balena/jellyfish-test-harness","version":"2.0.115","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.115","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"78be471d46d03e3140a50a3ad8cd26052e7db829","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.115.tgz","fileCount":24,"integrity":"sha512-1bOchZEKuKjw+8HUAmoNLPC22DgAJXFBS9RfwlT54XRbTebQXDwzPujsvvgY9P0jFPb0PVujvphkVVvzV34bsA==","signatures":[{"sig":"MEUCIQCGpSUWYti4SFMx0tYGquuyUV0mkQWfCIWioWfbvZHiugIgODOiWOBHe4bW+aU8Tn2+A209azAu5/G/nAz8VDOFzsc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92770,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkHsKCRA9TVsSAnZWagAAc4kP+wVmSrWX3RzRLbUnwBmJ\nSU6Q1a+BPbjAGUN1XzQwY9EOCpgaJjuvTRTXUNmD9PVOXHX0euUNa0k5dmMq\ndu2rAqFii06TQ/gBuSEnploVlJcAnt4zyZSocvkUQ5M/vJlOHppYm2EVJJwP\n7F5kL28VCK7lku55K2fnGQdNEZ53AySJDDPll6vwUhKC2aQC3io15d8yiyiZ\nr6Ezy3elsJs25SmC8NHBxOuzboq/BKQHRPk/gO/DO0yszq1NMkgz4otyTepg\nK8cfOJ3OlJmgPcmfxOlQRNShqTo24YpWd1q0GFzK8EW2Ewz/aEkBPJFfj7eb\nmS/ra5G9goBjMtpwHUNiOBwja0smrbbV+1TRWIOpYA9tRbXk0Y2LQgO5WLXD\n2oxD1ExOyXMY9GmGnrvh+osWlgeLXJq8l0+2Mu06uQp5MrpRQDc1UAPRu30s\n3uahYHw/dEQmZsmq0V2fMdz38QLyHXcRP2FqUeYe/sXH6T2+7LSLnxjFjSR/\n7s5ANaJKy7Sb5BaemqdFTkdGpUgJgeRctLR6ubaYVhcsCbnBqBsgKp6lILj8\ntP8bFhI74/hfKi/+za0o2wx4C5fZbS1v4+U1kUB9vGvkTonNOheqy47s/HO8\nTqpE1lin4VVFRp5YplhZKhPT85klrBADx/pCZxX/z0b5B0dHLpKus0Ckv7DO\nj6C8\r\n=9mZo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4ca507afb87923d76a0cd742d060c86e7ace4d23","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.59","@balena/jellyfish-sync":"^6.0.112","@balena/jellyfish-queue":"^1.0.50","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.94"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.115_1620081418484_0.012074360405192053","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.116-renovate-non-major-57b0637f99065069b5967f293fafcc0a58372872":{"name":"@balena/jellyfish-test-harness","version":"2.0.116-renovate-non-major-57b0637f99065069b5967f293fafcc0a58372872","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.116-renovate-non-major-57b0637f99065069b5967f293fafcc0a58372872","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3678b829c8deb68de8aea619902225ff4ae39ffe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.116-renovate-non-major-57b0637f99065069b5967f293fafcc0a58372872.tgz","fileCount":24,"integrity":"sha512-QwjiYqtJtPsBtMKUWFJjD6jvsljrYo67zdMB52pwRhx/33mTtqttPwWVd3nflloRB8Aw1TtQ2DjlZMaOwIH5+g==","signatures":[{"sig":"MEYCIQDbYaNxv0M3R8UfRjVP3BRuDcmfTFDtFSMT722q9D7C0gIhAJK4Y88yuwX6cuH1oQ58JyYIOMSY5vkFAEbdRI+c6GAZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkIsECRA9TVsSAnZWagAAc+MP/RWzxLpM5hugdMF6k4pZ\nvybA4/cUY0a40ng9Poe7MO2SK0NU37GC4R4rMggS+9CX3LnoPTbFioVeb+zt\nfpw8j2FabWtwfuWIAt45jGMUceszkU0waBlFxyubcTlaLoroj4al2BAJ9JR0\nqYlJT9Y1b+ngqrQiMJhxvN1CnzCrupBIBAbBVgvn5WN5161iF275vlOJr9dp\njk2lw2vRv5USNuXqIlF8hpTV/aDD7npEjPOcuvJPZHEY+oXlJqkHCXTH7Nsm\nmNeuOIDN5I7UDDB37j51RWIobVYSLnGZ56vRIJENjQNSVF3Smgfk/ruRCxDs\nRTSB+SS+ec0/9cTAZ0lg4XwjehfHtwRKzdhZRl+wXzNOMQCBBLnLrO8UGgFW\nyvfL3aUk3YszWHLFiudCbZKZo/juNgfxV8X65x83kI8JqdR+MBxaP2bVm3yL\nO2H+VbEfbamwwragrX9Ke+xCgm7Ga0TXAfubEoYShb7vPvSuBZb9l5agGloP\npSiq3LYxx8wfY5C59ke9YzhYJMNVPXZy9N3ooM7pJx4BT01u7XxdCHJlfaeq\n3+3V+iEy/IoPxCF8eLGFgpu4uobWlqNJHeRohU1KPvWc9VzxIi+ukY3dsElM\n/BBCzIjdAwX1Rm8PNvlOOszYuBxostd13CDCoqM6GeZ/ZSEYxgQKOwELncLq\nnX4e\r\n=rrzp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"57b0637f99065069b5967f293fafcc0a58372872","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.59","@balena/jellyfish-sync":"^6.0.112","@balena/jellyfish-queue":"^1.0.50","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.95"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.116-renovate-non-major-57b0637f99065069b5967f293fafcc0a58372872_1620085507640_0.8006781971287111","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.116-renovate-non-major-b4a86ded4f65785c64a6a56e90463164d85c158d":{"name":"@balena/jellyfish-test-harness","version":"2.0.116-renovate-non-major-b4a86ded4f65785c64a6a56e90463164d85c158d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.116-renovate-non-major-b4a86ded4f65785c64a6a56e90463164d85c158d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ce31cb748eeacfa8a6abd0a8480adc80bc212c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.116-renovate-non-major-b4a86ded4f65785c64a6a56e90463164d85c158d.tgz","fileCount":24,"integrity":"sha512-FvO29HsEujlUR4t/awu9iKW/BTLzSiT3sUqlSX0zW9Ej1P0bKhgjNO5lZTk+uFRPuLGh9sjWPu0gtKiwmfoyhw==","signatures":[{"sig":"MEYCIQCNwDRXMLvS4CbXGQqjPpsl8qunCn9VgxksFqGiTkXptwIhAOoDN3IuICfyPCZLydNQXmpZpzgOXVMzNquP8jTmrEcn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92900,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkIwtCRA9TVsSAnZWagAAnVYQAJpl+udRR+v5aKCmk75P\nRha7d1wq4XVkJiSQDeA6jlBDC3GHTvdQWlmHUU9yzehTUWKRgEWXUfMUBK17\nJnzeV7K48W4KY7SdEqUUCfFapizOErTWV+4m9f/YMfv88OoaNETBLcBhe1gX\nLdW9iPlCsie1RoNwPRlxIghuQ50nuEMKBLueN13tYewWuukQJSP9gJL7/QAt\n9XHeMcGBJGm9og4wzDoDjhDAM/uUeWc2wCoS4t1s9lSKwo5BQGJmvgSUDsDy\n36pLmvQ++hHlSSi1YPewsh4u8hW6AF81XFlkZFP/gAqhTevOUaCpJ8LuOL8D\nL/vq4yvIIwR3PZQMK8r9MtXWNoOOLM/Jk5eNW5Dl5Er/fqdgLSZnGbJQ+/0e\nHC5DYRyR4YaHanxyanKLIJXM45S21kNdo+Ts3qaK49UikTWuiElSq4v/lAwm\n2A723//jg/EoU62xwJO6ogSLgdWoosKao+uIIsCrmptee7UcczTNS8h6N8xw\nhz1V607Ychl5WbvKPb9CJv8c5TqvbUTkERtgiaLgZT+f1/POr49T6PJyFSqA\nio2U87I/41YKt0d6NwQTHHVbXOl4UMLMitpf56zH9ISSG75Bt4nYPojZVZgl\nj5KF/hSAojMuWEos9hG8duNWcRiQEX+j2to4AVRR+x/N//cBsUno10g69ZEo\nbRSZ\r\n=9Sj1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b4a86ded4f65785c64a6a56e90463164d85c158d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.60","@balena/jellyfish-sync":"^6.0.112","@balena/jellyfish-queue":"^1.0.50","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.95"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.116-renovate-non-major-b4a86ded4f65785c64a6a56e90463164d85c158d_1620085805224_0.21420279102561346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.116":{"name":"@balena/jellyfish-test-harness","version":"2.0.116","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.116","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b65143a5144f698f917daec37ae74ed0e28700e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.116.tgz","fileCount":24,"integrity":"sha512-vJgZsQAXfZvPWajoOD2v2qKvzv//hpc/vPISpkD/f4JFrYgNwMT/ewkszyRLI9TXB7ziTSPCQR5dM5xxmkKvvA==","signatures":[{"sig":"MEQCIFnsd60KMMYO541DLTiJlV3zldBF0B1uBfmNxKMFARMwAiAGGtZQj9SRfMtqxwPnmUSmWo4BBbRU1wmGdhxQt8trWQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkI0KCRA9TVsSAnZWagAArUgP/0yr7XEaEUrsI/gJKLzU\nt5OH9EYIrcxtKgz430T/jFIbxvnAbusoxLjMO7WyONaoeP1uZMel6WmXUdej\nVkBy5d5w0KpFuySwdp7/AUFAZuM6nYXI/kgHeTM08ABP1hnsNFmALdy180Ag\n50mu00mbHM3O7pqx9WA9zZ2wuGqEABa9fWRv6J4dVXmcs5Y8XctwpjSU9o95\ngw47Z9GDx4RMw5xSxNwlNUr699WzM9L0tNWqm1pqnNGYv5Cf55JWf68pm+Qq\niR7J7OlrStcddw7W+V7vvSq+9aN7bIPlFFm6zI+JSLV3As4kMJY66k1kWecm\n2mJfCFz2i2UuQX3GclmmtmfAEs9YOSTvcoARxOWAjKcOJ207t0YjZrXAnRd5\ns1qeIWCRBOT/9bVroTKNv9zO5nKk+8sPVuVEl+83OoK2yEHsZ2opWg6/4OKH\nfTWUWK9xrBXDoI9iOwoZP7wnlgzh5Zkf1sdEBCbcSxT0gff0rGM93H0zvPSL\nKgKzKqeD6QGPmaMU4GSp3au/aHiroBlb70HKFHWipROvoiHXfBQdj17n0rKv\nhThmOHGHCFK/lUb9c8TM7wm3C8km0xBuM6vXDVPv8kG4N0WobLwcRo7ubZRD\nOIXuBjbIe6cCh9m5vIjyex+pdZf4qeqswjlllKdu+Qn9UMe5/yiC22wr0D/V\n48qj\r\n=9Vx4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"69ffc289df7b44acb38655b1e60855868eefcbbd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.60","@balena/jellyfish-sync":"^6.0.112","@balena/jellyfish-queue":"^1.0.50","@balena/jellyfish-worker":"^4.1.69","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.59"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.95"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.116_1620086026284_0.38387457744800346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.117-renovate-non-major-55f4f299a2c742b40df7d095b6bce23e2e10fd21":{"name":"@balena/jellyfish-test-harness","version":"2.0.117-renovate-non-major-55f4f299a2c742b40df7d095b6bce23e2e10fd21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.117-renovate-non-major-55f4f299a2c742b40df7d095b6bce23e2e10fd21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d4a4707af4b65c4b3365a9474a1e0582592c17fe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.117-renovate-non-major-55f4f299a2c742b40df7d095b6bce23e2e10fd21.tgz","fileCount":24,"integrity":"sha512-PeWdBdgkBFVbFPVQS0CrPzbaUpzbaY4ems8/OwfX6KWoBhY5SX0wsUjB2LHUx031yUi7eEq6PKJbTUJYRHDeIA==","signatures":[{"sig":"MEYCIQCeyN6u1D7AkfY28jwP40HJrv8GqHiq19OeiQ/ykW9rHAIhAOoBdTHP59odiYVuyOwwQddjIVS04iQl8Zk/s+kR9ibi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkKNWCRA9TVsSAnZWagAAfGcP/Ag0ckkUKicA1RNWrPtG\nNLyMcgRysCUnrQLJEhdBjHbcjo9jMCQsR9Arr472GOYNc+iZXBoqlc2JIa4d\nL/cSJtsgciYI/QkTU3++9eUC0ev20ZVO0hQP1uYuuCn9hqTpGceF9vOWG6PA\n/bYxSgRv4QfS/MvwCPso8oHOLchtasQ2FjI1J6YdmSkhr0FA+3RomhTCZtZs\nNQTo0ix/xFLc/7mTIUtdnjHx4XZU1eKHPht7HC0g21CQkud1R4nwaNeVsLEK\nmPLPqzz7A/kKOKsTOodURhlDT6zzUS37mfjdyQL8T5i/H5vcIh8AtCxFqXxo\nHRl8XvB7RImZeuCZrwytTgNyo0NxZ/EZ4qIat4Q7DHVUKiOEqbL9Z18NKYbd\nB3lf1+qAD5prMGjqLbO3N4DGq4kNXwhsy7rLOWrQSsLj/1IL5SBbrynSZRV+\nnHijAzAAlGktN4P2AXAZU5XMFpKMabgDo662z0lKwR8EjyW7o59M5CHZJbqn\nvvbgv7YLI1EWs3YhY9aPThDKirshnoNftUDbktLBMvpg/lr2/TY42DPywXjy\n1YCB70Gk5n5Kze+y3xCArwUsIjSYYEcWJEaswjDmWNY6wc1cP+bH38TUw/F5\nskFrMt9StfYDVgYioz/HiHTqa9F0q4yi3fML/OlbSTRcl71204AE2WVNVmp0\nA3Hw\r\n=KRrN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"55f4f299a2c742b40df7d095b6bce23e2e10fd21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.61","@balena/jellyfish-sync":"^6.0.113","@balena/jellyfish-queue":"^1.0.51","@balena/jellyfish-worker":"^4.1.70","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.60"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.95"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.117-renovate-non-major-55f4f299a2c742b40df7d095b6bce23e2e10fd21_1620091733890_0.25459850009293095","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.117-renovate-non-major-de120b47df13b292077181fbb80de2b01e7c9cd5":{"name":"@balena/jellyfish-test-harness","version":"2.0.117-renovate-non-major-de120b47df13b292077181fbb80de2b01e7c9cd5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.117-renovate-non-major-de120b47df13b292077181fbb80de2b01e7c9cd5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e4821dd961c7561420cb49f59cefbfd2f247b40b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.117-renovate-non-major-de120b47df13b292077181fbb80de2b01e7c9cd5.tgz","fileCount":24,"integrity":"sha512-9y7VA6U3cNgkx2fFPwCPHhnO07w6HL8+rTpVF0pnor89d5MBcltmZ2+Y469PKjufagAyGvAQ0PLMkoDjAHETlg==","signatures":[{"sig":"MEUCIClVHcxUnp8DiObXmOmhU5R+pcoFYve2+QIUuGZBwz3QAiEAhGqI/vlYQoEUB7RPIkNctM2+rTd5Yuu06DuDnR2HEm8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkKSECRA9TVsSAnZWagAAIxUP/RDsOjwz2THjKdAUlOKA\nBpCqf3QtBkEEaxWigw9BJ1SHZCbcKsMECjr211OxfpZLZ8ehUlblfZNbWnlz\nP8t2s6EW/1sStb+98IS6UCbAcGLspdngfg8fA1FNKiRQepyuqMfrfGOcFvdB\nrKd1w1CFx8n0RpOTkdndu4wKzrs52bA6rWcCQaTR3/rimeqz84d/vHne7Qkz\n327s+QdS86RsSsOAG6Zp9wkWVw8EAlv/K5CUZO51/BXJ7Rjg/eguoFNX5lYK\nuu6xSjrobclOihXEpgCqSyfKYiyZ4H2a2DZbnhRtfcRz9GerjWEfqd0PsIav\nMX2UwQ82woYZnjW/3hSjxzZ9TSkkIyJL/G4pUuhLeEnnwHU+7oZJ1nDIuwY3\nLk3uukFK5RHBW4zz0ebZ0t4xkOE4Km14/9mHeeCKN1G0gg5Lm/YQ48w9iuIi\nZiFbUVqYy0HBT7XaHsKFPd/pFbouUSHIi5bjenBIedwKj1nGQQNyD+1NMQG+\n5+C6VytVZeYOo5rLVZWFMHKmpyJpzjZ+USCILRzl8kjg9As1bdkw9ahMY30Q\naKlGtC4YIJ6E1mnAOaoB8N92KmpNC7vbOXGYooP0MzGn3Ys40RGs67i7g8yJ\npI7APWKdo9hzApMPhk6w1bDxkxNbxTcaIGnCavIFvIpzFteJHtihggICsE4/\nvXIG\r\n=Y0c2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"de120b47df13b292077181fbb80de2b01e7c9cd5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.61","@balena/jellyfish-sync":"^6.0.113","@balena/jellyfish-queue":"^1.0.51","@balena/jellyfish-worker":"^4.1.70","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.60"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.96"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.117-renovate-non-major-de120b47df13b292077181fbb80de2b01e7c9cd5_1620092035659_0.9643445133322737","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.117":{"name":"@balena/jellyfish-test-harness","version":"2.0.117","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.117","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"51943818bb38ad19f5592d14b9cf6ead72455e65","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.117.tgz","fileCount":24,"integrity":"sha512-g3XOdt1/iDN+rSQ6/S6bTKcgfBdnAh+h6YFsq9OlVzw9F8qkhXqIRthU4h8r9mBUwXQLA1Kq/EuJvL97ZJeuIA==","signatures":[{"sig":"MEYCIQD3k3bepcKV2Hp6CG44KIkr/fiV7qOAF3rOZUfiuJb+XgIhAJ4hnzY8xOUilRfs0uvgwWTAUX7IU/vLh1wLPAG56sF4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92910,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkKVgCRA9TVsSAnZWagAAup4P/jZHA637K3aq6wmpwi1w\n8Y+mEyD9cGijEPZ6faI5jFslx/1KHr8hWu5hhfwziy9T2B39ZIMETdA37c+n\nsT9dcPC/Du7aX3d+5X6OVXACxVRv9KcYcc074x948qorVuj0IQFEOhljM7Qf\nWzi6xRmTVe5gZEnwGVJSouTIY+zadA/ruaa+fM4TlWYnbo/jFya3j7vfbycC\nWh9F7wPbGvill3V3PnD1+Or1hiA6KLqDwS4TqVVJ+xFYvRDz2Sry02EVDbuX\nZg68ZdVOwZ52PsgzM+OMNqbokTgagIbBLZoKkuTqcyPtSJ7HF0YlqrbhdVRo\n5aRqcjxMgGsJ5LLG7PdOMMgNeEOZeuY21EtWQJ4WJTAXmVpjOzFbLoRlvvy6\n6bPjrV6gbzz4rN9yS91UnG98gSLdkGSlI5gUsWfNXUXNmrHkYRMDuZKQVIkZ\nj77BUy8YiO9HzDILTn1CAW4JQy6VU4c9pZFnJymG/BfPKYD12zvJU8dJbjhE\n7sJrcLAiDul5V9U9NbKiakoDZ7ykbWp8mMG32rUFOZWYoh4IYrepi6sTLiE3\ntnLoWKsuQ0U7QPtJJDPvrxHUGXqjt8hdJX5qsJMDBgmaZPR0hWqCuyogIDbF\nTWBGfh8XPYVvADBNg3Jw0TUO6y6BERh1D188d+WnIH6YGixUsNdoLcm/Mwlm\njlvl\r\n=FdIa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1cfb18db3bee604aa04f0cd6f899d58c0a339ad2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.61","@balena/jellyfish-sync":"^6.0.113","@balena/jellyfish-queue":"^1.0.51","@balena/jellyfish-worker":"^4.1.70","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.60"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.96"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.117_1620092256231_0.7260359642232279","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.118-renovate-non-major-f36f3d3c7a5cdb8976fbf0002cc59ab98668e731":{"name":"@balena/jellyfish-test-harness","version":"2.0.118-renovate-non-major-f36f3d3c7a5cdb8976fbf0002cc59ab98668e731","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.118-renovate-non-major-f36f3d3c7a5cdb8976fbf0002cc59ab98668e731","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6aef2b7afdd96d6c6394ddca4343d5725a02f0f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.118-renovate-non-major-f36f3d3c7a5cdb8976fbf0002cc59ab98668e731.tgz","fileCount":24,"integrity":"sha512-F9IPmabGWnw3QPAqmFTU0jbaCA706fzNpjmesn4Bt5I3VhGVX18wkOKniuSWhE0kpDReeo/kPtIPCVob06CAsw==","signatures":[{"sig":"MEUCIQDFGenIcToxIgMp8KzmaKl0MDk+jaAvTMKouZrfec2A5gIgHH32P0u1LrX7TKBkjB6+N7xJI/cFlMJk73GVS/6P2bY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93040,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkLvUCRA9TVsSAnZWagAAQWsQAJMhwm/T7wyCHNc1BrKb\n+iWN4gA+Ieq/AoDW+jG3n9SRTF4dBAkETHIHWTkr90fwqRU2yi6JoEcbxpAg\nXINsy1prRDI9g+q426mQr+Gzq8fqscgUZdIA1Nzhi3vSFz0ZYdNawC+AS0IH\nJuPCEpbfHa6YsthHd8mJAlOFvJphqN6HR5b+BeF9GdC7GP+vIrCN4gQwcZgP\n8LX5SwjJ+laEZRjlh3q6DP+VlUAzqVedPiwemnQ4VbVQQgUMnKs2kA2EgmTz\nx9YLobsZrn1nDCRHMMc43Wk28XZTE4pi2BO4nzBc1TP0Xj2fsVNG42UyvXC0\njU8PXiZNCyhJidHlTI8c0L4SzGMk2zOG54kqRO/stE/iCArEoclty44dwKAZ\n2fSnI9n31MaJ3S3vpS0p4EsYAfmTyDk+Yp9nZU4j/dZdBNBpq2ESYOYBvnUH\n7kguViUvQ6S+/EXnHFr4J9QAaXuqjBxFBxinckGjVU05ecZblMyT4edbSYA5\nGRlVKlPQDeAh5ZlQVwcr4IiHCw5yoQCw/xoLZo4IyD33olC+vILwMbU9F8Fb\nduVVUQafutdxVm0sXcmArEFY7o1YWn3MTkL4dzH8F8aMAe/USQZRb9K40gbt\nAaMX8wAScxjzqZxkZsoPF/u8BhKpVm5G3pbosMp4osGF74GoPzXQk5kQY12I\natdq\r\n=4rke\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f36f3d3c7a5cdb8976fbf0002cc59ab98668e731","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.63","@balena/jellyfish-sync":"^6.0.115","@balena/jellyfish-queue":"^1.0.51","@balena/jellyfish-worker":"^4.1.72","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.61"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.96"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.118-renovate-non-major-f36f3d3c7a5cdb8976fbf0002cc59ab98668e731_1620098003836_0.10922538687804284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.118-renovate-non-major-1d2165e7227846339e9be830dafec096e7191199":{"name":"@balena/jellyfish-test-harness","version":"2.0.118-renovate-non-major-1d2165e7227846339e9be830dafec096e7191199","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.118-renovate-non-major-1d2165e7227846339e9be830dafec096e7191199","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"75e3016cd4a1f36c1230e34078bf4b9454b5de5a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.118-renovate-non-major-1d2165e7227846339e9be830dafec096e7191199.tgz","fileCount":24,"integrity":"sha512-OWygxx4aUYq7jrA1/JA2Xbsue8RRAV+FPNSZkkmCNqfFN+sANBKyzSojQynlF/OFD+DiioYTI80ETyidZKU6cA==","signatures":[{"sig":"MEQCIHD4AASUoJ9wBt3pCX0C6XpURhQ9VcXN0S6RArBFpz2lAiAHzpQZ/F1c3A5miI4QMJK+mtlO4eslW6uD1KlWzyEO1w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93040,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkMiSCRA9TVsSAnZWagAAvloP/AyL+On5MyHTj3djhRc8\n4OWS4kOqik7aaU7ouKmn04Yw7GCpe+2IugEL9KGlezeohqryE1ZeXnax6m+9\n39oWxv1nv2xMUb1QqrysB+mrrIYU1lU5IgXebmU20AoR6hEEs2G+98rH9+3K\n9tIhujnU8aUt6FdFQcABp9F22HaJuAJgBIEshL2tlMVzR/c4S62ZQeOSxeo/\nNYSaMaf1zsf1mOLYJrEfHHUzY8FT4OhGa+CjxEB3XIV4gs7pWy4pfYwN5VBk\nGeEkpEWGE798C7ZANpcb09Zgb1+EEEqRSLa4w4wPcWSJbK8X7VXPsM0dUmYZ\ni/Lm0vhGFKXhDQWKHz/f34sJiu2HlBQ3Wyn5KFOBfw3LfrpDKvi8QLQBDjt5\n4KGdnDw9Qpi6BGA3oODIfGr8ZtfoGud6KXRPhcUZesmIJTT5BesEnv3MCnQN\nfktXBD1RTOPdoUnWYYoJlNRQyzmrd6egqGFoFCC1SY4Fe2Nuay0c+fiPlrF/\nqtPWYcIdhu4Kpb79nCpud3WLV7wdUMQPaJlTov8dfJsPZjO1vw6ezPWqz27b\nHBD8b8JSAHIosiiLxAYx1SW43VbGonfca39fjYQy4B1slFhYElncu5qsUtaF\n74tFh185qxMAd6Z/adkxj5rDZxC+edTSfnHj7eLgyRTQACVXO5x/sF86DYym\nzLXT\r\n=VB3H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1d2165e7227846339e9be830dafec096e7191199","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.63","@balena/jellyfish-sync":"^6.0.115","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.72","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.61"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.96"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.118-renovate-non-major-1d2165e7227846339e9be830dafec096e7191199_1620101266176_0.3698313293455928","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.118":{"name":"@balena/jellyfish-test-harness","version":"2.0.118","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.118","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f45859699d2d4dd87694a6970a6d90a4fc3a0cdf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.118.tgz","fileCount":24,"integrity":"sha512-FcYITNIPXWA9Uaoh8CCPfyQtCF1RMi1Zu/3BqgTNQaWgnpyn1nll2f1XQyjojIHzM7i0yFwzCunCgJQDCbPY+w==","signatures":[{"sig":"MEUCIFzg8tG854Nld+O3iBEW+8BEMGatxX1EHb4JHMez/bA4AiEAgktasuo9KfEuXEEybekBaAfvJl6gFm7XuOlAXCAR1II=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":92980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkMlwCRA9TVsSAnZWagAA2TkP/298oDLu/wsyooa4jEn7\n+yjONqFsaWRVfqBicxQYU/pxDWunJixlRrl4ApJUUaAHIS1ZZqhxnyftsP2T\nNQXJjT6cPRSQzrxvFNjyrpoR2Nqo3oJg8ftZSBQcL4R0DrfxmxEgLorl+yNg\nclUeDJWiDv/D2LPtlnm1E5YM2z8P4F0cXTh3aJxiNR/50ZJN2Uwi1QnKFSoW\nWXddZy1iVx2WdZDUchYEuNa8VMAUZyDskhrUBJTs8wYJFqEWas13wzcCTrwJ\nvp6ZZCpWlY/Xk2qpaZrn7+5QuT7nKgqhNkMrY/oBkanx+ffp0tYr8JWOjlJ/\nIrDLeYXiWJGmfOI6Z5Bq29JYmOouTUcKoKhXSCu+Gb4vLxBP8gGH2O6PS/kh\nqb/uiSQLo6BnVOJE3EroI9IhGLBbs2+HZC7YFpAo1VgESCMjjSvjI45trtU2\nrNimG0QQFeDAp6r4jeckXnMLVEJmVu5J4AGHA8sZPz5KLLbv8TJGjG3R4GKL\nhx1jVX9/FuWSi8KNxutp/S2H2uzQI7fG77g2VWUYVENEz+/wJSTFokKUSzZ0\nnUEqZeD0jzIuVkub5INIAmr9mL8luiNup++Eh9/xhErqdcehQ13r1WVvJSpi\nB7Ond/fh51NeWob59T/M0D4zWDiKrPpeiaQ/W6/jJ3nCeFK/6B7qdoQA1tYJ\nXVsA\r\n=dbFG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"67cbf79088675884c55cf2c7147d2a10d2a3ef29","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.63","@balena/jellyfish-sync":"^6.0.115","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.72","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.61"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.96"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.118_1620101487701_0.8763465387177956","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.119-renovate-non-major-a8a1fbe3e9a2ef2a49af5f8aefef574851e91511":{"name":"@balena/jellyfish-test-harness","version":"2.0.119-renovate-non-major-a8a1fbe3e9a2ef2a49af5f8aefef574851e91511","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.119-renovate-non-major-a8a1fbe3e9a2ef2a49af5f8aefef574851e91511","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff805114e9a85eac90bc63c53d405d3bff21743a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.119-renovate-non-major-a8a1fbe3e9a2ef2a49af5f8aefef574851e91511.tgz","fileCount":24,"integrity":"sha512-1Ok62g9EedVmSEPjB5t1I0F7iCQ6wETwCPY7RL9FMD3Ir9mkvqCBJ7aQ/N1X52JZW90mbnl3S3GiwVvCecrtRA==","signatures":[{"sig":"MEUCIQDsdzWicMmE9Ga0hCqPfe0h6cltyvKQcE3UAeNW4F0DKwIgRuWTTfjstk9dl2rEa7M9AHOu8SnCPBkTxpfHkruCnhk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93110,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkO0/CRA9TVsSAnZWagAACRkQAJf70wrIbyOJp+WBXc/4\ntqddjCrVHXdID77uhV83NyUS9g15NPDmZA/637aiaLYC1KXf1w1xekHL31XX\ntdxxSuJqNhd46peQkx1Id/Ayjlv/CRxeetdn4x7OKC7nfZsCn1nbwW7piZ4/\nNzspUMyFwRvc7XUyFgUvcPYzkGSV/FVVSF/1Htn3MSDGJIfPGP65KvQmArVD\nyLkS1sl+/7/J/ApDfSztE/p7WFd/OZTVxmzhvpeNNHPTDySvOpKW1txMxuHD\nODFiFuQJH0opcSqBL6rzqfPRQQr7KgO02TLr491hhCC3jyri+6ZAA8sJPg2b\nWNHbQombNYiFO7NKq7ysIBBG64OKSIRGyfBIncppgYNiDr9pvJ98uXwlZOiy\nygMkKVUNl1pETyez5OMgY3Lta5XgJxig4vgka2ostn+NPl/4ZzPnMdUN7dLj\n+yOgIzIzcPCzzFB/yDfn6H1F290u1a2OcNF9b8tx6JoI3fVogtaNXLJe3CkH\nubKeIyV3gfkyIQbzmkTJsJAToW9PJeC30sFVf3W6xWem51Q110z5AfcmENyn\np8sk4RlREKJ25IqW7RMegNNZ3FeJ4353htd7Bv92UGUATOraHLo22Vs3Adwp\nIunCVE2baChp86w/Dm5xTkvkcmRiJhNYfpriavMOK/e7qb1dfKizIplPlosY\nkCf+\r\n=jN1y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a8a1fbe3e9a2ef2a49af5f8aefef574851e91511","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.63","@balena/jellyfish-sync":"^6.0.117","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.97"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.119-renovate-non-major-a8a1fbe3e9a2ef2a49af5f8aefef574851e91511_1620110654760_0.19305168378879678","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.119":{"name":"@balena/jellyfish-test-harness","version":"2.0.119","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.119","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a43e3a7e878f2ce42b236ec12e98786427f83a5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.119.tgz","fileCount":24,"integrity":"sha512-fe3IMl4Aa3WHPiRLKk34OzfQPPPER0n4G3m/M3gI5ulaaBIzwkqtNJUlVwfxfLIaQLkNe2hPl2rxgcexbQHZ5w==","signatures":[{"sig":"MEUCIQC6yGLMBPHtrrvnpRB9Lc7DLcxgtHX8Jy9HabCDOn1ItAIgVj24z/9FOMWM1AtywutNp5bkoMYZsvWEsWHn1+5n7DU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93050,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkO4fCRA9TVsSAnZWagAA/LwP/1f3j68W8ZQUoCS3vJjK\np5gJMrFP4HlSc6zOGtt+QMZfe64DbqEE+Ad9LE1hVPmB7NhokLIalV7yiTtA\n+zrijD3osr2sMPTVc6vmYvKe4DuHoxm46a4xUTzxcWmK3WfWntD64xLWz7Hw\nq4wYWLYghe/vmsiiMtJyZqfY7YaXHmTVnRnbVpwnL1BF7gjvW2C3SbBdMpve\nEhqQu0z4XQ5OzAROJS2x6qSf1v8HX9avhenafVMbOGoH6GtrJoBXO53QOmiV\nGOEWQXHdRRtgjsdXxhnamUlxBVS23PXjJSj5o6M9zQh4aTFUUzuZDuRY3eOJ\nJtMzUem+AgnpsGU9ikrB51z6DiI8Ee2gDsuEA9nqxaIPs8a3F0UJYhpMpkCC\nRCHP8ah41g+fFqYcCbtaOV6MpkHH+FJAZJTnR9iVH5nxYY5yoMA9lFEPM/K4\nkGsJf/wEkSVNuiw9gftiYuzyKPb4Y/sBVhrM6BuHthHRgLkoZ57OBBrgwRcM\npu2gGZawJREQR6ua1ebO94GqrRwVLSTSb4tOOPvxD/GSCDyuFYse6rWRFzr/\ndXwuwd/4o3/HCpwlQb9hUyX7ocZ55vvPwd6mDu/NRmdjL9NMZTZNKHGXQXFv\nrx/1bZRWn1+YvonufRebSF5TG7D2MfpKeNeuSoFQ/1xywtOhk2dnewhWV29Q\n2u8N\r\n=Mcn+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a3dca93a016d82085df259fe51ef5eb1b01cf600","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.63","@balena/jellyfish-sync":"^6.0.117","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.62"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.97"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.119_1620110879322_0.97628907420486","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.120-renovate-non-major-2f06a56e676fdf4703fe9e96adeb079c9f3457e9":{"name":"@balena/jellyfish-test-harness","version":"2.0.120-renovate-non-major-2f06a56e676fdf4703fe9e96adeb079c9f3457e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.120-renovate-non-major-2f06a56e676fdf4703fe9e96adeb079c9f3457e9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c346c224b4d425dc5b3b8c0b13d0f6e742c46e62","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.120-renovate-non-major-2f06a56e676fdf4703fe9e96adeb079c9f3457e9.tgz","fileCount":24,"integrity":"sha512-gXm9iAXgn2Ogy++NzYOtCHGkB5PLAgYo5WjNfF5d9/SFuDdJeLXEQziBlpPNT4+Vy9q3jFC4iQUDDQcQV6ZyiA==","signatures":[{"sig":"MEUCIFpRl9DCEmUADJdaXIeH1mcaQ66PVIY1RXZHRIanDcQOAiEAk8RIxx+yzjEeHb8hZ6h5Eppq/0e6dSwx+BkcGS1+THU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93180,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkQBnCRA9TVsSAnZWagAAHRAP/1dNvPKNKGa2GJ9xviMt\nJyrBQ/LsLHsxPQdUsoPuioWBykzF8SrLXwXZlZQt9103vcpB84P1cGqhsrOV\nV4H9SciBXt3w78EYOsE0wSclryW3JMBQiI6+yr+n1MT6P8DDOSwqCOsVQrvg\nJYokafmIILQ3nvhxFiGXVoJHyxdr9UWp9YMS5w41UMixyl3R95ZB0ApKat18\nfwPXez5r2/4gYQ2KnaBtG5epONdb3rDOichaopQPKbhMVQE1PHmu9No/LoB2\nFhFln+eQqUjbgZGaFj8gxA6rIQulQ+Ns9BO6K3VKvgxaISVgwamhfLSD1FXK\nQXZwYCPc/p3NvkjTuMYyFPPzAL8ucpPIH9FqXy+v5v7H5TKSkmixJCQK9RvE\nShQIETQV9CiwhCiAMTPwri2RC23YgOX2/sO+JdqE+k6x7bnmH9+4+/ltcyf9\nl5WXRTfaIdwrre6q0LjoaESrQzr2E6QU58VCrFYe8xmA4GFAcBU5vY1gupBF\n9Z6NGM2nzfMDgkdFMtHcvoP4C5qa09MX6euEQIyUAiPe93Gri4Six+wrka2r\n1fin5Fv+BNEc1BZKSGtcBw/geXfOc0YKj4qT9xltNeMM0XzWaQbpmNC9B1u5\nZFtgORK06lIAHVIZ0sU7DnFh4F6LuFWQhGpx8caPyhWGjnE3T3jPPt2rom87\noUDc\r\n=gUD2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2f06a56e676fdf4703fe9e96adeb079c9f3457e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.65","@balena/jellyfish-sync":"^6.0.118","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.98"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.120-renovate-non-major-2f06a56e676fdf4703fe9e96adeb079c9f3457e9_1620115558880_0.36868120271251326","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.120":{"name":"@balena/jellyfish-test-harness","version":"2.0.120","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.120","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ece8de10736956a317274c0fda0fe0396f188db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.120.tgz","fileCount":24,"integrity":"sha512-RZXDIex8hnwknFVSsavIE/0r2IW4F4XvPQLnx3JJuaiXhMB1lXlcjaGonFi3lJQrvOwcSWVQXCxxepjVUZfPlw==","signatures":[{"sig":"MEQCIGCENq6W3Di77LDY3Q593mfDn4eWYY+BHbBK7h4DSa0KAiBLVM+dTkxFjCvKqDNfEVrExi/uK5v9rAjVgszGqZZY/g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkQE2CRA9TVsSAnZWagAAAUYP/02gPDTp0dYywD4A/z18\n2lKHcALgKLcsUBeoQzISV68hj0Qp24AYC22UWcwXK2Hj5tawlKY10lDS43H9\nh5/QQikVOeF7KKyef9KqRnMwnYYRKdTXCe37i3n8bAvAhQ4AsVZwOm4jla2d\n9Hc1WQiBgQAAMPgzUxm6vV8ojHc99L6igPPalwqeUMNWTLZ4U/zQKuqbwYRZ\n3suxcC3hLmkH4ywHOnfHPk/6ydvwdgeqcGoEAvx1E53wJUbUr9TA+Zo0WXZu\nYJAuSlSiCUgR7mAO4DTju8HsTqaR7FlVA0d/21ucnISJ35PbiF7DCzKw7EfM\nTyK/13g/XejnYUrtczZl88z/Qr94B7nuXPzX+rO7Ri5LTHuqu6kV1RphYOlk\nLh5VQxAuktUpddOX1+/KzDLhCs8t6/4Wy6wXNxIPaYv1RRg3dA6MXTj4n3Is\nytVHSW8WzwbKsfMHKn75uJN9bklf/Rzbb5+5p2MNGlc28TqTFDV/wnlRShNT\nDTp0hCCIHDiZ3eP0BLibmMi5mGb6KTDRZH7gMC6L2JUMGnMltxu6OoItFef8\n3/QAa5SGwvix2YI0gMrnsqUzeQaHEen34ykPBN9V+z+rKzUIhU18prk6oNHl\nG8F2di0y8IPh6ezh3/HkDsohqKKGAm0VlWXzLqvs8M+WgjuMHwIb6ZnShzK7\nTE5u\r\n=4v9h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fe1ede5d60a5b612b8250554ccdd60f4c6d5e6f4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.65","@balena/jellyfish-sync":"^6.0.118","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.62"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.98"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.120_1620115765993_0.5414234637518682","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.121-renovate-non-major-49df384897c8406cfb2eec40bb235356de78d98f":{"name":"@balena/jellyfish-test-harness","version":"2.0.121-renovate-non-major-49df384897c8406cfb2eec40bb235356de78d98f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.121-renovate-non-major-49df384897c8406cfb2eec40bb235356de78d98f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6db92410c6d4f09d22f18aafe87c858df5343756","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.121-renovate-non-major-49df384897c8406cfb2eec40bb235356de78d98f.tgz","fileCount":24,"integrity":"sha512-Fr+yoZapjmyeWKMrg/PH4y3ccnI01haYDJV9bT7v0rqezOvNhnesUKmLPsCR+WMxJkvBEIJq6yJqCxDjCHW1Iw==","signatures":[{"sig":"MEQCICMqNBZ4qFadCsVIFfIrvlJpRV5M1bHr8y1UimAqPxdIAiBrhUbhhZ7IFIkqCGoVWSx38ItKKMWg5LXETW+cpAU1GA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93286,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkQLLCRA9TVsSAnZWagAATgwP/2gI5B9n/c8JKAQMvstG\nW5e64A9mEdpIvoVSwAnEwJR0DAWM6VKrSm4p/4znyv9td3H2nAOC8A06krgB\nGNuGrPOv9bgWXtxKSHstqBVZgMbcegMoZm10eGpTNQmjU4e85CwUf4zmGNH5\nDkUwtUDPhO3NQi27eoSymKQgnE9bXkwMs1uUF3Em8hKkjiUcTYGqQpF2MMCh\nIP437j1j5sDCQUg/J8VOgjdCiCMIc1EiRhyCCj3qnjWu7TCDQlHBJMPoFGzF\ndrQq6Wy6QMgVw8eg8QdhKcX1aF8G9TYMruHJT0hfUHUd53hRLA1DjWMzrTF8\nJmpZxNOEvx02hAqoqAPl+Zt/9IfOsuZViUK5+8o43f9vpNwM8D11+yStl0iL\npvH4t7lf63P9RBaJZK+EkfNnVEUtyRXEU5P06XCSIBH3mOpiAPdBtEXTLONO\nA+GBqQyogKXsSCTJkJD9wGXGvgCdzcu2SSS7zSb1cIVH6MMXDodm768yv0FR\nopyz/KVGyP+3qvPOV28Cp51JqvEsyBCwYsYpeBYXlEFusQewlX15vEUvyz9q\n/6D34iSMyRCw631nr0IByo8WJROnK60urdk/NTRyQN09KvK7DpS+8VO+J38X\ngsivusMPBjEBoYL01cxbV/bPnkcAL9EiaHQuueVY1xWhF+rRlElnU5uUhaYH\nA9m8\r\n=g/t0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"49df384897c8406cfb2eec40bb235356de78d98f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.65","@balena/jellyfish-sync":"^6.0.118","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.62"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.99"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.121-renovate-non-major-49df384897c8406cfb2eec40bb235356de78d98f_1620116170949_0.7357487794923401","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.121":{"name":"@balena/jellyfish-test-harness","version":"2.0.121","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.121","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96f9132a7c06cccf34f240914f20838fbe3196c3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.121.tgz","fileCount":24,"integrity":"sha512-+/jxzJAke8Ob9q40baOkaBkkm4MffP4DBbkIDRA0tSNsCuTmTe1D3wQ3GD8vuOZUFdo7ntr4Sg5EDvof7zr2BA==","signatures":[{"sig":"MEYCIQC5QrGwVxlKOPVpDCY+1HwPbcd6J2yJQEJKmM0iftfRewIhAOS+C+YZtO0m7mU9hL/GoRABb046EjTE1GLmqDHbE46Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkQOqCRA9TVsSAnZWagAA1kIP/3CEsWNvo2gOh1FcRZZi\nMqRCbpvzEniXOMUtMGMa+xEnqTICxfBetStN5EIZW6F9/wGPj4k97M7uHCyX\nCvDUE3/M5UXEVO9tNDJiKxweVBTTQnEeRtv92eNfRRAWkxlB4p7gvvFsI9Xl\nkWtIrwMTmQvMnIeLI1vZ/QHsvUhnVTddjISYElBnSyxmnFLxatzeTy552iis\nIoE3cie1O7JgNPXQTOKV9vhNKZftS9mySroeRj/Mh/D72MVE6YM049uXLuqx\nLoS88xL11T7RWckGg+7H1xM+SL9aT3wn8KtIwlPGJ9tADZW81wtpdc9gthnt\n6JhGY/Cqk5WvsNbIgLbawRiNc8vU0RGHNg1FaDivVW6gd8FhvzmRQmwwdibO\n6cVtnsJjOtd+Edahif4+GGe/OZNok/aBkpnpMyw3MNWuZ3o4b4nJc4rYIQdH\nOstRHNjWO72xgTrtYZiWDP7SPft+tpeE84Hs104vapipl/KRyHEJjy3EIw5G\nDlTjcOTQqSiLtqssqnswtRoyPOJMT8qt8XKFKTkYQg2TNX8EUS92014nU4Ej\nGXb8SSoZyHNOy63vSP0tKRvsezjm6P0d8z6K4T42eV3nfv80ZnMi7GNlSVfg\ndcDIIBFFEUERXdxcOgFWnTNbx1vhUqvXw+h1IFK3UuRWG3/oXwJ3p0Q2MtZw\nKsHK\r\n=gem5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7feeabd6ea20c0f02cc09fa6e6f49bcb3dbeb187","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.65","@balena/jellyfish-sync":"^6.0.118","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.62"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.99"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.121_1620116394086_0.14785680600122664","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.122-renovate-non-major-9782dbc41811351a9ad3a0bc658c28c0ccfec17b":{"name":"@balena/jellyfish-test-harness","version":"2.0.122-renovate-non-major-9782dbc41811351a9ad3a0bc658c28c0ccfec17b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.122-renovate-non-major-9782dbc41811351a9ad3a0bc658c28c0ccfec17b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bcfa7f5bd901a7f63f25e0cda3df14037895debe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.122-renovate-non-major-9782dbc41811351a9ad3a0bc658c28c0ccfec17b.tgz","fileCount":24,"integrity":"sha512-6Z/C9AmMaUR9cHn0rksJjcMfJjYJGH8pAGm/IyFMUYepckX/uofjT5z49TVoCSarBPAKJdGF70TwlLB998BmYg==","signatures":[{"sig":"MEUCICCSwrtyV3CRhF9FoMftI+mc4b8LtIf7BZY8eChcjHvEAiEA29fGJG2aJWhyGuUyhgikMA53Kil8z9ZQ2KG2X3sgsXY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93357,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkRZxCRA9TVsSAnZWagAA/HsQAJNEtaJLJvpI+rXMefpu\nRfQ681Js1d6vl1QzqebEHq2daGFrxHXlG7lhIobG6MNe8LYhkmgzI4AnUJB0\nl6ilfAN1R9obj1FmLSgGahRi1ARN4WZn0ll2602S6pialFibfENlGAlpJrO3\n/8H4Tw/v0NrNxcaBs4293w9QooL8mrv3KVngM/5ixh3HCFVb67RFh9T1Gi3h\nfQ3xMlCCJk6RAWqqMMzZ10Q0xPu4rSGBSEF1HvkVnUJU6rz2p+DzVKFFioVU\nB8B82XGe70mmoH285UMdBBQNxFEY8RyamYvsV1IeZPJGqKYgkRPWF+YLnvAE\n4FBwugTvmQruogIqPp/o2duusU2bA/hImCxakFdYw0UWZpsIay2C44U3qii+\nbnYMZlZ408NLAjCy6haXZKaGMe6+DQmeqriaDuHQUU4YXe7r7kFDH8O7bO+m\nLVvBtirHXAjE9nv2m8BRu7CjMk4w1vo5HCxm7iIBk7h2jQ1hna7HWGjWWkPy\nY2adiO9OtUS44g3STOsyRkvWx1NxTOUUfJk2GJ+FI0Mnqa7hlw8GD6ujceFM\ndiMJ6ZU3pWnftt6ANMSv5yCX+usyV2Wm7CAon6h+yb25PdwwVpuQ8p05wX/j\nkn7lP8E3ydKiCBjGmsJNRJZLuwPkDr19EZT5a8k8ifDvuyRx4AkQ57eH6T/L\neUec\r\n=Uznn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9782dbc41811351a9ad3a0bc658c28c0ccfec17b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.65","@balena/jellyfish-sync":"^6.0.120","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.63"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.100"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.122-renovate-non-major-9782dbc41811351a9ad3a0bc658c28c0ccfec17b_1620121200866_0.47861428751941015","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.122":{"name":"@balena/jellyfish-test-harness","version":"2.0.122","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.122","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15aca2d4da9ac802d7b0c1913c7db835042a24f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.122.tgz","fileCount":24,"integrity":"sha512-hC6tZ8vYsHD6E1vqPbkY8xtZSma8FUZ8JPwrljnhv5Xo66jy0+WQf/S4rVgpU1YZw6J+3t0VzV1Jin2/LlZKBg==","signatures":[{"sig":"MEUCIQCxV43qNHEeQ/WxiHEftoteMavE4GGM63PagL/QoTVrWgIgfU6nsX45HuNN7B6WbKstuNKoSacYR36sYMwFw6rdyNE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93297,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkRdCCRA9TVsSAnZWagAAq7gP/2G42bqIxOO6we0Y7TVI\ncJpS9VZ9A1GbRCSvyWG+4hdZ2tYYqN5wzUAEcxCJj33PBN+N4e86HVlkX6fL\nUfuNmSKnVcRfvaxMPxdQmK7u7zB6YypuLHre5aasa/5koo07QIlKpg+RWf/+\nA3SCqtsjGFMtYW5/wX56VnWQD/8u75IsRZkHCPDtOScM0xS9fHHObWg4GmYn\nhUB8zRFSfvB/cYK5uPiyOyKChpKWn+wAae9ZTN1j7FXEI2KKcWVaOJ8r5u0I\nsMqYw0kYBCfLvYw0VmvX0P3xKpeYFlFM1x64CUMoPuo8ESq9v/xXRlGSedT0\nTaw9bov6xHylFJqE0dhGMtcHnPi75e7JG53BP7RYrR+sFgUxWsoVDFpThiYQ\n5JMerr3HtReEmuGHustsFV05dJAzGSQUGSJj9e2rK/7tPUTwk28JXqpQPClu\n4jP2+ZGZ3Q5T+B6JOkS8a35T0lEyzV54JAnEAb7ry0tcXhGjfYSwCNl6f6De\nMpxbUudjGwzKLMBrbk0L+Hg8TVDm6Ez/CZ1thb2MExuObiuqdo0dE7az7ml/\nLdDsE6FG9f/6Z3v6xXJbqLaRXJdBq8ClYXFVIG4P8v4oRA7DXOA1ffZQMtQy\nsOA6hUX4od1wk1VK4mqp1uGZwfHjBe/XK0aOxQSrXaUoBQWWqiMGqg5RHDgd\nVp0D\r\n=Cyju\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0537a41ba04419b5c9d4fc4b8b71e90a754f74af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.65","@balena/jellyfish-sync":"^6.0.120","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.63"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.100"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.122_1620121409876_0.43839486340847866","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.123-renovate-non-major-0d6a68c4dc38086a429fbeababf321cc57009116":{"name":"@balena/jellyfish-test-harness","version":"2.0.123-renovate-non-major-0d6a68c4dc38086a429fbeababf321cc57009116","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.123-renovate-non-major-0d6a68c4dc38086a429fbeababf321cc57009116","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9fb8b55636e7560ddc57c685e9a5d3ca82d1476","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.123-renovate-non-major-0d6a68c4dc38086a429fbeababf321cc57009116.tgz","fileCount":24,"integrity":"sha512-rimhsE+J0kIfyVQIUikdLfi8h5s03jXI4sUberUaRZSFkiAUVmD1EHHeIoYGW2pvQYk2ZE4U7ita6NsX2N4FUg==","signatures":[{"sig":"MEUCIQCNTIMO83pOP2p5MmVDqlIN0a0hfUX/CWKXzrHPC8DkgQIgVIUnXFvgp2/mAfT2jc1QXazGV9j9Xai7p5eHavdgg1I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93427,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkSF4CRA9TVsSAnZWagAA8X8P/i00/6abylzCcVt5YRgN\nAFQS4NmKUO4FCOXWJdAWeT6lkBLVHnrg6m879FGrq3s9E1CnspFUEi3Hh+xd\nbTC05vjxNvW3g8c7TYSU9Yn7WeBkS2Acol4agTSiiWvnhclGnOnlYnWbjz1U\nKx1zYQHOFI4MEtRYoLFxKHQxwMyS9kisaSiy8ssW75p9s4RQy/CgmS4Hhlem\n3ED6pyj0AcgDkA5mAciSz66KD+IffDAZU6sZ0aojBxONJYP9dMq3saFxV87f\nk44TyFXxC8dfDitw+EjCL4ItZFh59lBGUqYvUW8ZlJkG4tK1L9u5J5chNneB\nLck9wBaWV+J7Ks/im44Wq5ssvQS7SloQRG08jPlxLJASQZBefX1IqQJhAo+3\nbPsKPB9fdsogNa1LXvF3FgB452tmKuj50khlSd7i3B5eE/4uzEqe51PEHYDi\nNoTgP/UZ59STTrHDf9h+eOtC8nnMkFJ4lB4wVZkgBkSusZdcUhtAZFg8nPf3\n+I8G2rFJ62NdxYiPK4NWzzglCXgF54FajVjoFpH6tMx2fcZg1OqJhJKKkeZb\nLmNXKZ3Jp8ikvW1Bwc5a/U7yuy8oMCSwTF7B3kYTCrKMKovpsrAa1+FZdDqn\n5TShfFJ2WPlaOntfLDy+0qFz8ci95QvqAQkoA2Q+vRhifup69g2PXlVL3l0E\nwpZv\r\n=xkWf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0d6a68c4dc38086a429fbeababf321cc57009116","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.120","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.64"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.101"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.123-renovate-non-major-0d6a68c4dc38086a429fbeababf321cc57009116_1620124024353_0.16539113324755905","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.123":{"name":"@balena/jellyfish-test-harness","version":"2.0.123","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.123","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a97a874bd3abd2c128700bdee5b4e35e5a712880","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.123.tgz","fileCount":24,"integrity":"sha512-jeVezrf1DxR1s+JoFdGlW0Ao1mJ/fXbv45kFXzqH5OSZwxVplr2XBCdDd6uPEcnqSb6w5NBxyhZnM9vqYLnwrw==","signatures":[{"sig":"MEYCIQCnR2JnENcQjcCBRlFe7wfZArH6RmLpDHooCN+4lUMNWAIhAJbcCNn9enYzd+PTN8It4axvdrfXtUEgxiISLgsOEFV3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkSJaCRA9TVsSAnZWagAAIUEP/1DI85JB+avSRHld58Tb\n7+MdRAMPeH5oPPkEpRJ/vx9aUaZXf+diHksrsgrPx5spNCPSwNF0mfbDzLvA\n5/JnhkX6ghiCEqNQhgm6aObtWwj6mnjwj3FztZBS6LqZ+q6wdRnGhR6aPqgn\nioAWI+5mVdp8GspxINJDT1e1gSpnbLHcK66nxjXBgkrr2W9+843a4GW7xEWk\naoN6GaACkOBRtnQliEZr5h41I4O+vUANWbLZv+mmbN6rDhfDB1CUTFGCOaZT\npy0gXBOu/a6MKgPsfp8dABmfXzYfOQ9DzIA925njdDOWFa74Q1ZVHmsylaXm\nqg78Sh7RSXhVDIv0bvm5L6F8FYkzBujFMIJ6hU3JspxxAH95L6E0AuUW3leG\nLsC+fhuoyFztbuc7cff/zjjBkLiL1a8AaB48jj2XNbeVgoneSz0YbebA9Yzf\nNUCzuWSFkKLH+xstcpkj/DRpwdYVbzTOk/3g687/j4xgJsc1nC3l26k5eMhT\nUOPJ/Ga9ixBbBrkKXPOLkLuzoRIbKl2iVSXPcVistBHRWlXRvrmGy5wQ+cUH\nT9dLj1b5qHB4k9Kev65EFSuFKxxusOHStHmoyL0JOLdHP0hu6TTyKGJkDMXd\nF5kEsyaXmm8a/GTaEgXShWQFEUc/pSGCtfjmw9ULA9/KtkSBMaxlxov96n1Z\nsoJa\r\n=9C8m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"63eeaba954ebe2bbf95617d6b83244e5522daff0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.120","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.1.73","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.64"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.101"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.123_1620124249704_0.11622721617447707","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.124-renovate-non-major-dee2bd94bc48befb03fc235d77391b90f6860015":{"name":"@balena/jellyfish-test-harness","version":"2.0.124-renovate-non-major-dee2bd94bc48befb03fc235d77391b90f6860015","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.124-renovate-non-major-dee2bd94bc48befb03fc235d77391b90f6860015","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"86b04b3eb5f3891e22f1ed73b0a808652c5883d8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.124-renovate-non-major-dee2bd94bc48befb03fc235d77391b90f6860015.tgz","fileCount":24,"integrity":"sha512-HyyZ8SQ7VnpBw1RvOOUZsVJb00pvuNCp8B8CezuX3lCNYencUvFkRUeyDgc7HKyv5JXWb5BUpINnEBIw/mlHnw==","signatures":[{"sig":"MEUCIC7s/+JMbJrE3thFBM+hz4/TXvh4fIjj1wkS6usjCseYAiEA/Zuj7+WUYte7uWJuvto+iXglS7yw7clInps6pRQulh0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93496,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkThwCRA9TVsSAnZWagAAuHkP/3fQ2LHkuuGAHKdYWt3P\nrugP/j+CrqLBciT7FXvp+VD9cibMa2VhMrVsnzsIEwGO7nh3LKh2cfhgtS8j\nnMFJuWRAUG3qHGp7PjRFJ2RqYP8aqNUwbA+q2ODLCqIQJPemtT8+/xEs4bI0\nodwsjQn6sSIZUK720W+8343KEQq6Jw27Bi3negXg3bUBKKTfg5ZE5oWS73Xc\nnXHnf/q1VmT+WUD7kV9E9773oW+/zKzC1ENdENTStJJjbqong1YDetwD1TmP\nEfkG4lNlLHn+4CK8WHozLsPD5P5NPHhOS8gB5OLV6AVoGYSuejmuAyxgYjZ1\n36c1oczs5IdZnspSNnCDP1ev6akjwgHrSTAtlCNNHNctrMd2pGyxvfUvKVpP\n48KC4pDKYa3oPKk8/AHsouXF2AuV4g1yoHu0db5zJ/f+UsIXS72p6wvHltsy\nxOoPhUss/UdhSUzCbylaN1QFzvnv6ymiOs6OrymgnLPKO5QqvLw/U+zTdqnS\nb/bdt/6f8yNVNk/2TkyCBF6X32oIpgjTIV0u5simvebcTO5/grHciPMcqgEA\nwtkSHAKoc1IxnHFDZyWEjBGwUKzx7SQwFPTo3MfEpPYUjwuLnJY6xjEuroGu\n6RoCYsrORB6WuU74Zkfb6KcD+/D6c/sNpNMkW6mGms9ONzlE9Vt3T0nCIVVp\nhLNn\r\n=LVCM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dee2bd94bc48befb03fc235d77391b90f6860015","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.121","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.65"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.102"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.124-renovate-non-major-dee2bd94bc48befb03fc235d77391b90f6860015_1620129903787_0.4222090262096063","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.124":{"name":"@balena/jellyfish-test-harness","version":"2.0.124","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.124","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2e3533686b8fb91acbb2bb712283cd68914284f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.124.tgz","fileCount":24,"integrity":"sha512-KGKT0IqMU50UE5sRZehCyUHuOi+WGg8WCx+3Al9vS/yd50NQQ7r2RaqmLI7ZgMWKPFZSJvqnxDW4tOrY4lElqw==","signatures":[{"sig":"MEUCIDliWVkGGOQVw54rM80piBtFfb8ZQ1Qg3khyzk4TxGeUAiEAlofYxs+0OcGWGOWyprXREJu7vkZB96ZY629yM7zd1rM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93436,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkTlCCRA9TVsSAnZWagAAK5kP+gONIH0oYO1yHkyEeAdL\nc3Odgao+1vc2B5Bnr822bTP2hId9/p2U3noJoUCWWSbf/JbYIsGr4VaepRYP\nCuu1xCk+4hM0K5VqIMlOaQki9DQ4hbDG1aOxm+C0yxJ9wJ9vgOLI9bkmpXSH\n/6qBYeC1d6qmo66eOYzNktFrWRd9Y+OgPMuwZIsGRxXryoCUrgieEup7vBYE\ncvUN2jqlJcrt5aKlUNsnvWYIsetUSWJYdx9qDdtKdwLSddAfmvC2l6T569SO\n/JYZykg2uLmHCnAHm3U2SKeeZqRquKLM60XbFw2/LjezVWdpdjtlnnjQskXz\nIV74BA9KMl1pR6BwKSKtuv9UxIyDcEqAORtqYrI/iVLpnJfuSauaXiiAhpY8\nG9mKjrGA9QQd8xz/PN9AwRIw8Lded/yUxbzjci6okj3dTi/spcrULEu1HFtB\n9FAUa9PCswLfQ/vp5XX6A1vF+GpFdw7UQ4vNUdpmmYUjFWVBNaDDf52WPvnq\nSOuQQQ68gQf5I6FsD4ArpZPS9h+FOC/HPBl4Kwf+yDn0Td6hxtj+7bFAN647\n3X+0pylarrnQ7snN1Px5nVmtmVC+CciqkoLNckBLzhKvwVSQjQl0Zug0bqox\nOW+KWzjdgLScF+mz2ndazCdbP82KW10CBtNJIOtIrWQSNCbolKYbOe9PGtUt\n571x\r\n=qJ3Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"beaeed2cf974b29640ef3c6c20b164197a60641d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.121","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.65"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.102"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.124_1620130114387_0.949652731892302","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.125-renovate-non-major-c966a4e3b7090d61f5a13d88269f45d28523b388":{"name":"@balena/jellyfish-test-harness","version":"2.0.125-renovate-non-major-c966a4e3b7090d61f5a13d88269f45d28523b388","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.125-renovate-non-major-c966a4e3b7090d61f5a13d88269f45d28523b388","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0bcf9005ec3dbd7d5b951e6ed17ced7e9aafaa4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.125-renovate-non-major-c966a4e3b7090d61f5a13d88269f45d28523b388.tgz","fileCount":24,"integrity":"sha512-gYjjeka3xp/uRklNxbJaZXxB8tJoraaxBE+wb9A+MBCIqnhZOI07sWA1cWFGMgCsEsiNwaI6AhBUtOILAVkYLg==","signatures":[{"sig":"MEQCIHz9KAeyVtxTHBLXjASTc+crgxQbMLrNLyrSifCOg5bwAiAlkOKzsxt64ldJHleyHQpMg7Cy2TwbMFFtLp/RZpv4KQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93566,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkUpmCRA9TVsSAnZWagAAVzMP/i0K+1wo+YnR1zVdoiwc\n0r4OU4MxirHgpm55Ff586U5WQhkzLtH9lAQnxL6TYP52Zteoev6sMREkQcCH\n3IrFC+J9p7vkMjg4UZzPvifI7/jTAUqyYaNYG0qfRQ2MdDOpT31yNCd/Y/Zz\ntF5veWwfQGPYCwjAesJC2GiPe4FN/O0SvPBYi5VXewDgpcFwrn0LjAmBQ3Xj\nkLIbJlPfMlhgindfs3xOQcegeSDNUFJh//7TSqON3NKgWHogzNB4noQbM2lH\n+2oWXjNJZW38A9yz8TWKeMOucZQvSNB5apJJ70FYp+Aa6rxABHfIj/2rRx1U\nsCEmp8qlL0ydP5D9G7TyYZOtlt3A9cq3NCPhF5vZK9tAyE7K4acpHOqajG+m\n0R9aNEn65/vY3ZU0EoXu2ykxdDc0lmb3zc3qef10mChJlAjDjXe2MzHWfWAi\ngsY24jBshQ+z3a/ztkvXGVOpxean+XIbVQYIVQ3eSLlY8kUqQ5AIkF13rt6w\nWYY7IcJvKI9M6kRFgjY/u01cOyuiL/8930D3Mbn7bD3RWF1NEU3y1+gjeIcp\nQkMNfAQIt4m6fe6hneCa0ExK/g69SS+60aEuaLOMp6zawkpw5LgE22z1ig+g\nXpVeI+FC6sZ0MI2iVBiB/1aXhV9OD4fQEEJOqMqlYqV7ESengzPrpQFfpMMi\nMYEk\r\n=wu3c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c966a4e3b7090d61f5a13d88269f45d28523b388","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.122","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.65"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.103"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.125-renovate-non-major-c966a4e3b7090d61f5a13d88269f45d28523b388_1620134501623_0.8782210329044728","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.125":{"name":"@balena/jellyfish-test-harness","version":"2.0.125","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.125","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88a1bfd83d6fc2ea6a76f4d9e320c7faea4d33fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.125.tgz","fileCount":24,"integrity":"sha512-i7uVx8GPNNCE2nlBE6AJLuidGVGKMDWeY54ISBtNw5YMwjoXvPidEbr/mfJm4iysP3vqfRF7q79maw9i44KpTg==","signatures":[{"sig":"MEYCIQDmhq8BH7uQxjKPVCS3jrdKAoF1QjzR8pqaHZBKeuYd0QIhAPwVuph9EUtsxJ27CoUTQyAD4CSQiJupHzsvC5TLtgCF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkUs+CRA9TVsSAnZWagAAXosP/jihdzDRo3hlAg4QAPP/\nX7Vgc8fk+l8nAYFR68nXoQKMRLPIVDh6ERHayhZU9IfKL+CR+yQ+tdgTc1N6\n0IeazneYaMfW/5LN/BdTpzCctXDNOTLYl0l8nt4TzFBaGFFEgnILeYJuComZ\nYBlVSuqR5KzEwD+s76p+DyoImxy5EoO1nZfpHuSTRhWkWyNcgvjkFsGAQ74l\nsPDe/NUPwl1us/GG/RzsKU7l+zi0Gl+u03XZvbpsvf+GDkYbemHiwjGHe754\nbYK8OwrKNx0qhSMfXGGuArCR+1p0iI2CnH7NI+L1UR8Ee9qGBAVHczpIikx8\n5OYrbOpuiBCaWyiTLeGeUXRUpDJuL62fX1flbBwrP9DMEjggzyFR7pOPBdF3\ndZjl3tgD7uH5C/aygKluzUZjx32SKJWxRtfWK7OnjF1DEjxHwXl9uQbwz0w1\npc3alt8iqj+rzVIKffGtORfgKtqBStLDQR7nZUTa6bG0EAwL1w+7y/KUJV9C\nO9oezpzOscTXOLWivLNqxo41owCmgczvCyCYR5vIgTXFyZgzdqLsMAvpyRfH\nkhmDJwcM4r0YqyFQNbuBgxVvLnZGR7EnpwuZjb5YRfMac6V/Xz0RJyrwtxDM\ndaHpnxmSK+paRNktoVYMgkiFE1z1OdJiRFyAufHd6dEsYSihJoZb49kw0rCO\nQVGQ\r\n=u3IN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ac81dce3ea7e90ac2ddf4551e44f00f90528b162","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.122","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.65"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.103"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.125_1620134717602_0.1313046541676952","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.126-renovate-non-major-b0f28cc33f43ae8f758f97c258bd2e3023beba13":{"name":"@balena/jellyfish-test-harness","version":"2.0.126-renovate-non-major-b0f28cc33f43ae8f758f97c258bd2e3023beba13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.126-renovate-non-major-b0f28cc33f43ae8f758f97c258bd2e3023beba13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"374844718aa04a95dabcb90996021d0968213982","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.126-renovate-non-major-b0f28cc33f43ae8f758f97c258bd2e3023beba13.tgz","fileCount":24,"integrity":"sha512-ppWUYqPmZ3ULytON8Y0Bcg2XEQJh9BkZbX6WNyZOR1X9blomqYwvwSUuMrIP7tSfgzIEf0LGQqXds67ZnuBQuA==","signatures":[{"sig":"MEQCICJxq7IsCNWtWCgJK/Y7CgNrSOQp63iA6mNnuKqL8eTmAiAYnahAdToDXmwcDVBDCnClVn21HWKwG0smMBg6r52M5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93636,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkWRWCRA9TVsSAnZWagAAaRcP/2qg3eZ/anK5yMIQSKez\niBGLr+FsPAwW2NbSc2M5hj7Nyw3rGCQX5w/xnqB/JVb01h5ZFA7PbSBWtpSL\nHyYf4tmHfNBcC72TFfCdWTYwcheYx/mSY9DWGIg3x3p+QMO6lzPxeoXsswo8\nTOC4h/si7cd85z3w9tcEDc/6WHDRI30N2maCE81UW2fc87sXPRjkTeR43aj4\n2sjzGezx8k0XSERCggatHEspPJ3C723Px9Z7/FH0YwpYtwUk8cpWZG6OKWQk\nkvmRbrnJ3M7CYIuw2gNXJuwShC2G9c3QeqP0gYyh3csEtrz3KR+HvIokM5Zy\n4qwUm6aUDvul7EDXyi0h94FWx+JsMPKyqI0vGD3FPKiZgkg2ZFgur/T4+J+J\nSq5avXcdi2yw7F7UQ4mGt2BSLpK2/WVjZl7PrAFf+bTkRRpageWRr+OO7B4Z\nJR4GZzy3Q3+HQUWFf/wTp6z2W+WMcyOCxAwGwA9MaT2TJoPLLYz+kcjWV+5q\nU979WrCctB1Wbg+6kqLryl3uoO1tIaOePrQ3Lw1SEVATp4wFp71AWlxiF0kp\nza93l9IRaDoEFOlN5jVlnue0MGO5XC8F5RBf6NUejC4Jq2BvL6lgaZbMjhzn\nW6aCyE9dgWzYv36lvVTQhr0MMV80FJjgDxwIM/wE9Pl9+8oKPWOSzRrAdmPV\nRr/p\r\n=RTUN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b0f28cc33f43ae8f758f97c258bd2e3023beba13","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.122","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.67"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.104"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.126-renovate-non-major-b0f28cc33f43ae8f758f97c258bd2e3023beba13_1620141142106_0.5201204257709728","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.126":{"name":"@balena/jellyfish-test-harness","version":"2.0.126","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.126","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"48ac9d6d018e0c30911740893a97501ef87d8dad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.126.tgz","fileCount":24,"integrity":"sha512-f7A1ZZ5rWkWvMSYJm5kW3BhOnpNyQq0nrYvU941cvHRXRpMLoGZEiDpmuVbtaqZWzJ+vsDKq2KEza5UA/FtEMQ==","signatures":[{"sig":"MEYCIQC0K9v9KtO8SeTA3NDY1XVyGAH9MPKB2CCD3JcgQY6nEQIhAObMcwDCPhKyUzE7zLRX5ZKc3sjZ15EIIGbhWXIPTS+z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkWUTCRA9TVsSAnZWagAAPbwP/RT11bLmWVeBXx8BYfpM\nMS0L5vTvIlicFXCyu+nfQVOupdF+q/64Bd4llBgurOdidFC34O9lIic4fZjo\nUYObyfZr+1LEtHi6l0HO87vdbJQpnVa/DnQsdFOlqgy7KQ0Ajk7hq4X+eVY2\nvhJ9NU9FA2F1WKpvPwGA0cZ2QoRhgPZuU+GdHFlAgnDaZxR5o0a4nju6jREp\nMGhzfNh9XRcohsD0YoYPn4tiIoTgehoeVZxtKNFUAo/UCJe1IKRXc46MX9XA\nod8tCaSnoELJ7V/WuQpmedktSpMXiJTpkeHAjoVysXJu09s1jA0xRZAfz+wF\nP3VXQzF5CPd/mfyZN17AY1uOqR/9PNpPsjx4mGiLp5JDpXjyhvgvoMfDfd5T\nJi1PVhIT15+iKWTWnTUA4ccQUI/SPTdx8aDasagwZ+AFzcPpclRyboxonFBu\ngMwhGNpjiRVPQt6Zjeq8uBZmw4JjDgfUEG8Mr3368nbDzIfypaQE0G4Dy7PK\nFjh/iTRJPNiuDALUZpK3WqNP0Xj9AoZPasFIrbiRL4K1yndJ90L9qE9CPOLM\nqQKMEqJ2+wvUJHfKQ+Q14oZA4Z7yEjHFb5BMabI+kB8XsKMFY3lu4+6QDikP\nIqvUcidLr/uV4Jh0oPMm1YXcwxEYY8yttN+PyX4habmUsVFjh47t/2UBljv3\n8ld5\r\n=tPyP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d216d49ee0c07612be4ad9040c6f0251fa2b5a31","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.122","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.67"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.104"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.126_1620141331363_0.2789635545692135","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.127-renovate-non-major-dd2345de668f256df2fe92dae5b22a696fcc6f55":{"name":"@balena/jellyfish-test-harness","version":"2.0.127-renovate-non-major-dd2345de668f256df2fe92dae5b22a696fcc6f55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.127-renovate-non-major-dd2345de668f256df2fe92dae5b22a696fcc6f55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f03960715b2083ce05290f32e374133982265bee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.127-renovate-non-major-dd2345de668f256df2fe92dae5b22a696fcc6f55.tgz","fileCount":24,"integrity":"sha512-Q5FpHOmGtkw9UiIS0x8o61RKPBpr394GWCouWm6p8e5kGGz0qwZMd2cMIWwamlfZCi9+F97Djj+CCbogQs2uyw==","signatures":[{"sig":"MEUCIF215locUKnq28o/jPY+9nI0x2e3MCKR6YsHy/xngr0LAiEAkvRQ4cxrKakA0XOTHWudK3Bfx64vslXBgXxgI63VW6k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkXgoCRA9TVsSAnZWagAAcb0P/0aMTPJQBn+ZK60TtLyi\nlAdOBT0fttwv5nH3VPv48F6PwnafleaDpRzpPLQSHSF8LJdt6G/9E+k27AxD\ndxcSlmoIagdVbtwZRoDvI6mRQ60AK55db1aPuBoIYk9+44oGYPyjinpfeedP\nRsmshLbdj79S8nXL9qWOnUywQ5H3y3/ThIlGd67m9yQV14VfJuAQ65kiMZHe\nsQwmjPQbgDjwQnc1OTbgEkzSYDcgYq8Jo8A4g/gJbVu238UuBc6FObv725+y\n/YG7uC++V2HwW1jIrNguwAOku5B8R5BI86PRoe8A8jAttAmJrYw6YF4SrCTe\nTj2efOx1eZzsE2yOGSkQ9nvmpz326pfSootvKqZOBSD32p4C5UkUEbI/lMh/\nU1LQ6zbe7DVTJVe+2C/gkp0EGl7Bb0utXP1Iu6s5VY9GNoPOQlWyL9BBdsPT\nl1eSgzEPlRGHbEgXgunC+nxG4nQp/7eEZcbHYH4CjOTPBWx9TebGbDZjnrD/\nHu1vXP48CY98hm+87ncUgUfI5odaiGAwyI6KpfbcC2wHSF17Wow5mgWH/b+I\nchUA0DpGRDKgrpI5gPdyBX+kh9G1LniNy+5x8jMR1dibxmaQ24C6uktHdW9B\nHXNUduZmjJ1IDXCUHKfzl/BPk/hl2+HC75ShGtDEgzDE0KsvUmk4N01Bf3rM\n+IGM\r\n=7Zt/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dd2345de668f256df2fe92dae5b22a696fcc6f55","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.123","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.105"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.127-renovate-non-major-dd2345de668f256df2fe92dae5b22a696fcc6f55_1620146215689_0.277548261298052","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.127":{"name":"@balena/jellyfish-test-harness","version":"2.0.127","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.127","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15103d83712fd0bc7a2563b194f1baddf4da94df","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.127.tgz","fileCount":24,"integrity":"sha512-Xw2RdA/wA3zc9cmYb8Iepq0vPbeChp/8ZYlFa5Iq8WfwVLOYB3PnPHc7mDIKSVQjeY0N4en32RODRKxU3APFcw==","signatures":[{"sig":"MEUCICk86q6mq9Mw0Fhun5QgfDISW3HV9fZ8fISg2ikO8o9SAiEA/yusAujrAHbz7TRTWYvi40iXwrFZKEbZsA0/Dkt1zWI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkXkACRA9TVsSAnZWagAAabQP+waMIUMw1dmTkN+sWrGn\n6fwFmKGcgQAYZ34fKvZcpTfXtzJ8jNDbOskvf84giAvvFQdBKqSLEkcXzf5V\nuDsclcAEAI3gD1cs5juTZZPEAyhqxvNj8GBVr86gjm6Ftn9MRz0DKk7tbd/B\nkb3eU2AIgbB5Zf098Xd9jFNTqpw42CgSNXkkFHWuZrTc/HsNZm/CYF+MuTip\nUa7NJJqVbvA/E2TC+Jk6UsiD9RwK4F/J2y1TdSh3NeM3pyIPxPRKpU+97dMo\nxoRutZUkYTX8jdRmt7pegnR2hzj4MR5Z8x9iy4paSL0DHjuj86cFNHldsXMp\nyESz7kQTgxXuHftxpcqgE05edSa1ohp+IP2B0faeice897oYS9J47Kt1jey+\noa7xorKtz9BQj1KejDKOCzU8HUMklKb1+ZmRB/DAGe5XsnDYxXNIURDxodVa\n+10SFbpMbtJMXpO2Rgdg3okGkn4v7hnnm9QtkJuAfjjAlTCixsFger8tmhIt\nR3D3oFP7a3vPDR2AC6GI9L8m/eNpMpsPAgM4c6Fb55ylyNKnlnIany1PCfMS\nh8XC/BKWQZlYq129Ea/VnqxzjWYCm4EH7EFM0DxIurhW0xmT1mLeo8LrFXex\n0OcLuXILmSFp8udMD12fuzCQbZ05TAxSqhifOckBj5dlB6JhB54ZHGMlZWRy\nzvkM\r\n=aMKf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a7cd506aa23eac55101e8ee3ec8bc837bec5a597","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.123","@balena/jellyfish-queue":"^1.0.52","@balena/jellyfish-worker":"^4.2.0","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.105"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.127_1620146431840_0.6691436520801084","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.128-renovate-non-major-35050d2af91a81eab89451a7bbae7f7212f74dfc":{"name":"@balena/jellyfish-test-harness","version":"2.0.128-renovate-non-major-35050d2af91a81eab89451a7bbae7f7212f74dfc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.128-renovate-non-major-35050d2af91a81eab89451a7bbae7f7212f74dfc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e5a77c29a3fc833a15b8d2ae41fe147decaa265","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.128-renovate-non-major-35050d2af91a81eab89451a7bbae7f7212f74dfc.tgz","fileCount":24,"integrity":"sha512-AybO0BVMPePot27Vw7n0sJQ1gX2UsF5X1nG71qudZvya+10nm6rfTJisQPcRAcJiEZs/M6TYQT3a8uB+2ifVBw==","signatures":[{"sig":"MEUCIBx+5w4cMhTWAh9VUr+Mze/p6BOXzISINjzzhw0VNHGsAiEA3PcyMajpzt06+5Ip3v6C1QCPYM9x4L0hu43gZBmFtmY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkYmZCRA9TVsSAnZWagAA3REQAI8JA0PsEXJIzTR8+Aoz\nVlaJIf4Hg4kSzz52PpgsfPQc7rvm7MlpBuH+ehLoCPKPVN4W8YKimtUE4NHu\nUlIEBmSvE3Q8L+3Egho3X/oDEcolkaCopxFJb9ExdjctOQ+KWb805NvreZZj\nmdRl9a8PV+2FJlpYB9Ou3L9Soa1ygWgDTR3yvkrmbiI9bjUgizifapDIGZl2\n19wAzXC6sITlllEi5EBRrr96Nc4AQBozl+L7ytoqNmgBdc4HD3sC92BjOdH1\n0iFRCT6nBWlVVI3sDBIOhiNU93JJdx6/Hc0Hds4vckj7DKSku9Xwsl0ZkaYU\naWf1pKMyf270D1wGEqxvHNion2/j8MQ1jhoJW4ZeE64coLYiz4mV/n7kFrmw\nVpQ6oz+fk1qoF6kbrkD3YyNqgaXgKMukBFMce55lEJ4UP6/yjqNbc6lyL49W\n4Tepo2jmNwzL/p1WJ04O7qpa4LtH9Acx3YeUW7eeRKlUkvhP4vZGWAjBTk7M\nsoXDZib2G7ZPcQ926vn1YBCZRv/ZWkEvjBBqvTTFncK5Mr38VchzzdJrKI8s\nkSJtAGKyYnduDCBxICmeSaTvPLXa4+Q5mVi3NxYjHmvfKAjgKQcI52tRdejl\ngFszb2Y1ltsxXRCZfYkjWPKpnfjyDoUEYvKGwDGOXGGixrDs8rZYytOHwTbj\nsY8O\r\n=MOOU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"35050d2af91a81eab89451a7bbae7f7212f74dfc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.66","@balena/jellyfish-sync":"^6.0.123","@balena/jellyfish-queue":"^1.0.53","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.105"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.128-renovate-non-major-35050d2af91a81eab89451a7bbae7f7212f74dfc_1620150681362_0.857223428376533","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.128-renovate-non-major-f77314bfc0175bbcaf190261876a485e783d4955":{"name":"@balena/jellyfish-test-harness","version":"2.0.128-renovate-non-major-f77314bfc0175bbcaf190261876a485e783d4955","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.128-renovate-non-major-f77314bfc0175bbcaf190261876a485e783d4955","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d8f80b71f6845e31dc5ce063b8304521b4ad92d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.128-renovate-non-major-f77314bfc0175bbcaf190261876a485e783d4955.tgz","fileCount":24,"integrity":"sha512-xdjn3ZnkWVGoWic/TYr27JM4eL9PWX9QgrqP9+uCX/GN//06pMJtK5J3WoV9wW9a5NJmhP8nfvNj5zRad/qZCw==","signatures":[{"sig":"MEQCIGRjGw6HsLsFopTuhP5rAh4gmThN8c47NeXfrNRnXMarAiAX27Yx4xs6Aa0oOjKbXxbUSXt0/fQgyZlIELtmucQHxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkYr3CRA9TVsSAnZWagAAiqQP/11M0cJ4/o4b46H+Wa9D\nAlqzO+W959k3OUI2oke7zXk0Yy4pS3DQEisfAWkvrKZlYWvhPdr6RkXFnrg+\nqGzg8/tUyk7oIvuJQhbL2zJWRNvvzVhMo8lEFFt7EIFtV2Wnc42eydl7A2Zl\nh2ySEFddrAaqvRcqfs7vYaTRQNnY2sVHxI/KoXkyCTzKgnU2IqpON1l68sHU\nL/4HjcT9mHA6Sf7V95GdGtoQMAvHl7AhZXOSNo7O4Jx5JzmV0u965G9NVxy/\nHwgcTVSA1sRs7QgKF415V15EIx2MM1kzcjJw0TtRtyVZELNjrD+3J8RO4+ey\nSVip4LFTCpeitRHf99B4ouLzVe6KWHWdj+slMxS7LP5KZAME45i43CRuDELQ\nymCA1HpvBcC1Msyx9XZknskrPxw/rd1/cOGgV/uq0mScGns6zAeibYKGmkF+\nzvWvZCZE0H/lCIR/Tnm8WzRTm8VDLPOjs4mStoXmR4zEOMkNaFGIZlhktNSC\nWaMpPM2WXmNV/3XsK0u05Z2q4zc3CwwiqEftJZEImFgnk+kgjsqtMZRlI1FO\nSkz8b1Nw6ehOOcPAzrhitfO5S5wN4xfGs7WMiKLTNBdxIyXbsL4DusS7npH7\n8oYjXG9uC1XY/3FbvbXH/a8K5U1aZQWgx6DNtiloeQcl0U0AVZgV3tHlPkdw\ns6QQ\r\n=NHVK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f77314bfc0175bbcaf190261876a485e783d4955","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.67","@balena/jellyfish-sync":"^6.0.123","@balena/jellyfish-queue":"^1.0.53","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.105"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.128-renovate-non-major-f77314bfc0175bbcaf190261876a485e783d4955_1620151030540_0.3807891408271573","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.128":{"name":"@balena/jellyfish-test-harness","version":"2.0.128","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.128","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"70a28fef98f553e84aaf527b9bd228cce3aa46c7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.128.tgz","fileCount":24,"integrity":"sha512-Xl+aFMK12SnO74bMe6/iUUBcPMxSR12ZqOW8Dv6619aSAnDyZQPeG2RHpl0q0v5iTbeftEVcc7MmXZKitp2Vqg==","signatures":[{"sig":"MEUCIFXioyUEWWfQuxHVcW+cUIwmQxKQDzgj5fJBGSrsPkcZAiEA2em+CUMweg+uv7CPEDvI8Nko3w8DrR3boGx+gqnkT8c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93716,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkYvnCRA9TVsSAnZWagAA/gUQAIpdIOzlJYDp4/zDgFtO\nXaxoJwqooGu2zmNbb/L23zUC3COJCUhOT1yk1P/Dz6To8ZdYkKfeYBtP0hAv\nIZcl8TLmyTdVgsIfKwwG1t/zIpE/XIXFCoLQ8RPQWy+UgUJ8HBeQUIIfQOR6\nwMdy7ebH+Kfhlu61YBGjznsbQhYoPjX+7tEjBNwKkrLOO7gkC+2+XQOtQ6i3\nrHWKMSEQVltY74Z7DVdKNTFYAUvw6mOMT+8VtgnaWEfNQSYLjxnqO6S+MeHh\nuHHHbX8B/xJbge6ly07KGC7A6tJ/T/cavWHpEeJt/cr7kLKeRdRkx+XtAOCv\ntzBcKkfqF5ir/zfMGnVOMLShi06ZE4Ce+btIVUH6W3AnPT47ZgND/aMIX8Cp\n1t+4qggGxw5OeEsBWA0/s5FwDzWLthkMFhCZDrD1a/LGdg1xRK6vhYE8RtWS\nDFJ+QUbmHRVij0NX6t3Av+R/VL3O6JUaGegPxplwYf/avbLOKszc9aor0vr0\n4YzGPUargUp7EHU6Z3wMEKp8kZnLpewun7Qx++zxsxe2FIR6qBeT1UqJByLk\nuXmmo0LbFwmfH5xRwciJtOD74J8RKzn8SaEhT90vqJpm4DaUqFnUk3qT9CVb\nbPdB/aMH1W8QuXYLxpaLF8y3/HhJiBjC2OAifDYOk9yy1EjajVowisjilmjs\nVISd\r\n=wLL8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6fa6a0dd9b6f76345fca89ea8f9cdfcba8a8fb1b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.67","@balena/jellyfish-sync":"^6.0.123","@balena/jellyfish-queue":"^1.0.53","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.105"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.128_1620151271486_0.4607965509585692","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.129-renovate-non-major-444f8fef94960163c9ee5e4f04bb105e564c7d3a":{"name":"@balena/jellyfish-test-harness","version":"2.0.129-renovate-non-major-444f8fef94960163c9ee5e4f04bb105e564c7d3a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.129-renovate-non-major-444f8fef94960163c9ee5e4f04bb105e564c7d3a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f54b470cf9ac1a97c5f06877edcfb644cb90bd9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.129-renovate-non-major-444f8fef94960163c9ee5e4f04bb105e564c7d3a.tgz","fileCount":24,"integrity":"sha512-IaydQ6i4+/nfMaK3IrHxCFOs+gND7uvNG+ZMRXcUQqgBUyk1UIHt38+BoGDu+XYT+feHyFZCV8sPVo7ivU78tg==","signatures":[{"sig":"MEQCIFcVSY40MLI9o5LpHNpqbdY86oRL4dtFutuh8Ag5U2EyAiA1lD3TJ4lkfroAEzOUg8tyJEEuY/2gzAG/cu1g5x+VCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93846,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkaAhCRA9TVsSAnZWagAAWLsP/0fnXAzFICRPPStLkKlT\njYhCtbewh4RQqRa23E6D2ey6g/NOz9CfPrHIX9PSMaYFSbOM7qCAzN1r+jK2\nGHpZoqjk6yRSPt8Q5c1U6Pr2OL2OhyEkrWeG/H1GgzTAN2pC9zS+M47nU9nl\nmT5c3oRTufDVAi0A7drMgtAuqRsTEcg9FCiZFy2VDCedOCgKJxWmQ1DpzMHN\nNaqSDULWqOFV4huCvZabfMklAxC+yEIH1lpyZhnT+KMSmEBfPEI7wL+x2bc5\nyZLUM7bIzUAjsLk738mIhFeYMa7K5nvK1UvjcuRrYSwKlPsK0Hna+/kXKc84\n3h4vt0BOW9h8+qrwsM5WtN6pXiust+hF7ffrOBxM3JD7Ahi64qIlW0/vmPe5\niaP0fU4PlCr86v75SyA6UQAmokevUtVp6sHvh1PyIwYAITuSYnX7jMi9x4hp\nA4o1KvzYUEzomtdrYB4HMAeySNSg0L+EUnZRRK5HtSl00O5ggrsVTXXtTuFX\nw4+uMtQ59RJvExpR1rLBjVtgj0D7oRhH3WTBR/DhMmfL/JJihaCCjPbgVtTO\ntamDZlgY8c2txedknM+y4N6aRlSh8RtpCiNl5U5Z+uJxuGzcfpj8z3Y9MaPS\nhRCwm51bQ3M06K8PeXJDmtVoC4Wdath5atdhfeQc3mj5+S/BkgzQ9nzB4qjh\nkfFu\r\n=lb/F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"444f8fef94960163c9ee5e4f04bb105e564c7d3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.67","@balena/jellyfish-sync":"^6.0.124","@balena/jellyfish-queue":"^1.0.53","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.106"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.129-renovate-non-major-444f8fef94960163c9ee5e4f04bb105e564c7d3a_1620156449020_0.8186981853875006","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.129":{"name":"@balena/jellyfish-test-harness","version":"2.0.129","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.129","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9510687fc2d89347ae4a70eeee636a4dc56fdfe2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.129.tgz","fileCount":24,"integrity":"sha512-BOkJmLDiA3mR4ADlZaQC5CImnLQ44Hv2K3CltHuwafbu0HibNW0HWqHBf9+ww5XBXxoazJBAFYsuwhn/p4gFjQ==","signatures":[{"sig":"MEUCIQCpQgc9Bp4/g7EJ7ho9GwYk8AUuVjcjbQHWlxM8uXytyAIgJhq1FWqfv/ECQXn+xN7VR4UlGifbg3sAF1Ko1K6SJF0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkaDzCRA9TVsSAnZWagAA6m8P/i5++exQSjJrSLgzRKs4\nBwkifGYyx7s9/LSLVnTFPN2R5xtpF6SmfKwEOhF94kF42zA3ooo174AeqhUI\nLWqqkLN64bywwytG14ocg3wy/yAcjRrS2NgBxdq+03vczffNn7RKIc6/1pb8\nv1+umolYYAJWncOMwN5pNBm1Lh4ONsUdBAWAkukJs5DQy+cEAYT+W79WE6Ms\nb0J60C5aMAoBijBEKYwF1SMMQvikcYyoUCiOA+HojDGAUeAkqNJf2g1fWRfR\naTE8eKr62yNHd/Ccd+nKRRh9FBAIEA6av7coj9uNIyBQBUXfe7O22Sf38QBX\ncHQxETvUKahUFqehYMEqI4GT1gzRGUtzbxHvKtSKuI1gROTONvyTgZuHgN/T\n8C3gmKlXJbdMkBlTIzMvg4Wprb4X3hvCUxLU8bOHZVXO8+XE19uWFp1GYBOM\nAcLukM775f7IAkcL2kNCWlXIjhKjBuGcmuUKHg3uDjcDrxeNID+qriJU9n1A\n7BcHSlBy3tghgicerVO6foMi+YdirX5ffCWk11MW3MPNBpGlj0Wz5eHi/n7p\ncnYyA6Xx3Of7y7565PGHE5TDVU7LaANMWSG6AYE4q2rQq19R5zVh3Pn+Az70\nypaOrTT5aqdyWH6ry81fuIaBtYuzpkBJI6ayqVnozp6e0nhyY1eDkx9y4QcR\npuoi\r\n=HOks\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"835442779908fe7980ddfe8357f094f9c817a3ef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.67","@balena/jellyfish-sync":"^6.0.124","@balena/jellyfish-queue":"^1.0.53","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.68"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.106"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.129_1620156659025_0.03931891161996148","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.130-renovate-non-major-076f8f60b8b76a0030cc6921e9941702642f07e3":{"name":"@balena/jellyfish-test-harness","version":"2.0.130-renovate-non-major-076f8f60b8b76a0030cc6921e9941702642f07e3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.130-renovate-non-major-076f8f60b8b76a0030cc6921e9941702642f07e3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3970e6844118e578838864742bb8872d6eb8e193","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.130-renovate-non-major-076f8f60b8b76a0030cc6921e9941702642f07e3.tgz","fileCount":24,"integrity":"sha512-MgbRsmtNvp8iq7IUZzFcIexJWkFxnmyk3u/jGUYl3CxuJdF2kd+6eCOUp6OscZzeoGCcbDoVb0Uoy937qLcmhQ==","signatures":[{"sig":"MEQCIDDLTmNFcKeDSAOgD7s0IEh6TRnAMNjI9CZZmA5uCym/AiAZv9E5AXl8h8XZPOyzFbpNdjDxzUbQdIDD4s8DnOB0JA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkcxLCRA9TVsSAnZWagAAnrIQAJvtFWW3XlwkDGZ3w9jQ\nVzHwWQYthWVw17c3Iobz7j5SgduG1OrGmxlUgP1SIdrSJ+TdGSKiyap3ddl8\nBVtZHmBVjhgNFAjFsQIXWV8fpLrvpCCq7p3zBLKApOuZUn9IJr0EzBv+mqcY\nbRzrOs7KH1hJd4dEYUNRBQWk0Au91pb2x/5KbqHClfXzu6P4JechoIZ093fI\nDVHuwc1YrbPZcbH78A14JAHm780xdL9XrZu+ueaBu1906HNazozOtEzROl89\nnvYfcMmVeW1SQlUqDdXwSvw0pTH1sJPtnHe6VZelPmnydSBrJAKly6lmrV9i\nYGupugy3bUSup63D6ish9sMx12oCM7/4pn5V8sjJW3ppzfCjVv37IHhf7MyO\nSqASbYi6HYhJw6HHmMp6HDan2uRkAgWhvP19E7C+6s9u3PWmhMt+C6vZ/Hpt\n9hEJwxwLEy+ztYnhNvS1kZnv87wdmo1LR5+DsL0XZzdjcV48yIkhI0YuhxpF\ncOZOjG4+xlFYNBWHtYqf1EuUAvRafliwo6QbVzC1P+0c2wDDntX+tcIcopvs\nsR3Dh7MQmGA9Wfvub2d0m7LfdJMSFKwmxT0o0+wi+qXkpmTJX2NckErt1gdH\ng2dH82GER3vXCV7q7hp9RH+ak45eqF6VbpYvgpU4TcjBudD5/ZzlZw/3Zef8\ngEgy\r\n=tGTe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"076f8f60b8b76a0030cc6921e9941702642f07e3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.68","@balena/jellyfish-sync":"^6.0.127","@balena/jellyfish-queue":"^1.0.54","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.70"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.108"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.130-renovate-non-major-076f8f60b8b76a0030cc6921e9941702642f07e3_1620167754596_0.9181709057930023","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.130":{"name":"@balena/jellyfish-test-harness","version":"2.0.130","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.130","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddfc63fb2a7fc8c34365a31f2328b983caccd594","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.130.tgz","fileCount":24,"integrity":"sha512-p0h7YV/lvimwMOnZ6xGOBHq7JmutDnHV9qwVKFfZmBw92sM1klEDP4Wg5uqHDx9qmMQOPrHGLV/0Ws0U+TLI0g==","signatures":[{"sig":"MEUCIEfiyjgglpeHO2XV7vtqH2SHCTf8DRsXcwMyUv4cmTLrAiEAy2ZegiLDRdTelpnAcOpuLAgUibB7MmZQEUnAy1OI9+Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkc0vCRA9TVsSAnZWagAAuDIP/3rLr9oztkt2jMcLOcAo\nUPuaaNTdLILefZ9RRGahE96+3b9+Ih+ZWpkq1f/uQV4nkAzIapntOSEPTNrD\nZLLTJz0d/k08jprvvv7OKt+iYjeQraZEDJ+tTLZbUgCCz6L3uhxAvSQFVP4i\n1NjdONFxKGfrQLeifyEvcdKgGBVu13CwXzX+KcVn2TRLfg3111dcHilxVZgB\nZpbV8GyzLQxr6tZhOYvOgr15j9AGXgrrMaqCaJ/PBvJq/eCB76o0/RB96Mmj\nKYUDgDupiSHsjj+V8+7Phz3WYogah/j4Otxq9R+QjQbVbiALCPqwI2k2HM2G\npZmIASy2iGAZoPPCzkPdrIpbKwmHx06c883/+1AxO9EdLTbYMMtu8xyoy7jp\nVctrnecMk7fI/SUbQ2GHnbulYedEju+JVQudKcooqC8j5BwOR0EDToeJDSjS\nxDpIDfnMaqeRxEzrCMguQn9UgDijbQYTjUIdR0Rmy7/oIJZTA7Sh0ecEBQOP\nK8pdCHLtorYt98GQ3D2FnCceJ2EA5708ABC0IWrTos+/noCKxqHwRwVI98kJ\nxA8nen7CE47KMoHPL1UwImm3KFVqa7Zitk0ZILOHH3zePMo/mnHeTaC8oXLT\naWCmRCKEJrCVdbj5LB072P/cIbthg05IBz6+UU1EInGDSdCNaPy6z1htG9+x\nvcw9\r\n=FDZD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"45dc472a86d72e420a74abc59a549bec9b9aa592","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.68","@balena/jellyfish-sync":"^6.0.127","@balena/jellyfish-queue":"^1.0.54","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.70"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.43","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.33","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.108"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.130_1620167982712_0.1896903355393511","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.131-renovate-non-major-65b7d6ff953d639cf9f553371d65ce7bbdcc1490":{"name":"@balena/jellyfish-test-harness","version":"2.0.131-renovate-non-major-65b7d6ff953d639cf9f553371d65ce7bbdcc1490","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.131-renovate-non-major-65b7d6ff953d639cf9f553371d65ce7bbdcc1490","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ec484858114cc3ac71c2074ad180ab831aeb93f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.131-renovate-non-major-65b7d6ff953d639cf9f553371d65ce7bbdcc1490.tgz","fileCount":24,"integrity":"sha512-VPncs67SCiQCDsOzVBXDN66ThhWW/wOf8sald5sdheXAEsecXXlEE6fNlkTmnG4UvodLtRrTUOY7/voprWMeAQ==","signatures":[{"sig":"MEUCIFhGGnsrRMQe537zA9GRFJVyt4s1rZbuLZdIbBrhnUQeAiEArT/6D0LtoYOQK6ouhlCFci1vzl3U43R05dZJbboOEuw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkeZACRA9TVsSAnZWagAA8rYP+QHcJnzXHhIDOWwrGn6E\nxgXMowrmqnF7ABKzak5EKa18KhDnWZ+QKFFAZrJYQZDzIDwM108fOZyGtL85\njELZCKDQ9ZLBxQtGocXc+iozQn8ScYTgr9L7rfOi/VYTYwYk9Djy9Vwx/k8q\ncF3TlWJdWrkGkiThZ9dbOtIRK8/UuL1aqCn0xpqlrJgHZTXwlGQAZa+DDStn\n1nbXvOzmqijH82G5PV6y47YuwdYAd7HOt7yARrh3WlkM+7CE4+XGzq8KVNhP\nnJYx6oDrWfPbjgAe6dWWux2PWvDIM+L9Z105B/ECUA8exIyzY18FgOxH0TUV\nY8s5205LCmqc3DzJNo/RRswKnrZkmmC0B0v2Zl2nma1RD8JB4wD49tsKcAtV\nuzb5SHvPC3ho+dRrndVcVq6B0QPF3h92Oq+vMy8k6WE4kec8l/CcmBdxVaGw\nTvzKwm2Got7TMGgLFK0SbvvcOZCaoFSOIVyaYZUOOpUa2mfWugEDd5u0SL1h\n13rtAFB2dCJICCUpiUO40WH6lcziBkchjrTQBhBcpBqlwpsdRGns6mW7KcwQ\nKyOKtLsYLdY5KscM1jVtjwmYuBgQUPVHdQfpk/RmJvNk2l+UMlv30A4M00yf\n8ZtLidURuBzgsFfWy+X+mpWy6wfcoyaOTWsUxDLTEPGwSodBr8uu1+BUauIz\nQdbm\r\n=/emH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"65b7d6ff953d639cf9f553371d65ce7bbdcc1490","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.69","@balena/jellyfish-sync":"^6.0.128","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.71"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.109"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.131-renovate-non-major-65b7d6ff953d639cf9f553371d65ce7bbdcc1490_1620174400095_0.19145621132851298","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.131":{"name":"@balena/jellyfish-test-harness","version":"2.0.131","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.131","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c205d8dcad23a0c638d6fedf6a9516685bc199d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.131.tgz","fileCount":24,"integrity":"sha512-eoxyq6EWiL04GgLd+t0WxANytXpJISXUk9UV3Vl0geIMVYIh4Pz5hEzLYTcPMRLmkuuXwnG92m5Qa5NKZMlf7Q==","signatures":[{"sig":"MEUCIFoWZ3bAEj3kL2T0m+h+6IpHFfx4OVhOpUj3JlFCEdXGAiEAmpy1nKAqJw/+QMb27Njm+0EMcFkJG8hrW0E4ttdY49w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":93926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkedQCRA9TVsSAnZWagAATVQP/0N/bVdEwkJ4QDeVf8GD\nZqyYrz3c6x8lejy/De5H683163TGzjeMONnle9njXb3qI0ip3XmBHGGKD3kv\nKoWFlDOHfICg6Kd53kKNSX1cQwSZM9dIWzauA31mptH+y8GbFj/LeFAYcJyy\n8Eb+EncjbTvoBzPheFoFOfZ4xGeypCMZUNtqE34tupfnmynsrZdleqJT14yG\nNGi/TI3+Ozn9TqWGL30Pr6BWImrTBDkIA06GOvo1hmRXiMZM8IPecpylxo6v\nKAKgYvkrohJn+e16kXW4u3oO2KX0acqPlDzjUvFVrFC2izDYUZIhYIjxa2nr\n/D0KYqZmcDq6ymZmqZjXbmty7/8Iyn+E/X++1Qwus6pO+X8pZLPdqc6FgE9f\n+JbZ5sXoCTSE+AKLjZGzAERa1FYxak03fOS2KnhqUiGf4T0OpVF3YWCp+4lj\nH8w7ogwUMQGDmSD3IY+Ad77+4P3zKolUSlsSJ9K+WQb5pmpRkNp4AEJ/zIMf\nOpJrSFO/8sLSTy52N8qNLreLJseUeresSABM+EP15dle91ig/aAcyOBBVJk8\nN6G6qMtSlwaOIZyHSqwjWAr7wel/pd2KXhsfNlx+4uQmomelKfJWe8JGCz4S\no+fvVJ8fD6+KdRDIojYJoDmCtWhXfqZfLXzCkOpotbIEVuywLbhkOozRm/v+\n/YxK\r\n=XFda\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"134bbfafd2a43d10ad6ae8992642d2355f9fbee5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.69","@balena/jellyfish-sync":"^6.0.128","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.71"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.109"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.131_1620174671927_0.47446483017655083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.132-renovate-non-major-2e16c7ab0fb7457170aaa5790bac558497193ec5":{"name":"@balena/jellyfish-test-harness","version":"2.0.132-renovate-non-major-2e16c7ab0fb7457170aaa5790bac558497193ec5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.132-renovate-non-major-2e16c7ab0fb7457170aaa5790bac558497193ec5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a99f781fac150be3480d7d1d30d4ea166791139a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.132-renovate-non-major-2e16c7ab0fb7457170aaa5790bac558497193ec5.tgz","fileCount":24,"integrity":"sha512-fIKrvYgbANsBVuDx5Zhtq3BykIVn3Gw0CHCc/x+5JBvHmrvJq/sYuypIkoZK341mNpqF+EbDY2YcO3WLx3BG6g==","signatures":[{"sig":"MEUCIEbLdRD0Qd/DPufBzCq7wGUaMFYb9hnNjLEHaIqdpA16AiEA1iGw33FGScnBvSwdniZ97Rn+QxGQ7RzICaQAApBEr9o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkgR7CRA9TVsSAnZWagAAuuUP/3QsW4yewxt9ufQtfgkl\nfNUd+hW9HrnSvmliv1SGhgPobp4Gz79jtthWY+gYeBjJ0si9GS5lpX14Ii+8\np0VPP4CBQ1EhV82dWINyeEr0iEMhYFS2tNRLTNx34XsFuFTT+eS3RsKojefd\njCopqRdNMsFpkoW+YS6MDTPhjepqqKMVVVhs1iISWrhDgmVNQUzVPk1i9M2I\ntxuqZJbKLoIthjWTHb0fCL35j3XERSpmDfqJp2bvZ15l1AjxqmS2owlNnh0R\nFY3rCfrg/ycrKWkJjxcmv+z6iYHK3xdcd5ICAHMFOks498DZla+5fInDTeWn\nY8aS0okdqxcL9egyNN3L3NfVj/onPApW9A7u7O7wn15zWraW+Ii79QwZdkZr\ntY5NIwhhifIPoHlkiA/2Wieh6oPzPN6ifUI1uNC39UbDG55RkX2O/KcwPG0h\nOZTxT4C9CGs0MNbTxCuPTfwYzpOAujtRFSN3O12PH8AkKGvl/QF6cA+bSXQT\nscstIu+KAfipv53yTIRCSilQ7GW9s7ZgyddcV3fYXRxJntTHE8ECAg+eU7Kg\nc7speSZZSUa6E4eAxW0EsCDbpqJ13fMHg28H7hGUSr6PlQv81VxGUuky/NNT\nX2fv64dsbS+fRrMj06f8sMe1kk1tJ9kPjEZsfW1AurJNGYzVn6owdfKOyPtF\nKSi2\r\n=7QMM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2e16c7ab0fb7457170aaa5790bac558497193ec5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.70","@balena/jellyfish-sync":"^6.0.128","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.71"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.109"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.132-renovate-non-major-2e16c7ab0fb7457170aaa5790bac558497193ec5_1620182139210_0.6194432347017016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.132":{"name":"@balena/jellyfish-test-harness","version":"2.0.132","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.132","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d95039df5e3bf5afe3fae06a6c14c551e7632ff4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.132.tgz","fileCount":24,"integrity":"sha512-jiDMGqTAm4ZgnDymRlrVv20P+YBuu7IXPB7v1GJcfakaXPg3YCLPc0aNCpE6Uy3ltADo+2zcmzZdbedH2JvSuw==","signatures":[{"sig":"MEYCIQDLQIfT/wVu2AnJ1Mnyj3G0d//nDqpxOgpYEdK96rXttwIhAILUXgzjzcAJb8LCvPX2wdWe4O2S2I4Budq19yLHIfZ7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkgX5CRA9TVsSAnZWagAAHfkP/AoJsuGQDnjbLGGa2F/D\npB+JxnxJSdYgGGjNlAVB+SlqLKPDauMcxHh92lbKyCi8zTMz3cabAhbh0QDk\nT/v1zxaOqEuTCkplpmyNZmsDOiYUbvBxl4xsCpKICL7+XeRTEgyobHCw7eb0\n45yX1ZRWL3Z1miPH973EkzCsGNPi+umyXS0mVvJ9vQC/u+CXh0JHy8f+rHrg\nVe/k4gsuUo6ZTwcTpXkD+6NvgVmRXbQ9CMMkDZgaC9VxYjy3uBmXW41LnfRh\nLtvW4z6otTR7dkejrONfZdV2kmk4kJrL04MQUlLp6swZ/HWm+f9kRLEPTDZr\n7YdD4tXM4Vnr9WhTgeFWRLNJjhztPR8Rql2x4zbvr0g4Z9WGdtEHrUmathSL\n6uKyBp4K6zAiPZth355Z0wsEpGVrLdfo9bOeb5IZpF4+0yYqvGx/byUPYFaR\nWJv3BoRy7iigz8HZsW85hLkEOzQTCKaQc+E6ut6j0JLLPhr2LteFwbyFDmry\nasuHQxr85RdMpkkhqsWU8lHvov/dULMbtwdMfNZLCgQD1DNaHVxtjMOkAKo0\nCeQLZ6egGLzzX8PSPckw8cEuBYVB1pHS04kThUBhOGLZe4OmxzW7WAM8Im2y\nF/qlL/uEEo68Viq2Glvlmn+sJh14XL/qRs5jPHXgH0k/eN4i3T3JvCChJFk3\nAXZI\r\n=PKfK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b9d3fec8ca1d2065d82355364c3a86357e93f217","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.70","@balena/jellyfish-sync":"^6.0.128","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.1","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.71"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.109"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.132_1620182521074_0.997915688642047","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.133-renovate-non-major-eec43023ec637500afbf4768d7cd9024b151c14b":{"name":"@balena/jellyfish-test-harness","version":"2.0.133-renovate-non-major-eec43023ec637500afbf4768d7cd9024b151c14b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.133-renovate-non-major-eec43023ec637500afbf4768d7cd9024b151c14b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e02212760ed7b1349407e91a448975b8b82f7cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.133-renovate-non-major-eec43023ec637500afbf4768d7cd9024b151c14b.tgz","fileCount":24,"integrity":"sha512-mJ9L/f6ZAZiAJxxxTdfJEtkHElSbeTIwA6o/3s0TRCB8YHqao3UIadr85S8OXV7n56Bo9pnnwOdMEQFu2/ugNQ==","signatures":[{"sig":"MEYCIQC0tM+VWGaJiRTSd/kqC3+wZ9qYme3Sf5Nq+TXXOMt22QIhAPfOg+SCq7+SZ2ttYaJ0VO05++IdrBeuzEZPm02/n3KG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94162,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgklpzCRA9TVsSAnZWagAAP5AQAKRkAIU7wKFA4BqF0Yp3\nA1RG8D2uL7gwGKW2h8EAmupL84GdSgEzq47aqXMPiUNaEhiGZ1aNiCqq2ylO\nO37Vinh6z2AjP/SeRseXwuqqFfPCB6BPfW09LYOUvpjS+DcobGI8OOXbWYvi\nmL6iKH2OaVSn+XAt4INY5Oc8ZCUrn1rQiqVGbdHWmjGCRaUXRIPJgdDdSOZr\nyjbNMqJNsNqFQUeuHKx6UROwE5jFqNLIsLPkR2YJeqcW6UmMzdjbm1pcMon8\nR7hWu00XJiJEN9BuOFUlDMTpHOAXcfXENioeDj6Z8joCUW9mrv0rp7XIg6IB\nfg2ILv3W2Yo7Nm7Ha1+kckRGU2zVHOoGxj7b1+Z3TMYCOQPX9G3pNpUs57Gp\n+aSlgDu5j9ralSATlJ2LocF4mUyvGmVXwLgnt0dKQ3zJX4RaOT2xvz5+DBss\nxCb2J+8z8uVTjy0vVs/wOHYR/iDp4yA+O8vxP18HeNqm+L/11zYfbbnrDrfa\nmmZIdHK6WxAw8Zs9VMIHkW+7Gs1MHkLboiSuxMiHcN+oe3poYGyZA6c9yiyd\n2C44UhRPeskkEBtFzvTGQoJDALXY/1iTYgvo7RS7Tu05sNCr3GUE3FBxG8J/\n9IbfBgPGMQuUuoLH4cYeINM7RH50tV4OTA8TvcJ3wKl66FooHbw2hi2ekCAo\nflh2\r\n=/nnq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eec43023ec637500afbf4768d7cd9024b151c14b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.70","@balena/jellyfish-sync":"^6.0.131","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.2","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.72"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.110"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.133-renovate-non-major-eec43023ec637500afbf4768d7cd9024b151c14b_1620204146847_0.10651995283580873","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.133-renovate-non-major-119bec4973c69f21ba94be3eccb161503ceacacc":{"name":"@balena/jellyfish-test-harness","version":"2.0.133-renovate-non-major-119bec4973c69f21ba94be3eccb161503ceacacc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.133-renovate-non-major-119bec4973c69f21ba94be3eccb161503ceacacc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"621623404e9af7f5b803d55283f675df0aa8f1e5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.133-renovate-non-major-119bec4973c69f21ba94be3eccb161503ceacacc.tgz","fileCount":24,"integrity":"sha512-jk6b4MqfD7/jQmbxEMtAhK6eZcog9SJOZEwbWVWO9zqEsUmvyxGbtAjsyKoljFc4goS51y6bV9nq4ICQi6v1ow==","signatures":[{"sig":"MEUCIB35UOkbr+h27D6Zh1vQjNmtyvm5YjybG3/6Gh5IJaCuAiEAibmdIQm9P3hFYbSWxpEjHke9G3g6h08592kIq1L9PPI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94162,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgklukCRA9TVsSAnZWagAAvQUP/A8TjOPCK8ZUUy16u3De\n+9BKekL4wGECAH1D/QNT7gHqz5BJzSsxHVzY5rD15sT9vHLUQ2q0d7F+02AE\nbPQiTRcRTTe/TJWi+SSKe/Nnc/sxEJqklHJ8ZibtpZCcQXvA/wUi+xniTsJu\nyfw5xn3uWeGIxsuTzK3DW9yCzvbAYaol8fiokteCvj3zC+y4ZqXfxuTbleJf\nxadWlyWrMC3csiYihlgMn/MmKYVUOjct8r43Qxy8ovtp2EjnnTguFFDFMNgI\ny6/uuqxAlE71p87wA2/9FNC754IkHdzkqeutmyoq0Jh1ZCzsVhZh+TdY3tEe\nzR8O16mQF/DSjLYmJC+hlIzvcIn+FI4mOAmk+De7yGEA2VVDNXwCCpIngdvs\nI+BJB5WT5QSzqgFzowKExkoBvusLeCbdazGRqM2hkx9KhKO5URM3Zs9+Re/F\n5moi766THO4UA0iIc2d+Csa30RYGw6tu6b7tH99FlloySUXeSRkAkkvuPvj0\nNYdOtoHhO5p0yygt1zP/xuZnyyR282aOjx61T5pQJDkWSSPoiNuGwhWMRr+s\nsW2BWftPLgpMaJyyjKq8Jk8vRsnSU+0HYxRh2PiOr8vTSGhPJkwX2M49E3TM\nPL9CBczZfSn/wtxriaFbgTxsk2chgLmb1X3+Pt4zAZGdjnvRYmZ8xtzjyVeO\niN5Z\r\n=91aL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"119bec4973c69f21ba94be3eccb161503ceacacc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.70","@balena/jellyfish-sync":"^6.0.131","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.2","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.73"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.110"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.133-renovate-non-major-119bec4973c69f21ba94be3eccb161503ceacacc_1620204452328_0.5999127821033046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.133":{"name":"@balena/jellyfish-test-harness","version":"2.0.133","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.133","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2e5bad01f1a2f59112c3498d0bad649a95d1ee36","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.133.tgz","fileCount":24,"integrity":"sha512-yGVjgQO7LbUT8RzQuT2uwFcfFsj3f7CcO7/VT2NRsgfyebsfcpn9tKbVnFn6fW5x8TbiNdoGP3xMMko3lnd+zA==","signatures":[{"sig":"MEYCIQCW82pVsKuFC+0/vdok7uIMXHNRC9lGafD4/ts6Iwf5PQIhANkxesWJVQ0NEWijelSYPw/qGCehh+Vscj/WOIcciaaC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgklyeCRA9TVsSAnZWagAAIxcP/iLJf6sAK3rPFeetqnv5\nb5z1Z8t6KfwaPnaU4yq3B1j9pPK2B++ziWv+81+dJ9BbMqOe34UYTU3Fhp0y\nuukAShLVbZ1jf3Uz5dIngLD2wTqtLkfwFKhyG9rXd4Ogs2vVj5MywqV8gj3j\n3Ex45xTM1C/MzD9psIbYlFwup1w3KYYrjgzIK263+6lPbCwoJOLdQhypklos\nr3qxgq4hPA/tBBxvgiBL+sxaS+BA6frtUERDz1Zu3j1rLok45veHMOqrQkUk\nLET5hjHWNOP8j5YHHj1luTDJM6iQdxzpZ5AcI2z9POh2Md8gDOgNq/xkiSla\n6WVNMkOI1v8Y4paI5BcO7RYoN7KWuG2e0lPM3Xb1skmVUT2KcDKAMxwNdl6J\niHmsFYf4E9xr9ygegkJ9mLX6c33JWL0gJ9EXILeYqyJmCI6L2ggG9dfe/Iu4\nM9z2nF8PgGhSQ/jYl3nSifjxkxxRzHESJlnUtyFvdo985k5D728A1oPz0x5o\nsLn/+LDbmA7SyhdFl8SD1i5LVkXnSIxlHI7UANjAuL8P8gUE15j7tRuT6aBd\nL8kko5G7lzlIGgeR0atLsU5mcrdl3DMfZ+RcrkzvL/GcjgdnMMtLELz7/yK9\n3D7NtOwu5iqr1PsnR38uMKGBPgI0aj9Zs9X8tKQ7Hu1sIS7IXckNF7s8b3od\nFJxC\r\n=cfJw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ce326bb2b77bbe006087776296528b9a7c3b732c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.70","@balena/jellyfish-sync":"^6.0.131","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.2","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.73"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.110"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.133_1620204701709_0.5592605476144403","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.134-renovate-non-major-aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7":{"name":"@balena/jellyfish-test-harness","version":"2.0.134-renovate-non-major-aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.134-renovate-non-major-aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab222a90b1f2d333f3fe86b8fcb0cd7c0596cbce","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.134-renovate-non-major-aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7.tgz","fileCount":24,"integrity":"sha512-4SM8/6YYIfzqYw4pMu6W0ojw7caPTMT1JwHyUBN/UbakKex4ltnQeywKYWwiEEXeEf+uHWyIQAVmxO6p4YW3QQ==","signatures":[{"sig":"MEQCIHpqx5o7dPDNh5vt50K4DmxS2g7Zgff/K6SzejSwKvnHAiAx6/x1Rec78nhAf/btTv6QB2LgdFilzRXVH9xZiWyPEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkna+CRA9TVsSAnZWagAA6mMP/2W7dkULfF00AtpqgvdY\n9eeTSXbKawkh9GnbF5g/9Qwri2p8tIj49Gxj+Ev6XmtxIyd5viOBINx3rW2B\ncnijRpHvrokAdcTIU2wtiF2dPG1AgOtTJebmJlF1B3X9DXZzqfi4zxwxE3EM\nJQ6sA+B/nb3tELNlYhiGkaE7kGxAxW7l++4+rVn+R+OUgS6MgZv4HCAta4HC\nKhwOfVMnrC5dPRaZMptLJOy0qcPMUrUY+RzevwEnqauKi0x47HdM7I39iBdp\niWT7aZD5o+bDEQ2TVOcURrB6VLlQLR/msLau0uR3kCPARWNcsPBuouo4NNZc\nUrkYLNyaRJKKOdes+1F7flNnuUh56MwgJCyYO0eoCg4f4hmZQcYvisQ3FmLm\nELEAyzXqIVgoD+FI1KJZcC4BgtNJLJ5BInVv7Floiw3Gi/Puh5qGqZhwiXAZ\n1QPkwTF3krxK63r2ZTQKN25bskMXay7xR+3j7qKZKJtGcUodMXyMpeEn6TC7\nWYinjrJtUGedDBTKiuD46lDMMQh6azOi5y0HMABqzbNslKApdpFKN066Dcy+\n87ZWTx1zKcdRp5S2Q4gq8H7EREtbTi1syIniWtatGGF6o3k/nRWAbq0jmKr3\nvI+XZtj3H1dFBi2QZ83OjPfGpjPndVeIm8obDjsBC/+K5ICkUACuSESTY88I\nmmVC\r\n=la9k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.70","@balena/jellyfish-sync":"^6.0.132","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.3","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.73"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.110"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.134-renovate-non-major-aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7_1620211390070_0.5812031227168044","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.134-renovate-non-major-0641e9834980999d48f3202742bdd55de7986411":{"name":"@balena/jellyfish-test-harness","version":"2.0.134-renovate-non-major-0641e9834980999d48f3202742bdd55de7986411","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.134-renovate-non-major-0641e9834980999d48f3202742bdd55de7986411","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e88886d51062f054012196309d76064fe15bcae1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.134-renovate-non-major-0641e9834980999d48f3202742bdd55de7986411.tgz","fileCount":24,"integrity":"sha512-UKaPJyii+4MDQr0zXblm0ogObeUgAKTVVwh0ju30oGecpSVrlNZzx1F1H09BPVmfelXckFILWLPdCpxDz6LITg==","signatures":[{"sig":"MEYCIQCi0lKuo29Z/ZuD4akE4SuRYiRyZTV6uTzadGyCoB8KSQIhAKp/IhgV7KcZ//zavcwmQvEMG8IjTaYDY/6cuTIVW6y/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkpAuCRA9TVsSAnZWagAAXdUP/icKjTpPmaZ8PfLyZkCx\n4GdFm039a5le9Q4EKqsTyb2cHPj8ddI5MBL65dbSUKEV/lWHPYCuVgTCk8EA\nmvSPjK1axiW8kfU8hVN4uO6Yw8EwrTRKke3dKKHoC5WnYtrwlW4Cm3v7NjN7\nRQvVN6sI6++S2sSVpYDhjYNfhYEdWTwRHsgIubDawlnUpldP5L/Ys0bXkHwQ\n4KKEIEQFB5xkJ3xo3Czz3vZn3tcOXg0Oztdc6ybuPPRjO2+lhrj7590+u7Kv\nFPA32ZJaW/70HWdC7x3zD7sxj9xxWWKMff04iakUVkfkbzush7A8zKCZy/u8\n375rDH7+tPpMtcLGIFNV1Lyd8+mbCv8RpY7Apadk5Hbo5uUGRT2lhUUs3Tfc\n/erJab3wg1VTaVDeuqF2FzUygcPKZqmmDTWwVPREP96fc9j68Nz7AwJ7s7/Q\n1AcucQrQhUPHGLxeP7osXI+itPeYHSsir25kIUDTZpksKMvUWaTA+iQ5qEKC\ntv9aDO3dlAXHDQfPnXGDNaQ0+DuXyM89QcRKLXoVSmH00bC7+8BfB9DUnXEL\nGbYgQZ6x+h6AL8dNzORt9qPJs99UTCXeoZERW0nXO/FWzVRUBwBkrOo2Nnj9\n3iNTJ5qkB9lzAu4zelJYBdF/ZAVNOlw0CzcrmsWMBw/uxy4B314dFyiJZLi7\ntOTv\r\n=mVLp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0641e9834980999d48f3202742bdd55de7986411","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.132","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.4","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.73"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.110"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.134-renovate-non-major-0641e9834980999d48f3202742bdd55de7986411_1620217902327_0.41405823671021524","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.134":{"name":"@balena/jellyfish-test-harness","version":"2.0.134","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.134","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"16ecf46d94eb4a1002a11e355923ef9927707642","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.134.tgz","fileCount":24,"integrity":"sha512-oLPVtH7xZJlKOOrQ6SnctVE2XTg2CXR4F1a57O3m1IanjzHGXtyz0A3Kpid7YkTO3ShkSOqKZH+XV7wXJ26nLA==","signatures":[{"sig":"MEYCIQDcCZiAzWnLCa+ep1efy06DOhMRCZE7vvmeKVvpblZaGAIhAKjy8wnTKj39pO7aYU6MLDNyj+N9NKxppFe2udLB9qK4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkpEQCRA9TVsSAnZWagAA/6oP/jpgk5F9Plut1Mcyxu0+\nB0wZmGbZRJLLg50bYNL2JYS5eOvn+S1HYGHkKnPbfu3czVMeCHoASdekrD1c\nbHgLk/awXfWNUNcgjbN42jhYzL9OGC/N6FhjjRpwwwaWzEfsJsNCZn5OjVbb\nUtpyTGMGycRL4Dph0UH0oflKtjrD04wljCYR1q7y2U1e3H/iN1wESYY1AnI9\nnqWzTCMZjqouWLlTw1+CGVzfDT8f6JMmXbdie6/TM8QQN9vPj5HncP5g/SDN\nqOfSqiONKb+fFGmGGGz6yBXlwQRVXmn8wsA1+iWWkL6VZrcgIRkBx+BBBeU9\nKNlSqEQQeO7ZJxeDUNk/sJrolXidQHJqBxEOs8v+SmKo4fT1/PSkZQl74By5\nvXO8wSvGwmEMiZj9g1KfhsnPV4ahJOXrnB/zjyPeYnXH99b1IEajtwvfHP5R\nnyWVlFUOTcp5iKHcPRjrwk2rzceaaFxCPbn+RRZ2rPaGE+HRfR+aGalyQzsD\n5uMpYWNl6Yhu4vSzr+lSKv8MwTQWAFvSIlLme5/PrnhqS6ZrOCvQ5cReLgI+\nan36q5RfdqbqiKw4CaBebhoyAiZ3Evwv5eaDN0HprHWGy+RVBVoXB0os3TGJ\nEf+Oz8Q6l7NDZrcHOfnKV6prmpA6sF1dcfdVecz0iIOuDe6tUIb3GC2FTmI1\naEkZ\r\n=iRL6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"57f475534e80a432c7e4a5578ebc15b8bd6f51e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.132","@balena/jellyfish-queue":"^1.0.55","@balena/jellyfish-worker":"^4.2.4","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.73"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.5","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.110"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.134_1620218127616_0.7311556813087181","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.135-renovate-non-major-4343ad571c36ad2e504f6b19046dd369c89b7361":{"name":"@balena/jellyfish-test-harness","version":"2.0.135-renovate-non-major-4343ad571c36ad2e504f6b19046dd369c89b7361","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.135-renovate-non-major-4343ad571c36ad2e504f6b19046dd369c89b7361","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9330ca53ccf8ad05c63c98cc212b21eaaf5374c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.135-renovate-non-major-4343ad571c36ad2e504f6b19046dd369c89b7361.tgz","fileCount":24,"integrity":"sha512-7QvlFYTcm3ueTX7ShRfl2nYaDGvCIpRvZkgbTHHcvKiyFcIAC3BToOOQLi+axUzP8u1iA8sMzVp74EkwZynm6g==","signatures":[{"sig":"MEQCIEeTIEg2y99uSrqCy9i4XHrwofsIzKehp8p6CzRgKaP0AiA6/T/vUAKQoAywBkFHHxsXfbqLJ8X0QeLD8qHZq9yAKA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94302,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkrU8CRA9TVsSAnZWagAACf0P/3kyV/t3WeZz4VqdMI7H\nq2Rq2I9Y0X8kYmTbAxuuRn36sVnKiuAQ5OJulE5LooZyuT9gGLA1iKbgxp5W\naJv5vjmQ+fbltQhb6427hxXXDcAn+G7yPFtC8xUixUZF9KfNrETt9bGPIVmp\nkKgjJ0GFXcmzbsLVUlz+H0mm5nRYEV3xYxBB+jUVod20PHFzws8EbwF7lSDf\nKcSAnAgIytsp9TdB8aaDZxfB0XNklkDE8mZfywHMXiBZN90JpPGfTksHl3KY\nXMqYbZj0FwfpZyVK9ApD01x6x0LXU9CBgzB7r1iCBMmcxvKMHrU97CSJQ/Mk\nirTzhz150Kvbo8gNIb6GK6h+xO0VyH1JyRM3zWx+JI2y6vI1UWqfEdkxRTlt\nK+hhcCIhKtUBSPF4nCkxmPdyl3TIg2+P89kUoovNpAMySuInFaacOHxjcjM1\nW+bdlpGkZYgTVB/vFXhNcyBNzH1fQ4Q9JvGhBpO+tbxEc0Cjp93JzjZT7kTl\n1KUe3HLR2G/IWNW3vWTkoEhfwaQ6RDYdNq61zv9lGpmLHVmXyX3y9hwmdctA\n7NfnbFFHLToZGQgcpnHnUaI3GPURmsYDONlcL0Ci7alzp9K69JYdtJGQ5Lii\nz6t3L981T9HzaXg20b4wiIUuLy8TuKrC28/AYFxPiBcp9xNE9G9wUmLr79pN\nFm2w\r\n=m2il\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4343ad571c36ad2e504f6b19046dd369c89b7361","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.133","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.8","@balena/jellyfish-plugin-base":"^2.1.74"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.135-renovate-non-major-4343ad571c36ad2e504f6b19046dd369c89b7361_1620227387585_0.22237457094763968","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.135-renovate-non-major-edfaabfb457a9d7f2283ad49a8bfe513e55113bc":{"name":"@balena/jellyfish-test-harness","version":"2.0.135-renovate-non-major-edfaabfb457a9d7f2283ad49a8bfe513e55113bc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.135-renovate-non-major-edfaabfb457a9d7f2283ad49a8bfe513e55113bc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93480dbd47382bd7ac30d96b7b2680758e1d4f46","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.135-renovate-non-major-edfaabfb457a9d7f2283ad49a8bfe513e55113bc.tgz","fileCount":24,"integrity":"sha512-GQnbyQO5rMHqgwUF0pVWvc08gbbi3+x4VY5fKTs4N2lDN34W8/SOjwFCafBm4m4ODltnJQ9n+NWXrFvrKeonVw==","signatures":[{"sig":"MEYCIQDIJVNVubOBtc/lsH2l40ak6rDJrwNoSYqf5eJ6Y3dYSQIhAJARpsqe8HRO+CiAzj82dML32VJhC4RmhKYJF9SAIUfm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94302,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkrZqCRA9TVsSAnZWagAAw+4QAJ6R2pEfPZ0L0hpdAAvV\n2UOYtSBsLkOL72UiZf3b8me5NDYMgrVjK9xDyjkWcVu+BJDIhSd9fl3Ll/qF\nJjW55RfCbWp5uRtE9FfHWfcXgIUaot0uD8G5VxZu6I4WKx3gwPVAkM6Y8PUx\nDBuTtqoby3HT/sxqOkCWtizFff4InYdE3AP376lwJ4jYiu0KY5/77pl7q2hU\n8IrdmJqVgr6CdjqW2vaq7IOXqzdy220+wQxHDpRpN58pXw1o2lzlgydlVFZ1\nry5fVB6DCGLjTGJpla8+FeBkEUTm7m6HcmDWJR7X6YINNJ5qAhbOinnVw+OB\nZ1wcrHcxCPwfWdFWiscGltYcE74lVzdE7IKJJPzsA06pvXCS1OsPdEIbEipl\nIJYJgduoUJCOST0aYsHo79foBR4nYMct6C1AXoxJAD2jpBLLxGZClMXaWDwN\nzn7cE58oozsETfsUvo2MVwryO3fFfgKTDz9A9N/koXH7jRaCZlTdA0eRfCHs\nvQaGCVtlekw7wAfPCNUV4seVEMcQd7TGw48MHWQATkqv0t0osvaZcxhDe6GT\nfW2LbvEViFzkbeTVmWJJGO6Mo/JM5iHra1LM++ZF8Ta7GJRZVVrzXvIoeEwO\nPCpPx3LwUYA18rtOy8R4tIvHa8r6T7RZmiKrPRUW2G6fH/Zkogc6UjgeUOkS\n/4pE\r\n=clT2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"edfaabfb457a9d7f2283ad49a8bfe513e55113bc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.133","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.74"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.135-renovate-non-major-edfaabfb457a9d7f2283ad49a8bfe513e55113bc_1620227690437_0.6072844417637611","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.135":{"name":"@balena/jellyfish-test-harness","version":"2.0.135","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.135","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41cbb98605dfbc7991aace0b4365d79ae62963cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.135.tgz","fileCount":24,"integrity":"sha512-rcrGCMHTWWmfnfAF2P+ZswB8B0sqjTu/Lp6QvIR2ZEvZQkUiHZHJGJT82Tb4h0JTVHK9nGlw05lonj6kjJr65g==","signatures":[{"sig":"MEQCIDlRDxywpjkIBAAx4mhLgib5jiNruuy6jzUqvJYDLJ4xAiAyY10TdLvTfg3QxjultE+kAa7PV/P+0w0oEi3bEY9+Wg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkrdYCRA9TVsSAnZWagAAcX4P+wRMboPsrMnHKCm2c1QB\nKiUSHV4S4pBJ4154IRyDHM0ZFYagVOAXXu3Ogwss2RTwDHlfKZrSoQ+JZcoy\nIe0jjtl4JSdZhta1Ot7ftwPqE73FvWg3BzLjIhf/OSkeOH2LbWVjuvgGA2QH\n7TTVotIP2Gkcr2x1EzrYwpw4LhjVvUwb3Vhkucvmv+sMVsbpdf5EtCXmhG64\nhJdKbggkxiID44Bx7GZeg18VQCPeEwfnij7sfx/oVIJMGXvvmOi6wQcKqY7K\nM7a63Z1xS0Ad37OGeQZbKdDn0q4kwsTNp6Mx/QBvQ3tZT4y3UNWFpnESzWGA\nCxnFs/y/1Q+FlJI1AKibTlnPsE1Rjy0LXOxegaSYBFJ9QXTTKWKql6LsA6O8\nRELn/cuwxfdwkkx0Y9NP+rwn7GkT7vy/lRxphnOt9TwRpRxe+JwAwjTTRNcR\n15A3VLY9IY5Mh9yircAzYXSWAE+ql/O3todJkOvCxSwlMc4Ak8zJtzx7qmAm\nG6v7luG2i8ziQ/8QxtgWqdiZQj3TCDqkOeM/NxBmVpejyYIu5/npCda7Ov8e\nd5C0uq8r5dvTuZ1+1qgc3PD/qXKNSQ1wcdgYRrJVAawEhQvcCvwib++3Vrv1\nTOHMBdY9zvDwHOycSSBBdK745RrS6haDHePLjGpo2aUSHO/ZnZMa8qERSzE6\nKW+i\r\n=4jVM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9b4e92a88797b777d872e05233c3c9db6a8f8cb2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.133","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.74"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.135_1620227927372_0.35782510253781274","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.136-renovate-non-major-115f1a288d03ec53ccfa776b8a87e6afa8780b2b":{"name":"@balena/jellyfish-test-harness","version":"2.0.136-renovate-non-major-115f1a288d03ec53ccfa776b8a87e6afa8780b2b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.136-renovate-non-major-115f1a288d03ec53ccfa776b8a87e6afa8780b2b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"656aee972d948bdef24c2ec79a2349d10380dbf5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.136-renovate-non-major-115f1a288d03ec53ccfa776b8a87e6afa8780b2b.tgz","fileCount":24,"integrity":"sha512-7+KzAXHqjrpqv/57Dl+XnpRAc8m5WiEI/UQd9AfeTYrjBAJsN0FUZ+p4HrW5LpuQPqjCXSyEhaomWTbOZewnlw==","signatures":[{"sig":"MEUCIQCv6XrRj+zCqohAaK7g13blrDJaRy43THubzJ7/DEAX7wIgWH+pktnskU5nhwtb6T1+0G0xDOSWZIB5psyXTZAhwfI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgktBrCRA9TVsSAnZWagAAnEEP/1sDecqPl5okWHupI/n8\n4sriDRkBzqE5EhVV/jpR1jn1klU3shcFyWth221ZKqkTnw81mEjHZ7i9sD0Z\nfG2sLtfgQJHaSKmRFZDK2GPTsEldAeUDO4E9582LWyBms+JvIL53effO/T3s\nn66S0MKSkE0VrHfqvEOizfSOR+qXaoADJjs3zqw5SYo8fyAL3mFZOtaWkInD\nIeoJ71/b4Lh8UlUVcpsSNJuavhlQcirtFOupIGTYA2LFg35f32YwbJq8tYe9\nrK9uSFXWWXEE2+Bn8Dx/NycYCgcXurXaQsgyeFUg+zjvJef2MsvgoXOmgmIT\nAvkV6D9USfwJblytV6MvpEaVFjzUg/3ScKi9U257mNfgpk2M/Ae6ymLlZmLZ\nE9lg7z3pGnHVgCpk14ZQne6gxM/iHRFWyPTijb9/KTTaeOENqbbvX0pjAksG\nCQ15ip9ocCgV7pwmccOxMqLmuexnvG85bD+gQHpyWq08EDvbOoQNmxC5wNrb\nhnGBplw9zKEhxapNDTWy84jA5PoJ04oHJaBzWkxVpj1JvottlFfrdo7XB0+F\nKQ2yb5p6NkqIeU6lr3swe//svfEyCRZaf6GGRMQN6enrNiKA08UcRT314pYm\nSBM6bX9/rtbYHUEscXqpUnBCtzMBcanW7P4LFqZyS3htOIVuF1Q78lahYFZz\nb67z\r\n=C/9M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"115f1a288d03ec53ccfa776b8a87e6afa8780b2b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.135","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.75"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.136-renovate-non-major-115f1a288d03ec53ccfa776b8a87e6afa8780b2b_1620234347344_0.21847063517615561","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.136":{"name":"@balena/jellyfish-test-harness","version":"2.0.136","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.136","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5fd5c2bc78206cfae5fd325b6c37cd2e3c559c99","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.136.tgz","fileCount":24,"integrity":"sha512-Rv38BKwA2UxO81lSUCRlFCHmehK74F9M3e+CWJOs/YR7wLe7/4zhrGrGvYc0PkR+h0eWKqMvKaZKgVvh8KHVgQ==","signatures":[{"sig":"MEUCIBzoT/bYdJ/EOQm/fQiqvIAeH1TNHnaajxMUX/qj4uInAiEArj/XccI82GWkT0YnlAPrTcQCN6nFNxK4UfitxL5qoMA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgktE7CRA9TVsSAnZWagAAH+EP/jzVNiA8pxyeQQoCMW58\nnUBTxv6D8bYtUQhW8x0k9K2bT4iiwvCAArCN1vQAIWIH9R9zHyIoWk+w2sk3\nkrLzFOPX8MVbZW80P3oZ/txLUN8TXRnAW0AOF+tkl3k1J3pW1wgUVHOyx5ea\nYksMNkliyVUoB1pvcjYyxjuU13TFTr9D+5rpPSpwxLIpSoA6eJAfHTLRloH+\nGgoIYKeqzIyQ23doS2fjjDSyFKOacP1rm0TzTHw+TzsESdq4mVsMbdYFbLdt\nJmEJCgWcOhdV/5qQ7eDnmEJ2QJs1pbsex+n5r7teAAEukOS/7TAIl101vwS8\n9Uj2VmU5Q6Dk8P5gnKl2LaBA9KIhzvqoLuuYmM4npTRopaml6c9k4C1VEIgl\nhH7gF6GP83qbDRQp8XOMhAaGp9ZLMMzsCszP/PnWzQfrZTyKPAxlAUDuwBs/\nzg6GHLrgI84lhp/qNJ0YwVgQKbgrceq6+zOIkUiNB9U/o/bkx2sMQMk33t0m\n+u8gDh2RWbWR5EQG8c2YT/JAkykewf0g2kz+oE9j3pCbBjAM1THsZusB8B1o\nTJFPkGhFHlTsLQg2En9kw5bZVtp0K6oGiIQ5tdLc5yJgu1PdnEsOrnheXRnF\n4RXYIgZBEBoWriE0otnPyddErtobRH3dDIjz+3TqQRUqGGNr9DV3xfZ2Zjyf\nRPmH\r\n=FEbI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9a24549f3beb69dc8a45fe687b9cd9f9568e55db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.135","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.75"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.136_1620234554596_0.2950370594713547","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.137-renovate-non-major-523afebc5b9de8711293b57b75e7e57fc797d2b0":{"name":"@balena/jellyfish-test-harness","version":"2.0.137-renovate-non-major-523afebc5b9de8711293b57b75e7e57fc797d2b0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.137-renovate-non-major-523afebc5b9de8711293b57b75e7e57fc797d2b0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97d9246fb2948569d3e48c8271de893324cf5b28","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.137-renovate-non-major-523afebc5b9de8711293b57b75e7e57fc797d2b0.tgz","fileCount":24,"integrity":"sha512-0vL1lK//w/QBlZXxvYC5UEs062c3G4ezSJiXUPsiwjUt0lZh+JUmUXOXiNDUWBCQn9jCcmzwP9NVc0Y4H24/CQ==","signatures":[{"sig":"MEUCIQCeRIoMvZUdp4IKQdITuilc3ABk0ePlThGIxVfl6oKYewIgE0bn4F+xTWIhbCgaJQifzPbC1eSuZ3elgVUivfvTSB0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgktsUCRA9TVsSAnZWagAAU8EP/18Ay4imbfFKUmDw9Ltx\n/DnwwBEQRILJvvCxf7iZuQ7opfDOLV6+k9iqEden/lSYpNKWkj8IyFfMfW7Q\nfIwbfQ0rCGD3Ma7f+M55tx0JKosdHRV/S7Y8ZfBQdffjgsWCx6/SsVeik5J8\nEB12zPIRNRxU9RIxnvFvf/V+bdtPlU2KciH9DTs29CoCI5WYrlMX6awH+37y\ndYaTRhn3gkEzsaXpRKHkd5nqg7Z4/5k8A2Hs6Q7Wf7qNGiCcRRaV3msz1VWX\nCFbUZq6LGoX1TSBtnJ/kon5Fs09S0+4RohJYyeEOGC5HUavY+BuynB7uocaE\n/KZJ554aHpc5KlwP5Re+HlBUDOBJiIwKbwO6braB+W8taRYbBRUoFwl49TpD\n4cANzqsvkoGalAkAsdlUq4SddzPZx/zYm/gOoMcjTe11KZKeUN0FSICU/Mcf\nyaOEwjDnHqvqJNLJbjXVWJSzUfMBUIgO/1/FOYb3fC9nOsnR4Z5xoI0WwP61\n97ewSU419dtKoi/88aXbIii2C1O2xoo5XLUaRnX44A/Fk49BdAPM9iRYJAmo\nWxlJCs4BeU9C4U9TZnat/bd+vTPvOs7r04YfTKMrXYpk78SdTc4Q35UsMMwm\nS/zvNi2fX7R4SS0PjsFIZID6sZJ1U9BnhYR43zbfp/YBjtZaHtxNfbIyn0bW\nK3bZ\r\n=g/ke\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"523afebc5b9de8711293b57b75e7e57fc797d2b0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.136","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.76"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.137-renovate-non-major-523afebc5b9de8711293b57b75e7e57fc797d2b0_1620237076158_0.926632106313698","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.137":{"name":"@balena/jellyfish-test-harness","version":"2.0.137","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.137","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a98bc8a5f03d2fabab7164e1e58c40f20909d56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.137.tgz","fileCount":24,"integrity":"sha512-mj0OsLhS4gN51VxDZ0gk3TF+MMnq6xyqZwbEH4or7GfFLCMv8p8FmVuAIRp70RmK8c/o58j7rjoXFAHNMzLUng==","signatures":[{"sig":"MEYCIQCgEJyVEGh2imYPMKXpExvPjJEGKnVivvg3VsDIwSI1LwIhAJmxJRAcBjDVWfFPsy5/0EDV1VS/0Ko2MbIF1VGwI0a7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94382,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgktwWCRA9TVsSAnZWagAAEbIP/jmdFe4jsO2W4QKh+Q5X\nTohbevzSr/k7gNyfb7SCzBrD7TcIez2hiPJ4UZWVdS5q/KmOxy3Ecp7rME7b\nA9cz5WEa8tsh42iSA0nFVXXoX7MPPIddz5V/u4/HkgVdTLQsNU9kx0RZkOjJ\nzKq5OTaRYcUidYtRpzLORs6TvoJa2KzJA/CatdTyCnKuYtGgIQrcTpLeeEbC\njxd4o75xMeGstzyDhRWj63O5uP6vmk+qj9/4GfUkRcCmxEaZjTZ4wEh8XST6\nIwkt5KQE3BRzp7ATAvV2yOxhztRdS+aBAPW52gbX6apvyrmpg2H1IphkcAve\naL7urnizuBth7WLsfJ17S77Kc83+23PnMaWNTf/8X8fEXOt2es77rZpQcVPt\nyR3oKB4mMbgGx8A9l1sd/zTzaGDVMbc4G/5UyavpGy+qLoCOWcjxhR4h/f5C\nP/n7RIzF6tSVXFw6EDkBzSZlBMY6+bvl0NL438CDhd8Vgvwyszjyfv2SuNcr\nYr0t0945ieIsiAoZKW6c2olYo1bwbV6qeokaJzOw8JFuklzXT4GYNNLm4vk5\n70WNhEb7RYKFQySV5uG+ti+Aj49xSvCEQ39do1FxCYUY2NzFkroUG7hRfidF\n8IkxSrWFMFqetm5yPrihbCx1rNq0MaQPVff4gy1DXyApol4GLvHRj5dRtsr9\nL+Kz\r\n=nfKL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a9abcdd1b877b863f1f9323f188ae7bc916543bc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.73","@balena/jellyfish-sync":"^6.0.136","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.76"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.137_1620237333937_0.23566377017675855","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.138-renovate-non-major-707f49515a7ce026518258dcb52300cee9df3bd0":{"name":"@balena/jellyfish-test-harness","version":"2.0.138-renovate-non-major-707f49515a7ce026518258dcb52300cee9df3bd0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.138-renovate-non-major-707f49515a7ce026518258dcb52300cee9df3bd0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8ad8cfdd2ef3a1ebcd4af99fbeaf3b320fa3fca5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.138-renovate-non-major-707f49515a7ce026518258dcb52300cee9df3bd0.tgz","fileCount":24,"integrity":"sha512-GWeJR5obxUPv/ltNRqzmt7xRh9Cqw8E4P+P9j3oDKazt+Yy7sbVvoRa65kPmq/aiqqEfU51LJMmQbX/OlIanbw==","signatures":[{"sig":"MEUCIQCtKtgAQsNyV548r83X2y79rfXKd9G/EfmcI1SiWcKDeQIgPTx5FDDSbQ8wMFoyv56jp7UQHMdmuvm+eCUodSY/0u8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94548,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkvGBCRA9TVsSAnZWagAAhc0P/Rwe3wnl9WeXTvcOeMlc\nVxpafZLSNIzh3ZDKZvwpmIJqBz4B6oWSPovqVPIZcvaQUDPWWki7C2xK/p17\nHnR8ITDd3SWocgYTzlQNFG28vUO3iUo2pC8KnfzjddEhE4X9O6rdeCrppvj2\nXQqbuZ3XOz+kzw7RSn0dhvcPlemTf+nAtpWBl5+4fRbhjGdgRiX8hnby3pVk\nShMSEVlzPqq+WIhIupEPKZ2mXRf0Wy7Z1AiN0WFsy5Bocuxo/RA9/+2gO1Vd\nS4Kb/kO9SVrkTWksYznCwt68wJ/ByhzxVQjdisBlS4PzUyoVztCmyzHk/dku\nIVd0rq0/uv0loi/egBf6kBsiMTLkOOnxoTTKexSs7sRlJjD6lmGyWL768Kyb\nHJuINyJtvzBTL93IWELDxBYj1m47N45o4sz4j8hJfJI5m1G0ZYpxN04aNg4b\n/Zd6VMFB3SzM57EXScCl2Ip4gbGCX3mce7CAiApOBVhz60guFVPNeiSy8cP8\nIsbFG2/BMqXRV1T9f3Nt2FcXN+AfqZDOVq7AXM6H5ygusTqvBsPdA7Ree1XO\nt7yT5L9C9xrvta/20qycSxScwYv6l/28N8CSSp8BlGZyhyw7wrua3BQYHvdS\ne3QdSNtVTVHy4dpcJhUEN/QyvWxjn74/vULSSQ8C7Qq0xJSniEgcWvbIxZ7K\nuM/u\r\n=o6OU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"707f49515a7ce026518258dcb52300cee9df3bd0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.74","@balena/jellyfish-sync":"^6.0.136","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.76"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.138-renovate-non-major-707f49515a7ce026518258dcb52300cee9df3bd0_1620242816417_0.8587444350265909","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.138":{"name":"@balena/jellyfish-test-harness","version":"2.0.138","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.138","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eaffa1690f233f12e24ecefc5d1e046e233bb3f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.138.tgz","fileCount":24,"integrity":"sha512-wxIx9KbpyfajBjVSenS7/fg/voxU3UtGTx81/32PKqklsPX2cVbm+midvw/PEW77R5myNkd9zxQ12x4YwiIQ/Q==","signatures":[{"sig":"MEYCIQDkzKTumE5xunqO3yxwh8Pw/AxHLtJtEOqwQHgrD26yjAIhAMBcaEJbyqS8ehr9CjcnJP+uw8x2B7VkzweLizVniWwi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94488,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkvJTCRA9TVsSAnZWagAAo24P/jimGsHdouL5rp6/1zPG\nsg6LRxWigT/cf4yB0nuqqMjX9MrUxdYlOmJNDleFFqzrbIMGXmx6OH2IyOnG\nCkMW5lVza8yYUk1iyvDnFFZF8J089JpTZK/xsjhkOkMH5Hq1q15bW5AKCJfa\nGsV881GOGzqXFv6lN7qM41MENlCGBwqHnAU6/jY02KEOt2Ysdv9R4lnNGBNc\nRGu0k0jCshTu1+l2zntjIvyl5wQuvSjGnL2Kw0Jp7L0q20/dDXz+TKgQKW4r\nwz+a419bKUK6dOzUsdd7QbgwRZKbYGwZcEo5PDMJrHPvQsYGSI/CzZ1i4Exq\nUO9R6oYoRn+4gUuRGvD1lhhQCb0kB55N7AWdm/3ft3XMKu6qmLjmtiobne7z\ni0HLY4eGVNBaXKEcuxagBHKjXogwKHpf1qJX1mjK0LgRl/69H/mAWjkjPYp7\nzWEhKy5hKATPlBFNvw5WogAd3gwqaTLJPDQgAiWVA77k+s5Itsgc+3+SV2+5\natCbTIIXmpxB7SJqsLSLHJtbpWsi8XBWJPPkWLkF2Q6SpNCsIMkYRo/A0VzE\nsfyftYk9FbwgXj9cVDF+IFu1+Q1lFY8kyWnLFozWRxuKJQLbXxrFT8Hkan9Z\nc7+kE2ye6qBbJbRVgNPh5Qwm0lSTorUwG/1USNpK0TBi4fmOwy888zkSwHle\nQnum\r\n=A9Vw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"921cb55d24356541ecdcf105f487ec2cd8d1363a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.74","@balena/jellyfish-sync":"^6.0.136","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.76"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^1.6.2","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.138_1620243026696_0.7091218951810099","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.139-renovate-catch-uncommitted-2-x-9c42205eceed44e91de53e95a175c1a389f5e499":{"name":"@balena/jellyfish-test-harness","version":"2.0.139-renovate-catch-uncommitted-2-x-9c42205eceed44e91de53e95a175c1a389f5e499","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.139-renovate-catch-uncommitted-2-x-9c42205eceed44e91de53e95a175c1a389f5e499","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e05746961589a21d3ff3f6ca5d9f3433412b7c7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.139-renovate-catch-uncommitted-2-x-9c42205eceed44e91de53e95a175c1a389f5e499.tgz","fileCount":24,"integrity":"sha512-tXf9MuH867X1k+b5hGmgD0rNaQNCs4EjA3R39yYkA3aOXFPL16rdruO8zdg9TrrXYUXEjOlLdmAo0n4V/8n9LQ==","signatures":[{"sig":"MEUCIQCwF07FdlAaLbRaluLqfwpyhJPYbs60eFQiEmjlMYrC6wIgYZtDhe1jkPPIuLk9TevnCEtHLu7MP2EgzvR7lo5j+eQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94655,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkwJyCRA9TVsSAnZWagAA41MP/iz2Tjsb+OHllclAHDtU\nJeaR3kcKOaA7IV+oW0EJI/v1IITHWyXUeWJcofWZJNHA0AQMtadnHsSOt46w\nUdYZSqn+86Uu/ZzOFYHInYjXIWUlu9Pt4qcCNnrRpLcpBTOYoY2AzCzfhYRz\nlWcdXQZB25NC0ctgUV6BVspcM+B4hhdCDfzA24fokM3MIDTwR1sWa0me3BLM\nD97r6zEREa/wAKd58kcpkNF9+YlOvLMcbiXMoPZkP+Ar7YfUNvTWa+ck8HUO\ngBNytlR+Iw8uJag9bTjvNpVOfVm4Hjf+qo67FzIfGxvfjr51PoxweSwWxf82\nzhjeGLvpdvsAtgjf6lh8FuOpZCMXdAVxjkRYc8B/E3KOlsRIi9ug84RSNrzd\nSpyRh19cE4ubFbjDpS2A+w5bGhvJKdWO9Kwz7oEtyRMQInFVPWqWzUte+rGI\nZMy8LcQ2CZHvNPynnTy7tfRSxLDAzTmaqpAntEUkO2Obw04zvbNATSMPhTiB\nxpi3MP34wyxyaXkx422d3m6KO34g1tkmSAPXjZC75bESnLyFY7LiB57I+Km+\nhsb/QSVFmdbOxhsR5XnZhq+fZ3yDHBvWCcgTd8O63t8djXJTSwwq03muBIdV\nb2lPbu60F6XEhtBcWZyiTJIlzpC68sgOYvgErWUwmAQPELE7dgzeU+1qzhY2\nBDn6\r\n=R35h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9c42205eceed44e91de53e95a175c1a389f5e499","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.74","@balena/jellyfish-sync":"^6.0.136","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.76"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.139-renovate-catch-uncommitted-2-x-9c42205eceed44e91de53e95a175c1a389f5e499_1620247153866_0.005700118537584009","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.139":{"name":"@balena/jellyfish-test-harness","version":"2.0.139","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.139","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"746f547630831efac5be8445e50e18515c1cb34a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.139.tgz","fileCount":24,"integrity":"sha512-3kat1YCc4QF1CXoS+nOFqOMXKCm1DuhwbPzPUNhbdig4KGPizHV/NpXhobG+Sje1cVJAYLpV4m5IIb4i1GO6dA==","signatures":[{"sig":"MEYCIQCRZ+EnGktVPTkwvPZZrlMpBhJWfkAf8u99oJzDzTeVHgIhALdkH6+siNJPppxITu6b3BgmaTlOYTDpsMggbnXZ7Wje","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkydyCRA9TVsSAnZWagAAOR0P/2hHWk0PEdvIlrXyVmEr\nHpmac5XK9EEW0+cHkX/r60ujGiej1O7wK9E3wC3mbSFk8q2cp/nS9JVSEMz0\nchio3l2jRXz2tKmmUC9hO81uqkuvMMpbX/LJMczaq2OWSyGb1PIbJGfg5Ztw\nm/eNl+2FueCaLNuDjAZZ58BYtUTDNGBkHnYExYnLLWawO2BEb4Kpau0Gd6nI\nLKIriezXA8gtFfwnP79k6pbBj0dP4e9dT/fgOy+hC72ghyHKpFiC3z/4AIEv\nXKCJhB2Pt8jIZbTO9YCSIHwE1c5nuAS/A4qaCCf4fOkaIoLudsv1XlToLGhV\nvpSjlNbITl6ojsYESW3EDrZ04ZaY4eM3RMr4smNyz2A0SBY9Gw6MjU+10Fg7\ns/afd+xHHw+o17gZGV1nZB1agTsRBMKQlK2XcPYuuaBIUZCiPVimLp9s01lN\nYyYL0XLwLHGC4q25RS6dE9xjAks6reKqH/vb5HyVMCwxbMUThWsyVb5CAseD\nQNCXzEAgAzHh/BpZKE3upyAg0J7/U3iy9DoUF5LVl8mQflNBlRPsP7InWNRQ\n2Y9gHb5u7gFrczg4P9gTzUVbEAO2YzdT1yWmz+diluY409TfZM8edKSz+Cnb\naQtXsGVldRk5W1uTfLUA2wj8fakoys8hOqXRkl9jDatoUIpEJY5apeJl2cSc\nfP+T\r\n=b11Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"67a797305aea60f5d758dd378bde16c784b17301","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.74","@balena/jellyfish-sync":"^6.0.136","@balena/jellyfish-queue":"^1.0.56","@balena/jellyfish-worker":"^4.2.5","@balena/jellyfish-environment":"^4.1.9","@balena/jellyfish-plugin-base":"^2.1.76"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.139_1620256625940_0.24529817424280087","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.140-renovate-non-major-66cb27c8badc0eb2e54f56153a52698e3098704a":{"name":"@balena/jellyfish-test-harness","version":"2.0.140-renovate-non-major-66cb27c8badc0eb2e54f56153a52698e3098704a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.140-renovate-non-major-66cb27c8badc0eb2e54f56153a52698e3098704a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e4709234bb7346a293dcb85739002410462c0fe8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.140-renovate-non-major-66cb27c8badc0eb2e54f56153a52698e3098704a.tgz","fileCount":24,"integrity":"sha512-QK904L655nANKow8I9/A7GGiNn4QC9IeRhaxrMErdp0NE+qn6hDjn/KAe5TmB5Lh+TnwmTxRRx2pdZ+LB+X3Bw==","signatures":[{"sig":"MEUCIFJ3V4tmGwh/aTBN8QmRauTPZvxUSEwobGwKQnDRDYKXAiEAmM1BGdhJUA+EeouKKuEEHQjhiC64UjLaMCF43mnfyq8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkyqgCRA9TVsSAnZWagAArfQP/Ahk/cSF7Bt+9fuv3dij\nk/Tdrsat6PCMi1Y9BjLVhJ83NfuZc57fiZkqAZiend2q4BJx+zGbDPZDLkAx\naTzxU5yh8+r2knQWax32DgP507y3sheSjUebEfQNhTqcs5Hxjac2NZ9xK2GP\nPiMV+r1Y9lkfSSsadoVdSbJH5RLwDATjhc+EQTlxiLiGJxkvfg+C7zIw1ua/\nM2h45I1wAG9+nTOmlbwmTp5Q/m0jsoMjlvZwqd7SbUHGqQDOaXkAf47XRpbS\n9gK1mbzIfjZRdDhgfuBKWJXxJgdmT5/NzmRm6OTsptKuWrji6TilIoBwyD+z\nBMOiP5yy9XXe0oRu2jtpIK1xNqYAIFk+PzGtvc4McP9jrSM5xPPVcTnExS06\nZ+b8Aq6tlmW+sx/3iJJ0p6V7PJbeLArYRV8K1SmaqAJfJo8GR6Apc5kFmq7L\nKY0klDSAR0fB0Q9MNWRcKikh78Zl2jCEi3gMWqvRL+4U5nt0t9S8GJxI6pkD\ngm/ICS/Bm1+rmGBnVH4E8+znpqaE6C93A85ROVM4YcsXXABqX+C1cdBnPXTw\nunwkWd4qDYPCWUlELtc8YmqoTkafN2eGomI80Vn+Dsyvw1fc/FasO2BRGdf9\n6qt6JWx0qPS2s8aQPKSHt16Nu+N7rcdvcdUJgkiR4+Y3dX6tfgmQ9K4fBu1m\nf/4+\r\n=wO11\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"66cb27c8badc0eb2e54f56153a52698e3098704a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.75","@balena/jellyfish-sync":"^6.0.137","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.6","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.111"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.140-renovate-non-major-66cb27c8badc0eb2e54f56153a52698e3098704a_1620257440374_0.01194204481390515","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.140-renovate-non-major-5752720a217d5ce607b9ea86fff77fdda5b0ede0":{"name":"@balena/jellyfish-test-harness","version":"2.0.140-renovate-non-major-5752720a217d5ce607b9ea86fff77fdda5b0ede0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.140-renovate-non-major-5752720a217d5ce607b9ea86fff77fdda5b0ede0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"26348e17c7af647bcf2f718dd6b3ac4e5f710c3b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.140-renovate-non-major-5752720a217d5ce607b9ea86fff77fdda5b0ede0.tgz","fileCount":24,"integrity":"sha512-RaYjLgPD9A5iUTlsQVn9d5mj8f5Jy2BeXs+Fsk1fE8Xw35G8eaQCM/disvD/XIgGUThV+IN5DBjfPvKfa5z/tw==","signatures":[{"sig":"MEQCIC6kz7h3FPpTYFdNa1NFbni6JDV6VzslSs1bkVWaIgcWAiA7nyKNIt21KS/416zyzbZuTaX43ZEXMeZCQPCYAgiPyw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkywTCRA9TVsSAnZWagAAD78P/R37kBxarBn/B8QEns/h\nf+zS2Hk/r+Vx6/yQm3F9Tw0M0QisQIw6O7A/ftgMBzuGYCBqsW5wirpulisx\nXl13FqIWN4QMdUGfS3aKlqnfZH7mYXlGuEJOdVK+6dpViVYyMfF90UkK/hOq\nvEajp7xyIFLvpQ82kzKR2dyAe9dZm6TNSSCUpxLs+5wJfIGc295fqv+iP25o\nAnVizDCpxOUdOO8ZL90o/MQMWVkRX0hPkTU2ChwS9qBwDxpgBPrMT4uxzX+f\nUiKRhwdZyQcTbbqGGrfTtxfMgF9OeO2R/Tu09sYR+feHQM/TMw0H+v4Nh4Yq\nhA4HlT1LY134nmKZsdiM1Ek7hcvYS9oYB6HpUEij+UIpCZYyN9AqPa2tAx9/\neMclGakoy25ibNtvLiV9X/f4mU4YKuV8XIHPDNCSK3Yhw6OevxYNxNpMEgj1\n3Q+dkzge6DuSt14FRSuJGYIZ1wFX9zfZMaJcys1Ra6L5TA3HSirsuKY8gVqW\nSqPt3NMryDqv8UhJ+LIOQCBWpiReIPXjsM8oJQdhPgGlospxdgTc12iXQ1cF\ngxthNyD0CaEkdiPFwwopKXiGyvcIxbAY7W0kO02svQST/Hk0dyT9kvg1SqPn\nZFETtxqgWwJZBi65a9Hbz5PNeDLy5mI5xMfC3mmG/OjvfQSypFvTie3hu2LP\nBogn\r\n=cpx3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5752720a217d5ce607b9ea86fff77fdda5b0ede0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.75","@balena/jellyfish-sync":"^6.0.137","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.6","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.140-renovate-non-major-5752720a217d5ce607b9ea86fff77fdda5b0ede0_1620257810966_0.9678312581205839","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.140":{"name":"@balena/jellyfish-test-harness","version":"2.0.140","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.140","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34ba20cca1239f94f474d3af0621bce69271e04a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.140.tgz","fileCount":24,"integrity":"sha512-+B8RofZfdnG3/hJzgRVZTQxvxPaY83GbViBSI0dZEMSdHcJ5v9MeFrtlD54q5sDy2No8l6j7s39/n/mjJGludw==","signatures":[{"sig":"MEQCID7EC4S4yA8xvmQxQ0qvbjDNmbvBylrorF1zB767CacwAiB8fgNp3M6PWJlkVSlsanSNR43YUpOzWmxWv7y0YdH2wQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94654,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgky0HCRA9TVsSAnZWagAAJcYP+gJXCltavUTHSYPKJu8g\nltG+vtcfTUuLZs7ozYA5Tw8sr89WMDW8XH2Jpk2GhHlT5I2hai77fjegwVOo\nmJSnMqeZPZX6vqTM1KxZOfNwuYMUV4EvqEf5AH5uJbpp+kGVsL6muDYKgmYZ\nAJds6M9qD66Bd52BcWYmA8TdaDZ7hWZwfN8nL2U0XN57NKsKmOZFcGWlGvCP\nmCgE+hwOG3Y/NZeFOeji9plKgbLix1dg6PDt2lD2k7t7tJrZqCWB4RPhc478\n/v2n7DYletESfVl+kndR6uOSsneXgtdd7yEyLbkx5Ax7WB/xFxqTI5wH/OmS\nZmFJKfUJKsyEFbm4vjknr3H232f1oRr3ClmkFe2uc/GC7xV92+7Y7goPfU2W\nIpZSAIP3jsegyAAGIs/YH2Mk5Iih7KiPmEASSVgUKR5ITNPLcpXwDz/eEEGu\nKfSQuq6TVdZwXZd1Thp2Muj0nlQKlDL8B99tZ8uwbxUWvZ1S8U8S/mAKdyt+\n3bsJiIm5WN7dTwV8qiAsvW0Tx48N5jv+1LFq65yYLTPJuO9BXX6g+MvCJ56M\nvMfFm8tdZWaiMW6754wmjlh1iFqFzBuQhxmSSRSulOjtvGvOFYBy3IptCFfc\n0/g+bb0g+qowpzEfNJgrTUJJNySvct/4T0wTpv5tN5z3A6uWOxZ4UAHQpkq7\ndO6X\r\n=NP/4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"116cbb315f9937c65f3d82ffae0e60a1dcf057da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.75","@balena/jellyfish-sync":"^6.0.137","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.6","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.140_1620258054876_0.1302729103169824","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.141-renovate-non-major-b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09":{"name":"@balena/jellyfish-test-harness","version":"2.0.141-renovate-non-major-b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.141-renovate-non-major-b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9927a298e8c7e29ccb2b791054d646f595b56d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.141-renovate-non-major-b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09.tgz","fileCount":24,"integrity":"sha512-rd1eZjZzvNXbj51mnZ1H7iZaxsPLujwLIugN8UzJnjqokPmeGWCQz0r/kezYjKsXV+BFttUesoEeO5kpRRfcBA==","signatures":[{"sig":"MEUCICsS5tmLU8QE2x1TCsYP65mK6p7DxycmX2I1dFgkgICLAiEA4UbhI7PNlMLxl4NWMJZ0jnP6WUIPgZtxo+73XEdCA4k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94784,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk0PLCRA9TVsSAnZWagAAtRkP/0uN3HslMTc3Llpo69wZ\nShhEsfQCaPwkubi0NjtIJ7slj+8Cxfx1keNVK69vXnJrliJUqZib+203UJBc\n3HKMzP2t9RFVK7szzQ4ImfykHPRjwy29ScPTU8AR6EnRhGChGcDVm4wOxIrv\nN0DlxFu/KpHP587dv01ENYwt6LJW7IBQxjtdTNtfnpCqb3WmnWliL4uEtffR\n0H2oxl0POSA/uIkppYT0t30DJ492oPEvrcRiTJmTHhEJBEQRnPVVtQh+i+/W\n95vDHBx2Hmic1iunbSNsvOy2mmMxumBh+wdUwYhXOBvFi99yJOTgTPKhvSjR\nIcMR8U6DOB4BBXJc/Y4/oIaZShw59BnWsiDvRaVosQWmBXOUoS8Rjad393Rx\ngRvTcwrAowKnnB2lJb9Uq0fRXArARQjo74EV29CFkY9N0vmg/KMkduyJVAhg\ns5Ej6sKt4tvG1n81idco08DvB2onOn8ev0OvbJUzWLk5o6AfLPdeQq8NoqxF\nOYC5OKcuk8MIWo5PmvdFQG5Xb1Mhz98uPjKivyhmi4vf8EkppmrgqP+NPU7L\nqLpGOgo2Mrw3m97QkQxT2EaI5Q625KSlb0qq3lS+emPv/nXMPAUPoYjFhlY2\nJ5IppFqS1WDPnN3FsY84nn60tmZM0a1DP1gyoYMuK8XBk+bR8Rb+fvxdKwUD\n6/Mx\r\n=oSPu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.76","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.6","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.141-renovate-non-major-b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09_1620263882775_0.36807671880891535","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.141":{"name":"@balena/jellyfish-test-harness","version":"2.0.141","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.141","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9bece379922947f50c47518a2be2576c2c918450","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.141.tgz","fileCount":24,"integrity":"sha512-mKYSkd3Atp0+ucFStdnFE7Slaz2ZmKdZSEqPgpfZjOyDrdt0OWRXrcZBayr8oHenAFaJN7DmOxcMFrdaLIf2jw==","signatures":[{"sig":"MEUCIHbS8OIT5BPrrc5Qm0+oRoL23wYJmHMVmPIJHcowANkWAiEA1AoxHghtqSHMr5SXuyk12Hh/HZOCAEZzRa82JBmE4CQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94724,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk0SxCRA9TVsSAnZWagAADXMP/2nGrMD63MhOrZnP7mmq\nlFMHtM674oZA7zsacvPcea1uGb16pZQTT1FghcAhpmT7pUTi4EwWQbOTmPbu\nzZq1DtScGlEdBH77sCC6pV6TAguiQUGSiMqKOdC/gxaFu132C1I/REtiTEVT\n1loUCqPRJ2mAi5Hd+IEGKOWMCDXMZ7zzDsuCdOHAPCbMLXlUyj/E3x91MOtb\nVGRnsxT+eOibjtwNpMx00Ayjz73TFiInKLrFt2yDnYw0yseYPUr6NFowNuho\neTixTfahtngUKptiRdAD/op7WY2+UIWIG6WewefhXd7KecVFjxTwrmVCesuy\nAHvi31QXNjo7D/Z0i1rWmlba7yQ/7Rz6Q7UUKy4zEB887zYp9oRn5bU70Axc\nJLVQ/HB+6WJm30SfK0P4VHXuI+IuwAfoIuaeXgjjZVoRwKeOM3M3GJmj6BEP\nqKef9V/Yztj70kGMqh3oPJTtvf9B6K9J0KuMx9w5XSIa/+HG1tgxoPjCowfs\nMztGZrv3qsucvJSCHDfl9ISGuiJxV1rZ7o3nIfhLX8wvBRMorOHzr4ROUKQv\necEbtj/GljqBpJLer8s5qeFd3S41IjPFZeED9kQ630layKk1822cJdIRsktM\nBxZalX8Tf0aaX3nVjW1xFDWUVVD4u4OcVbrYj6OL2p8pTELQPlaLW3KLg0yN\n9MGo\r\n=EZvv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a5c046f7994a3738d2c1de9308fd1bd8c7c35d6c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.76","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.6","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.141_1620264112790_0.913831365848772","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.142-renovate-non-major-aa1b558e1cec16eabb03609cc5e00c590dbd9215":{"name":"@balena/jellyfish-test-harness","version":"2.0.142-renovate-non-major-aa1b558e1cec16eabb03609cc5e00c590dbd9215","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.142-renovate-non-major-aa1b558e1cec16eabb03609cc5e00c590dbd9215","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d41aecf13b94c6cd6790f12e1f92bc403e5c7243","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.142-renovate-non-major-aa1b558e1cec16eabb03609cc5e00c590dbd9215.tgz","fileCount":24,"integrity":"sha512-AEmJYn4n5tmtiOYqjWJB0UFxz3qgAd/JJvO9UfKlrU1YY1GAHI3PB7rLQKPQwYyADpPiv3/9INCkNQJ7gYOHEQ==","signatures":[{"sig":"MEUCIQD1eSmP+COFK0w3Tgi/rn6URRJjlBWkfjrA1Kv9xB9tUgIgM7aij6i3bEX0tVcJSAbs2hffR7dOD3wE7u5S0Yfljv0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94890,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk0W7CRA9TVsSAnZWagAAzkIP/0UsuAuuvBj2wjiUK6xB\nVSF30+vtqCVtJ5sOb27eTcvnfYy0Gec237PnRDSXO78ieaAH/gtlNaOQb3Ii\n0keYiirkTrokiGlNDViULYMvBS9fS4ZSj7DjCTMmSF0DNsPOEPaNShI0J0G3\nA4pKD3b5rLesvVeCOjeU3gxqbr7wZad5fI5k8DpUlLdKScgPPi1XaKWy9Zf4\nro6Cs6wH00vZGVOVoXJqinNRbYC7EYWxyw9/RiUwlMBy08IyOLTFSgqwi3jB\nq+HF+6YJe3S2VNdIt1pU7EIVi+Y/f9ze1KFZlt2xRl1Qm8tiZ2yjJTuX0b5f\nBB6+ixEXNZt/Nf1GEXTTr+8VcrrWSxItvHyLbkxZGL/55TmvgahY4V/ksKbn\nKoY6x+v88FmZOIcl8FdmIKBR1GuTWueyy2pwKtD7ZD71QOQesRqvNDhBosWU\nmVWD4AxOmfdcGHj2Pf8LTdxOQh2AfH44LoAEylVUa2RpKy/NP0J/in7iQVwD\nDGtelFv9NwTcJA4RWWBWoBkl4Df35WQaVxANzVGKFveFrLEvc/NFgxoniBb+\ncQSQm+snblwz2IzNr5HBHOtvqcPvISAWhEvrYFGh04W1fIV+DDLGkND6exXY\nz0JFLuVLwIH4/uLjwbDwGJrg5nZYpVmhZXw4POGXcRIcM5Lj7GQ7AKWopRyg\njTHo\r\n=HOLh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aa1b558e1cec16eabb03609cc5e00c590dbd9215","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.76","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.142-renovate-non-major-aa1b558e1cec16eabb03609cc5e00c590dbd9215_1620264378785_0.09672032459538316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.142":{"name":"@balena/jellyfish-test-harness","version":"2.0.142","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.142","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7dbcbc7e95e1e7d3d987a54305bc42ea56c063c7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.142.tgz","fileCount":24,"integrity":"sha512-EWYzv5ay2b6B6OPTppwvulOkag+5vuNuqao1yFPYrZ3jdevTsKtAanM7tHYmmxvqrtpaZy3EycOlcQcBwY3B1Q==","signatures":[{"sig":"MEQCIE4T1ancQD2qzV+/5r0+vwpn70oicCyjPIU5kz2lOpDMAiBz0ugfud1xj+YXYb+yJcSeIyveuEABdgE+c8zmjklTIQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk0c8CRA9TVsSAnZWagAAeo4QAJ10ER9biQIXcMjSVAXR\npYjc2DJ7cyhHl4/ky0tKAWYLSUXuYAIaMB+dJzNdwlLOrjl/wOvKO+IFPSEM\nG1Ktpu/bxzu7a/IKgO828We0qF4m3kwi5d92BwuWE2ammchufEVJTEyFlso4\nS8m3fm4bsZX4qqiPSAG9XKoZtYqozeiabSM/h46ckJzEZy1sqh6UaLEx+/24\ns7EDdqO4H3wZxTGHiV00+Gn8bx3izQAAU4IppQuhYCXJlEdgsFdqkYrJifXX\nwnZlZjmUgt5Bbwxm+GJfWwTu1HFjWCqiVW/A5TL+VC8+dIvXO4Ng8moGBNuK\nMeaWZDQzrX5Z/u7yDYuTYfNf1wWl4Ht4/6k+7i10i4NXWoltT8to+xqpdsVt\ncus8SKrl0A8w2dB+w889gMx9W/kP6MxWVMeicWG7/ScDIq6j5v80bwBTbfzd\n4O52uYegNIzAiELXCSma7gcofd2w61ndp6Yn1XuzwxhSHqqxai0YkOQ0oN2M\nRfWO9E1yWGT1s+OnFdT9kZQD7X8Klof7A/xZ9g12Q0FPRvFjX7btPY64eBJr\nug+ReERP13o8NxgUd75s6bMRClVNMb6mUX7gQSwzRd4tVBBn/xI416eIxDt0\nR6BtjDUZ5Ue+E6i4z4mgFWlVBLlDiWvHT/KOB8B2/Kat5dL6jByFK9BKLDEx\nbPU9\r\n=ZS4N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb869cf3d2a3d9cf2f4362b296b6884549e45829","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.76","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.57","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.77"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.142_1620264763572_0.7636877924276739","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.143-renovate-non-major-5bb5863c9ef67f21a3ab96ba12f26ed8795654b2":{"name":"@balena/jellyfish-test-harness","version":"2.0.143-renovate-non-major-5bb5863c9ef67f21a3ab96ba12f26ed8795654b2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.143-renovate-non-major-5bb5863c9ef67f21a3ab96ba12f26ed8795654b2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"282575e55fdb206bb6fe40e56b7684e8fa357509","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.143-renovate-non-major-5bb5863c9ef67f21a3ab96ba12f26ed8795654b2.tgz","fileCount":24,"integrity":"sha512-hG232iZpNym9VoruDR+NqZzRwcBgvW/k0v3zhyAFIbPKb9kedzjZtTx71FWKOWuRKqOb+GQRUn3y40fT2/EA7Q==","signatures":[{"sig":"MEYCIQDTJI3AaZ3FYxqlkl+m2/p2vPa+UnXQ5YoisdL1RmZLqQIhANQM1iK9/Y7Scq3FxIjgYP/zd2uZ1smKg+rRCvoj7klZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk1+NCRA9TVsSAnZWagAAAKMP/i4jr4L+2CrVeeQv/Bnp\nrQI79W1dEe7hzA/6LqhgnuM7nj4g4HQFVzMFZ9YG0J8zYxpAtUKAVWr3Mnry\n91SnBtVlgtpotGm4kfQfmN4KXlRptddQ9vE4YX9R18zu6go55W1v6MEuIm7K\nZpS0X9d2V5E+R5bQdRwEoKSkKJFIzwSzGz+nFTBfogPrFU301dZ+xRQ3Fh/E\nDCX2suOE9S2YnAVIh2sAU6zBNmA+E1BylPZRji72Hh6KFwsKlQ3up8on5MKQ\n0zEwpDpBBdZ8VtJ84DIsRPp3aW7gH83IvEiQnpCi4Q7FcrcHpwl3b89Hrua2\nYZA2R/91Dg/TefucTlu7u85AlB0z/GHKXPF4agqmuVqvNBjL7S1APdD+dV5F\nFu3oxZFWJYDviihiHEEY0urdp5HCJvFcO8RQbR80Ud4MZlHDqwLIUSXC3eh+\nirt1dUCUVrwZ9aY6H/Wn0dq3lch1BkQiXw3KxlEyHuP3+gESIix3tClUjy0b\n5Nkdep7rKYUbXBkPbKRLZWFN06awC4SyW7dDEAAw/ROWKfdFx7fukmCpIpHx\nvx0vmaqzW/rLXk2qiZiq/jMjBx6gbd3lUY4gMGB0L2VFNeYXlEzoGB0iK5kO\n57UF44pZkJQVt31tnVKyVuI7Dd15KUTS1JdxGt2fUAf+tvWkGlAgkJjo/lwB\nl8vW\r\n=j5PJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5bb5863c9ef67f21a3ab96ba12f26ed8795654b2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.76","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.58","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.143-renovate-non-major-5bb5863c9ef67f21a3ab96ba12f26ed8795654b2_1620270988570_0.9282966122007859","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.143":{"name":"@balena/jellyfish-test-harness","version":"2.0.143","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.143","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93d1faa66b70f62d320c3c0dd6bace5face0fbaa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.143.tgz","fileCount":24,"integrity":"sha512-JxL1tFRZVD6XL+aaVDybR4SMGbZPJfRJnX0jvAeuAVV6ZAdPIAqDbifKHbzy9jt4LPwtCoB8WjE6Lh6EO1fr+w==","signatures":[{"sig":"MEUCIQCRFDM0ONBxhxIm2qI+bz76E7z72H8pL4VSv0/Jw0NzjgIgdFxst0h4YxE2Z2ITelyPxrLFfg+ArznyEhc4O+4gVyw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":94900,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk2B5CRA9TVsSAnZWagAAx4sP/0pu07fFlx7gdJjwWJCL\n6YjFMvGSzae6P61tiUntrAZ1P3k5KZgimEfig4sEBEksT7NVweuMvWaSyGqa\n0Lx647fazk00kOEGsWGctOE4HiTp7IpGJaVgzkqv5VI9gbP4SUXqC/MfpDJ+\ngDWSI5QPfYt/hfvl1NAVJmn6DZvFBYh7PNiCH1PFbrfKQUQuxWtzkUvthh1+\nqqleKvjBvqiZx52TLCrK1z+FBWYMxQzrMgcee8SEY5WLtNJMkm0rxoXxkW+r\nVi9OpjAywjq8zGwnkx56Cff54wJDTpE/fTigPs1T+08uJZYk9tt/ByyYKXCf\nqcdQNx1aGn3FayLNWkuKmZ8k+uiJcnLOTGIwI/R4jneHjBJZiRqrE8qjmSob\nXTTKewOq6E6tQvicmKMujbpYIbUEqdMtsUdMyajoRJi9sFyZfLLLYunRNW/a\nVb9m7PpV5qILcouNuJe6fVXwbFkOp3SXptICZiZRj8kW308vDBoPqhKdn/fY\n0qX24a47FqYCDTB4GqED7YPg5PJnOwiQ2IF7W8FweF0wnh2xWwdn2sBiW81V\n6n4tcqUA7YYEn3/jZbmHgo15p4vhrj02wZ+xVGyqjFJ/gXcc27GTph+VAUuA\nqiLRc37qBeW6scroNxbftVyc/ibJGs4PthLiaIaV7rX+SbQSjhyu00s5G7vg\nytnm\r\n=AR3j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7013a87ded66629d1748be6d79080d2cc6ff165b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.76","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.58","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.143_1620271224552_0.07835987654563104","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.144-renovate-non-major-4e55875a864e458720cc33f06ccbd146133f37b1":{"name":"@balena/jellyfish-test-harness","version":"2.0.144-renovate-non-major-4e55875a864e458720cc33f06ccbd146133f37b1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.144-renovate-non-major-4e55875a864e458720cc33f06ccbd146133f37b1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce08a33a1ba0a8911e848d5d815005f3713bbfc7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.144-renovate-non-major-4e55875a864e458720cc33f06ccbd146133f37b1.tgz","fileCount":24,"integrity":"sha512-4D3gjnHEu6E9zyA4xgXU6aknlQO7Dp4ovZiNi2YHqXHCDp822cK0Mekw6N17TPWE05ReFMGRqlevHtrqEPYz9w==","signatures":[{"sig":"MEUCIFDYoIE/2ApnpAakzUxb3F9ksFbO5AW2N1qSIim+OpJTAiEAtEJRiw2gPkPGsHd0yL5JukxU25Fjx4Ug7XbuUeeqxRU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk+teCRA9TVsSAnZWagAATeYP/1+AxJD8zcFTDRtJqAB+\n5lMUkphB3ep6KbeiZxefvtwqRIlQoIoIajCAgQLOMOj+Y6VTKAtdoB4IMYWL\n7DDCIa7Xoe6yqXXoKXH04oYEdTVoxfzZfufKC/xZv4So1OXKLgCXRQxwp/Fa\n9HOFPbVLLQQ3p0zQ0r2jOJVHpb2PqojICAj1EbpcyxdGd0VAB5b7lo9j6Adp\nmHM8gbQWMIcUcdFKyYC8w1DqBzF08waUHLsgul/DjJyQXQafUEQUrUyEHyZQ\nYv+cGEgbPlLQBgM0fGM1O/n7pdP89GARijunAJ860DQcR7Vx3pgGVn+t749J\ncZx8izAbSfzmfiCLpzKoY+CT+vgTc2NPwIyXR6MPhBXDKPaEY+nAnFrPSBrr\njV/UP3sdZIh1JrPcChF2sNQqAfgm1WVbAIxyRfuZ1nE6e++BMciyMFrTLTuh\ndHnxaZG/EiZmoS6AnfVGhf3l6LOfEoBN4JFBhIShrp8TIdvocW9v//MNQ7wY\nWLTERph6g+57h+gTTZ6gxvU/SyTsbxivmjC8ftu5NfFRVR6Vp5fqd7ldWoOW\nSy+6j+NjKO4We50ILMDBrPAeJ9MSY40O0BwtvfeOSIGquUGWtpNSWghPqDRw\njUdpqaiksT692lr8e1cVOYdgutzoj7VzyxlyY/fcq5tRlXuwtrMPskvQVgCT\nrWd2\r\n=695R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4e55875a864e458720cc33f06ccbd146133f37b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.77","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.58","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.144-renovate-non-major-4e55875a864e458720cc33f06ccbd146133f37b1_1620306782257_0.6881433454825048","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.144":{"name":"@balena/jellyfish-test-harness","version":"2.0.144","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.144","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b5b0fa5fb330781d59ff7f27bcb5d1eba1347ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.144.tgz","fileCount":24,"integrity":"sha512-g68lI6x05gJDJhnjZvsK+8i1ZphLYG2SwyBJojIWcwH9EMM+6W9Hb4S+ygcfRcMPdYYPOuRTpXp57SVjZrg3aw==","signatures":[{"sig":"MEUCIGJA8PGLGCje7mQ8zQ0H7uxiLqdrU2Cc++q2rGtylMGXAiEA1vh4QxKZ5ROwGxtwbdQ/aV/o6Mn4Uej9Lf1a6sSk6N0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95006,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgk+wYCRA9TVsSAnZWagAAenUP/Awd0UG0DJ8HkLf0+gxx\nVPWTrRLsArCDUCfZHL+xAwu1V8NB+M4MbOf8uEa4HmXFB5cDOd8/WM9g9rZy\nywwdmWAu6F76zeh6MRFoxeojD3FnK/yXeuXcr6ZzZ28eA5lvxrGHVQSztKpr\nJZB2EG803iyW1R5NpKced+daZ0t8DWFemfs2EEgX+0qxqhyPTfVgR3AgKwn/\nGa0Zz/qk2arU1Q2ZGlRlkCOOiVeUBY5oEK68WZPZN3GWYQhL0BbtJUgokvp7\niGGoLtFKHKfc52fG7klqyZG1U0evHErq06QV56SisxvL+d/FxMjWcoeaTl/M\nW+0P1Ra/xZFr7zgMR2fNlwLLsajNssHZcKL7mFRPpDp88cIyiN8bTuzFE9es\nIklwdLgvgGY17r690+2OSSiqfSTATd+bQCetxENnan6L/Vnkdlwnxmkjl1mq\nQEMHs4/ge0jCfKzkri7YvaplxcBJRaRIaqSkBl8AbdjdXMQs4X93xB3EUE1o\nlkTQBH1UBH4wUth0fLBQE/9kymvJ/TPBEO909ErcSnPZHuCuGbkc3KltvdbE\nMZQ1zMfprGvVubFBlVui0nG8+GLBOM1qjX/Sc+yLGtT87G3NNh7ePc/qQpap\n2ntf+2qZweAmc8i8Cr2Q8kXdjpFGH69vSrn6d4inDYUUNdeLe+AGSTslbYuI\n9uSW\r\n=dF+M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6aebefb42048c45712d465ac66c1300c3ae99134","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.77","@balena/jellyfish-sync":"^6.0.139","@balena/jellyfish-queue":"^1.0.58","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.144_1620306968527_0.4016911257539808","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.145-renovate-non-major-17a6a8d0c10df78032b571e0f6c6309b60ea69dd":{"name":"@balena/jellyfish-test-harness","version":"2.0.145-renovate-non-major-17a6a8d0c10df78032b571e0f6c6309b60ea69dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.145-renovate-non-major-17a6a8d0c10df78032b571e0f6c6309b60ea69dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f41d42519f7c2ae7cc0feb82d9310a1dffba7e70","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.145-renovate-non-major-17a6a8d0c10df78032b571e0f6c6309b60ea69dd.tgz","fileCount":24,"integrity":"sha512-Axw+aYmiZoTTTkX/wZvf6lufeXz57yd7c+oAwZIhTkYfrDEAQ76bVTINBZLxsDFZErfvVxqioyuxZ0087cnjZA==","signatures":[{"sig":"MEUCIBjJi04ZDjA4zKIVOnwzXWVmlplDuMv4+dOCfrHA5Oc/AiEAufIFSqAH8w4iAGMgRK1nB0dhzo8fp1oCG5EAwbSa9Lc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95136,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglJZMCRA9TVsSAnZWagAA1O0QAIV4ksfgCEy7HAlqjo5o\nDDXYwaVvXPsijiFhk16AIwWvW4KOJAzuP1jfvmExcdUmRjpNLabgf0kkNLDi\nVxlzt2YvoRH0UcvjUrei5q/d1uEfkDT0QpErfw22bP+VEQRpNvG9UKNbxqoO\ng69qg1QJgu5OudDOqufmJxJPCgp9DIOF3ha2W5l6pT7qSLUQppqvl5DRa2K2\nTzyVH/GPGSUOzBr6QSjCL9VQMdh8xczXFlFXrOSimqWCt/mBZ6sabd5/Q2w9\nebBrIROMj4I1tfY7+cFxxb8SfQTU33UeSbk8gJffq65Ikg/DxWu/Bdz60w7Z\nI7YhsMUjtC8EtzHEq2kP30pQFUOWVrHVU7JTnerlmc3VAEQMA5LRau8cD+Js\nf9To4nVVTR8xn88GEQQ9s4BEeBy5p+6/tiMA691rkK4CJO5jU86MXA1Ivwe6\nJXyZr4JC/f/G0eaB1tIi1shSix49cPJ+q282irTP7aOOidBS7A2rN7TCNYEX\nXhhXp0/juT9O3wivhRXq++h+gO3wZADqyAy8dKmPbs6w8Gk9FCNUNfNAITlR\nwXeRb7U3Fw5Zwz1HPeg+YxCBwaMBOqFQDwX2BhHr6nN6K3Umr349L3bit3bm\nMgW+aXjdJbBngz3e2DOzYPnYE/OH8fOkCKtPgYRKL8m8HerRGxTaGKZx4U+9\naoNw\r\n=PdGv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"17a6a8d0c10df78032b571e0f6c6309b60ea69dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.78","@balena/jellyfish-sync":"^6.0.140","@balena/jellyfish-queue":"^1.0.59","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.145-renovate-non-major-17a6a8d0c10df78032b571e0f6c6309b60ea69dd_1620350540378_0.7612423634183225","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.145":{"name":"@balena/jellyfish-test-harness","version":"2.0.145","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.145","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8d7b2ec0658b3950f5be96d27554b6fbc2761c74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.145.tgz","fileCount":24,"integrity":"sha512-d1qn6vNE5I54kszhRAODiEGVL2NXOliVpaiYvWLxv/Ix5V975ApnKvLYguCIXGpDdXP0gFZS58Vj16hV53B1rg==","signatures":[{"sig":"MEYCIQCQltIhjb72ghj8kBkEEs/InLbDrpYA44OxcOZJ9hrvbwIhAJRSlRCMXQhUha+0BN7GTH9uWnhoNFFz0p/uYsyg/cR8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglJccCRA9TVsSAnZWagAA1hMP/RDKg6ROu+loVUHRVvEm\nypI1eJqcs0pDSWPg8H6PUhkdsnLBAiEXs32YP8TpGJVjIOe3iq7CCrXn87aJ\nTyMs6XV1kHwP8j7Q6hE8a2CrIapGWDikr0QCzI48SEu/P1TgTyj0MJ0F8Adz\n/zRgdkQn0AKcjNW1bARcF5p2O1zOomIeLNquOqP21HhW2VxYfV/WjsRXikX3\nKb2Nh7Tu4VYT95U+97O6BaNf5jflX0bk9qz0sis6YMTFeWP22iZF2zZAjwNe\nrtwxD1cNRuCoDLjtIcBoK9bIkzIwWqHS3lEjMwPVpzghXymc1O9DHOdDbuZQ\nPOokFRYq7UmBWc12Pwz6CqjXnjIIHD5lkWAtrisBIyBsOfShfxIuja5ndpLM\nBYbJg2Kybe4ah2bYegVaBNF11vb6OrEioJjxsWUMip3AdwVL9yVgzGfX7D4x\n1IxwHqyjHsvx0Yz4zBkJlhR73k3tIGCAt9omIXFw3NWTyTJUb1FMfH4JV+Bf\n0AMw/O6npFXprCn0gDDuyrVPRij5muGlelYmYEkKY/rCiwbJLSCWY93D8g/V\ndk73/mP4sDMpKKKR0Lg1Pi3KutMDweMbYNGoDmTgjtTu36rzQlT9mFRHY6hm\nAcrE3Vx4jJrDQPvTyMNjdtCZahoEwhvWW4+yQbls7Mk6T3LeMlOjdVxhF9tp\nO7r6\r\n=7K+X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"23a8d1312730af06d7768350a327d38cac5684d0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.78","@balena/jellyfish-sync":"^6.0.140","@balena/jellyfish-queue":"^1.0.59","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.145_1620350748164_0.5229071630095261","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.146-renovate-non-major-0fabee671cefc4c7d6ee7274a2a26325daa6474e":{"name":"@balena/jellyfish-test-harness","version":"2.0.146-renovate-non-major-0fabee671cefc4c7d6ee7274a2a26325daa6474e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.146-renovate-non-major-0fabee671cefc4c7d6ee7274a2a26325daa6474e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17e938522895d11173c9db8ccf5e66bad2733b35","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.146-renovate-non-major-0fabee671cefc4c7d6ee7274a2a26325daa6474e.tgz","fileCount":24,"integrity":"sha512-6iQqoptWapQZwYyQ+hktEdku7+KpEotbT7BDDgLiGjkJa8jm709i2jaHrQpJZt0LDCoUHtgWIGmVPNPTZPPiUw==","signatures":[{"sig":"MEUCIC0x/Pc4hJtWf0GFLIGEBvNKlTLh8CxuDcptv+su4usrAiEAz0tSdJvE0MsL3i5FB/bIf6SIyOSSLkrfj+mrvwQhdOQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95242,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglPE4CRA9TVsSAnZWagAAiN8P/jF5qOg4XtY9o8s77y1p\n8X8SKHBYNoZ2HDpAoklLFlN6l2AqT1k+xgZtSPpb6X3BLFHmcwo0FfRajGUu\nvARqTcv+d61XhQLEb19/0VUtRhFB8P3tNUldwDLXxQdsIbCgv//O1Xelj1gD\nJMCAl1c9YcAKSrd91cXcm9jy+9X1lLNQ5k1p6DEAdgD8v0pw06EGzr7AVgAz\n1ZHJv4qhDGm8eOiji5o/U/QA71yTFi94OuMsvH76fTLRS+XhSUILORuLw605\n3IL3KZRQsdWicIMScFUe0p1rXazJ1vh8WuQmeqrerOzEoOtDAJk07cJMez0v\nqhRs0cT2JlYbQ2i6jUZhW+w4PmuikrAvOzBrnV0aD3PxySm1De+xBGGSlw30\nEUCl3YT8wyT1G+tWilmUq3gLJjR0ez2YIw7yJQrH582wd05hIXrkmysYzCG5\npAPMU9ELwS0DE57r8rZjrytzLQwJyFJKNKkM3EuqqsO9KFu1+HlwexBhMms6\nE3CpGb9pNvD2mOYv/hMBLEVTdmiGRD8Ug5bV2+hnB7COPJu0YfFBuNcDEbOL\nitajIbb+Udu1GYJMRpNXMQWppJ+u5JxgzsPnR+uiiXPpR9NJksWTaoCPgxkv\n2Tv5BL7OGi/UiarNbu7ohjJWt3AUQVmbHy3yWNutiHr9NBsiBe3oQUpVb77D\njFr0\r\n=rKOC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0fabee671cefc4c7d6ee7274a2a26325daa6474e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.140","@balena/jellyfish-queue":"^1.0.59","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.146-renovate-non-major-0fabee671cefc4c7d6ee7274a2a26325daa6474e_1620373816224_0.5855235905728775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.146":{"name":"@balena/jellyfish-test-harness","version":"2.0.146","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.146","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"af4810460eccc68088cd9b81263bcbfea119b7cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.146.tgz","fileCount":24,"integrity":"sha512-KCYFkByzDm5G7nynghyXAV7Ztbz4Bnxjy7iwYe1gxcW6q70RpQI9Y/BB5gnkiEN5GvVNQtIzvJDeZ2JtaDO6eQ==","signatures":[{"sig":"MEUCIQCiLGfGZkgggRyqmJHBlgoE76LUqzfiKgRy4uQknIxq5AIgHxanr2HFN3LdbN2TfWaN1s1DaJpWeuZzinr/59YEKRA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95182,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglPIMCRA9TVsSAnZWagAAkocQAI+M66EoBH68vLChTnUp\n9W7M0WU+8TSpHLH2pR0hzsm85pjgFzqejFlCYX3kxq06A3stFi5jWEFHgZrC\ntUOk56/tecd5HFkeFOWc6QFL4GIiaxP83plIGsmXBViU2v/gOsmnEFLgXDr9\nR+GQeOsj+P7u4mEABioQenEIN6ECwOJv0loHjYzQEpxl4pv8JSnjy2pdWfpx\ntrJvLi15r/STFwb5pL8XHyl14EmG+vVkNNe1x32dgoGiuAx4ztVSrDRinrpB\nGnRKNPu31fcVUja5gQZsQZpnN0nXWFd920N2UNXukIwKqSRM5WjCv2SVLEav\nQPEZ+y4rF0ljlsDnhXhUNaUBJNuQ9x3EYJT90ZO8f2SiTeklsOezoaxfuCMR\nQvbA/0+4hTGOm9sMZi6+C1HjBCKCC7Cd+bKvCWn+DFjlMa2aml4KFZZSxefK\nARGnywZ4R9iHCVIhOKAd1FXAhPqL5ebC03wpPJIGa27biOhCHAI7kHyrbrKZ\nRH2KVXPFHTkjigxrIZuV6IcB++5eBF/HFnoiHG58ju+mEKNBCe5seKHDRwvg\njE5sDCb7wDrkz5vNYvt7aSl7cUqbcWVPg9ksxszaPSSAoaDnC7myI446rGhA\nMQ/bakuICScNLhioCyA+eVpgkeGCjFzesXAoIJQSAb1Sws0kuzVCPmECZfcp\n7eQl\r\n=V788\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ae6a9e008d457c00b7cb71b372ea9b6c595e75d6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.140","@balena/jellyfish-queue":"^1.0.59","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.146_1620374028000_0.6300276692965847","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.147-renovate-non-major-d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198":{"name":"@balena/jellyfish-test-harness","version":"2.0.147-renovate-non-major-d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.147-renovate-non-major-d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"622166fb7423ed21dd52edfede9241063d91d182","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.147-renovate-non-major-d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198.tgz","fileCount":24,"integrity":"sha512-Npv29/9+wRcvW7SRCn9PZd6IPeiAPXqVXeuS1jPEF+NFhUNViu6btOOAXbq7gB0kenyT3tMm1UicCIONbPW8hQ==","signatures":[{"sig":"MEQCIBPgZVAMpl/l04zRt+H8kH64T/gjKYX78sQYs8tywyThAiBw/zlO9x6oTthhS3EHJxBOp1QDYQqrHThu/z/9kKFYfg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95348,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglVTnCRA9TVsSAnZWagAAd4AQAJapbTNzJIzfMvphGsdk\ni43TZ8QMY56vek8t2OeqFrW88qKkeXjp/bxYBLnAYvHEmN3FXrbLdN0cOW19\nS6jnOQObf3DG4eMXfUDULQ8yEYszA5wN8L9cZmGFnX0YYSrNOJY4IoOeJpgY\n0e4EI//sHYiwDOHRcdwdp/AVuT7aZ32ncD36TuvnTEBRzc2HA1xCk3OAGFCQ\nD6h/v//5rcictGgWBF2Sbkyc+RQqtGDR0Jj1SmgcOQ0p7p2q2gNOwbMnP8qb\n5pwjjsYYO5jyxY2nv7fSupWv0xQWQBx52F+ccoCPm+EK8qG8G/NNeTzHdHXW\nm507rGNJH3s8+FHS2X73wUgnpSDrwZDIqQeNckGh08luQNW64F0emcCwRmLi\nX4RHdqg+wfEN88uLtEexClCRSrA/U/PZtu/ze26OT/zUUhYkgNG+9bHbd+Z4\n2NNzajZQQfAlHcLmHFEAPffxDxm0XvQnlVv4ich1oo9zLgqp+o6U7eUa9DkQ\nyg0OnRbvqXCQCgq8XDgQV9i3CXm1Cpk/euJ4+wc+6DHvxRBfZMQr9JuhrpQO\nioPUZQZrCbZOn5rLmkoYS9hf3ZOHyCLz92BiZTDmW1mWQH595Qg5DRrNrJOv\nOoZg13/ugA+PblGL/1b5quKUwIsGk+ZAqB1Vfn79XBQdsKMNZr8n+XDOur46\n8CLd\r\n=uECM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.141","@balena/jellyfish-queue":"^1.0.59","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.147-renovate-non-major-d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198_1620399334873_0.27209420285717667","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.147":{"name":"@balena/jellyfish-test-harness","version":"2.0.147","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.147","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"edd7c235f33fe0e6a71966e05120efaf7fb6ed9f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.147.tgz","fileCount":24,"integrity":"sha512-0zgf4vLdlzvMCRBLvQTlGWCO/FtQ2igjZe1h+J3ch9XXGvgCZXn3r9JMc2YonOd8ZzXSZUoiIX6Q1ooDUOeV/A==","signatures":[{"sig":"MEUCIBWRa3upwzz1fyqAzWVg5CAwVznzN7ziwncMCC9YARMgAiEApXpYq4M80cXUow9+W5jAWghYQQsk5mGz6RsMbLfTYhs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95288,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglVZkCRA9TVsSAnZWagAA7hEP/1TyQ6bZ7EKiwAX13TtC\nrolmm4C5iQuPq+yOqnH6YUuAP/8hokFeh9s5fP4eCl2bofc6q9BTw//gtlqw\nmz4kok2Opr3l0pMkjMR51EOPeZVBQvlr4c0NPUTNBDioeeTu+LD8CcCCOUpe\nQRLXTNlYEup8OhOv3rrv7pOe1UeGqSqZ+CvbwURaO7puzGNOg303SNPAi44s\nYTdUpiOtnVXPASGrmsLYikH0d1t1lpaVyqr5E9A+g57zBPj4v/SKJI2eY9LH\nN1atgMhrfFHTM6FaywiGoQIhKHTU2SM/NCfBrzGeIhjNTX1Ie42BRLSTkwqS\nNyIAA4TEOyO1aVvyy+cu60OejcOw2k8/H1Cri+6WJpoR0aEF6yGoklZYkFYV\nYPPNWPkHnmwCpGuabtTMnooEMUr3QhPnA4flKrHAl5BkqVQeodr4c17A8iNl\naIcIaHkEeka0lqT3eqoKlML3HUm41mJ2XE2VxkW45vdIv7CMi3ffJJ6EAFk8\nBYaBLOiMv9TKNmGv44jkw2/mkFr+S8NuzOoKOMWi/wnXJw4kg5kBi7d/9xZ3\n3xDHE+oE/AYWxrMsBuS7imhWFt1Vv4KE//n+8EliwXxQ7TatzZL1Xk97q2G5\nludsuWefuC9hjCNPkxtFjW4jvfHuTCRtC6KPIWvVs+uB5M5ZjF8Vyr6CMttD\ngt2c\r\n=vTcb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bc6acd80ca604ef17d6e275df9d172e64f516641","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.141","@balena/jellyfish-queue":"^1.0.59","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.147_1620399715612_0.07536577904029795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.148-renovate-non-major-595771cdc89e1c60fcf04fbf82f2cf11ace61cfb":{"name":"@balena/jellyfish-test-harness","version":"2.0.148-renovate-non-major-595771cdc89e1c60fcf04fbf82f2cf11ace61cfb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.148-renovate-non-major-595771cdc89e1c60fcf04fbf82f2cf11ace61cfb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79792e1c871478bbcf73af748887453beb3e3262","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.148-renovate-non-major-595771cdc89e1c60fcf04fbf82f2cf11ace61cfb.tgz","fileCount":24,"integrity":"sha512-N557eMAO0073raQrxO7a2U2ODwcrUiGn+V6l2j73UBfT2aF8zJd4CxHfCYn8bMk1O9OqOz8N6RZcqpXz2EzpVQ==","signatures":[{"sig":"MEYCIQCa14vU/R0fIeAnWuc0PlI8PY0rnQfzVN1fZHdIDmq1/wIhAL7kCPUkcQ2nhLOvTxnz5CCXfcRCuCFKharAkgAfa+z+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95418,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglXBUCRA9TVsSAnZWagAAhBcP/AlyK7avtf6Ezqs/pBMu\n22WuL7XcpeoKC7R857R+cSjDjXbKFSPE1K/cD8vanrIXwafgIBgzWOIyaCqq\noeyTDswe8yN2N6FxJdla3Wm59UIhlxiDSppcMLbk2vEQO9yXU9nibHNg6vg1\nEBIQUE7IGmmChodohubtClOFTfCCAR8kK/ou6D8dOFLbb+QlLuy1K0Z5ErQb\nz4VoxAaZroKHHxkJnmKCUBdDm5jD37jh8ZUl1uG5ouxDEkFw1lW20ucObYup\nmEOtd6eQuMTYkXtqbzw3WFoBiABv58A6wCJftsTO9/kgQLZFQZzXFdIAZeOf\nhzcgHDObREakx8tYjbguYq05DP5OvZs7LcqbqxjwKl4UTrjy+7sECk3oGi54\n0gxb1hVQio8Bx4zp02Ovjkox5UQuEVjpwYsyYmYeoDGZu0E2jrTRFSt2PJIB\n7ROH0b3osgXXzTItxwFrwxDKiPPY7uM2swB8S+lPSMYs0J37vxjKfXFCYYU1\nLNeUGrH2Dd4WHLELFgHaH/XrSvY4Su+rhsBe9yKqQXJbaCHZjkybyMFATwYb\n+Sy3KElb7n14l3taTWs5/ID1S9xfXqGhoyYjux+QEj4+EpOqiUzebOJdOxVW\n3wtF/drBjiqpUjAeki94iIzkSKN1Bfb6K8UbYnYZe9emrA3+Gsya44VUjpe+\nRRPF\r\n=wv9r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"595771cdc89e1c60fcf04fbf82f2cf11ace61cfb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.142","@balena/jellyfish-queue":"^1.0.60","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.148-renovate-non-major-595771cdc89e1c60fcf04fbf82f2cf11ace61cfb_1620406356175_0.47653305778825494","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.148":{"name":"@balena/jellyfish-test-harness","version":"2.0.148","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.148","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b35cfa1701f2ff8b9e8b2017f2c89d6b8bdaa9f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.148.tgz","fileCount":24,"integrity":"sha512-5Q56pyb1w2uTZ5AEE6aYx5oBjJzlrTq8HpOSq/GIBOErK1ygzuM+7FqCqql/Ze3JdNUYgE3GvPjMv5V2vUYaeA==","signatures":[{"sig":"MEUCIHj4c1Me+sHQl3vAe7MLWjIW2B6MNrv2jiB1kBv1UBTgAiEAto/vGtgBTi9p0ffMS2sxSONWjuCJ7skX/T4zzlBaOnk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95358,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglXFFCRA9TVsSAnZWagAAQ1gQAJQxv6p/6kEsKHzr6MGK\nSk38OiwsWQ6ncR0AleEwDYXiRzkzHDCziJ7hU3nf2KvHvFr7tVVMHWorsze2\nm8ZbPrce3O/bS7Ons9yUYfZb4k7x7tnlZdZRH9vIxWfis/zKVQPgF/DLxGzj\n2XWzu56D/VdkeMOHBtnZVwudxVfHEVOI+fHXgXOuSJw7K64R/RYVrJr9CDUv\nEOl6hV95CQ3wgx8mqo7JMMN1zxgS4kwi/Ju58bJB+LjAgchXe9BRMHnZKw9J\nluvLqsyW0rre7ivpLC9I9e6xBqBKDOh+8DmTl22sbGybTikKmf00ab6Kz3pG\nBhRKhJMRRDUB6LK0XyXeqjjGuejvCX00D3AEFF3SBtmris4f64sf505xnfVK\niVSkykdfIgQQ/5bYN53cPSetCmfLU1y/8jTPTOT9l1ag8/6AFqQRSK99kdnI\nKPN5xp5siGMHySl5iFcfUndYtFOznj8GxIhyMFi+WrBGIoVHxMWvXKmi9Pkk\ntnvySIJJi+tuaim+dIXQbZ+jbq3Gh3DpLAsewl6OefJD/AN0yDUm7rMZgcoe\nPrQuUcaphXxMVlHFk5k+fRgsU0xz/V3/d4iCFrSVv6Opl8sUzRk6/nudlZS3\nkfBu1BOjdc8JR0hKjJ6STKXHLBE3qWlSeCN506zgUCoEo4H1xQrPixczNZLX\n+xp3\r\n=xkdt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0525cfa89471a375f7eaee6331678655fe37b5d6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.142","@balena/jellyfish-queue":"^1.0.60","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^10.5.4","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.148_1620406596639_0.72339397858843","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.149-renovate-lint-staged-11-x-f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585":{"name":"@balena/jellyfish-test-harness","version":"2.0.149-renovate-lint-staged-11-x-f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.149-renovate-lint-staged-11-x-f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5a34d6cb37de1b062907ef6923e804fdd4ee36c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.149-renovate-lint-staged-11-x-f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585.tgz","fileCount":24,"integrity":"sha512-5xSEzq/whQnDQFFD2zcC6WTw35TdjyRyWtUa/2OrZ0niiIpdgokqtp8ybz0I4d5nLUH2NXDOlVOkgPJk6GTcBA==","signatures":[{"sig":"MEUCIQDNsK9H3hHINWd9wEwWsZG+rngSvAAjMvPoGtiLfNGOkQIgddlUEu9yjvd9rIvdq0vLrZUzh3L6s/Hte3aNFkWy910=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglYb2CRA9TVsSAnZWagAAb7YP/0NuETOvh1SyAYyVwM1C\n5rEoWIOFZxvit8k75RDuejmpEN5b28td/ww983R5b2sj8a74wQ2wveo0/4Vg\nVwjeqSHEvZ/kGKIl0JN8jIQEgSwpu5jPmV6uYtvzRKDcXAzKWnefQh9oQe+Q\n2STTX+89sjOo0iG2ZN42amM5mzHG0PLQP7FJgZpwEcZYQAcLcywyWw36Ai5M\no+NOOdsl6P0nkDDMHjYSvgcvfcqaZEcCkD/EH4vTKdOeCLBGy31lFk8kK9x8\ne/lTKmhsararX6Omz3LWFDA1QcdTWTyUXgL636GfcTh+n5hgecPXVC33r58W\n0yIUtB3X5eKVBg30vOCzXwfeBCwmgrcm/Mi+2HeG79YIapnt1H8IdhjRRkgm\nRW7i9FRfrhT+/fx5bjRrd3wHizCfRNLBKSXuUXzAqVHS8y3dr6ggK9B0o5Ds\nqU+23+B7hfEk2JTBdr8BplP5T9tu+milVNN6q7ze5KIXw0dUPcsh68bihw3n\npyjj7hCZT84GOs73qkBPYLMQb9auATaKKL+5z1K8L67eEqZ7qFJIF/Ueqv6p\nUJB71jnKeosIzk82TKEqEYZUCE3mgOnqppaOLnFFbdyG5FezwLs3hIGtoXQd\nY4fBEJccO5sn2i3WtfmeScwE2e/W9syGXW6G5K8Fj+Y0N7GhHCUuhwA2bggo\nt3Mc\r\n=4/+S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.142","@balena/jellyfish-queue":"^1.0.60","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.149-renovate-lint-staged-11-x-f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585_1620412149878_0.719428153966654","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.149":{"name":"@balena/jellyfish-test-harness","version":"2.0.149","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.149","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ae7aa78f11d9898795e1ac6cddf81a389281700","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.149.tgz","fileCount":24,"integrity":"sha512-G9eqLeTZ7TuroClVl9XdDBK4k80u9ORDL4KYor1VpkEsEfYVJRjAJ9qSpcB/WVQm6YCZUWHNiMgS9xkDt1nz2g==","signatures":[{"sig":"MEQCIFs3bLpSj8UXToL/F462YNGYqTgg7ra25jqad22pEWooAiAR4lpY39ldvWMoGrH26Dtpu7Q2Jsu6MIYL2audRpqeZA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgldhpCRA9TVsSAnZWagAAc08P/jz5SpBKlElcG5o29HAP\nN9pZHgwQvzhLAOal2qDwqNhhpKwwVhpFF4k1GfinsO+WT04qlgSo5J+5Qr6r\nmvTvDkNspebycJRlWTVNOom4p0nYMbxz3cx1hbXKi8vnyeTBk8X69LUlvX/z\nEimO/W64bB5EbdSrBktzHXzcseLTqXZWUVirWLe7c/f6HWSqlVrlscpDx3Dg\nH+OvHitqguHl1BzJYe2DYonqdHIoFo7DHxZCaIb37fP+NkHT5o55RQWSWgMp\n07b0CFYg23OBSM5kbK/VozFD3RohcRWJEp+nNM1shZZHJrcLhwAoBQOngsFd\nQLy6Kzv4IucQOotwWkHUBlGpJxTx0MMH5X4SGgK5IuF2cVE+pzKyXDEmeJlu\nCI823cTNM/98Z8F72QBnWeMjad7lLEhaMwnQBTjq4dO2h+uQtjUoF4KlNqv0\n4745UmtRFwlU99LQrDM0LqhyvUGs8b+CCeFE2ShCWvW9lsJRDChyByEzjKpJ\nvhx3xA4S3reQMNf3aLNiQurKrZCZ1l0jD3wqOUlVoVSJNCJ69uG9O4u313No\nXDOTBzCkw/nU9lY+273zf7WrenvK4c5QsMl/fJnN8/g/T+96+/czHMHDKrl8\nUvN3nNZXzNUxg61PduJKVSoLryr1i7mge9dCtg0CQEClQvqq9DcM5KVFGu0C\nxskm\r\n=G1LQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f5d9a045603126fc58dec4f85cd060c7fec32df5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.79","@balena/jellyfish-sync":"^6.0.142","@balena/jellyfish-queue":"^1.0.60","@balena/jellyfish-worker":"^4.2.7","@balena/jellyfish-environment":"^4.1.10","@balena/jellyfish-plugin-base":"^2.1.78"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.149_1620433000981_0.4624610210770248","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.150-renovate-non-major-ff8e6cb73232f7a15e445bcaae109cbb3558b511":{"name":"@balena/jellyfish-test-harness","version":"2.0.150-renovate-non-major-ff8e6cb73232f7a15e445bcaae109cbb3558b511","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.150-renovate-non-major-ff8e6cb73232f7a15e445bcaae109cbb3558b511","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa99e6bf72f445a5de0e09259be614d7f12ebd7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.150-renovate-non-major-ff8e6cb73232f7a15e445bcaae109cbb3558b511.tgz","fileCount":24,"integrity":"sha512-HCVICe7Id3gSmUK6Xa4QJ6WaBwoNu56mIG3ilWlZ8Q+QGI2XD16X5rfLA5a4rbkOM4rtyyeJOym7n9Lhlrbydw==","signatures":[{"sig":"MEUCIQCuptsXIe5zSIXt5gma1e70votEov46ZUtuZrqo/ff7MAIgDMbh0glxYe0XySwVvm5bHX+D/JY5Qyx2QCwCLdHJE70=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgldr+CRA9TVsSAnZWagAAmlUP/3YbME31/rTf+dZJrTZ0\njW0OoN3ZDN9j6zmeqdEONcms+41JnA3Ag31JwdPz0g4SVdB5k4oULDrCDTA9\nrrOGWdL3gwFUdmkmGcqyxpWoeRet1tULfJL3gZQ8co9gH2Sri04A57NK8B+A\njkc5nRhvvkiBmmlNPTzKXvh8OIKaPVsZBj9zUgDJp27cqswa90tcymqoQrz8\n1pJvA4qGdGXr4Liavx1CIkevaXDg0ptGiQAc1Elcqd6fL/zN8xppaOKsnsE9\nY+enw8gM4XQAwzh+AXsMauHMzUB7DYeMdMPHp9us/OnsOFcoY02hkfSb1Qzc\ntmjjaqInF/ghmGQI3uyrAhS6E7rJE1tpe4lDh4NuNAmMjumxpHl+rff0ovDB\nnnBg31zzQRieS1ZB+61LdZK1wRueFaMvwYrb93O7DGyokUYR9bl4oLUns5Hk\njSkEioX64iB2keHTuGqX13H3Frf+8uvJSmHIO9022hu6OwO5aBiNEfqouoV9\n8VE+Gcgdlcexvo9lldp4yKFQ4bIBa0ZgGquWIe3V6wAIiYgWzh1YwnkgMdVn\nOISlvAA3cOtO1QoA8h68WGzQ0Vl8muRFHmWmChJH84Czi/t96No3tXgxiE/r\nWzTfTR7ftiC2ZXn01H/Or1al+CbmQ6L8+7qC090J0m1XnC2R5QwxeWShBc4I\nHUxW\r\n=ovhh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ff8e6cb73232f7a15e445bcaae109cbb3558b511","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.80","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.61","@balena/jellyfish-worker":"^4.2.8","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.112"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.150-renovate-non-major-ff8e6cb73232f7a15e445bcaae109cbb3558b511_1620433662131_0.24905636532466957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.150-renovate-non-major-1c2ab136d03122aaa3de8730e16e895292cb849e":{"name":"@balena/jellyfish-test-harness","version":"2.0.150-renovate-non-major-1c2ab136d03122aaa3de8730e16e895292cb849e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.150-renovate-non-major-1c2ab136d03122aaa3de8730e16e895292cb849e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e2c777d06514c7633fd5b4a9d528a86d9bc9945","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.150-renovate-non-major-1c2ab136d03122aaa3de8730e16e895292cb849e.tgz","fileCount":24,"integrity":"sha512-KUYoedgT3K1twWlyuxmF8/twqtF/47hFEg8rtfiIzfXn+8Qsl/rekCqveIHSNEQyBdvvjg0bxcFoF1E+BmWnkg==","signatures":[{"sig":"MEUCIQDjMYQzAbvR+yTlhItZzbseCHkPyiPEMaMwzENL0dp1wgIgRee9ahBXa3q+0bpjIbgyt0r7VEeE/kSimRqkdOMzzSQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgld7BCRA9TVsSAnZWagAAD60P/096Gk5kUDKf1FNUNArD\nDlTPUkzDQq6x2LLeoi1GcunkCQV7mcDKhy5xPBFmqrOS+qu+3hSK6CM7qHHF\nfESBAplYx6FBQjURJHkp9+4w7XXHM4Jm2V+M2xPMbSzQI1l0cHhas/ByTq0e\nPSuK/jDouOLHQg0LRKgDcNtzxConRi56THXlRTh9XRD2FWzDmmrSvlhk7qeB\nlWkrRYahiifGN68/uFgm1vDbEh38tnC5YMGHXEufTmOxCa2EfhrVnlrEDckR\nzU/4JOGXrSqeCSsBJr9gzDvWK5be2DAnZaZ82seMDUO7Vg2BR8r9fzDwi3NX\nlrm5YMyYtAvV8x+K5mWZv4tmTHhWpSiClDQZnVUoF72LNGfWxP36MqHXWuqN\n0UUII6oKR3Xjp2fsJNbp3ja0jDAvUc5S4vOMTr1xBjfcPOKsBFN8Ooxbf5Eg\n9aDwETjvrAxZ9aYkUjht/RF6ZpODPdZOFBcwTH2fCtkcEo4aR6iY3AEqOxLp\nuZ3w2ITEYDWHGUh0Vvp040cuKCcElxOhJRTqqokeyCfuaCyNopuRm+dlKNZ+\n+xnOCs5QP+Z7shi8IH6P2m16L2Z0V+Ktpz7QVjvTmGt9x/2adnkKYe7ugaSv\nKqqEStxpTbr3I7vgqzb/KqRN19KTyMnxGM/eST9RCce0PhtXN6joExG3rhpD\n09ck\r\n=tL9v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1c2ab136d03122aaa3de8730e16e895292cb849e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.80","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.61","@balena/jellyfish-worker":"^4.2.8","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.150-renovate-non-major-1c2ab136d03122aaa3de8730e16e895292cb849e_1620434625434_0.9405270120787943","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.150":{"name":"@balena/jellyfish-test-harness","version":"2.0.150","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.150","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e017a30c2d4c40afa1f1ef3269cd7e3e08647fb2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.150.tgz","fileCount":24,"integrity":"sha512-jKU0p+83J5mxRDUNQTtrn+B4tCxA6bzbrAadSGR4cL0uRKhomB+zbdBBinuLMxQonksSayPqdRSmP8au8BGweA==","signatures":[{"sig":"MEUCIDIQ3icc3yQhKZ93U2Qj9KcVutyucb35KxZfvHz6INlsAiEAjmUubEGGgYrinYkO3crsZsQRlEU/l6Jmpl8jnm1Fzno=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95518,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgleF9CRA9TVsSAnZWagAAR0oQAJzVVE4fl+x9f7femfZw\nW4Q6mj/iZn7ANYP6c89+122YAY8TBugsTzMIZMbllECGQX/IwDE52WXuopm+\neeayni7rVvximjweQ2j0Pff9I2eVgFC+kgCt3kR9Awsr3is4zfKWXwvhYPwH\nGAWlOj028MC/Aq8esJXY5b03qkgWO+SgjdpCwCdF57LRi5r8F8++xgeLfGXL\nLbAKp2GfhHip4Ake1vaJwHVyWUnVTi+jDL3IAF4Lwh0L68x7ISTT0ZWruABU\nRH4F0uQXQEyiYEK3fu7D9xB8zLCk6paEMmnOgLUHfjtoX8KVmdAtWiIJ4v3B\nHs3NKCR3rGxjrPbUV1ceCdEML3Zdiv6FlE831lwZDFK5J8YyIfso0ma9U7ks\nPuv3Hx2niru8hkE9PSEGdluKKu4dkmfCyhXAW4SGOYmTwT+F83RH7stsSEf0\nZO4NpWPvsActa4of/6wxVkV2ZyC1416/k7Hw3dT0uIrnrD5EIQq0WdumWk0v\n7WphWXnDTahzHHZm4DNo3TV0ZfTIr3tqSBjOwtKwddG46QozDw31YoUcIkEy\nyILodpYjauQMV2zcxWoBnBzPkIH93WddhQBIXYlYvEZDMdn7jkaOhbWyYAAH\nRmwoFC2vHRM5bVO19eTyPrj+SLtJFHi6yealeLBCHIvxf2HRIAOAmBQFSrqO\nm6fL\r\n=d41O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"32bcc830971e18b6e79206e809b94be646aaea1f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.80","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.61","@balena/jellyfish-worker":"^4.2.8","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.79"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.150_1620435325367_0.01908150609124548","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.151-renovate-non-major-8da335370b1a61381135cf3f17e81e2ec20fcbb6":{"name":"@balena/jellyfish-test-harness","version":"2.0.151-renovate-non-major-8da335370b1a61381135cf3f17e81e2ec20fcbb6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.151-renovate-non-major-8da335370b1a61381135cf3f17e81e2ec20fcbb6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f8fed4b80af0d1c9c978b5cb616f8d9176dbccc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.151-renovate-non-major-8da335370b1a61381135cf3f17e81e2ec20fcbb6.tgz","fileCount":24,"integrity":"sha512-tT19MbTMg8rQfu1OmzAqpiWAGqT3BwraojvcJmUpYUzOyUuQq0GEGzbkEWEfp4iZjFAEM59kKekFOhigrOD/qQ==","signatures":[{"sig":"MEUCID2Wt1dUa+/UKT2P9V5PA5PaFwjFN/RoqxuKhvJcAyXoAiEAxlezzzirxX8A0FNvotB0jzR3Cki7g9mnWP3SHzqDiR8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgleK4CRA9TVsSAnZWagAAx2oP+gInnzvRmIKU6QEE4XaW\nl0HB4qWkmmi6N0uNeYU/pgs6HdVPhFoovxG15xZaFD7cMeKzevV1zPmdUp89\nV5UCxS9dImAIlg1iK0EqA0OX0zd4LfhAc4qizIZJXc+9/4xPfLHpYoim/SXS\nC56nHeIakb9WwY061neV2ADD18H0/LPMY4ykbKo98mYp77K8eQuUbyZbc3De\ndX77ALgPch93oT0MpgBBArjUAXRb39kg+EgtYaExD5xCjtNrkbTmuGVTEamD\n5noCOG9qA2+rbDPqFiWgHioiApZo9dlTF863g0ZEGyge0UbcXKaqFj8hLU74\n+/ioEclqqScKVAVTMfWDvg2ne8G+HQF2pkL9QKYnzUp6I6DXkC3eLh2+14j3\nUn4K1UpWDCO663lbGzTSr77w+zG2H/r0BQux7pp06l87tBNnZKWZ+51VfceS\nVDtmeQOJcbRdQ7YsSYfEPqMsJZ4rl3z3jAe9TyzE6JpKDEizFlP3paygMJjN\nGup/rQRjgajyGBwWCK9K6ljOX5tlz/y+yRJ2yAPAmPX2yKoIJq/ATOrYPRwE\niQ2KOOsKzT78/pr5xB9XwvoJo/nVseRAbMMoxzAmwH7ZWJIoI+3DNMTK0R0u\ntEcSOLOhC9bqNT8FlB7Y+uBfRXY4+4bta5wBMQAAnIjL3Mlp6xlsUdVp0cpA\nWcd4\r\n=0SnD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8da335370b1a61381135cf3f17e81e2ec20fcbb6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.80","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.62","@balena/jellyfish-worker":"^4.2.8","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.151-renovate-non-major-8da335370b1a61381135cf3f17e81e2ec20fcbb6_1620435639897_0.9586127482577613","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.151-renovate-non-major-e27de48cc2af400cbb7f7f30e161e68171d18118":{"name":"@balena/jellyfish-test-harness","version":"2.0.151-renovate-non-major-e27de48cc2af400cbb7f7f30e161e68171d18118","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.151-renovate-non-major-e27de48cc2af400cbb7f7f30e161e68171d18118","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb69952363e44b4b9253d261e9c741068e8d05de","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.151-renovate-non-major-e27de48cc2af400cbb7f7f30e161e68171d18118.tgz","fileCount":24,"integrity":"sha512-tfwl2MXmAlPpeTMkmMLR82d2IPdcAx3xbWjPyc2uE7cZLh+6gjlein1/Kn2EsFsjCXgW7Sl5MJvei6ky7aV7AA==","signatures":[{"sig":"MEUCIQDx9NkqLTyNnmaiXDMPKLTfiTrrFJFcdNOQTLumMm4szQIgav0DgAteNRG4rGMtl1qk5mkZFLlkwOy0Hc2RzBHEUo4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgleRgCRA9TVsSAnZWagAAdgUP/iCg47EUa7q57d89ORaB\nkEqUlpX594cpzemwuskcPXfsF1JZdoAjtW1on3Cg3DmDDiQyHkyOr5mzT9Ym\nrze3yTzAKaNJPxWiA1n3PpRZeM5XMKU5ziulIQroBBpyfhpp0g4KORb7wn9x\n9nzkm2pJ1NC2QFKkgbLKH9qR1UEj0PBgd+luLR5/IAjnY301irtJLCzeiFC+\nEtB0AbMJ4+bUo2TxOMrV7abd5rNTKEyxjfJO3njcZecdoLOC8LFt0YnLWEVl\n9oZF3V+l9f7SPASRtw4r/75Er0lYquuL/qc/0/zcXuMH4p5FobFqQD5l8sDI\nbOB/YUXPdHpuA0/FOYALa2MP9SqhqnAJL7RdU0+fmkQnfCADex6Ca8OyZ9KL\npE8z3V19iu5sWfya+WUlwDVCPHrB5/RU83Q7nUP9BM7YICX5dwi1LRDpEjBF\n4rA1YxEcEuw2BuWWSEyzslr7SUSH0aT+PJjp/8/M8LqH7ISYbrq4B1HvI9OF\n/eQTiv6rJhp50+KpcWNQsJ6zEVZP86zadEsVY+P5btIe3YTx9eD/uNksWsFC\n0z5fVID0i+k9lEQ/oZ6YdbI/8fSr9Nn8UlyjJXNbT2I+IrGquCiVk+39afJF\nBZSPEJKpaG6vsIJZzVZaxps3Hg8I+QK8wnaAHkI9hogmQIkcxubDZ9Vy3Psp\n0XMg\r\n=5/4U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e27de48cc2af400cbb7f7f30e161e68171d18118","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.81","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.62","@balena/jellyfish-worker":"^4.2.8","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.79"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.151-renovate-non-major-e27de48cc2af400cbb7f7f30e161e68171d18118_1620436064006_0.18153852297876227","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.151-renovate-non-major-c8fa43f9af3d86311fcc683f133c91a56133c6ea":{"name":"@balena/jellyfish-test-harness","version":"2.0.151-renovate-non-major-c8fa43f9af3d86311fcc683f133c91a56133c6ea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.151-renovate-non-major-c8fa43f9af3d86311fcc683f133c91a56133c6ea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e659b00bf475cf3bba690fa93f25634d5e9f446e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.151-renovate-non-major-c8fa43f9af3d86311fcc683f133c91a56133c6ea.tgz","fileCount":24,"integrity":"sha512-OPDq6ebkOyQsiZOA86I01LDMGQO4mok135u4T3ot8lvfjfDeGBL7crkcGn4vHm9uNrz17WQlQ4ftNqhiv+NMjg==","signatures":[{"sig":"MEUCIFnlrFgPmYW17+gV6FZ1XrNhzLKbzLvCnT+nhVs0wfJYAiEA4qJvRUYYhFJAnK2PXgpxC4CMSNF0fRVyuu9lFSFPjfA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgleYgCRA9TVsSAnZWagAA4h4P/RmNFhpnf04PsRK5K899\n6R3L5ZroZxlomPHTr6x5W0xRFJ+52KfP1AP2EOYfuVQkfl9LODmnGLiKims9\nB2yidrBX6JvgB2my8s7hblTR6y3l5xmEbhKPMN/QanzTW6gUIEj2LO+ID8+K\nYdM+xQ8K+iWRY/9idk3KztoiMjJYvMk8KOuE9vREvBn92g5rBLWfn8/dNAXe\nQ3Kpf2Oh4yyA6J1gDa1HCO0QB/VBPOvX1QjEOTFja86Sk/BfX0c+50xmp29b\n/x+msIP4ludxaQPWnZw5zcO0X6ZVcX8JghgJH5Dc376GRJeZjitpQ6qpuI4G\njUDQ99HYGpvImIzLQzo8rBEO6qHERZwuNhhqiKDSfPVYMH7sSyj849hpxEKO\nW6Ofx81qzEn8nP1hXuJMtpWQvUzH9F5v+gE5RpcXbvL0ELAM2XoR8bFB83CB\nbNKSvgWR3QETIRO+r1Ml4kOdacFeThdS15peoZ06mPr0phFZdLqYyC9S880e\nALWj5Iv9xorDsiM+vDtS51JdQaKUETWAj4M+5f5+PgWFV4YkfJ9C24AWjb3k\nInaFoGVoErIdCufsP3JHRfBpq3O0TSD/2XEWcCAHr3PmQtVekxIVJUmxBZE8\nKzU0PdVQhxBSB20Mgd5APYGcMcaeIkSzfur48R60yksdjpzScjIGLMs/5eWG\nL67o\r\n=Aoq7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c8fa43f9af3d86311fcc683f133c91a56133c6ea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.81","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.62","@balena/jellyfish-worker":"^4.2.8","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.151-renovate-non-major-c8fa43f9af3d86311fcc683f133c91a56133c6ea_1620436511469_0.4971033180391382","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.151-renovate-non-major-d4b347044df29d555087dc3588006d254ccf7c17":{"name":"@balena/jellyfish-test-harness","version":"2.0.151-renovate-non-major-d4b347044df29d555087dc3588006d254ccf7c17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.151-renovate-non-major-d4b347044df29d555087dc3588006d254ccf7c17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eaf984c4c1ba84c01f075d275198f3e57840d09e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.151-renovate-non-major-d4b347044df29d555087dc3588006d254ccf7c17.tgz","fileCount":24,"integrity":"sha512-6cdcfo4/pef+1RHmuwPRluHmPElloLJygCXGyAaWOn4LMVScso2ShZYt9i8I97NJx96zCYFPe4XMG6S3NklgYw==","signatures":[{"sig":"MEQCIEy4AB9+Ajq37E73C/aiDO6/gZkaLdnyxdAV41EVunhMAiAViTmkV1d1z2dy3+LE6puUhXP6uCv74Q9yK+ZXmdoDcw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglediCRA9TVsSAnZWagAA3t4P/jJ7qIXmLXEo4a4qo9R4\nCfto4MJ8rZFHeuY2SkomXkJJuBLpJNIMYX1VFCRXYYQVqMmMMB0KXAUDsK7r\nP84bw77SIhu12zb7U5JeiTShnJjBnhlxTxNRXABe7AvKPfl31f57jDg8jX26\nCcYN52N3EkZjQXuqYA6ekAkVNzbjzsExiwW54k85G9155r45JswFuhSgMuoF\ngmsNdvHdNxW1GYQlWur8rji/JM/84d+8caeUb6t+UuZrRimCpT1Uo+RK6J5K\nIbPNeSzI7/YqOYymWuhUIEUEhAaDQcsM4LzKHZR7Vp214VV6RAm22Q9Y9PSb\nAVqEnO/YG+lqCAuz04tEztSBAWzxHVCFr/n22J00UL3vcu6lC+fPpPEpBUb1\nkCyUAMFs59TPb7hSajLAgaKGakLA9rQs1dmuINWQXlEKPfNs2WDLGlbwWm0I\nDYCmwUUg62OlVd1/HEyD0+MaxrSgUUAnh8AadI6Re4KhOy8S2C+HXM/ifRyz\n0UV7pW26dL1anFFMODmpbtDURfiwQW57fUCz2pjg9mZWO3+35VkpuiWYVtk6\nIduerNLGU1haTNjPWffROKTPymV7XP8WjqILvT1BMYNXYYfqcBKp8BxfBw/U\nFif4qno/VhY4kUVDGVLdUDyRcZZC3XVzFpDBsO5BwAyughYkQ2VQLZ+8MaW0\nbSVN\r\n=VOMw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d4b347044df29d555087dc3588006d254ccf7c17","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.82","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.63","@balena/jellyfish-worker":"^4.2.9","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.151-renovate-non-major-d4b347044df29d555087dc3588006d254ccf7c17_1620436834093_0.008282461683728037","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.151":{"name":"@balena/jellyfish-test-harness","version":"2.0.151","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.151","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae39b6812e7094f28e8520dd3ca890b7d70d8c1e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.151.tgz","fileCount":24,"integrity":"sha512-sa+PtMYG1SrkDsGGQp+NnlujF4mDRehZINM5RVaCfy4T4kBAn6IG6gYZp6nSJQMaqTp5S8b6tv0UNDwK9cUxIg==","signatures":[{"sig":"MEYCIQDRqKyP/0cZRrbtxuUyNAPcGBbyhT2VZhwog1RCGenlMAIhAKPQX1L/cNM2Fe17HDXsOu1g4NDax9jjqryyRVYIBfA/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95588,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglegyCRA9TVsSAnZWagAAq60P/3w+gQvY+jReoWDjN4+m\nTlCHP/10aHErX7z+NHed0kIGDGBtbQSfKqcEj8I0/Ju6ZLpvsNLa+I5s+xlq\nhZ2kAnRQCzRwzq34xlUloBMBRMmRNtYPPr0J9BXAbbrn8PlCKZd/7V8awv8x\nxueDfbHtQkDEz0DSUHYaYkTbdq8YfjixOipDTrKG+2fvlPrW4nxTuYpWTj6a\niTM9Z35X9zYMl8PdB+WvY6XCCuiMpQqe8g/p2+JdfAcH9hGIndD1wpeeizhl\nXB5887R1DL0ems0aZCfyMnntaC4Tl+qiVcBsxLBul5v5/sddKnXkTLwbNsPt\nBEsAUXzEK5MZTdAPPEXnJLr0wYPDEQMSskqKmVwdGw3v1+AfPnd4VR/gDOhc\n0r4Xbx0kZBjMvmY70PXEdOpA8MG0t+pTviOMLDwEml1WFJEvG8coRSd40f+e\neO2pDhRUzyL8jP7gN8GmRxJoa4julWpsjM37yvrQLUQ8hG/6unY5MA3HWbgY\nZgMalUFUzP67LozYBnbCLwqr0avRcUAq0bdJGXTrUbzyfHC9yo/bbibSeBPN\nTAlwEZhhIiiWc/72+a0pQgGcc8IGap8ZaZkkUwo2l2Wd/9J1NG7rZ1TVtPrU\nuF2wLdvdSh4kyyTur5uU2lwIFSF1EkgIWfkyAhMKDk8sxBWf7U8E1jP++1Dx\nnoXY\r\n=BI0t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5e07ec73d95a445481b85a986c04c939b09565cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.82","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.63","@balena/jellyfish-worker":"^4.2.9","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.151_1620437042083_0.5271293097689214","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.152-dependabot-npm-and-yarn-hosted-git-info-2-8-9-bc555b1f9323245b69f0ea2fa472089149f981ee":{"name":"@balena/jellyfish-test-harness","version":"2.0.152-dependabot-npm-and-yarn-hosted-git-info-2-8-9-bc555b1f9323245b69f0ea2fa472089149f981ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.152-dependabot-npm-and-yarn-hosted-git-info-2-8-9-bc555b1f9323245b69f0ea2fa472089149f981ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"31f4385cfb7f96939f257cb7cf91b99c76b1d567","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.152-dependabot-npm-and-yarn-hosted-git-info-2-8-9-bc555b1f9323245b69f0ea2fa472089149f981ee.tgz","fileCount":24,"integrity":"sha512-6Z/8B5llk7Ve2s4lywzuCHGlHieFoQGxZP4Ann0QyE/D13jhUg8sm8h+V+i6UJ8HnsxCiBklnknR3fy8Snntow==","signatures":[{"sig":"MEUCIQD9rY1einfQW51LMBK3Lq5V7cUUiep8TbUWrkmzO+uyjgIgFx7Q14C9xfz4zGrhLr0iMuxMD0638jEsj3VG0k6s/oQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgYeCRA9TVsSAnZWagAAHYQP/2BXDiOHOfDb2vwRATQa\nY/tj2UGEX9H0QJNdJh2k/IySA+QLlY/gcu74PZrgQfgyW26Ni8Wlmw5XzxGA\nizyyO/y4LdOlGn+03jFoNamhypYdsLbd+6gUHh0zEeXne3gs72rjm8g7jBDF\nCm695np+eh5RtEvAeL5XBb44HOGA6zR0+ze54AnF7FqYty3jp3y0nHXof/Ry\nD3HT5w+xHnt6OR1cT81kjdE7SUDMhN84UlZCUzZjGYmOJOmy/bbJc16ohB72\nIC+ZRzrp5c5qudKI5mQhnQbJvSw6byOGhMOvGIu97UMTHDwY1zbdM/U7/UV/\n3CkGm+z25JgCrGfOcWnWMu6KENPOR0lefvBdinlixLtjaM+shZzKa3KjsOrR\nZ8uUEXKeHrveDBbJ8Pbkjo3nhhqxO499qoDg95NvPb3+3ci26WJCnbhqQ7JE\nUpnAPXmuEibUDqnakeE7fpwqWXCSpcDpb1sVACZsT2NDEU1vyya/qivZRm6h\nWEXL2yxVHq8JWVaGKBH2VkAEak2oulaufpkb6I2dqL8TmOOVW0vIp87ByvjU\n3y8cRLmBuu433t8c510/R/dFEU2xjugIN4a6zkMbRrjgWhMGsMDySoBkhG+j\nIOWKhhEvQT8RPlndy/8DUbYKWfZvIOtAXkV/rHM9EyrfWG4bYrDqBUrhyJ2/\ngO0n\r\n=PaYx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bc555b1f9323245b69f0ea2fa472089149f981ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.82","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.63","@balena/jellyfish-worker":"^4.2.9","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.152-dependabot-npm-and-yarn-hosted-git-info-2-8-9-bc555b1f9323245b69f0ea2fa472089149f981ee_1620444702171_0.2441575352098062","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.152-renovate-non-major-d720125a70b51a5c5834071e27394d79811c8f79":{"name":"@balena/jellyfish-test-harness","version":"2.0.152-renovate-non-major-d720125a70b51a5c5834071e27394d79811c8f79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.152-renovate-non-major-d720125a70b51a5c5834071e27394d79811c8f79","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b44fbebc9af21cb0317f480bfd6ee7332a4ae3c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.152-renovate-non-major-d720125a70b51a5c5834071e27394d79811c8f79.tgz","fileCount":24,"integrity":"sha512-l8EKZmfdULAUOto61mZnGSsVqb8LatYjxY3ZcBNmXERcWETDIp9/cnbk6cCDzCVNT567nRJklAgePjRF5zW1+g==","signatures":[{"sig":"MEUCIDtALGRI82wh3ZOKg/6TN933Cbt3/gVdoPSTkCwjDl2uAiEA2MbtCJDCGUZ9iFM4fz9afmKEcmF2xjxKiXj43kp1d1k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95719,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgd5CRA9TVsSAnZWagAAzJYP/j2Y0+Y0Y0QaQtXcTrqd\nCAWpw5Xgqu+Jo0bUaczvYORBK+HEU7alFU/V6QVSkdAipR0uK6xf6X3knHgO\n3auYZVrUJWm1Ajs03A1+YlEC1dicUVS7RC6phqNFSjGqXsjZlGxyuLbHmkFC\nWrhQozk1pcMcCdOb3++3q12IBIKKiqPB05o/2FBr3eUw4HN1ZBo2bgkojnBO\nlTIa7GGpjhacdRQiZTGjn3s2IydDsOeiqGFiO6n5ylHbI8m4bxzl2N6/edoV\n6DHOoyY1baJ5pXfabTe32vBe681wDeii9ck4xRC3b+AB+cvBjNujlk5K3oRG\nda2qq9jl0EuNp+jXr+NLr27AFJfLMDJYNzG4Z1jFliIY6avxAnwmH84NCB/D\nlgae8A3rgwdcAsawX9QvGarWAGPsDhrmzSpfG5Jcdd6j36YB6rJbiCglAxPV\n9e/IDiUVX8HYgRtKk1U9lRlUz0TWZz0OmAZYhRmys+K7VNBgiVa5/dHgOxC3\nSJfsxIwqlePbbciQpHPVJKuktqO+OnCwOW2Z5I83tFGuNovx5j7mP+ycls0l\nZMiN4OB3NJ1Bq1EqiJVQD/R9llx8gVnvSyRQHjfrqcQfHsY4rgfl7CkViHQt\n7uVApg5mo1OUBK2PTvt7LhUnOl0Yrjsq33Q7vXTsJU3DEcdyU6rijiboa8I9\nqB4p\r\n=kWXx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d720125a70b51a5c5834071e27394d79811c8f79","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.144","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.152-renovate-non-major-d720125a70b51a5c5834071e27394d79811c8f79_1620445049011_0.6413938691993593","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.152":{"name":"@balena/jellyfish-test-harness","version":"2.0.152","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.152","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"38d093c6e0481f4b1d33a5c169191859cd047f2d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.152.tgz","fileCount":24,"integrity":"sha512-WhiD9TNjNz8mA052iIs3ocP6q8ZB9F60QGp7ztyQ5JCcj6PfroGoeUYfdYqyvyiZ5OConxHQvaImwSnGZAkdQA==","signatures":[{"sig":"MEUCIEPZAOiL/Os/cwRDsmqsrJOt+Uf2jFY5P4JIVmvWAV8mAiEAugU+/490tnoWdSJmcqp53gyVN1dOnRJLuYjO9SdoUWY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95691,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgfECRA9TVsSAnZWagAAKz0P/3DFgLaQ106eDL1ooXbI\nbb1ZsEvSkFuqxWXfjkSVo6ljgrDAaOrSvc5mJAXMikyVjfSwTz33YnPQ/HRx\nwDhgBrpp8OKoIlfI6sXY6PJh5CEKJRg6e3e24e+oTn1KwK/l1TisdIDOfRLR\n0U/pfAFBdHpCTe2yZKDWUk6HlnNMBc6Z/M4ggXSjXKEIc3sWpv5RLytSu8QN\nZuYHXBOwNMhhjiGKrJoxw6T7sVXuNgNHietetwEmkR3EF5+M4TrftxTrDd/T\n3RVY8YE1KT87l9uJzQnpDTcgZ5K/CHXBaB2yE5HY7TBBlKYldm+jTXaH6Aqf\nykWiTvyPskpihMrRQCqroA0AkvRR3CfQ5N8ftrqQMpJdhKlrVtYK2zxyWj+u\noP2yVmz2DTeaHYJNbFI4So91E6mpM5begPE3WX4qVt84Ya5rDt2/xXMqw78V\nDAeOre1yNhTFdPXK7nRJtpnblSr14RFLpABmYtgvnr4uZ/GDGyAOGf0ECbg9\nFsz8WGzkx+HBNbmmYIahgGeA7GaB3lm4HKfxheCp/8JKPJTpHkcP0YcYQmh6\nlyRYt6F4XBVqYegwztJj97NBCm3Mvd4vew4osm2AxKC+PyexexaJMH9/6njl\nKE9v/lhxqcYXTTZR/me8/y5h5Sgr0hGMKQtUwQlNpFTYZ+BLusfC2u0YHquJ\nTIIS\r\n=hUdv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3b8fe9377d00a95382d5c4b868bc1832106cfc87","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.82","@balena/jellyfish-sync":"^6.0.143","@balena/jellyfish-queue":"^1.0.63","@balena/jellyfish-worker":"^4.2.9","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.113"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.152_1620445124122_0.6458200387167459","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.153-renovate-non-major-98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e":{"name":"@balena/jellyfish-test-harness","version":"2.0.153-renovate-non-major-98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.153-renovate-non-major-98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f385f873ec4cd6a204e26f659b09aa80b339a835","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.153-renovate-non-major-98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e.tgz","fileCount":24,"integrity":"sha512-te1ULjDho729SIbPzMj6GbLvM/S2yy/T7TBtctEkmL1ptbm1q9ZPo1ZhAFWtoNQ8Q3ZOY9+NhEhjOkjtYH0dug==","signatures":[{"sig":"MEUCIQDHuEsCLGNsbRT8TEFA/SayQp1LyJMiTsQQYCK7sWJVUQIgHh8hrioA3nmFxw6Y8P8vWGr4yX0xka/8JgZDf9A6XPw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgkhCRA9TVsSAnZWagAAqtMP/i1TgoO690nghPgTrnke\nx9Ngm/cz5Cbea4AmE9cH/XtU/OkZFuqLP5BEanD6yuD3DlLpZ9Sbfak/H1hp\ni/S2Pu+Li/sbKUZUOjNOuqVSPQBVvYj8KU/902yYO/atqrhgzPpaV4CwBX2m\nMZ+P7I3/IVaxeWjdDlSpLKiKv4v6yg213RR3/E99ylxXvZQnLnI9YhuTESHI\nZmnyF27GGehAqC39C/lQqK0XxepqsplRO9Dd6VgmMWtmQL1plIjAUFNAThDs\nzLgvdz5KaRVO/0s4vwabbTO9zDrZAy8A7C4CBZq2NWsvxss0MdbWa9vWEjcY\nt/YiVN8LyNcg10RR24zbfKba7AFX9sIQTj4XI7iUY2+HpvnkplI+OE8a+V4w\noQUmTaLrvQQ6M+dH4bHJkMQ1ZJRuDn2QlJDo/caGrPi3n6aagzRqqVWbYEok\nq+en4fn58sg/Dk/kyyBZ/2ViQ5dSa8l1gvURPLpo66Hn7mQ2yZN5LCO/gHys\nFb8NieepPWzcSVGYV1J+NY4w2cYjzXG6gUVQ2QlMq6XG2/OVYeUhewgT/JF0\nagDGrduxLDbW/tUOlw+VJC6F8KFXiohbiIPO5CKyykOjGVQGlGZ8mAkzKPy/\n1g+UlgzNfQSpktyTD+pnJ3zYgB6D2744qVpADv9/MPerWwX/rdV5qSp9mmsK\naWHy\r\n=8qNG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.144","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.153-renovate-non-major-98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e_1620445473048_0.5638700758071871","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.153":{"name":"@balena/jellyfish-test-harness","version":"2.0.153","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.153","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01a19473d0570ad68e86e38e302e645f9973adba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.153.tgz","fileCount":24,"integrity":"sha512-0hsO5uVdKx4K6ivyOosOGai2Eiy3vF5iHVZnuhxdjk7t43j29qJB0k1/AHPRVfOxn32u0PHLhzyq+l0cep8xtg==","signatures":[{"sig":"MEYCIQCCnDhLxaZoV5jNxznK2I5pbTe3VHKsE+OOBnceZkEM1wIhALbMy76qk6rdWHstpYHs+R56ZG8JxlROwakE4aqYC0Ex","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95762,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgn0CRA9TVsSAnZWagAATNQP/3MyZydfvFkpmpmZEtor\nZI6KTF6nf1aPL9Lm9rbqS0wuud8BBnVS2ru8WcspN0v8Puxdqo/AFQwNiCSD\nCN9cVd5QlVA28RdxXmLAlrMrdV2P/sEddzxs9RYR9PvN8lSvugNgubRu2GZH\npoFdliHa3tSRG8IWb9mwClHnIbS8NHZ0ZnOYp28PwsW7vk3L7D9ID6JQNGKu\n7c8m+XW7S6ex8y1X9WSBk0kkI1OAMcAoIjAJ4Khb7YjSupd2yFYmptxWZrj7\n+WLWfQD2/Ibx/xOZmb/kZhyrw2JPAiOwXOaGROsI9NwCFUqxxVb1vwDJ3+rc\nQbwE5FidIQePvMpfI7KjIXON6WLSc5gR2LffDjjHLFVsx8ZNuVtsh1uLCI0M\ndg+ba6uZgNDSop3Ivvs6SslxKgfllPtnN9wVwG32KjPrX8ZsBI4z9nhcz2Ej\nxd54WVTf2mI/TyEJ9QHoaxqB0/6C/u1wR7LNo6HkeaHc/v47KW5BInBIwhFw\noTCvGWVsIpXljRbWr6ffLPRF+fft2NQyxBO5D8dVUxdCcaVPraLe0L5Dmq39\n9OWrKwDw3PO8zMDMLRAa0aCjgZlwziOdYNgXPCaMBkvFn2e+LW8g9otfNWt5\n6U8UtNcVMmtIKLeGnWqt1QjecZd1TF+sF3Wi3bIwbxZz3evUxvcUaLa0wGaq\niWSW\r\n=/smw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"031ae7c9adc650b9f828d560998e88b786ea95f9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.144","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.153_1620445683851_0.8023500678475926","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.154-renovate-non-major-b1e44a82e01d8eee6b16c8569288b58e534b69b2":{"name":"@balena/jellyfish-test-harness","version":"2.0.154-renovate-non-major-b1e44a82e01d8eee6b16c8569288b58e534b69b2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.154-renovate-non-major-b1e44a82e01d8eee6b16c8569288b58e534b69b2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4531885965f7605116fba4bf68a59fd8b984e616","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.154-renovate-non-major-b1e44a82e01d8eee6b16c8569288b58e534b69b2.tgz","fileCount":24,"integrity":"sha512-EypY6RZAyPy2FIUtOxzMNoRlMpaI6mgQH2vTxFEH4u9bc19Occ+m3nMpRw5M53XChVMYpvzXIQ75xMVZ9nVVdQ==","signatures":[{"sig":"MEQCIDLD9tzLWhxbC2yN/U5bXDxppEuXvUZhX33ZCYvJqdp4AiBPoDlzLHsCx+b14N0AyGB37qwrMKCCRYn7onZq0Rofxw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95928,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgvLCRA9TVsSAnZWagAApksQAKKsotXLxZdEOHxFNCyK\nLI7HctYnrE8zY5wu9hT4qU1lFXoeiJ9DeUmXglDhERy593i60xgznt6WombO\nPTTHeiWPD/GFC8z27P4c+WE1XsO39HWQsfInzcmGcbKUo97FPRm5TN+Cob1q\nbvEH3KON+Ex/7UNV8LXlN57VyUVNvOm4ilzVsilVZQXQCbVYhCKXA1PJUArB\nfXUjvbQ2c7cIlGofIo0eS055eDqUCtnhgKMnTUSABr/Uzlz1e96H+5arnxMc\nORXaKsssPHQAEd1MG+UfQm8rahjRqh/EEEAbnX//HudAf96yXOKiWLItMG8d\nwmWBX7BsnlqgZZSyhckZeEE2WxZI38wXDwtzKFMHukD5DYNwOvR7KSEPIoIT\nfhwu5babrRhoNbqQLKc7GB1xeZBWgErdqnr/G4M2MnS06mmvMA9WQN8mKEnp\nV+QkBWWb0kUrBnzw9PLD+6BZppjWE3vZ1efddR1lYq4S/RNvkioBnymX0D81\noDVzfLYf+iU6EjaRrh8gJiOGuRpon8bqjgLqvyuOB6ojOOThOCxHG2/6/f87\nQ5sKfM3WJowpt2dMZKZ16QCbGUX0aoL0ypfyLjpM7GM2vGg0TJP3Yzur0/qj\n4lJv8I0r+ZQ012k7R1h34KV/Yq644ieKGfqLjTLUuqWmyXFrlbrPoSqeEu50\ne4Lc\r\n=LAN7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b1e44a82e01d8eee6b16c8569288b58e534b69b2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.145","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.154-renovate-non-major-b1e44a82e01d8eee6b16c8569288b58e534b69b2_1620446155184_0.4285929731703162","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.154":{"name":"@balena/jellyfish-test-harness","version":"2.0.154","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.154","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7035e9e6af4528a4c4f4a17ef3e27dba10703f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.154.tgz","fileCount":24,"integrity":"sha512-m6xLCEq3qUqbuyqFjpYpTk+VBQHGz+OCPWiMFCEUod/ViWdc7NGze6ftYNhiNHM6yblQjBWQXy+Ume97gPuM+w==","signatures":[{"sig":"MEUCIQDE++oc4Ben1TnDQaA1DImvUZccdebEscdlbTpmlcL4QQIgMY0KYnDAyvLzEWVlpvbIzj4tvooZhHyvsPf9T6E4X5Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95868,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglgybCRA9TVsSAnZWagAAlFAP+wRD+8Ykk2LiUo7eKCZ8\nj5d9fKAE3O1bArHp1rHDrunv/14cl7YiXd++LcUd/WR54uHdTEZpUB8Xqro4\ntLU+rtTRNC+nDbFFkVwrVmcjv9zUziJ0yHi9/RxWGQhBAw/O8CnJkbxq1sBC\nTAWgvdzuR5lJiOOIqfqeY7nWqfK/1Y/B4PRC3kDflX+6rTFdULZgonlPZ7VK\nehQkp01ZO3l507JcyfPDShQ4oA+1nTJx8DJ40wn4ojr+9J+aibmCjpu+aRvL\nCJnedb1n3le9f23yW0i4vK0LQs0RioMt+WXiqXAW+SfSIY5m9k9AQ5VEiZls\nPnw8qNcduVc1wu3FUKuwnKkznF7UVaOrBt2Be9zw0qXLXtYtkoK5XESvJx+g\nYKmBjTo6EeMcLglQ/atzTMdi2b61m4uvNbTCxdNRofjnDhHidz1nBtz7Nud/\nfU+6pN892rFfa5HAnHU3uzFkJwj6yuC7LzsoXv0v8IjCOPk9ka6Ejq2u+qiB\nGmLB8N2JINtL9Yahbm+rmSaZYm8m0mEE8Kz4MvaWv8hY/r/K5F9omrhvIagi\nKPFvGMYNrYq0Nrx9AOiqtlf/hRpEaF1I4v9b5YrQqDtekZ5yBJu3sSxF9Wu2\nKQ26zuvIML722tleEkCxcrR8hK8884iaosMzl3sCyl886+os+6yri5EFJ02h\nYCGK\r\n=UT2o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"71d4590089646f8b98bb5b81cd73f51b7477447c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.145","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.80"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.154_1620446362618_0.03044222130724239","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.155-renovate-non-major-1011da97a4ca9585781d08a25e96020204129773":{"name":"@balena/jellyfish-test-harness","version":"2.0.155-renovate-non-major-1011da97a4ca9585781d08a25e96020204129773","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.155-renovate-non-major-1011da97a4ca9585781d08a25e96020204129773","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b9778cab257f8cb31fa8d89e6fd0052ef4b610e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.155-renovate-non-major-1011da97a4ca9585781d08a25e96020204129773.tgz","fileCount":24,"integrity":"sha512-pI1QLTyWoKhnMep2wsqTijJ31xdMsgBgYm0czg/5NAqK4WbBSYTIMQn/AWqSYBt4HJy7mTCuVTt63PDevoCZww==","signatures":[{"sig":"MEYCIQCpmhVOKWJQftnNAqQ+Jk0Mq/0uC39ql85apLFiKDA4hAIhAPuenVFbg9nlsKsbIRWcteNsmzsnEmsBfzeOftg3Zl37","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96040,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglhp4CRA9TVsSAnZWagAAk8MP/07M7fEXv85f9lEHg7lt\ndKcsRjEQo+95POuaJ6gCthk02ppJKR00JdUcSeXTJyNRrDqBe4c80RVuq2MI\nbQoJlr6MH9j/1ztBgf9HtilPad/1aVbBMK+JIyw7BCnPI6cOWeKFdB+9+kmB\nSYh2sWeQkP8SHVa+GMxdQZ11RGj619soAdd4GXa3B5wLu487aauzxpK6ZMYC\nRn4Pnlbn0TqyOdAugOq1pLss4aiKfHxxGkBLPBZM6n885ooYXmDZK4GHOdWX\nOBRPXSThZWiaZmiLFIaMg9e64WAdTK4YzrfxaVxSdzoQ9XOt3T2TBSQzcPGH\nG6sPnCzTos8pBT86ha9AEgDKhU4H1tMBWgXIpvoLkkndz7FyFqlH6TsTTTUc\nw09m68Ci9+lNyLbe9Zlwj4AoMdB0zjWaKwt03avREWdZeef4Xrr5oWoHro4f\n3/4RaGy8YdSMSGQPAlaRPlxSZPYSkIwS/SexvbqW1Nbzc4E3wiaBYVc287Le\nbVBIRkjgST+P1yUo5jF9mFlhn4SQkBrLXkmfOzY0f89RJxxZxaGt7fsMECuC\ndKeyD4/rea15P7xmTM+RDPMzn0TNLQSUjKfHbx2HjoQZHLK5QmxlmItXOnoc\nWXZk5b+O5AOaj9wmpLaQgnjiCYKI01HpcCOVHH8eq2j7ZWVuACwpdHd6tzFZ\ned0k\r\n=YbK6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1011da97a4ca9585781d08a25e96020204129773","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.145","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.81"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.155-renovate-non-major-1011da97a4ca9585781d08a25e96020204129773_1620449912126_0.8035050060930662","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.155":{"name":"@balena/jellyfish-test-harness","version":"2.0.155","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.155","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"94ad139ae8fc754562047f3870af65feb46f7eff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.155.tgz","fileCount":24,"integrity":"sha512-zeq28HMoLhK9rsAP3S9QINtrZ9bwUYZZ/RWt6M8eq5FyF19z6wTZyI4GBWXaP2U5A4wGe1LrEq5ZD/CkWqpm8g==","signatures":[{"sig":"MEUCIQCEBzBKC+p0Ew2adn+Wh53KSEZ3uKQ41lLfAfjlA2Pf3wIgNXiAY7yJYTd9feJo4wY0BQ61srMLwVNDq2UHKSl+tok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":95980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglhtdCRA9TVsSAnZWagAAOAoP/iddaos3zLkz3aUjhT9d\n90jYdKtgSsbWwna/xbI/BItaD44QIrYWyogOAg7QlhT/9fC/jI3e9c4mTu8l\n5FOGbINVjfFIUV5puR36KWw+YmaWGV4I994L7+bQ78ckmgnr+AWWk3wDqbqV\n4NLsTcMdBy43bNbAWjrrFHpAItOE9kZlytk/PCZLHxoLcZffCg1xEjCVUq76\nXVXEejEjkaBOQkXAmLOr6btKIAI4DnSCH2NIH2P6C5PahaDtB8YdYeFAf2Zn\nRqPPjmRrYcqhPQwi2yEmNOWV5J4W3sAy/QNmZaUgBz0b6qbmjDNNMemhrXD1\nnWpgjSmKOsfDGtO4HxGW7YjS9T0NQOfV3723XEYP8qH2fyaeRjRtvhOE9brO\nS+JyCmNsmdmWFdCSz0OBCE6ur0Z9G2namB8/TfNsDkZbfHZmKW+fTG/kvOAX\noHKZFspUSYI6dU229sBb5T5LvERKLGeRjmrykOguWzm22589UrelhENazT4B\nKQ8VrAK1zS/Y32xITeG0Uka2RtHnB2AGcWmDOuFKqZTNrG8JshAxzti0WKQV\n1FvdnsrWEAqYw+l/MoDdy3R/Mf130qp1OoubiP5mqAMD3HkAuu34TkrKCL5x\nPkliMpPOyeGAT46aIvcTP0LIkhmonLlhD/Z4oznkBOS9yZx3RzLN0D+/m659\nhL3o\r\n=rojA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"650425253b7dc60a1f7eaf84f31e62eee91e4dc6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.83","@balena/jellyfish-sync":"^6.0.145","@balena/jellyfish-queue":"^1.0.64","@balena/jellyfish-worker":"^4.2.10","@balena/jellyfish-environment":"^4.1.11","@balena/jellyfish-plugin-base":"^2.1.81"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.155_1620450141204_0.7759148342782125","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.156-renovate-non-major-48ebea06345d236d84f57128fe2847fecaedd6b8":{"name":"@balena/jellyfish-test-harness","version":"2.0.156-renovate-non-major-48ebea06345d236d84f57128fe2847fecaedd6b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.156-renovate-non-major-48ebea06345d236d84f57128fe2847fecaedd6b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3bf93e1289e507805108a32bfce02ab5585d9f39","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.156-renovate-non-major-48ebea06345d236d84f57128fe2847fecaedd6b8.tgz","fileCount":24,"integrity":"sha512-sXlTv0YLeZBXJtaKL3ROiKJ6U/BqKEfUNi54IehDghMAwLw1WOO0JSgW+w4FRxOHVY8FxdQ6HqtvaR7LpsSOOw==","signatures":[{"sig":"MEUCIQDrXzEfwouURqVNxU+JX2wpT/Ag9Yqgz08kUpRCbIumIgIgAqlSQCdSasMWK44NIldXsNCDQpzxS3ujkO5qco/+/Qo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96110,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglkBJCRA9TVsSAnZWagAAq5QP/3R8q2kfiR0YYRiKZPng\nL1pa9EE6P+76lWWjVnN2o8iRGXZvnUtRY02PEMc0t33UFI0tHtHyv4+1s4R7\nLl2wqW1wT97WvnxlhanQFM9UpaQ4GxcyRyWPCK0uitzLpozbgQ5UzFCxdwKg\nGGKW/lwindgBz2S9rbHUTEBQqz7hDYzY3xhQHiwm8/b/0Au4HxWiFbq5+m1X\n5FOrloPN5dPNvOjWcA0wBqCo4DiWBG1529q/A1hx7nCOVKoKMg80FtZhO563\n85uAxy5NeIrg867VpDE2aM1FP5d4+eUKn1DXuRERrbUO0vrQ2UKnW+n0Q6YZ\nMsuVWZGU9T5hmhoYjFC678sMWDSMzRXXyLotAfxcgcLQRHtyPzbbVXJvx4E6\n7ooNtJwntJsSUAsI+L7IUBYYQFPedSYOjgto6ZHyAwb9DTO3u4O2DspzQNrg\nm2zTfdQxVrW+TyS2wuYaxXgR+hghrCTHKl9ZH8xneBSWT/Urrw3UCpaqsxzB\nBlqS4DpGfWppjidtcQ7p0zvnvwIzu8BxTiLgTHGO0PQMiRD8elrtVz+6sAZK\nZmG423WnxcdcpXN6HBrshkHHxHm9JAJ0SNnG8AFUkcdoYwUCQPomwzvInEIB\n3Ks7mtwdaf3o9hcaoUbnVGb5N+tA+ZiWK7cR0KrxiS9Max9wSmBvLHpeLNph\n7i7V\r\n=iIzO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"48ebea06345d236d84f57128fe2847fecaedd6b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.84","@balena/jellyfish-sync":"^6.0.148","@balena/jellyfish-queue":"^1.0.66","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.81"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.156-renovate-non-major-48ebea06345d236d84f57128fe2847fecaedd6b8_1620459593436_0.29963812442712157","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.156":{"name":"@balena/jellyfish-test-harness","version":"2.0.156","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.156","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9a75de8be8ce2c185781f05c6d00df2273c7ac5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.156.tgz","fileCount":24,"integrity":"sha512-zPn7G9/LBIQiZSdWUFfrXiBS9or/msFF/r+2tt7wZkbNySgzfvmdoaJIfXMOMXpRtj6eDRp0XJM1nQJLYWGvtg==","signatures":[{"sig":"MEYCIQC7qRFzzLlb/LzbVlwMCdtf7OGX1UOAYLMDzVjnZD1xEgIhAK+oJoLcsCuRr2BLjofGiUbHg0gyNwloBXey82n8uN2W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96050,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglkEJCRA9TVsSAnZWagAA0t4P/3BURPuW7wO2CaHVJ2Nb\nXwEPGUwf8InVHfkUHoOkqWxyuVOABd6/55BMF73lTYG9ljX6nqLpthtDqdRE\nPIa7bSM6yfo5IkLvueN7XLjhPbR8aWRNQ4Mlxc0MGhpPsNCFuNd420i6LABf\nEYDz+FpEMQ6Ba6ExNZo8FocOfreAuIu7oAo3qMkdD5bY0pwCHBvdGXfgH2zu\np9W/2HftVm5EIPSPUcr80jH6JyagS6IELB3Rq8RwX8faWuS76ScdqNUxrHvE\nHLl/ogDZ5v5SVUp2VOI82+gnbj28i8HsCx7p1ytPR4uv/1QiIE5M78suPYvM\nCwWjlL8OqngTivKhOm9DK7EVq7W5l7266T06Kz4rQwRWau+5BQjA3yWGKJ9P\nhraYECe+/azOeeqYjAwSj2S3GlLovhadfhOEp9Rkijewqmzx4aiZN5pkUQSY\nd9iF132kqXvEv+XVYZtNb8g0zZj1G5+W7IU3xeHDzJ9ydPHXIIiOoJMDQcdF\ndjLgfICKd/bKF317w43jyzpH8YnrnTdkmVdRxjPgkV2HCyV1THS8OsxaiQc1\nyqX52Ofxz5HBRF6ofNe/Xy2xHBP0I8SbPm0vK6YzxKH5zhJaJwTK4xxbF3GQ\np3IjF+5fhh0QM4h3J5STvNF/Dbt34YxD6Jl5iXhfrUsa/pqd/ujkZ9SfnXnE\nJq45\r\n=/4e8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dbee6976fee0f2b60a506c3d40b9efa61ce1a20a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.84","@balena/jellyfish-sync":"^6.0.148","@balena/jellyfish-queue":"^1.0.66","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.81"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.156_1620459784962_0.9947230050041287","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.157-renovate-non-major-f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09":{"name":"@balena/jellyfish-test-harness","version":"2.0.157-renovate-non-major-f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.157-renovate-non-major-f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac1a9d01e34eca89bcaead9bfabbea8149088a88","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.157-renovate-non-major-f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09.tgz","fileCount":24,"integrity":"sha512-g8M15COvkzv/iROemeR7uPqofSxbML0XZxLpBFSe+IuKxq6gqifzTT1dbK2FD02XR4JQpGcZKGmhaoCgeQqqJQ==","signatures":[{"sig":"MEQCIEkjTOEUxBmDJLPPAge9Obdma/ODDO2Pm58A3TBBKah/AiAmSu2nNOWSitoLIdzcAnFjEg9ILiRPHelSvGB1bCn3pA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96180,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgllNECRA9TVsSAnZWagAAuoMP/iepIqoV+1fL2H3ITVhu\nutrjDPnxU3Bb8NEDLRzf5R2NR58Xj4usa3WXFU/nqBnmYCs4c3MfOcHzj5VE\nK+gHbFIWOAbEu0BfSnZN50ohCwo8f/UWziuNYTToG1bmRsaeoVNXeNr/KtC5\n/DVqWUUnEZjl6PJwETdgvemYga/sKtHhvGrXSG1PyoUZgi8fiVmFO1dTom9t\nCFWP4aFwpVE7z4BkhqK0N8pz4iognb1cx7ujvsbAEW0LSTdBPsfcfmtsfk2a\nBJrAEKRp5hTz11sbp/6XSdzDmVlHh37sXTj93WucwLUdbjOrJ5MvdOyFKD0M\nYjM9MHc4EhT5xMgGqjw7w3iUoL3IKjvBvA0opi7qFgZmsDtjwwN+mFRCsyZe\npfBNQOW6pOCJ9CgL2KifYX6pPx0QMN8GBahAsmm1Jk4uC1yKfX5CKfh1imhB\noh8bgT9vWrveSVWTYnfso8KmSugWIEtDYjcr8afRN7f6QjGlpW54EmKnzWGp\naJPTJ51/4IfJE41amHkbBIFwVD3JnkxQgXn4DFYlQ2GAgeoAbtcx2oxXNAT/\nCBCPrembLLoZHQk86W//6c/W50Z6LPJl9L7i8bLLzhf3ju1pkEhlZE3eFLci\n4qEbmmmV/LsfrB/uIhUtv2KD9Pjb4BOPXsSYep+iSmgcUDvGMuf/oyemKjw+\nFTX+\r\n=LZbi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.85","@balena/jellyfish-sync":"^6.0.148","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.157-renovate-non-major-f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09_1620464452138_0.32718215591204425","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.157":{"name":"@balena/jellyfish-test-harness","version":"2.0.157","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.157","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d85b4b49875e6969906e1dd85397765215e33b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.157.tgz","fileCount":24,"integrity":"sha512-mY/RIjXnLmDkZqQWAOcCtd0tNgZJxd3Vl8e97Gm41QSRl65QgJWjqhmzHZm36eNV3ObotenaVaFQNXeOTyYX3w==","signatures":[{"sig":"MEYCIQDxhzPE9xM2H1ixEu7/VWX7TsLm1k8oT/ZLDr9fsPvX/wIhAMwTl2OaxD6c1SDrEQUso5zf6HndzNZyq6nmZCsYb3Qy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96120,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgllQoCRA9TVsSAnZWagAA7YsP/3xPUauB6Iz5513R3nDN\nPdEPvoESG3GFQ+5wUQN6BXc8xdSw5HV2xXv0JqvG0+NVfYp2jwpP+hD7CN0U\n9jm+I3PYeKxXKsmuotkXHG516RnSUo/6exv55KmVm3S4n/918S568jXwAd//\nl2YTEmyQrGHymvtcE4r4MID2uKqUEe/3VSZwPu12huAJVqiltUdq5neeVR6X\nDy9wWyWPZXnYh0EYezdKi0+mucGBoqImQGyDQ8l61jw5eH1hlv50HzypSMF/\n/CDWvajtu4CtfBbgzlCE4dR7X/nJunBLKdME9nHj3QoTEl+io0SgwX9Jg6fd\ngswD8RDNOgqsPtol9lyZFZdqvLGh2mCChE5Og4C1x2uJHvbvBi2eoX8LU1tQ\nHpACPlIY5uiguD1Fq/4XpcrDsd660ti/4y+/vZG92X3ot/mguNBy7SbIutXy\nMGP8lqceF3FaWi4gxD8IfWnJ3oXuDLaUDyxrReiYKh2jd9BoY8buIDcrW9q4\nk08F7CV9o9VQZapKDnLIbPZG88VOixecIjpAGrGkduHHSsHRVlPqwXHozpV8\n2PY1PJGHTLe5aIIJO8hhB4A6bzE7tNk+nHp7WFQEe6dN1GI2/d0HjTGhkYHL\nb5IxMWD5UWTkQijNuv41fMM74hho2zNf6A8BHs//ZHXOUnaAmNicwTrN4ryi\n9CZN\r\n=E085\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a6b98fff214c5f07b87e63442f12ba4761f82148","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.85","@balena/jellyfish-sync":"^6.0.148","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.157_1620464680536_0.056950469733104025","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.158-renovate-non-major-335c814f45381305dbac6707b8721e457b239277":{"name":"@balena/jellyfish-test-harness","version":"2.0.158-renovate-non-major-335c814f45381305dbac6707b8721e457b239277","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.158-renovate-non-major-335c814f45381305dbac6707b8721e457b239277","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"60bfdfd46619dd31296576260832d5667cb05b22","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.158-renovate-non-major-335c814f45381305dbac6707b8721e457b239277.tgz","fileCount":24,"integrity":"sha512-l6y8P9sfVL6guAPPIqJH9a5an2JFEhpKBGnsdPVhavxa0O354Adh2dsGLzfiZoYqp47nEtxO0y+A95fwIgkMEQ==","signatures":[{"sig":"MEQCIFeAU/nCIIA6Lw31uZPdFNbApPDrljVAKQavgxTMwvwSAiAGqJwDi/nxwho54Bdq7D+K0DfhdmvlbCHTSl6M+cyzjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96286,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgllWlCRA9TVsSAnZWagAA9HgP/ApcNiXklVNoUQV5MgkJ\nKUB003iaYysNvyvrrm65vwWtdf71++xz0lBG56b3Wnys/wnXXhbeH5MdZ6V8\nWNUK2oe6ss4xW9zxXgwl+yg9oWgnTFJUeCSy4rDV+nQU3z5bCJtT5AvV6DNS\nu77JtpRayQN2MdotULqcjoJlAfBiERpGpnB+iTnikQaezRTOn+3mjb6LrPAZ\n8yvTCy7MPqFT+YcTa6DGpBKBuEzAnTfVZwCeTBpMRUvtYCeXIVbGEuirzSw0\nJTdDUB9tQ1kKNHOT6Pzy9axiFk2+Wj0eFW9H8bpBsX0LVAMSIOTks4Ofuhzi\nAK74hkXlbAMhnIi1EvOIH9nCoBCisBzNX+6jSrX+fwlrMRMCeoWSMNUOqXwl\nwq+HWzjz01aWqnCjCmtx/dUtN7mT2L6h5gRtvOKcMopmgPQqY2olwt7lxpyy\nOHST6MlRWEpu0sMznJ1x9kwdr87CyVeLa1TzRnZLAFJCYPLM6KTSXhVE5q07\nDMTj8t/++vIp/V6EFZB0v0qV2NDcLrX+NbXt67ssftzSjc8ekwlh0yeZgZpk\ncIi3R2ZCEgASSLNxkFFoJ9Hgyn30LRAB0aY6ukQhoKYubVoVtT9WiwdBKkkU\nnzGXe60Dc1IyMqcTw7eOJk4sYbMMcz80fLe7y7x6JpuH6nmSrFqeidvkF5US\nx9oO\r\n=/vtm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"335c814f45381305dbac6707b8721e457b239277","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.85","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.158-renovate-non-major-335c814f45381305dbac6707b8721e457b239277_1620465061292_0.840352164867403","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.158":{"name":"@balena/jellyfish-test-harness","version":"2.0.158","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.158","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eb0a775950502ad6d3c80f3dc9ff185a20df705d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.158.tgz","fileCount":24,"integrity":"sha512-xoIh30wiAtheH2hKxevMgryLA+Jxt/8QJ8W+SQ3rsm9LvQrxVbyVUKv7rREwOIyW0MevsT4GPXN/h9M0cit/rA==","signatures":[{"sig":"MEUCIHqK2L+stz52aEgWUGA09fdU2/BNSE0GIPELwV8ONd9hAiEA2F0p26mf7Xt7nH+lOCV/m2LPdrWiLJ8jbkLIR4/jI0o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgllaYCRA9TVsSAnZWagAAuZwQAIa0xiAQKV+Z8H3OHlkG\nGMXblmnRdan/Ncp+g/9S02oiOYqYTRsOoY72TLzv1WiBlF//lw/5zL3KJOdi\n4Nnv693F85GSkt0K7c6KYxPmNYcvBMHnVM0Q/oLEmV6+fEY9oE0Nz0dMFsxp\nrdJnUC2qPUAWDcCrtfnW6eAVF/z69JgoKKFn7W++Tq2/lVXVpHqltNPSx8ZM\nJDy4AXdGT72k55Y9TDaqpf3o1qe2CAeSjGwg62SKYVtilaEMfyUvxvk/LZAw\nHLMIgyOk2C4vZXVRl0xAkZHuYbHpHYpG1MrxGuSroNe4PeAZuV4eltL6IO81\n/JA+t2BiorBuSPmu9b/xsj5UDo+nJixMKvxqWz5mCl6BCPOkwf3nVEcntk/b\nY40ZcF19IeQHgFq7hycNZ8lbjj77TBAZEtIiKXhb96qFSepSni7YRj3kpJLN\njOljuNVIjHX6k8X39UMC8QK5DatSoG4ip7kQveRQz1dCgoYJZ6Y2L7SpTlGF\nyMTMpMtio4YraAIoIYPDrZrDVv3uoASPHPR97uBxc3mr/EjAL3vwl1Q8IY0v\nm3GTe8fN8SULqO0eRCiRBnETSNfURBd6PA9dQE+6liNp6GrgqFKzYlJpR2TQ\n3H1uJZmTCLpxjw+ipZTq1NtJ1eVAnIdtcZ+S+9GH8BQWawez/kTpXZwBIX7K\n3L8V\r\n=2OCk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b208cbc7d8aa691bbc904a37d90950c4a02ecb85","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.85","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.158_1620465304107_0.8790943630928063","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.159-renovate-non-major-37767223deef88e6a18a7309b8d161064b2e22a8":{"name":"@balena/jellyfish-test-harness","version":"2.0.159-renovate-non-major-37767223deef88e6a18a7309b8d161064b2e22a8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.159-renovate-non-major-37767223deef88e6a18a7309b8d161064b2e22a8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b2a94adef3f110e5039c517cc377298db9ddc6d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.159-renovate-non-major-37767223deef88e6a18a7309b8d161064b2e22a8.tgz","fileCount":24,"integrity":"sha512-LSUwQqxzuxYE0+DH3rWMS1OM2XCkhO8xLJUVEpaTsAgtDNSVja20tSux1HyzbMViT9LBr5nilzlahrhgvgh5gg==","signatures":[{"sig":"MEQCIFxT5aVV7UE+vaHOhHDNVC3NZ0eru4NkJk4y6Q4Iq8XhAiBbbQOFIoU5Je7zHtSri8FurCD77c8UC38/5IhSasxX9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96392,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglnEcCRA9TVsSAnZWagAA5C4P/1STSd54Et9Z81ZnfWwU\nupKWqT0mMV1/iaED+JISkUkYw0WqVY5Spk/dgm7cv0GrFbqi3bzutgMw0dAa\nS5craq7T3y/z6nQd3yfD6qQRCyeuhh9ncaEvB1YtWyELArxCI+rHr33bx6+u\nbwhsREkKbRzdmcnJtmyaZ63Nrx0tiW4m94LnHZNSR0WtbC9moOY4+L0IGbY5\niJoVshvsg5G4Ezbow2Tj8tJB9TXVN3zJ/lXWd1/4nk81Kr4UV7vVDVnX+FXZ\nSN8P+rwFRQzibhC3lsUzI8bx6V4ezVU1X4UWUDomGCva3wBl665fx+mk7Tc8\nlrV0fs//eG0HdabUMGtDYkC/Uov/4QjSsf7aF33q4xr8XIu+DAIU5/fURnpy\nsu8TwXirhkYdKUHGu3+HL5sfUBxWZv+FUrNKAcpC+pwcYleEkp69vhuCJe86\nNTuIUnuFVOw8DNVbn0WtypaoRU9j89PT8Ojt9ebhO/1afSzhmc4OL99s0uXW\nnmylWL/ybh5ITGG57wRLFl6z1WuckvgKDU1i1zeA9CufnUwheXjos9JDXOJ4\nCEJJxLyYkLm+By0v/rvy0iEzICy8/4gGMOPI5kEqhnWjYphOx3umvk6sXffP\nmvTywGd70KkKdoXiM5p4mg4Btpx2oxo8MVCrchZ/e5RFWHl89w9Aria3U6K8\nvqPk\r\n=iSTQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"37767223deef88e6a18a7309b8d161064b2e22a8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.86","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.159-renovate-non-major-37767223deef88e6a18a7309b8d161064b2e22a8_1620472091569_0.5042906408145549","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.159":{"name":"@balena/jellyfish-test-harness","version":"2.0.159","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.159","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"44804f8b32842698785f95c8be9150e6faec2876","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.159.tgz","fileCount":24,"integrity":"sha512-Zi3Y3RgCf5xUsd48SJ09XZXXRGo71WgY3olxaY5fZVqB02y6VHshrC2yg4lgzWsZTZraenAx+EpsZOTa2yXggQ==","signatures":[{"sig":"MEQCIHTksy1F5DAznYnH55DCHImGRzQZKfJ0U6LAYy9pyVRgAiBo86HTBFJyCkhUDxSivtVlHQnvXgNzyXsRBxXhoj3pgg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglnHkCRA9TVsSAnZWagAApFcP/R+WYa3fMfpM4QaBAV9t\nhpQFp3gVfaSo9t1BInS7L05v2Zb3CupgvLnAGFVCYxdZ2eu7a6R24pIwiO3f\nXyFVhT7m9z0nqKRaoi1jNaUIfiwV0BXky8NDDLnWI/nkT/4UDEO+DrLTFWuT\nVb1jnjdGOKXBS6WTZkqNvHIy+tcUaskZzAUy/4u66heuPAHLR5ALaXzKxkEG\nymnYNTzWyVjHE9dwiFrnMqyCkz+VBoq/UyCyPSGeidGcTWdPADmFH5H36UOi\n/PKI4MQqjfSUHoDC/yiI2mJ/eT6rfzXWLrViHP6AptjxOSMI6psx6PN74REO\nnh0caQWTG1+m6u9GaGVzA4Iy+GnSy1bTFEYCrsFoUzViI9gjSgq/dZ6L5X+e\nVBQCRnF7w0Zwn9oicWkNFemCE3FZ4LSngmCohpI9p/pqLGUvUt7nyEUD4tU8\nkyqkh0l5BF/XOzzkaVrG9992qoHiCO02yzzWrdZbOZCg8qEg06/m57Z7onzN\n38VG33Ob/Om/PP6SBJXgypJbLFMn+szmq0Moi0Tr75wOoH3VHxb66a6BHR+a\nUR1YPtQpCeskb0gmSeoYI/kf4xlXcCtaWrgOwVCDXGcETCjJwegoYnEu5q27\nyEQsyQVI4DWLyvfr9dO/8B6ihGy0WYLeikt4UTzNIcnupeRLVlSXE1xAJF33\nGS3F\r\n=z5N8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"220a8f84a0f68934b5e58739c8dc81b4c41088cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.86","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.11","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.159_1620472291812_0.7037103157410418","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.160-renovate-non-major-42fd16d4f08eefb82e0fd948bbee29f311c3c35a":{"name":"@balena/jellyfish-test-harness","version":"2.0.160-renovate-non-major-42fd16d4f08eefb82e0fd948bbee29f311c3c35a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.160-renovate-non-major-42fd16d4f08eefb82e0fd948bbee29f311c3c35a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"864f99ed676357c4bee440564df5d4918b28c554","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.160-renovate-non-major-42fd16d4f08eefb82e0fd948bbee29f311c3c35a.tgz","fileCount":24,"integrity":"sha512-XpyZPQJ2y5QJYZVHIxrP84D/hhfp8r9PsRjgQ3MzM/S2A2iaSwVr3zH7Vnguu78Hz2mEu8DA0Wk5C9mJB+nIbA==","signatures":[{"sig":"MEQCIB0kYpIAkyA06bOCzOGNjXYlrjheQ0MqJU70KNBGgEjuAiAgu+/hzTqfQTgqXFoc9yBzVG5lXYHL4jsc+2k6f3DVGg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96499,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglzA4CRA9TVsSAnZWagAAW1UP/3ZgRW+T2RFPoFmJihom\nKieTxCuKwMv2hPt6sRcdZJoPA9cgnosgdil1E7YVrHU1zM/oQ7gPlDKAh3y5\n46vnA9owy6G8INcOCXVqwSiCFoCOFMC2O/IJSSwBTulBPc1joIKPKXRGpn4+\nyIl6aJ78P22U1IBotxdaf5ngcj/ESI080jOIq1QQOtJ3l9VDbcorjK7GcJBX\nEVAsQhLKnxbRR/zART62sXl+z8dVWZ6Q0YdeL8eO4HxDuOSC81LqBatMmhT9\nJAy/A5tR6mGMMyVjSkYzWZPGqpJJh7TeX057TumTMoFi+KmK+CSNyNVW7eC7\n6YSRvyI44C7UNftY75XvNBeNMft0kw8SVFj+eNknl+TFgYKlX7Zr6cMlncr7\nk6y+UrCwDoIoEFRV01ACENScuffVUZKUvYmFzxpGBS6eu+bmxuXP4nJ76XIv\n3OuTk2O6PKqzt45E7geDhvQ49xnc48E0F2/el8Ke1dmGdm0b/tAL4ViNLw90\nUnVs+FObKqu2mlvhHKbA4iykLtTsa60UEYuxYE/O8lbLeIxg0BZMQbzrLLJZ\n4pYOp0sp6G/XCETwAT2sVCZxoCg/eT8qGaqjt3l5GzZS9QjCr2q8nLyKK1wa\nPtFWFW8TDGDNmEUjnuSCgx884a+NfwX2tSF1J2rXLtOwn/vzP7QO3l28nJSq\nFLHv\r\n=rgcF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"42fd16d4f08eefb82e0fd948bbee29f311c3c35a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.86","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.12","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.160-renovate-non-major-42fd16d4f08eefb82e0fd948bbee29f311c3c35a_1620521015836_0.3853090515262101","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.160-renovate-non-major-37c1197bde3847e211e1dea595c590323241c2c9":{"name":"@balena/jellyfish-test-harness","version":"2.0.160-renovate-non-major-37c1197bde3847e211e1dea595c590323241c2c9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.160-renovate-non-major-37c1197bde3847e211e1dea595c590323241c2c9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"84d6fc6f7c7c2c37ec23c80fe2c4fbb78727f728","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.160-renovate-non-major-37c1197bde3847e211e1dea595c590323241c2c9.tgz","fileCount":24,"integrity":"sha512-4r2G38T4bZpnvPgq5U1hSB/GoVNpD2JH5q+slscrPvHJEjA3MeZkGani+TYxpB1k0l6xnFnF3lgWhzUEtpujBw==","signatures":[{"sig":"MEUCIHQ1HOIGFsytgxLyYk+nGJJLcRJEWuTNy87QX7ltw8TTAiEAqJciVkIdKgvLdPm8rFIateTzjj13/oO5EGYeUknfrx4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglzFsCRA9TVsSAnZWagAAWQsP/1u1WfM6zJVUDRmGMZer\na3NUkmQq9LAzJ8wS76K9+bZfR4FlfLdVCSR9lx8WBaIUIyG6sWBlstL1X1bc\nhdLcSCjj0UKULMmPTQtv3qSsojQanaT+KYHwDE3Zwa8MidIO0B2c8fwF4ZM+\nkDN+LFPniYhWNjcJKQEtbI9NHI2QVAvwGJcW5x0jN+kewosxM4ADeC6zkhRU\nWhLLXjwDLEEPgiV+SvKzVaHRkf126AMuQv0Cfa3PnkFcklzjr6P8dZ8g/WEC\nmwVufeqqNkqcUA5fKqfsViaiwtDG6oEFZED/vlRcmVOLvSdocwebSGsdsy7D\nPvKCG1FpcAId4220haQskGpDX30iddeYEy3807CKTYxlqPeSCrSpJHaDc0Il\n1wEHRwIrRbc49ProcP2tuaaWgHJ0uuo6hUCXM4HUeUFmwQDHeZu27WtukXfU\n07p4G4EJmI4xqgI1lK0Me3S6ESkmYu4B6/d8AWT3TwzemyYu0+TxBL2eWzDJ\nBCt2CwkphP2xek6vUHdyXYAuzBk9DoWwnTB+RELZDUZ9DwZ8ZKlB8BDbMAJw\nV6KunFX+h270yCieQTwF8kxgezEVBDlONNWMATmFeanPbOSrW9ZJKgkkz8yc\nD3zc35C/NHC69s0IIzvu11WA3CFjVahTV4xy4rjKTkGVK0Yv4WgOs3bWwhks\nS3sg\r\n=smss\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"37c1197bde3847e211e1dea595c590323241c2c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.87","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.12","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.160-renovate-non-major-37c1197bde3847e211e1dea595c590323241c2c9_1620521324366_0.5610260460397802","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.160":{"name":"@balena/jellyfish-test-harness","version":"2.0.160","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.160","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88b76d0877720d2944c2a7de1fcff49dbf9a5c96","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.160.tgz","fileCount":24,"integrity":"sha512-NhxRloLruEGlThqkp1oby9zBAeLnf+/FrQfbozreoMFvBi6Uu8gOdcs8Np/5JLSvLWbMYRpaf77kkrp1NGClXA==","signatures":[{"sig":"MEYCIQCCqnOLD/wVnVN2bSg/+Nnf1M5Y+K8jF25/J2+tl4SNpgIhALSZ4azTlB6gKvK8M9wCnGhWzu949x51RR3GU1shfNrY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96402,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglzItCRA9TVsSAnZWagAArGMP/A/PGHnNGCJh3uvFkhl3\neXP1hbMZHICI+ClGkQ0NTckLmc4cEUaWjkFnDfmBFG/G9+DTJ23jmDI53d4I\njj8EsRcun0wEQBFL3HnTFvkgA82lhwzDYS4Blzfqm11LUpbjWCTn72+sP3Kw\nfu+aGH8bnGuB2u2FvroA0PUxHg8FxSR4uNkRDAzEZ/SYcOaXKAY2RW2SWyPW\nwxP8iBY7OkqVTKrHfYNlohAHnLyZhM0JYfHsuHlAPIaowPEgDyQKCwu/8wZz\n5wAC+L8zR8eN2mzi0J+BNU3UK40VVcCK75kKvN/RFwmG389dLL17lnusZEFe\ngqkxlGsWD13EDo0OC22El04P2ysBwcy8tvqOYRSyhXcrNy1DtHEgm9WG5Rpv\nemv9C7AUbeQD8ybtzJv2qLciL5ELDJ1D98c3s1toIFnxIev9bMHSdy1QFyla\n11Q2byKnDcUK3j/RPpgpYMTNEGzm8QZFoi7mdFxa0Cq9mz4r3rl3OgWn11cS\nknSaOhAmI7VPCL9pmYBfJLuMZCeXCQcm6REAN8E++0UbcCOws64ZtEQ+hQFA\nM7ri+rMkarjR+ESDeyUE6G0NiF/qw4dLyZgepPDj6F94oXMc3RFBdDZnUqGC\n+//Zzbn2zv7H4ThiRofAPzQcXaBJyxzVHTrRhsJqe6OSdxIv8y25JYanZB4T\nB/RY\r\n=bhTT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"015f1e72b53f09dd1680af88e22c69d2c9f2d2fd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.87","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.12","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.160_1620521516648_0.17375980805602032","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.161-renovate-non-major-420eac940647a40ba30b3de711eb21aa9bc968df":{"name":"@balena/jellyfish-test-harness","version":"2.0.161-renovate-non-major-420eac940647a40ba30b3de711eb21aa9bc968df","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.161-renovate-non-major-420eac940647a40ba30b3de711eb21aa9bc968df","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"515fe157d34e9409b346bc7e9e81ee1523b2e7d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.161-renovate-non-major-420eac940647a40ba30b3de711eb21aa9bc968df.tgz","fileCount":24,"integrity":"sha512-WNTyAu0AXyY7xwTXOi+6asH3yRVhLD9470KNkW85Me0+LbVbZsfR2am0bmdPQUGEmfro5huBKJmhtsdaG6XhKA==","signatures":[{"sig":"MEQCIEnzZP4Xi9cRENGWnc7WFHqmvcfYkbekkb5qvpAINpu5AiAE95tJwe8OayWLwEvVi1WKvDXwAsvxvxDi0NYjVQ7yHg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96569,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl05SCRA9TVsSAnZWagAACwkP/2/y2DcQR8rzQmkR4a2J\n8XAXpQ9Vk7nW74amheM0/1W3PfJc43K85DJmM4OIUmukeDLfjxbxcNMRTKcb\nlThJ0GVBeMFlT8HZrJRoBCc3YrZ6In5TV1P3ejQbbsiyEqqXwga466bV/ehj\nJjIsqLM1GlN7jftfAuW6e9NsU7yF+LRHNX1nbA3R7fRrbZRApMzyCbyKhlKJ\nVGZs20yyIVlFnA+b2jTUa8ntMxlND/X0/5u1azN3GTnSMD43difnSAT5x+uO\nLpqmi/yXYP1zwUKUkhY+fjW0JEW98MfqOjeVyOZtQTbJdHA2xPePkecG/Jy5\n3D7GWIsaC2ujERwlhamZw6Jhvhiw6BdGAhJV44DstiwVsKgcpjCjMfSdzqq/\nH4zJ8kuTtAi1k9YDllbF4jZ64vw5D07beoQ5/g/9kaN5vUPN4AmTelPJh8pN\nunJa28le5E/+BrpUlqaFlDUO1dVe22Ze+3IHJWRjLNj/dkgcrmijVIFvH3FM\npRfdIXAwrApoCtLoM/bUBmGeLXM8m+Cc1Vrc0Snazr1rUQsM3ud9Et7ThZQA\nYSzMhk2RanaUZIPsE5pC3yU64fSfqHBAJCwzXw6oQ5ca08xSaIlFadYZZE+W\n6C455ZMUVDacK1+B6iWNYN09F4thqUOJ2qojlpyxps1N4RXxwDdkU3A3P/Nt\n4U8d\r\n=Eg8r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"420eac940647a40ba30b3de711eb21aa9bc968df","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.87","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.13","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.161-renovate-non-major-420eac940647a40ba30b3de711eb21aa9bc968df_1620528721820_0.9605705227654093","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.161":{"name":"@balena/jellyfish-test-harness","version":"2.0.161","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.161","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79d62015642f09f112fd62a75cec975084f20d68","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.161.tgz","fileCount":24,"integrity":"sha512-IOyACeQBZZYYtA2YckQBNU57sgLwKqOEGWVYJE8qOfsCAfFLeQ3cN6vEmbUArRAQShjAbiGWKPMFg1F6kl6f5A==","signatures":[{"sig":"MEYCIQDQbuHCMeUsFCnUsxFdNwqTa6sA6zNmusY1hnj9+kd2zAIhANWJByceWk+kZy4kKCfpUc09/iONJMZZgcUxLv9u6Gyb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96509,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl08hCRA9TVsSAnZWagAAH/EQAJesZXemeamYCw1pKxjm\nKckYiVEZFulrFfyWWgAyJ7u4NHQTetNdJDYsHpazY3Lgg3iFVU7SnJKUn1hg\nhpU3tQduCOzZjHqNqt7ozOiMoBKghK5yh+cwGGW0AfscZ41zYRTIorCC5Gn4\nG8mUFsQbXKz4FILbhMPeDfBTaeu+1l+R953GZly4EXkz+T9dwhLh2MduYuVU\nA5roK4JfdS+nxBnR446ZLQtciC4xZy0THA7qOwWzb88ZCcRnRjs3HULUajhO\n4xsND6VXuRjtrIUK+Nj+TixL9JHvJ6b7Eukbz50jaP203cTSBllZ2tlGALUF\nOE7wcDAIdTa61CG7mfwCuJuxy4hRlbKFrEWXqXkVrb4nFe0DsLXfZ4Wb2Lnt\ne3uOPMFUDptGejfQXOaT83bREKh0jAeTLGCvhm00R96o1x7xv80W8Gm6tGoo\neeG1rwnFPkXl6oA75VbaeSAs2CG5OiVLUOITRK5vJut5VFuLwn3fQmeJN94B\nxiQLtuqTfrWSnaBJECm4H3oHxsjAN7gyBYzn2ZUTTtWZ4JxY+e60dv8RuRq/\nY/xdxZdqb1N4x32OnhJhY9tvXbyvq/OfN/ZaErKz6wMR6w6NdxdshyY3GcM8\nLuzC+66s87dRLr2Nmh7vC7p+KBMxfk/x9Fhe9/waEYCG9eclw7F5D48XiWZ2\nsYJY\r\n=YHNI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a83cf20caab7f905a80e2cc7a0b9ebc873b43aff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.87","@balena/jellyfish-sync":"^6.0.149","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.13","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.161_1620528928968_0.7143924393657126","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.162-renovate-non-major-b19288c0d206ea0b5fb8c8a665a99de32445a149":{"name":"@balena/jellyfish-test-harness","version":"2.0.162-renovate-non-major-b19288c0d206ea0b5fb8c8a665a99de32445a149","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.162-renovate-non-major-b19288c0d206ea0b5fb8c8a665a99de32445a149","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c250ea3a0bb894567bf88a8d30472ae1663f9f6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.162-renovate-non-major-b19288c0d206ea0b5fb8c8a665a99de32445a149.tgz","fileCount":24,"integrity":"sha512-3K1LvjlLgLDvYDxMnChtjWV/uZGhDWAFD3+CseJTsECX+p0jqebO26vRk/JhyN9e8Z05WDgstK/tqfM6EBm3XA==","signatures":[{"sig":"MEQCICIZa/TSSxiQNSXzGOTDeZrwbz6eAn5v9213MgKTx0iaAiAM+yI5c4RZYrp32HWYoTwKjq8HjoKdpI3EWwQ8a9dvnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl50OCRA9TVsSAnZWagAA38MP/i7Rpsepx4L1P8GGEUTp\nvtJU17o51WyGN4K3mX69FFB72yT/dsh/t4ePqMN51FfOznVy6dXJDM91lDjZ\n3i5jN5SAX9qzrgEpkNpznT3NxODEQiqxOVezKjJ5LqKSqmAHRKnDc73Y8BSK\n4lFQni28prkLxkYJ7XXDlp8UYjxaqS/AqbiBGQcnj/MY1z2fPYmxHx+8Jr17\nSu7hDvi/DiM/REpP9ngZ9mSuBmgX5qKeCbnAN89DU9zKjXqAaQBdMhADG2mG\nD+qD90e/CbeT+5g7x8ZoTqBcJ7Xa7ru1496Inx/dv6xL6uFnVSPUVuR4c34z\n3VD5/LBM7IGxQ28vLFosBfGnInoklk7L0jnMlBD2X4KYIbfwO4OzGi3VOidj\n7hfqsdNwDGByLvj5aSzozhX4h79tMLIzsYZ3YWixpl0iqNB36+63AludmmZe\nvKdtqav+k8QDClMAAr7D+3J8rOX/2ALRP54vdraWV5GG1PcsfnaiVFWLADPb\nrjsJ46tBGXDqzLgzcw8k88BUz/YLOT7SaWURPHwK4EgnkXmlez270IeWyvMj\nniT+4ufvaW748G1kttyGWgjHCNy9d42cZb3kIy/dJzLxHitmM4+q9oD59ix9\ngRa9977Q9NrI4wZDq8BaZtmbzgNBKeOd1KkmfGPeCfID0NnyVxdDS3nMT8Wn\nmSoU\r\n=E84t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b19288c0d206ea0b5fb8c8a665a99de32445a149","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.87","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.162-renovate-non-major-b19288c0d206ea0b5fb8c8a665a99de32445a149_1620548878053_0.3930410221925458","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.162":{"name":"@balena/jellyfish-test-harness","version":"2.0.162","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.162","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a629013e5df55f1dd09f85166afec72fc64c5beb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.162.tgz","fileCount":24,"integrity":"sha512-7zIWfnW705+HqLV20MD+U5FurVV8//0qizsDY8mhym+nHS3TwXqJEaxzXSkRqZCF9rt3u3i7UT33JFHTBW3AVg==","signatures":[{"sig":"MEUCIF0XqvgBo35/UAazC/FBGqE3l5bgs0sEpdx0T0mWpfp+AiEA02WTbENQ8v0K+uhEBS0l67OTl2P1YlHlD1t+Zz4Eoaw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96579,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl53hCRA9TVsSAnZWagAAwdQQAJqnMGgspFL1WqQxy7BO\nior4PFpo2FkIAcDETcwXNCKSa16tvrNQdsERBMl5w9qESvJP1bUaMacIGfd+\nF6Gi7OpNgPt4o/V6U7W58m+aF6P+aNNN0zvE2WsOBvqHYPAPZ0hAEmI88n2T\nwN6O20nno4FJajsRZvqm3CWcOE9M0/MpxOrgKySdeiiocIhPkto8xq198Zic\n73CVgxqweOPC0Npk3EIfWzlJ0nHxwJATOfw+wXDojxplKdu+yZCq4N6uHbCM\n0eh/BWj/PQ3M1/KoKDTZUsPlLmNfjmOexyZSOcIjlWRbjFNDNsKGhQf2RmV2\nrnL/q4H4ww068XtTxGMvmzXk7ZD64ykEWzuQpZXVkfE5rafZGKqVKWE+cdIy\n4d6e73sgkUtaJ6K8REzWhn/ZN6JTbNYOU3WoGA9DmpuWFrMKS8LyZB6xgbnU\n3Ss09X0cSX7HnswX8iY1apfcBVXQkVs6e5fADm2w6b6ycrRbhhz8rySva30F\nowhl7xqackzeP80McJcOdNj2PuaYfrz8/s0Cvt5i7PY1Qy6LhIjsEVAkfbTG\nhWbzi5Sw8iXDv9PunI15l2YbF1bgU0w7CDf7QZXx9I+IPfvrcc0MAcO2DYVx\n/Bnlol3qY9W5U9EChreUAIzb+ifGRA8VWFWDH1QTJIvVaywqsJxpcVZNreuU\n7ubZ\r\n=UeMR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ab68d13b223d4d1921aa15bfdff2f28a0874e98e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.87","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.162_1620549088581_0.30982326073081556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.163-renovate-non-major-79fd50751099602d1833a7d9041a3b7f1b2a92a5":{"name":"@balena/jellyfish-test-harness","version":"2.0.163-renovate-non-major-79fd50751099602d1833a7d9041a3b7f1b2a92a5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.163-renovate-non-major-79fd50751099602d1833a7d9041a3b7f1b2a92a5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc61a352fe61b782692580917661d68da1e49a22","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.163-renovate-non-major-79fd50751099602d1833a7d9041a3b7f1b2a92a5.tgz","fileCount":24,"integrity":"sha512-uI62Y9KT8d9KpmigaIXQ2S0OcyIKEZpfSf4SPDEVEQdO6y6WcOitKHGd3eVFpbOWBlfREPWnlP9fZxqOOz+iwA==","signatures":[{"sig":"MEUCIARx2JCyg5+Qju0CC0EFpVme+A36g03bVxWR+Uq8tUIDAiEA4hEqfllJpKka0WFBm3d7wOgKGzfFc9Fa62R+ULeaFtk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96745,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl7WzCRA9TVsSAnZWagAA/qoP/jThSCkcA98jL6NFU/mm\nq+aQRVpn55D6FfbxlJQGOy44/2yCS1Fw3fdxaJzaChdqlqJoOl3PHIZXalmh\nwVNi2kiz1iOqMPk0UCI0FfR2YAIcIYsz/06CT4Vbe9EuUuMOpu1gC4YnW3JW\naI0wtJ143ZcfdoqwsjuqJhoRlkbAkaGulKk2V4n0j4Banq6gRU4JRfPgy9Hc\nPN/cuTUYuYl2GpB7ljdB0Fd4AfDNY33nOBCv7snknWFEOM5hz43s3AGQSoUf\nwAZ9rQa/c+ofeQPckkTMD7/osITZ3N3b1nGrqgxF5D3QPrcJ3a92/nMjg2ns\nEO4WVgVD37odt0lnYF8NtZ5Bgc+4hy1P1TgJvO3jvgShg3yb47x3t3SFqhss\np2QfIwlTYiwH/36ZTNPCfV36KiXlkQw7s7Ws+OjXPy+22IsPCeSMVps2vUJA\nPetYNfPEEF3tbZExihH7qgJdlvGgu2IDYF1T4BX3dkxCpYVnAovOH7YovaT4\nepmjKnwf2eXaC/DYL6fHPJ3f/3gabzfk7ETWYZT3V6ePQ6XJqNiuWOcwZeDO\nmWd6HxpJi3GQeD4zqMZhPUF/cFB1l7a8TUzXTtCTorbrXpAI41Y7gszhSMU5\nJ904KMHFwTaLH/x77LueBW8IS4Tus6buSxofUAGetHEzGbk1r6rLo8I/g0y7\nmAWQ\r\n=qjcW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"79fd50751099602d1833a7d9041a3b7f1b2a92a5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.88","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.163-renovate-non-major-79fd50751099602d1833a7d9041a3b7f1b2a92a5_1620555187126_0.6780284716892973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.163":{"name":"@balena/jellyfish-test-harness","version":"2.0.163","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.163","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee23d202c4ca33b5e51024663ca240be54bd8e8f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.163.tgz","fileCount":24,"integrity":"sha512-+aYWJwySBfeBRVno05l30/dj/9XKh8cPQqdYREknJUzY7QUP9UdFfxX35tFYTyHXd8sZONEfm50M/qn5e7nQmg==","signatures":[{"sig":"MEUCIQDPqm6x32rsd4KkgsSAGBfDGmgAnqgqTDhAM6P0SB9aeQIgGdfgePc8D/qCXzjtxkFDqtw/Q1A3xHByTBxBXHbuev4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgl7ZxCRA9TVsSAnZWagAALhEQAIwCl+e9uBot2tpNGQsg\nStnPY47fvq3T2HVihUo4F0pQ2nkWap/zHkzMzrSe8IZ9we0vlFGW/n24uCca\nMYPWErjiObB6H2QvbmKX4mJA+uOfeL2Q5h85JuMYII2G7k2VZ/jLMrIF28Bi\ngxAwkdePu0W7pUV569vOFvvN7mPLpaIQXZpxtbvvagfbw5xCXHC7qJaEwqAo\nrjz7H1Im5D2ZaCtOJwCVKIycJHGJyJX8zOCC4BrligJiLzmBqqIeoUJuDSwz\n2JDKpvhzqmh5en7C6leeoa8n0MLDcIKtvmUHQWquRrGYC6+EoNir4mmCtRF5\ncmFuUX/bQ3kJaj/f0gKGXukGAHf0mFlwtnHosQWXxmVOgkpUTgPOecdQ/0bT\nBsrH5Xt4PK1JiMGnMNsZ0jKH5hOQ+kqZseNAMQO6ch5rebahrEi+uR8BfyZk\nya2mdAUiFZ/r8fOXpjG/2LlJhaTOGhRfZ3M4USPozeou7MEJrpbJsm9Rr5pm\nROS8V6ZCxTr6zY9fS5Zwz0si4D47yIpAAGJ5Hy3PYW5FPaxItwMyEfiojxzY\nGacsd4DMwS6T5xpxTF29j9noBnkfTu3ceOPP44OT5gaY0XMJO5XZI31WLg1B\nJTBJAdX3hw72VlyXrXmBHHJoodj6IiAhPqtDGnFZ/Kq75QSeXxgALr3iXlAM\nK7LJ\r\n=RFhG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"92a897b85e0fe138ba03cdd45b887a9744a94788","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.88","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.163_1620555377257_0.8574575514534455","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.164-renovate-non-major-2fa07161511779e5ab76b9dec0347f41dfe0f468":{"name":"@balena/jellyfish-test-harness","version":"2.0.164-renovate-non-major-2fa07161511779e5ab76b9dec0347f41dfe0f468","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.164-renovate-non-major-2fa07161511779e5ab76b9dec0347f41dfe0f468","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a41da0a7dcd699d256b2bcd2d4f86a8786248b90","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.164-renovate-non-major-2fa07161511779e5ab76b9dec0347f41dfe0f468.tgz","fileCount":24,"integrity":"sha512-rwDyEYDAbPrtoy1p/5AHvETk1mBfDBmIy8dGDbQ6GQhWl8t1GpCVxB8oOIJS5Pe2Yj5wZi4J1mejsHP1Bs65Mw==","signatures":[{"sig":"MEYCIQCuFdsmQ0XU/ryWDFw0jy18R9D0jSbFVKwhMystDMIdOAIhANKyefhH5Ig8ToBi1v3nz7F9WgkK90UgvCbApCHGAL82","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmBZOCRA9TVsSAnZWagAA4lAP/0cnLJX1p94X6lpMpaai\nGyYEfwqGQaS1kw5ISajRuD4OxhwZFJCm4klDrZQFai047QnE9I/HUR8SZLwd\nRCmXMCc5QoTIOjT8gaba+xwGXbsOFD6/iFuU6V9vlE7P65YHhleu66Hl+2Nu\nOKynoU6TnGzFh9L4gqKWmk0xPKqY8D3yLzKk+0p+3y8k98xKuKHeShQDrEzE\nThip6hYAwcFsuUwKPoLdcHtf91u38Du+sAoR2nXxDP9wXWXBaIr+zwe7iINc\nJsDstXEp+NDmLImDUEsbnMzENZKRJlz7FCjY85HAP6d478SN0fEQbX1JeT1Q\n+d1itcb+YifEjBmDYHXHcPDgTawNNsEMZrjTZzCYt3a/H5L90BtTRKIzpDXX\nAdeBFOKW3DqFwSijrSohvXbhkipMLvrpsbOv57Qcn9tbkXABAitmDPNjXvKI\nWmkJ8fOaJoQOHmNKcRVGSx+sheJkuBewFELSEi877qgk80Qv8Au3uOdxHebN\nIKQbQR/yi+zSGBJW+YxY3NOjmef1xj2KZ2h1Z0qHUfYaI8u+Um31N7/uxiFc\nv26br/2PaLvaqzDhZJkHtazdYYXJ0QghexmtpLoSvPHqbRbkUG9hn7KnTp0P\njz7wWB2zvT3AHGRCs5042lf9BVKHbe/F4vBRKLKCQ0TFcywOj+pFaDK5PRCC\nol2B\r\n=mXkH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2fa07161511779e5ab76b9dec0347f41dfe0f468","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.89","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.164-renovate-non-major-2fa07161511779e5ab76b9dec0347f41dfe0f468_1620579918463_0.6658447146449171","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.164":{"name":"@balena/jellyfish-test-harness","version":"2.0.164","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.164","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de1f8dd60d3942a35deac4516048f0f2a33d9109","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.164.tgz","fileCount":24,"integrity":"sha512-bPTWrFcG02SGm9mfT0wD9cJSrudNDvnaNfoJjiYHE6BiMg44u8Tfb3So845djLVPaCoKD1P2dWBo6ZgjYfqm6Q==","signatures":[{"sig":"MEUCIQCPYtMnsk6gq2QAB2YJ1CFbsQxDThTs0weWyUY/y7l5qQIgEmx8GhOMCNERUtZb9Hg5j0GCkIWQIRFrRXCF0asTAYQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96791,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmBcJCRA9TVsSAnZWagAAdqUP/jgiSCKoDWp0X2dJjSCr\nmcsFkyb8PmavgNlmo7mm4LU9MC+nfsTXXEFJnqaRyWQPg7dxQLQ9aTIcKsv9\nHGNXvkxaGb8jpeyL6ZGCOBsoUAX0XwG8zBHL5S2kC2Kj9oSYc0K/5BK3mDMn\ng0C23MXX+h47z/Xvo39SFsCLr+KY5ojSH245ulb/Nw09Jk2u61d9m7g5THyx\npkEnpX8JPB54sfxOsW/V8+1IdMiArtmSsA5tGjQySn3ijwRrOxxhk0i7OHrb\nRWHB5ULTO1nf1KTL1bC/b+V9U9hpY331j6U6GTXFwUyG0ZG40mLHJihbn8oy\nD6ETtQZeBoQcTRZ9aM5yq+adTM67wB6Ff8TFq0G1TEcHJ9pW3q+kgMz1uRVH\n5FvBvj+O0AAzWq/aO25QDPGygawa0Ue2bNBBvNh/5PP7Q1L9hwEX9Odi2KO2\n5bLG83gIeMqF/YFbSiEi5fmEZQi20vIvjSO1v7+YaBZrbAu7kcJde9hvEGhe\nSbsbokT6Mb19CR50CDtzgvpbMYYot5zFjQ16oodwM7Y0eq/M7TCv0lvZ5v8o\nsisho01LsJPTXcVQ4u1vsw89t8E/r8XBt+I34oWQswUbBgDYOOdjV68uEJcC\nehRgiFBw5rWk4FrbpYr2cfYjqZhwWieQ2pojzGJGwLRHjgN4N6aqkHlTtjVW\nFO+3\r\n=Qsi+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6b86cc8e42b9ab4d478b82ba88370cc64ec4428b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.89","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.82"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.114"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.164_1620580104914_0.458961026714078","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.165-renovate-non-major-eab573464237b499e6bb8e4b300041f1fa543997":{"name":"@balena/jellyfish-test-harness","version":"2.0.165-renovate-non-major-eab573464237b499e6bb8e4b300041f1fa543997","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.165-renovate-non-major-eab573464237b499e6bb8e4b300041f1fa543997","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"05556c11c3b5e5cca78668c5df08614fc5a0d5f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.165-renovate-non-major-eab573464237b499e6bb8e4b300041f1fa543997.tgz","fileCount":24,"integrity":"sha512-05FKSGMvIrPdpl+mrzcAsOnYhmbl8NxtYK4Lz0gV+4ybadqJYwUaqGM47UMjlMQ+Fid+R2qq3wQ2Q0PhMm1UgQ==","signatures":[{"sig":"MEYCIQD5Bus6hfDOo0ykSBFX+WBsBAxkUSsORBglKhf6hoIhugIhAI076/U/Vn7EgpUQbNhsSeiRpfgfSxyeshGS9WPnIZO2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmOfICRA9TVsSAnZWagAAMWYP/2IsMfZUJXkcVLCwh6Fl\nswBr/fFonCdkf+hdZGxSb7pzFXqIz9CHn5AqRXi+t2IIM8hnAiSEQ6gwDB2F\npSDfymp9gJ/E3tLQIE+YsITrns/js7BJ8/ou34893EW1cFT7X/Xo7qc9C8M8\nFk8/5X+gQii7efDm8hjrcPC/PBuO8/u/FzNqbGPdSIqsWDdh+BTlEXKcLwnu\nJbYmBoyY8C1SJc5h4UGrH6X57QVhwIpJpyKifeZyq8l57jUEzNqjRHcoG4eC\nsYjxOfaDFaGEH/PUbfDR+vtLKqbTB1gMht4oB9Bq5tfi22fsIEXJhYBEN3GU\nO/e7mx0LyJGJSt4L++Z+ui3Cm2ihkELkNoqrQY/yvEcws+CwAvbOsCQxqKGZ\n2OZ6fi2ZX8EURqgkTjCke7aC8wvwdDYzVGnX2/5YwYwsAhomJX+fQkcWA/zT\nhms6Qwcen6irQMXEhJv5ltp1iHRRwVbtkW3CGtrz/4dyS8VVJq1eDpAm/f+V\nJo643GMVIFMoCSWm1z5q1uQ6fIEM6vcD26hPOCXjRLn0rKEITO70xW/VU/tP\njIBQX1/jFlh5bQxsYc/WWACcSbX9m0/tVXns9DdiejSDN65jVz6Wer/Nk8pa\n3yR933tbdUB/7HMozHANpVi23uqfzXRs+CV8RhssyDxWDCdUZ4RxMAzrzvOt\ne7/b\r\n=7xFF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eab573464237b499e6bb8e4b300041f1fa543997","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.89","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.83"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.165-renovate-non-major-eab573464237b499e6bb8e4b300041f1fa543997_1620633544263_0.048576918664353874","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.165":{"name":"@balena/jellyfish-test-harness","version":"2.0.165","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.165","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0787eac336359cf2bdf932f74bdfa0f392f60ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.165.tgz","fileCount":24,"integrity":"sha512-nrnSY5Qx/Aq+uP/DDY1N3eOpyyX8Wdr/hTE2HU1HUsMebMm3uHZoNGs5YOKCXItGPhXjHVOpYEyvBuASW5rg/w==","signatures":[{"sig":"MEQCICt+2vcplXJnSfxMHs3YHXLthcN8DQVXduXYzo9+wOArAiBCQ/Jx+YVSLO1ftYzN8P5459uRyS9zdY9zyTvS9dJEDQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96861,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmOjWCRA9TVsSAnZWagAA34cP/35YYP+CDRHF63tOUjTO\nP6dfKcQPeeQBpEUSDRCAWnIw/yjfuHBGfGmvHK/wSXTW5vChA8qgnfDT5LAo\n6y0tt4VT2uCTBlcUSlsG9DNiPQ0dDDxAuDP+ujhLuSNJhx+mSHO6PglRWhl1\ni3ds4yUp7YOwLJlRuclZVqCwsvoV/kVmrLtiq8tv5hz0zjBRA2ZQTDwNtFLr\n8i35LJxYJ91AqNtJi6N0+jLnygH9oYpIVPXU69ZAjPuveLotydnOdgNmhp3I\npEtS/9q0J79Wl8kiAEpzAFeXaPTTMNb+FNa99FxbxNnIoc31deR46rSsJQA+\nXWtEnJNajmO+gBc6ahHkYDUPHn8eo23AYGETbuqK9rdU12BzKetTxOkWgLo9\njplToW66vgWXB0FuyvK8xplBUoPk9lkfie/y7IQKb8K5mz6Zduw/xZwWswMZ\n8iSNvJvaTDUAyCU32cMedhsySM9Kz6/rOj5q7vyAlpaI+O4kgoaPDAXXNXe/\nR8MZ4VjPlQlIPvaNjBIg9osy/2KvR6z99yF92lAFIe6uyt24QyQQLxQbz/vy\n15MCoo4TTBlrx3SIKcwtxcbrODqlMWSv9+sf/leHGmwskF+PgCf3PJpS8blL\nHseHtQQnLk7Y+9azKvqnKKupRKLQI6ZzqYlN4jk9+U1lKiejFmFztaJ0hF+j\n2SHC\r\n=QLqI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"df8d25bce5f5cf883809720a1c575da1be16a12e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.89","@balena/jellyfish-sync":"^6.0.150","@balena/jellyfish-queue":"^1.0.68","@balena/jellyfish-worker":"^4.2.14","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.83"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.165_1620633813666_0.15627629217373706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.166-renovate-non-major-82abd83381deb6d43fdd9a14acabec1245bacb52":{"name":"@balena/jellyfish-test-harness","version":"2.0.166-renovate-non-major-82abd83381deb6d43fdd9a14acabec1245bacb52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.166-renovate-non-major-82abd83381deb6d43fdd9a14acabec1245bacb52","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a867529378a7f76863acfab3469c216be9a595c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.166-renovate-non-major-82abd83381deb6d43fdd9a14acabec1245bacb52.tgz","fileCount":24,"integrity":"sha512-i3yblpHuPHYMKntr73Qcxo7D012OnDoJ0c++zLnxDSaizpCWg+JHQrT3FxpcHXCIiE4x88Pg/u0Rdik+IdbYSA==","signatures":[{"sig":"MEUCIH8KQ9seDiJgFzICtwa0CqjgoT1HZrIHa641Zr3GRnhHAiEA9RZigtTADMGBU1CueRK0a1HeaVyn0c/IyiXDMElBeu0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmPMgCRA9TVsSAnZWagAAn5kQAJuJ0UqlCmU8ai+4vHfs\np4v8n+whTBq4V/erPbJXtBTJp3OGwdSVm0Vf4jMj4ZxyVfgOrpqWlnVYNqN8\nl1ZP4+eitPFkC53JMbcZIGv8zxNy7rFqXsE8xuuFZtg8va7LbHhAK8DLR5k7\n2QACvqQpfKJ3ffskEzh9IiM560mz6hBpj+LVNnmFE1qA3MDmLblJJuS909bm\npj2PJ+pxSdRO8YVyRu9nb7ApHVbkYcKTcbDUzV6dD2KF/4QtmuQvGcxJ3GiO\nenQRFLQBHAdnVvri6XneJTWHYDwyHwRSn4cW2EfCH+6aaBtpxg6rtKlJBIhl\niJ21Ckb1r8+lyMJktf5wtWb35JoWLrBCKuSqYvBEW3Q3+7PE9voC+uUWbr5v\nQvrj3jXdrwSddQSwKk34ne0VpxsOM5su3dKOThzkX+lDM/dGVKFy3j3Ifewl\nPY8qSpQmDM0UQ/nMFOsm2+iRrO6/kGXMHQSjmrFgKac7UvAmyIdXO+mVYHOC\nctQ/la1nByPBjWTbaO6Wv7RDH1Peh3tpGeddtAIxURlkbKZLUizbvhFI8XlU\nzD75zlysaJjf8leR04GNNgo7tabzL9wMw/+CiSZBUsguJRbHCIg4lVYU2Idv\n0s2HfLnSieeyV9fSgo8qSlFOys369W+pRWn7oGX/w65Yx7megQm7AQ/6psD0\nkZpj\r\n=cpyr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"82abd83381deb6d43fdd9a14acabec1245bacb52","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.69","@balena/jellyfish-worker":"^4.2.15","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.83"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.166-renovate-non-major-82abd83381deb6d43fdd9a14acabec1245bacb52_1620636448431_0.022443605465708893","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.166":{"name":"@balena/jellyfish-test-harness","version":"2.0.166","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.166","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c6219ae5e9b79835f04d0784b9a5009f4638c15e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.166.tgz","fileCount":24,"integrity":"sha512-L2QZIm41kmALcmy6a870DJmuMQdWwKl/gWgHwFWupD1qaX0T4X293JubSHnAHBVJrkeKgfwL2ewwkjHJbSd3zw==","signatures":[{"sig":"MEUCIQCP7kiFaCucebQSpf11PxQqjbEguD8w5sM7ia+YL4EnogIgCwMhu2P8eArhS0oLkjuEyS6p6xOytqlTDDjorFzUis4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":96931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmPQ7CRA9TVsSAnZWagAA8/oP/1FcfyU3gVax/Jfr5hE4\nvPt8UZe/2+UMW7e26+AqOPN5F8U41fZc+rpc2LI9XDZDFms1dgKcMAIcZM1h\n89pwuIfnFddaIL04NEYblYHPoYc4fo8a7jFDfoYNFZwhAXSfejndFhhiYAwJ\nlFKlb6x9CTveukE7ITPuiPu+tmKcGVzFvVQbhQNhjF3tFY9eSvR7iAU0IZa+\nO3x0c4XNK5m0oHPHilblxeZ5smzZ99X0kOvLUxXmciWQFM299s+yxec5WCT5\nKLnWqxxCvBURlp9ptQilAjFXwZicZo0zgMiNJUFvfs0xx8VDQP0O5auh/3Yh\n5ODJqJn07EVsO6EKJ0juftl2Fe9bw8ejhDCA+PBv/Fpf2XBANEt61XE+54MW\n74NE4wQZoU7IdRhUzPTuq9m67swCotkiRxOkVuepHc9c5r+c8IRuZDF3RFTu\nU2MkHYratbbyIzLFm9GpvSZasWKNBtOaoRZ/w2U2J0xMScRkhDf61HTqZ8D/\ne3O19teZutE2gbnPwwT1ahuTj+Y5ASHWFBmwwxv+sWAnjzgGRrn5uHteEi+V\nnUkGwIjUXi77ZcZaqFdb57IBcnZPINb4mW7AV9rspos3cJlF9xCMWtBedvLt\ngb5UMsEv97NG8vKApWcddtjQt+LxAFFRyVOEU5M9Dz1cDDFZ6qPisD7kko0k\naO63\r\n=zM/a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"744e59525645cbf1a08d97c29cdd9d17106173ec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.69","@balena/jellyfish-worker":"^4.2.15","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.83"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.166_1620636730944_0.3632682728145553","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.167-renovate-non-major-432b3fcad0ee31adb04db1f3df5e953378ebb318":{"name":"@balena/jellyfish-test-harness","version":"2.0.167-renovate-non-major-432b3fcad0ee31adb04db1f3df5e953378ebb318","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.167-renovate-non-major-432b3fcad0ee31adb04db1f3df5e953378ebb318","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae4534dc6ca01e3c6b5108c1562779a28a9fe3cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.167-renovate-non-major-432b3fcad0ee31adb04db1f3df5e953378ebb318.tgz","fileCount":24,"integrity":"sha512-eGKQQWj5RbA15Q9MGhKZjRDclNR8BwlVici3cz/6KPC0GpCnvFFEqhtedilTbYUNY0bin9PJrIRTXoNJB6b5Vg==","signatures":[{"sig":"MEYCIQDmpE3MNEuFjXcoKUPgFIhx77W6hdZ+SVsP3xHFrdstawIhAPIksngtrF/EKox0aDA4FjKByHs+bxDxJQ1EttCQ1r+E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97098,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmQDtCRA9TVsSAnZWagAAMVEP+QGa4Y0J/vdMKiO24mti\n+jir3lKdP2gtf+RUapBpy85TwbGv3CMYEt5E7TY3W704nxnn1aFh8BLckDKO\nNeZPT2zR/uF/npTjgCUQZ/KBBF/bFp57q2rniZigBiuTI47il4r7ZAhXO7TR\nfuqg22JnNNwfN2HCbuweSV3YXwaX/+Sh8om1+CFxAzXJ763HBx7q+a3Ygl3f\nDZu9RZoAkDMS6dUmW2iI4reiK0WK76YVT9tKkqsom/zwSQmGmy+E+xTPtLjs\nK6Uhd9r3zdnnXlF+neYJsVvuXwGYqBIIyE/5V+WAmEy591/HIL3kSIybnAGU\nvA3jTpwlAFjCiRCrYLEq5qkoUdMiVgOeZmQ0OQ/u6akeOSfCN7ET/PC9sAY/\niix5o8+VDbIr8SZIAXa740LUck26qoIlbUhMiweSnhjcggnpM9610DFx1ils\nMhI4HvUFWsD6nHIex6DrhWeBWEw1BS5j58lAVZCm10qmqzVU2Ls5Tz5QNPu+\nNTgITR//3RUlKvSacMl/HsIikcxZBUCxwBoa0o6OLIrFnRf08CgoRn5vDfL9\nocNIGjfYsTrHHBgdIbJpIgM8watSPB7b1+fSMrV2iSUOFIUG6EkPAeCMHb3j\na4+t8QVKAFjma/HNP/wpXoV9GctANJu7bBMQm2ektAcFJDieNyzhb+HkTvkJ\nMr79\r\n=k3Mq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"432b3fcad0ee31adb04db1f3df5e953378ebb318","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.69","@balena/jellyfish-worker":"^4.2.16","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.83"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.167-renovate-non-major-432b3fcad0ee31adb04db1f3df5e953378ebb318_1620639980973_0.5204303999921585","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.167":{"name":"@balena/jellyfish-test-harness","version":"2.0.167","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.167","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b6ab011d68648b4a259cecd824810807c69c91aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.167.tgz","fileCount":24,"integrity":"sha512-3p+IgIfVX7Z0SSixHR+aJuYviJIdnh0MfV/d28IfF3qqYbxwutZ+DCBurl00BiY8KY1nUdwWgtm7zHjvPHImFA==","signatures":[{"sig":"MEUCIBdImsn19GmZ3JLws1tYSvVxl8rOqAYZrVKzsmHpZfUxAiEA1VInmjEzLABNVbwwX3UqBk0p4MJv73R9icTylPbLk98=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97038,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmQHFCRA9TVsSAnZWagAAV0YP/iMRwTIhWYj5NKpTrP71\nZoMZIq1UI5llLmOVpuc4W2INfJnD/HcPk1XTeRH6FIsB82yJxnZmJBSTqctV\nRbZBDBvs7FEx8eAo2F11aSoEnvwBvtrynUNHTacfkmcuLTp21Xb87IFprjUI\npVWj6fzxw4id9tayreqNu2MCjt0U5kOva5+I5a28vWWgciXaqpTaS0dC+EHi\nJnMb8lxGGzq/BN9lB5DiwibxMEYmdR2HfodeSj6tcx2v0Xj5Ef313nFYo1EK\nXuyHhORBxbEsUi9OWNEZNF7hTrmpMci08meSomypWm9Dybd+SIbMjeh/9wSB\n5deiPcfhCaoCTcsIaitoULGXoGP1JgbxW6FjgJ9zyd68Ww/TBajJlIsI+oEy\nZC2JHh1Uag+6bEzY2XPr/PoBDK0VwUS09P5ezKs6T2wS+y4csJW2/LjLXtbc\nzftOhFJIRMfZvYOmh3xS8WuyvrP44iATMgTN3984bVchsL2wKp3/+sOfB1Zh\npXoLu/AkzxniFsnY4WXXXwu6jw2FZYltN6kWWRga1XtMAzqLRmymjfEhyZoK\ng9kkid0YuHtZmdpo618c2o/XAMGx2a0S68fCF2jYKJ5XI0s5u2bG9nKxfFJS\n6Ur1rUHo22IGUvHAGhnRGljv2+eOCA40Gu1Dqh4ZqPME59aUIDpuaYo0O/2h\n4X4+\r\n=aDp8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"759aa79a0b5f82234c6120dc5bf351c3d998b832","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.69","@balena/jellyfish-worker":"^4.2.16","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.83"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.167_1620640196712_0.6222788206910557","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.168-renovate-non-major-67f1c3a4589b25a6d518b3b931f5981ba0cc5e44":{"name":"@balena/jellyfish-test-harness","version":"2.0.168-renovate-non-major-67f1c3a4589b25a6d518b3b931f5981ba0cc5e44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.168-renovate-non-major-67f1c3a4589b25a6d518b3b931f5981ba0cc5e44","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b66a2f4e39af10d98dc674ce90cab65e3d52f18","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.168-renovate-non-major-67f1c3a4589b25a6d518b3b931f5981ba0cc5e44.tgz","fileCount":24,"integrity":"sha512-SPGwmna80oWLCSvby//1OwlecHFn8BhSnAit5AWFkGixSsEXljZ3atvbMy7xhisS1PLthYS8RrI4h5Z39wB5PQ==","signatures":[{"sig":"MEUCIQDWQwa3pMjqbhzg5zAVtx1+vH34gdZR5/3CyVBKoY6riQIga7I3omzzAlEpX5H1xpNUsfDa84hcYGZD5cHa0nyRdFY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97210,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmQ8nCRA9TVsSAnZWagAAkyEQAJ30e6wEGQHyR8Fqyck8\njNJQcVDnkbBR7TZbs4zgqGCqH6DARndLszpLZiFtoi3CWP8jbblfyRQ6jKOB\n03E0LXkNMTgYubm29D3SE6QytJdzq6gbPioDXwOTWolZKfVfSotSHjYcus2P\nkDPZ7746clDw90v07xernB9VQ0TCWuIycW2nER8XuC5+IfI5y28E0Z0en5U2\n9ZXuTsU17dXMo+tPIDLGxtTZE+ivRRrnuV9rlSCN6Cbi+SayTSV51PD9wTdA\n98hO0zyrx6NOYynEtLUrJoeh5kFwKUUg+gfLwB9asgVwMr2k3d8H01hHBdHY\nCViQCoSiPY4bSXcl9Lw/zaXYZvMRlY0pkGig0rzyX3s8fcdwucRV/ApDrgKU\nAkqYmAhY9UIiogHLfhOL1+lEdOgsk5pS8oITsv6Z0FCdiLe/AfxW/g8RzUuq\nTUhPJI23RMt+tVPqChiOKY7s2pr0W6F1mTa9r752RPbde4JW9mRViy+GNics\n8EKiyjfFkjLo/S7LxdapOElMSWwVMLO+Wbk9Iq/xi3Mm3buprsda6zNsK8jT\nSHu9ucvWW50zNaevKa2NAtcjf/k2JiIqppWzZs84QUgNxrEDQFX5YHog7ssZ\nMabXRqS+jzxJ7kWAjn2QoDdp0LRLOR3eF7b01ocl1bHy59x3nR46Byvp/zFC\nB6OL\r\n=13Rf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"67f1c3a4589b25a6d518b3b931f5981ba0cc5e44","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.69","@balena/jellyfish-worker":"^4.2.16","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.168-renovate-non-major-67f1c3a4589b25a6d518b3b931f5981ba0cc5e44_1620643622966_0.8897720924802279","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.168-renovate-non-major-6aad6ddf11c9223dadebecba20e3709a51d6fb5c":{"name":"@balena/jellyfish-test-harness","version":"2.0.168-renovate-non-major-6aad6ddf11c9223dadebecba20e3709a51d6fb5c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.168-renovate-non-major-6aad6ddf11c9223dadebecba20e3709a51d6fb5c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30ee7055ed1e6e7bfb178313f946dafef62c05ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.168-renovate-non-major-6aad6ddf11c9223dadebecba20e3709a51d6fb5c.tgz","fileCount":24,"integrity":"sha512-PG8CtrGPjrL1BdxpbJzuaJMbgOYWZkaLrecGZ2ggYn2KMjJMlhTMIeEUKMKzR69aAXGG1C4Z/C4rlKU6iMVaAg==","signatures":[{"sig":"MEQCIA0XCa/cR/c7AjWvgT3h1wT4vmCjkNnVTCINQ5fXg0z9AiBkViNjSaGgPqGUnjy6Sd/fbUl8SWOl7U6sJW7vziyfXg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97168,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmRBoCRA9TVsSAnZWagAA4gkP/1si1otDEfmmQN4jS2kt\nYgUm53h0+NaMfrmDMFEHxLJ2qEu8OXuD56nG/K5GhCyYv4DD7PVfg5mJvCgj\nKaLAUEH29WsXKg8KklTJ9AkFlEz+HyNip+peTWLDH+8RJvpFQp5CcuYaFaz3\n59jIPQuvxW0AMcvvnz6f6CbIPABIUX9X3vVmse7M3LrR0MJeGAMFhcRGgRaU\nKsJ2BEQILCgRJdIViwDNm+G9yoFbYTpXRmVH0M3oHHcDWfxV8abHQ/8s7Yqr\n05oV5kIySEGVo/3yEMEVaOFx35eOW0B4euwP5EFoS5PhhdLtuu7kkeoWuhw9\n/a6b+FoWNadqIAwz9gB7jnE2x8DvAfdpv7sX9n3K0g8QpU9c43VYSmw+ctz6\nI4acCTG1hek42Ibxx7MmWqV3rQd8WMA36XKZC59MjbKrRaw1wJXkULF+6mp1\n0pC0GJ2i52X/KIj+3K93EdK/DYCxJDkhj0vOAuInIh4l0RCsQYoku3CKvJHg\n89nmtBPZ60jF+XXMPxAMPKLlNgFrAJsgU5jOGGulC2suELVbbb2ThOTxH8RU\numrx8VzJ5/e6AA90KfPwiodBha2PmKYJznBHu3XcuGrex5vZZIEU+8/Gm/QM\neV8Uqsg+DXMI0d3KnYmxlYqsum0F0+6pY2mtr89AxZx9TpvJLyUiN/gzYsW9\nTHsC\r\n=i8Bo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6aad6ddf11c9223dadebecba20e3709a51d6fb5c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.70","@balena/jellyfish-worker":"^4.2.16","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.168-renovate-non-major-6aad6ddf11c9223dadebecba20e3709a51d6fb5c_1620643943910_0.8915469908487936","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.168":{"name":"@balena/jellyfish-test-harness","version":"2.0.168","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.168","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad29ac8bb7bbbcc2e95e85831c5d535dfc0a6f6c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.168.tgz","fileCount":24,"integrity":"sha512-McXzPzNND0FpfhdL4JxvNEimqvRa1XIBLT/NXmktzOjBj+szaREExPQa1dScHljRaRghswbkySfnnFHWu50Eeg==","signatures":[{"sig":"MEUCIQCEMSF03tm0ifnzJSZajHk1iWsRv0oPs9oVMEd4uDCtFAIgb405n9iDeIGqtZ6VE3P7mQXKvp5OnpOp/5dl/+aTLyg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97108,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmRFLCRA9TVsSAnZWagAAOE8P/Ra91fDlvzzfgKPeDVME\n6xIUdRy8ew0JGSHXt7RUm8AHDKo23kEaVrMal5JuRAlPCFFLTDS8puL6r6WT\naeHPng4lRROLdwA4rC7oUQIfe4/VSDQbTv+Mn06bLtgooWp0E7etRAvWJ5lp\nYzYiVuz3Nr0gXYsi7kAFF1BoGDI6yVORFivm+nUJXDUHowlDgvB4GFGsysum\ncW8QNxfeWv5E7Ve+JdeFn6aEr+AEyXbvc5mIgmik2lRrQVZGzGN+TlRA+6YG\n551K15GMk3ZqNBRVJRZO1mgAv1/OhJCLOw1u92icfjMUIuQlfuIf2Vhna+3c\nT1SqLo1+r1a2jPwfgLvgQsObE0mX1GIkHgjgdetUe+WpOzJuodwQDph9Qt5Q\nRUu8R0UdxP7KwFV5XmNixui+vVNKS8cZdQSxpzcLzWgvlCt6g7lllutAIhdT\naN3qDDQoPesPWH4eV+RlVnGopQPeHzPh/wHqSdT53xY0OwvkaOuaHXGqTWLW\nTkY5EeHrQLKZlQxFgGChp1idCnxKnO9mxQagwlZk5QT709Hga6xU2ZhI2+PY\nIHbKgmmkpIwtH0boSGXcU5Zur/KhWQ0kvz5fkJ1aO71GD3tPJFVTOHxuZ2ky\nWr8FWakLiV/79uXmuSUQFU4QtRbnylbTRNszmFBdOUGxkjcF63gL+k70M5Zr\n8mmj\r\n=zv/l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b5bcee6dc4428412da3bb65a28da4c579fff57b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.90","@balena/jellyfish-sync":"^6.0.151","@balena/jellyfish-queue":"^1.0.70","@balena/jellyfish-worker":"^4.2.16","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.168_1620644171315_0.3476301786789151","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.169-renovate-non-major-f4546117de53b5dce7c9a6e383abc4bbfc828619":{"name":"@balena/jellyfish-test-harness","version":"2.0.169-renovate-non-major-f4546117de53b5dce7c9a6e383abc4bbfc828619","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.169-renovate-non-major-f4546117de53b5dce7c9a6e383abc4bbfc828619","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34df3f3b1a7810e9535a328d963b758c43ee325d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.169-renovate-non-major-f4546117de53b5dce7c9a6e383abc4bbfc828619.tgz","fileCount":24,"integrity":"sha512-tYUd26Sie1L8yLZD6mjvtKBhilmRcZ2CsW+EaOo2QeM5iJwCSO0tKRMp7j8gLyT3At5InnRKS2q1TQdd5a8Tdw==","signatures":[{"sig":"MEUCIHdkxmWF/WKDoe0vQsx0fZdUfCdE2ECdDjQbbWtdS1SPAiEA7mtz7efD18QnEwiWELU9qutMZkvtEqTH81TNCdaRYQo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97238,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmSStCRA9TVsSAnZWagAAvqMP/1oh/8d7CG6JSzRbniGQ\nPFAfm8U6ekbRATyKjXYicFPb7iziy9TvdHQyFXhGQ7KtZestp/MVxq0NfNv+\nkuR1cCz001hsjE3aQgBGpKmC+bf5LOTOFoGvGTK0yRyzi9/+uL1iqynEnjNv\n4oIwKFjya2kpL6H0tnTmieh5Zklf9Pj83bqdaqBvKKZRXbS3THLHrTqEo3RC\nAj+RR0v750zv/jdE5IP8TwuFvAJhjREI6bdcxieEXTckt+zYGC62b/+YcBzL\nNQvdyUrsBxDnql9z8utAcTriz0VGUaxHiJA9yOlfPDYsRtKCBkoD5JiyU79u\nJr0Nuj+2QjLMzZS5KTrAn1t2RjJfoNjOtRlyzUJ9Tl1J3FxZ5kADmwVFLuoJ\n2qZkdkpa+jMz0Rg/VAErItJvzK0y1d9FeqRUsMqem4AzeuqW2PDM40lBnBDF\nOBAxAvEP9Ww4RPITrGstxag1vOjBVkLgojLy4yKIRAtVd0tc1HYn1jAqop+k\nnsY2xAq9E4nt24ID6QYfCv3d/skqKC0qenpj1GE2Vs64AqdI+kBfhyaviJsf\nPyw4lnSLX9LwEuhjNee4wsFXPnJ0YglnvoiFXomq0JNZN97zwLvzxFgBaKSz\nLbI/eEnt4D5OvLYX8ELhjIekCzod8e6Ze5FIMYsEILdTRkaIwtStfD8KQA0p\nzBHe\r\n=kiaq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f4546117de53b5dce7c9a6e383abc4bbfc828619","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.91","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.169-renovate-non-major-f4546117de53b5dce7c9a6e383abc4bbfc828619_1620649133148_0.3772815362404962","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.169-renovate-non-major-eceefe2be9419e3654f410c5db2f604fa06eb47c":{"name":"@balena/jellyfish-test-harness","version":"2.0.169-renovate-non-major-eceefe2be9419e3654f410c5db2f604fa06eb47c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.169-renovate-non-major-eceefe2be9419e3654f410c5db2f604fa06eb47c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fec4431b7b1a028f9c89241661ed71cb7ec01a7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.169-renovate-non-major-eceefe2be9419e3654f410c5db2f604fa06eb47c.tgz","fileCount":24,"integrity":"sha512-gg2BjPL154o5RrZTyeSz3DoX4B/poCZotRr+M1dwtNgL9KuwmYlAcP6Y9CbLARe0anS+azPv1xEeaGJ6i4j4Zg==","signatures":[{"sig":"MEUCIQCk3VUjb2qTLijKTwrBz5L8dTYwA5qWrCYlFRkO4F6nuwIgY2EdM6PT4yAI08iTNcQFcURwduv7WghpjI3OyilDzyo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97238,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmT2aCRA9TVsSAnZWagAA3/4P/0xsGfNQCaF9JaMuV9he\nVlVK0FrQf/TBv07SCf8/NUXQGtwBQ54Sh/SorQHjT3UlE5HQWgeME2N4fxgR\n03RWYgrpidNaLMuvc0yOEwtenT/ElnBw/FBcGn3hlESV1FHr7Oqp4mfOHWul\n8NIH7DKjfgzkyjsukBHZYhLqBDgzdqstxfkv/0Ef6r5BG4LSWmw7uscrIkL3\n9Rly23fvjbE5OJwcI89BJFIyLQfcM8C6atxg9O0blB556fCHFROTo1CQYm7e\nd8hBbp8Q/VBstCBpih+ii+lXSHqgjNM3Vc3CeGB0lGLtCJpWP0KjfI0C5vH2\nmytj904Hd488rIyieg7X0CW48JvzHfJkOBmmbJa04UvQF3RYEpyBltRpdy8Q\n3YVIni6PMbJRVSfWUeKXfg63hd+0jdeUzJSko8UZsOpiLANLB4p6Lh5++zkV\nMV/miIS6RcqvDVHWEPSmiEVtjiRu2bw+nsxSo1IqKpB4N3vLKVJr88Q/yg7X\nRzDAGwOlMmjilkWimWndj+F6UptdjziCrMG8a468HjNQxBT8e5ONigA1FXTR\nJxoz5KIpkls/EIXnrj1kReSA51JKD2MsVssQg+7djzxNomxoLOSBE8Ur4W+A\nuxTylPyqw5nGZMvgiwL0FhVI0tb0vZSH6DB2NmkdaHidCYVN4Yw+Qzo8p3wC\ni4gW\r\n=otNW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eceefe2be9419e3654f410c5db2f604fa06eb47c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.92","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.169-renovate-non-major-eceefe2be9419e3654f410c5db2f604fa06eb47c_1620655513729_0.37622439538257746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.169":{"name":"@balena/jellyfish-test-harness","version":"2.0.169","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.169","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3d85f573b0e3bdc4f087e7f9caaa48173287a278","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.169.tgz","fileCount":24,"integrity":"sha512-NAj9qUbhukMxzEQDx5IU357quioEnE18tCN0otTt3/ggqK/mu2i1y97zoyKAM4j8E3nLAMZY0ptvEjHAqo2jbw==","signatures":[{"sig":"MEYCIQC3t3ovZiaO85KtoB9AeeOAXVBN7s4uQwkWEr7KaT6rEAIhANp/CRJ6WjLHqPA5yD/CX57A8W89heOpy0staWja8UOs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmT5uCRA9TVsSAnZWagAAy0kP/A1tdwtGwNoKe4amnasc\nFcwXI7YrfB2P2tF7VNklIbPPn8AjnfvycwRmf6w/pvQOG4KQt5p/xm+z2NNk\ncUCnj38GwbAJ5zNBSyd7Y9TPHK/XcuyVrOphybrgMpmKaGOBoTaQSoLPfVXm\nBVLeHMUzfqLz2Adsd2HZ6pjvumsEEtHUOkgMhSrl7TO1t5ZUITztTEsDCN+d\nkey/uL0fM3H3zGSlpeOWAkbeohk0JzY0foUhjmBR/CD10y7hi14pmyumBshm\ntj+HwReD4LHM9HHEP118TjNyG3aQC/5w5u1ladFtoAjxtunB3e2NVzaV2exE\nR1cPvigqE9RWn5ljjIL8cPoMoar1wskb/rfHao+lZWgyofOcXruV3jMcB5Ax\ns94SHjQuaL6GFoB59uLl7FJWUFHAAKUn1bqyrJaujyJ4hUsIwQPhxajxJU+h\nNMMJ5CXlVZkqLjAKKO2jkdqhbsAMaLGH5bSLWC5l/WIuOABBQU1/DtfJFyKA\ntPkjTnfGhlNkSaUTWJbkHnSXERfQmgYpJkwf5Y+w9C6DK7wOxzw9PUtKOuYk\n7DExGQOJO4mx0RMq2hlN8BV6BhO6w56ilK1mu9cbjUVKaYuGyMilCSKRrHJy\n72POEYwfxR3bNAzGvkCChT+2cgr4oFUsGPzcBPSqqa3So6unzJWS6aZhzE5Q\nTgNV\r\n=le4K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2f9125a5b878910b59f8bdcf1bde37faece6d06b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.92","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.169_1620655725765_0.041583139722863205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.170-renovate-non-major-bbd2b91249648a6c341f3ad4ed4a02cbe621039b":{"name":"@balena/jellyfish-test-harness","version":"2.0.170-renovate-non-major-bbd2b91249648a6c341f3ad4ed4a02cbe621039b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.170-renovate-non-major-bbd2b91249648a6c341f3ad4ed4a02cbe621039b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d0141832c2406d7c62f9a3d102e2cb1ba1112ac3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.170-renovate-non-major-bbd2b91249648a6c341f3ad4ed4a02cbe621039b.tgz","fileCount":24,"integrity":"sha512-6DNs8MQKpSJ1qCbu4nqVTGAB3R/WnMQ3n/kO0JyJoImUj9wyxyygxiUWknInpcPB8KL4uoRqWOM0v6vNV78SEQ==","signatures":[{"sig":"MEYCIQDlAaVSqlUX/omBbHh53YhRCgEaK0pkdcifj/mJkFPo6gIhAMSstJi9T6H4Jpf3Kt30GICWa0ZPFsSRcYGqaJR5B+2K","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97344,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmVZqCRA9TVsSAnZWagAAr2EQAJS9iBCn3G/3oeZqn2VN\nkBuwRIFFOnHENRkxZkS3C4xFexdk1Ohcaapy266/pKjOPL4B4DQlwC6uaGfz\nAdIF73GwW7UB4yyJ8giGYqEbyAhA8sKdXwXa5eJGdKt+dUPxAZf0lJMG3DsK\nI1IYAtuHSh3v5r9zMd8qURNpibuAs28ejqoWUBYGvdGaB6hZZveRgFO8+Vl3\nkfUf4E5XlnRDFUIWm3QbwrnF9va8oZwPiAMidt0Oy5Jfy5Ob3YpkMOcggz0c\nKSIIH+3hyMAK2hIsECIi9r8yKxC/v5eIB93YDTYUWUCsVo2ctbtqcx9VzQuZ\nn7t+KdFzLvPGe/ttCSRSKK5tmqoF2kdBlnuVP8h6/srHxI9tn5kZk8xIFLuK\n8wSd1murXTtfpCNtKzElm8wB+Md0BHxbOeL26LinZ/7xV5EbziPzIEsVdM6j\nvbl65SEu8clTTeCW5ZFBe5fH/nY7ij3aXImeIl6Iw+fwRawWkOmFh93Wgqxi\nbn+c2GH+p3R9G7L9tkLQboXkmwYLIGKvR5cRC5A3+DEy1juJeUrDcKyXd92u\nL1Of7vDb3axV8GmNtZtwDold44kNNY/UiuQT21JarF/K8hirQyg1Xe8y8sYR\nlCvSSaZ1NFuD/2s0FOVBpdL25kLTlFOxH8tev8aW2dkQtBxz8uaGbRz+KP8j\nxgqH\r\n=V5cL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bbd2b91249648a6c341f3ad4ed4a02cbe621039b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.93","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.170-renovate-non-major-bbd2b91249648a6c341f3ad4ed4a02cbe621039b_1620661866286_0.28579593806478387","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.170":{"name":"@balena/jellyfish-test-harness","version":"2.0.170","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.170","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f5c49e26ca13bed70b02807606eec3a0c6eb0dc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.170.tgz","fileCount":24,"integrity":"sha512-8h2J9MM5tovaNONduxmnU1F3vuQTm/gHZ5bTXXoonVdUVV+EnzwyLrtqUokV6i4VyWTFdGwhBaD+8lXcl49tog==","signatures":[{"sig":"MEUCICJFDm3ZiiocuP8LDqJUOiUqlzfTJWhGc+t/kspCw3tDAiEAgTI4KYR3Byu5etz+wUdCQDKKoBMfUyKmOuEPvaf4p2g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmVdJCRA9TVsSAnZWagAAdlwP/1RXIGN5o49/blswDeGo\neEUvP6S6vHQt/FPfB9uKnkPL5zxAvVqJJ8K52VtxwA96FYAxPZcseeJj2rKv\nyWyGzbqb71MgQ5AjdCctKhj96ihTOoKDVtujLDk5tJLaFjMM885js+atou7/\nHxn/JQxlrZjrv2p4ZaA9RTmAPX83pg26CuuN5sjlgfuo5W4Q2dg3+9WSfk5Q\nQ4nBOJC94eKE6yDfOQWW+IeILe+QfNW4aoRZTh3j4yhqZj+lZOrGaJdJP4l7\njOg84bgJmtr9sDX/slfSAIpdU0PYzn0n13w+JLIbN1cpbXG6qEWceVVgYnl+\nAg/U5KWdxWA+VCyLg2BEpRBfv4131YTwfmy1A/pEx7nIev2bc7bgui5ppHqD\nKHTZy6H78dTGdusWhTCqwqwnZfBS2yJaYAUdCCxL6+kcci9gkDEFnFgnuV3D\niT69/j9z9yc0S8VZJZRaMaVcGK/Nf26CVoN0sD5L8QdUXiS0YA7ViL/RIwbe\nSRQQfd5UZAmwJEA1fiQ/LjC/T4cchOyB5CaQKSosugNyLZn23GM/JJV9WAn0\n2ymW8g05hbICChQbUoVRxmol4AFe65P94Ld+3/Pu9w4uQpA/4yNz454LHL8T\nN78lqDmwzVSmq7jSZOU9l+FRrNiByVWc+X16eLXkXTV/o8GOOrT73d+CJRCY\n4/iA\r\n=/I80\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3e92831e4509c4de78f2ec0292dd5cb85e701707","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.93","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.170_1620662088823_0.6943889989373078","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.170-dependabot-npm-and-yarn-postcss-8-2-14-f6556f2d2d35554cb1545716d3cdaa6dbf247535":{"name":"@balena/jellyfish-test-harness","version":"2.0.170-dependabot-npm-and-yarn-postcss-8-2-14-f6556f2d2d35554cb1545716d3cdaa6dbf247535","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.170-dependabot-npm-and-yarn-postcss-8-2-14-f6556f2d2d35554cb1545716d3cdaa6dbf247535","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b72b6d9ec669c030a249a00a61f9bb67529a7885","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.170-dependabot-npm-and-yarn-postcss-8-2-14-f6556f2d2d35554cb1545716d3cdaa6dbf247535.tgz","fileCount":24,"integrity":"sha512-ICw37JeOdAG4HLs5AyIK/S1kWzjsKjDZqPilkP0iNZESll5SwRBl5SlyqWbtFxRvvuI6THeS4/OrvdkloY3FTw==","signatures":[{"sig":"MEUCIA41BB+YES+21eWLIhDR2mQ62dp0ZGgykyYIZAwW8rmmAiEAkeVu0u1Jh82/wxtok4WrbFBik4N3lrbEVG3nOaLc5hg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97364,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmVl0CRA9TVsSAnZWagAAvfAP+wbViRIcc0FHAjiny8ze\n95ybXTOG8/1KUDPDjow/p6nVNHTtiiaZTeHeWENOHyvaje8Cd/S4uqEOckQZ\nYzgiEtxF7P9Kn1NOrkT1T5GZfkOofLULoWqZbN2FsBQ/tTNJmJzGHdiqmIK3\nuRi/VErxcGunoJzj6Q1zWk/jP9mbTSYkf8un0swPEwGObTqRgBUXQ2GBOi4k\nBk4qLq8HNzO+YLe+7xKEIrFS1ZKgjTzcGN2Rea/fKqqw8pVQzmIZgT/RIzGg\neTHrZ6LhmaACj4CYS/Rql5ti05UlrR3hC51+vLOHpcyAqaFGB4VDT3RSP4P4\n6KjReiGtlkf6kz2TiX2b3mmqOcPYgMfmlWxCsryfILeYhK4kOEf8hQU6RnBg\nGbnxWKdob83954IY3giw0bhDE3rcTbbr0BgVFWUbwbP6QrWhO8vCfU5ydxwk\nzJeD1jXq/YGnssBZwlPCg9bjdlHyz+7wCdCuJEcOpt1gMyO9pCd2SBU6jPL+\n+cMfMguRKR12MLJUA+pXA/35je2+ZX0fHIngN6wzBkEZ5WAtK43/Hb8aCEeD\nmulQCrCldT37FN+NrS6I13PGeFwWvzRPPs3v3om51pfpr3S7i/Ean9Zw7biC\nyxb7jXw9jopVz+x8S14JAYFAIEjvAdNEN2FEfGNxri/mbmS2FBU9sgd88JuY\nRlk5\r\n=yeo7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f6556f2d2d35554cb1545716d3cdaa6dbf247535","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.93","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.170-dependabot-npm-and-yarn-postcss-8-2-14-f6556f2d2d35554cb1545716d3cdaa6dbf247535_1620662644297_0.797429392628022","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.171-renovate-non-major-097967d40bb09e48b5572392bad3435fa18cc340":{"name":"@balena/jellyfish-test-harness","version":"2.0.171-renovate-non-major-097967d40bb09e48b5572392bad3435fa18cc340","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.171-renovate-non-major-097967d40bb09e48b5572392bad3435fa18cc340","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34147fda3e193025ffebb0d53d9c1a6e9a9893e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.171-renovate-non-major-097967d40bb09e48b5572392bad3435fa18cc340.tgz","fileCount":24,"integrity":"sha512-A2YDYmlpl1Pb1C6aGIOl0ow46/QH5O6XLxR9JxJRcOIksES9J5Dr8YimP1LD6jRgZ1LbF0nDa9mCvg1TTw076g==","signatures":[{"sig":"MEUCIQDQWhMUmIQsq1FcJIcn//PsOV75Ihu7OD7WrVelQwt3VwIgekk98xRJcggrYIIun9EZOqBBcDja6d9bUvbvQg6ca0o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97450,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmWC5CRA9TVsSAnZWagAAVccP/jfdbMDi4sYgc/c2R5tR\nhwwjGV6UzfcuGRlD/0EM84EYERGxMmve5i9fBhzLHkpxHrX+TRvdG6JYTbO7\nxsB5IwKd6nTvHDzTRvfmJpZZMS6oRaagXgW4gzpMVf644u9zHcSKszOUNpmO\no+tS3RmzrtOm/4v1bNQYyjZ5AugY3iWtoJrITRNcBAbGvM763ZRDy1/LbyFz\npxGOMmFV1oyokt/LSEsFm6Cro+Xxhr5WAeXdcQFIxDHqgFcQiwJ7bg0cBpOJ\nbXDR7MYFES2eWKw6ko5uYONtbl2lVKBz7DNIqb5dG0xsQ4zXQVTaE6Ktxmbz\n98ma+3VRtXTwhRFE8scnG6zmCMDR7kfNu0cSCfeNEPjgVxEZmHyEWv6sV3O1\n3k+FjKOZ3DZ/q+RPS7lUS/E0vKBdbVIr4kdnuThGjczKbJ6KH6pMv8Uxjk4y\nzWy9o2EtdgYoIhVPV4q1vXaIs2eMtqHmZgcHQaPr5WSK51LqhwhPu4BtEfK7\nROsnbJMxFE5EH/JBv2PQA1qKDmGYJ8nyg3EmCGVDDQUwEazTcIZwc5eDV0qF\nQN7yP9kJCjBXSoH6GWkZSXLq2G8jbJCPhotvGXlz4dJlpxk++g+tnw2C7kAU\nVEq/mMbWqdQ24NtBQbyrDqIi6thQWoiwdEgt4yRZCyRZKD1Hs56fU6Gz2cG4\n/R6Z\r\n=3R/q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"097967d40bb09e48b5572392bad3435fa18cc340","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.94","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.171-renovate-non-major-097967d40bb09e48b5572392bad3435fa18cc340_1620664505050_0.008874683924103621","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.171":{"name":"@balena/jellyfish-test-harness","version":"2.0.171","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.171","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d81ab60c3e54e250ed8dd57d3832fe69066fa6e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.171.tgz","fileCount":24,"integrity":"sha512-ouZ9IeOGu9IY59qmnD5ocvexjXV8xMp2jE+6VYQaen+ckczq7NwuEyhYUBAI6ICJR3aYBCYgfwUNs6gQvFdOSw==","signatures":[{"sig":"MEQCIBkrI7U1np6uGvvN/8UoCIPA3IebYWEpQYpyUH1lHXSGAiAW6BT25vlbAAEsgkFyNf4r5/7lmJ2gfwKrD+TP/BTb0g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97390,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmWGWCRA9TVsSAnZWagAAsGAP/08XLckXKYzzZ8qSQi3m\nstcNeMptRDogXFykOfOl9PDqW6QOXXJU6xJjMURyICuvBMtxIpgqBPM1fXGr\nP/bTVnpvjybtP3Mdn7qsmZTk+77tZf9mBmvhQU1XI0pb16Bg016esq/ip1Wk\nERZA/UxrMH3nkZRxh+oMPH6tn8qQduSZjVDrVolugz8OT9tw1/4xyJtq0gtC\nqmFTXu+Y3M7qCMMaknnUpdOA9TNOYEetpeuxjaNpeq/aKGRCEZ/cYLUW+1Fo\nfIvrdv4bD3LsR7Y2op0/TFPbtyv3+zHI3yR9ui/oVPxRuuMF+2Mi15Oqonbn\nvfwajNJn3nrcrOM+SC2bXzv7GXJ7VohSGFQnYKO/n+kQI3MYJ2a+37lU8WM0\nfcXFcwPCK3lJO6MKnTpxGJfI16k9S4Cw01kuygli0OGEMh1irEVKpTzvg7z3\nA5E1Rw9Sn+gsOa7QuaiYC3U4OXFAWeXXNCJcYLQwwQGxWuGkNwc4yWwJG2/j\nn9sGArIB9HTB2jn1uIa9QtrFA8uumSS84512zskawjbUsQXDSOgig7zO3+pG\nX5kFpYitHlACkgvFin1Wz34aXihXNDgFFUlrEGiJzCuoWkY8bfwwmsI3lT5K\nqrIKsZ54XcHfWN6e343rFYlByXe6doDfIlfYnugEkfwpxKKlqdtJsQGXt869\nywb/\r\n=6P8X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"857dc6410770f98b94a46c3a3016f5820cf7f674","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.94","@balena/jellyfish-sync":"^6.0.152","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.171_1620664725873_0.9750106803108387","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.172-renovate-non-major-9e3c7fee90e3b276868f774187b80aaceda72ea0":{"name":"@balena/jellyfish-test-harness","version":"2.0.172-renovate-non-major-9e3c7fee90e3b276868f774187b80aaceda72ea0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.172-renovate-non-major-9e3c7fee90e3b276868f774187b80aaceda72ea0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"132eefb35586e99e8f4505e43c5461239cb83b20","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.172-renovate-non-major-9e3c7fee90e3b276868f774187b80aaceda72ea0.tgz","fileCount":24,"integrity":"sha512-m1lFaTf/XQVJhzGsOu85ByMt4JZUY5Z1MWuyQCnb6ZsAv092ZcljRVc+kelcqTExXx02fCRWFZ7kW4Ka1PzgeA==","signatures":[{"sig":"MEUCIQD2oxGrR3ejxzR5X4bPEIzVzGs80wYVw3gKq04cpCfrRgIgNOGBJD0E0wAbMxrubqQ5DQ93Vdtaec2whUze9XO3f8Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97556,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmZRzCRA9TVsSAnZWagAAuUYP/jHGJnTGXmLZSi/TuzO2\nQqsMnUyE8e5UwxbK1iNsmRnKDcWAq9Erl1dPqG5nl9kYTZhX7qFVdBw1xEPD\n+mSUmPDIJBrfLV9VjnL9KBDaxuGNwNAL5T3sd5H7aeEDwS+tcpoysCZWEw7h\nga+SvQd0qxcSV1jqCavBYpK0prVcQvWhBmhPEbHTe2qaL7sQ7T3R6JQyf4oO\n+cFkTzyxKnIA/PBfmB2WhXG292yV7UGCUCtUY+3BgoSG6J5uJsKFHGTrPjej\nbUyKbBc19DfkY1yXjpCKZOmx/gd5JS3ZHO5MwfIYo4mTJGmMcneLqoPHi8VK\nqD3nEI5i59c11GUGyYFhbERfDXr03KgDyKauIkXqUzMlhNKg05DlyBw1yTAE\n8zpCdtFZRYp9mCtSl6TWzfZFkO2C23sutpt+2aRA/xCMFk8HY5AvIBZZAcFk\nHWzNsNYRXj9QDiKomVLNRVrmaNqHyruiN1oYw4PP7Z3ilmqcAfOGf/kCEi6o\nFjwxNv2zAxvFceO+YGVFxKd4qIA2UA+x1Euke7Cw4aJnRKNOjYfgRGwKMJli\n3ijx7g6Rj9tMcQR0dv616JVkvlUaRbcmEFJscQhHltSViL/GLTq+TIHDAqcK\nmkiNf6LZyTUyOYHC3c6Bday4FuhSeXojDBh2em/w/kPLZulwf2vQc/R/ypJH\ncERG\r\n=KOFt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9e3c7fee90e3b276868f774187b80aaceda72ea0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.94","@balena/jellyfish-sync":"^6.0.153","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.172-renovate-non-major-9e3c7fee90e3b276868f774187b80aaceda72ea0_1620677746923_0.1184002926883776","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.172":{"name":"@balena/jellyfish-test-harness","version":"2.0.172","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.172","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"63320600e6bf19a0c7fea864ca060f141a7819ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.172.tgz","fileCount":24,"integrity":"sha512-+9VJchPFs0NrVwRoKvJgLOVA1p3Frb7c706hct5R6aGItovG5X5OisvcDA3xyqG1iGolG+rPGjAO3Ga9sGwkzQ==","signatures":[{"sig":"MEQCICjzx3BUUzGE5n/V2aY0xHXrn8scyHffgATinay37e45AiAuyo7rY9/dxNYoRzFtjMX7hQQ0kczPYJWvaxq0DIyw7A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97496,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmZWSCRA9TVsSAnZWagAAu0IP/R0YaYQ1+JZKDpBFc+G/\ntFTZ/e3M59sIq3jSyV2+/kgTxJE7qIxKZLtCxCNEAyFmzU4gQXbCorYdp1xX\n8T3nxzPjgr8jslvdrVm6Kn5+KFqcuQuaXZTy314/YUeFgDkLfBtHk32Xgz3U\nxxa2JuwGzCE202cLXgwMmFakYBJ3Hu2kYJgeaBKilyAcRuBZPRuBNWxTxwLC\nQ5YTtOXjUK9Tm8h+fRUwVPBD+eiUCewWpbs30xKDDTC9PUJam8bab70/WZNI\nTta0GA5JF01zYelD3G7vYRQdkx+sACgxTO9lIyGvkSq/3myzP/DwcYzSPwOW\noFWDfdydItNkPlURGwEnGz3FmPN61oLGHuHSmo/E7ZOvmBb4roysYOOUu0yr\n1hlSZGtlqc5gf44puqXAkGhEeS0z2FHclvegW6uruUZ/DYtJZwFSqWw/edTk\n2bcJoLgeKcwidQVuWCsw0SpgQUBPjdHIituD8201emhp6Q69J0TaqVLfrmMs\n6hLeOdkqqOJr4j6NMXd2xFqapWaIW1bpMZG6IgIn4StXopukx3ayTeMRxUsI\n3rcrKSM6jTt5hXTDGI36aC5UVTMZ3Utxtts4qFoe5CNOAVPQr7/iFn0lLZR0\nffPy8LCdfoBELb7GtSNPwGutr/9stARI4ZhpQjzP83xb+DTbgKHbWCXo7J8W\nDvTT\r\n=S8IK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3efca3d672fec083dbeaaf3e861e94fd9f205b86","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.94","@balena/jellyfish-sync":"^6.0.153","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.172_1620678034109_0.7059630933979348","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.173-dependabot-npm-and-yarn-postcss-8-2-15-da1b0cc7deb9a222cc8c060234b957d1e99fc30d":{"name":"@balena/jellyfish-test-harness","version":"2.0.173-dependabot-npm-and-yarn-postcss-8-2-15-da1b0cc7deb9a222cc8c060234b957d1e99fc30d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.173-dependabot-npm-and-yarn-postcss-8-2-15-da1b0cc7deb9a222cc8c060234b957d1e99fc30d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59cb3c7053abf2947a733ebad8db98cbeca4f918","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.173-dependabot-npm-and-yarn-postcss-8-2-15-da1b0cc7deb9a222cc8c060234b957d1e99fc30d.tgz","fileCount":24,"integrity":"sha512-0Lp8Vy+qlHHSaK510gSYRmdr26XaUfM3V7Bwe0Mwla8A1HRg0KQFKG8BKmAJ8q27SlnaHpL5YYICtcPUlobcJw==","signatures":[{"sig":"MEUCIGH0c0NJjo1GLBsUJDq4CuFB+t3kFFjtR2esTqcMlDggAiEA965Gtfjojwi/MphSfEnkIVSvhUOxwjv6pP4+9wqej9g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97672,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmcGRCRA9TVsSAnZWagAAVBoP/0S1MXh46xPHF3MNzQVw\nEBvoPghG5HJIyDN59YYwG4bkUxGqnry30Imc/vCrSvjQHSmyd67U4iLUXUPk\n6B1311AurZRMyl9wj+QAeomNuVSZ+r/rj9Ieg1kRryVnu0xLl2cddZ5CbhEh\nMl72eie7M1653r2k5meFqXR9G+e38a4e1LVhqzEDnokJr55nZsJLWOTU7Y+8\nYPSRpeod0kOb/Ys5EhltgHncXen4Sr5mUeYrS1B2XrZqsu4QSvJu5axKkQuA\nkcHcIdwYfT6HoU3RgrLwxgbrwsAhRm3AYCZcPYB7IOsl2ifE7wou9Nwl+Q6T\nZZYcubbl7kPtNDuxbCSU01edfnTdDMwsTpQUlbKVXchrtoWA/qZ2iVvry00h\nDONLCzLj6uTNx5LJyHmy8XRbiaS2+4+V5mXSEzNSQemwtuY2EAzVdhvodgfi\ncPM6vLeI4dABEYOY9z3krqENXnNKZ/TsmzNd8CO78Ee3CeJa4dhLmY/ZOa3/\nQ810fsjohgGlI6qnLGqfGFd3E+hfA7q2fNiO6AskqfP5s8ClkoF20zuSLEOF\nHtx1ZQw9ZmlE78n7IVO54cH7YJHD8qVMxlMuZfyVuW7pr2GlDKBw2gErV7Yg\nGAkl7E+BFXQ4tw8VQJdP5WEcG9JCaFZAOQ3wXjVAfT7DBMsTztX0IVI9y97o\nrzSp\r\n=cN8m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"da1b0cc7deb9a222cc8c060234b957d1e99fc30d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.94","@balena/jellyfish-sync":"^6.0.153","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.173-dependabot-npm-and-yarn-postcss-8-2-15-da1b0cc7deb9a222cc8c060234b957d1e99fc30d_1620689297087_0.9336356463716795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.173":{"name":"@balena/jellyfish-test-harness","version":"2.0.173","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.173","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"487009b18477876696ebad294edcd3ab9ef1d060","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.173.tgz","fileCount":24,"integrity":"sha512-WTWQ3vZb79D5oS1heZveKD1JysXhtmfIEV5DpU8faCqrKJRIh7Gm9M2YLFxRvv7Xz/awTAdkdRTLsyaq+PJPYg==","signatures":[{"sig":"MEYCIQD08yCn1B/RAm3nI4JHapu18sGPqznk4IcB/1cNQRYZ7wIhAIzNJRp09QrteCMGqj1b6WrwuOgF1PrUvI0wJXjPKlKG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97592,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmcceCRA9TVsSAnZWagAAsrQP/jQ1sep7FOkJb8TduNO5\n6EeaJxu3L02PT+MHFS4XOy3deZWR1HaNlcWKscBdFP2bwcETlSE5EKHhRyVc\nENzl9e2eXSXFWAIgYnRyvjCLdpC1KnlTLxVW+BNiYe3UYswKEGF2Bg14fWfG\nkhN9YPB7RmYenAvTkaOdJxQHRk3fTbDkKrbX8RokaHx+jdXsW2xLUrzavwYn\nlmhfb93/lG1HmxCgnI3rxirfC3zg4qai/dB/FD3j2TvJUBO8UmcZ7bWC/Ed/\no19TGyZyR3ojgwIKNF7APdS0HywViuD4hR6P/t1AssdLiIoUVHIAsFcnXi/u\nCmvc8Sl5odcsWden/0k+BrTpXL/K8YZ0bfM+9zsH8aj9f1quqsKGT1eQIXZS\nR6vG38cEReOU4ks20JgNLLNS13cavf9LgVRE3VVUL3+bWNWP5xET/ZNQMU/D\nbUWkHrTjm7pvzAiTIAH4tPo/JeGbhUQpr7l5LP5yZyrR4qmzl5OsytaXMt/e\nDRdq7F4tlITUkUj8ztPgeErHjTxn6AOPzwLanFeTOBy664S7yMCcbxabt0Jf\nmIEeXhHVis0lkgSOnsRPFrX4gdpuKOEu1/sfmSPkURde5CKYQa0Epl6VleNG\nW9mgalLUPkwXObQTwA1qTpz4eQRWKAtu8vpZBVFDC49yfF2zrhd7e7kBEsSK\nQ8aA\r\n=tOoq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6292ec86f333d08e0f949ae97b44683a387b0494","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.94","@balena/jellyfish-sync":"^6.0.153","@balena/jellyfish-queue":"^1.0.71","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.12","@balena/jellyfish-plugin-base":"^2.1.84"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.0","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.115"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.173_1620690717875_0.07004461864424627","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.174-renovate-non-major-0b849a3ee4900ee73461ebcb0d06fc5f325ce22b":{"name":"@balena/jellyfish-test-harness","version":"2.0.174-renovate-non-major-0b849a3ee4900ee73461ebcb0d06fc5f325ce22b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.174-renovate-non-major-0b849a3ee4900ee73461ebcb0d06fc5f325ce22b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c23b8e1de346f8cd819266468f26c98f1799f5e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.174-renovate-non-major-0b849a3ee4900ee73461ebcb0d06fc5f325ce22b.tgz","fileCount":24,"integrity":"sha512-rTF88Ouf+r431DI7cLtwZHQfCRcLIyQhKCdNJ/dCgJFxPV7Pke8XQDvw3MzL/1yTziHfav8mlVMR0wtXDGcGGQ==","signatures":[{"sig":"MEUCIB86R8Bpdd5T444wlT1NL9pHDxm+uwoAfzKoHAEreffyAiEA/QkyMiPthPCmK+RDzML6c4lndO0WW2caTsMD0singeA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97722,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmk2yCRA9TVsSAnZWagAATzsP/RUt/9SlOy1fqaw6cLMZ\no1cqVA5YOJgGI6/7DX+e3t2oujiPyJuPv5LZwytlO8rPR7v+aTXsGh+0fCNt\nWVUzH6u4TeE7AwQBT48P+/utxSiZvM1ETXucPrXH7kDSyxUmXG7TOUe0sboX\nBuh9z27DmsCTdzisd0ceiLqba0dCt303upha7kpOV0AIe83oq3AKKjBwHwFI\npxuQzlXqEhtHuWy3w+ZR/h15poYw3G97JsFlb/hfMEbERP3KoHCw+txAgpIu\nDMC8hI9qvwHucfcRc5ntIztSDBMwkmUVztN+JHkbv/1Iywl6jNhpanC7Xeri\ntW20jex7Ecv/xyCNycNjn3fIX93X3GhNAjTUI2IgpoU63XCXGqCKW0AA/IAS\nF+FAFA42cTAlOkaUNhbrcKyrRxlLoRAvpfygw3ppWK7JhyTYYEmyd5tGc3L1\n46RtZK3WB68qnj2w7vuOb47RE6St6MqGicudqnS+gWofqPN/wGqJnhY2TB5U\nn+4gIaHWRBaBvEQL8i68/e5AQ7KWGBMGckdQR5rgzmt3e/6OGUSr3zH+gYBW\n59MzzIO/GiI9HRMOmv3KNBYGEUcxLvesWVBG6m0d02jKLGp4vpMZI6zL3FSw\nV08a1vKgTsobcmcy3u7vVzDCd4OjJ/KozyVkNTGerXC9sk646QueS51iINgQ\nx1Dt\r\n=lnBj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0b849a3ee4900ee73461ebcb0d06fc5f325ce22b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.95","@balena/jellyfish-sync":"^6.0.154","@balena/jellyfish-queue":"^1.0.72","@balena/jellyfish-worker":"^4.2.17","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.174-renovate-non-major-0b849a3ee4900ee73461ebcb0d06fc5f325ce22b_1620725170270_0.2599237836043302","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.174-renovate-non-major-53cdbf2e4cd383295b85489496e640e504938152":{"name":"@balena/jellyfish-test-harness","version":"2.0.174-renovate-non-major-53cdbf2e4cd383295b85489496e640e504938152","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.174-renovate-non-major-53cdbf2e4cd383295b85489496e640e504938152","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a246aaa5c98632a131210e6e52cf3995410f52a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.174-renovate-non-major-53cdbf2e4cd383295b85489496e640e504938152.tgz","fileCount":24,"integrity":"sha512-ObovavXZQI6Tq0anCA/qzOncLO5n9+bO9ABb52Hj5Zewi1xYuoY+ezAo2w8tXL5sQGjYcAHN5O+FrBNspPAAbg==","signatures":[{"sig":"MEUCIBYNHCEkgSOHI/oL5AnrdJXpCkINRV+Mzi4rbp+6UV1GAiEA5YlFgsFOE9VAlg0401CHDVO7Mx4EwtskP7tHBIO03Fw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97763,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgml0cCRA9TVsSAnZWagAAsfAP/A059m02akKSyizKseAB\nTkHN/dal6g5GLRNloCMmhrL34Z3+60guGzMtk9Mi+Av3UfGaEJ/0x8pA51gE\nmXbMNZ20kuSYhS0YhubJryuwHba42v3vGAQZMgt2d0IfsUzRFolHxofLTZ1i\nLL6q/ZyG4E3kX/2IM4Ub1DkgkP9jRuQ0BCl4zR3UCrVp3ZA68cYf1ex1NatO\n51TQqkF9jXAgZf69uZfGzRBxpN2OW1in+SZcstlgko1BFJAorJ8NYi/tDCbC\nQDsDEUOAwCtFCSbx8tboV/kz5rSAX79RcY2H4YJftsTulpZ22EtXKRYBgHFQ\nW6WABfDm2bZHSPo0TuIJ5yhXKb915OxXKLBGVKn5d6eAQdnUYARqeYLjmi9h\n0CnwLC8goxFORpqwRo9h4rmEZFMGcgZhbKOcnWudKTrJDUiedovlWjgVfCUX\nHUdCBbMchUju6QqUsx5AmYu45j8TdTmFlGjUypY8jnETbm+wyxDUa77sjjMi\ngQSSLe6/VfpEiP/N9gFH/AsESoDLfuB5506pjWNnWre1vh8m2ZONeCKYasbV\ns5uG2JRSA1qS0IJtS+LSbD3oZJr4zc5C3bPaaUIRlWPUlAgYtnYYq6muG31Q\ncWMMLaiJUxJhOTLgcA2YBKuKmsYV1VtoA5tH2q13VPPtYXj2s4CH/b6XDCfz\nuAza\r\n=mjqw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"53cdbf2e4cd383295b85489496e640e504938152","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.95","@balena/jellyfish-sync":"^6.0.155","@balena/jellyfish-queue":"^1.0.73","@balena/jellyfish-worker":"^4.2.18","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.174-renovate-non-major-53cdbf2e4cd383295b85489496e640e504938152_1620729112626_0.18275581914016792","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.174":{"name":"@balena/jellyfish-test-harness","version":"2.0.174","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.174","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b3a152a16637ed4b5d72f866958a691b75fec67","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.174.tgz","fileCount":24,"integrity":"sha512-JmzNnU2XsDE9Om+9+QGSA5gGzyzYZN8RROXR9v3H8Dwz8SVkabXWFWt8JtxiGFSIGXV90DTzj8fU54lcHgrZzA==","signatures":[{"sig":"MEYCIQDPfKrUl2Bb1qUe+WMXHaH0VxR/WNoM5YMqt0F8ap5urQIhAKInSzvbbufvfBzZHula1jB+3xFf1hoFPZtHXNmNU//y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97703,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgml3uCRA9TVsSAnZWagAAGqQP/2LMP6BkZS4uZePwwhCZ\ngaUnIDmCfPjlIlexubqBXRssxc8JFKhwXbo7QDeMuQ89rdH+iAdZE/OEwTpt\nHHrcvlEe8x0qT2BZNjcS28GzUSKIpeg7m4H8g58DD9NeU/ZVBRMi7048spz0\nnnL6nkO+tjC1nNGO/9zcoR2XTwwg2euFgFwDStjzEIilBlsBEZzDrK0kN8nE\n9mSJ7w/iapaNnjJWFBGs6CVa0WcgTQXJu8+2/y/9l+RRQ0hgNMv7s1lqlZqY\nyhORVdea1rM2s6uc52/5/lXCNXsPnxfi199Y9eJbsojbtmhYidb5pNSZGVHI\noKhCYCetcW/CmPjzDEF3TCZMRgBdsVC3Q3wnMXX4s4JlB+QtL1542R/AkE5K\nAmnQDgZh5puzRv+wTkI/bN807R1obCHx/g4q7DJxT1RSdwa2yTh6xQt+F3Q6\nCH+vNiTxUWfjLWAKwvejLQQW7dfzdDXVl33/iiXEhCogK/GdkWTnFOooXKUC\nFPWZlWkmcNOfHU/9UUklAywoj1Fy6+3Re36RrYuvbmaQhaiMhHj1vsS2kkNP\nrb+1avYVMo5y/NCEWULpc+KlJHUOETHCFveNFhdIeKc4YcxRNoRr3SeOB53l\nXDPbzkNm24cKIVaL+Ddw9IG4iY1xLO3Npwwx4H3NENCtsmt3Ep/dJvwzc8uj\nrMZN\r\n=e+xm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6e51e9890dee7ac50ae3697c6e8e09571365613d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.95","@balena/jellyfish-sync":"^6.0.155","@balena/jellyfish-queue":"^1.0.73","@balena/jellyfish-worker":"^4.2.18","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.174_1620729325834_0.7253942113030798","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.175-renovate-non-major-fc4cd24456d7e2a496b3328f355633f52f3a651f":{"name":"@balena/jellyfish-test-harness","version":"2.0.175-renovate-non-major-fc4cd24456d7e2a496b3328f355633f52f3a651f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.175-renovate-non-major-fc4cd24456d7e2a496b3328f355633f52f3a651f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25fa391d2380adab671cf747af5b25780213885c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.175-renovate-non-major-fc4cd24456d7e2a496b3328f355633f52f3a651f.tgz","fileCount":24,"integrity":"sha512-AWp/ETu+eMNKuD6BGqUSIVCG9G3oKZQjpulvw/zexK5wcjjvb2/fNvQdr/GhQzhXU2QEYmKC+tnOH3LQGq0bZw==","signatures":[{"sig":"MEQCIFNhTArA9QqrNnnWqhRA/PoKBv/jXKlRjCpU8vFy6sRyAiAvftjX3zmnlOc6g9eam1YwvuDMXrqZNA760yHPwVj5sw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97868,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmqRUCRA9TVsSAnZWagAAKzMQAJGXMzFj6Tuw+eU2Mm1L\nAifT+UiuykalKGf9EhZNbX+NbWhkTcONi5ClLUgqFdluUdVwbYqPhx8hWYgc\nZJ2br/zub9Qdfd0k3OfVQ6tiTzEgjnbcd+Ib9g9iZNXVh+gTQ/VLdW0XFw2A\nnf9tQTWTNumlNF2z4NjG+Abv0Pwsh/sHnUIG9kt21+N9/SsxX1lQTlxTpTVV\npemSLIt8fu9LMcfstE3kOvx6HCkkLTZLFRFHShwwclRO3F3FEXfMxmx7v6VH\n89uGDyG5Lzgv51CK54JjjYWhtYdNgimYC/N1CgWjBOGcZ4z2AQltfiHsOuI9\nYS0VJ9mEmapIb+tYdALVxqLrH4RmnK3s92hP6iCND9dmoUCbW9Wg+zLwAbBS\npT5kjXnePxXkM6NAdO77hnGij+nmWHKcp36jN2k2vgNl+KbxqgAOG1kVl8DW\nOWeoIJZRpPKwrGH9fSh1Wy8oF5wHZxLy30AXAMp4P2APDoDnG0aSW11XqZbI\ntw2hnSBbkEdDEZPm9s+HIKzzOgvwNBnRK8sMyLgHDZE/dy2WSEln7oubagvo\nL2RHiJTJd/NFV8M/GbPW4kjvxJFcgedN2M50WroDTTofXSrIOI8lIT1gKCVG\nS31bOenhVRYlrUBp7JZPZw72ITX1o339KM5KctyLnnPQKqpEPIJZ2sWLQShx\neSrq\r\n=sv/s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fc4cd24456d7e2a496b3328f355633f52f3a651f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.95","@balena/jellyfish-sync":"^6.0.155","@balena/jellyfish-queue":"^1.0.73","@balena/jellyfish-worker":"^4.3.0","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.175-renovate-non-major-fc4cd24456d7e2a496b3328f355633f52f3a651f_1620747347840_0.688557126536756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.175":{"name":"@balena/jellyfish-test-harness","version":"2.0.175","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.175","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"28bd765ee6ecb7f8705e2586d3bfe4dc8da3c613","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.175.tgz","fileCount":24,"integrity":"sha512-7Hf2LW9/yUl0cmGsj2qrDEzEVG9q/4/yd7G/JPO7EUHdUrU4W3nzx1MPY63hm569VkkCRuf4Mq3EXDlmBkJflQ==","signatures":[{"sig":"MEUCIQD9UM+lwiJM71FoF0TFMoFNrfB6iE1Bnk1DbNE9Lc9L+QIgdvrih9NtaRM+hUOnsnjg/n/vhFO/FqE/6MEJ7NtejTs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmqUaCRA9TVsSAnZWagAAKkAP/RYNBqmuEhH/th89Y4jy\n7QemJr/70fqSztocZ7tnWUAOakiCbgFkRau/mt1osaX+HgETOdqoNygQB8oK\n6sKAURejAJL2kah8Oyc8Vpf/k6u8S5lIOG+CTlUimRFphzlXR/DZ4Pi69c5h\ndYye02IkhHhpMlTd09oPxZPu0pvhXLfWUk1IlNf9pifjnO6TcMcSDEXaa7Il\ndxWoKhM7cAsVIq/5rg8I+8/nEHBt7DMRYvm0u0TN/gvxcaE6dE7ONwPPvRM7\nih4BDMX+zEYCkE3Z39nn6uJ94bfns9gHc0vY6LdLr7XFbSTyh8QhuivKMN7/\ndYU4ULscxLatCYxEs6FY6Wol3SsB5mf5sD5iklXhYPeIiicqauYOB64vbuSP\nSp9zi1MA4YcIXnEO8Robho3TMvjBR2jUUAadTNmKOXYkR3xf+N13rSVto165\nC1HmZEQ60U95GBdMMYG9eDXzNL61JxYKmuSbo0NkZ6Hai2e+w30k0BibTpf0\nLFEaY9vto8at4CBoIdakHF9hmoH+exBn/0ycRYRNVmPBbheIz7zN6+dFRTlQ\nLMy8s6wKWR3lZHNReJt4hVSDLGjOg1YM/sf5Z3R9qqocTQi6woY/sdoEQP4a\nPyPkb+2BletAGLaHkNo/pF7ZKtCt8oROMNUYV/Zulm3TZvmjO/WLjIJtN2Ty\n4iMR\r\n=5Xfp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"947bc7a6ce70ef2077fe6c6b5a1c125ef32f1035","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.95","@balena/jellyfish-sync":"^6.0.155","@balena/jellyfish-queue":"^1.0.73","@balena/jellyfish-worker":"^4.3.0","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.175_1620747546065_0.19214511592018346","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.176-renovate-non-major-3eedc4fd92bff463722c2e8288f5919217344c3c":{"name":"@balena/jellyfish-test-harness","version":"2.0.176-renovate-non-major-3eedc4fd92bff463722c2e8288f5919217344c3c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.176-renovate-non-major-3eedc4fd92bff463722c2e8288f5919217344c3c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e80607f0730a74f71b55e7a95a570635e3b143d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.176-renovate-non-major-3eedc4fd92bff463722c2e8288f5919217344c3c.tgz","fileCount":24,"integrity":"sha512-eT/IJmar/il+VWFhfUr2lISllv/FC8Xhy2dF6nW7f2czjm1O2a0uqXzE2BE2rZJDTj2ksvcLy45RZupeGWnR9Q==","signatures":[{"sig":"MEUCIQDKsbUX1tTcKXpqEZTO3zUbBJkTC01byIC+O/PUO3aMiwIgUXUhP/ufft3h7Zum+IxRTmP5Lp5+9JyCjv7czce4Po4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97938,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmygMCRA9TVsSAnZWagAAs7oP+QFgLZ71Ibj3e2HgYNAJ\nEw+NVYFsVOpx/TGgDwiNuXkDW+iFa6OjAJgA4zj4xy7918Ez+zccwgZyHDLs\nGFiYTdSpchSD3pbyuBPZFiBPm1NymdDUXE/g2it9knAMPkSZ6Cq4LX159Ldi\nThlpzB+I6Q2ZS7fI4wMtZgm2zUZ+pTD09G9B/Y5n33cgTzcf7qOKimg+Hrn2\n9oFE4d8T+J1AhXW5yBoi0V56kNzLNdwkHrxZcE/1zXdv/LImgHnTJD+6tp67\nHXd6cOIDcusrzldpklyimo5azVh/RIsuvJP7mzvj5QC7tqMH46WeBdGti0F0\nIidD2eX9p9sSfsGp2mfDEaRB29sB403JTQfPBAj6aG+r35oICiIRERBynqHf\ndbrABqOAfDU9iAG4M4Sgy11b/psrOq8b5s3Qk22UiBcaTRpWZN/GPwIsZxpW\nUFAXY/mvJcX7Pzuc4MI9oNMMTQDFpDmyMGCRs34+iM8n4uyQLO87Kuw/X26z\nPKxPxYD5m74SRLW3FhUVCLXPDVNmohybU6InHFRcxgmqqPwUZOnaCwrkKFd2\nMHrTUnYAArJYlKTaw/zSarAtjFu3W9GqqpwrgZ5kbpO5zsUsK6nwYg100GHb\nbErNwHXylZjkw/xdIx3XoIt2voS8RpwDRkYx/m3Xz68Ss7BVuhMbtFR0OzHr\nvIUH\r\n=ecII\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3eedc4fd92bff463722c2e8288f5919217344c3c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.97","@balena/jellyfish-sync":"^6.0.155","@balena/jellyfish-queue":"^1.0.73","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.176-renovate-non-major-3eedc4fd92bff463722c2e8288f5919217344c3c_1620781068361_0.06064353038316339","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.176":{"name":"@balena/jellyfish-test-harness","version":"2.0.176","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.176","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"babc79676e661f8d86607b9c61e230ff3b0a94b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.176.tgz","fileCount":24,"integrity":"sha512-OE/DOWgMOlyU+UH38G7f9urvYyYEBo6UtADp4svCgy4s4aq5kvOvw6uvUusFeCgHshemn9XjcSsuPb8sp/PscA==","signatures":[{"sig":"MEUCIAzleXDLdAqWYA1IUUuhVfcw8XxILq4cu6K3HWzH60tvAiEA9xZC3d+TeQBslVgkRhpQEvJzrnjiDr0BmNsO7YDALHM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97878,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmyjTCRA9TVsSAnZWagAAljEP/11d9uwau5Hz78+o4IaW\nZSOdCiPhGLfQOcw2lmELvOgi+aMkj/N15/TSwe/1RuHO0mxpHvQnsllMH5a9\nTa576scSg4hNGZOdpbdX7518c9YhpK2l2lNJ1PFCDjptgj3aNZdvUC85DEJa\nR69utVcyGNsUqfU9zNbdGzn0EfdnE6oldNgslgkfgOh0kIgHCLRBYvR6QSGL\n8TrA8TvUUHmhY/P5C58ifsW9hKVNN91GflKJWArlhlRL6ORStc3xz/Us1rmp\ncaHHyiwAlBAaE+AvGwBfNYbBOgVbNjCeMFznYG+DBHbJCA8cHKBKd0pkzRR9\nfvTzIrjLMZHgOnUeMdWORfY/a+LteFF3qiOrJyJ3dikMeKMNYLf/o20qHlnX\nKx3j93TPM0pLOI8ix+2aQk1rUTWmzdmCjr1XZMB7KYf4NJ/1Jk2uM59XRagn\n8HfAZ0VYWJ996UXu+FbBt+XVL8k0WCG4Zy6F82QpVFzYZc8XzQOzyxObwHpQ\nTQ7YvWqUWhpxntNuz7UkMbCZbKlOraU8FxCDU6dcmYYkOXCAmawgP6uid60E\nnuitAuedCPHeFQUNlPBkg8ntCGx/ptId258h8vartKAa3ajHGW6sVh+OGqbk\nrvbCxBMAJXmmRGCQa5rfbbOaRPTxPUk9UICWDhhYkfCiDOWyp+mJS0cxosBh\nrA2k\r\n=fzpR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aa93e8c5f462f34cb8d9dabd394a8791b4cbc544","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.97","@balena/jellyfish-sync":"^6.0.155","@balena/jellyfish-queue":"^1.0.73","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.176_1620781267103_0.028212353589728068","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.177-renovate-non-major-470db4c9742eea5cd00990afd48bcf6fce6d8758":{"name":"@balena/jellyfish-test-harness","version":"2.0.177-renovate-non-major-470db4c9742eea5cd00990afd48bcf6fce6d8758","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.177-renovate-non-major-470db4c9742eea5cd00990afd48bcf6fce6d8758","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d508cc60ab28ef91129923e7b6855c595aeffc6a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.177-renovate-non-major-470db4c9742eea5cd00990afd48bcf6fce6d8758.tgz","fileCount":24,"integrity":"sha512-36bYROyOGGjRSAjihChZm3T1BXPJB1EiUCXeKjRuo+1JnHyZoqfN0kzfZ4y+1/bbpLRMHlQNE3OYKbmT4KdB3A==","signatures":[{"sig":"MEQCIEnYZXm9ncM3BDgCqV22+iccGeHMviL5K4PDAQC6la7EAiA3URrreGBKzX5us6bNf8xV3O1oEl+yNWt77CkFmcsA5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98008,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmzxFCRA9TVsSAnZWagAAswcP+wT+etdVrNtFMWiFFIe/\nBEREqW6k9hdrbH63PYabrsUjBgrnsnJ1+21rKoR3AKrJapPwzCWwyzyBwdGI\nby7CoCXK/yQt05SNsfAi1JWmO50lcRyhARShYO99VYwPUONGoUl4ZO6NWk6A\np6HZVNhQ3PXVb0KV7rnHxjBbq6Ci+zoTSvmv2mEs1RJX04trEXq53FHV96RN\npSALzLlov0jTiYMrm7tUlvVK/szPNvm4WVpiwWd61WzXzaEfy1f1vnv9GPv1\nw/vDx3ulYZYcG/8UK5kdwvd6hqkGr9uRmHP/E88yD9gqXpSaLxdk+vCOchO2\nbrB3E/tYg7nnevsx17449Q05KgEuzPgtg+QFpkRg5BslmsEzCObyLCorKscj\ni8ZagGlGteyLINLwpz83sPKC79KQ52Y1l1gGDoolEBPtTM6E1poPkd43YtDi\n3AJTYBIrju6sS8Fh6pM2Jj1L8EIp0bnG0+vPxI2XAWoLQ1pjDz2pv0cWNe0y\nY8vnyx0XFauDbOrOZEw2ykg58vFOY/jwRlNxH33o9roUHjjGLRyrz/MUcVXQ\nSmhaFfzQcmpRg052KCItPpjQB93/W8FXk2akJ3EuNSgPEY9f/4KvEfIQs7Ld\nKEObz977qgwNsXQHWQdabVBm6u+jv48zrB+d10tst+xJklYpX22gD978n6jZ\nv9R5\r\n=k1O9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"470db4c9742eea5cd00990afd48bcf6fce6d8758","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.97","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.177-renovate-non-major-470db4c9742eea5cd00990afd48bcf6fce6d8758_1620786244604_0.9533070990496681","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.177-renovate-non-major-10839a8aaf776472cf9a1f38543e485065f47ad9":{"name":"@balena/jellyfish-test-harness","version":"2.0.177-renovate-non-major-10839a8aaf776472cf9a1f38543e485065f47ad9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.177-renovate-non-major-10839a8aaf776472cf9a1f38543e485065f47ad9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2774d23e1d45fa7de71150aea775eef25b45cd0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.177-renovate-non-major-10839a8aaf776472cf9a1f38543e485065f47ad9.tgz","fileCount":24,"integrity":"sha512-3XhwsGOjOGyPMD/F71KiEdA+KQ73bZLYT/7ZKBk+QituTnLAwnfYPD7LNcqgc2UKPn3n6NgH/Lz05gmpVV40yw==","signatures":[{"sig":"MEYCIQDjB9zjSurQ3pB/kQLUbtmFcsUavQ5jEeu+AkZX6mFkIAIhAJb0+N3WYPiYlHb9WZFI+cXDKo6G29q0C5Tnnk8TYVXg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98008,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmz32CRA9TVsSAnZWagAAYu8P/2TMatditjwg3CI7QLAD\no0PNls+rjS75V5IrZrfkYUFqgFBdg0BPNmfhBoJWlVA49m3qT3C7HuNdx9SH\n6YrdRm3BzFCzq3SpwyWoAmO7qsvIt7rQo2mk3l7H6FtgRljdtZcqtJ9OA8em\n83N0H9gPFJgZJkayKHKquqvomup20P992gYovWE3Yb7/97vSgqDqeNEhE/mC\nmhgUVVEWJ0ZC0ubm/yBTv5xF+UwWcHAo2Sf/9CI0S36zCeogYO5nrXAqPRw8\nxatTq27WSKHibwb0I/SVekc0BkgCX66TFeJoEK2QaxZFlX4wDUSMfuEsVccc\n/9mhdWorcgP67zoZwfAjnx8ToM4BCDtDGek5rRN+ArCqA2CbNDWS03QkSYgi\ntIrOHJz/ZIGvV99yau0L5aOuR4Yhuy9BDlvSQkruJeXs0ylAS2dTHR+qutzH\nRkRnJp0YhGnfdV2znHRIsBwjVjv1EXYiv+I7jffyEF6s8BsEzXIWArNBms6M\nY+fHejAqaLkFnk1VoSl1fqxR49Lg4l3bNAYbX8ehX/IMRb3CeI8apJF36859\nDLepYK6KptXz/JUMyg+HYZMRLPUICrxYu8FaPkhZ1S0vYxAr3YuZEMBFqe0O\nNnrDmwb7J6uB0bmJ81dNxD/DurD0J3B5HlTGMTfymdzdI5pzBF/OBZkvN550\nzJIS\r\n=TOdO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"10839a8aaf776472cf9a1f38543e485065f47ad9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.98","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.177-renovate-non-major-10839a8aaf776472cf9a1f38543e485065f47ad9_1620786678468_0.06685581614561675","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.177":{"name":"@balena/jellyfish-test-harness","version":"2.0.177","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.177","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"262155b1b62cee9827a761c1f683b342951838ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.177.tgz","fileCount":24,"integrity":"sha512-Y8ZilpEEVSRNh/78ikdkJI9k84gXcp7yJbG3vYvTDtXYNL+bZ7u/eAuLydNRgnfAnsB+y6BBJ+ckS6EKW/dXbQ==","signatures":[{"sig":"MEYCIQDawxeBBf22gSWdOp/jdNDLHd0+82pPh26KAaP/Zl8MsQIhAJsJwL4N2/2VQ4lP/g5aOW0ZicIQjzLtHsupQXLdmRs8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":97948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmz7JCRA9TVsSAnZWagAAG+kP/0s9gj6yZFZyHN1j6qBk\nKWUfHSXirEO4TE4gm/LDPrhgT34I3k0S5L2m+q0pzwjlzgqmiOtfa8ln9lz8\nagM6FufsBmI3KmW+VO2n2UXY3CKYforO+dLM1QLkk8riiQrhnqGZQhuVIN8d\nrfWpV7+nBFf9gV4UPhL59cZhFyLJcqcMh50EQikzy/ret6fawv6CX7TOdqvM\nnHfjW4MtQLfA2hlfzT+XIQ9glIGoIgWViOOQoZI4+aTY87qUhUjcjCE6dLqv\nefZQYX6XRib3tk8uV14FRQ03eL7wu9SdofY7HvOIAwmdvk9DqMSxQQKh+rrB\ndFTUYw9IfYAh4OAOypbDlpf8qfDN+yHyFqvYzYfTledkbKZBxaxqaROVEh+5\nDRKbu0OW4MCqdfJtQp7+LHJlLyGEBsd/sc3iGloZZFcNklIjAsSaGMsfjZNZ\nSSa/4ebGne6f5gs9Cpoljb82pxtyC20CcBg1q3hp6FXmQk33A3fzbeHZz2MZ\nf3Ru5Ya+lKb+qyz0+ynzQx/4QmPBsGg6QOLGAVq4eBnC2GLeH08wn+Q5gcrG\nvyn/4isfioIlcpJWrbRLwPtggzi/dqcnstVs6U6zeSlwPAL3GtDm1WIDAvRC\nYNkwN+y+PSrlT+VJvs7xaUrP6ULRBhb9K9UGMyrlxKeCv5woLAKwsYouz+xP\nm6Sw\r\n=JE/3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0121b22a98a381e21d964833dabcbfb4ea72f247","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.98","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.177_1620786889170_0.570837475584066","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.178-renovate-non-major-c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8":{"name":"@balena/jellyfish-test-harness","version":"2.0.178-renovate-non-major-c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.178-renovate-non-major-c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da6f5150bd8ee20396dbf2147a0f32e52d5ced78","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.178-renovate-non-major-c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8.tgz","fileCount":24,"integrity":"sha512-RrmwIsJUFPbTnYVFPVlS8hLCQtbwyZFNUHPd4aIAGOM2+fBLLK3vCGzY0yUELshf+NGk2D05iGdr1rbnDXk0Lw==","signatures":[{"sig":"MEUCIQCAcSfui4GjBeQALHD6xUxDQoD3opm2PkgpLDQ/tXAZlwIgaclYN8uPjT9SHQ2AppPC5CghRvM6xlIM79c/9qrt2DI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm0BRCRA9TVsSAnZWagAAprEP/R6vOcrRYWVWYby6fhS9\nfYW5PVP123ZdSexZPeopAU3cDI6WMefW0oYx/7T6IhOpiGxikEIN5av1V7Zz\nxF37nanqVwZtFyHWFQVeU1FgESvnWBaR/TU4McP0pqO0NK49Sg4UYgBHbSA8\nRaR1U/CxMaH0xegJ5DaEvjwsny2UgT+xSzLv4iTkHxndMheFumxsjeDs2o3H\n99z+tKJhIspy2qmIRpBVCgZBwG4YXNNWs5lrER7I2/21t65kWMji93X9/Xqw\n7T/U4oLI/HdzK3ZwSSIqHqmzSiRPrzXn4H37ZLuWHma6MMDusoanluU08rZh\nXwjs+j2tMTWQai5N4aQw1Iu2fHHdL8mbqJcFHLn0QlHJmqBcGrsLnjkShE33\non2mJtp1MgsWVBESiuJs6xxG+1Hmj7ejXvTv3VLJGWnMlHX8Ke6h8aGlzkPF\ncMi5N637sTUab9hP1ISubeFVQEgl9Z4umjyMQKPGndLxiDA7LIdPH3bwlkzY\ngO8N3DHrrJR0uXeobQEY7TWMenD3tAJuT3k4XqTMg8AkBJ9qegxqoL1QnXv9\ndszuMP00L1SS/3C+d8f49fTv6Cg4XnKJudIUi9MQtr9DE9K+tczsJcXq+yve\n1NHxAHwGvngO0HqAMCAq7WIAPrPYwKevjeCsihV7qUAnND+pIEkIvYhJ56LO\nZgo0\r\n=nysV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.99","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.178-renovate-non-major-c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8_1620787281332_0.8320469899880802","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.178":{"name":"@balena/jellyfish-test-harness","version":"2.0.178","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.178","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1551a4009df7f470c04ed8988749dcebb238478d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.178.tgz","fileCount":24,"integrity":"sha512-SLQE9ygWYaxw/T97NQvRf55ZiV0dFbSzRw0tZsMDAK2kHr2s2319Ao7aI9sCd6F7kjzJQLTJcxf/TRWDs8C5KA==","signatures":[{"sig":"MEYCIQDw1kQJlu79mysoWFZxKwj38/aYMAP5FDURg0KJ5vy1yQIhALxs92Sycjp3v3XrFGzufvDT86jDM7b2Yaz9jNcgT6KT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm0FHCRA9TVsSAnZWagAAu+AP+wc9OjbECpDcJ5aDqKpd\nw8L0r1xMHzJR+rWDaBRC4wMrYOMEpCtyWJnGZvedeipAY3Yat1pB3r/P62XR\nIlPhsXF7gj/A/LgaSa2Nt1YoerikRV+O0oOn3HQbHJ6I4VYOq5jajv43mFBn\nb+59xqJwKfwR94qtmWS1dIuKqate1dWLz4dneeKYzpPC3mTagablO2XKg1iO\n7hwrRGweDVDwHDzWGRf5+0Oz3LyXR3FqQi/pF9EJ9ejqler64L2z4gv8DXps\nuXPP6FfRz/1ZEtG3c4PmdOTilCZiyAotAy62rya7jEnfQ6Pd3A9NY7zIQmyP\n0FwS/z2gIluYLZzX00eeCRntJORT3yH8CwcoDfQVmj7ELL7X+COsFQ0qQu/F\nl7ktEiq4OL3vM6s0SemsNzZWmKwhbRsX+HbSMLB3nrGuLXootB0uvA/1ZUf0\nJRThQuVTE26GCEm7VyHb3qKqkQmCTu4/Ly1Ma7lwJ/HF01H2AN5OyaUQ3wMU\nsrj7Ypg4SXsH8QcE5F1IOoiVs9QlDEYZB1Zf33NviTg0+9h7ZuZp4ebl0Oze\nFCo9jeodfmCUd5/n4X5YKcmA+kV5Xae/IdEeKRmEcZOcYcEMLw3Y2oCat7aV\nN16pNPHdSMcODxD+EkFPqzLe/EYdosUMvFuguIk5ntcDoStbPnCCLHDiLuva\nM0NU\r\n=abWi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"099358bff46f7102b3f560f8a965bc75e074f664","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.99","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.178_1620787526817_0.8408723353032073","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.179-renovate-non-major-f954a407fe5d146aefa0c75444a3fd6d35c0ad21":{"name":"@balena/jellyfish-test-harness","version":"2.0.179-renovate-non-major-f954a407fe5d146aefa0c75444a3fd6d35c0ad21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.179-renovate-non-major-f954a407fe5d146aefa0c75444a3fd6d35c0ad21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d58dd97e2fdf520f83a234dfed7fee3575bd13b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.179-renovate-non-major-f954a407fe5d146aefa0c75444a3fd6d35c0ad21.tgz","fileCount":24,"integrity":"sha512-Rgoj3nnUEdwmS8xXpC6zdLPYac8YETE7+tftTas8rwOusMHIxkH/vpPLSBOzzROs6kgQJCg93j1fw4weqiBcdA==","signatures":[{"sig":"MEUCIGEAyGWHlyD34C2RDo40VtCtpSuhCaQcjBrzlZbB0obRAiEAkXhVCl0nMlOLKIZSd/XklQfT4MQxlsD3lnA17e3kfPg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98222,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm6BdCRA9TVsSAnZWagAApD0P+wTs2NxGzSSWvJCdKnG4\nOnCA5NiY5G40vKM0EzTJgaNsUHs6Qp1k4wH1xX+sR7yn4sPl1q1iwyMoVSE8\nopLZvLRYcroQn8PnmKlrbty9sJdRN2zP4XB2a4ZwdqfTKQd5ZDE22tAaBCxy\nHwpT3+0CVfCj+lEmONx45DRKwYT76FGzJeCHoxXN+Jx9SgmBE8DqTkChg/5W\n2StwDmmCSDpUg+6Csffj8khXJ95moyY/oKnEAJDiG/Bt12l3QGtRV367DgKi\nZmab73yNp2qmjHyomdUuWfUZKlCciL+vGDCZh4+Im10NeOO0lu7KbxlB4HLs\niAA534IVE94L20epMZd7+UNXQoGE3Ve48iOS8tm/YzpyKPT7UKZytt2qdIVK\n/1EDEOdWpCdyHxC91Xy+0WMtblW5y9Rdx45KqoWI7zOd4ZzzelNI7xJJMove\ndqevCdZsss/L2sPZfOT/n5bxvuStH9wyrJZNbimzzRtWbBX0msH/szrrCM8O\nL8B6RQhW4XMF/Q3ljqur5ApsEbfAyQDnJTxAQ8piWsVA/MGW42lFhFc4v/MC\n7ZPIsiL6IgvC8rUrAC/7NTLZwm8xVIV0Uf81f8PWIrkSghkjsZ4msMycsg1/\nLGJmPe59Jis4fz5YJ1EfCc7kgvNe7jR00ihrfvFnVZj9fl0IUXnr/3Bch575\nC/h7\r\n=TInI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f954a407fe5d146aefa0c75444a3fd6d35c0ad21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.100","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.179-renovate-non-major-f954a407fe5d146aefa0c75444a3fd6d35c0ad21_1620811868591_0.3166670261464808","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.179":{"name":"@balena/jellyfish-test-harness","version":"2.0.179","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.179","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"752a88d3260d5c364f4ed89c585129c432d1d347","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.179.tgz","fileCount":24,"integrity":"sha512-5IMVID+c/foXV/xc5YaCV3gY8RYUVnhIf1E619TjYm4+x7naE4PUF5P0aKjN85f0Ir4a83g/5eEr4IyWEkgz8Q==","signatures":[{"sig":"MEQCIAQEHn9ZrjoLWJx9doLk3mqjTNqVqQpaZDoM5Ydl1rPfAiA8GGTNmNDJWAhEtOYGqWTCY48corJa/tUYF2HNr3QOmA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98162,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm6FoCRA9TVsSAnZWagAA95AP/1nD0UAfRdWzyQPqlMF6\nfkXmQ4XwAbNgCVoi7bQGNtd6UeOD03gs7V4o8KooydhXB3TcjgkaVIAL/egS\nyPRSFlJjW3aKB+CUbl/h+0o0Jdjnz3j5EFFtt3NKVghy9HwUOTIVkes1yCwf\np9vCCgfQMi9LFwJnR/fNnQ5KowRa90hbjCGMs7HWzTRaE0Vc5CKCB5q9P8yk\ngnHcbgUSDTXGFguutP92zmFVFxLITOJFzV+DlNqPupfVLA2p7L0LJczWxdCf\n6lD2tJgsu75kAbFOd1rh3w+zzHsAbKvj9x5S4I9a9nunz0azWKzCIeVqow9T\n/jIS1ECE5eFjU71/Bk0WE2HHKz1kj1BeIKJEVTh6LTtIDfprbeu8B8F4Mfg7\ndAheyvQP0R8CNrJPnabCq1/m6mGbYrMe/2lTw11FwhfAWiRAA+fVzZK+6gOU\nYrv7AigG0mLXZRoTel2z1vX0Zo4XMYuVa1zPQWIBKvcJNQH3/Xdh9fdo9XAq\nsAmdq+R7CmiZS2ZeJuULR2sSx2sgQN2dh+APn5sBuLfUdGVoM5zUvUqkQS9C\nNHAH2FI7Z2HKby35yIMoTJVQxvNRIXJDkebo05aIeO+WXy6DL77b4Pa7tnOg\nErSpn217sDc7qZQPHGdUjJAoAa10gHvZcAx63cwBSdvV7zHLs3L1AZNtSWYK\nVxOx\r\n=oMLy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6d2e1fe2e5e1bc4bda361ed2f8aede110a1ccf8e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.100","@balena/jellyfish-sync":"^6.0.156","@balena/jellyfish-queue":"^1.0.74","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.86"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.179_1620812135906_0.8199278864285149","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.180-renovate-non-major-cbc7953b346122ac60ef1cf1680675f3584dac00":{"name":"@balena/jellyfish-test-harness","version":"2.0.180-renovate-non-major-cbc7953b346122ac60ef1cf1680675f3584dac00","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.180-renovate-non-major-cbc7953b346122ac60ef1cf1680675f3584dac00","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f9177cdb163ffc8f52eea7320279d177dc381c3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.180-renovate-non-major-cbc7953b346122ac60ef1cf1680675f3584dac00.tgz","fileCount":24,"integrity":"sha512-jrEyvkXVwZgkjUnhOEHojy18ueLzhqp190I9/2hzosdy1neKqxAEdo/l8gafLRXVU/OgEbjSrWyopMeWmy6b5Q==","signatures":[{"sig":"MEQCIB4nukl2D2Vxe7iU7HbvLSw+ci654MbvMQpiR4/mp2HAAiBT6EirnOzEHBqsBUPR2Ji/OjxlrZsyqcBVorgvhRur1A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98292,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm7NpCRA9TVsSAnZWagAAoUMP/0UiopOnMpo3Z55SgfO+\nS/B4wvdZse4TNPEz8rTVG6mOjsL1RftDwnzEQvd5AxDpKHRNfI3vChGHa5Gb\n1Lay/g4IxhDyKsYcrNv4T//zTMM/Gyvwvwvmmlw4/RKFAwyJacrggI4zsiqD\nPi1XvW9u+f3XjjckBFO6MLlbQ/ftL6UoOszRipU1PkkaopfjDFY7gNgW4JNU\n0FKFojNJHjRw0aOs2Z24QEa+p+CXySfdSukZQ7UkMGBFFgjgm3uS5JrQ+N4f\nRSWYvaeZKtJ1tvpI2TTIfI9GBBSs3gGOsEBRFaZb1wiljuoJuqIjcVYMSDaV\nm2kOJyVWqNb9tpTI07MJS80wYmuycnRKggkEJ9+NroDdRRJDYmWDzpOvufOO\ncOqwZ1E2xn5yy9Od0/KLEowxoiV1IGnzNuUUHAccUBbtP45tb6RVcD3YHN5V\nLuR/f3hdIt171qe0tOk+hAHiyPZlRTD6PlaGxzDu0FHyp3iRHOW00hxvLNg9\npbAPaxcnBp5FFlkwYh7q2doSRGcMLCSoRUrQKRgyiXcV8zmYmcYxG0vGuOLx\n+MgfDkVYcv4HQ3HcuImxYyslUCxVRXT82/6cf4Y4RQnJcmC1cSqCKPZVuoTX\nwxD63EKUntZ37+ej9hW5yue5lKtoW+sogS5nMPYjUG0l7nBx0ncRDNbK+dg6\n9+0Y\r\n=ckyQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cbc7953b346122ac60ef1cf1680675f3584dac00","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.101","@balena/jellyfish-sync":"^6.0.158","@balena/jellyfish-queue":"^1.0.75","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.180-renovate-non-major-cbc7953b346122ac60ef1cf1680675f3584dac00_1620816745153_0.5626346611192765","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.180":{"name":"@balena/jellyfish-test-harness","version":"2.0.180","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.180","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0bf0cdd889a654e13b9e0d4dcd77e00d464f69d2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.180.tgz","fileCount":24,"integrity":"sha512-ILjkPRzuHSyiekEWgCEaVhuH+xxBqSZ2/4A5Dy2dbeFZ/02iySRMBlXS/6SrCT/wgtBClDrJNcwMczu4lDBHkg==","signatures":[{"sig":"MEUCIQCMZHRXQ3jggVKIn2i62gb4DqihqGIck5TKv7ng74r9qQIgcMIpsBd2aiwhVviotD7W/9xysNJM+kMYcR7KpiEU5zQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm7Q3CRA9TVsSAnZWagAAV9wP/iut8nei4uQSNygEDhRz\n0jPJAxgKP/Z6wxd8lVtzCjVaTByESk5l7YN2bvLyUwjKnM0EcUq7nT6mZFD5\nPEelazMIQhX2/7gWjnE3oQp/+A0zk5cYl3UPBSt0kUdAchPgEHhhw8MiTr1+\nw7w9W6lhxN6lW7qEC6iGubHgNEpNlrtY1PGwKIlk8eb9T45lhCn9kUZxeKXu\ngVbnMbQPu8PT+fTGVPz9aiEp0k1K73KpfQKBqu3yDLevEf3lVNpTG9Jp0Qj/\no9zn/jEuuKfFsQ5BGxqMImGBIt2avskFCZlyhcI/nxkWxMLOUR3U3HEvI40r\n+kTqJrNzzKglhsjPLf1Ec1axRD1rrnkzbjTzV3M0KEMJhL0rm4DHayfgm6t5\nntjM5md98g8vOkMZwTqE8YA6kaY+E1wxQnE2h1WOVP5sOLXppOH3Ywwm7InB\ndKdn2GRivW7Hr8n8GpuVucIr5wDwXFlEZ/Qm0k6FBo4JXq35Bh4WZ3vbnyAy\nyaCL9qz35+cwPRkUk8+F7C4PkBrxaWdnfx1SaIbF1e69X5/w3w28B2AiS3pt\ngtBJNJFrNLYWJXtTI3y+A+sj0FHSJ173hc3/a5KyeGU4axP8obJlh0Qzc0rG\nAomE9BjRNxx18qj+omczQV/987DxBsdzf5E3cs5jfUw4HLsL2ZxfF+9hTB2o\nh1KO\r\n=qgpT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6433644c812644c0b34d8c7c36e13cacc2bb3c9d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.101","@balena/jellyfish-sync":"^6.0.158","@balena/jellyfish-queue":"^1.0.75","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.180_1620816951454_0.9413053199436401","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.181-renovate-non-major-1a8601e1403fafa6ac1302b23c65100274b91214":{"name":"@balena/jellyfish-test-harness","version":"2.0.181-renovate-non-major-1a8601e1403fafa6ac1302b23c65100274b91214","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.181-renovate-non-major-1a8601e1403fafa6ac1302b23c65100274b91214","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f5c43cba1fececa358a7f397847757a85765547","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.181-renovate-non-major-1a8601e1403fafa6ac1302b23c65100274b91214.tgz","fileCount":24,"integrity":"sha512-s/4quzuju+WwEtp+8/4Jrg8LWBJYyzc1G/awDzBuOm77/SgXEp3rsU5h2ZOEIwHI2SgBTXYjhsbSdK/ODKvw4g==","signatures":[{"sig":"MEYCIQDau077tpmFzy2rZ4041R/7Zkd1WakpsOcWcoYHR+HY0QIhAIRBYWQ8x3RGi/SnNQa+g75y0kiLEiL32Ua3upP3sZ9z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm7v0CRA9TVsSAnZWagAAb94P/jboUBMDa0erpsDQ53LQ\nY7b8tTl6XZSgXyGs9HDdJeGdUN+qqjYOGpI6gbiYtMR03s+5EWHFlwgKiUxH\nVD0hbful31+sypzCflMszdrV+Jsozxy6PHsdu3RE3BygiN3OreQA6XMIjyJJ\nLYAt1kwdeW6GCcWCKw0mLgMP42VdhpimJkUK1sR1/eGUhFPFESwkEwnd0UGb\nLM4l+b7aQkex9uZljfrE63JzGtx5UkkquER+9Wr/wYYC508SP64Gyhcc4bf3\nJkbmI63vanfeetLymddhBV5OwR0CixMK4XIkZNQToKfH6alKhUH5JS0hJ+zR\nWo5b8YsR1ZqwIb2DDfYhC8VEzMVKH4SY5HdY3z2GgwdJ1MJl4K/OTEwa87oM\n1QOePnkuxEfRoqs6zNRpRK40hPSEnHpQIW4aRes/dohsf26lh1XwdFdnMdAM\n0U0W9LXtFAB9Cf/E9wA7WoilYI/e1BDSHWLcoMm7gufzAThe6n69nRUdtEKl\n7M+LuOW/xhVZvq0E8r256+EjomrC3phIMRkREC6UZoU74fcloOVvxggCA/vD\nbv16C00cWsjeJgJ7Er2bjR+8sJHqoc7a0iVQedTF3/CAwULMJUctagR93CJ4\nQgg763pWdz/djefzSoNLraj5Ybrmg5qZeqZjCt6ZHSPPURlaBBn4AXAk8vko\nwyC3\r\n=G49l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1a8601e1403fafa6ac1302b23c65100274b91214","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.102","@balena/jellyfish-sync":"^6.0.158","@balena/jellyfish-queue":"^1.0.75","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.181-renovate-non-major-1a8601e1403fafa6ac1302b23c65100274b91214_1620818931554_0.33265063295071107","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.181":{"name":"@balena/jellyfish-test-harness","version":"2.0.181","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.181","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dd2a148f3bd7b2689b29cb9c8a095d836a4444fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.181.tgz","fileCount":24,"integrity":"sha512-gEzq/r+KXWRNI4O6WeCVXWpgGd+gA+3kKtJRRkMJS3BshSYUSOJMjmEFbDGpNb5cQhAIL+h+cPlndZz0uQIe1A==","signatures":[{"sig":"MEYCIQD/RffidigK53a7zoA4QzJMjIYVY4vVnCNp6MchXt3FsQIhALEVd2GBVE3HC2IJ5khsCYcEpZ0eH5Y1gHW0CZeyMhVn","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm7y9CRA9TVsSAnZWagAAbBAQAJp7c1y5rs/lv5bhe/Hg\nxmQteX1iYuzDnbrssoNj1eakHK6aqvLJwTA2Q3pAJQrJ9NR0nXH6rQFMfKdw\nhVayX82Vc00ea7xu8cI8WaAvxIMctFmStuCwGM8kFfLc/d+TGFWJo5kS+ckF\nl/+KsxRi9vve8BEc6b+QC2hau6Fl004mJwwv9npNHa9JE2bG5Hb4apJH/BaI\nzA188i84a+aY6D/EW/rjUe9//Me5Z9fM0LDIuUYLTLK78USS+BWASNpaiSpC\nQGMU0M785/kQ9wcjAQiyZZK0vN/VjaqdicgeffGDUhrSJ2phnbaq2EHytE/K\n2JkjOLbqv3i5br4c9eXZF/dccO8rNoUfacmB09JQCwEMAkkiZjVMHeGMXrHh\n74YzcJbP8gPWDAFbHyGEmNq3slEMhSLhK8bY8fzR0JxwlRZUEtHKuih7vn36\ndD63DvIE1mi1c1zVc6an74G8k0urItxSzhENYNtGPwm9pzxJOGYnFTSOz3Zr\nIoI59OO05RvI68rGfz0hLrC/YZtJKWkb1/I4FXhk+R20EJOF6meJfPJGKovr\nISygrfGxBv3ExgusueonG+v7FLNrMIDfPDCjWShJlrBy9wzhYSV/hDwnDZ5x\nssUE0oy5RjZA6N2mCzaYGqRd3kSUHnra//AUc2KAVnyLrx2Mnr6EwPBHcuWd\n440j\r\n=V+O3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bf2615025eebaa20e54e26d2c34f632546d1f5ce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.102","@balena/jellyfish-sync":"^6.0.158","@balena/jellyfish-queue":"^1.0.75","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.44","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.181_1620819132663_0.8199825167555699","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.182-renovate-non-major-5c6907ed2744b7d128024fcf62bbad28c99b8818":{"name":"@balena/jellyfish-test-harness","version":"2.0.182-renovate-non-major-5c6907ed2744b7d128024fcf62bbad28c99b8818","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.182-renovate-non-major-5c6907ed2744b7d128024fcf62bbad28c99b8818","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f140a122e153f5dc702932fceece069a19f3cab","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.182-renovate-non-major-5c6907ed2744b7d128024fcf62bbad28c99b8818.tgz","fileCount":24,"integrity":"sha512-NQlYSqgJzGbNlMjMl3QesomU3vxeQ/qk4pGpZ64wROK05+okqmgO3kDGgjM3T9cLW/LK22YDLwKrUIeogFeIeA==","signatures":[{"sig":"MEYCIQDShHV8ldhy/+YCWNMFVasmObkx1WcA2/aCHz5tGZHLZQIhAIW5XicCh58xjk22YUfFyY8KEU6J3PytDgN/Yfm45Xx9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98495,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnDpGCRA9TVsSAnZWagAAwp8P/1S0fnPYMwmqX8tu2RVh\nYf3MiXuJj1y57a/NfW4RjKDiupHZHbWr3NiUJjESrh9IXvLk+SHF1Peb3xNa\nxKLzdvkbbfq8tNX84ysWjZmEKVBZHxO95bAyvYS42MSEfMNV33MrfYl6inLy\n3J4Yei50mDeDKN+BhhuLzaY/kp5JzQJnlNA0jneRfwEjd60L0gDnJmxLhwOa\nHAqaA+r4j+w4ciUUP3AbrDn4boPOa1KgHYj4orKMhkzyiww/kNEGC8FGK8Ou\nf9GUnbWx4KwUMghQ1Yt80TyaNBgOQ5i6J8xUxnvtv6y/UB5a8GSP+mfMaWwl\nDTDERWjEzCzegtjJCxAREsZgO5XNtrAqcUpHQi/maqWj/jnv7u7KUocAxj1/\nMfNu+iCKHMk/wrh/8gU7yDEFS57eJziVr7DarMcMU7uaen3uqAMXisbeY6je\nu6me5km+GY11cA2DOEKlLtAHUR/TKhUUTiwQqSYGG4VLyMA16KK7Jmccuqqp\nqrkXEAVSCIae+vH1uEikTqiNVhcsKksUrhogaoJtP77vObFwPKnOt0eJ/ffP\nK9DtLUuzx4/rFbP1Q58E6D3C1XNQh9st6PwUeQwVB4Ld1LrWvnL3EsNmSPGU\nRWlQD/dOgAVPYolIwg5OO6NjQhA+TJSqo8/Z06oNJ81H4mfHYtVuKDGBjUlv\nKtd+\r\n=BRjq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5c6907ed2744b7d128024fcf62bbad28c99b8818","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.102","@balena/jellyfish-sync":"^6.0.158","@balena/jellyfish-queue":"^1.0.75","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.182-renovate-non-major-5c6907ed2744b7d128024fcf62bbad28c99b8818_1620851268971_0.8659007912845265","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.182":{"name":"@balena/jellyfish-test-harness","version":"2.0.182","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.182","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"66522997626357031c4cd114b0d0d073b460a0b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.182.tgz","fileCount":24,"integrity":"sha512-XGOAmpmXBlQ7CN9VA3udzENjhXPvvcR0ySjW1oPF9HhBmy26rxTGVpyBOyMv1jRFI/LCPL7vCYgbjVs3l1xlkQ==","signatures":[{"sig":"MEYCIQDU2fI3oRJci2tTopJdJ/9VeeB9nkSMsla0UEwZD/MohgIhAIh8XpJsyKlThnm8NaOM2IJMK9NVrYs2XBOj7fszpC9W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnDsYCRA9TVsSAnZWagAAfRkQAIsx+yvPVvYejELrw3gY\n9RbvYiqX+FdFD62PHamLSuNAzCX4UZ6b0JMsLTJEU4msKl2vzwmvauqOgzh2\nt015BwG0Yn1eUZD0QZgqt67PkMgdx2+9fdwDH8SDjAf9fHy4gECfF6jnS7i/\noC2tgqqynl82XyZ8FGl0y7AX96Av5hPnHGnGKdeV8qK4RXXhyu9d1kHbGBm+\nZRZzdccKqYqCEvUkiyTSz0P4XI15YCukAHcyygqnpQfkaMKyE99zh31zFdHH\neme2loXnPwVxmJUpa9H2B9Ub7gUr6FK6bxHOPkkddE+UGPekE6TOzJUZZqfJ\nIhj/fMN7GlpCrbLXkQxW7bvd82lei1JKaOAA3uH8kLFJNJPFZ/9Ult6MFTyy\nIkTjzGG+4XQTrQqKQKLgkQJ0LsK98q6ETLZYX01K6XpPQup4Zf82LImEVzdR\nI1/nbTgvEbRwptAJjxJcDxVv+SAdHJQ5qpmaa1B5jeIlIMG9ckNjS8pzGCBU\n/h+9Sb7izzJtMp3vTfdcpInw/7m8ty+BMiX6t8NhQv87qGY1w5jM//4888Uo\nqT+Dc/Dm6kMMrOMiQW68ffiSgRgl0CjWpzCVnXo/69giiwli7EWyLKdfd2W6\nTBqjVXoFrG24i6mg3nO4UhigezzX+JfpHaQ6DEokgmdSJ5SKUqu1Pjh6cu81\nOYfE\r\n=AMxQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f241d9c554707f2254d07b864b4423d33fb63b4b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.102","@balena/jellyfish-sync":"^6.0.158","@balena/jellyfish-queue":"^1.0.75","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.182_1620851479637_0.4568040280478196","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.183-renovate-non-major-6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8":{"name":"@balena/jellyfish-test-harness","version":"2.0.183-renovate-non-major-6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.183-renovate-non-major-6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c8d55e241f3480a86093e96cdace37b481aff72","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.183-renovate-non-major-6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8.tgz","fileCount":24,"integrity":"sha512-/2tCIeZtO6TGEIgdz0jIvs0+1pXlxcRnCnyz1oMlPDtfbyiIxfJmK74JEMMYje6R0Ffoeub9Oi74+iorbDpszg==","signatures":[{"sig":"MEQCIHk/SfCKOzD9i7J/s8MgBt7ens69RCHN0MtCAVxM3LghAiBXYSkwKmXQjiNOqdXkS8WLV6XBOiBRmwnLMvQOf4mIeg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98565,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnFM7CRA9TVsSAnZWagAAW1kP/2L1XmpHw+/CWctNjNTN\nhHtvezN87BL7vUjfx04pjniDKIiiR8x6rPxHRLEyxP0mrkXn7+F36CjZBAmn\naeIc1m8GSC2+ATJSYiaLzuw5he3gGWJZobBWEhYmilC4u5W8kFvCiTsPbmIu\nOu77PdOpWCIQVQbduibACcsBCb7jzeeKR84Q2Tz68Di2caZBPaWckeI6LNXB\nGtQNtK9pO8WSjARVlNj5sI7/YR/80g2r/SIz4pn+X28TR6FMKAYeof7dbEUJ\nylp8yKRa+FrQxa4M4XgeU8sv+WAKEq2su/zqDbkE4mzSyQwbYVS3Sb+gmDny\n86TlJYjE4PeoLnjSoAmNjfDVQIW/SrCuiCMQ4lJLNFfOGHOKAWRRBFXodeQL\ncsbNfALKLASh1k/H6C8dDIYX40oy62GlAPXtJdHbwEYoExdJkIwud7pL2yJx\n8WvKOPRGtOmf/UK5ZF56cuRfAn7LtYqSPas4jLTxV6C3R81rMH99w0Oblvzn\nWcrQ6E0xm11utlwaYLZIalcL2/9OoXlj0PeyZoZe93dvyXSrRSUt381qFgLc\nq0Jvzl0/+on5BI5wKyoH2LUi54uxuKC52G8C5naW6T1nll+ezmNxOxWjnaCV\nFWPv4VrUgAy3BeGPusxtuADaqM+cPGt8Y5BO1REtmb609nYJpLgd1o/it3gb\nbxtI\r\n=VpSU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.159","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.183-renovate-non-major-6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8_1620857659348_0.7833328247651496","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.183":{"name":"@balena/jellyfish-test-harness","version":"2.0.183","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.183","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"920aaaf25791740fd4e55fc127100f5b82a25d2a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.183.tgz","fileCount":24,"integrity":"sha512-/EHtwgyzNtvT5keePuzoNyeCm2iuRckGSR1kLFW1T33dIZuHUqinDtVyfer0MD3xwKJh6MLLePtY9OI9S98ZSw==","signatures":[{"sig":"MEQCIEvyXbrNLVFbtTRjbXXusn7237xGu77Fal45wWPC2Jm9AiAua5do46wjHRkULYT83fZ10HumyctY6B5So3W1CVSwWw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnFP4CRA9TVsSAnZWagAAnt4P/3LNxxQYcBUoAbtAJgnC\n9skBwZn6zL4S9Fq+bGIkvKcAciT8FdwXwfTSjAqe2ptEhi0R3uAbR1eM+GKx\n2aZ/nHX/NvDgoPOlimxdwlfyCG7K7s1Y+dV1s7mcgDAwWmskbwEzCvRRK63y\nbSb1hGMAoHuCT0VRfmzkXt+xyN8ErPzS599Ug/WtCNPukbWN8zDmngxqznge\niQ1OiupErd9K+f8zwMWuotShD9MbyLXCybcQpo7na3vRcl9nWRj9sSkVf+nH\nAXMTZAmTkAfTkSiG9HLJLQHHt6XnulAoq0bAVDDUiTkEuEZzRGmgUjkNnRAw\nIvvKJGHzP3eIQwrR4v7ghNb7kcYHBGrMCQPLQJNcdIMdLlFwFx44tLcpK5r2\nDFbV7OIN1eKFEV+4Cmno6qU/z8Jay46t2nPYIFYDgDdk693AUGez13gF91gI\ndO2Y+aJaumlX4YU/L68xn4PJFqqhCqqYmZ1Tghhr7Z5ZHrp2iK+45VCIxm+s\nOJ84TFit2cXfrUSGuhYJoEJ+wJIV50dFtofnxDn/rr3NNOAhnlYes4ZEVEqI\nEr5SErJyPKJ6Qm1ubr11SHp+BfF4L9/Mz7E39Id8Kcu4XubIDle8sJNigkhx\nFaJyi/KsFerRxenz91rNCLS25zA0lnx9Qzor/mqQjXSmhrX3ylAIOHUU9fEl\nbkUH\r\n=mHz8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9dd30b98f12ce2e4c76c63b639e7a5c1e9c4d160","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.159","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.183_1620857848124_0.8818163475432821","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.184-renovate-non-major-0478a423de788f3f8c9264a305877eea7f527f11":{"name":"@balena/jellyfish-test-harness","version":"2.0.184-renovate-non-major-0478a423de788f3f8c9264a305877eea7f527f11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.184-renovate-non-major-0478a423de788f3f8c9264a305877eea7f527f11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d4dff9df133c29d0bba0ca4a94bba71a99161fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.184-renovate-non-major-0478a423de788f3f8c9264a305877eea7f527f11.tgz","fileCount":24,"integrity":"sha512-wzyoVITvo+Vqel2dt1SC9p2UKFvim82bw0SafyxLSElJJzX14+ZYl8aWCnv6k5zIVws3a3mXgV90Q864mdot+Q==","signatures":[{"sig":"MEUCIQDnN/gtqQhUW1s34lSzuT/BGImoiW1RX5DeN8/U/QgpTgIgEu2SmwAhwntceUTQnTst2+17zqMfLcM7pwivg22A1zg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnHpYCRA9TVsSAnZWagAAIrkQAJejiPFAHTsZWFy95z6i\nwKH36Gra3R47ahqSlPZEtLqm8gxr6Nz24bfiMgg4xG3pq9v0RL+ppPI/mN4I\nzscURptSzUbDEwZt4VokuYSE7X8FzJaQ/1TYfWqTXUFGw+NmrHizPuDWzoFM\n38S9NzP5QWHJGIEHqM1QL3vMvx9Wu37oB0QLwPuBr99eh/syVtWCWBup8SAg\nIKcJq7+QdGkyVC5uLdm4hJOrViYfl0YJ3LquGoN2j2250HxmPcLNaOQpiSzB\ncpqEMw4UUehhEnQ+KkPfPBpVLRDgqK1q9h5BYpUAZi2B4bpVJWSqsWF5zIjj\nOW+ZHoca5r9j/YQA4BYDGN7ou4iSpzCyA/myuAEDgm0otzlKdlLxWJxCT2Ov\nGKsczAbDpJH2nkznLoYBXR0chmG8eYDFW0Z6uoPSCqrWCaYuNUG8MZV9PjpE\nKd+249onqGkxtXpoRAcv8LvWEr+KJPQWYpBV49ExfcoQGCiKMu2pNzdqHfih\nMMmTgMABR+3l8j2juGH7eg+0IgvS8sc4w6jN9o4N6Vs1+CGVBA2b81QQ5SO9\n0jkmsMmtZ+86JJuSgv6aMbMDcp8gj1UexdKCWvwjpzyAC2L7itXxnOBulL29\nakmb4NjPNwCMPnFnb4kG6uGFCWFNwvHtgQLx5O2Lx83tt0qAOexqomNAhzsx\nbqSe\r\n=WFDQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0478a423de788f3f8c9264a305877eea7f527f11","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.159","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.2","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.184-renovate-non-major-0478a423de788f3f8c9264a305877eea7f527f11_1620867672112_0.9526274072331695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.184":{"name":"@balena/jellyfish-test-harness","version":"2.0.184","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.184","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"631257262c346d974a6600800d228a0675bc2b91","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.184.tgz","fileCount":24,"integrity":"sha512-qTZBrPhfYWP4EbbXS+eHiyLrQ/BM3qj5QPerSKXaTQFl63q7LQun99REnu5gsAgTqV/jEAGEBrO0igkNJrIFTw==","signatures":[{"sig":"MEUCIBBT1jEmP31fLQqLRefshb882b4G1DyzbAiHx33jsijaAiEAwGx3J2M7CsG5qCg7azC0sZdOxT0D0cvG44eFENFIgCY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98611,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnHumCRA9TVsSAnZWagAAUpIP/39RqV830D91lLPgczc8\ncK7E818ui2eA0S3iYnywQLku62tPrl3JE9FlRcsHsdAML0hgX1vM/vWXnRcU\nSF6ShcSWf/WxUYXUkgRPgVVxyoqGafy4x6MGqPvdE2B3EtKZwZhEAX5yVJl9\npOfntUBas2EbiYR+nkcbW0iV1Od1PJa/pZbzt7rMRB9Ymlctzz64WpppUmRa\naaIFaoRBXY8ItFKpojfzqZJPIJyX/vf6ecc5mIiCNHEXoli2KFxL3dEKEwYD\nr2eJpdGpKF6z3A14Fp1XaEdMtakSGhp+zt4v8oFYL92zQzChm53N1qCAU+52\nMBYFlB8a81Z0JndCG9kj+FknVwU35r+cWenPgXFbODvj0sTMzoFs+20U3y6e\nI9jqKAILbABgD5HeeMrb7kGM0K3jkB7TFfwFY/dXnN2BUhVZLgpLnkLMk6HC\nrsL9ieCXPxVv+FYm9JeOSI51Rv1u5tICAHufFipqQucToWl+uGSgX+Zxy6Jf\n7sHbJ+s49UrcJAtfAaO7PeY4s7yTplqmOb2knA0lMuSbj8vH0Cwxd9/192ul\nBAQdKUiKV5Z9HtIHQXQYijgxHUyyTqzpJma2XQCuCsQsKJyNc66p61ZV4gbj\nrkeLGoenfGE78lM505NPGQfw9JLNxnuG2ozukkaKv4pCi8h2mRu+HMwTHrIJ\n1FMF\r\n=wBZw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9b1b05c7f49bdadb3c8955cb696b2e44a9d65275","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.159","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.2","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.184_1620868006169_0.08034341910197007","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.185-renovate-non-major-63b758e3dc52eacec1e442c716b1bfac56d2fe3c":{"name":"@balena/jellyfish-test-harness","version":"2.0.185-renovate-non-major-63b758e3dc52eacec1e442c716b1bfac56d2fe3c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.185-renovate-non-major-63b758e3dc52eacec1e442c716b1bfac56d2fe3c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"995ec6824c421e3896f0c658f560906d2b3e66f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.185-renovate-non-major-63b758e3dc52eacec1e442c716b1bfac56d2fe3c.tgz","fileCount":24,"integrity":"sha512-KreA3JDEEDc8+wNQZxI6baYpDwOTIqdn2nzXEr3Zooof5YEZyqFnPdlwY9yOBTcgpkZ7hPZbNuKto8XopaIFyA==","signatures":[{"sig":"MEQCIHDYxdGgV2yFDHdr5BAeBcQSU7ekmgIY9/pDWB5DEiRQAiBcJV84vZWLbYqNQU7UhWh9OlENEZOeuUeupzWIhW0BYg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnIxeCRA9TVsSAnZWagAATYwP/R6U6xgch6bf4OlOpNEd\nuSgzPYMOp8M+kGs8rnnABZiFTVfiGSiWqml9BzLZTtBoYe/PWatACLp39asZ\nOVQActPrhz94kq2RCFQKU2iXDlhWpBgPXE4NY3YgkVBp40Jnq5c3dOaWSpvg\nWnspyZr7VycZrQkFKcPFvOHb9o+GHIxQMtm36aV6u/s5vbvh4NCLPlLd2dmq\nY1hRTtZ8LUcTNvWWkYGD1bieEH8KtBrvXN/89Eb/npWCC/7lmg7Sf//79vMC\nNBGCeEAK+ZpyWTzcxHFSAQRI9pDtcaYrbyEj3SYczx2nfEnaVyabPjIlDeC6\nT/CKh/L10KFnZbHY7nekT458tk7tz4r5382QrbJl7x4YcYQCWLeVuMZZlUJX\n51vAkMb20836DOhDhJ6adpMypOEkjMZIwFzxiyXw8IPdEki7Omtb5W4vvUIh\nouJnmQo+qjNJQYy+NjJJElM7m1+s59xYDH1Y/GZLVe8tS79CwaR5tf5E+wiU\nEkA5TYOxhP7qqmqyxA5aahMbzGSoLd9ssrHsTQZRvbR6u3kA7pF0keJW4fXh\n0ooDnsA+S+zmqDSJo8V+p+D5LjN9qUMdPlNnm8hK1T0uh7f4YuMfef2wWuYZ\nZ/Uw5RZaWt7fs2FglmTGhVLLnZg6TWUhIIkudsI/uKAHs2vphrSNNndWcRZj\nMSa1\r\n=FUtu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"63b758e3dc52eacec1e442c716b1bfac56d2fe3c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.159","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.3","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.185-renovate-non-major-63b758e3dc52eacec1e442c716b1bfac56d2fe3c_1620872286085_0.1378332476675479","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.185":{"name":"@balena/jellyfish-test-harness","version":"2.0.185","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.185","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d86e2cf61140c741dac88d384a067f42edf1664","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.185.tgz","fileCount":24,"integrity":"sha512-Zr+4c09gOslkG9tAl8iVEcphMJFiqrsIErHkYlUWrgFuyeg21Ra2V6LDQp+3qkQtXTytAEezKQwuBRF1/CpqRA==","signatures":[{"sig":"MEUCIHKeH+prAJJyUe1xbL8SJAzxsLfTxPxklkDX2FZo0pTIAiEA3HIYBz/WFhAHGVmZEYwemD7FVtVExDMfYOz8/M51vls=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnI1WCRA9TVsSAnZWagAAlBYP/R0utcfrguUaILpo9aA4\ni9/wBR1FdrIH8hz+PAfdXCkyNzXC6UngpdYTjf5k8CzVrnWXVpoKZMT2Ykc2\n1aHCi08X3X3a4th3s2f/dZQ1j4Qn3WIeCaxpD14udqomdjGpEdJPmzasJH/H\nkPg6/FnsuacSuaD6PJnFgPe/MNtQDIQ417ruw2VQnaN/LMBzODhIVSDXhRik\nmAjndtQFv32/z/ZtzgDuZDq423B8osneXkXcJH1TXp8z/GBLmx2V2+6puZ24\nUK9gih7ixB0MGAykbL8H7SbEYsp619FvNq1O8DikPxEhBXE8EbqHDNMCqAZe\nXlwxxvutlzDTrmlEpwkSujGk0vAjjEGqCOvltKAMW5pk4uwSLJnAf8/yKhcD\nAg+K7oDOod9lIGA8VJsQGXaXxdFb5Q7diPk2jln+2INiBMYQRpnTbcak/L8X\nnZPkEShOStIerMuxSwtykQ5VASjpBjn+Vv61mLZ4OBHb+cd4/5zyfsxxf856\nS45TR56NIOOkr9sZpg9sajeraDYkgZ/HciVj9BLpf8Sm8x3lazHmAUasMz0Y\nKadbEFVLqeChkwRjOTcN3Sx4cxwE6gPGR0WDdA3I9o5BWVMDIVI54PX/NiVb\nub4Q1CC1GePbDoDE+58G5YZxSlPsc7szSgNIkIFCHjhejNs+2vH7LooTIqNx\n0ZtP\r\n=SSoY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8c862f9a28b5517483ef2d68f174943a2fc43a95","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.159","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.3","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.185_1620872533477_0.9658775281022749","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.186-renovate-non-major-35decd6c85f0379f96e9f030816272c86613b19a":{"name":"@balena/jellyfish-test-harness","version":"2.0.186-renovate-non-major-35decd6c85f0379f96e9f030816272c86613b19a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.186-renovate-non-major-35decd6c85f0379f96e9f030816272c86613b19a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2033f6a3f93ba7e76cf04322118d162b764eeaae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.186-renovate-non-major-35decd6c85f0379f96e9f030816272c86613b19a.tgz","fileCount":24,"integrity":"sha512-Nf+D7R+YPxa4/lhIFP6H8F18LQU8IQf1ZLQhHNTPe+hBQib+4Cx8gC8NfalH3WlPCa+COc4fbfeFpUzfQZB9/A==","signatures":[{"sig":"MEYCIQCsdk9kNEBS+kms2PS2qEGAQU/+oF4/6/GvrqNKhOnqQgIhAJCFhNng++vCjx81CTUby+VYDoIXjQyHVM80GEKCeEIR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnSG0CRA9TVsSAnZWagAAxHAP/3q9rBWpIFun+FCpLa1C\nG3aqngh/QrBILYITd8bU1w6cX86r6S8xBtqHxa3z2xLFzcMAk0Re9kzTHTVn\nF8mU0h6KbfpmHIUW6ZIr2ZYhp9PEstMI5MQTo6o1vN+Fwa8Os8TI6mm+hSTd\n7X59szuZfRzlJwHU/SSbwPb1R9FqBQ/JnjQZItmqdb84Wf9DMPVquoxWxPHN\nPP9x01zb612iE0Eno16j4KlPLmApMGSgi+UwZv5AWWTNaT9GFdVReQUJLzZM\n7IgiAfcCVkWXWT6/8MrmqF0NUNLVoIp3eCcMzCNKWo68LSLQRIpgS6pMSF1O\nCuh8+3wRObGptEVoVGdAy+kIaTprt4voXy5Ui3DgeFo5kVCsbt/LJCRmngG5\nPvZpTq8Hry04vqQNWXk7Qmip8s7GN6I4PbcRR3tA1aL/AsExTiizaGDZFq6V\nRv8hhRsoVqYQJNz27OyIZBbriwyxpRwvxRuk1zl4c15F/pcNPeXSCPhlgyU7\nKbOsI3dB8rmfr8pzT8fR711SpDq+9dz6iElRFOsZCooeoPru1cyXO5xyyWKC\nFHBOuHizeHi9cvS3GOIzwJKacmWpgLUwwUPSDqDipmf+19F7JSodraXjLPc7\ncq9aVg6NVHtZ+mMxU+yyGcWpT5Z/ScKl/mR5xTNaugIn+KxjF7w1ZzMSnUD1\n60Fh\r\n=EKus\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"35decd6c85f0379f96e9f030816272c86613b19a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.186-renovate-non-major-35decd6c85f0379f96e9f030816272c86613b19a_1620910515942_0.6266383981800092","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.186":{"name":"@balena/jellyfish-test-harness","version":"2.0.186","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.186","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34e1b62dae99bfb7feefcaa7981cba5c23a2e792","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.186.tgz","fileCount":24,"integrity":"sha512-nJrK/uOPQ5PvZC3zO7YrWxwC14eoEQaU+0rlfpVpTd7ewv72MTdhl1Jtt2ff/KaYgVmFSonb3zlsIUqNt4WOKw==","signatures":[{"sig":"MEYCIQCBIjmW1TExSS7YhPSwxuXj54s4yljKxAmPuIwvYsyY8wIhAP70RPveBrgYb1orVa9sPasQ+qy9CwVqlBqHNhf4hBsS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnSKJCRA9TVsSAnZWagAAsdkP/jhnA8CUzVzg92yQvWnw\nagI8cPPnrjnp5kLWsEgJBxLdk/AspY+HXYI+4fhAq1J6jTsZwA1tpB4cTcM3\njbgSItzi5CnBpvkgZN/T9+aRnI5qpWUtYWaCt0glRxdO1+VMe3xfoBKt9NoH\nlCF6pMMuygHGAlcjdbEvfy1RIf/wHn6AKZfjIMn37Ir4luCY4YtkVdlLc/x1\ngk3Q8CgQI/zexLzYZ4JMT9r3mb5oXMAIHAF/Mu8cmLXT+5+/dd79g7rsj6uz\n1dvZUT7RWcMhMTgfoSbj04RfMrPPv+egQhMqAov4PKQ9SCNR8sWFr7xdvUdc\nLkFVAIGioFPXnE1DMpePBJM0i2UGi4OdbFBlcpF7WEwph/a1c3c/ZkjAccy6\nma1wGfoz9uQ2rPmmc++hUpWGBYRgequ1PRXkcUDQpk1oni7gxNXhvb3KoyLF\nJjUFFBSGI7vqWZCtCPAvrkxDz8U1EKhXNYoUDtlOZNmn+FZ1e9n8mppn9PgY\navjqScBG5WRukAvPJf1kU2rcreHIEikh/mJpr8PUJKisbjLvutvmo+uUUfnE\nUozzjPxwColHdb0qpLZPMDfnxJLfdRxCE0ICr0h9w33TTLwyHANBiq3m0Y9W\n2dX3lTrufZjQuMBxyg0dAyKzBdW5tyarzY7gAX+qB4ROkhMMuEiTlHWj9eUw\ndOVX\r\n=duGK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"00af25a4642e6f825e25f36194fc33b96cd9c2d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.76","@balena/jellyfish-worker":"^4.3.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.186_1620910728642_0.22828900066876967","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.187-renovate-non-major-6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc":{"name":"@balena/jellyfish-test-harness","version":"2.0.187-renovate-non-major-6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.187-renovate-non-major-6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"105ed405bc4b6b21f1c05cfe10caf3f03a82e52e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.187-renovate-non-major-6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc.tgz","fileCount":24,"integrity":"sha512-ZzwHHI75AF1GlZqicAqB48pFhGowdJvAPZe7MctquNNB3OQNs9JJhIWNeicT2Dc96cqThSJi5OcrXnBab9QGVQ==","signatures":[{"sig":"MEYCIQCHJZLCP1rK7pxnEaR6FiPzsJZwHGnZKgbXGVshUwlXLAIhALD5ztuWKp5RwecPwsjqbZ5T5kmGfdp89wTeq1BbMr0+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98953,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnSPMCRA9TVsSAnZWagAAWyMP/0qnpglKrQDNnPRpirQE\n2gG56fJWFhARFN5Rvkh6RQWryho5ZBKRJ9pBFOvZiVB6vih0H5YiI38QidRX\nKkPdRBnUdmib3KuAySlKvSYPSG5gEc08zeLYaBcUjtSWlRj2JLit4ic+oUko\nwi/SBEPi+a13JAtglsfODtpUHPjUO3wV/aWbme14P/xg7TekaiFiVs7NEqAm\n+2DGPYQT9LEMaCOUkHOuLTWcWaHTX6baVCilOSLXJydbVgKBxxGGz1QbLJ40\n1H+gcDOpfGaaTdgc3xOT/rZOlNLLT76lA4pqblG1WcrE+7Lof41ekmsRPtjI\nCe6bOD71OKgjUA8Yv5R+7fmp5rIvROQlKK7WUVXiCYk/P5Q/yO2KcMl36ogm\nQS2ZKq/V9vCxjSCCN5owFxZ8pcQ96CriaEbPgglScUU11xNElCAJVK3La/Th\nyURCOp4KCDvYZi0752GtzUBX+Cm5nkPDWNjoKGcTb2JdNfVRDTDwQRmF7eWO\nAyPa5imgZl1ljQ7FyShTu1tKpucj8m0SPjJK1JZteGmBpxP7NL4taIKwonW3\nKdge7haVvYxiDOWO0UODXZKiBavN3KbSH2hO4t0ClXlwmnrxgYs4ic/LDblh\nfn0INGHnrw0Va7JtX/OczsC6W8zzvjtPL4GmoLP50VnS+sRBwQVCPrkOQKgX\nFQA2\r\n=7UUc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.103","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.187-renovate-non-major-6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc_1620911052539_0.8508123102670595","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.187-renovate-non-major-387a19996486b89f11faa6885a5937e847e80fd3":{"name":"@balena/jellyfish-test-harness","version":"2.0.187-renovate-non-major-387a19996486b89f11faa6885a5937e847e80fd3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.187-renovate-non-major-387a19996486b89f11faa6885a5937e847e80fd3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7c6922285dc41cc535dd3bb215a6ef6554896ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.187-renovate-non-major-387a19996486b89f11faa6885a5937e847e80fd3.tgz","fileCount":24,"integrity":"sha512-CEioDweBOXXM0fHoV2a7UiT5NL6lhR8OL6kP0SgLYcfg+iiw/MnTPCkZSOXwK3VzHmGnBBmbTZ0QUH+GjEqcbQ==","signatures":[{"sig":"MEQCIBmIMWD44lU3PTRM+sZEedvEBZEgW2d9Tbczjfj3ozLhAiAtnaqjzYRDWjBgMB3LbQiakfQSzeJu68p5INK0or9xnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98917,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnSWXCRA9TVsSAnZWagAAsMgP/1uK6bRVrjIKp5IWLRqV\nUe0O2+A0RCLrYQvEd9MPT7q+QrLQB8PM+ySdeh0E8DOFitCa6SKUvHiHFtE7\nzpm3kKT+VOb1a7Y5rXIVd9e/HSWkMYG/7tBP88ClJxdz/wiQbVP2XmzY0m0m\ncPH/37ZH0G/zpmdG4M/Qe/r/8otGGhvgTMzrqU4IECFpOHEP8+VnuQl/V+ey\nB7YBLnJMvMG+TSV+yU6uCUnF6yA1cJSmv1NyBk9u6zqRaeuQQX/nZ5kOLVjw\nS+nHGCKeMRUk7hTneqMnh/4KJbvJIkFFCrp4yf9O9oo2gDL0y/75QQbNALSI\nm7aePWkaee4lVnwaYxWyJ3SZPjtwH3MuLSU4hg2VxKoFRGTI1VJnq7OAAQyx\nreamrZhprtuWFemoQ5Ah5jVUBzDXbs9fSa08pKnToD3UjpvagmKR4kGTLeWj\nWOyeaPu/a30hv8KEeSXhcAMeOwtPd7CN+Dj7YiF9NsERE6yrcB0Gm5ezhrHu\nzSu0NdOftKs9qFaQ2N/uTMgl5UvGh00CGX2Q+Zlnx7syS5DLKvOtsQO64zgw\n7VVgHUv7rEa3+IhwhcVNkERT/NRAEzLvzODn2IrDle3Cqvk6cdVUdtlxTHPZ\nFQ8lEGYcDnTEbGOIFRB0rfd9cFXIqEntKBhh9Np46ZH3TNvyUxOnhve5hMrN\nBCm6\r\n=vWx2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"387a19996486b89f11faa6885a5937e847e80fd3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.104","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.187-renovate-non-major-387a19996486b89f11faa6885a5937e847e80fd3_1620911511058_0.3362405027757416","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.187":{"name":"@balena/jellyfish-test-harness","version":"2.0.187","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.187","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"94f2635af4a5dcf87e6ee2d3bfe9320bbeb2e749","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.187.tgz","fileCount":24,"integrity":"sha512-uFRkoQfgAkGgS+6A3CmV9aSZb5jo5xfo9eC5z2M1NLZngspF4u1g/z/mjUDqZCR++HnqIb49pYOMlMeC8IQo/g==","signatures":[{"sig":"MEUCIGv6W7p1qtKNJkQV3qI5B6VQBoEfZoa6NFmc4q8MwfoMAiEA31sFme8BmxshAF9pSTv0HcmKXBvhXUZZt6vZqB0wprU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98857,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnSZbCRA9TVsSAnZWagAAgsYQAJKizjPbXAx7PYMyHwGc\n1QmoNdTN8ZMH94dGokGzbU4hJ+ONwf5pnRqIcMGuPrpLebNKuXiVW3dDN4Tr\n321tOVLseYQuIejhpXjcyvIE9tqgrGqhtn2Bk1pjSL856Y8EFCUXOW6o6sd3\nKmKgomtGqMOqU3gI1mQOcdRJLgMxAwlXqBZdsHzxXtT5zdM5EUAbBeJI8vX0\nItFntO3dBmoEQOdPKYAnruN3OpVHe3MzILz/qlBe5di0B5ld/BwxrxcOU1UP\nkydW8OdBKy/Lt1dfXsR26FudCeTcRBISy0DcmJI0ErSX71QNm53op2D6aWcO\nZegkAFWq3uzah4J+Oph5WeqLmqSjOn/ptoB1DkogTNHFUFstEM7wOJoN6eLf\nO+w7dCAtrXyPDI28AzDMBRvBmKgsIYiclFjQV6x6JgzOQxwb6RErSgkMoPyB\nZQqUgjdhtwOUGkRyDINOLMOIx8z3RNkq+5UbauNLCvfmwnQ7b6DHgofhd9a0\nhA078HYo7OsSZPO//vKLRjMkDSJU9pxuK1+DuD0TrULAj8Fh5Ai2x0MiQDAi\nXsMuX1NSgthcrpd7OSuDvn7KcPOIM0HvPhdZaCCmTdb/V/7wq5HDRHDd+908\n1dpCyxYiAYF2oe3K4kFhnMrMSHEJXyT8yjWcM3HWJbO5LN9MK8cUn8JPGs0f\nZdED\r\n=xsCZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"91da3f0241509365c04e42b680c3e34d13f4d166","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.104","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.187_1620911707363_0.6231987179288323","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.188-renovate-non-major-97f9ac99f332fdfcef2315e89b9ebd16c91d331e":{"name":"@balena/jellyfish-test-harness","version":"2.0.188-renovate-non-major-97f9ac99f332fdfcef2315e89b9ebd16c91d331e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.188-renovate-non-major-97f9ac99f332fdfcef2315e89b9ebd16c91d331e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ba7692b6d64ee3f4aa90b9d07179d6a2b0bfa0b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.188-renovate-non-major-97f9ac99f332fdfcef2315e89b9ebd16c91d331e.tgz","fileCount":24,"integrity":"sha512-chz8aCIRdwWsUdBony8wBHfuP1SHQ3yAuHa5B54zaEiRcnOp4d/u1ysL32QEJn6b21jqQBPC34U7mDvwIc65og==","signatures":[{"sig":"MEUCIDbdGdmR4EmapfqWhtgBJCgXATEXalZM0bx2hFctSZD9AiEAn26CiJUoBImC7Ksw5cM8vHb6SLS/SRrBUdM7q766ZcI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98987,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnUDlCRA9TVsSAnZWagAA+NEP/2flQrGgXnSOVe8s4iiB\nzchPfInyM+FH4PYyehOQpP+h2c//WM6HjmARXY4sy/WZcoYibc1cBSJEFqet\nNCAQ0zac+2MIaGjZ1KzexRAhGfxmbsH+vIF8zAaS8M2TwMx79Tis/j+2IuQe\nABqbIwmwoPYd2NSgztEp2GRqh0tEoNyVjiyJvhiqNae9VsF4p3b0s+4TkkuN\nLN72X6d9Q9/EmC/VmjG8b111MAjxhyOJyAS3GnpjervL6izjVnL66NCndSMu\niMwYH04i8Ql66sjTxgZfoNBMJg53OPC9yg+uFTdO5n7ysIiWCzY9+yO3HFoi\n7kHciq6rRY/BotJWHipGHlBbVNqEq8f++vGPhNK2EddBlseexybcwrmWJ43X\nLP0eLuWsOV8OU/OwIynxrY5K4LlcYTkxrGCdvg6e3t0KrO+Os6jHmjWuxzhb\nu/eiZIGSiWLX34yZeZ/h2AWkWLdEFlcNfWi4PhxCK+40MDu6Ct39tfsBmStx\nc0nApTWH62pq3VQcZAyKqyM1jnyZDN2zUWKS9QyeCf51fKB2qCW18c3ZWbLF\ng06sNOLX4zwXtjhcNzVCfwuQxHz6Ujzr3qMohbgEeLaMZvtKzb1H8PnZTthn\nIDRzN4UY3HdTCvVhqLV0IUMHnpyv8athjVHrMeydVyJkklgd3tJD3QXy6QCV\n/SPr\r\n=J5pF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"97f9ac99f332fdfcef2315e89b9ebd16c91d331e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.105","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.5","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.188-renovate-non-major-97f9ac99f332fdfcef2315e89b9ebd16c91d331e_1620918501321_0.5253542479505686","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.188":{"name":"@balena/jellyfish-test-harness","version":"2.0.188","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.188","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d900ac658933f19ccd6ca9b6cc5a408b8152f3d1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.188.tgz","fileCount":24,"integrity":"sha512-NpixGJ5bLp/PYFZRqworntSH0hlkHaTZLybK0211s6U59zoJuYo4ACeE4Qoto8zfs0LzoBCdpW27Wbog+rjxCQ==","signatures":[{"sig":"MEYCIQCgWOeeZnZlKPwhlxCfDTDgVbehp/YBcEZv+0FOxWDFPQIhAInAjnhRZlRIvW57ExUBR0nQMjmbWvtWtMl/foVknUuL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnUIXCRA9TVsSAnZWagAAlT8P/1ZZDZK1aYm1QGcJfKt0\nHRuwkoORwdqpm4tGk1liqJaNHJ1rc+rj3B9WZ6umIxLe2466oG7cOk8URLtj\nJn3avvldZ4a39XxtddGE2ZFTLjyKtCa8wimvREA3cpg2TvqkOc7WGrpwW2gW\nKpdJr0ofOvfBGhFs9ry+4vU5HJB0j9P0MaSyCxgBAiMOBXRcSi1Yf7Qf9iPN\nMRid/P9K9kZ1o6Vb583m509nOYPtsH5Alecq36WxmpWPIKAkgrDNJKl3e/pO\nUWYOoUCo6XM8OvXXAF5FfiNFGZ/1oIGUoqyPBWo7Laki/QOrZgkbGnZCA7hL\napUi0oK2ZHw7jqGmNizlVOuwS7cLTIKHhEUOP32lwOH72ny2Y9XHZbE09Du8\nRNT3BnfmN5Q8HxpNZ5qhD787UsEuIZpezcbDPOTG4Hc3dFUFU1w/siHWasjb\nsD8T2dx32Q2vo+xJqudYGoDuOd/QMoZo1ATZWvTzptwjL+7akCkJJJDN3U08\noTSLoUXjoUVGmTbXm7+nD+4aMJsuQMvYwnrVpRBqObgk71eLw4qnut0Cg2ux\nP+anLXq9iaW1KGqRDm7gR6b3vh9MmYwtX+Y6QquGaOCIGmU4bpyqaAGXeLjy\nwe7fHVvYoOTACnhgUx2/1cMq9SQExUccgu1rcQJjCf4cpjeGCLe0WdvhVhp+\n6Ecy\r\n=u0gl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4299695aade4cc27d78e8d11321af3b5b363cbf7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.105","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.5","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.87"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.188_1620918806787_0.6589868722818277","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.189-renovate-non-major-f6bf7a2af246babb5e5365f7a957a18a5dc6c180":{"name":"@balena/jellyfish-test-harness","version":"2.0.189-renovate-non-major-f6bf7a2af246babb5e5365f7a957a18a5dc6c180","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.189-renovate-non-major-f6bf7a2af246babb5e5365f7a957a18a5dc6c180","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8d6786ea5266e3fdbda692acfad0cf8950a70447","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.189-renovate-non-major-f6bf7a2af246babb5e5365f7a957a18a5dc6c180.tgz","fileCount":24,"integrity":"sha512-Lem8u6hP6EFqO+cMsEPKVaFkHXX+/O+wyYyfBMwbAQcSmHYopQW/b0SywoVSIzczneWhecuhU227eRZfWZWhig==","signatures":[{"sig":"MEUCIQC/RbDSrvCNngLaL7FrIGbvvVr+aAVYlD9Wbng3wyAz/gIgI+Z/nKB9k3c/VATlJLcAGlKxcyzuH6zUtbp96lA+Pl4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99057,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnX6cCRA9TVsSAnZWagAA8bMP/jN/Hco/JrO5zc6IrqVH\n4YG7Bj8kPNgbzB2H2Py7ficZokOqxBxqlmjTh8OaIX3Hj8tOT4GJ1eZ5+4KL\ncuM7GU3NiEW44WU1el/GBqp76XEXUZi0iWVKQJOEScLwlT4cEXLrEkTCf/mh\nffrfOs3qoxj7NgCD06OVjGDvfHNgx04xCvKZY7uqafLZEVHbKtMtZ8WTUf6M\n1zmUq0uWsga4JHImX+nsGnrv13EIIdvX7d2c/pLwCqFfOEFPCvtcmU0wXuOV\nBMZo12n9VHHf64uAPohKg++WtVSuv85qkZUxbyh9GxWIm5d7Bsq2dWNBWNbv\n8c7z2c3iDQuQPqEn91ZaJKLR7vzokzehmHuS3dovp27t457fARM9Lj2RJl9t\nKasV91GkFZlbL5Sj5z8dHqdyktqpd7dLC1TnC7DBc3NG+ZRkt3/Pt6X97D13\nEk51nz5m6psJ8SeuhkeQgq0cjVTltVE4gkBmaj1UvVZws+yD/t9zsEPHBton\nSen8Ezl8W1Yx3axBXxs3Wz2O77oWDKjXyaO04ihFj7FRPonKQI9aQAaNn2Eq\n2JMjkfcR2ec8tOWTlk5qorXE2b4trTevnuBz2yCGVgz7QeVt30tZPRt4Zk2B\nBC/FEgD1sE2WgsUsQ0jpKVl06ENb1ZQDcvWEpJW3Q3rLR9NYrt6Ok9FAVLbZ\n7qbr\r\n=v2cr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f6bf7a2af246babb5e5365f7a957a18a5dc6c180","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.105","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.189-renovate-non-major-f6bf7a2af246babb5e5365f7a957a18a5dc6c180_1620934299999_0.03500307708306183","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.189":{"name":"@balena/jellyfish-test-harness","version":"2.0.189","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.189","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b1d7ca6b682769a23cf248441ece9bab9dfd547","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.189.tgz","fileCount":24,"integrity":"sha512-p513Fcw0f8EaO6Ox1wIWMjAGfL0qZFqW4htkOP3j77lD5U+FPa+LRwdRDGImikSl7BcpEKeYrD5pVRPK6e8oLA==","signatures":[{"sig":"MEQCIF5KlcU2xHS7bxumCFJvF00sKFtpGoVUjqyq0QuCzh1lAiA2xIBpdqze/uGFUqScXIEQSbOO9zlRoW5s2UtCc7ZkUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":98997,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnX96CRA9TVsSAnZWagAA4wwQAJ2pifEGXa3UFOlxRxox\nklae2FubHsAYHK2MaVfcrfj3JGANgkNgWa/mIefjIaYT1ftVcAeOWOnxNAO8\nIvHH6+jb4HxtQbqFD3+Ef+kCxA5KAJO1fxSUZWO0VSPODjs67woWvK0+TIxn\nvAkNaHPp4pjGmXXdzXLh77941N+OAgD6I4hnK+t+nBm6Kt6cntHxlfFw70TD\n7IRVOMjYXK316x1TmEitzLGVsuxYS3Is69wzL99FWF1Sz1XYRsNkoTuxCghT\n3InQihqrxnOasoqYdR1CbjOes485d5BSr4LldCUH6HciOflaQgOX17az2dIg\nA7V5p86EptgVg0IRX/o3fbn5wqct52Vvj03TJwzT8wW5PD7Q/kJcEyc1+kYr\n4xGObdcUCDR9M8NzL/C2X0RXAm1GtP3jgPMccaI4LN43VBGFTrL1czx39vwH\nPv44RX1oPBTDaxBF3G7H2W0kJAEzipHHLn/34RTHJetst28WHYbgmFnaIae0\nzFDv7SOVYrL+7Yum9ymbs0p74FRqnMswvrssPffRj6gsZ1DrgdZf52NtzhGA\nTnqGjVwbQhRS+0RiHB250ZTRuEbZPuq4XFl1LBwPlkWs/RJ6cd7oWz3MxLya\noMWj0W2MhP7/UMGDolPmK/TQPrFJtznznyO75ZuTARbSZspFL7Q3P96lVBXb\npKaf\r\n=RFId\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8488debdf7518bf667358e454138de4cd3e80206","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.105","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.189_1620934522147_0.9200067327260977","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.190-renovate-non-major-b6daee2133a7b26bf917f0f26fd91964c53ca2c5":{"name":"@balena/jellyfish-test-harness","version":"2.0.190-renovate-non-major-b6daee2133a7b26bf917f0f26fd91964c53ca2c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.190-renovate-non-major-b6daee2133a7b26bf917f0f26fd91964c53ca2c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1e382fbd9cf982fe3e61f50d944f2fb164c05cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.190-renovate-non-major-b6daee2133a7b26bf917f0f26fd91964c53ca2c5.tgz","fileCount":24,"integrity":"sha512-aMQZrQbKoULhYp9eZmlRqbtkFfCicNMOwcEbaqfccpmvbzUH7xyx1XB5Ic63EBcxFn81oXL2FdDCt+p+G8067Q==","signatures":[{"sig":"MEQCIBvQXHrJocK41En2orlOhj9uxEykeUzQCVFCQm9szelIAiBAZHntwW/RFDMtGz68M1TNAUIRWeRW2ixSsAzIoeVP7w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnbhBCRA9TVsSAnZWagAAK94P/iTWDUd/i3XYZ5SuxwSh\nhZf/cJH5/obESCq6/UtyAq2/w+TfaZyP4FxG9cSqBMuROBnzdgzKzk37X4gf\nKaX5Lg7bHfMEn68mS8ntNg/Iu8hmK1XyxMeIJVlR8H6jClRchvqTGugGH3Bq\n3i4FAV7Q315SmluUzK11Td16IynunnlukP1flrGRAL/8AzMl5MtRlRsWPrX6\nrdyblJ78TRmxyU9A1iW8z32upXP+F5hokMQYI3I32MOXnhzDRMmWUQ/hLcrE\nr3mKj91JgmYhaCDvYldCHcVDQx6xLKJQYURWCWUkxtMZOxtVqEVQbzq2uphF\n/BKu4eE3WjNgIewyDHiAyKLT+aZK4SzuHJ+7p79RadcA6r/cwdaLEtTkoGQE\nSbDxTVhtF4vnY2wkVKKodPP9a93k6V94w0S8yDs4rjlkMpVjGZ6cwALqaSpZ\nke0mtmN4yKuiBDXUXobg0faYW4M9Pq1XfghTfVs5l073ihcnvka9UFTWRno3\nKZW2rS0qsXTwKAfAoAxLGmPwrkUWMK9lFVSDbA2us/2CY1VP+09O45cR5v7K\nNgp51TDS3MWZA3Isf6Op3bNkhXnsRNFE0ny6NAzDP5YsysB5Y7stuttRSH1s\n2IbobRxk87W+s//uIs17fkk7EjDKLVbovqFCqkJNsAtXB1d6zlKtUDP2oyww\nuCYE\r\n=RRAU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b6daee2133a7b26bf917f0f26fd91964c53ca2c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.106","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.190-renovate-non-major-b6daee2133a7b26bf917f0f26fd91964c53ca2c5_1620949056960_0.1755188771486964","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.190":{"name":"@balena/jellyfish-test-harness","version":"2.0.190","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.190","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1191f9500ec34c7af6e746b8d97655381770d2e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.190.tgz","fileCount":24,"integrity":"sha512-G0pnCfnX3JIQUViqsWo97mqP7cqoxwHfhRD4cfOuFENc8ENLGY/gpDBU6vhLoIyaJq08JLIM3JlRUWnI+FpFqw==","signatures":[{"sig":"MEUCIQC5ij1+h4max4mokobG+EWXcFv89nhcu156fjTFPZPqEAIgJcbC9tzjhgxhbaq5+UTcoTcNgzQZIpC7hRuiS1XHBDA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnbkLCRA9TVsSAnZWagAA5+EP/2fl1XceRCJeQ4AJUWXV\nMvrOhoIWG9ShF2MgG1bEgFSatp8NUpm47/PqTncKa5q3cxYRHgsqoTNPJhvB\n+pz93QCa/FTAnOUVyEBkw2UaDs8Z5cPPjQjrYD3KeZoDnDU8uf4v9wpSGijf\nOBLTnWdo1+19rSqyBey/xkOeY1jwPAsa/8+8wzIUZnkULVjLrQ3tGVCY8ouH\nk3b5dKdw6FIZ5a1hu7//5opfZOgVNv05QDEr1vrKTuuTOwRW6eoZbKUJjrpx\nBiea3DD9+lxspAOA+sND55FLEUuMdQ1vXw3oa/di18kayOKAKZF3Nir7xEh/\nrqfVkNx5Bj2IuwzHK04qw3Y14thd+Ypf+Owoirp/trgdwM17sEXAolcq8ZMV\nPWwD3/hI5hf0JS9xAN/bJEEhAuzVJzrLV5bdAJT0DiNDmOw69mRuwNNTHokj\nzqGNxWQtX8VgE/xxUznH86T+rK7ljAcu7QPBQbAsjVwn6GhfTM9htYCCOcvt\n8VFmXJcpXtvNXeC06PkIIpA+0KPZlurLEoF6wOc3462884hFwvBCginEGQRM\nsDx/DvUO4hIfqS0DBsTH96RAYnoh5RInLFjHPrqAjMdJzjzwBEScSenXUwul\nujaCFor13lPaeQZttARk4PRtaUZK6jqUR+NdlSXp2J4d8hB2IXq/8ItpST0t\nssm+\r\n=MBVL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"acbe618525c48be8e1e79ed25406bc4a4b102bba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.106","@balena/jellyfish-sync":"^6.0.160","@balena/jellyfish-queue":"^1.0.77","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.190_1620949258864_0.4890198464411535","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.191-renovate-non-major-4ec5bf7778d4ad99a1a7108065b13b77e4588ead":{"name":"@balena/jellyfish-test-harness","version":"2.0.191-renovate-non-major-4ec5bf7778d4ad99a1a7108065b13b77e4588ead","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.191-renovate-non-major-4ec5bf7778d4ad99a1a7108065b13b77e4588ead","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a8a7a90b5d31e02694e503c8b4f9432b72a77445","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.191-renovate-non-major-4ec5bf7778d4ad99a1a7108065b13b77e4588ead.tgz","fileCount":24,"integrity":"sha512-sM3Gc2dbGGznwyegxeWgIgE2YfO/4XGISzL7rTUL9OZgc+UJdqEjz4N19fsh7VOi6j5da6ub8N2AlMu48MNL4A==","signatures":[{"sig":"MEUCIQC3QgFqreI1HwZH4vAf1w/w1maamiCG2CLwK1VKxr+eJAIgcUdBld53zIZIdGdCExLLD8cpOb2dj3LWhmw7eF0pD3M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99234,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgncoICRA9TVsSAnZWagAAZtoP/0PMR0Aj8fNcWoEpFEu8\nJD05Tyuz0arV6nynO1bv/36KDKJWYKthfWWxDJD62WbNQbyM5RhOpykNr6u0\nMJPoGmf7UVUpFtcY5NMHeCytOdFClTKwr4WgbpWN3Zs1l8bh2qssPIlZDxOt\npi+pAMg3kL/q3uPQHQz/JWGqPiuC2GnBLuxvjkqQMamv+9yO8DpZpvC4YVYI\n2D5YWxuZeQnlhc2iUWEl1h4dZHdCxRxHnhBoZHyQ1e0m09xz5c6fi31CxbMQ\nWozsvwzKqkc1IRj9RwzKNPtqlwWKqZ6LYJJK3nRgViyx9JbB/ohyqqaRj4cP\nXSce+KzrbgQ5mcbjHgwRy1PYwbpJdXyWu2N4jdEWrACW8AtSr8z9mKLPE7EF\nY+XpfxP67/xEyxrNJtgTaJV76qzKUHvtl1Z89PBJKGqBLiIVl9yj915df6TI\n2FlieUdDSY7Ue1g2HTzZCuqcvyK3GnAs1GidBHoQw7OHqxdad38oBkbKLfi2\nT+O/2zhgFxUcpZ08yBCn/izDVRSVvFuybdGHD/iOzGF/woeVN7w2ZlHVv2eh\nhvlH5B4CVUgLuIRcOVAdGD/OlnP9O0z+icaS0Gn/aQdcmd6W1WoRhYgetCKm\nOL870foO+dvnwuoEn4XkHf25eUw2aotscEc5h+XvjVYDy273cHJZIvPG24eE\noeSH\r\n=5vpQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4ec5bf7778d4ad99a1a7108065b13b77e4588ead","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.107","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.191-renovate-non-major-4ec5bf7778d4ad99a1a7108065b13b77e4588ead_1620953607874_0.4630193586692082","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.191":{"name":"@balena/jellyfish-test-harness","version":"2.0.191","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.191","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"67906ac60411b63b9fd788adabb76265516c98a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.191.tgz","fileCount":24,"integrity":"sha512-Opzk+NBSQJmB2xbSJnBHsKZkYRBTtTObJKkeUJZNQ2vPoFeCrxZNJwZtFRC+zY2OySgLZEUwvX7SdIdroh/H0w==","signatures":[{"sig":"MEYCIQCG/+2bf5WlnPL0Rjz6ZocR3xV9tewFc0yPML6IX/UZ1AIhANGSL0aoeJyR90HaJFQpCUK6AywNy7v4ojsEvxotZ7Ge","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgncrgCRA9TVsSAnZWagAA8mEQAIn0k/ZnaTw+uexrufGw\nYmv1dLKEHs852BFgayAmVLyjRK7kdrWDI9BZdLKRFmiLj7QyFPEqiHZClmG/\nqT/CCd32xTUPy3EVLxQEk0lzoDDMey8HsTKGnxr1coJX2IJr0Mg5NEp5zV5/\nvJasZMsvglR+xcz+W3JowB2IcLlGpTAM3JD+2RFmv1BsUfxFKhNEXm5kCg2z\nuFpKTfNOFZCUMERF3a5lbFfQhlV1F3/lyqS4iKgcreq5jIEhEOlLBuRxoyip\n9xoVsttiwwnulRv6p5Gp4aRXVwHMCpXeyDoXlsg4MAoXofyP+NrX/aR/zYwL\nxnUfkdvQq0vOfDeKvJbi+YY892Zk5zKLgn27+TalzN1DQfWEyxdgQoE/Zs0Q\n6GxF3k9Qwnin/ItIKj+ct2RZg/XpMebUzhRRbKv66hpKewIZJoEoYYAs7SCO\nhXfM9w1w6in7e1CNk1Nfwk8xp2YBYCALCjOIS971916al+ahqEkPl+WR6nIM\nqkO+6F/D7Kt4q2nXZUG4dDV8LxBxBiBtJ610A32q0No0NeF+6Z48yYUGouRc\nsCuvRsBwvjxs8lvBG1sahtPgCQ0y7xZLfi2SpS29L0AuDSKPWbggcQW1ety9\nz55gIqSfNh7pep//yVeUbgIxjlG3MoDSXXKLb9JjRu3UI+4VBYvWw2lo0hNl\nlFiI\r\n=1qsG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"061e92f5ba672feb02598fb872d9c41264a8ce35","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.107","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.191_1620953824079_0.40612216679567803","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.192-renovate-non-major-8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe":{"name":"@balena/jellyfish-test-harness","version":"2.0.192-renovate-non-major-8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.192-renovate-non-major-8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fd1cbac901a575134591437335334a48bc1ef90f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.192-renovate-non-major-8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe.tgz","fileCount":24,"integrity":"sha512-ny5M87KnDTy/gS+sq8/TJAdGXvwCDPJCNnxZ0dgTXASoYf2KNyKIXU5M71V+Rle08lpCjJrVqsOkR3bwhehCxg==","signatures":[{"sig":"MEUCIQCGxKS1hKogTpW4ig/z9ETMn9wzwVULW6UjKvvYu/UFWQIgUpn5Cdt6lGc0WmbSpebvNfAJVNDQjZlIiqgMppUXNcg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnfsiCRA9TVsSAnZWagAAWHMP/jIzokiFkr1+vIvQM6GS\nXNAKznEfYfx0zbn9obdmd1m4au3HO1S3Ky1usg6SGTjUZJH8wy0iHmjVhgEd\ngYA0AR46IpK51lUVwUFGazM91R1D50AoNtQc1p7XXjFVC8PlQCOVOlHTJjqb\nBjvKnRnFM+GYiT3ARG68Ug5f/TLF05P+1d1gL2sGoDZMTpobR63XFEh+f9TX\nCLKWsePcnJDviL5g2XCRm0UDvtSaX3Ud+87rArf7FlmvrnyS/YdLmcW6cibu\nyevUJ3l6T2E6/CaA1tvIwYEJd/ybQHRUR82bAAVgvmmWXvJsA5Iwuh2LaRtK\nu1TQEw/p9rSyEadtMS+DHlhJUANwGv5rGex+NOSxw2q+4T+SC12SW4HwyLOI\ncwI5QGYmc4zO+cVjSBGDVTpNy8c7fk6sSKSGygWZTF5KsowzhLHoSC2ID8uk\nT3IEbQUZaySTWG0h5bX9TkDEa6jW+3phyIjpZOyv5n+RJ0UwGYatutWOvWFL\n2H6odyn2dkYPsBHlZqLeAqyms4du3R/qthHKOw+Z4V2S8wPz4mdcFO4iHJMK\nYP3tMIMxcWMNiTmRXyhymXwex2QFdHkPBU9+nL0UvZQjOXWpMLB8RCaHdXw7\nn5cQsnXg5jAWv5ZHnwyLwwVP5AN9CSn8E+BniD0sJeu5dy6UMc6Jt1XnzY3W\nUyn9\r\n=AtJ3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.108","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.192-renovate-non-major-8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe_1620966177906_0.5403243403760447","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.192":{"name":"@balena/jellyfish-test-harness","version":"2.0.192","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.192","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a0208ab92612e3663c2b14c75b1b2a228e83e686","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.192.tgz","fileCount":24,"integrity":"sha512-CFN6g7p2XwGxwk3PZqiXWv56i2Y1mG0PaTT16myn5+xOCSGK1jzZFdjG02T4OOYDhvDIScgBzIl35Lt6L2IUfQ==","signatures":[{"sig":"MEQCIHd7qYaTxRm+iiqYpwmcaxh/de0cwk5FOjwMc6kKQfjuAiBDFQvG/+4SbJ8PloeSUMAjMZLWrLZFBgX/ZqAXP+4z2Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnfw2CRA9TVsSAnZWagAA5k4QAI6Jz+yezi99keVtpLzg\n6+rQexKeu/QSrr5lA4Sum65Uy1gHxusynX1g8APWj5iXHWnC0DGsQGTv4o+T\ntObxeWY7H+2Yu1VaCStqrAHmF2Ra7pgdoNdQlbiFsiqtpytSNCWglx58vGdE\nMM2LkfzIb/IuFPcofzx10KT9LD8boomIndGIbFXuST8g9biJpRR15G6lKagO\ndjRGAyE5Ad0QimGlNth7+p6N9MsPvOi0PQuZzhcKQN7rTB4VFMpSXl/7aSJC\nUPY/9z1yHxIhJMHso0hnln7OGwgrQwjLl1rPZElrt9ewtcfcUAVplOCzb3Vt\n8qayVcrQa2OOPjAUIdjoGuudBoOiq3/fjPUgeZbNOv0DErXQinwTzANHGNFw\nGt/eRLaDgO06Xi4uRq9QpH2uyPp57lsP9OndzjdCe+yuvLLQsHTAkjQZu2GY\n76wnAmpdM/oP8E5VUH+r16AYXKEPheS8u4azYPXyGUvhiCxlvMBE6Z9E+tAo\n8LX4wkVyOgQwKpdufOajzp+9tsedm8T+5/KiDuC/1gilgL5jyWlTBFWEtDgp\nvNfJuGZxfoB/kqFtxnkQ7s92J9BIBs+smtQo247urlrTbojj3x/Tyn1f5ziC\nw4RJKXTrrKZkstI39AzG8UL6R5vG/ETQeec38djjh6zir15ThVua1rLTgZF5\nzIEc\r\n=FWPt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"58fb3116eafbda4dca5bbc58f1dea5939507d0f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.108","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.192_1620966453814_0.7078538784595652","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.193-renovate-non-major-055b1d26503076f196ed10111eeea41a7b74e93f":{"name":"@balena/jellyfish-test-harness","version":"2.0.193-renovate-non-major-055b1d26503076f196ed10111eeea41a7b74e93f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.193-renovate-non-major-055b1d26503076f196ed10111eeea41a7b74e93f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1342db5823eb53cea24c18ce662f9380829fad42","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.193-renovate-non-major-055b1d26503076f196ed10111eeea41a7b74e93f.tgz","fileCount":24,"integrity":"sha512-o5fLQ5T2LEZz7LQmoJ/6fGRo0jACz2I/EEwMhiaNY9+QwP6YRpvaR9Jxiz9P74IYJE4IlwzsWRHzsntXLvZiXQ==","signatures":[{"sig":"MEQCIDFAlAq9Wvq8dahIDyr8JnO0b34tlW4eX5PdSDbYjQXRAiB1QIHULYPZWjsVs08qqjH2h0chOwi4W1e1utB/kvxZwg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99447,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgniKYCRA9TVsSAnZWagAAbUgQAJ04jdAzvgggtPc9HtxZ\n6bv9esydi3YVTBeWNu0hLPBJ2uSgPVxORl9PfOZMQdp5oFVKT0xph+1cA+qY\nZQ08pq9BI8zRbh5shanLnwodkwZ1chN5WM6oq9kABMPrnjc5YcU668vsBsZE\nsqfHFR1lBtHH4JctwGIJiI/xD14rnTpb1IqLzs+yw43glAtqNHR9hPzg7i00\nrZpNMkFaPV55jcX9JkCYTUwabshYBTeOg+5juqkNYcKTvFK7VMQX6u1lL2ug\nIV9A6ImtULuPlLHbAPdCS29+xqcDZPzNBBCep1bOnayKUJR4UHKtb6/EBDCn\njEfb9jHqm8RxafIZ/3sGXN9NciTmTGdOO1F1Vh5qp2dzM8mdKW3PGLH1aS4K\n18ynk9ik74rHHamm4MCjOSMQ80XitjU8kjpWjrcVXfvbqSb/2zpGuw6HkzNW\n+GsTmMmzUxMk2mugIQ+xqz07FhhcT7YhIExEy844ZGHEvzxQgeUrg9VGuH+u\n2b2de+do+lCNo8edAyxucVEZv3uELvy8TN8RCz9WAHMCkxV/DJo1MxsneImh\njEofhtp/8pmWkdopfzqibEdZazRvphoW7kY1z7qpxQ3w0zFvMD2dEZ+UOuSp\nTTrQYwFQLdAKqi+AzqhD/y8uLRXyVRa6K1vAN3m4aAfZy+EI+StEpzUpzhZJ\nM4DY\r\n=ame6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"055b1d26503076f196ed10111eeea41a7b74e93f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.108","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.7","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.193-renovate-non-major-055b1d26503076f196ed10111eeea41a7b74e93f_1620976280091_0.5158648764062799","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.193":{"name":"@balena/jellyfish-test-harness","version":"2.0.193","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.193","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"514f798182bc68f9dfd7158c66fed8f413e68c96","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.193.tgz","fileCount":24,"integrity":"sha512-FAxSilHFMNR0uM6rpZ+2sk9s83dW9dcYkQomNkzBB7ujs4dUaVRbLaYVN3u/iqUOa1dFZu3fbQ7ENDz5u9/HdQ==","signatures":[{"sig":"MEUCIDW6qjshjuOuFodyx+R0HoOCSAEVvkcDLIvKegU6I5/mAiEAy50cC9BEenWXxWrkgp4xUZCqzLcQhUIdFaqpbhpcV/g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99387,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgniOECRA9TVsSAnZWagAAUp8P/2Oo3enoGcKdE5OSTF65\n0h6ci/q/Ef5a9OsFoGGS5OpfKvehCwLHf0gm2cK6GktgOFLmp5xGBk+IF52V\nR4N3vVp/bpBzU8BnAkfbypYgAhyE+4iHW4lLF1Dp4HHqBlolf2HDuVf4fmrF\nTwgZo897FLnsVlgta9LKYXGTlM13f5/24DDxjmkk27/R99ETd0tMBV+WQxJZ\nDbaRPAzb8iJrcYOj/pUnVyT2/+fCpcd785SX+0VkLJwFSS+Nd4+aWn/kCxmT\nDNUXjVGYJ+AkBnd2ga3NU59DEF3ak5mLhRI1gdCTzVpU3MOIL5pCeVau20vO\nsY1hgaaaH3+RMsU+0b9BcqjsTw8PGl/gKG/oaQrhECqLngcM2pu+wjO+v4y0\naGyeE9WiX71wVECrOfs35w8bfp+kijAEtcr9e0ky7MbctKci4eJal6FV99bs\nYUO/FhW7PZFe2QjGUnGIpqu+63f7v16jOpO/3OkycegvOsr4UzKwM4EE5Au6\nsnJBYHBEZvyXd+8XfRzzoPH+s3bG5mPfld0MsBODW2jbPt6tQGutWiMRx/1a\nBMaKFK7e20R4sF3fJpU+Db/X6Y+6ppZmW9vuKNjrB9NC7rXhetfdBpeVogvc\nO7JYpnuz6/MSsO2AfNKvtrC9kEOrUpCbSmCIuQPhekU5gC1/lJOuXf8hkJqI\nMmN9\r\n=y801\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9d53c532f63218815cfba45abc971facf223597a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.108","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.7","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.193_1620976515778_0.6829723529846077","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.194-renovate-non-major-b857decb48f371a5ac9a2783cdc3c5444cb6c0a3":{"name":"@balena/jellyfish-test-harness","version":"2.0.194-renovate-non-major-b857decb48f371a5ac9a2783cdc3c5444cb6c0a3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.194-renovate-non-major-b857decb48f371a5ac9a2783cdc3c5444cb6c0a3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6f0caca1a3ff9c0b38b41843f9c127263ce39f9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.194-renovate-non-major-b857decb48f371a5ac9a2783cdc3c5444cb6c0a3.tgz","fileCount":24,"integrity":"sha512-VCXA4LQl95FEUd+8OgULtJOVNSTMhv+aH6FJBNwUwmC+K16qdyRc5TIgQ7m2yOh5dsL4o9LWaOclLTSccqPG1Q==","signatures":[{"sig":"MEUCIBgnp3w5kYzxZcMnbtza67gCLkBJ/FXTsidQf5kO2q6QAiEA2kJ4bN9p8SH4fnjS+3G34q4JigrE/aM2T/PNm5N4u10=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99554,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnjzNCRA9TVsSAnZWagAAxEQP/iqtIpMY2V4FUqyXmezQ\nJbk8YqMKIQxIOIumbtQmDlCOqZsBVJCmGbMBmVQqb2J6q0DqobwEbLQmCQGX\nNv1ewZrfPuWzNQ5kFOQO5X/x3J4H7qPDMbji+HsuCzfQzowdfrfRXx396Uvb\nNcG/e0dv/mnzkDcjS8lGBlwz4c5s7SHfQC9jNzGVruNk85gfB7c61gBSO2G9\n7NO+N+oUYagQYaZzouS6T/EhhSQcADXC8Ms4DeTDD1IKExLHxyl9DiiJQmAx\nTzjmGVzLmka2SKncKf+qycLdEmUgZf6csq2G7wQLDJZK9x6aJO/yavHL+6l9\n9Sx2odsJI0I1PpD112fAy3D6xo0oDlQRzE7uWIk5KNtnERQM4HPNLGWxFYe9\n5L9TjVIkYSeTI+FrvG5HcXEofECrY2eWc+pIcg0IgCLmf182Wou1/RUv3jhA\nvxcfsa3qZlyUuxBeukEsUvqW4OkeUF6NBUm32VLEZrAVPTEjtBf2M5Gw3mEp\ng+S/UOKVHOmZP/stKU6QoDCqSQAivs+YKheHSxjnjo6RZbCav6rZJtThLEId\nM9n4VEVw1AeWCR9WcUIhEkxAQVxp8WcsL5ozb/RxAHpMPuIX4Kec+g7t7LwI\n6cBoB7rH63TkGh9uNGoounx/qbS9gegOnzF78wkYzfeOt6ktNUz2QwuNiu1d\nONWe\r\n=iPXj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b857decb48f371a5ac9a2783cdc3c5444cb6c0a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.109","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.7","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.194-renovate-non-major-b857decb48f371a5ac9a2783cdc3c5444cb6c0a3_1620982989194_0.9534683344494523","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.194":{"name":"@balena/jellyfish-test-harness","version":"2.0.194","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.194","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2372db4b0133c6adc80edb06eb6f5705b74eba37","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.194.tgz","fileCount":24,"integrity":"sha512-3mBTxvLg60FL/980H1RqNgzOK+TwZzLf0e8ckl4jaVrXZJXhUMANZqvepCNYaqmmeGIymzkBsP3v/isMA04+bQ==","signatures":[{"sig":"MEYCIQDyv/WCi0+PmjB7F0ZQI78PVc92iAbASNOTvlyS7LTNaQIhAI4kA0JXsX8cgXwM6HOwmXiQbl0uQQgN+kR3Yzb7j4po","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnj2pCRA9TVsSAnZWagAAKSUQAJ3w2xsa2/fOoI2sitqX\nRdfxDHxXbbNXQbMGEvh3805Z8AHqcPyrrR5+NG69JBI1AzdURTySlckUErYX\nZMUAwuPe3tqvcGXrA+JV/7+UMAAnk7GJJ/cS6Cj/Dd2QOJ4Zts9rWu+cQSo8\nct2UWM4uVORz2ty9v/lNo5VxASeGR9bJlbGuXjVJDKcMXYz2EV+1cnuWVA4x\nYIRknvv9c+5fLjTLfyVKH7q4uA/2LdDX96Imkvz8J/tOIECd65sSrIEnJ2+4\nKvxKgdWwE3gL7oO/rjwWUY95i3KILGXuvmkPJBdDWTpvRFkJFlS28oG/qgwQ\nfiDTPD4vPlfDDpwCjZShsugSEONQUvHyKwrDUUfnOwtoKdWkCJC9QS2IaDMX\n0qB2aPAp2CtXDTkMyslz4bcVHT9wvixrjggx/xbigpN15FLRiEQqa15iL837\np11hJY/VbfIr6PdXrTPiemIACV98tWXHTWBqpbZgtxBkrkT7RUCIv86vJBGZ\nr4/RputXUVzDze5l+Y1t5CflB+MJ2fDXOathbmt6YzRiquPizkjzCquCHGqt\nUZuOLE1UyAA7FDLcY/2Q74S4QRl+IvNxjTi55E7Clus8+tazcOwmyiE06BsA\n0digMAZCmubjuCmBCLz2/RMdvFeZIh5ju7JptqY1tS8U2myJRzy7kmS51qHW\nETuY\r\n=zYm5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1f98998078a62a4493ec951f350a4cb249464081","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.109","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.78","@balena/jellyfish-worker":"^4.3.7","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.194_1620983208584_0.9409013324280697","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.195-renovate-non-major-f047f493e5748b8844bb49ac92c9d6cbedf215f2":{"name":"@balena/jellyfish-test-harness","version":"2.0.195-renovate-non-major-f047f493e5748b8844bb49ac92c9d6cbedf215f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.195-renovate-non-major-f047f493e5748b8844bb49ac92c9d6cbedf215f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"78d70835312ed9805f3cd56276cfd6c56ee33341","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.195-renovate-non-major-f047f493e5748b8844bb49ac92c9d6cbedf215f2.tgz","fileCount":24,"integrity":"sha512-81Y9OHoxSlrBlIDIlOdFQHgqYqVJ3nCcBw0dn0y5/Yav7eslwRGjH72AsZrvD6NcArtcbxLH++KyrNisDPtztg==","signatures":[{"sig":"MEQCIHxHs8UjPF3d1nAyrUZbgP8c657UCfxbjsC4b+qwxxDOAiB0A0xhOeM6IipJZXIzs1kzpJ81pt23qe/Naa1HxHuYNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnq4rCRA9TVsSAnZWagAAszoP/3H0N31e2eM6iomeUVqX\nB6VLsQttlJkHHjbG8pimyMCFdy0znOboKUBPZ2dFsjIY9OVmPEEbaZTWp2pI\n8kw1XAyFmToPb6Wt6CP7UmzR1kwVwHEdeH+GMbmHtkYekFM4ViU861e2/PR8\nGURVfgdoMoqMMTPQHv/5C5BhiV8+zemuF3pVsYGeDPbs+k7JPitLir3nMSm5\nx/LgKJBs4huDrOP44u9qrPST9di91YWjZbSVYuxbu6+sfCFvux6+uhKHQCi5\n3hahohuYE0uwJ9j579Sl/8Xm8ptSIpLk0lakgjDG+CTZ1lcHBz0REVhJbcK9\n9FKRMEEKgKde6RVGzDjjtr4Oh7PtXE96FI78U2bs/yK2HW2tgsxw/eVNcrgL\nG6sAmiLUpaxZ8tWGBgS/yYtNUxRC4hE4O+rZ1dbTmkkVpPO0/Dj4eNflxbpr\nirYNRTm8ZUcVnfIwqCFVHMAQk1KMOrODy1Xezv5N0Au2M/i092iFSH51IHH5\nsQVrXwl4310XMpLfXUoPNDc6nhYzIDOky+ieh3pemPfdC00ovOdLPuLk9bRt\newcN5xkXPMGiRPK5akRiHuEW0oUjDxi3GMjEaIw5mj1p5itz803xr0aCPqbx\nzeLPfbI3S4meLgacuU1ruDcKeKsB4xW4xABEO+1rqowZtL6MGrb2Z43gCwkP\npfpC\r\n=31c2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f047f493e5748b8844bb49ac92c9d6cbedf215f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.110","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.7","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.195-renovate-non-major-f047f493e5748b8844bb49ac92c9d6cbedf215f2_1621012011331_0.4424962785213664","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.195":{"name":"@balena/jellyfish-test-harness","version":"2.0.195","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.195","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aef33eef84f3deee1843dfd8e5aa7e4ac35d1974","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.195.tgz","fileCount":24,"integrity":"sha512-r0eLo52FhwZ+Mt6mTTSex1zYIQLZn1G6riqssHdnY9+Lz/ZQdNpF+u8mFfluYdFWpT34deQG7KbonHxYtty3rg==","signatures":[{"sig":"MEQCIEMc20N/5wVDbGi2VR9Y84kp1rvUVbKKQawVQrhDLIqwAiAqJjUUo/0H8G5rmLET2V8cizUJxcJEYVr0SH5Ev0jTPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnq9OCRA9TVsSAnZWagAAA7UP/ipiprx+RgRj+KMwDcwr\nu/mesl0k46HhKsOUHGn5cLU8a98GBU8tbqkSULbZaI/y5N4s/59KhFIBlHMq\nOcaci9iYiHpCH+dJvj9nhx0bKHsI7fKURfvWm0pzSZpAJc673aTkf8QpZRx/\nVQfUeTWQed078mmnHfySqqeeMYdrfPZwYbkl/DqTlGwNkiNDuICTvLX/Yub6\n+acqNoc/GQIq5IrozVTkgqRewZWBFk1u9Tc0iv5u/gdBrwCYskeT5Xe3o0jm\noTxeufnyVSM1dujt0hUwYQswqrJek52kAX3uP5X+eQFwBNKC0MVAz0fqr0vJ\nhMAst+CjDP+H4AaQ/cWwizzSGVOmpszEIxhaq2UmEngrLlSzFBAxK5Sgov8B\nzEaFFqkisWIh2Mo+DDhiZkXkJpF4HY4z234wcmG20hvFVzAR6TWso31GjdeC\npnxo8plgl2I62OVBcqdbwpHaDXLSLan+yL3RpDjCy6vJmg80vr1nmEiaiib0\nl8qoMwoK0Aie9V4WSuAb4k81xEx5MnRhVzXPkwnKSnpuja/lxZnnUZf/RZm5\nZUJ0ciXM+x5G1CwHTUKYrn8Mm+0MFJGeMcOJAyOy3dvNdYUyIfHmvBOcndbf\nzMGIAV5O3uqaBF2CbYFT7vgzgtyY+8dMD74AVRL/H51DiXJSuocxW0z48fQG\ntJEQ\r\n=J1gK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bc7fc589ab33c0496c1f80de636afaf71bed1473","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.110","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.7","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.195_1621012301791_0.8625996039548931","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.196-renovate-non-major-7e5d8d01a7947b62b6cb5c8268fb9338a248715c":{"name":"@balena/jellyfish-test-harness","version":"2.0.196-renovate-non-major-7e5d8d01a7947b62b6cb5c8268fb9338a248715c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.196-renovate-non-major-7e5d8d01a7947b62b6cb5c8268fb9338a248715c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6108059a7c5884f5e8644fb959fbf243249166d2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.196-renovate-non-major-7e5d8d01a7947b62b6cb5c8268fb9338a248715c.tgz","fileCount":24,"integrity":"sha512-YHnXBXvF+zv0UlA1PL9Zao+76qKUNPy01Jn6hfKlJDbIhQ5v5uLDsxcLjY5YSRo+mN5koiM1Dw1vlHRK/HcZ5w==","signatures":[{"sig":"MEYCIQDBcKr6wQtEX4LwFp4TAJIoEQ4fkCl5xqo9XoWiXvhHmQIhAPheoQ7WCcUmwzyzS5THWaojJtknFmKZnlCPJ2ILMZb0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99694,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnsDvCRA9TVsSAnZWagAAkwMP/i5UvWoRsXcPxvM2atSz\nqxi1d3o68S71jnGCLZ0oSDYryAqTICDSAv+eSb/UOamTxfutiqzM/45lob7G\n0EKGkeHOtJR2KFupOorBVjdsM+NshuwYFwerTVKLFAAWeYDFjA+WCgCMFzsx\n+JH72N0nJ+Z5xIXUkmoAwmbC/w4Kl203HYxDFwfcL8ajgbC3rznyqgRtpleO\nCz24S5/lj6YtlNZOtXcj1l+0kreCHsX3eLcxucHbDg1qryJSXyTOMia2us8z\nLr/97zxBVEBpMEPrqbU6Cf6B53i5FbgwYILe9Wl6IE0UgPYWof6kiHfKDNpB\n8sV95qz1wiFgIadx43Y/YVznIHO/2nj1HgLQzsthZvcZKjqcaFB7QHEUsjx1\ndHuYr8uwL8n8eq0x3p/ycYmI8Yhh7Qr2Pfnw7fGDNphTB2i0W/JTn55C3B0+\nDRuS1ShBfNhgOdVaomAXTBjAyWybp1Y+mhaVm9vZWgRDd7PxOraruLn9V1NU\ndyGwLxKz8DRBJPdEF2c9pe9/etaWtc9ehPYC54s99U5LE7z4cgqPFPUhsv+P\nQDVPB0/YkTKRHYW5jyawHVPF+I4V4ZPO97Hq2nm10TixNKVcIeDmSWIeIbFu\n1mYspEQoyDOZgh5O7OfyMfRPEJs1acW313zMW5AxXsAAw0wo0hMePdofje4H\nD4er\r\n=7JAw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7e5d8d01a7947b62b6cb5c8268fb9338a248715c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.111","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.196-renovate-non-major-7e5d8d01a7947b62b6cb5c8268fb9338a248715c_1621016815179_0.970609997945461","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.196":{"name":"@balena/jellyfish-test-harness","version":"2.0.196","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.196","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9eb98a0a308a1cf33174d972c7ba31ea57f7a8ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.196.tgz","fileCount":24,"integrity":"sha512-4XQ9D1cgQWMLAOZmaldbmpANveCjAb3zyqjdLRwoSh3xZ5XgfkvZ7gVRM7csNnAGMyByjqAlbZkeU3ny7nkVCA==","signatures":[{"sig":"MEUCIDQ5SoGU4b/ABoFmplqitOGwZ5BiUOjPv9SPasg3wu2gAiEAg7rpvXrvBAIyRKOl3wgBjomVX8QPCllP33CrOdUgK3Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgnsG7CRA9TVsSAnZWagAAb/cP/2+Mh/5yk6SmU/6jb0ce\nBlvEWeYpQ7spXMeMPjkLvITitZ6rqHzR7N3IbIC0vz0Fr56CRu7WVyt0zCbV\ntxXeguaGFAnlta74Q3ZiyT2FbhTwPt4UG7p8dVatHWgTLG5hilhFBC2BTR31\n7eVL1erAIbBM40bROc2aTbHv9iaq1gO0kCsDSrT5UFAzGsWUgQiEFIFDMH4p\nAayHAEawz91GnGKXIuBjCuQ0bG2eqAq54iI9IVCDwRZ97UTFyrM6mP3iLbQO\nJ1ARkebujtYXS/n2fe7XzUe6B2wVBgyw8MnQdSluGOMgRmgkKIS4oaFpPVUC\n1s6Tlocygo6IRyrRqgytjRoxCxLeJMR2yN89aiHldVGpajVD+W97UTS6A9IJ\nTTKEiUgJ3ZSxkeCqOclf6VbeaY8NE6Z/tT6+VM0OXjA6v0bcWAJHPtdifnK2\nopzyZLtGJPsi63/i0HeTRLZcCvOTqX64girjuL6026WFmZ6iA0iJvooAdbWz\nwgAUmaXnXQvrhCHEzLMcwXeN7o8wckozHUmL3+xPxZoZQoHWRBBF3aIN1z9t\nqWnWG7BHW7Kx+Iy1zhL/42VSpMWA02Bf18Dip4wfx9c1v8L7HQI4M5RkbbnD\nlnfoKpduyN4g2hTwnJ+Eq6s5rir/rwC5VbQjbcDf8uWIxo/8EKz6ihFnW6CD\nebVP\r\n=JOYY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"96350aeaead9ea9b9d0304c1e6bcaa3558195897","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.111","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.196_1621017019002_0.5111178112803207","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.197-renovate-non-major-f0e876026a2b7f13698673a3f17f59d15f64e647":{"name":"@balena/jellyfish-test-harness","version":"2.0.197-renovate-non-major-f0e876026a2b7f13698673a3f17f59d15f64e647","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.197-renovate-non-major-f0e876026a2b7f13698673a3f17f59d15f64e647","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e19c5da81e2d4679cf82d9242bbf7acb47993745","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.197-renovate-non-major-f0e876026a2b7f13698673a3f17f59d15f64e647.tgz","fileCount":24,"integrity":"sha512-SqM5RyvKvhLGostCf6l85hoH2uj8fCmvm89AmAbqyCHsSDu2Q6v/HgelvgFuYIke5BWgO12+KdN8e6V1Uxxwlg==","signatures":[{"sig":"MEUCICwXbYP+48Zj+jvHT+5ytLJ2LXoNUSEOpNYIXkczqHT3AiEAzWLbH7J4dAnHXSNb+0ZpEbWab9upmRPf2ALUiHBRMmA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99801,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgn4a/CRA9TVsSAnZWagAAAloP/iPAQkt45x7uLefxs9KZ\nSy9gyPRKOyFYkTkVUwiaqaFQMCQ7RjGq+NrsLRLs2t8zWQ55CTfyC8gdEgNr\nxuNzL+w5rlVZ42VmcgW76opdmUVDUHv93kAqjWU9d4hfQUHlJN8EWKkloZb7\n+roUZznNlxng3M5+QxFBix6plJeMP6+/1y8pe56sRSb+UWPgZPm03oVIce3V\ngQ2YBbuIg8ht8REmbpeAiTcK0RqZMRlDTwv8RCI+VUQ8u2UdSElHtgBv1yPm\nZPKvR0c2dIrIGDdP+IphLLj3jmaSTTRragmAtu2KHpyRJ4SriyKBW5NBrLKI\nz4rvK5NIQI8ZHfEL/Dv+MjajAnraTdt87+L4R8Sz/R1AahaXtoSDjQgbhLRH\nIJaehnXT0X76EMn2LPw/tVeAC8jokUw4eiA102VJWTWk808t2jHBpS1cFooU\nTb7yI6PXQVc9hcEtihfPHvpnq8/HBkSVXlmqp+K+fUnlMRXqHXF6CauaX/5K\nFqUp5+Sh43p6tqtJjRFnxwHJRNrNxHXy6t6r+x/yu0z4aaSUXLHfal1HOXsH\nYCC7cvptHenOAJo6mQq95KF3Tv2ka/FlAM/ZsmhaeIcxGnisNPc5wlNu0tme\nKrvG7UuNHCcMezOMvK508dI8P2tf/bXJQzC4bCTVuKDyXAOGIFYhRemnf1eg\nzJ7z\r\n=7b2A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f0e876026a2b7f13698673a3f17f59d15f64e647","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.112","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.197-renovate-non-major-f0e876026a2b7f13698673a3f17f59d15f64e647_1621067455251_0.021546860947022184","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.197":{"name":"@balena/jellyfish-test-harness","version":"2.0.197","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.197","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93bb9d96c13ba6ac39fd0fb30f6370409fa496a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.197.tgz","fileCount":24,"integrity":"sha512-mcA88B/qoTrl5udTvL+HO/5ZGE78pDh96vkobMOOQxwETCoGvUAxbfMZWOckpJ5jfqdd2mvu+6bpUNbF7auMIw==","signatures":[{"sig":"MEUCIAaJVDfdDsLa8OPz7aT5g7VOj6WKKOEdls+h7zUjD6gsAiEA++3zglyAwxOE6vidHBKoe5p1ST5DNLHj5O9aNWsShuU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgn4eBCRA9TVsSAnZWagAAKmcP/3jSQ7miTgzJBeW/3JUg\n6jC7JQHacW/dXh+9L/rjqFhlCqqLawjRYlCMyEdjyufsClbfEgMlh84Ly0ld\nSy40j7sxAH7lZpyr3OQcARV5L7GEOzmq7eHIw10QMQLySdbWazabz5pakXZ9\nvsI9yGgMq1eouZ/Prbyaa18PukHKdtVV5CRjSCoHZSm3F0q1baHDu+5F4rWu\nGKf6MGY8jatqEfT9F16kqM2XzvmQhtMPcQ9/C5eglSA1uOVe+7QhxvHygpP/\nLTjGRaWGIFQ3TeenRvwb9ULQ36owXJcC7PrPC7DUvUG8uXCxZg7XRl29ieG8\nABWY8BSdgL/m68GZfpV+sT243y3ISF1iOAukwqiNWCuBLTX4PBZzGSgDT9iM\ne2oao0UDn2QlmCEwBGhhBJhWBBmZc9FL/1zxytFAL2zXPkkFXl/D68wrfyuO\nXhLGePwPGZ3AoIH2iqEqcu0g06zSjfK19OOTkEL3591Ertydr2ryC6B9+XA7\nizrJpN+qFueCgf8U505DiNyVdMEMLjI73MH3W27JAMoh6rA7yazcRXPFPuBD\nK75en3q3IQTvs0TQD3PawVvMfTrwTC1R8aJLMIrNgGGipPoSBKtix6qb7RNy\nWWgwJc2TLCnVgnNBiw1j/MPIy1whF4Ueh8NUur8UboRY9b9WsDI5ApUgwLh7\nybxN\r\n=LCKR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8d0b7c0f752764ae00559588ecfc1825d742a7b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.112","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.197_1621067648965_0.17189917933099386","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.198-renovate-non-major-b254e14af739d51e9a9a2d9abf3039fbc393afcf":{"name":"@balena/jellyfish-test-harness","version":"2.0.198-renovate-non-major-b254e14af739d51e9a9a2d9abf3039fbc393afcf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.198-renovate-non-major-b254e14af739d51e9a9a2d9abf3039fbc393afcf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2ba057c3594bf423aea402389932380cf5819d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.198-renovate-non-major-b254e14af739d51e9a9a2d9abf3039fbc393afcf.tgz","fileCount":24,"integrity":"sha512-CmzD3+KFEgkpQ3NRDkowgMUTOmtJ3PdzOGR6NrSA2PhCa7TjTZ5fqAGCmcQE445+7g8IS6GdtmfY2QkRHttHOw==","signatures":[{"sig":"MEUCICjUP0T5W2ELIdkIidCX54JSxV26C+9Kzn0QsKWgcLaTAiEAhUt7yhfUbY3kxKMYiRTQCNMcBYjmF99c7firdPTJPmY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoAYUCRA9TVsSAnZWagAAjRcP/Axu/zv8FTNDSPcIj/h0\ngnS56JSZw5uhYqQJUSqtCFDvwWqnwTk9Vc8wvwp+mJWYzNL6DaTuj9VYyqu2\nfAOpdMTG6/rd/YMVhsn7MXoygL2WzBhhSfrxZ6+ayactJqOi5+AwIGsQl4Gu\ntpkI2s1M/10Wcsp6Ws6BmShEYjyUP+C0Qi7pM9MjEqxA3HySbYLN9lHhVOPW\n/rgCZx5pjkp4nsIfeDgFdaB/sUSYFhMox7rTFyMGYghfb2z+cwLIjwH5qpli\nkCtZ1kfR8nSUrqp+bNBhix9Gs3/I076K3f1YrQecSz6aaevxGrr46R/+vrO5\nv1b4Ab9oqdOvcQtpMWN5vQ+FB4Bg6kQgfg/w8Ipc/OMpss2DQauknYEeW/gp\noD8ghygME1/oq3n2TiDSbZ+kxCV18RMVQHLFw9vNTPRT3JhzCFvT9Op0qriT\nCAtuMaBlFN4sGBMOvwZh/asj25mrboDznYyk2K9J8wXFy/LN9Upw8kLhiuqj\ndUXCEIQoEdjS12qF3nHGid2/mO947hyinnOJpbtmGkf0j6Jj+JzIRbmO+/1y\nB54UdcYIHsKDWlr/CiiIMmZ1U+QFVnLa7bWWFFWGLQ5YfJ1SI0P7btKeEobN\nKhlyiPHZpEoe+4bdsErDbgYCxP2wU1RhBHyNhEB0yO5pgJR+Q2YvJnMoFOsh\nnZPu\r\n=txb4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b254e14af739d51e9a9a2d9abf3039fbc393afcf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.113","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.198-renovate-non-major-b254e14af739d51e9a9a2d9abf3039fbc393afcf_1621100051967_0.10536671653631968","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.198":{"name":"@balena/jellyfish-test-harness","version":"2.0.198","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.198","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"507a22592109863411e72bff336f59fb51ec511b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.198.tgz","fileCount":24,"integrity":"sha512-nsax+qwQcI5BEfagWJjil5gBvqYxKejdQiRegMLfYocNZ5bwBEhX+pmcQJ+771AI7gaVExWBsGf3ZXflRno4+Q==","signatures":[{"sig":"MEYCIQD7srr4zUve4dNyC5gjGCcqj+LjBzafcvGQpMBLXWQYRwIhAN0t4LQJnYnb2YW7uKM3zvPl6Q1BF69t78eQcoW7I3ah","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoAbgCRA9TVsSAnZWagAAZOcP/34M+1daaPQv7CBAInh1\nhQIqZMu+ulGclbpMVLGCYnkTnZKhs4+lq+RRe6XnJvBTgiHh1pTC92/je1JV\n13jcBdSbnTez/DhN/61qfmrLLvEYK0FE/OsF+lMqZE5NQFuAU3D0VLVSaQpE\n/ZS/fxwWC7LjFUD9sv3KVIaCKotFWslqjJ07//eQp3NVIgVVdiM6z3urQnZN\nQLh/pXV4GvRmQ8WxZcynci01lQA3FXN4COWQ9buGmaeUvYewDW0AWVsT3D+9\ntc6hxQJ7rJFe/r5L2hhPVMJ5DrfV4PsWHjLrI2M8gdbUny9e47ImJLKnV+tN\nBs0yXGBmqjOZ+f8yTBRVbLYi0OdiWGnmCCJ0rCyEt9PQhc7Na/qHkwtKzKLf\nXJJEx27QwToMfPjgw3S3RoY/cfsNdtsjDvmZqQJQvqdQDu8hUw5HyHskwMeG\nKOx8Ohkuh2DA0nTYeOZbZNKltv0cSFH6zgKP/zmw9C37J3eAgLUFiLPB2IdZ\n3g8Em1Nb+BjRY85DVv/KUAMmMWs2Z2UFjwQ5Fq0ujsqwIgmDAhXTbOVK5PDa\nBPgfb5jokx1xmaXgmJe6enk78vhHwEcMKKI2QyMeUcpVkeu0EfqxnvzlW20b\nz7E4xcjd70/e4LmC2FlgRo6ddGrZoRo4Ato2ej1qdq+jIKCzWyARef2btUfp\nf33p\r\n=f67J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1af6541839bfeb004221f978398e73998dd67679","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.113","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.198_1621100255938_0.12097445602335166","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.199-renovate-non-major-d79bcf22e0e50237973ce935ec052cc3f4742656":{"name":"@balena/jellyfish-test-harness","version":"2.0.199-renovate-non-major-d79bcf22e0e50237973ce935ec052cc3f4742656","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.199-renovate-non-major-d79bcf22e0e50237973ce935ec052cc3f4742656","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"37c43800326a52f91263f466ab384ae66d724195","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.199-renovate-non-major-d79bcf22e0e50237973ce935ec052cc3f4742656.tgz","fileCount":24,"integrity":"sha512-CUEap0MVShW4NISraybv9kAJwYzScd2swBt50xYBu2Ni9bmIVVl5YsKxtErqXc2Cua6qaMYpjTIeA3qc4/ViUA==","signatures":[{"sig":"MEUCIEQZ+p0JicZr1PkKmXB73zczwEmAIG0i2SJR5KK0AsvSAiEApgC9fRJu0C2Gff+WRXa0ebAvQ1tBau2dhWz9IdY94vg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100015,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoBMkCRA9TVsSAnZWagAAy6oP/3tKN2wMZ+Gztg0wnqlG\np0DeoTe8jfxhg0TIg4ajitWVeo2fGv0pkc+KqI8wO2O0UPCHsNmMU/jkp99E\nFiIRHr/ZUIPf+MbpfTaW6c1YsoYR003Equt1Ee+EPraBJ0AEFoFuk7M2aJaM\nwD6xx+4Oi6r/N4I9Jet7oLozm3e0Jljq9Dodxvxv62iJRau72NEzgTJaxEC5\ntMxFiQSKahy/PVt66ZNXgSR5Mj8fTDdWPfQGDhLfAkZMpW+BVG/tS9JFOEiF\nXImsnsmHXqR+BA7/4HYNdDvwukeRL1W2/a+9tDhg6X3wl3iVv73vWO1QEVd6\nrj7keBm+jJnycn2wGcqEE4vdZ9AAy4mluaDH0Y4lf1jHNAkNSBlCnh4G0mCu\n/Ymo3zHFC2Ls2I3sqRq7dnD0dy4Uoxj7mo409mvZuy/Wj7CjbAzgn4eTT06L\nnVS/bAIvfnJbIVdqFWN0xdP4W+qlGrZqRVyX1GI75ocltNcOfMPhjRx+U3Ix\nxsroGLARvUzwDeMx6E7LcW1THLvsEPOGlNd0PG6vQ4bxY2iqHWswmxX6MNIW\ncEacQP6KG3QHrhrTE0cL+CupFHeHNpvreGmqIyCESrM5N0GJRSMow40Aqlx8\nbAu7biwmmI64H5GsDWPPAP6t+lrd5Fbb4eoDmFiCKbxdqMoqxXENeGAk0R8u\n6hwm\r\n=BqTs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d79bcf22e0e50237973ce935ec052cc3f4742656","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.114","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.199-renovate-non-major-d79bcf22e0e50237973ce935ec052cc3f4742656_1621103395656_0.0019436221165329837","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.199":{"name":"@balena/jellyfish-test-harness","version":"2.0.199","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.199","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"11f9a4681c734b2f67e186b989985b0f55aa3f8c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.199.tgz","fileCount":24,"integrity":"sha512-TH6EVJn47lZz7IvHrIoN/vJxqxOOWf4BdHcfPS6QbzqM4DT2RbWdUTJCG9K2qwGGRhjIvGa5BBRd2ktWIfQJbw==","signatures":[{"sig":"MEYCIQDvCEV0oB4+LPErNiWXLfmskJg72z2HvP4QDk7nH/L2qwIhAIkUKyEbdNfmg6QclTdUwX+U/6P9gLlUB8pkeAiDSCZs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":99955,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoBP1CRA9TVsSAnZWagAA2t0P/2xiN58IwhKFnp33dW5l\nUDb6pxK5/CyvEib8ZxQJh66FNBJhnAYNgMn8n1gqaydAGDhWclCyygcb8gsE\n/wVtxItOlHHlg7R1XU93/FzCEnN79vONChPnVFZ6T5xjL6Fr9hoB6HLl93f0\nbNgtOpkxom51MfoWzS+tFwNoD5DdutV+4/RWYR95QMmMV4Mxn10E20FAOwcY\nV6K/LrtK3bphvwV9oHSx+bX3liGCuD9NbD00Pxa2TblJj+fO0RtT0zxKR/+L\nBCQjv+qFOjwKnF2FKQdbiid1C+kma6Vk53PpMHWeWQzKDsuKkd9e55YRL5oC\nsWYZtP4lt0OrF9Pu1ocivL1sabBhj5MapvIXnozZPAfkGmvbMITTQh1v4Ewi\nHrqjL+yb8F6dq2KFd06OsdAQXGQGSNejtiQCxhYwxXhNIp00FPO1tzilT+uo\nOofZa3nPt5697kzVIhEEpFaqDnvFYsf70cQhMc2S+hKqqMAhpEwacqBkGXUD\nhrZDdfr98VNSezQQkCEUPkMzQhvK2/zF1kP0WMeMKI4sxbuFnhhayr5mAJIq\nSZGz9M9CCXOLUqYq/3Gkfv/Mmv4miEdLeVq4KK1XNoL9ll2ySYXQ1RbbvUxz\nvOT/OSF0i2NwjwvoVtGI/2qDIXAi9d7HDgV+TKUvvW1yudRaQUo7B7bOYX2Y\nF8xB\r\n=3D+T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cffa2a66e2d0a76aba4972f7ef8bac7853903a06","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.114","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.199_1621103604637_0.035947497807389484","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.200-renovate-non-major-6acfb2068204417219cdea9370a125a38d486d66":{"name":"@balena/jellyfish-test-harness","version":"2.0.200-renovate-non-major-6acfb2068204417219cdea9370a125a38d486d66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.200-renovate-non-major-6acfb2068204417219cdea9370a125a38d486d66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f655777fe28c84eeccad310c2606ee037bb8a047","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.200-renovate-non-major-6acfb2068204417219cdea9370a125a38d486d66.tgz","fileCount":24,"integrity":"sha512-TtpbOt+a6Hn7BWMg0JUTc5Rai11/SXSiv8pz4pznKW515ZkA7oWdMafmHf+4nzdw/LlRZs+3jdKIxuxooo8Jfg==","signatures":[{"sig":"MEQCIHt9ScVG6XcYcZLv+f/5aL/SsOFRYPV2p5xsswpovVfmAiA7daExLAy44XTrYLxA95UENS3Osbss84CNN1l5NbLB9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoFetCRA9TVsSAnZWagAAx1EP/1V62HFgW8GNeLekBzFH\nRInFRh2d9jM6IcYad2VUUZiV4zUUBoHbNG7dZiUOTQ+cMDDrkULrNNjC1rEX\nORBTUz4Q9OUd35CZVuqlbt7S5U/RCnfReHAyTjojPLddIC/YDo/WxM8jUjYi\n2WcfQcNhVij6NK9Pzlg/cy0yMdIGbGm4SR2Bbux+DagFciEfPcUJMqP6jK1X\n8Cnwk+ulj1maWSStRJVDGzJi403kfPEXW/qwHeEFe1DRUFEeeTev78v87wwb\nGEoHbiWpmnhE74vwMGFJOr2ZJOkdpvzevPB3RvJeLdWrXJEk0MqlWrxP26QU\nWTc4AztootO2VBvhIp18FDF93zWapKS2+hmICXrPnQW5FFu5nZG4e3OX0doh\ns+iMLRKSJ1U4mnGAro920kxKuJG6uoKXhteIET9stEeBml2TghKbGUNY4Q0A\nYx9kKn1ZKh8XlJPAHxTZX4Qc9Nuzrs7NNhmA3BXDJ4bggpep+iUDu/XBz/GZ\nK8MdyyZM/bugISDm/iJO3PnMQP2UiJ/VkrQFrhuTWBFOveezkgXV/3Nj9A1E\n8oashaQOtS9V0coU0D+u/BE1u7GslSC5lg3Vwld48tvoWTKI8QrVwxbkAhx8\n7jcqe+XMQqZcirxRHL1vYwE0ZDyMcPvuKXAwuytz7ejRmhhIMzAnNSSI4Jmt\naOVT\r\n=AwNL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6acfb2068204417219cdea9370a125a38d486d66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.115","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.200-renovate-non-major-6acfb2068204417219cdea9370a125a38d486d66_1621120940903_0.8601904922264345","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.200":{"name":"@balena/jellyfish-test-harness","version":"2.0.200","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.200","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5c336ca75126ce3cca02d5de22fcbacf02944eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.200.tgz","fileCount":24,"integrity":"sha512-18LIMhj/we5zZxlGbmUPl9v37ugGqhjnXbl3zN+tFu7e7Qhj7I8A33UBgOk4xsfY4nvkTi/wke5Ewy8XSNktfg==","signatures":[{"sig":"MEYCIQDIRu2tl+Bmc5vAVmaNl1JeRjtnm4sZrAH+xWwpPPhJNQIhAIGA6fIABhGOpPrUOWgkc/tKOox6O6n2HSCGg3nfy03f","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100062,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoFh9CRA9TVsSAnZWagAAhkYP/R+JK0yzlFdpYecmx+NA\nyCaijpyAZaVFlxUL+xn4DILc2cb1gBdpscRELQkHRt7eJZ1XSVwIMrQbH2QT\n/1BONGAzEiQCS2oWwzAUBtlbEdS6GdfRuWqR7c8Cz0dfhGkHGXazzvUDY3rV\n7ctofyoARNYb/+jkeejo3KYWKUpSzxnxdy+CdaUN7O59j20YgB516cInGoLJ\nEcdfrXU1moKcKnk7+ZGUFnHrS1j0I/HBKSIkMtzPbZfyedKGxKWIgeco736P\n0eGJwmWxt9svsG0IpWWSVYRdjxYOpko4IqNLm6DfcENxN995XmXZ1QEQZQ8y\n05USOkVtWFTYZenjnM9/CUcNUJwRuZGCPDG6ypsl07f7asl/X4vhN1ZufY59\nvT6wcNDGJuVai7t0atIYHtEjI5TEVuOA5aDa4wlU3iGG6pVANWGvu4RWIVXa\nFRoRqY2ldAjMHW5l3PwTRj2Om0rDQc77eFQsmjQYKGVdLcLWe0UaxokrO6kb\np3QYKQZydDZ2ZYZYqW8MLE7afBgVnHIBRKZX+VjMXjg/bJDPIiNtvBX+F6xJ\n4mbrJkTlQH7l4DoPMBjbqHt1CLaqJ6gFodTQuhzs2Egyl3AFG3bj74lKb3HG\naRc56NZQkBIig5ejjcB+RPUTVsI7F7YYyPwX+9kCLPRsuflZiK9iREWmKa+M\nsJSE\r\n=S5Yb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4b0eac43e1ced607e3ae964c0ca24c012227b940","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.115","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.200_1621121148848_0.7851179776668096","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.201-renovate-non-major-75aabdf6792a5415ab0adb129adcad07ac6dca72":{"name":"@balena/jellyfish-test-harness","version":"2.0.201-renovate-non-major-75aabdf6792a5415ab0adb129adcad07ac6dca72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.201-renovate-non-major-75aabdf6792a5415ab0adb129adcad07ac6dca72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"28942eee2cd6a08e112b5c2107c5fa0395912959","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.201-renovate-non-major-75aabdf6792a5415ab0adb129adcad07ac6dca72.tgz","fileCount":24,"integrity":"sha512-Tk9Q79xXdSvAXh9CFT3cTG1+1Xeo8MrIYb1xe6Jt0vjr0Tpw6kmsxEZxTGJdQiYABmPDi06j8gYh/cEyP4WRBg==","signatures":[{"sig":"MEYCIQD0znlNhpsquckw+/4xKxy0hEreF5RzKI5C/yc/iBUfHAIhALDFzu4nU9CCc1h+B/G6z3TxS6dIbKSTTsJkg7yDvUV4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100229,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoG7kCRA9TVsSAnZWagAAXUcP/jfIb4naA1M18lADExlV\nPdPGtpTOjqLZz2ap5ICbXCux6Un5Y7hTS2D+sQGFHT3q5WmLtOfLndSmL/Pd\nt/co67WfbZ4nLyeZzxGXWpyCgdg2KJm1TpRHJpYEkltLedn/FIsA8GI0d5zw\nUd8hPgUa/HIG8yilDrza/dt1kWFLxWxgnrHf4sHGW0aC+RR9sSKa1/KTArgY\nyvxJCtP3C0eLqm6Lr8gkBgA8oqTDiVXwfNS6DiZVAbt6C1PWwrdACmOzz/5A\nMrPstxPWWFxga2cIhwXFc/pXHn3tQW4llMxWhUIRMbqYhcuts+Rvmn7ax64g\nHVMM7xZmltfh05yiZyJkYvroJPW8zLdPSTQBtBLTlkvIPLpOEB3xOMh6AVfY\nUxJvzVa1om/IOocoquAJi7pLQKR1NrX4zRWm/sckwjJ+Lxbhv3+ZfOqpk2kX\ntgcYaJI83n8gh67YBC10d0IVx7KeqCXT/xd4TKt0wep0k/QjWhXwYTVPmZYE\nVjTheJIB8oSBhMOauLs3sCAX+fkVuyni6tmQtv4MP5X5f6rbIp1enw8Xawvn\nxsaEiozGRpkJtxUbCjN0uPTE76u3AFrVrIIMkb43b4wkhFQqgViQrFXnh6tP\nnbZip8LRI39JqZMDo86LgMF7Z54jLwqVo3OrNWbONBsaKZP0675jU5kDU4lS\nR3yN\r\n=N6J+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"75aabdf6792a5415ab0adb129adcad07ac6dca72","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.116","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.201-renovate-non-major-75aabdf6792a5415ab0adb129adcad07ac6dca72_1621126883777_0.7052015582432154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.201":{"name":"@balena/jellyfish-test-harness","version":"2.0.201","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.201","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ead4bf4fdbdee5dfb15874b23256b017a500120","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.201.tgz","fileCount":24,"integrity":"sha512-QhnctPX1rukLOlYvcz7qsTKfH2A2gJIX/n8WZPqlh2DT8VzkFXo0BpxsOeqB5h5+s8WfMDE83URhTxEVFsBxEQ==","signatures":[{"sig":"MEQCICm/YH17DFRxmt46xsv6FPhiLUS7J3z14LOYilth+tT5AiAPe7iHMUhSobNJRIP9nf68cjkJpdes3GWeLb6ahzu6vQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoG+gCRA9TVsSAnZWagAAv4kP/0ljlpwdJU8dtczzl1dA\nO0HDWjzXc0ruruZD7106xV8F3idP3jc6b92jkvRekA9SfNRM9WnvMhcZOuOA\n2fpdvKvWVVonWk3mFrmhNlvjpIqJ0uYJ7Q4kTwCAe1/Ha3QNVn2pQUVCfMg3\n7dpLtXOMJ4iPkSrnxirBVsFM3Pog2jM5u/kE81Z27V9Micj0XPJlkVC3qVRy\n+PNEd+Tf+Mp8i7XBeisCXDVs8uymy5No9inklxBvY3pxm8r6dlkNwD4S48tH\n3aXv5VgYt4ND0cV/KgskpfRduDU2308MIrc38/H7yNfUWCWvwpZzXXbPMsK5\n4DuNEea29jDZt/NuuJKLJHUx+m1hOLLzJcDQzAOfb8RiJvOsreQcVyrd/hi6\nE/NLINEmOK+SC5OdRax2FScjirvEgNyBmHT9fcwG2jiTefINufkWZUXI28PQ\n84Z4pTRov7g9MDyUUaQSThwutJzGM3bJM/vpQdnVTchYGgdFp5BcznTtRMLe\n34hKLYQiMV3TNzl+bda2x8mauoRJyBxJ/LkI3zzkJqhEC10+GEwby4Qv+jgp\n2jA6dUjE54mBi2GKLp6HboPpxozPUrJtq2VCZm6Pxp6iifSnbJD0F1kyyykS\nI+ruZFQ9sBvFL1GFs6TmIoZMTumL/6huYXTxomKHKb2/27r4+rG0TsX71nXC\nYkgb\r\n=3z3l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"644f847b7a7a951cd0ebed05eced0566bc404a19","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.116","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.201_1621127071759_0.8120349822640196","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.202-renovate-non-major-e5648f8d72d18fa97523236f300bf9a4f581da70":{"name":"@balena/jellyfish-test-harness","version":"2.0.202-renovate-non-major-e5648f8d72d18fa97523236f300bf9a4f581da70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.202-renovate-non-major-e5648f8d72d18fa97523236f300bf9a4f581da70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3b22fa2fce4d40d26ab122763f9594ead2204fb2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.202-renovate-non-major-e5648f8d72d18fa97523236f300bf9a4f581da70.tgz","fileCount":24,"integrity":"sha512-oWk2Icdbk6N8Cfbuvw2Lth1RTzUQf+fz4j0qdScqj0iWl4VWs7dyO3yfNKBOhSe/QzVozqSBjoS+bK98AfmxIA==","signatures":[{"sig":"MEQCIHAg7tZ6qu7Pwgvx0A5R/gMcINa1Go07YAabt+SRAKyrAiAZOv+yRX4c0vlVCEKh5wgHnJ8C3h4QNGfRsoyal2BeGw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoIQ1CRA9TVsSAnZWagAAUesP/RwKQwA/EMaUCiAODmfN\n42OTU501Tg7UJci5+R2XWd/gZd7VOaQU4THqNAJytwR4x+IWk+vOX1LxqwCi\nYyAKRCTaxLtd01L+3VD3YcFyqgioFpD0zzHh9hqFXBy/Reg+YFzYRDzNc2DZ\nlhZ41Q42Wg7HsvnlC22SfNFyCGKhhX5mudQPi+BZrdiiHEVZ3dLaiuZ8ifQ1\nMkOF02/g7WvMn3RzDbzPETtXq8A/1PGuEO+9m5ChZ8zMlxFyIs7CMzIDH4/N\nuYLuLeF1iW4Ub2jVow+hFjlAd0OXD4QsC0kTfjzZEpBNmF0wiP3uJaA6Nm6D\nIPV3Q+19OODOpZR5Aya/4ddC7MxB9sbNWmRyp4FIHPHqy03UXFr7mNKS0hKC\nQ//2DxM3XUNTnShfXioAibHooLpkV0SG2VDd4RYQhT4HLTWLRh4+LJd+7E4s\nDhxZWIuiBFKSQmB9cW6m5RV1GCsYra7vDTNNxdhpmwwLh+/Dye4q8eZrHgCm\nntzM/Hs1hRFADCtGFOo+fwJ69lntL/TcaB+O1aDSw7wbdNrcg54dX/j+PPQ+\naU7DB+gbDedbz7i0KwRl3QCbao5HZ4M0FWjFYxNwtpBM4CPjrEaqSvPSooXV\nXOv3WdvWiSjoPlISN2n/rHHfVFUywNb5rNeQ7Q0gNk/jUcbI+QD+ffAAXNMH\nBk1i\r\n=eXTi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e5648f8d72d18fa97523236f300bf9a4f581da70","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.117","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.202-renovate-non-major-e5648f8d72d18fa97523236f300bf9a4f581da70_1621132340923_0.0015830752458769748","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.202":{"name":"@balena/jellyfish-test-harness","version":"2.0.202","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.202","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"511ab3e212df8e7141df36e90475cae5ef26edc8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.202.tgz","fileCount":24,"integrity":"sha512-5PO3t22Yq9GIQs1N1RUZSIGtgwtvLQ7URFkUaTr1dfrPsDFryWcLYMTkcAvGwWH+Ns/BQ0XTBFQJn25UnABn6g==","signatures":[{"sig":"MEYCIQD4ou0wcmzhpexDzUlpLlRzdEN5O9pArobJLxf/YS/PHgIhAImiO81DDOcL3ytmLHxaSmhkZOBZtJEugYYBohb6pAjV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoIUuCRA9TVsSAnZWagAAxm8P/1+3rAw5L3xnyhMWFfhF\n3Gsg2MeMVI9CU8pe1uH3AwEqgj+MeAHhcwfcp4FQJFuY+EnMieEQMcitmwKM\nRl8XZytXn3gCYUGe27UYL8PDDm07gk9gYq7F33wEyc5s1vw0J6+vCwecZpoX\nc+cadIit7vfX0MzR4ZPVWlg87zRPnsnuLWt1deIngQ7zljFO4ZTmTE3vhb/M\njAZoifzhC27wTOIIjvVP1zkcbB/tcxFfQKR4qblRMLEfbA1raPIO+F/c+DjD\nFQTGPd2rSUV70r99vycY2uxSsQYl6pHvWGHEtQY0bkQHwcrN8IIBtXUOhVyw\nMkCgvqt7LBKiRGushWCdjTeGtw6AKjsrYnHURREqaqHBPfYwTOnaR3t9RfLw\nZzyi0yL++B8ZvBGLeng/KtdQbCw1PPfJe0kDDk7qB3QZGRMfXZVjwN6+FaAi\nM42GNYeHho7rDO+sjMv3B4RoMGvi+MImXZWoCCIV00Qa8RQpjtWiYd4lUd0d\nHH8NbI3ANRgX58Vqu1Jx+eGHGfxfAFk1/tqCPBi3cmspKd690FJjaR8KLBdI\nql1HTqHx1mZ78IYW8i/3soRijlVAvcv7a7FFd0TK6sITDfLPeq4Q7oSpdo0l\nML0JEXm6jO3Sp2oW0b4cc2CQZEm/KLy+r13dXcFaMKnBhP4wjslS1Lb99p7W\nsDEV\r\n=T3Iy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fb4a4b4f91659f6e186d3a97b6a5a2fd05678718","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.117","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.202_1621132589925_0.5736901814242104","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.203-renovate-non-major-9172f875cb933b097ae5cad5d51326ad53918812":{"name":"@balena/jellyfish-test-harness","version":"2.0.203-renovate-non-major-9172f875cb933b097ae5cad5d51326ad53918812","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.203-renovate-non-major-9172f875cb933b097ae5cad5d51326ad53918812","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0736fe9c216b5da40b19ddc7538c9c780ade4bd6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.203-renovate-non-major-9172f875cb933b097ae5cad5d51326ad53918812.tgz","fileCount":24,"integrity":"sha512-50m0Rnf4Oyu70TlS6G5TNnIcIK4T/ILFsQ6j6TsoV3o9b5BWKc8ZFRceWdb5BRoXiWP1I961jz1gS4yiATi47g==","signatures":[{"sig":"MEQCIDgFb6wBgWBqJal8RgtHnFQz/7dutECFvt8hXwiUmQKUAiBOknbpKINXgN4NzMUP97WA3cGCcZy/pN1au80So0GMEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoVGWCRA9TVsSAnZWagAAgPcP/jCycVaooYg6g3FrZpAK\npzfHKSBxRO3y6qacK2iwR4cdJWOxq7yL8GnvpQt2hi20H4JefS+tcT9dlsUa\nl0tb86d0LSakvljXXsXrBl8P7jUQ8cUayBBvU99XRwH6tyOjM8FiHX5YMK2n\nCXOwuGRZhndiJmYGUoAOOB+LK1LNjKQhv8eXdzJBWrXvMSaO79ROKipP9P6D\nHKWlxGm4zO1rYnwBw5cerBimuK2w9vaTr2hGEKo7IK1maawzO7fOaR9qY8q/\nIY6wTCviNU9qMUHYAQNfg4wO4FbC0pt+hnmSDkqdow976xsQIY99wiuIFHyO\nxvFu1gOlLk/pSqYbbBg0zqEnbORwS6072O+4wb8JZnyqGAyzhdwNeA1KBfvB\nMKBtaxcB+M0q3kIqGI/FYJ2j8E5igvMPMPDO5iVgzkiOXENEhMou3Hnt5DYB\n9zJ90esMxLLI9Zw47qttUj7G8Kd9o7mxV6A5vhxS1VpfNfx52Cr9//TXHSZf\n5SyC2esoffGi+Dqy8YvzAdZjpEo23mXCi8OvauDSzuVq3s9uEYTdnS8dF5WA\nczxjWgClMVtzaN0qRtDaTcD6rHMy43ea3iu4hUn92OfkaePH7BJIemahInnX\nx8bCOkvgpMzc/QDnK9oTAwVOrJHIGLsbtO0IP8536LhKFi7SDCFAl4iImPtH\nIo7F\r\n=1Hgp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9172f875cb933b097ae5cad5d51326ad53918812","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.118","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.203-renovate-non-major-9172f875cb933b097ae5cad5d51326ad53918812_1621184917955_0.813577978762356","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.203":{"name":"@balena/jellyfish-test-harness","version":"2.0.203","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.203","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf0800b29590e1a5f04972f2af2183525a26bb10","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.203.tgz","fileCount":24,"integrity":"sha512-JoPWePnH7AKXomvtRfACOnmQg3s/xdo6jowr38fla9/pyzJfC+xyGakM+s5mxXTevxTzdRHbii+NMUDJ3bUDQA==","signatures":[{"sig":"MEUCIDKODIQuZohuVxAvQb/jZ5NivhTI5BDnFvgi3q2hl33CAiEAznnaMVr9sQSEbO10bq2GfpuWvyPNZi07fmqSAlRInVw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoVKqCRA9TVsSAnZWagAA5dEP/3KdE7VCZNZnX6+WIi2k\n5qWDrkkRs5ZniB69zqdjvyv3ePjLL2mHy4eYy/+NVBlvshvxyrWn1VjuM5t1\n/p8copPJpcNdCb2daGsJ5VsHm8r5JVn3NlSX9D/Pax/r/P5IbbGLh2/ZQdfd\nnshVIB3fNi1DvLRJWQKWhHHIq4CohKUAYOwHM9dl9Q8bXaru7XAsESOj7PKR\n6m05EhSkTStJjXU5TEoxTooHOCDM0o2UbAKdt7cVYitUIKOE2QT2s8SHBew8\n4K8w0L7bJg0LfPf54hH0n44dsvITIFmypXwMsKT9qqbj3tv9V+1sLWpfikJ1\nf4FWJ2iTf7gQUds6jGI2W0Q/ou5lSHKVCnXOSUsTT1oybBNXVmC2rFY4ImSc\n6ZuJ+AleKB7M5j8/x6G9J5b+W3eZ2XtxlTo1ucbMDp3EpyKFS0OJgiOqY9zN\nKYgtZmSGB4iGiRq7x489HhMAl0PeME70gQRzwpICUgn7KLz3ykzdZUkmCqFS\nsc95VC3x9UEkRSxHZRgWf0qPmHVo6ATovFuD9DR8tk+c2Tz+ivf5oKapRgw3\nAF42SByNMN3B7viS0PWjZZ4nxs4zYqIiGrMrFyTjY4wwWGZ88wOhwQR+5uHW\ntd7fZ2tXsgvTVBmg3n6BIgb3l4hvR6LlrQATZ+N2myClBNQ0dMHKUWEeZVce\nKs9R\r\n=R9XH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f1cd59f680ce7845d6d3d8754ab93032fea8d6d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.118","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.203_1621185194238_0.27239871392298953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.204-renovate-non-major-9a1d635a540999c6e3b8f9395233175f4032d5df":{"name":"@balena/jellyfish-test-harness","version":"2.0.204-renovate-non-major-9a1d635a540999c6e3b8f9395233175f4032d5df","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.204-renovate-non-major-9a1d635a540999c6e3b8f9395233175f4032d5df","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8391a93961e57b1c28523df08ae45ef612bc2685","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.204-renovate-non-major-9a1d635a540999c6e3b8f9395233175f4032d5df.tgz","fileCount":24,"integrity":"sha512-+tGuK2UlcMiUOizoZfJaNAcCtK2s3MwHQ+sPkwLWnR/pU/Q+E1R7pPk1EgNd3V5GaE6rFSQx05XrOWOi4HIRsg==","signatures":[{"sig":"MEYCIQCg24u6nhPhTxJXLhjMCYeYERR6BhhtCpuaX5Ko7yEZ7wIhAIj/y19qTyYzNzwOHSLS8g1umzyFoBAYiMcF2n5QMG8S","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100550,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoWz7CRA9TVsSAnZWagAAaQ0P/1GgTCDe5mSIsM6uR/kJ\nReR6fBGozkaVTWbcm/EvRjxnv3tgXo3Wk7w8iT97S6HT8Hx18WHkFUayo8qg\nU3vJpjNBCRkpildIOR37inWDp/fD58RgmVqUETDitISVGatXOD3Ltewg93fw\nIVq18AHBQV0i9g9OZ13bNUuKJHBqJaI87xIt2N++QFB8bYETh789IFjvwPzo\nbO99+hJCOfXC5jr3ggUwzW2lgA2NEs47xIn7ghZ64H0p6ismfO6zQkh57CtF\nIwbofVDUGS19S7lCxfXS0Q9Ijd+n9gUijAhMt+Ej2Jl6VmKpbVxfIEwvDCoM\n5AICDn/hO42dRIKO/+WHRO8vA1OXcIg4m2+yk+aFBgE6qpilrw0Wi6254CXl\ncxJLO3ixh1r0jEI+oALCdc8Dc5KocqJ5Pulkeexzu7bB6HnamKab7hmHMdM8\nTXvUBC1rq0WBTBARGi5ZXjBixWJ67AT1AdV7i1zGgbPc4ULbHPk5jAojU/lr\nzXhBGaQsfDth7AgKJPr6yhblgDCvxadqvDPPo1S1+smqfQe6pmhI1KKo1TXu\noXZwijIVnmnyN+tAdWVgsvIRSElUHUs+BRo3Q23VpNjdn/fVECCN4L38G6Ot\nsUNPM0C65f4qv8q5XlCSLux9I+z4wJeXakEwra33EQjwQVg2TKR4mBSGhofU\nYGgm\r\n=y9Sf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9a1d635a540999c6e3b8f9395233175f4032d5df","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.119","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.204-renovate-non-major-9a1d635a540999c6e3b8f9395233175f4032d5df_1621191931200_0.8859009741954906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.204":{"name":"@balena/jellyfish-test-harness","version":"2.0.204","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.204","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ccc522ccaf0dd54aaae585acd24b24a3295b0236","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.204.tgz","fileCount":24,"integrity":"sha512-uBqMKS1Xm5ZJvZFeQN9/KBhOY/78RiG3e/1tjPP4OjhOD9R8mVhzkmSrd/hcZQcFTDj41qInM1t+2rqSioJkOg==","signatures":[{"sig":"MEUCIQD0gUv4SzfA7Annq8BNE0r22Ics0H8jkxTISO0lp/1mqgIgIPtnuirVW/2yYdN/YjR3lWiZ1DFihbmzmebf73wpCsc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoW4FCRA9TVsSAnZWagAABzMQAIYg1u4X5w1A9u0DfUxr\ncruVNy6NJaBuTJAWW7ti+DZUeXe9mFERFtDxqJV7X3z9+Jgfcb+ygOjE2GZ7\nfa5SY2ztUqLZxIYak5yTXmNnzvz7jIQSeYBH0sdG5Z9qEidEH2B96NMT4UP1\nCUe3ZSKXH8vWH/LGRoDNmFffv6HfOSClPiMmbIcphYCkRNu3Hg+NiAD+6Rss\n5hzXVA7DcqHRoiRKJiPCrL42osaEWUXvdDbXnb/5FbJ0c4E8cnTKjUhZZK7f\nunEgvqlx23g7Bu0ru4WpK7KZnGGTn+30uXPRbjk0R5tZuBqRUY5Jaahf8EdF\nijQWJ8yhLQW3UMcohfCKdMbkix77vxczHxWsqcsI4dmja55AzUzur5rzPCOF\nBgzW92vwvCMrIUSTebClUre+/q/vbVz2YGOF1yvX73TPjWjFHUx65wCThea2\n1IItxN6ZQfAD7zAAMPxOGuAO1+OCJB9PaG5tucKNFMEaNkGlS+OSw5YvZZSY\ngcpgENJ6ArI+EfV4ec6tF3tFruFRr3OxFoyoR8SiM1v0ChcPueB4LrDwW3Pg\nRn/hEO/VDsOOKExx9FSkC+Wy/+Gy08le3tI0gLsAZxTO0YsmlyJlH5FPhrt8\nOyeuSXdhgqP5JQQzb4AhrUJaiuVZoiLauymQ7PCMzUFghHFVxMEL/OKzKJEq\nJAvd\r\n=yZcP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb8382d077516be7998da62f35dc45c831345f8d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.119","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.204_1621192197453_0.7139606197719841","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.205-renovate-non-major-cd28ab84e41c42c452bca2fe1294c9258ba6df95":{"name":"@balena/jellyfish-test-harness","version":"2.0.205-renovate-non-major-cd28ab84e41c42c452bca2fe1294c9258ba6df95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.205-renovate-non-major-cd28ab84e41c42c452bca2fe1294c9258ba6df95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a5684f7a8d1490e15e744949b756afff4fdaa316","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.205-renovate-non-major-cd28ab84e41c42c452bca2fe1294c9258ba6df95.tgz","fileCount":24,"integrity":"sha512-L9FVnvavcW9cbQbYCDjzWdXyoPyNCKzJp5r0e0ARvWnZLs831oi0hjTyK9F57R2HzHQTAmc3iYwgZzBwitsp0A==","signatures":[{"sig":"MEUCID87cdrRKlPnxbj6/uOOytI4aVfMNa0cLhOH8EyLPVJsAiEAsXsBgC5YAh6P/MsFZVBGs2aKOj5Wr9+hCjkQnoV65eU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100657,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoXbeCRA9TVsSAnZWagAA/vIQAJV4Pn4WfW+TvuIi4Ng8\n7yfEOGm+Tq8b19ad3Ruwx+ZvjSXGP/eBwZrCOLwMTmu+4bfm9HgmAWSZRBnP\n5dTiqGh3U1e7PvH9bTDVwlidR86baQn4oQ5g7/q0h/8kL9pyG0yhWb5/tutO\n6FpJ8YH1BXETsB11lyJ3O6jx1VXHK7UuiGdQkHeK5uemZxuJj1wqdymAWnd2\nVUm5d8FW7lkZosUAQXc0+x+sZt+MmR+5dlF710KtmCXMNqUlgKirh9SOIYKW\nnIHNKdjtznkaibHo/bZE5XlchXt7DuLoM7+gb12OSP9d2081rjBVD1lgct76\npCV/F1kx101KlCBJsj7ZT1bG0V5l/1atnTAftkhy2GEnK3S3VphIbRmLuOiv\nwpBIOIZySKl80fwtjcVKApsn4FAooa2Y6qrrJNoPwv8eB3OperGvPcSnpdUh\n7BF2VV+h5pWKpIZLQDVxRUsCCtfjVRQtdsBvPOcNmqj2rj0QsXTu8a7sRt1j\nXW4A+rjO8NWLvftAOhdj+4fie9YGwyWupiFNJ4buffcY4m2K5Qg6Y4ca2oja\n9o/3i9z1sJXZmBe2rtxvy4XQRsCLpAjEf33xG/pf9HPosHnmoiBgPz73G9mO\n6GYZfxobScvOLU62NNmmsx3Oqz51cRfcIJzxEczFJcOc4Z8GrGDmUXdSFQGK\nbUqi\r\n=Qjii\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cd28ab84e41c42c452bca2fe1294c9258ba6df95","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.120","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.205-renovate-non-major-cd28ab84e41c42c452bca2fe1294c9258ba6df95_1621194462124_0.37911802573045117","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.205":{"name":"@balena/jellyfish-test-harness","version":"2.0.205","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.205","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81e8c94233adedd0db7f5406cf096ff8a3538435","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.205.tgz","fileCount":24,"integrity":"sha512-faeHuX4hwKmwtafPQ+CsrnqNJLVCRTkvHEX0HEJxJeXMdez3RgKc6lNf2NC1I1LZIsLwPu78HACjRFnHruBDdw==","signatures":[{"sig":"MEUCIEJuFlo9tDYoM5cdiillW7xWur82yCgGx33dKFenqM2vAiEAqtGWEG1VycTRJtTciFdGk1INvoyHj2AAjz63QHG9wXc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoXfLCRA9TVsSAnZWagAAow4QAKUllaC71exzlOTCoVgs\no4RG5hZj4fXHawgxdlnf4fKf7ii/xDI/c9IbxumgQ7NKpNrHbydi7feLbkf6\nudJtilIk0CGY+0RieUoAKO4u9kHg2ZYoJbfaUA6fZKtj4oedHANEplbElbOD\n9VUjDJ3tGMd5Gx+2kl7JYytUmbOBcqfr22R2BTv0aU3AkZpLts4GylPwOX4+\ndncdPULHD6mUQ6vEKXrFyliPvbYa/LDhrLwsuypzJu7xxe7eAElWiyZBe5H/\n4i1ucqAGzZahktMc/kqkWMiVXZpN4VEPuQwTkXel9guKyQIr1MwbHkTrv38b\nSMxpKBjnQkYgsEEJ5M5VjHT7Z0+pfvdwy34G8N3mYMtAsL20QmmKZWlUVgrQ\nSc33tfPpeMYhtKB7X5CgKutkL0ZUsZa9FEwCFdBFNN350US78BkAz7i7O4eE\nq7UhIvq4Mk9083kOG2oJZ7oJznxThu+fGD+v/tYHuWpHyslnKaJi02rq3v5b\nOpMvVaF1UOiGGMOXpXkLd0dG0sK704riCeaWbrfkhqCk0K5LPokKoPa777wF\npBURIGaovw4lQ1HgCx0tVKdC+FVQINlsOt0FmkVqiKvsEe07pcek8bNyoVDh\n6K0OK9jbH6wqFDjP+baI0XPDq83KiEZOw5UgvTzL0USnqQPADGYx9INzPlNh\nimJl\r\n=gXj5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4ed0a1ccfaff8aebabae97fdf9132ea9c9a448f3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.120","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.79","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.88"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.205_1621194698534_0.608207757000994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.206-renovate-non-major-84a8819fea53ec8780e1edaafda587b4cd711f06":{"name":"@balena/jellyfish-test-harness","version":"2.0.206-renovate-non-major-84a8819fea53ec8780e1edaafda587b4cd711f06","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.206-renovate-non-major-84a8819fea53ec8780e1edaafda587b4cd711f06","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0d61157b80c58e857c64680847b743d6a29d012","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.206-renovate-non-major-84a8819fea53ec8780e1edaafda587b4cd711f06.tgz","fileCount":24,"integrity":"sha512-2lJHLUaD+qZ0KDkmLme1BHYO4iKUyorjnoc94lmr0PD84zb/LxJykZp19GFql/lxF680X+Oz7O5i7lcRUQovmw==","signatures":[{"sig":"MEUCIQCS4971IVLc7KazvYWw+H/i6Q3baoumdnvhLNXBGxkPbwIgdMYfcVisRqm8V7R8LJNn1o3ZkdEMx6fU2czpFhbNddU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgokJZCRA9TVsSAnZWagAAs6gP/i1UOg1uOfnxbUqciPB8\nAKB9mS8JXLUww9wGxBzX4lluXT7OwI2TV2nhSnto5C5ukgf6r4X0+E/PVGLL\nCViuo21kocilDfrSRInfnwU4y3OoKbyPg4Kiu4QZMWJ3Shi22wZ16miyBx9x\nMC+lOBjYUb+/TQnhAW4qaNXlwXnt47g7B3Pc0b/ZzleyHbvmDLPzf7uqy/yX\nt1K46qKwlXXBRwBBj3OM9qYhwlt7iPHCl1zj9LCk+Ju5Bch23NsEv5BGVouy\nPRqVKiJV9F2XBHiNEjeevt1wIMkCaGw2O9/TGOj6i0iN0Y4kHst29JjhB7WT\nLLYcu6fcp4tT/sR2CrWZ2hqaOv69G6die/AAQqvGMOAsP5MdoMBu0iE0RQyg\nNf/FO6dZ1lktNuzTALEVQnpw/m4x9iC9uCTNVGHE3ynhS6yx3qQzJ3tTDq+H\nRw6Ed7KfwxYB0GFRKP4ur61fpZUmzii/svc9+2uISeldvppiBAwcP9h3MPZ4\naE5lmH0E/fPxyhWHUMV0Sd6iSZcmvhjVDRYGIvXpAso7Dn2XIx3SxfWJuey0\nwvh8guhY6DKOkW0Ns2IyW0qks01Bd+Z1vOTZdgQWiTryjOgnuOie1HTfANjp\nH7escARNXvEbbNRGRDN+EOpIBpY4/zmwyhTcdmnKGfgGnLse6lDyZqY9nkHa\n7NUH\r\n=fCRC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"84a8819fea53ec8780e1edaafda587b4cd711f06","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.121","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.206-renovate-non-major-84a8819fea53ec8780e1edaafda587b4cd711f06_1621246553048_0.10424528960751722","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.206":{"name":"@balena/jellyfish-test-harness","version":"2.0.206","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.206","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"72dc7a14231232ef78ee257a0022b7ef3732550e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.206.tgz","fileCount":24,"integrity":"sha512-ZDF2J4ZjX12AY2hAph5fsihHlL4Zw0dlXJKd/UihBkWnycGiUWiKRBtTVSTBj6jwkhkKZkd/O2sC8zB19SWKrQ==","signatures":[{"sig":"MEQCIAMa14itXyjYfZH0jQbe4DwCTKpklJaYbeltG53rV2VtAiB5z4ke13DVwI8AyF9jBiELNjiR29w9xnAF4RZ5A4uSiQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgokM6CRA9TVsSAnZWagAAn8UQAJ+6ZthhPQba3avVxUxL\nnayLoePBaqm06HZyhpHiuzI5GJW4HIM/ee+oLoOKKtBi9U/zgJkzy5kOzynP\nVNitCpWXDaiYThhlm+K5kOpk5BYfUMibV9cwNcstylMh+RFY+ZXx5KSSO7Mq\n6GF5WdsTzDLvtiVK4uK/JvKqXYPvbsEI0x89o/xiqlY/GDH2eX7jXcszTXJc\not8eIVdKQPbFCCib+yyjE01gFnj4EBQS1nh6w0S8kFNLlUeFQXoiaQ+N9plo\n4EWT+Js7hwFoFVfSJhuBYRvKA+1ArrUevksb9QnjMXdBjnrP69vtm/zH7Kx3\njpuYjWewfaYFY9fhqnKyZKKchrula4AcUuT0GjjpjsaJRaBnVmI+MGR8p8WB\nFzG3yPNE3kKMWv7Gvpu7ImrI4wnbtHJ/Y/sDsrPWjSZeD8qK2VJf9rpgc62d\nEMNHQsPCM5eHbV4EbRyhmGdrM0Web3WQ79Kzv9TEWpnpt3ss//V9YVvo0HDh\n9NBh4z2DKsVr2QRmRe5CHuZgdjheaol8xNLdGktTNrEGmIOl1ULxs3UkFfLX\nS70dz0RjohAMlzSfjNX63wzStIfrQ0fnpHuuAHMuxlPsMTWdij1duIJDWblM\nCJOCGCjLEAeiyyMaEVfaF7sU1xZSo4FGUewHz7c9Pl9p1RKVEdR3fCz3gXeT\nC6ee\r\n=gomw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"99afbc5e2d9d38aaf5cd3b07463b6dc0f5e7ce24","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.121","@balena/jellyfish-sync":"^6.0.161","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.206_1621246778205_0.30977312933184176","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.207-renovate-non-major-bcbf9852b825d63ac9fa62d35b037abf860623da":{"name":"@balena/jellyfish-test-harness","version":"2.0.207-renovate-non-major-bcbf9852b825d63ac9fa62d35b037abf860623da","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.207-renovate-non-major-bcbf9852b825d63ac9fa62d35b037abf860623da","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0009d90aa8cc5e5e86d946374abea2775030df09","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.207-renovate-non-major-bcbf9852b825d63ac9fa62d35b037abf860623da.tgz","fileCount":24,"integrity":"sha512-fp87WCXoaT74/SUVZrSDBpOcmvv+1vZdytYhPs614pEcB+EJggxofuiPQyTF2Q7JMR7CVv2EzcIjMJ6FW6ndCA==","signatures":[{"sig":"MEUCIQD55fGHXVy94xhfbbrMVZgEjBW8LjUxLxOMFhfGSykAvgIgCeG9KmMFUiDnDOjk0PAWoU2r5JDKqNn3OhOVn9qOLMM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100833,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgolvpCRA9TVsSAnZWagAAlYcP/iEK0HY7epnstGuVp6Vh\nYFDW2U0QurliLSnRj25pyNhpO4C4g68fB7hrY1EPXpMuYlAGjHi5vgn06d/j\nQbY93krP1w54CYNx6r2zV5ZXS8HSa4r1+6pCJzo4dMT+yV5uu9EWOWf9Bc6p\nhXQswaR10eU3ZtTEGJKH/Labh18DK3G9EDQZ82iRuW8Dhyn95qTQvKvjTfBR\nUG1Gcveo+HQr8FWpcl/tlZlXjM+JS95bVPVhwfxB0RWARgIkgMewxTsD0clK\nHvXh+svrscKAoMWQJXR9nJRvs0/1kiDs1WSk9SPBpXFzFCIfnIRO2GpTn39B\nI6S0tDJPFQjVU/YN90RIN2skujieSG8eZe+D/USy0HCdhHcVUXBqL1cJ+Tuy\nK5RHvro3egycnYtyboCoXvv90X3Pv+7EodOGqv5F7hO6eGMSML9ubDecibTU\nTnugbqvmevV7sepOg7WmqnpUZVpVdtvAsPEa3AkC2Wl+IsyML0n94sbSMuXA\nvSZjZPW9lxpD6uWSGhfHBj0uRqVd7JrrFPElrBP4oVxO31ORPgrmajFu06Lj\n/VEbHDCEp/RC1W4/Huh985mXFG5o3XGYUhCOnkihPQNHgHmWWh2X5EJROM6R\nyTC2NZ/VxThJxNOEnNJrc+7O9KxilcEWShSJtOWNuxC1G+oircnXPhiDCLNt\nKn8Y\r\n=U1GB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bcbf9852b825d63ac9fa62d35b037abf860623da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.121","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.207-renovate-non-major-bcbf9852b825d63ac9fa62d35b037abf860623da_1621253097018_0.13543285670090066","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.207":{"name":"@balena/jellyfish-test-harness","version":"2.0.207","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.207","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e62d4c4cb9d2a97aa3dcc095521a4773f4b2c578","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.207.tgz","fileCount":24,"integrity":"sha512-2DPK6+ES72Rd+3QR03fhviP/UoCYgbGPi2fMwNADGOcFeotWgpZFk3E5y8rCkPAM+PlK1Sm/FoZAUvZ2CxxgcA==","signatures":[{"sig":"MEYCIQD6h/Ke+D72x9vRBsxkEdw4ycrSWS6Z9dXM5X6Yprq8qgIhAKxb5p4+ET5Z8avHUh54h5QiXWDo7YdaepHnYYRBUJLz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgolzNCRA9TVsSAnZWagAAxtoP/2o8odYFKYBhCta2tD4t\nm8vGc8Z7/g+DtOHyRAbcPNB3Zv8QcZG2ct7VLostjga8WQMzPWwHkdSl9bsM\n0LMviKi461esC2hthYOE4QXejQrXSWdAHnCK5XGr0xBtXyWdD9DRiejMNzal\nABD4ZBi9xnmN9CBpdfb/+N6qrkGqnwNWD9DlTSAXuSNlV4HI3C7BwYfjKrIH\nexQTsqYjtZHgn292acO32oU1ofzogs00yluISPD/GoG44kUDyn3h79my4qIi\ns/lQfnOpDydDkHnDboLplmh6e0VejycZ/2jxAZKX4oSZxcJMnOG9DWoiGHaS\nZ7rdPNa1RLRTlB0tFYyFYYin77NQWFbOS91vFNMpcXFYEjiNSid8O2Seuvny\nLsL4gqNlC1joEhWM1BK2vBfBsU+DLN6rsIAusD45Nik/VFVbs52qptGMwIdH\nqpVf3u58wkMFyVrwjXPBgIjm+5TjEOmk0UtHjbgZHRWcEfQwmcLCIeAT2Xvm\ncc4+O4gMcfpK64iJncYGwXRLRSpPLcE0taeAoyulp8GBJNIAuSY46bHHmbgC\nnwFSHC9SSM4Myf422OwOyCKd9nyWgZWOxGw/LzyryvCgdMBmNO2lLQDTamNL\nwTy0FElTN4KSKIQ2uVP6FIMRnEjnPNdUv4i2MFA2uUs5X8wj84AfOiLQnpAM\nZqvd\r\n=sLvj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a6bcec712b23edf7a8f3b0c53ea7d5b86ced9ee5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.121","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.3.8","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.207_1621253325321_0.709498242901131","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.208-renovate-non-major-7c85e49d9e44afcabe580c5119ffaba5455f0b94":{"name":"@balena/jellyfish-test-harness","version":"2.0.208-renovate-non-major-7c85e49d9e44afcabe580c5119ffaba5455f0b94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.208-renovate-non-major-7c85e49d9e44afcabe580c5119ffaba5455f0b94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"44c10256259767ea29c265bf5434cf4ac0d57a05","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.208-renovate-non-major-7c85e49d9e44afcabe580c5119ffaba5455f0b94.tgz","fileCount":24,"integrity":"sha512-3VcU/OfC55Ra6evFWtvFe2Yr6BYUZ/JSOu9rRhUBb6xVjrjy1H2TbpTKklUQDpeMX+lNW87m6p9qw4j9WxVP2A==","signatures":[{"sig":"MEUCIQCtxAmdJjNZI07KDV+Kkan+x1Dx09IsIYCshXjdXtlzhgIgYdm83bAi/X9bRrFHaZfWZtm7YzYXD0QFz6q2YJHZBTE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100939,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgookWCRA9TVsSAnZWagAAOYUQAJOeMDC7wxtFUW0IxHP7\nuADJbX38yVcKbcdcu7Q8LmaQmoI6fVqk/MTh853LCC9ZVIPIHSw7wEHIERnV\nJAxrQb8+ab4zVKswp4L5aQFZfUzPrKmwebLV87oX1hXy2hgOcvc7W9A3sq4J\nCI+vrXuEA+VQt9VzvkPSPckzcSWYY3uLn8TXCKhVW1LugjatrXSdLNhC7nBP\ndpPMLIsVomdF79TXB52YHwGtKVY/WqJU8DpIpxIgh7bmj+45ThG2lkwT7pNf\nb+9u/4vEzGZJc9tXRtg2Zf+h+AXUww+3rT28B640aAYPMAb2qK7m/RqUWCvU\n8+vUsyWWxPIFfGsDSXl6UvjaxU0BMf1EJslSnlqGCccyqs2HvbZqr7ahQywa\nhgxavf1E0y0KXnwNyKur3CXbKN0078i5oJJCIYu2TknH3++xirEgpykyfs8e\niGJtySFkkq9D1tVRNt2zH9K14rN0F887VNFwFS3KenONimo85bbFFeE2Enjp\nUW4c+G1KQnCPLVOhdlLUKsepcnCnD/HTmvwAW1ZS7MN++BNGdRetqJ/LE0p/\nRUChtP8HzqrmG0sIqW+E6xdOrGL/j64PBXX8h/Uvg3SiJTdmBgPw79dOh+3Q\nV9/CWlfY59jIovm+DZf8Mrud2v57YRWgr0VP6ztdYJzf6cjGWsBbD1fzIcUm\niA7N\r\n=QqBH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7c85e49d9e44afcabe580c5119ffaba5455f0b94","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.121","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.208-renovate-non-major-7c85e49d9e44afcabe580c5119ffaba5455f0b94_1621264661748_0.38803448927967743","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.208":{"name":"@balena/jellyfish-test-harness","version":"2.0.208","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.208","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"126f03405811039041f93f814b2e8e1d66d3328d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.208.tgz","fileCount":24,"integrity":"sha512-QRs2C/lqLSjKvzYEWGguL8jRJSoPbI8rg8e0Ot+9TkgE5S3LyBfVdWiYeO5puUxF8iWkArxt/+J1ytDySdaQFw==","signatures":[{"sig":"MEUCIQCvZ2laNLRve/GqUzMsW2GsD0SDBDbaZ3SRCQHq7GpZAwIgQ86al14+mdL4ec7Dw0c28RYmSvD/SX5VX+SIc6Rssx0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100879,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoonWCRA9TVsSAnZWagAAhBkP/iwd8ZPbEEX3Rj5CHCXb\n946saI+cBcS3Zjd5rvHBm6l10K+FFIf6X6RRQ6jsq22KdPdHRNmtknNopzcR\nyeKDlf1I9jDBtYAFDIYpp6NppHdn0iGuYDd9cPQi4HVNgOyq28sAQnvCfGzw\nDqsdlMaJSr2Ftw8OQSi6EAX9h5hVTok4os4yXeeGwGqJ5vvFX792MfHRKFBo\nVCtVFIp7nQNqzIReLQFdsRcDFj3YmOv8WHpjJzE+j1mMQgUj9c5vo8gJKzFg\nQBG9Dx/SBBOa4ND073BpKwiKNud8M1SfuHhxr20I2g5Ql5ZxKC4f+so3jWt2\nKA6Cbrj1XxPWlledtPn5LsdeWouiCsut8/PQEgTjuig7S4YY677w4PpbmFDG\nAQNSJ+zywU+sKfcZcguB823nQT4dUIK1w0jmxQZVqK5kgScVjRisZmVLB2uJ\nNTsSfNqZIG0fTvsNZZ1mKE+QtLUa5AlOQ1sO3wOfbzucl6TxlITGFANryYbn\ne9H9bOxr1bo6dhvJadiyyk0moOFGbEPcViLFiLPrhZSQw6V1DwaC51aqh3as\nRfVc6E4yKqdSEzFSuvgHp52pRWXo4G5dk2Z2PbGIauD2nlN8Ky1pSCq66sH0\nyfnIMzyPJMt/UNpA3MAmJo/ZwaOqw+eV0Qe2W6XbiQ/U9GblT9NnhEF4R7X2\nVT5T\r\n=+9P0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b65ba50e1fe58bc5776f0c0dcceac989a7cfa78a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.121","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.208_1621264853728_0.9857988089344254","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.209-typescript-core-c8961b1271d26c693b2788eb94f2ed14e7e6450f":{"name":"@balena/jellyfish-test-harness","version":"2.0.209-typescript-core-c8961b1271d26c693b2788eb94f2ed14e7e6450f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.209-typescript-core-c8961b1271d26c693b2788eb94f2ed14e7e6450f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1faf5d6bebbe888b5e219ce12a659087feaa0cc5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.209-typescript-core-c8961b1271d26c693b2788eb94f2ed14e7e6450f.tgz","fileCount":24,"integrity":"sha512-oGypxM+TkxezPvCRad1Gj1EOigk/RDlICrjhPBNUxQ2Gip+uie5JIxGXj7lj7h1brr5ds1+jISitfufKk2jdgg==","signatures":[{"sig":"MEYCIQDGN6LhfKTKW/VMRGZKUrfEFbGglGZU1j2cOIWeJchRFAIhAKW5JOIb409JH1x3/Uiegm5fV5xGjn66ESJdTHSopoPU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101079,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgophtCRA9TVsSAnZWagAAozAP/3R6aC1tPRUcGQ4OAldC\nV0amtmtXu33xFhKM0GDKkk7jpg6lL3nsiqvTmujHhgci5vGlaCCObG620rf2\nY1UEWOW3XbmAB67rldvA6iYv9o9nwK2YS9d5krjj7NQCFCpZV0vVmKvwI3sB\ngTG3IotttxUPZ1NX5IUgECMwML7H/pVDHhCItD71M62g8G8FR+Ah7DSf6GoB\nlRxtDQBl+4WuXwnO3K79lKUnPXNZ3Sx1JmHVu3Ti1IrppuCP7Y76F5DDW8d7\nuYktzSf0niV60RVyUSz6Z/DUfFnr9tPiqakWGaDQklSL0Pw5tJ66f88dOxBL\n5KNCkzC69AHRKCsZGvJqEmDGCSnF2aDgULVzj59U53YoYcU4isS6WvLHr0mG\nd1w4fJGKuhj/5gZjmFox/kw+KVpnNPadAQEqrMOzXaMYeyRhkhfPm4vI3HWR\nkEWi3CaoTJi17qOMSU+g0lKlVOTgHNfQvj9qISyi1Lu0cSoM6ea50+I1fKhw\n0rKAD3QCk7JKB+DTvkHxvMQG0skWzDu1oBuDI1AoJAPmULQJKNqLLwHT0aNx\nV6bxeLu4hIy+mFEZgEpFOeJM5qLIvkrnTWt6AcOTYjZe88sgWDnwcwbS+L1d\n5efyhVcfPiV2KymyfMIJ+V84snqZ6q4kKFje3Rn9PMRL74AYoHOFyiJdUeU9\ns3aU\r\n=HuJW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c8961b1271d26c693b2788eb94f2ed14e7e6450f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"2.14.0-typescript-conversion-85dfacc7e1415844b1a3480ec71fb9a2d4c30bdb","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.209-typescript-core-c8961b1271d26c693b2788eb94f2ed14e7e6450f_1621268589134_0.8622878954594977","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.209-typescript-core-287b1f4b718a2a9750ff3d25f41e4a5cc522d9be":{"name":"@balena/jellyfish-test-harness","version":"2.0.209-typescript-core-287b1f4b718a2a9750ff3d25f41e4a5cc522d9be","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.209-typescript-core-287b1f4b718a2a9750ff3d25f41e4a5cc522d9be","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"018d4d5564c011eb907ba9ed365cda43eb94f244","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.209-typescript-core-287b1f4b718a2a9750ff3d25f41e4a5cc522d9be.tgz","fileCount":24,"integrity":"sha512-CIeuugUFGuyTqI7MtmQRDIOYh3woSIoaw6JSVBJo2o36cGKsHuvSfQooYq4i8QLby/nNkTgktrjgGSNftms/Jw==","signatures":[{"sig":"MEUCIQCJy5NGlc66DckT42ZE3ZCENWSzRN7k/zJaaRAqmAvEJgIgcimNirey6C2zkfYJlnEplgLQH2cWJZC5q8WM2JxqMNI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101081,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgopqTCRA9TVsSAnZWagAA0d0P+wYyZNg0B51lPAUnPoh0\n9QbTUh7alDMnwBmShHT5wOwTfmd0E5JmxrRKGUDNyE4fOOS704FCJ3YZm69I\nZQy8ZdmHLv8ngyjoUgJxNhiwFsG+1yKlUGb+YNOCrgEZG/ITT9Mr9Ma0d2GX\nZjBzJueEnP+Xu13yY2iq4dWZcoiZqmRiqQCk4WRBuJQMc341zm6nMWu15Yse\nH5vTCgrSsjRSBUnzt7fhACebElvHygkmKsdMyLbnujMVJG66yQ+jGVIY4bvz\ngHpB9+67uPTksk43JCrIruSU/XgS94iS+wdmyhAHOq79aVt6GU0phQpDtxGc\nJBbqgZ4HWQjym8cXoSWqpakduFUY9ZutkZCNLt8B3n3uGn4HxVfVzNmmRNaC\nar+mTBYxc8Km2VQXNxztQ6F3IVHSD8ODAKWMiESZfKBDjSswA/IVJgXfjZqH\nnbJ65q1IxKNgQ1PuXoKzaOs0c0fe4zGpYH0haAjfGRJF9Dna5CyjJ13vS0+b\nJ1kQlepD0EWFzoGMgPU5+2g3Q3HpUKu2GhzYtdTCpsvblJWWTOhldmB1omMn\nF9WTcCpNOMnO+tHYP5DTV+pz7wEB7sThb/oYiVgc6MbIhw8BWthOAkx0igPs\nEQW+9OZw2jKsxKMUuW5tjj7dHiwZmmiGyy/giZOTKcM6yVRx3TP6rIaaGSI1\n1OK/\r\n=PvC/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"287b1f4b718a2a9750ff3d25f41e4a5cc522d9be","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"2.14.0-typescript-conversion-85dfacc7e1415844b1a3480ec71fb9a2d4c30bdb","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.209-typescript-core-287b1f4b718a2a9750ff3d25f41e4a5cc522d9be_1621269138609_0.14040972259861673","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.209-renovate-non-major-69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6":{"name":"@balena/jellyfish-test-harness","version":"2.0.209-renovate-non-major-69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.209-renovate-non-major-69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e4bc83baa574c5eade6c4d4dc439710270571fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.209-renovate-non-major-69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6.tgz","fileCount":24,"integrity":"sha512-yaRn8mJfI/WFMRZSSo96/ODo2LxU9GQI7h06oe4gWxq4A4o+Jo90YBmB3QP7hcVf1kbKLUZ/9mOEHakfr8XXgg==","signatures":[{"sig":"MEQCICjjaKBiRmDOCuKC1wt8tZRZzJc59+rz2HP6+BDvX8MkAiB1xgkKZF9j3UyxMAra61AvczErHkBAaEBZnYo6arMNkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101046,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgostFCRA9TVsSAnZWagAAongP/3liE0Uc3/PsqkVdTqon\ngEh0Zfy2pz3agYL74HAMLiSMbQ1Ff/0VeQqJPLO+TiO7QnOfjd4xof8CRtPQ\nTiuhSOiBFoxEa5/u4LITN6jcjqKyTVsdCwbWvybfJUzLCHMqOVGpFtS2SKa1\nHOOMbTbeX3oXhSM10ATxGO2LXDyJb2qdXotfzvuq5Su6+IQFdQMxC9xuMhv8\nTW5DY3nvYKUd0RrHYeQiitJY7ixZZGLdVeHI0qxveORkOS5+q3Xr4bu+5Di7\nRtlMhpU+oH+AQYQ64D8MeyYB2Vb0U2kZrb8k+/T1Val1YEO6fb7sVgacrVR0\nt9cVu+H2xbJbloN/C1LyNv6rgfnCOtUAbUOgsAgemopAXhU8R0OZsbQ3fT05\nMrVhH7p9QNF357YU+xr4Tof31a1CUoaJC2A10CDwqYIpK+AklD/9DfCE2oxt\nQccl/tbdZDVvuFjYdHPR+SFeWirRFurRVIWNhBaWEAkuGFIBULsXtgkYLa9n\nh1KaN7Fxpsy3ns9KL72tDELuHeAhuOOVgvMB4m+rEhHTv1jziGwDFPsJGo65\nJx1gwDVFgh1FH4XEA0hgJOQy2PEb5hR75+DCsXWaPU+0Cj7oEEBeUgNs5mNY\nhqxRPktN6M2ugR8Qiho17jU1SQKL+dx9dzbeTr/RZqeYBkZdLVfKmY9oAilI\nOkln\r\n=HJhE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.122","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.209-renovate-non-major-69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6_1621281605170_0.1708758472485432","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.209":{"name":"@balena/jellyfish-test-harness","version":"2.0.209","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.209","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76c0c19665ab26f0e56a28f3604f3d6b4fed9e80","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.209.tgz","fileCount":24,"integrity":"sha512-BSmPP00SAXnaoHIdAZSAo3qWyzGi2E2Zgu6SZHCZiKvQUM+lu5nX6MV/PgLk0Vv4SxdpGquNWQfXV2BeImQZCA==","signatures":[{"sig":"MEYCIQDsI7Sx2/5XK+qN0T4mbLL7VYLuEgHVbiFu2heGoI+XigIhALFa6p/+USObnNiNhgM7mWr8H5yFjgEkVYT1QUuPBk5T","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":100986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgosw+CRA9TVsSAnZWagAAYaMP+QFhk0X7vdt2Q5ox2f1u\n/M100MClmDfYTOdvNMlWcthdiVDdvCQWheA2x7NzvzhRGBWnuDh5s/VoN3ac\nEjkLYx4r/5mykCmrkoMTL6hiSMrwLwA38w4EvEkHUrgeIQoBOjCCtjKQ3niC\nbbhdVXbKCAPEM3qdDYRWiKlDWNVKokJ4k1a8r79YZk+wW6t4fkxibhIZsCEP\n4DQtIMC1fhHN0G9yNkyJct6xUOvBb7hK1/Pn3a3va7ivr6fhbUHWYA7coapL\nqoT/4D1kkJUnvRTB65K331tHR0aHL27oqNnTNz0KOKJQ5eDGF1y5dMjVnPez\nDmLE7RYl6bTxA+P16mQvj++wUf/+nQDwTME/aEnpnY3NDijwdR/aGTIJHVS6\nCEzKTDb7ytpPpnaV4w/KZqj9i87NtF4K+hyidPgO2Ou9HmmYEgfb48mBTSqJ\nSGGE6jr+gyvBRNoKFlNEi0uoEou+ApqJLHK15LMXf2bWW/vVuxUioMPOeRaq\nwF2Ldfezm41e7H08A9GWVVq3cvUJsmxzO8h27vF3VTl8VlSJwTq8fyYqdZyh\nzCjBqofTpOL0xFvEWrJvLiIvGBYHiDBUDobCAnO+wkcNBWnd9DMXrq6zlUo+\niR1HbhY+aW1igJdlS8qb9oznq+pZAYR1JQznEf46AZpg1319lzxi3/DTCzda\nXxC5\r\n=7pVb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0389fd9686f7123f84db14d7ec4bdc306ca117e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.122","@balena/jellyfish-sync":"^6.0.162","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.209_1621281853803_0.1159287014226309","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.210-renovate-non-major-b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf":{"name":"@balena/jellyfish-test-harness","version":"2.0.210-renovate-non-major-b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.210-renovate-non-major-b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c69d0fd339d5b1595d6c36e767b72262557064d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.210-renovate-non-major-b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf.tgz","fileCount":24,"integrity":"sha512-O6kCe55AokQ+hsSRjI5PS+8qiLgrfoSRYZvXkSvnMRun5piKRUibo+Omln84dUVB2nyfz9cJrBa5BCUMcSCxrQ==","signatures":[{"sig":"MEUCIQDyOvXssVQ8iPbMJqFaJQijPzoMGPickkcMWaXhJ5pSvQIgHvrEqv8LnWRCCqSVKDum7tGER2/rK6bfu5/2OkP6dOo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoxjYCRA9TVsSAnZWagAANNAP/00lXo+X00ITH5Wdaa8Z\n58VCek8Q9hCCMIloVrLxsIEBbhfAielakV6QaFfoqmnkluKP7Az7yi6oo3YC\nu+ZzsgFgeYJpjhAu5qxNDr/+BJVziQ8EReHEn4x2B6jKKhf1TDn/dNB9/Jlw\nO7nmou3Zug4VrVP+/FH27cqdMxqd4uRVlywlY43MkFlRKxRLXdhrdXfmjhZU\nXn+KDszlH9HSs0h6C5rCIE38omtuvGoItWMmF57Teoji5YvptUNuWcPf168o\n8YgiOsQ/FZkGEpLZNiM7NZUrHcM75uc9voUbioASGJIyzbBnsK686yNcQRK0\noB2sK7nIixUr+JUzn4yj2VW7n1R2oEAyoU/O9ynCJ3PtPfUjg6VWj03Vstds\nhJPclcG38Ck8MN2JsO2FmmeqQIVc16W/tYUE3zaTnX6bJ/KOgPpii8B6lw3t\nBW76Ax5zr7AhhOp/RCOQaVhD7W42io+QgaDWzLWVPK60M8otR+CMrpWCr572\nfd9Nm+mio8wYFOqaxXZkGQaOft0l+EajaUfQEt6BK2HM5MueH8EITIo6Hm23\nBZfhRQZB+kA4/nh89T9DN7gJdns/fQ9SSF97as3ZCsz/C3arQmY9JWiovss3\nSjPDHYDRcGWOg6KJO9uppQtPiRNF/par5Fbno2ZeMop+aFzRdL7k3bfDfnUy\n+wXp\r\n=0Kb3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.123","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.210-renovate-non-major-b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf_1621301464254_0.9495154425098304","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.210":{"name":"@balena/jellyfish-test-harness","version":"2.0.210","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.210","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97540b09c4cd81ddd8e04aa37aaa39ccc2cfe440","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.210.tgz","fileCount":24,"integrity":"sha512-gpg/CWgdOQfet9XKfLrutzXNniuR6hGcJXCJVLcKTv6HVqCUngk0F+ra3puzLFp3L7JywFwf+0bLRroKjgEvXQ==","signatures":[{"sig":"MEQCIF9NhhJ6FG05LTnrvyULYCX+vjuvXQbQew0f8QRqz2mYAiBgmHcCcUmrCUyvjHNu9uxTZsaiRt9AsKFrGhztyYtlYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoxmtCRA9TVsSAnZWagAAEt4P/Ri7PQBoKV/DVlvbv6Q1\n7rA0/KdTZVbTwj9g8xM1dxiF7+RPBp2i8VYKPAX4wwJ/nkALcXBe09Cs+BEK\n7Rp/VoVoZq71avcRgKV2yXls6Ju+8K+cT7VQ2iPkQ1PEyoj1Mc+tboP5XwTb\nR0XKo/5t23h9BEddEF0LTY3e+OsAP/e0A0sKQ7FatV7nvN51lkba/WVXwgML\n89flLZVK68NzvVq8baS1KP9hUSiP8ciBUPqzykuw06FXUz39kYoZc+JJJMfY\nCmi0dix+yDYNEGB6fOqrb7INTWke3LVA6vMVA0IIEPOTGBGL51TyDx/kMSIN\n4ueekip/7ovYEy3VaQn1/mQM84tnLkfdgjl+YCfyxjzvTqvLA8JV8h7coOSb\nlkJisE6Tdg4bwiZGrTHF5bOiDeJYXBpt600cJkbcGGI/sEKs6LxenD7WEJDu\n+6wc0gNTI+iNZQQvkOZAirB44jX1YGzpyGBIa8XchVRSID9zid7gtv6lA526\nFHfiiqMVJ38/rprWBKth0IkovRKXlGJy+WEZCxszVTdocmiMzcNMH1uxvPo6\ngzdFDZAzl6OvsXzvh+MXkU/sS1Mi6Taex28YZV6TKKbMOrlFw2yyaYduFB9T\ni2tCzcZh1X+6PDAl+03uwa/gGNyd7VV1QTsuOzji4KZHevApOxM+UCr5SLt6\nEwPn\r\n=Eywh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bbfc1f5592c037443c991e6735c3b9e859ad8bb4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.123","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.80","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.210_1621301676586_0.44816057036596213","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.211-renovate-non-major-6c24fe7a2086a4249cd36c51b07a1397a8d87e6d":{"name":"@balena/jellyfish-test-harness","version":"2.0.211-renovate-non-major-6c24fe7a2086a4249cd36c51b07a1397a8d87e6d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.211-renovate-non-major-6c24fe7a2086a4249cd36c51b07a1397a8d87e6d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dec0f1360c97a882f0720bc0b1e46669df774d06","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.211-renovate-non-major-6c24fe7a2086a4249cd36c51b07a1397a8d87e6d.tgz","fileCount":24,"integrity":"sha512-wW5cRv/1DhB5wlliujpMdlrT3r0bPLOHp/MP05twoiQUxUmX5K2fYmJ4ifaSC+/fI76inwWTEBXjo/2+A0VLlg==","signatures":[{"sig":"MEYCIQCtuUlONpxHEZB72k8fU6Vzghj4S0IgOawSBxTQ+EgqeAIhAO3T9sm9/ScpsqTT8PHDjNe1GmYXobaC4JmAgBpMmsp/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101222,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoxqPCRA9TVsSAnZWagAAeCYP/iGLdVZ/TwEa9MqxKVzq\nqutPUQPXnwi/jX/mn+FNcez5tUJoRWc8NTt/PtpxcrgbPZyyPGbIJkglCh+w\nBOiVeFgKaM/UA84h7/QzvcsftjAf07QespChZM6ZZ0TKbYrIKSgL7ebRKCQ+\nQDB/SktiRCirEmKIbcweaEBKZh3u5utCHeixT/U5nz2XP6dHmt+8M2ymqp2Y\nefYGa1o9ScY7oygTszog6N+rV4rTcKbWPtoWK3o7KyTh35uW+GL6ScILvXom\nm8QDON+Fj5S3lvrlUIBaw3QhRzxS1dfsPnm3UqGSv2qkDPROoheEofnERU2G\npY6Gn4kjpFZVRA3BU8a6O3GGk474maztAqd0UcSZDaxvxBLIVXvNEpd2gEBf\nw7P9S0/oDOIwKLb9aHluQA2Bhs8pwPe3h5qty33n2etisRLgn2gMuC/ZS5Nk\nXj0JQCUssrR5KM1VDOmPjdfyyQ9B2PwqiJgjF2oXcW89L06HrqCCB4H5xLGw\nLRjDvCkzCYSSnV3sNBn5uPATjOeXXDEa9y9ahVe3Zwx2c+AJlU1NKUnhVCYA\ne8pAK2LRJcGdZ7VpcsBOAnCoBu8b7lLmVYRwlQkqMZ+IsXQpK3fAMBtKk8co\nZrsqZ8wXd8ELiPm/92xa5noXwyfhyPmPAFUYrCNkkMJOLYLd3tAvsFyQ4kUW\nOi30\r\n=UXFQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6c24fe7a2086a4249cd36c51b07a1397a8d87e6d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.123","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.211-renovate-non-major-6c24fe7a2086a4249cd36c51b07a1397a8d87e6d_1621301902833_0.9912292606367954","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.211":{"name":"@balena/jellyfish-test-harness","version":"2.0.211","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.211","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a63039d0556c581df65d0d4e0a8115a6fe1025e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.211.tgz","fileCount":24,"integrity":"sha512-A2xv87BuAp+zsQIEIftV2WVrWrp4dWEMhpuzwZTV7un11DOM6KcqdhynERhzD7XJDn+ZmP21VGYU3stdeCdwGA==","signatures":[{"sig":"MEUCIQDiykOm5TI/3ETCOLXNubkK1mSi46sgS+cLD0/8aJXFJAIgIy3wrzQQ74dtKW3KxdHAOkRYrc5q2qq3s32t3PvSelE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101162,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgoxvUCRA9TVsSAnZWagAA1QEP/RH6N8Vc0QtGMkpckqTJ\nLPbRU7PpQmLbvjLLqgKMWPXn5rmWMfQRHOQaWnJeRIBGeuHPfDah79uvNIVt\n0vwdpevAYjAmb33TTgtv0bDgTue6rG+jhhdVBjr08X0Uza9tUy4FOIUNMl4K\nRGQRfJpsSyW3hvtQ7rsEDwNL18OVymLSWuXNhC8lPlaKtWM3Zqvtt/wElnNl\npZno2O/fU4fggFbApCvBzPMGPnFIiYxFoo8OTP429iGdnY4qo4NFYghdt1qW\n0y1D7iAQd3Rbkf0y5L0FNjOyrzMAv1Po+elhgxbJaSR2uwpMjLz0lRrgBbdv\ntv78FqSH+DmOO7zrTMZVolb0frKcY4NeHcbQlfy76PzWV/twKVIjU1XaK2Pc\nk5m5zNEytst4ruBybce+sxaNGtcrC1HOdQcugd7L4syz9Go9mfcHoVW1Vi5B\nQ8YKurtuw8pOqyR8kvMI1h827tvnox3B8jKlafrVHC0Zztse2kXsIE+2gNUJ\n9nPchJt5fcoRecWU6l8NIi5m4tMCs+D+E3j2zOsk4hDzRTDAyqLkW2UJuzME\nLBSrINFnJB5OlbMyaR6Q2H7+Jyu2ALzGNsv12vizl4WEPImg3evGpLyO+moV\ngtQ2Ddr3DNixZaDiarW1jEKgwtCwWXSG6xGplt5WdlyQvVRAlWaoclPsP3/W\nZyQw\r\n=CcRA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"82aba9bcefd48c1419ea84e8206f7b987ae696a7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.123","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.211_1621302228375_0.6604512414743442","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.212-typescript-core-18dad234db780fab16b59219b18bf6710abeb436":{"name":"@balena/jellyfish-test-harness","version":"2.0.212-typescript-core-18dad234db780fab16b59219b18bf6710abeb436","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.212-typescript-core-18dad234db780fab16b59219b18bf6710abeb436","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"175cbe4800df078c77c43bdee8b47081b617d1c5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.212-typescript-core-18dad234db780fab16b59219b18bf6710abeb436.tgz","fileCount":24,"integrity":"sha512-PdyFXpxBKgo8W+6pq/SvnoM4pELAZAYV8yx/ezqR/7C60X7FQzXc9NjFRTJ+qeQ0VKVZGj94GRe5CQqs5ON3hQ==","signatures":[{"sig":"MEUCIQCuAU7m1/1AEZa/Tlm37Zr23Jk6BeMVC+tFLKOZIV3jsQIgZyqTCxC9Idt/c/+V/e8XpvoXA+sVWZ1TDodAacCIKd8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101078,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgo6y9CRA9TVsSAnZWagAAWjwP/1fh0k6wQIac3QcD43bH\nR4muGP5gXW3b+R9xJG12k2+Zk3MBAs86tSVt5e1/oyGdAsqqtZe9jxLTvVkf\nd+QCeo1XG07WeIkJdS7XGIzvKBqwQBw/JavJBIdzWOa97cwhYO2qdAmvvWkj\n18UQMu0SHSsA2Ilh988L5ckVqwXJywer3Cs7l1Sq+R7TG2XUgSdRKzhiDqBR\npqkd7zJ3cRjADOlkvjSZ+7A52T7SIlp0FHO8Qys660aXSjLJ8M72kEPEFkKj\nE/o1GPO6wOM3Es2WBchMRAe2/CxJ3x6+ePBwfbNHE7hwb47XnKRKHUxxxz5G\nW1qaLoMLeC+JsalfdLe5XgFn2H6qJXWaXuAde3yYhT3FiguxEBONamAVI/My\n6uQS4YcpmnXHnMxE2Rr3T81NMX3zYdiwVt/AMidiqy+lPNmQ9yyXNcTkAPzq\n54Vx/0g+BOLP6qyfIDJ6ZulaU9+cg3WDrpdtJIuyJp/kumKiLgSCFeI2kOy4\nZahHyj4wG3TTzs12fRkIupY6KPZq0/3aOE9D1V7yWaxGAJbaTf+0Jh2QBEdQ\nsggdC6UjG3T+VBCocL6Ca6ueCNhCDjPTvTR1ySPFMvEaLPQwM+0YFATndb9Z\nlBYDksNYS/dJCh/q4F/rKd7WaZudjEz0aJ3XaQixbCzKY+zdnA7RXk59fLR0\nC0gs\r\n=RXFf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"18dad234db780fab16b59219b18bf6710abeb436","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"2.14.0-typescript-conversion-85dfacc7e1415844b1a3480ec71fb9a2d4c30bdb","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.14.45","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.34","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.212-typescript-core-18dad234db780fab16b59219b18bf6710abeb436_1621339324603_0.4722268000221588","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.212-renovate-non-major-f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec":{"name":"@balena/jellyfish-test-harness","version":"2.0.212-renovate-non-major-f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.212-renovate-non-major-f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f4373eebff52c3e98dbc165b1165943014efc05","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.212-renovate-non-major-f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec.tgz","fileCount":24,"integrity":"sha512-3sv+AkmF9QVOvtF35gwtYtPfNG0WALDUaF+I2BlN7OUugkzH2lUo4ZQrxcELyChhmpqoW99bJnAdYtL861JFxw==","signatures":[{"sig":"MEUCIQDkQD7Y20Y0VSnVDnAZcBJ6Q0f0OIcMdt3jHkg4iY52iAIgXZwHuITsGYTn13SXB2WWazbYfMdeaxG24Q6e7Di3Oyg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101291,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpAfvCRA9TVsSAnZWagAAaRIP/0+MSlSxyJQBLq49iUfz\nfUxpcLpWZNi99NR5YyDAFcw1JBo0XNKVhHpp+c3/tY4izidvZd/uXz+bcEIX\n9KAsHsluJbzSD71ljKq1fSOTQM8FXZdv2fq9+gjGN3u1II1R4A60RemqcCqr\nWUPjI/pTEZBW4JYGkm4xD2EoUEYicOdaob9AF0mXUsbSd88U4WTBTRYsAvUr\n013sdu5C0YWgBde8AcsQcvfqkVigN+0L2O8BSTF88pkFOq+IvSduIlQI63IB\nIDzL2PBHvnOdw5RokUQ8jlxqprXEMgJELyF4ihO4JwbB8U0Rv5UQLjsQUzS2\nV6XPYc1ZS272CO8tmhZHmyEsEVw0Wm/tLhxlKMMUhUZIpQZKM0QWz4niNTt0\nnZp/acKNvqi0GwyFJkwVaN4FVAH73j4HrCuYJ8877QKDHEU8DkdLciBlTr5Q\ncyRDg/ArQsINcOHuBzFSTE+pZidAMVGO9L6oJ6TYiKoOr4qgihpx82VaofoW\naD/NcTRNYAN0QeU3B/w8URcvNKzsI2Mj+WxJJbhQroQz5+xV/x9KK+Ameiz0\nUmHeCOebn/04xS4b5E1QIINkHNnVNyQQsgEaD2NONplSAGrDtvphkqEHJSGl\nl1dOWmEZp010XxHPuK88i6XBr+ArvBCaDdERM8jCCM7FKY7ry15TY17vIJsb\nYwzz\r\n=3pA2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.123","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.212-renovate-non-major-f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec_1621362670535_0.1857887135796663","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.212":{"name":"@balena/jellyfish-test-harness","version":"2.0.212","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.212","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c640a336b7b6d0174618ae3d0e88d0e490c712d8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.212.tgz","fileCount":24,"integrity":"sha512-FqJMH7Os9x+f1cD2xODxicw2KBHVxhMC7LsDpSx2zUCUZVnI6hAtr9gwfgYaY1pWvFeHl1VgjrowYSIzqzAaNw==","signatures":[{"sig":"MEYCIQD9uIVhHFjhIwbIwxUogxFP1dvZGLu62btmzJJ0gdygOwIhAICcsHld0Xe3CX+SZJWmEkMI1ZWToaZ9GVegSjVlNqR2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpAi4CRA9TVsSAnZWagAAM3UQAIWKEB3pMGevLJADKrx2\nH419rssxYaiWABaULvGJMPSL0BsS7nknxcq0lbWcRVBIRS+SAOVUtRoKRUSG\no1jsH3CFwOzJps5z5Ks5m5gZ5RS+MDDivBF8i4aedLJcrPpSI6jxiIEdu1w5\npXECXM7f7oDmBjCqWFwtTobWnp92OX5Q9FY6qs3P5XrBHNpucOwtsljOKNgH\n/Gsujx3l/LFbiwQSeCa7dkETcYrd1JTPcp+I7xdv4Cy934D+KMZGBaFNL0ft\nrmoAgKbynRGgbC4Ll0UpePUKHkkGwvkUl+N+AZxhOPtHyxZfgoGeRwRj+XFl\nvPKjhHoNQDk5Ra3JqmnEmwqJLsjZRd7hD2uMHPBIlKl8erUbua7z0Ugsb3gq\nDrSFUlT4LPENPkTpChtNGAs0zVjeyux5JUl+7IGr3EwYVNVceYML0GRl70Tx\ndDzgJ9//rvl3QPnR6xPQrcq/HZfxGcfnIZOYwBr8GXWryADlBOyFFNL6lKxs\nK2xB/to6fDebrygGjNjSM98F0bg74qqNji5CJYkD5WvYJBlY5LPi4wRHgmly\np7odrpz9azlhTDU203VFS2IJMl+M7eScrNI9dMSiG879bBuxoArOtmz7jSLm\nwl9dvlc8fbdMDWt7d048V65IZFCOk0eEwFx1I40L+FiunJElyn/xIyPLvsEz\nioz+\r\n=yEpl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"10b53ddb655dddfa21b243da28f33da99a5ff96e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.123","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.212_1621362872166_0.7768339494611083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.213-renovate-non-major-07dc88d1780146221c99c2548c5d796f68f58f4d":{"name":"@balena/jellyfish-test-harness","version":"2.0.213-renovate-non-major-07dc88d1780146221c99c2548c5d796f68f58f4d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.213-renovate-non-major-07dc88d1780146221c99c2548c5d796f68f58f4d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bf8cbab217392772e9281ecd0daa345e7d7a08a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.213-renovate-non-major-07dc88d1780146221c99c2548c5d796f68f58f4d.tgz","fileCount":24,"integrity":"sha512-Fhno6/6/Wz25zO9FboxEkRt46iBt/uknByJvyhZlkvNsoSNp3AhtU0P+F6eqjnjPNJFjFalQUku8LZWyn82Slg==","signatures":[{"sig":"MEYCIQDQJrA20uSXvk/SFXQTz2XWnb4rUZxbIwrg1qItI0eWfQIhAPPPAHUBx75Lk3Kdngqjs/g33wihpCa/3JCu4q7Q5wlf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpAm+CRA9TVsSAnZWagAAsPoP/3+PfeGt+l1yzaHR7CAa\nhrFUrnxcuqdLdQvKL1R/IbHdQ3X02ayJ5c+pZ0lCVdz1cJ1qN4tyTExMtfdU\noj3FwuZxf8hNQ6BkhoJjq3W7uK3ApsFC+H5mpJjm4qJfQmoExQL63+tlOf60\nY7yCFqFfF/Gsz+/0DnI4Zlw4OqLPK2v+hVS7n/oo7fsum5KK9JSgQMIQU4g9\nWNIPit8HqQPR0SfgwaBvIA4Kh+85JXWznCqE5HB/+d6C6uSWJ7A0xcj0U0W3\nDUBqQAKYCC54Q9FJ8yHIu4AQOq1gKxnfnCFWww4nBaxsRvWBaijEBQeyIEc7\n0Jl6Nh29ZIQY1EO3shMIBTFEEHKeG+kE8ZDazQecTAXfDFPW8HcFu0NtnzqR\nt9Mnz3cZwEXXx6jQMaDObrWh9pQZE91ujQvZLQ89SIFYgPUVX8dNmlShnx15\n9Zhwr+Dj/pqsF7Hkz6gTc49IG8hwPp68C+Foa3TjXkI1DtxrnUS/P3SsRbZE\nMxIJLuu0V769MnMIV83fCuyasx4OicOb3QGLx/afiu4EoDSwZukrOZPXKsSW\naAyfMqVSilq7aLqRhul4iPjpd3yDFKDoaPHs0HKLpVQXTxWoQ0uUUpfkX3S8\nh4ybcLcpsWORc+TKf9T6DwAkcLMIpPSZZFK6dJoiqVpQCZ/9Be6ISaYGlIUx\nqV5S\r\n=wBWZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"07dc88d1780146221c99c2548c5d796f68f58f4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.124","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.213-renovate-non-major-07dc88d1780146221c99c2548c5d796f68f58f4d_1621363134349_0.5371751435235379","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.213":{"name":"@balena/jellyfish-test-harness","version":"2.0.213","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.213","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"37d3285f479912847be20ab1ed790ccd1a362390","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.213.tgz","fileCount":24,"integrity":"sha512-m2f8yc1FHnmIwaicaf8DFedE93XuK+LC5yZ/T+8b7YAhbt5AFHmOa+97j7fk6uX2/OQRmU/JjMAzL6+TQ78PAw==","signatures":[{"sig":"MEQCIBn3G8+NVu5UublgIkdYg/C0P4RLRwsY/HG4pw0N96/LAiA/QxW3CpLuwoAc9LiBA4zclcwfZh/aNJze2mTGbJBUAw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpAs7CRA9TVsSAnZWagAA9ZIP/jzbpPfv/G9WH2I89lYm\ntHtVQaNaHBb/7gM9QzY5kmO+JnD6nXEQtOgYYgQfnW0ULhXkrQ+YWrscF5gg\n8W8poY/eWM2P41/+EcbSYDw2o1vkFErnkcx0zZQEiwGoKcM+1leqPfsSdpXA\nDbavd3+E8IeIhYFmyuSXR5CKXufYqRl91BA2SJ4gOiPQVMXvM8iWsnp3YZ8K\nOhNAf0cNE9KdCmC6mtqBkEONAp6tnU4qz4GalkYvprrT/MhBNPKpJxluOHrJ\no8yaXONq0u3ACTIpA2wwzWPvLUKwGI31BXsd/SGtH+lrw5Ae6zm5fgOJP6CU\nOUIvPhC6i4+1oz3sa2x6nXeuqhaQB4TTppbSg2K6PY5DghNFVelo71JfJcjr\n4/6A3M/S5mcLZ15FsP4g0KH1WFhneIW+vtlzwZeTOkjdAVtf4KVABXzTCqHQ\n/+XmxwFoAdLXpNf9necbj6lEPTIImvblIRp0beVMWBiWVhWZN5box/F4wXel\nKG4Ffk86T28gRdGp0w5RVmgrUqiXa3hIgjO9Bf0r8pDF/TTxKWthGRoFUmMS\n0GOQ1ECegBC+ucb4jBUa46fzXvANY9pkP9WYG8HEwJ5spSYI8JEqyJSjc22E\nuVM7RUfaaFXl9RU22JMWMSwpCs/UU5PRLnFnW5+ODqdmB5fKcXa7+cmV1wMJ\nRYMA\r\n=8t5x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eb03faa0aed608ac75b8f11c7616250e09f35ea0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.124","@balena/jellyfish-sync":"^6.0.163","@balena/jellyfish-queue":"^1.0.81","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.213_1621363514645_0.7767772714803356","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.214-renovate-non-major-6ad602d1b6d50095e33749b1da3cd10c444a79ec":{"name":"@balena/jellyfish-test-harness","version":"2.0.214-renovate-non-major-6ad602d1b6d50095e33749b1da3cd10c444a79ec","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.214-renovate-non-major-6ad602d1b6d50095e33749b1da3cd10c444a79ec","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"605a723a0854298c865d062bb21803d494f03938","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.214-renovate-non-major-6ad602d1b6d50095e33749b1da3cd10c444a79ec.tgz","fileCount":24,"integrity":"sha512-DWcJX4hUW92jNwQqvSqnn/jxoZH79I2nBdTVeOYAtTB5TkNEN9+O/kW8PG+tYQb0QYrYLnj8hnS/E7tTjGy6FA==","signatures":[{"sig":"MEYCIQD8AKxKcEIvcl46bcl/WS0dZneYENeItjbFYD7jUEp+6AIhANWZ1YY6TsrsGkNwAyce+RGFmDSEKHvJgzyH76M1dbgG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpBmYCRA9TVsSAnZWagAA9sgP/28dMQKKjPoeHokJZKDq\n84oFburpSyuZ2sS0CYxOGJo/87wR8O+iZQae3MLYjbBZ4+pHQE7M1IZGUbr2\n4G2fuqVmZyYt4XpVnxZAViK3sdoS+OXXOGZbx+PnzQrQq8EtSHAJAnDnM2f6\ntu5G44+KWRMCffnNCGnWRGv3Y6oKxM7nzke7BFnqREzzYhWYss++nMhWYgWh\nBwQtgSEEkNZwsq4N5o2YCM7bcih1no84ddnAt4NxUDAPtNLmNby4tPtBKIkF\nZ4gQ9ZaGdJtDFshZ9BGnAbGkiZpTXv/B0D0Gz8B+oJocxp62F7m44cb8HPOC\n11fcw1aUx0Jx8vXvjXThaDkLnRtUYFMv4LzOoPiEOHpIg/SeIMs2tsP4/O+H\nANpE5L3OonsN6PAChlctCCyGv5Skeeoi9G125TLc8S+T6l2kOLRX7I0oTVU4\nlo+JV5eQnUHT2qOP3fx6DC9EDzId6OC42Qw2rEdkmMMk11IYxdjVNlwILSAM\nkOoHd0jwXpYkGZCt2DhhxSU96Wv3iJFP+b0jWFsCxg6RQF77uRdJeN+iNV1L\nXNFjPTob9F2k2656rXK7EM7eJb2MTgk0O+upZpc0c5OyqiTJUt4gDZiM6Zdl\nrGyJac44317kF1ywJFofsxjluyGY9cj0eC5sRlWbOEAPGphiWLR09jCBCXne\nf3st\r\n=9hlP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6ad602d1b6d50095e33749b1da3cd10c444a79ec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.124","@balena/jellyfish-sync":"^6.0.164","@balena/jellyfish-queue":"^1.0.82","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.214-renovate-non-major-6ad602d1b6d50095e33749b1da3cd10c444a79ec_1621367191921_0.6141440081372982","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.214":{"name":"@balena/jellyfish-test-harness","version":"2.0.214","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.214","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b62217802473d732900994b003e6233643975bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.214.tgz","fileCount":24,"integrity":"sha512-ZfYPXMZYlFbUJTYp9mmxaLx1ilrBIcN9UBsD9tUi59NM0N5sA2LxoQ+/x4oW0Yh03bUIGucnYvzT6IwOJL/XeQ==","signatures":[{"sig":"MEUCIEuipq1xYRCyNJ9iwcF1wQvuBzsPnKW6ZYsge2afwAZLAiEA9BzBdnv+7NEoSxW1PYgtGw4oaygn/a+w7lBfBmZqYmk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101408,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpBpeCRA9TVsSAnZWagAA5fcP/jqMvit9Kr29c1UD9eN6\nY43sHuz7I7npf2j8ST+0mkSJ+9Q2VZM+mW6ys+zfXfS76OnzXa1os7gBf9iF\ny+OGWbV8/w1rzfOA4daVdczRYVm7mRf/BTUUpqedDfr/QnGbrSnVm1JNb55l\n+AOPX4jzGEEiNKgvl2iirTaLUXl9eq7wNFycpJSp3tAD58G33KJ+ZJJ03zs6\nRdLIP5EclHGc0Dli4wreFHKg529Qgj2MJFpT8nRWt+NcKeH2ekP1iUE04SD2\n1rEdE3uU7R4xYU1wX6hDRo8aYLsB8fBIJ44hN2/Y7Nnk34hHPnOhXZQvKyJ8\nofYdQproI5kMMT+4WBb1pZDC+1cnS86rqL0zRzNBAyFS6RgVtiJx+mwMf42a\nMi+/UyX2nrbbOqRbOliujMXzCH0GMm5+HYTPD1iTwcjpAnGmDTRozIDAV1tq\nIJ7p9HyizJT8UZ2z/Y20o2aDVoljYym6tj8mZOcJjnxt3kJ8vF+IoNuIs+Uz\njw0A8gCNUnKSx489zYGpAAtAckuXc/gzQ/JJ0bxQADZNw49+aIDWpbytKwbn\non7T+kiNe6QoK/vkAdoz0KNP0l8ziIFB+lVqXFDumOGI/pXcBuICmpr1lvfh\nag3jzxLFb+cTGb4NCFHGfLBjKrLg5lEQ1nzIGiRtGWoB5fRv7Mi/DSAzEoEo\nLe4o\r\n=Nxva\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"943bb7e4237bc622cec4a685ac0a65fb43b779fc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.124","@balena/jellyfish-sync":"^6.0.164","@balena/jellyfish-queue":"^1.0.82","@balena/jellyfish-worker":"^4.4.1","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.214_1621367390048_0.7456913428522285","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.215-renovate-non-major-3d20dceec247c880d98ac63387a547ed577f80d2":{"name":"@balena/jellyfish-test-harness","version":"2.0.215-renovate-non-major-3d20dceec247c880d98ac63387a547ed577f80d2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.215-renovate-non-major-3d20dceec247c880d98ac63387a547ed577f80d2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ea3f4598c6d92eac9b2e80e00eb040579f59bf0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.215-renovate-non-major-3d20dceec247c880d98ac63387a547ed577f80d2.tgz","fileCount":24,"integrity":"sha512-d9/iUDr7eBTgnNM1Z7VYGrNBI6UWAuQStbWeosJgU1Bx3DjbgEgzBltD/pPf7+JGDRmfrieMkDqCBmT8HaZZWQ==","signatures":[{"sig":"MEUCIC30ZdN9Ix5on3W07p6Wtm3qX8ygLY9VMXu0oEiASy0YAiEA8I4q2OBKoN0olh+kWf1RrjrBxjjUqKeKUBNbqQW1AKk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpFtHCRA9TVsSAnZWagAA6mAP/RofRrB836E+UXwHt9yq\n4Do5uFcrfwe50OwkH+kldh1n7iofE6phSiHFJnzRaKUdw+9dQRjF1v3kkwEV\nUUTW9aAXBJsgvSv4LHfJW5T2yQZ+UdOCqnHkWeHAC8RvL8CrKWHoUa/Vtjvv\n/y8K0CBiBpIEfsWkFAQIoThB1XPA1z4AUtfkDbNnwy8sAehSMc+EpHYezNg7\nK5pUu230mu/b7EPRvgpzAS01z9d3TRnHPJrfTsO1bHjfLgnY9i0dOOXuLdBh\n8w73KHW9TXivizQiIDxvQQeLZY9CalBoaGZnmHor7ET5DvNzEEGQdzQQ37x6\nsLvYs8QE7YIGkxevp26nC4GT+mA3J5gzuCc4ZB/drCuf4rLZpTniudNQcGw3\nDD2tgfDa/0KtFbie7TDXwZgjc2kxNRkhrDVF1OWSH0kTPSXHyqZG7IZ5gpIs\nHvV6/f5W/q7LE/tguNnARFvhvDmdLBmZhMsfWjuCYLj3Nn+Qf1NAB4pq0L/6\nHX6S90UsWjGPB45ZF9VGRmIi2V5URniBy5eyt7RJuv5AgvdGtiQ3J3/LlAG5\nVHiQVRTBf454rQVk/JlYzU6vjuKPxE9UZXoF/+UMFcW6KKkPCeql6tvQVMxZ\nv3ediM/Md4AfA0H96w5uf+/7PReMKqprFxMBqK/XufvGaKvPZ8IVqU4AuJ+K\ntNDl\r\n=pFfv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3d20dceec247c880d98ac63387a547ed577f80d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.124","@balena/jellyfish-sync":"^6.0.164","@balena/jellyfish-queue":"^1.0.82","@balena/jellyfish-worker":"^4.4.2","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.215-renovate-non-major-3d20dceec247c880d98ac63387a547ed577f80d2_1621384007420_0.885408511122934","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.215":{"name":"@balena/jellyfish-test-harness","version":"2.0.215","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.215","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bdac49f0d08389023ba9d2a22ca5ccd805cde8d7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.215.tgz","fileCount":24,"integrity":"sha512-81dB6cwBjl43IcE17y4X4Rq60nKpGCf1AIyBr+XJtfw/KyF1Cl3NumfLf04hWme/xWXtF8oQZsQmnne+lCY/Uw==","signatures":[{"sig":"MEYCIQCTgHj5G0tMJ/llvQ207Q4VnDMN4m5zjxn8LPPUq+sd8wIhAP4VubI49gwTM05r6GnEVot69FpYrNvH8NF4848bwRSq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101514,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpFxVCRA9TVsSAnZWagAAqDYP/j6alyZKvt+jLJXEvBNg\nxMuZmswVaD2p6011/Rl1f06DETG/1o6xffdrkUgu/wFV7Y0UlTRj1lzJyNX1\nOWS9YgQw9s2Ny+WlV6VGb+1OVMf2o8OCWRFqCt+N8KEG2fJhQswJjyGwfl1k\nBF+Aj/T8q3kkLIk9EHWVeUc+XN8dkZ/hZ8pm/RQt33CW4NXOtXZ1xz2ELaO3\no9uD+6s4m0ozs0fsywAqAhaTXPqazZEWqb0+cNGSHbxL/VzshU02118UoZ9S\nHczZgKdBTqbMgDTB+2Frpw4lUgSSwA54MhaHsq60AW4KFmtyb1HatumDnDe6\ndp+2cYWEVupYqQ+jk9ghQ+MSWj8Qzwk56JnQ3sh3FPhuMRmpzgD5i2n6faSa\nq76nY1pNQRZbLYHlihs1egBI/Cf0Ha5DD+t+BVJRI9zDqPQJGQSawe5qWxoG\nxXCCa8mgB74Vf33/tLHJ4jRA1rBZQQIZcRLeY08ysTf2kXbUmaynNx4atDWd\nZAy61oVW5VKGIx3f2GCB+tSy8T+kwTXV3EZ8MIMiLtx7W+DlLFHxTSdbqy6c\ngNlF7Yec8kBcWhYuZLWUtQvOpqe2ZBO5/RNwnSqv+1sBvGK0Hg0T7H/siWN8\nsP3AP+ckKWcodx2eUSPNkV8fSClVgA1DJuZnWjrzFEMMfM3TlnnG88ZRhfLr\nMmuV\r\n=dh7F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2f5a820e2f98c0e4047336ccf720bc9bf2838762","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.124","@balena/jellyfish-sync":"^6.0.164","@balena/jellyfish-queue":"^1.0.82","@balena/jellyfish-worker":"^4.4.2","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.89"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.215_1621384276339_0.01932448285654398","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.216-renovate-internal-non-major-114f5722128205d2a0edfa8ba158ec8994f0a0cc":{"name":"@balena/jellyfish-test-harness","version":"2.0.216-renovate-internal-non-major-114f5722128205d2a0edfa8ba158ec8994f0a0cc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.216-renovate-internal-non-major-114f5722128205d2a0edfa8ba158ec8994f0a0cc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d74aa8eec40ee182df585a1dfe201bbd826bab1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.216-renovate-internal-non-major-114f5722128205d2a0edfa8ba158ec8994f0a0cc.tgz","fileCount":24,"integrity":"sha512-m1ZA2K2vZ02l1uBR9fUm+yRU7MJaR0gpl3aFpuNaVqQXsFXGMzA1GXrl68JoRI0eX5wmDXu8LnBBPd8M46bTFw==","signatures":[{"sig":"MEUCIGLZLCHDWKEeQd72OlgCq6711/oZR8s5L1ayUps3b5IGAiEAzoiVsgmOyqwbMmN6/km8GdWVQVvktQIm2K4Ex2rs0Rk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101662,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp4PXCRA9TVsSAnZWagAA+JEQAJpwRLlNzyo7uB672/c/\njba+MZsz8wAydbuBYMoEJL0awV2n2ZBiMTIVMvXd+ohLEWP3rGrwrvJsNmPO\nstMzCt4yLwE47aYCYo7vIzPjIAlygw9v9mwcA96abNk/L/3q9dRAEPzDNBEV\nzK/3XBrDByyuZ07XHuEfBu2HpnSmsNboJEafYLnTlTynV/4M5vrqLos4WyBT\nZKfW6UDteBAgKoGRYTFpfYHSdcqSSxIjlmCArjWRWn9ONsasAxdIBitfIxBF\nYzFq0TmaytbAfB40lphBnnj/6bNsenLXWa+PhlSzhnB3+AJcyhIQqDnlYS49\nD5KAMfZbP2V4hs4gOzDL9v6gvJFwZLm1gqLSumHCtVsm0I1GiQGNVYj2tzVN\nlAj7hYYJYA0Ihhpwzx6t5/z+Y8k3ZkadTory/6OfGAZam6nWTgTbZ/cpao7/\nBhq7hWDAiLRml0JFt0MDBs5rYkSBuO0FYsA3tIbeLpCK0sX08VO6zpJtEVLZ\nRtMddUATvAA5Pzw7cwPAE8lhtHDZoHZW1ZaDN3X59FzQ0VMo+Q5q7SoMRBvg\nND6czex1b8kuUnyvg/ocX4uEnDWHMqdDrKPdEYnOjO353RsYFtcknKdwjBDl\nmoJxsj5WW9XFSjLhF4CoU6GUsu4ZQrs8PWkozWOfDIA1FbqQjsc3I8WIYHlh\nHadg\r\n=Ld3O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"114f5722128205d2a0edfa8ba158ec8994f0a0cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.125","@balena/jellyfish-sync":"^6.0.164","@balena/jellyfish-queue":"^1.0.83","@balena/jellyfish-worker":"^4.4.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.90"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.216-renovate-internal-non-major-114f5722128205d2a0edfa8ba158ec8994f0a0cc_1621590998295_0.9690740028710381","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.216":{"name":"@balena/jellyfish-test-harness","version":"2.0.216","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.216","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1204eeded9a089213fde2faf7c1539ac0f77f398","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.216.tgz","fileCount":24,"integrity":"sha512-srXA9MxxqkmZCQI5suKm3hJmJapZtlnRNOBfuVG3vwmTGH7/mBvxh+lkk/8/8wS4lGCNxhzqNaTZ9Xl/VVc4aw==","signatures":[{"sig":"MEUCIH30pznOpxOM1wmZGLjyPUwCPEHdDFUwIZiMFfKf7sRnAiEA1aUCSQVVJ0keG1Y1MhgZRXLnae2ooiyofqJRuUMkNdc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101593,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp4SyCRA9TVsSAnZWagAA64sQAIplLTMrnOk4Uojd4/1v\nx8FonOSRklfIFiNAZoQQ7PhVZXv7b3cqBDVXpR/tC5fis9FEBnRTpN9uRvBP\nRHujjtNqEuTUyeYEYOqMQ2FaZu1ag2jb+N/QN61GjNql2ysdxZT69aGOM/7v\nT/xco8c/VaitUMNGVKSaeLYtGFLVZ6qjoMYPVdhdvdsOf/zjDmM37mqREYNu\nUz3GYqPl7Z1ivpY/2rhjkq/a2HjLJymxqBlHt04Ab8+ozSgeZl5oCdBmFrWt\nXTWuyPeC3jQ/okHS0ZV/4lhX2HzGgJtE+nBMR9g+4BwSRTMMqXBF+74X2hQ9\nefLjGc4hMuaZnO21KlUcOkp0Z+lwFCUWpqQGCh7dt+VUGkkkirYJScpwM503\n+QBFwa/Fp60cFFhbwWEbV5okZfvH8qDIy4XX7PF8bnMWCDNtW8xV5eDcsClH\nwVAWRoZdOWsbuMs97QflDs4d0kzfIfHoHctUVoGpHo/wRMQ5UVT/xx81+u/Q\n+Mdc7smwcVgzW1csjWwOaZm57QbrrT+TeYv3kPVFnzZL57d16tGjixpmtf2R\nLrX3Akmmdb5WdXxPaBYB9197JParTcLlQhupohR3/R22vneKVVTsSmxOKDso\nXRMl1oVBMBa5OGnVA83DxGtoFg+zFKqLCv/o3pqEaKst/EukwvkdWlDuGH33\nKNlD\r\n=qQDc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"394503c1c7f31f92f9637e67bd7b53e74c4ccf05","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.125","@balena/jellyfish-sync":"^6.0.164","@balena/jellyfish-queue":"^1.0.83","@balena/jellyfish-worker":"^4.4.4","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.90"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.216_1621591218165_0.07756272503540207","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.217-renovate-internal-non-major-e414547e5c4f531d8586dceccf4b9af8dedcb24c":{"name":"@balena/jellyfish-test-harness","version":"2.0.217-renovate-internal-non-major-e414547e5c4f531d8586dceccf4b9af8dedcb24c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.217-renovate-internal-non-major-e414547e5c4f531d8586dceccf4b9af8dedcb24c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e2bb295444de7baf017af321856b43cfda41857","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.217-renovate-internal-non-major-e414547e5c4f531d8586dceccf4b9af8dedcb24c.tgz","fileCount":24,"integrity":"sha512-TF7OpJrMCleGmA3uyHrckd4JBr2M3CUF5rJ6ITmZlFo85YHFJ1ATra9C/gQXN6K/II0Gw2O52RjzR6hG7MzgsQ==","signatures":[{"sig":"MEUCIQCScPbUQxnnQ8zcmuYlt1SH9YMf8prVVSqiK3nfttKexwIgBbEdU7OduQXmtch927wIRtIqHJJrhKjsAZeCxSMTQrg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp5sFCRA9TVsSAnZWagAAIPcP/RUc7OLdXljuT5oFKOGR\n6MBxr6X8iNUa/5KVAvgU8qUlUC3yl8RaY8gQAerNVqdrX2MwvOejsZZo72/d\nhKCgXTxnP+0+iumSUUEojWDT4fxqovyfwdQEaoXl3Bi21QCrq0irI0MGILA3\nbNIf+PHApn1yDyLM9goyvToARVKqQ/5y2Sgtp3dh2e8arrMeH6ERJ7Uix0g0\niLbVGdemyHKsuV9bh+yGxPpV4Y+GYgZwejO624FyqGvfsMPlHYismFMi0KNM\nhTE3uHEmdxFMsx6NL9YLxAwtBASD/DwoReMojzOC41C2VijS7xAaywOxZgnw\nKwUH4a9tWHgpJOweaITUiQEsvd61zi5xG7MI68vRaoexnuh9LLY6CxaNVys9\n7EK7GDnFOMTQ8nN4fp3GXMUWbRe5rpGofdkz/1kez1R7eiQfH35x2OI4ckZL\nJZBhe61PY9DYpTogRfmdSAcw6yXTa09A+sf9yCEP2Vm00FCQI5Sad0apHbW6\nr8jviPsO7zYTfFcnpSIfdKGOfgWOVg0HmPTjhmsx2+gd6E4rmZ3TPLQcTkcL\nQ1Og6W+tKHcdU+7GSaV5y5LaVXzNK4iaVuhNsmcdbw85Xa9AEavyo8GJvhhP\n7XePdadbJjqkBTXpIQDn/JT6JFLImBGro6ZvipjBFlNKUkZtEKkrTew+5eWq\nLXUx\r\n=TgcG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e414547e5c4f531d8586dceccf4b9af8dedcb24c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.125","@balena/jellyfish-sync":"^6.0.165","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.5","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.91"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.217-renovate-internal-non-major-e414547e5c4f531d8586dceccf4b9af8dedcb24c_1621596933153_0.36668568454822115","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.217":{"name":"@balena/jellyfish-test-harness","version":"2.0.217","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.217","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c759e68b96287091cf33a7ae2ce8a0e0c541252","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.217.tgz","fileCount":24,"integrity":"sha512-ojJNNs982yrlpaUxJOTjfeLXMCNkdB1pEDahgObLOlvhaOTFQAxtsZQfpMGLKWX6Ph0sAUcwta7dNJb3AhNoCQ==","signatures":[{"sig":"MEUCIB1FCNcnsSgXwudXH0xz3m+YuwxwwZ6PaqE/Vz6azjG7AiEAryG0qAQRzYsG8Bzu7fRnDZcS96ObBv/HPQS8q5/A7/M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101672,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp5vJCRA9TVsSAnZWagAAO20P/0h76Z/pJObsMFOiNiZq\nyUgvakmvToaR9FSUtlvSv4+ZVXVN7p85OfBx8t+YyuFTls/0ajoRh/LEV+v+\nblg83zaHc4J1OwHIpSU8mHAkIhttUZlcUwEyHoCikwU4sp0Eb+zoqlffxsWp\njZYmKtz2X0tC8EXTUZilZdreP/oG8Sy5d7EwFrp8GY24wHe5A0yGo8m7lh+n\nNY/z+KO9Kq8Xfd8w5JldNvb39pqqJhqYLLKjxEH4oxaH9UcPV0UWEcrHxlPv\nHPlBxBZgxNDho5ArGLDCMbq7K5ukVDRKHuqZHvQ+uzcPnziqnqOKRGA69CmI\nF1p9GDXi62AlfZr9meid97eJylUo1scxi+teclXeS/YF1f0uz6e8l+S3PHED\nj/HrNhXNulcaoPFLeihxbpAV3Mu98UiwaqbqOg1hVw1MRx8WJxKnzA5IfEby\n0DF9j98dA4emplrAOR36rWSGFftVG+ZZCEkt3pNP3uu8+iHZV1QICD7B6iUm\nthVtukloBpiEopX570H6JaVfK7JuyxCSPhenxWh1IhSH6NzqQeChF0eFzlS0\n+aFdieMgc3g0k66h6K9NzLwI/RWXzHUBZh0y6TYWnU0Sii2vXsypPXnu1LTP\nyIuHrmFaNCUXwYRiOH+P9GSdpTdn0cV0m+drO3G9K3ddYz/rL3Wcm/Gm3nXR\npS1F\r\n=2U6s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ca990ec506a5ff434fb9ac0ac376d95e1e91a14f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.125","@balena/jellyfish-sync":"^6.0.165","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.5","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.91"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.217_1621597128875_0.3207721230631957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.218-renovate-internal-non-major-523aefadf67b048fb65a7abd28e6e22ab5e3d626":{"name":"@balena/jellyfish-test-harness","version":"2.0.218-renovate-internal-non-major-523aefadf67b048fb65a7abd28e6e22ab5e3d626","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.218-renovate-internal-non-major-523aefadf67b048fb65a7abd28e6e22ab5e3d626","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17579329304b6ba5b053030a3b02b5c5e5277e36","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.218-renovate-internal-non-major-523aefadf67b048fb65a7abd28e6e22ab5e3d626.tgz","fileCount":24,"integrity":"sha512-heWJZi229Y1Zc0aZeq07EQrgTfUCosiY1zDW6vQpTvuSC7ba1fw5hZyce2gka5npM2rXgh3AUGWTua/gluIuLA==","signatures":[{"sig":"MEUCIQDOD8wrv99nVtZtt0VuPN6IMiOeS3/n4U03rpBcAbqzmgIgQDVUn1pI80DsR6QGyY0gA2vKyQ+E+LnEclM0CKKfG6E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101847,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp5zmCRA9TVsSAnZWagAAHd8P/36bZXcFiQBSaxWCsjxb\nimSO4fdBBAODXsgoMVT3j63kj3eM9oWyh+FYTtg58ZAWt88BTTCYWdLtWQir\nI2p1bSJlSSAlPd/xcSLZAptLvAVQQvEXDWx7XmGWOlfuy+492LAOxOGWVAFl\njmxQeip6Y1i1Ztyh2xidvz5VeCC0Rgk2CxRZ/5BBT/qbKUg9uZqAFdIX7wTT\nV6O/Zcr+cMYIdN6uR7oSKMFrZ86YTHOwd0xy/Fj56V3vEloLbtlH12R0y9YO\n1tap0pJXusnwtoE+OoIVZkndmP2l/7hbUcJ2b2mAxkA1LIEv+fF21yKZSIeu\nN4WCaCAa6K8tgUJxPysTOJKjkWNRtn0zqxsjL9bJwwmz5uILPPgCHwBwVfT+\nqwWmbJ4ckk6Vq3dS9kzdihH+KtJiGIMS6MWwrjmpqhWKn6a7vj5QGA0pTb1j\nu22k/NKuFJRNBDSlT4249XAJyIE5EIdrbBZWDn/00xzGcpslcGJgFzgcxf3T\nVlrjr+KJdQ2mNievyl6iBXnUY2AC6088xAFSIjXHghbAwfuyv3Z/ul1HP1tF\nqTxdoX2Ak1QAK1uVgCBwLfp2wXa10OOR33MXT7481wShRAmuhh3tFiG4w3iB\ntcCLGAjsSs8VCIUmlzH+O3gOnyOVOtaj1rSHDkRvRzGvjAfGfJaLXmyY1wRR\n1rvG\r\n=85pi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"523aefadf67b048fb65a7abd28e6e22ab5e3d626","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.125","@balena/jellyfish-sync":"^6.0.166","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.5","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.91"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.218-renovate-internal-non-major-523aefadf67b048fb65a7abd28e6e22ab5e3d626_1621597414283_0.3424535579962975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.218":{"name":"@balena/jellyfish-test-harness","version":"2.0.218","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.218","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6ab88e623007ec0b36afc1ebbf61bf486637953","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.218.tgz","fileCount":24,"integrity":"sha512-DnxC1VUZ01kpFKkkd7k+RRabTSdgvz5jOp3eh/tkdCI421vOaont0iJoPwF5e+oun2o+Wtm8k5a/3u2/85ntKQ==","signatures":[{"sig":"MEYCIQDnYCDSYAFn+PtCC3fxXr7mAD8mjso64maZEg7apGG/xQIhAIOPP/z8+Wqq64M8BMlGbLpPH+RDDZri8fTf+uMdAaHX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101778,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp53wCRA9TVsSAnZWagAAz8AQAJunUTdlg6oEUdCscEhl\nFcsTKTVdOnu7++wLg1DEwZnOt4rygukAjWz2X82i2aIEwjOlCLFs5YVK0zkO\np+xy0w+g+Nx1HRr1SBDaSmVm4VAk/OEyNwmHIIILwoZrgN25IMuI7jaX79+M\no7NXSXyuFOzmH/XnZIdBILoCnrcbU0If+2Oy0qMB5DZ7fzSORVnl9efOXQcK\nsYkWX+5MwolzNqxB8UCNydF0PabRCgXvTp4fag3k6qHGY6Xi+UlVisPFLRBl\nLZdekHrAHYlFjCqDg87EE2EEb9ZX6aDZKqtMo9vEFVnwZ2HTjylWwvgb5gml\n1DPQ4Dum0YVq1QJyHuMR40XnTBuDefCWm2mx4xeOIJQi3cGMW32J2pioti8K\nnsbLci3qosW1B7/3CyVEAlmVUFiQE1vXihJ247OPalf0MH//1anOL839R6r3\nKlgRsiuhtZRE8dWL8F8SfUWdshtmieWiXcT+hV7ylOYjBaBBSu09uFAnEKbA\nfgS6ZUFUSPjurZyHsJQG89sHFugvcwt5FnP3QE+llI8Y1amstqa4n2Iq0d+t\nBunYwxNPRlUDtprQFCcC1i7UFUafpDT8Km7aExu6PlZ4GW9xZCyxEiJXvs+r\nYymkI/xBqES5a124Rca6vDI2UJ3YcQRGaHUNtro5JPT4LpcSNEI5/bmLXzBg\ncjuN\r\n=yRjj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ade7ef6718232d99588cc5ab7c633ba2db3b5fe0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.125","@balena/jellyfish-sync":"^6.0.166","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.5","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.91"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.218_1621597679388_0.18633547988463017","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.219-renovate-internal-non-major-d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f":{"name":"@balena/jellyfish-test-harness","version":"2.0.219-renovate-internal-non-major-d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.219-renovate-internal-non-major-d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"238f7cbe5d005982439af409df390f6cade48e86","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.219-renovate-internal-non-major-d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f.tgz","fileCount":24,"integrity":"sha512-MXLFzlV2VyW99fZbY0tENrTBiW5Z9tLRg/GHL2hzF/67m4hT9Ebk82+z8S0A1EK9in+QpecExSJDDZYarPCXWA==","signatures":[{"sig":"MEQCICKGRbb4gMv0gx4sJe7YypdRPwOz651NjzQNupYBGRMuAiAxJe2SZG5B09cWqcvVPIE7SVl/1Klf3iMraRadu15jMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp6+ECRA9TVsSAnZWagAA7wkP/RJGHqpB2aXWCWAG1lFo\nWWO56BtBgKVpRbe7eKDnLkjwY59rsWZLclLzZQiuS8OUsP7r/L/sw4wDMUfU\n/iwU7hHuoVJKcpJ/mN8P89HKng3ntwym7qIN/KG3iCRNX0GdwX1TDpLlgUeW\nKKlobqQ7TdPPcICdMJXjQbIAd7WEx8gCiNhe26O5McU07/cwCqyQtA3soet5\no2dBhwbh7lvsYMAi5+bgViPUZtYA2iab9aVGKevTxyy63iMPGQskuVBAPuXd\neMyspbQ9vx8UORMcjU1QL1LN1R9hPLhk4P2wbqB6eLqKU39WGRbygQPhyWfu\n8uftTu3OQqbFhgcAV6lov2jnCMR+Z8bjMzDmFIRJBGc+11obNEUFUOi0rOwm\nHvnrL8sYDkZBdXx3lXhd7vUw61ws8SdaWJ5C+7hWcb04VpwryuNwllajZks8\n/Xpdy/itlAbO9ul9bFnImDt+D5jki/pvQOnkfceAOe7Di8Kz9x0M0B46sUos\nl6V3QRLcLlgkLOYokMgqgUt3SIBh/oZk15Gx+3L+CwbOM5/r0FEC8/faY/uq\n3ktLtwgR0q2Kt/W4RvNy9+fPKEP8zSuaMCBI4gmFbRdfYanOvcesbTibmHWE\nigAND/hq5lF5ejtWh78NForyhd890IfVX4y3qnaO5Qq1iiu6wp5fgDV8S2qU\nWzJv\r\n=myWL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.126","@balena/jellyfish-sync":"^6.0.167","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.219-renovate-internal-non-major-d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f_1621602179932_0.11669854475186159","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.219":{"name":"@balena/jellyfish-test-harness","version":"2.0.219","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.219","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"48b4dc32d9f605486844cae796a50ab32fcf4cdd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.219.tgz","fileCount":24,"integrity":"sha512-fWEs0YXh06K/393XePA0GFuqkMTN/Py0ilBfAr8ycLVfNb/bo7cwom3h7PGAVx6w1aTqbL3y44R6FRWbYfHcZA==","signatures":[{"sig":"MEYCIQDSHTZekLRVJsV2wqLsltqxUbxRjgNEkXD/KYDrwRmv+QIhAKqHCUfUNzY2+Bi6kZmsakkiQ4fwjFWDBuoLv7U1yWa/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101857,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgp7BhCRA9TVsSAnZWagAAZ6kP+gLLdnALXh/oYqr67Xd6\nM7vEd5kwSOkai9rA1cqUHcdKvaqYHS9O17nCsKRDz7RtJEZYlKu+YakBtW2Q\n64pNqY0hhZo6GIpfwzPB8XE3eQ0AzmuzsYtq0ctJ9hPmXVTl9dIGr9M7PAF+\n6vATctbtRTyDkti+h3ZDof4FKlMhCq1+nEmkIPBuvkpG/gA/QIgJ0WNjZR6W\n7gXDIJ7hGahEbjM4NZM1VN5XetbSjN/TZuH49TLTNP5wgpXxsR9nJadctgrz\nPyHPgcl/URlhV92cqs6/RU9FK4qCly/2EQMdzCGOuneO7apnrfNjrK6dOC6+\nu1x9uN9Kwb6f9LuiWjAJX0lMHrMmauioGKUiwGhBBDyGAWhfzTxytwaLZN+c\nCkAyrzcevxD5+ntbhk1ZqIK1PqQCtCqDA/iZiHYYGbF3a25JIdVLHtX+Zvh7\nQx5hk4peaUMFXVoFNMvZ9Z6Wvx65wT4e9BBgOyzPi6HetjahFkIEOH84IB+f\nxoTK1rVWiS2rlAlXxKYiVzJV0UbGRiaoRe63HeXFX5BnnL6nX+0ylj1weVC4\n/FQEYQJ+V6TXBSEAhZglz8URlPop7mTShBzufCpw7xNiLTdeIzZfWsvWOSTu\nS+Sax2hR5url/SVXEGA7mrQnhX1VzhswjzWqOkbF+fNr4Q0evNNQr3ROSw2n\nN0dR\r\n=MKjM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"57618219cab65df0a7d17aacdf89bf9696428e66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.126","@balena/jellyfish-sync":"^6.0.167","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.219_1621602400882_0.7406643730776961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.220-renovate-balena-lint-6-x-cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95":{"name":"@balena/jellyfish-test-harness","version":"2.0.220-renovate-balena-lint-6-x-cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.220-renovate-balena-lint-6-x-cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e8b4c67ca4dd4fec9ec024e6d58e3adda1743db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.220-renovate-balena-lint-6-x-cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95.tgz","fileCount":24,"integrity":"sha512-xrllu2o/pTFrLPI9Ls/mEtR6hwiaecRw1tsyqUkuaLPgDqspyD81UL9gdNjCX7Lp2vo2jTkqfOt00tpQuiq59Q==","signatures":[{"sig":"MEUCIQCODif+XoDkPXxkfdUijJQz6j7bZOL23bd1efilmsyH+AIgZZrHNODGGeW8ZyjWpkNlOry//8ZE0mgcSMzo5aLuyXI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqATKCRA9TVsSAnZWagAAzXQP/32yvP0cUUD73klTQlnh\n7ScUPIWAQ16MSeyDhjuhnZv3584RedzBKqHq844sQKglPOv+2qmjWhp0XTDY\nsxea8mmUejsTU+gzaSJTwqGQuiO9MsGpTMFTRxei1Zp1JQiCOxgMAHr4ewPg\naGfCFX+lKlHJTzXMBWM0vCq4Cdaob9/x+RcgdzlXMKRJwIGTDyiJIvCK9yQl\n1U4Y7peKJVVaEH4fcrDcQNgzcb6Z8HmU0dasWRjOvBDt9+fRB7K04zD3e6hU\n/vr5acBFX16hb93Cbwhd6Jy0lOXATPUIJAEgS3HsCABtKDilWjwc0jzxstrX\nBmzsTIamyDNIZC473b26dAB8i2FIEUVOCczBKO1PQy6bPQa1sywxtI3l6m3G\nGq/lqFdJ4Id29c7g3fHN7JL8mk+S/p+KwVBUA4WjTdX0s1Ui7bZpjHaQVMWT\n/Uq7TrieR5i2BTFG87wPRdsTJYihlVbEcYm1POsBrY2FzbsnIwn4ZIuuAjDq\nzYbeIMPf0SYJI2v6M+bhbvlwvTrnbMNHP0W1SJb+DaiKXgDnxkvNbQcDJBaD\njikpZDDW8osBHIYl9VVI6WS8RR1t34HA3ir7AlpFct9qUPuqui/NlWzyUOw/\nTc4y7B5zwl5OA00PBZwyaIfbhmt9/S+8DR04JoPwFaFsITKvJ/IJrly3DSRz\neyzr\r\n=Iv6i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.126","@balena/jellyfish-sync":"^6.0.167","@balena/jellyfish-queue":"^1.0.84","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.220-renovate-balena-lint-6-x-cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95_1621624009674_0.2621235131797708","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.220-renovate-internal-non-major-c64e1920a841d2703bd05493736d4b172dce8f2a":{"name":"@balena/jellyfish-test-harness","version":"2.0.220-renovate-internal-non-major-c64e1920a841d2703bd05493736d4b172dce8f2a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.220-renovate-internal-non-major-c64e1920a841d2703bd05493736d4b172dce8f2a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bb456f00e57ba72250e03352fbd4b0c25908df2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.220-renovate-internal-non-major-c64e1920a841d2703bd05493736d4b172dce8f2a.tgz","fileCount":24,"integrity":"sha512-q3FuZEwtkGhPXj0yATIipwijHmVUjO0Q2OvkV6F7DGAA1V+hMaF5wlvb3GU+RDVO2iTwUrwscGWZE7Frax1Mdw==","signatures":[{"sig":"MEYCIQD3pmHQn5pErffR3xP8CT0Ek9HLOhdJfmkGUxQ4D3XBLAIhAIeeUtkXQ6rHjTsHyPvYcm/izWO1cuha/dROf3XSxeal","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqFXHCRA9TVsSAnZWagAAS+YP/jfH17L5uaISKXrYB1WK\nJtngF1hYM/7V+5soFSFrWJFzUxWkLegkpEen9rPs3Q3C83X+bxdq5edtgKak\nWNed2WqpBvo2kbnPyz6s7v8+GLO2ct6KAW2KNN057BTEe0YlYBYYw9stjCD2\ngiLKibxekgvvn58TLPNpJMyBoaI/2+PuHb+Xfo/AK1oeJOCrvfFxJN1sSs4t\naXcZHsoNhkJAL3dn+lAdzwmTpFkEEN//eNlF9Er2pl+HuOHptGeIfo4cBCh2\ndlFPN/A63AuQiL+6EReUUv5zKh4ietOGrXFF+ca5S8E1dELFvlhs1bkTVoOE\nqiKMkc8J49uMUVzC4NQYosarixjK0OeAhgdl+OjYkR1cqJGEpSOlYffRL4Z3\nauBWS6TlrkjUN0ekSjFwDK4L522ruQuu4xaZSRDOSaF8Y2DrcCU5T2kf734f\nsQo63FuxRSr6VgkYDXmvt3Gx3vTpstR69hJQ5dEIyIPUUmca0RZnBZSNt9JM\n5nH4EidBc1KYE5wSaSaV99cvRMws2AI2IkPWWB8gjh1WuF9oMIB/WEYhoTtj\n/RXX6Q1ooCq4wT3l1TEUp/9vP6CBKKOhXOp9GG66eWgNbuOcXgY5LftTLlD5\nQm9gtvpfYBVfvVAzVTCBeUbOc9c0ZsDV8Z4k6YKcFzN5L/eLCqk9a/aXvLG4\nDicc\r\n=7Ta9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c64e1920a841d2703bd05493736d4b172dce8f2a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.167","@balena/jellyfish-queue":"^1.0.86","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.220-renovate-internal-non-major-c64e1920a841d2703bd05493736d4b172dce8f2a_1621644742567_0.9738943492356626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.220":{"name":"@balena/jellyfish-test-harness","version":"2.0.220","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.220","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b3ef9d2657c640410646eaf8a8b85c34216e1e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.220.tgz","fileCount":24,"integrity":"sha512-kDPjs+8ajPxy0AWrODnbcyO12935At0j95TrE3Xj6ZbAfGWjxt57Vl2Tynn4T0NGXkMBbO+AMkB6lID+ATMQDQ==","signatures":[{"sig":"MEYCIQCWTuJKViWHuf6MUvfNSGnxkooVovj84AzL0/UXFv5PlgIhANl+Dw0L2ajy/+B6jlcMI1QgRPQcRQVG78WPMLIMeysW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":101936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqFaVCRA9TVsSAnZWagAAw+MP/jFphugvnbcXdH0f6Yrg\nH/22Km22YcwxbkHpm1KpzfVBA2RMn3Y1QQk3Mpl9H0TJJIs1cDZ1z+ssO0Kt\nVZrnLPr84r+XKkyEtKTcpw/5kETxKwxY95gUAVfSEu91bbj25fARUZddsSsx\noVw5e4idy88hfXWc/Z675S+otcyseHJ8y4qtMkLMH7tZ6AcICpfDzE83FYS0\nfsXNCL2ZD8JWh0eH/Jb2p72hP6uamL9JYklsPgYImzMjd4KqQ6V1nomY9Bo0\ndWCkHsm+a6FC0VVUvDjubFYbxRHKWckqOzwNkXanwlqoKCBQm2Y4QUjRBXge\nZxHK0jrGIU5EZVGA9fPK9HreEVK635bxViCQFzugQ34z5Brj6aFtE0G90l2A\nSVhNZiKfL1+Qd36kqVUj3/Mx/JDqrEYcnesdbIPiLHyq6lvnaoYg9FXjTNOV\nHdipx2c8FU9hcJ+5/pvxcaI3JuS2i6yK/0uXC1ePm4g5pE/8G2rQKSEUgCe5\nDF7rCQwvMEzuvGe+NxAVr5UbTk2HWjrqCJKSbqL6Ww1qcZB1IeYcasQ0SUer\nvta8NJM24Vg43A6GfwSDotSQgy/XuOIKmtSvZvO+oqOZ2UqwdbM5E1IHBWkN\nhSe/4mgGR2QB58WvYQsG/59aLNmgdXM1WUuMAXnOciBAFv1j60AtMjD9fDDJ\nO2AL\r\n=1vCL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"736deccc8de2276d395eee601a30aad902814403","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.167","@balena/jellyfish-queue":"^1.0.86","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.220_1621644949483_0.08214685963117807","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.221-renovate-internal-non-major-508f059fcc9e207acdc433777825dedd63e26846":{"name":"@balena/jellyfish-test-harness","version":"2.0.221-renovate-internal-non-major-508f059fcc9e207acdc433777825dedd63e26846","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.221-renovate-internal-non-major-508f059fcc9e207acdc433777825dedd63e26846","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e3c9c04f9c21af16b0645fb1e977109266e6de97","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.221-renovate-internal-non-major-508f059fcc9e207acdc433777825dedd63e26846.tgz","fileCount":24,"integrity":"sha512-zq2XNMH3kDvD59oBUCZ4n2q4zdSVhsp/GCcR7CUjQDSuFTta5mHP7NzXHHyOP4lGmhhUIskW4Emon1+Zxa6qjg==","signatures":[{"sig":"MEYCIQDbyGtFvKBWYUk8YboAGDFppF53JK5mYC9vWlMyVP8ELwIhAMxw0Kd41m8GCbTIE1vfLS0yGTTuWevPT2K/H0pgi5M7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102111,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqFfLCRA9TVsSAnZWagAAH8QP/3GoyTAswsYW4viGLeiz\njfatIKTpGTawy0LpH8BOI4Rv97+dGHk+wiA3Nb0ls4cVk5aJOv1LxTaqeZ26\nTe9FNv6K25y03rt3dqgFqznNUcKl5n5aZut0hNs3PxkOH1aOiO1WPkq6DlEX\ndZgUVpM3nR7EJRvfKUtm/ezW6Mo6EDPMOhMQm+6KvULaRr413tdMUskL8be7\nv4ykWVWpZQTy4D2v1ySnf69Ek+fcyBR8u9ykYhEiwlnTqxhj16E7gwfeaqII\n6KjYHld7NInRgLswjuhUyO5Wf0Lnf4MTVxiJqH+9Z1Qgg6/S8S9VQkK822zW\nVSPrPSiUqPnvt/FZD6kDRvjBIjzoJRANMhWQ9oGYgu4vNtlsTJ7NvAdrEkfe\now4oJutlGRV85dDHw0upaM4byAjqR3s//EW32vvqsTdmj5VDJ7jL3N+C0x5V\nTqvIdwBsLbRF0eNphCFJr5OJ9eOrbTpOkutYJwqRxuCfcfAcBod3Z9jAK/xz\nvRA4qrLEPK45kl9A52+d/c6jNfqFgZV08l7yauKwrU5BlhZc3qFCRmbJTuBc\ndhhLpI3DrqdSd8E4y6Q3JM1NRrdje/iK+SF0dXXpSTFsTwzkQ7LVC32PGtcR\nZaytA6CUwo3jy8tAcYlDXfO1pocwYk+jSCIK0bOtIqG2E5SEcDWvErjusvyd\nyOjQ\r\n=sPw3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"508f059fcc9e207acdc433777825dedd63e26846","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.168","@balena/jellyfish-queue":"^1.0.86","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.221-renovate-internal-non-major-508f059fcc9e207acdc433777825dedd63e26846_1621645258839_0.09791857478526533","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.221-renovate-balena-lint-6-x-539ad87989ab99dcae4ce14c9765541d3fc052d0":{"name":"@balena/jellyfish-test-harness","version":"2.0.221-renovate-balena-lint-6-x-539ad87989ab99dcae4ce14c9765541d3fc052d0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.221-renovate-balena-lint-6-x-539ad87989ab99dcae4ce14c9765541d3fc052d0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0fb2824733aa97281d5e668f65a8e9fa7f92cc49","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.221-renovate-balena-lint-6-x-539ad87989ab99dcae4ce14c9765541d3fc052d0.tgz","fileCount":24,"integrity":"sha512-U89NrEEuy/0GsY9ZDcc7Zmuj2VN057phCWjT87GwIbzg1fp3ypbpQVE4gNIgy2O67dcadQUhduTQrlNwTzC+wg==","signatures":[{"sig":"MEYCIQCFH1g09Ix2D2VUkznJjEEVpM7QZSlOQ6aOJ+Iz8bSsMQIhAOkOy2M+iWRY69fFrs4DcFdPVmUAkzT/5lROycvz269s","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102092,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqFh5CRA9TVsSAnZWagAAgUYQAJ6LlJ7sypZQH45LD1cj\nhQrK0p4de0YPWi18o09vUvsMQOK9ueoP/X09hgM8YgY6r7UzeVUguwWwZQmk\nfPzJIzy7Zx6jaZjuYsSFwanCiNOCZeBk14Gr8Yj08UEiVKQMDZ705WrRfeVj\nEfzIkRDDxqBhbCk9QHxl0LaSIW3Kw11H0/f+U7qC5ma8waXUz8j25QaAX3F+\nSiAPMVDPlTEO+LE+lbtjhDSopQUXXFQq2x7gmZZXgDDqEVsCM31wuHTRvlq7\nEcoV+tpVl3TyxBp17UeHrE0wAuvATy2nah45H90RSHbP8SQt4AmgNvOWcvob\n262jRNL8sHrnaLO0CaiEjy+TPMeUomn9i+xnjA0+c/SlWOlFWjxTQI4sZJHN\nKqvV0vQhHnbidou7iuCNc7DAIPhylWcfiW14mwXyzcD2aEnwWAhcaZAf/3Rn\n+TZgW8MCtfPcdiIiaGHyPSSz9rL+dCJxAeMfFhZw+rJlT0tYIHDmkC+kxCUu\nQGpTLSbIvCrx+0LqXe+SkdiFj1r4MTElPrjySzKLOa/gwl0MtNq7JRcQ8u4F\nQ8bbMNiXAnC8NSUXXMNW8CvP4/21v7uPMUl8MO+kmF6kXfZ2dXasN3NZuma6\nk0aMfyYRlIfeivmapksx5yQa/3n7wF2lZM3O9QMjy4Hcy4Yaam7wO7xftqlS\nEAT7\r\n=sqPa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"539ad87989ab99dcae4ce14c9765541d3fc052d0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.167","@balena/jellyfish-queue":"^1.0.86","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.221-renovate-balena-lint-6-x-539ad87989ab99dcae4ce14c9765541d3fc052d0_1621645432868_0.6103815678516671","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.221":{"name":"@balena/jellyfish-test-harness","version":"2.0.221","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.221","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"50a541c7d0c72f1ec075b9417100675a8805edad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.221.tgz","fileCount":24,"integrity":"sha512-RDtXwLAnaipbtJ7taDj9HhuFe2lGlEdCtQxck9mDUUnOPqyIZM4jDSk2dne8q2JRjCRdbOpQAvrfZZ0qwRUqvw==","signatures":[{"sig":"MEUCIEdFIgsNd/6ZcPZxy8copbDil3vxPdcG13zLjUQRihXZAiEAwgIW4Qno+/DojzjBLIk9MACYpTk3NwGuXWiVmUqgQyY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqFlpCRA9TVsSAnZWagAAEiAP/0m74JabBScee3JHUo0t\nycREOWi2tk8v9TwoK2wVFy8s67Y9eHFwsu6yd5NX4oRdHADJuAV8t4TGPnRF\nymVeLssR4yM7R7hy4rGszih0PANKP7eNNIHS2ub1ol6y9/N6MsvP4mGwsOus\n7FInBY/aMcVKHaBU4r/f1h1NjhMqrCi01fFivQ8puE7y8oqVVzzmz9fj1vFM\n3BxvhwzkjlPoAGiQiQ5UkzqZXVbRS3MXwkWN3cmC7SUTcOQIAbMWitMe9Cmo\n0Eu3C/ibEG9Uw3/G4LrTVw77BLj/hilEzWC9j5bg0Pjcnu4YbU5bC2WV3D+9\najUqTjFjtyZEY/AyIGTtEBoFsg9MIlPTQtC9ooy48P26/2tc7M3o483WRCtX\nglgSKXs9nNi59MH27eF0RYqhF0JkG6oMijPHtEFrSMehtmExO/A3M/SAxWPS\nO9ttV+hPjnQvlxJ7D8A/KzYv414+1vmXE/4bt048cBhnI7vKpIwjcRAo0i5O\nn4B7P5Ug5rceXQZknDRoXyXnFKDuj3cfXoN7EnIsWvgmC+NiJcbBc7ErsRU8\nJbLTu3YXeKVXweQpYejirvAKvIHYYqP8qnoB3V8pq9CTfbii3+JGSNOCEbUS\n6uf6xUrVqhXxyjlTWC8i761LKtlU2cCGrNHwYf6AZksxku/LGp+/F9AlyaaM\nOTae\r\n=DiQC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e966147d959e44a8ece8b6d28ef61e4060942009","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.168","@balena/jellyfish-queue":"^1.0.86","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.221_1621645673245_0.48763991916437877","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.222-renovate-balena-lint-6-x-37d9d8dabdbeefe768e9c8d71d43c3d91016ac69":{"name":"@balena/jellyfish-test-harness","version":"2.0.222-renovate-balena-lint-6-x-37d9d8dabdbeefe768e9c8d71d43c3d91016ac69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.222-renovate-balena-lint-6-x-37d9d8dabdbeefe768e9c8d71d43c3d91016ac69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1f3c007e42b118d6539863cede4ecbaa891bb03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.222-renovate-balena-lint-6-x-37d9d8dabdbeefe768e9c8d71d43c3d91016ac69.tgz","fileCount":24,"integrity":"sha512-XzZ0D48IHR9bv04tl+dbU9bszAyTPyfxdWbW5LFhcpVLRtBFah3c7PydnBlFIQxMB5jHVN1gXiHor606itoWgg==","signatures":[{"sig":"MEUCIQD4qWDm6HuMQrGVStKfVy3GOMbsRh6hHYZ5TEWpfz5L7wIgBJVNtiemt1OGCHqtNxDRFdAFVfJSR6mgI31qlZXuBu8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqFqOCRA9TVsSAnZWagAABuwP/jIwzs6Z4ZJWC54HKtaL\nQJNOgI1evwVYMHCoSNWJ4ilJuJFLtxInffyeLt3Kq+HccwEcyPK+cqktGvh3\nWZ//YP8d6O8pBpe6hMo3kHDDyCBSvsLPj9Kbjx92CQ6BLLcQv002s5bOHYlS\n+BCt5nZ7/kx8m3YCjTGHekF2erZ1xMjpLgl7gg5wi7c9wyBMzHt1ZTdyMZJg\n+KPs6HZq05Kfsecsu4MJhTqB8pJyb8Q5vWslgKWx7f+ZF1tsBRXdkh/0FREL\ng5S1bF6JNoXIWHgS58ct+s0yyxSW3llc1XHi+gfY7kI+WMgzr7LnJHLcBreF\nO0yT7BGz2ANdDXOgszxav+9pNLjFRq6zI/MFW09Zex4aL/qEEHAQ4l8qQy5u\nSaYqudukGYIK35EhMCZpnORRMASs8+V597IqxZ6O1zapkfq5ry+pWayJesi1\n9UOlxUT316E5XGG0R1sRuuwY2jGSt6U4HqD8nzwmGdgCexLWMYBZwOLCzjsv\nV1OnBqFpyrMRF/xoasFQMPbc5ZggkD42EJjYemwWYZJysUoqCKIOWS/rywx/\nl66TXDd5ECSoHY8QRAe6SaFVwXjzBo2xlUZslXRDY4OxKY0JqZrePEHRa/Td\nx2ZZrLh9n9TahSALRmo9vvdomvMmyNXKfcFDC8WjutrprkRZJOX712Pptht0\nuFJ8\r\n=tQwV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"37d9d8dabdbeefe768e9c8d71d43c3d91016ac69","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.168","@balena/jellyfish-queue":"^1.0.86","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.92"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.222-renovate-balena-lint-6-x-37d9d8dabdbeefe768e9c8d71d43c3d91016ac69_1621645965725_0.8425023923780979","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.222-renovate-internal-non-major-b99221647841b042cf5bb91db117f422fb5869b3":{"name":"@balena/jellyfish-test-harness","version":"2.0.222-renovate-internal-non-major-b99221647841b042cf5bb91db117f422fb5869b3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.222-renovate-internal-non-major-b99221647841b042cf5bb91db117f422fb5869b3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c61e46722a913fca2f647d90009de02aa9cf46b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.222-renovate-internal-non-major-b99221647841b042cf5bb91db117f422fb5869b3.tgz","fileCount":24,"integrity":"sha512-xdWsd5Fs0KnLNiYC3QT7TsfGtb0kYMVYij3Rda4RJXwZx/VasZvZDzSK7HFGrC3keCaQVJU6gXk3lgDhUOsiCw==","signatures":[{"sig":"MEUCIDuKUaeh0iRCIipQjM1w0y0YHFGUMtc+NudJTDlhspnAAiEAm3zXkt5e3gkHGIM7zmHKxrBmQpnfvPBjZXMt+dz9R38=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHCvCRA9TVsSAnZWagAAQRYP/jE7NWGS/L5xptHnarGB\nyvqHDOFRGRy4brrXAeUrIW8CZ4d73Ix43GxQEJKocO7yb8I4TMsvW1p95CF0\n9POzaNxrq5KnqJvp3qAu03zIHtArZMYDmWRNTo+jyzsfXC6aYIcF/xLgcJjk\n1UtFh7Ah2DANmZeanEUNGTmitEyF/ZwcFOWN5oY1wMX+SU1VCSkw35MfxSnj\nQaIKdoZvq6IV77JD3e6rhncd4C38c4a7xMrmggDaXS3x+BBXwVyJ1KOzzI7D\nKxKV68UOl0aUn/C3bhX6FvFDuV+550vG4TnKWhExi4srPu7EbwkSBd6htpDj\nVjbr3Zqdm5AL3unFHaHRK1l/oTDhBYTJ2DcpKxDtUX+TzF9M6DM17j/GQGHe\np9oEZn3hvA2ySunw0petmr/TxP+CG+303LMLkbt6Rv0OYUzAlomCgQwj5SQO\nEe4leRqM+M2uhvYBZ35bRli6t/HXfge0up7MBNO7pRngD/N1kb8Se50SkcfY\n6mrD46wzpkTETyFSv9FTlSzjnNZsG7WTRijSjegEDjkhciotVHteuZds0rZi\nbs1ctrZANv6GnhkYUI5fGneGWNIwgwG9ePR/yaYjo9mH41lmOBqvQyoET9+E\n11ZX2bYep27zjSuAcueXVwdR8o5TCHCl9CBR1KWFsahfVRea0cUcwxtGBjJB\n+MPP\r\n=qe4G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b99221647841b042cf5bb91db117f422fb5869b3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.127","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.222-renovate-internal-non-major-b99221647841b042cf5bb91db117f422fb5869b3_1621651630437_0.6456500820175171","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.222-renovate-internal-non-major-ee886ab688f6543de72ff7283a0f4467ca762ba3":{"name":"@balena/jellyfish-test-harness","version":"2.0.222-renovate-internal-non-major-ee886ab688f6543de72ff7283a0f4467ca762ba3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.222-renovate-internal-non-major-ee886ab688f6543de72ff7283a0f4467ca762ba3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85473bb7fd3a1eac47269d1264c2d232c20decb7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.222-renovate-internal-non-major-ee886ab688f6543de72ff7283a0f4467ca762ba3.tgz","fileCount":24,"integrity":"sha512-j6PtPokrk9c+n6zSyuCs6/EHvZdWQh1c0LEWi+5fm35oPziHzEapl9S+E5w6gZ04GCPqqVpUKwNEkFkQMSeC6w==","signatures":[{"sig":"MEUCIQCljXSC/fsqmfg9B3tPaJ4VBxea0y3/p1GjGBd2DmWoagIgepElM6qUYmJbPA8zWjfwDbtC6FfCJbQNCnS1J8nD0tk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHH9CRA9TVsSAnZWagAAQSUQAJ6LPNb/fIJW+PDKt2PZ\nCoelHWYtwseyxb5ZRU0NPEWvFYaQygbbS4/xlN/xzgyR9K6q1e4Yn6NQRTaP\n604msKWrJP4w2oPXlHFdYCW9wULduq9zbOn0brmLLYRliGw3DhRFEd5oyVuq\n4aUeCklD94XMmkKmI3ri8gWEKR6zRMlYIECQ0XSAe05jVU6fBz7ekGlaaiDg\ncune281yZq81m8vHSTIYefd6UkddctUaOKEUar01dSavmjV/dJKo7f/zmWR5\n/Xt1zvZrpRrJ+wZYIIEB/qDIpD8QF+EJ7FyRmqtwSo6jA3dj2tOvY1vwBI/E\nlEFRwsKs1jEZThnjVLsydcCo61nDdcu/NpSTZuXsJ1ULncGY4+3A/RwSay8P\nja0LvSBzPg4jmQKWJRlE7t7h8i236iIOEb59AkVZGDt2i/FS//Tst3C3fS9o\npiu/BnQtstjpPqsKOKJfEUa0kW1jB7H6K3bdvzRYVfD74PI1y3rIr3jtUZwz\nhZWmD3wgoPWlS4sPtuc+XOagoi1XfBeIWZBb+pMu0bZlWDmJMHuYeq2P/URM\n+WKFAVIHHktxTZt76c618h4z22tyO2/2kmU19qFOZPuVjKqsn8z0FnjNM9Yf\nSLUS73yM6nOXChwFUogGKLiKutMSAJQLQJ5GiZjGPrkYfGX/2aPSelGu9X2y\n8Ktg\r\n=rj9V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ee886ab688f6543de72ff7283a0f4467ca762ba3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.128","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.222-renovate-internal-non-major-ee886ab688f6543de72ff7283a0f4467ca762ba3_1621651964595_0.19357553008183226","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.222":{"name":"@balena/jellyfish-test-harness","version":"2.0.222","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.222","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7749c54be483d8eac1ec5fed0cdb601dc0744780","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.222.tgz","fileCount":24,"integrity":"sha512-cojgtIGHF2hl5E8c8Q7uEj/uetZMfunq0WRFx8ovqmnrXDrplcTYpgBTWIpLGoBeovQgbt6Rl9IVCkFq8Vh7Pg==","signatures":[{"sig":"MEUCIQDR1BWeQ7VYM8M8Dvv2HJ4IS7ibUws9Aynho3t/96DdvwIgd+UKAhD0cPobER25bzv000Hx46413NPm7wMdoC6o8L0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102121,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHLFCRA9TVsSAnZWagAAnnMP/1pWLRt6YA99VEmompG8\nJo6xEafJgweDMfYDzeE1G0EaiPNH4qN10a/bFne9jqHtdxACwZYFanbOAigC\n0Gmas6hHB4+AzawDD2Xlj1sa1Ce21dmPi/UisZcgRHiUscG05Ip4bP9HjCmT\nLgb6bYwY0wFfeZykMlNWS1d+Ytef9Huc7BeV2AD7aWdEWTHS1+S6Q8wfbLW/\nPV71/IvNcHnMI4UvDrT+qwi2nDbSbwGaRr2ltUaMs+SMaUDo0iESCWegDlXU\nceyv9DqCr6i9Psid0fCf0fckb8bAWILtH8uzjP3meQSi68wZ8Dsgi2ZY2SPA\nahtmUn1xeZWLr5ZVK0l6OQHpS9V2SRnnqWA138nCc2spmWxamE60bQeXKOeq\nqHWGm75FJDZ3EipmzQ7Q7rGth++eNgR7hX3xH8c0mar91UheYLAS4CIBDQe+\nB1OC9kSRikB4Q9S3PKhaRyuvS4oPQG8ziInVT6lCHF4IqDo1TnFRqS9TUlrh\n8AKP4KKuDOf4C6W+1H4ZmCSBB3402GUO7et+VT2Ui3+oym8/slNbsLANvPU0\nzMaHDH49qA46/YPtoSMMvHc9XYVXlA+195UEA+tIZ+H4ykPvcW5Jj6pckWfa\nF0X/jRLFQaIIKT53hvLk1VLIJDbasVB0ZFLdZYpW4pYgFxmvVdokPTpEVeT6\nI39j\r\n=5o0j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bc9dd2ca7062e555da7dc1d10bfb6e28251a4533","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.128","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.222_1621652165103_0.8384861951503144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.223-renovate-balena-lint-6-x-42dc2eed5ed340f43dc3f76ca9906f45f44d90ed":{"name":"@balena/jellyfish-test-harness","version":"2.0.223-renovate-balena-lint-6-x-42dc2eed5ed340f43dc3f76ca9906f45f44d90ed","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.223-renovate-balena-lint-6-x-42dc2eed5ed340f43dc3f76ca9906f45f44d90ed","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f4afffbc9ad7622fa9c430cb15d6af7b0993f94","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.223-renovate-balena-lint-6-x-42dc2eed5ed340f43dc3f76ca9906f45f44d90ed.tgz","fileCount":24,"integrity":"sha512-Sx3fqx1xI/9N/4W7aypZfXvyPz3NsifjkiMpH/eYbPNrjvPV9zDQViBJyR57pBYcwmsRgNbxPjoiyjqP4ob08A==","signatures":[{"sig":"MEUCIQDHnru+EytBpSQcnCuTp15yeo1GtN2ntBLBJok+gAO7XwIgek2Ofjsij1QaW7KlX8hfG1hB7Asw3zthuHQpwK10XRI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102277,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHP+CRA9TVsSAnZWagAAS1gQAKNjJqTtXHfzdMnkCLKS\nZBpW8Z5o3D80Ajrs4ZzWcRUNJx7bIG9JCN65Q4h/29549qeUICM75bryFuiq\ntBtvrun6FS/pVaGoebRurVtvGnhI4SkxolnjED06hiomoNTrxxZWSzy4shHV\nWFyu/sfGzrJ7hFRrQow/qBebMH8V1diugmN2pXiaLbHSIoePdYM4RDzLWGT2\nOxchkTnOIqopALSbjYauaBnMnL5/0Y7c7LKJoRiFjffVuut6dtU34eIkgmgB\n6peaB05Lub5smymevtVSaCdx21Oo4BwVPMJYzVW5qQWawmBtIQIScBW5zsjL\nYfQuGoa8ZOGW/tawGt5r/InZUuCnzCTvzZO/WUWm60XisMVbcnOt6wZdbm1+\nJ6F5zjibnqrchvBQDKK3cRtY/BFO9cr6ReEMKwRZBb0OVyeGwnF3q+XRVQWD\nBpy+U8e778twi3BaWojafsvb6ejmnPmA+NTCkAoY/nQkQh+MKqsjWa1Tog4k\nRs7tiYpSPw/wNTlJ8U+lbepIKVVR50Wa45MDMUqXsIktAgIaeIGqbVlrLU8l\nA3ottOYAF2yNP7ML04P5k/lz5zaa/SMmT2wu7vPi9LweSsmOu56AfXYXOn2Q\nJvn9NnWBeDJrJxztYlSigAvV+ssKU66U7RR6F3bawUJRLhcPqa6AlwaKIjCI\n1+3G\r\n=wrds\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"42dc2eed5ed340f43dc3f76ca9906f45f44d90ed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.128","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.223-renovate-balena-lint-6-x-42dc2eed5ed340f43dc3f76ca9906f45f44d90ed_1621652477711_0.01497493136192185","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.223-renovate-internal-non-major-d3306e6c613eeb6b054851125436686228793b81":{"name":"@balena/jellyfish-test-harness","version":"2.0.223-renovate-internal-non-major-d3306e6c613eeb6b054851125436686228793b81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.223-renovate-internal-non-major-d3306e6c613eeb6b054851125436686228793b81","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3aae559beadfd0feea8330f9230db68ad9a256f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.223-renovate-internal-non-major-d3306e6c613eeb6b054851125436686228793b81.tgz","fileCount":24,"integrity":"sha512-p8W+DGfJDOkPkrk0EqZxRCxUvJuC94ir+VvpdFDF05jlXBDYuyl7+uQuCXe5ck9JAVEH7gzZ1o5pSZhiVnVHMA==","signatures":[{"sig":"MEUCIQD+D2OCEwYQg30SxQxKem9Qir2M2x1wI7TSbybQlE10kwIgGJ1H2zkX55Etw3S8Ov/IqzkN8zA9dk4InCKpZldLJLE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102297,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHR5CRA9TVsSAnZWagAAv3oQAJfFdvCyUgCgoTVflcpW\na6T6we7G/PwyBwSrMLQAFXqsAaoX4WEsHMN4XAFz+tASD1aQZ8lS2XDatk7x\nHEjYYDHTjgsGBFALIczHl8fTdKKS7itijoqbmnPgYOYuW5xKfFHUWIGxMc+L\nIFPStAbTTSJYnlM5w9oJVmOuQPMAnKFCr87MH91iURG7JaSyPCvsrdWXdwmc\n4DTSqwLN56lIeju1T7cyx3C1qSU/fiu1e26BhrGGXG0Cgkl274bfAYJoS7Hp\n2Cxi6fGDkidnohRncYj70TQbMciCX8IyXDSIApmyRp41Mmg0aarmJ3H2etlT\nYl3iH5RMun8rrzNELF/1yinA/V9N+Zld5F5iovm7Acpn7pPxopqMErcHEpRN\ngclJpHWDu7x4NFCOQ4ABp1K9zpBUvNnCFjVBySnMQbNP+IOWQZlL7LpNCsS4\n+WuU7TNuYkR8uMNKoRfovma4RRWSnBPqup/cy89AULW/xdjqUrRQTUTNWZIa\nenhVnFy5XPYEAeek8tBb27uQguQElqqZuFnqAIeU5lTroayC+OFjXwAi920G\nsAQbj+2f02o3yNrxL4TuFsv/T/XNG+JuS80rN4fn0zobHQ6KsK0EVbl62R7j\n8C75wSsuzKYe2o556uYPT6KO2nOHClwUbj7rd0n2yT2yUUDdy9qPJahEChYI\n2fhM\r\n=WTx/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d3306e6c613eeb6b054851125436686228793b81","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.129","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.223-renovate-internal-non-major-d3306e6c613eeb6b054851125436686228793b81_1621652599564_0.5252669136532984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.223":{"name":"@balena/jellyfish-test-harness","version":"2.0.223","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.223","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0f447094254d5551d4d9a764e1e0d26ff4a8868","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.223.tgz","fileCount":24,"integrity":"sha512-8naTZZ3qcmEA7hrS1+MNTGhtYWMSFPYpVdrKUXwWhDtPNho8H/OGp2sMm2PB7x6f8pzAgPdAKJDlbbvljlyLXQ==","signatures":[{"sig":"MEQCIG2ZguAPKQmhnDkAmbuNj8K0WffljCGgNjrMre/G+jzqAiB+kRGnYz+9lNaxvCBttOdgijXNEgpW5993H5HIi7urrA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102228,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHVtCRA9TVsSAnZWagAAH1AP/jXQW+q3/TDVHLsTYtvY\nh6LE9YLu+0YQhSjEqyWEuy9T/zB8HMpF6q3QLMAhJjCZotug+gLeEwqMRRyg\nm0dNIPTpGawjIi89hDXOcegy4A4u/cksR4YWydwcYudRTCDd6ncKMjPHw8F2\n6Eamo1y45dvktG/ZsdiIkn75YtFS2YF5o68+r2oPCy4EgoroOgqDf/vJnPln\nZ8fhGVaRh7qrHJ3XYpIklMfMUu93vmKduXDP0Q2eQXdcDLQvNcOb4cxzqZcv\nVm35/AP6jfuUs5RnXcF/j3dB69ioeDQBLkgY2LZDx2c9KcLseeN+s7U3uUp2\n5rIb9n3h6fEpXZnpDgeFrh4hm52LlE66gsjesZ1hPYJYIgj1aCd/haTXgHut\nsAxGtn8wEUHbTpeY9HoOlcMGoiLKfqBc8Bt09pqbohlewNLPBa47i7JUflXH\nDCGfcO85BZr8lRGa0pkGVrT9MPfeiJnn8KnFqxpwJUKsZpbxDrGAI00v+2Qk\ns7fir2e9JzAG8J9QGY8jy7Ytxus/IJE5w8oS64VnCyozgde3ytLtbRSoiFDS\nhkte7meOn69LZLxlFLSBwm0hqtfxseOc9g4b+W7SH8hdBLqCv6dWqrI+OdEU\nJTFiFLQBGN0vP+ru0GSUUN9U74FyC9LROHyjubpw4AJoNcUfcXimL2jE/Ebk\nXPtq\r\n=07oW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d2c3a0d372b8a3933fcd08d9f591693e33c1b0c0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.129","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.223_1621652845244_0.06992343632933129","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.224-renovate-balena-lint-6-x-27c5d073efb598f54e84251707930573dc63b30d":{"name":"@balena/jellyfish-test-harness","version":"2.0.224-renovate-balena-lint-6-x-27c5d073efb598f54e84251707930573dc63b30d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.224-renovate-balena-lint-6-x-27c5d073efb598f54e84251707930573dc63b30d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"169d9a2c3de5312c24519a0f356723b41a749bfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.224-renovate-balena-lint-6-x-27c5d073efb598f54e84251707930573dc63b30d.tgz","fileCount":24,"integrity":"sha512-GviEt/zyigLg2YVsJHbjY9sdKQ3q3b4bIZzDXKmTR/6xeU+tYwUNJm7wnpdO/KIdMtm/lLuQjO8iF8yAsdDoDA==","signatures":[{"sig":"MEQCIDvDIdUW84P8TWYt6A2QWRqqr0jsm6Exfp9cH1Tqd98jAiBT7dpHRiFezUDdSpRR+kNJSREm6yRYIz8Vb67xu4QwsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqHYxCRA9TVsSAnZWagAAkGUQAJCY5+op+v41IY4tFtGq\n/S7QAwZltvjo6Ttj9PJWd7b8OS5m7J/p93FmK+pnkUa9r6E+1O02qOT42raX\npHSBpXTfhuO1VJFWzRCszV4HpS0AnLktlUc43vQIVCvZASijrt69pNIIHhm5\noCGYz0JtiqmxdiM0y9kjXEsuMqOtgH7afloityqAlF+dKxM2Ee8s0jWprOjh\nk8K4GGOh71ypbAesjZ7rSty7tPUOtqSMYjR+ZB18Phr1iN91z8hfOCJWo9W2\nfkq9xSqon1IuSHWvX3jjlOI9vH5bHHsKFPv7qaQvO1e7PxcJibx1w0B5Vam8\n+3ee6J2P55mwnOBGK1h1bW5YrbVajDHsPIA+8+an5EbQYgol96hvVBFV1uhg\nEwkZMyXKM776xiE1vMg5APiM1+kVci6MznJ7XCNatzMZ22WcfTxl0ntGUGA8\n7SkdXNOB/GeIIqpmOC156B9SV8oyLu5gFe4WYx8B2JCsnZm6LO/LXpwG5j8c\nOsD8vxC1kHxZfKSZVbDMcFXqZxZkkyhzfsJnqGo817cPtcEjCu3c/j7RYBRJ\nRarPcv2k2fR9wj8vck5/xxRkZz+NJsXEGIPDcgyQDwPkgLXoPABcvKKuxszU\nEcewgoG1umPtynCFD9L4hPqIImrTmWsU/KtdAuxp85atbY7+3NYAKsiiwcQF\nT18U\r\n=8god\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"27c5d073efb598f54e84251707930573dc63b30d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.129","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.87","@balena/jellyfish-worker":"^4.4.6","@balena/jellyfish-environment":"^4.1.13","@balena/jellyfish-plugin-base":"^2.1.93"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.224-renovate-balena-lint-6-x-27c5d073efb598f54e84251707930573dc63b30d_1621653040550_0.5212596651251551","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.224-renovate-internal-non-major-74f596e6d5022b4d828ff639fc2b3bfa030e0ac8":{"name":"@balena/jellyfish-test-harness","version":"2.0.224-renovate-internal-non-major-74f596e6d5022b4d828ff639fc2b3bfa030e0ac8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.224-renovate-internal-non-major-74f596e6d5022b4d828ff639fc2b3bfa030e0ac8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04cc2424de695bda7977b506a284cb5f7f9da818","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.224-renovate-internal-non-major-74f596e6d5022b4d828ff639fc2b3bfa030e0ac8.tgz","fileCount":24,"integrity":"sha512-FQhNHa5IRGzethvVU8VOsv/oMlGR4YxVvjc3AlDVkXYbpjRSmUuiHRq9UZid1z/tEgE3tubw9M8XJ6G1J6tvbA==","signatures":[{"sig":"MEQCIAUyZ0UH1Z2yQmIpe2tV3QrGDl0Fxg70B48m0XoZ/e6cAiA+V2LiJ0fN9tenyeME1MkXZg5ALcwMbtsw8PjSrEM6Uw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqcF0CRA9TVsSAnZWagAAgbUP/j2WVD8nor7TcbbV2m0V\ng8x0ROTDIcF8s++dsAstVU0Jl0Dej7/jACmhHOreSYet1vvPv0Lw9Gy+FrkG\nKnTt1sNUcfDxYEtSJmE1iP9jzZThbTlYVhurBglZAOsDFOR657sJZFJcu16c\nYwxaDJTSLq+0AqGZdVyxA7DT0Vf97NYrNLwPeILoPYhEvDvVzUwTlgSkKSZ+\nLL8+BdWbNEqGGW3+IFWUcnUvTRzaz+nqRhUBi+4iMDxbwACXQwRK+xGPHCfI\nWBX6lF6oyyTTEgu+UqQkn2wMZXKeb1cLwEqy3I7SS5+X4HJp2SapplwSPf9h\niM1zSAmDbYTgestV1MEEynYzcBFX930UPngVadQVdX/v1IiGHCEi329Db6ze\nrVjRDZpb+3FaiewBXKZ4pNx78vfI60XXH71Tn8gDxCXhoi6LHWXhHkG7P8a1\n9d+qnFljLDM/C678mSrLPrF60AC7P/VGO+ad0sAoqJq48hNCJikdJaqRiIOq\nW1d5X2UFpKXG0Ej0xr06wUGJmC/p4ETkCKtO5UjG3nzrthL737Ljcdi8U580\nheNv2ZVGlR/QXvcwpiRYik12MWRrOzjUlVfSLKKHLo5T1ybw/u+BKJ3pL68h\nZ6WNYPiSRWAETq7bk89/Q/Q74OIUHYwy72wH0jT5gm/dCLtvPMbtQhTut/Wt\nHC0L\r\n=VxhA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"74f596e6d5022b4d828ff639fc2b3bfa030e0ac8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.131","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.88","@balena/jellyfish-worker":"^4.4.9","@balena/jellyfish-environment":"^4.1.14","@balena/jellyfish-plugin-base":"^2.1.94"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.224-renovate-internal-non-major-74f596e6d5022b4d828ff639fc2b3bfa030e0ac8_1621737843654_0.6922057287788337","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.224":{"name":"@balena/jellyfish-test-harness","version":"2.0.224","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.224","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5bce63fce1023594c3e1423408d800cdb8ecaa6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.224.tgz","fileCount":24,"integrity":"sha512-bKlsKCgqx7M+fBU6FvrZaSdcsFuYLzpuuE7AeY8tZBJXzbsHTafQxXjWaq6ibfvhVKcOzl/HJbZw4217HrlUqA==","signatures":[{"sig":"MEYCIQC2eOEts2XMFkcfvWfWBoD81gislh3UUnMvldRHgtH5wQIhAPart91mlgBpNVIWQvtI1jrR7/GIdYkQQdMptqWEPCPM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102307,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqcJUCRA9TVsSAnZWagAAVw4P+wca2JGAKqxez+sCHrWG\neuFom2egfTU2RkQ4yvQInQYyx0HiSgG61szzLqUQ5YFuKJ3BvX+VcI8ycyK6\ny0d530sSOMvJmx3xw77rB25OhcoKxUmmL2E83zcXsY3VOABC4DZPzYLJbI3C\nb8OGMJsWmcaGEzsJwEArseNI8UDi0dZWZtnMiK6gcs8W6oeGZirpv87RBrFF\n2BE9gTFTx+xbEQtMEG3l/W3Sixjbhd7BiGHYej8zbnvBB/j/kPsOmG7tFiJl\n5FO4wDWK/9r2q5frhSpEOL8dcecZakEUG3t9Bmzxdk9Gc3+aYlow11vD5NSj\na/o2NlEjdtd0zOP9LG/lnm0uuzMPky00xIaMfMVMrMIp8/XTAWrFL97YC5jf\nSDEcS7GI5+5dHMgvqHDwypvz6OfL4nxH3zFxKLSANeohs5U/qN9dX725CDMZ\nMzMMVqDxza6FI69U8VJCw18WXK8XGJJdXpAdT0TTWyVydnwWpV7cxVlMfG8r\nSlNITFvRSzldLozR0fjZ+3d/gbtNarEj543nSfBabflO99RKJZ6+/QLetBFi\nROeEKlblRSRqeZ5xgXpKxkQStwOqGgWbpLJQ76KiFfbGflAmnvqokVnkCm6j\nloeRu/dFVAIygbAhkytslkLiqbHqeOSYfUtv3Liculw2cIL3l7V7pvIG2AqQ\nMqYX\r\n=3tQv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f681b8b802194e16aaba605542747da99f9e21e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.131","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.88","@balena/jellyfish-worker":"^4.4.9","@balena/jellyfish-environment":"^4.1.14","@balena/jellyfish-plugin-base":"^2.1.94"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.224_1621738067698_0.8768246894054985","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.225-renovate-balena-lint-6-x-8389ac6c09beca8075eda8e88a33520a31f2e736":{"name":"@balena/jellyfish-test-harness","version":"2.0.225-renovate-balena-lint-6-x-8389ac6c09beca8075eda8e88a33520a31f2e736","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.225-renovate-balena-lint-6-x-8389ac6c09beca8075eda8e88a33520a31f2e736","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0378798c70ec4dfc00b236b6ab93b1bed3f03590","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.225-renovate-balena-lint-6-x-8389ac6c09beca8075eda8e88a33520a31f2e736.tgz","fileCount":24,"integrity":"sha512-ms17WqdOYTCSGxo89IosgVD1hYv3aSXmA+uANQFg6ywzjWAwI1XDONkGwo0kfzwlSOzHxryVoaSxtrc86vHUVA==","signatures":[{"sig":"MEQCIC1LM1JjLMlrFQdg/8GMxm1fYW+7T7kVoTY6HE1NCVvrAiAySkBwzEFO+b+3yPIc2OP2n+qwNmKvsTd1K9/Lipg5SQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102463,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqcNRCRA9TVsSAnZWagAAdkUP/0Tf3YGdDcmySyfSA9Py\ngnB8w6WL26zdpmYeU+OOPdG0DzeJmIF/Y4w+MiQ2ohsBKjZZw0dl2HCGSDJW\nY/uy6CKupZtLUTo5U6I3rBAgexNb/SJDp7vSWNJ8CkuEzitaJWD0vBV29xtG\n0RRYclphB98Cuhpvo5lhVVCfbzLF0gkHorPK6Zynlu6InM3ydZQnksPxRt+L\nr5c9VXRo3FUKNcWFJOLZ5Od4dFNXLyo58pA1E7YEjnkmRbERaQRS2iVLImgr\nl/wEBcaCOPi5kall+8WQRDkdeZHX+MIQG2rVZFFyNeO2EiN1A7Vg6+2aG487\nmmu+GXfbGV6TnTEywXzouWXwzCCHW1C8kHeGc9KbKIsNtQ8xW3+yO44uXus+\n3Z4jJHsAs/xCWm6hyEQZdoIM0evdEC0CdQPreEJXnA/hdqYKxLuNqvzGx7pd\nPKzTIJ08jm9iq0JYB656U5v3DaW/kS044irhlWAuZKhgu+RSr3t+iTVw6g/X\n700CQ9vlqVXhg7n3ZLxnutt1jMS5kO3fR4Zkbp4P8UZVaA/NYYRysOBrlB8E\nxgIt8cibzBIdOQaFyof3V3IQCjutuc/FnRI4JQtB4r8cCGJkyB7zlCCoQZUD\nS/fRxYUjBX7AR4XI4WZY0Q6SQPs1mbd1y69mgjhvZmiv5s1go8CEH+03q4yw\nEOHq\r\n=rHkz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8389ac6c09beca8075eda8e88a33520a31f2e736","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.131","@balena/jellyfish-sync":"^6.0.169","@balena/jellyfish-queue":"^1.0.88","@balena/jellyfish-worker":"^4.4.9","@balena/jellyfish-environment":"^4.1.14","@balena/jellyfish-plugin-base":"^2.1.94"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.225-renovate-balena-lint-6-x-8389ac6c09beca8075eda8e88a33520a31f2e736_1621738320950_0.6408319227474246","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.225-renovate-internal-patch-3108f7873265c1c2520b80783cffff2d7e972fbb":{"name":"@balena/jellyfish-test-harness","version":"2.0.225-renovate-internal-patch-3108f7873265c1c2520b80783cffff2d7e972fbb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.225-renovate-internal-patch-3108f7873265c1c2520b80783cffff2d7e972fbb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04214164404551459c50571598dcf9823c6c2ee5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.225-renovate-internal-patch-3108f7873265c1c2520b80783cffff2d7e972fbb.tgz","fileCount":24,"integrity":"sha512-Q1m9WfwOLuysCSGgaZhaah/BsFdOXUjuDgO7sE0x1+jKcH+b7E781swKippXYlAcaG1uHryW9k0jHbwR/sfzmg==","signatures":[{"sig":"MEUCIQCynjKaIVXh/ExFgw9p/hsDOrS+4ahNqPt0yrxiOT8eigIgbqqMWuOZna7uM0f3JFz7QVP4JhJ1gN30jiZtQChvBX0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqdPFCRA9TVsSAnZWagAAJuYP/2tNicbQVBatPfuxlLO1\nupQpdKu6p2axrpWmjiXMbeRe+5H27eiBmTPISu4zvkmYIfW8rL0gskNk2/Fk\nlzoOWo6hiq2k4qLEnY9SAcuyZaADO/tJDsRX5LGxrp0/OP6DgI5vgjgsvQg3\nCSRBZsMg6YhZHSiueKTPGirBrzO85Axx5E814VtEfYftJfOgfYp/W5mCJLCi\nVeOjOTxc7zv3RG1TPIkrztI+SgasmROTMQZ2SygTId/ANxePy412SGtPFJrd\nC2l42NwE8rCPTI+CVTSaovSFLuMUWH6zphXC8tfQ6fnUk8zUyowLPn0Nr3qt\nGjN/opRRAscxUb10Ujo3tKo8RnVidyQrUvtIfzzptTz5/Y0jEgeQI4p40lKO\nQqIIzQvMmgbc8sPxGU97u8otb//nEitmHs/Fx6RljxvicF69QANkFujy/XHj\nyu5VaLqesjkzQ7W1iB7DUYnKmWuEmST3OOuwzx6+Dh6bZM7EQ3nB95jc3w4I\nZAFYT1eDUxOMs9NgOPZGQ6o1sfBeu/MxfqgTSmkcfcKJEvZV+b6a7hDn0zGt\nM/a7jHjim7XD7N7scPQ7DpCI9S+dpGijzIec7IARUCNN/QeZAsHoRZHNZb0R\nRhFELsRKewwEc5vwbjvPENLnVef7SlN9XSVtvET9wCgTHS7WESOOe8FYIWz4\nuS9+\r\n=V8KM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3108f7873265c1c2520b80783cffff2d7e972fbb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.131","@balena/jellyfish-sync":"^6.0.170","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.14","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.225-renovate-internal-patch-3108f7873265c1c2520b80783cffff2d7e972fbb_1621742533158_0.967908725300552","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.225":{"name":"@balena/jellyfish-test-harness","version":"2.0.225","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.225","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2176afac8b927c2179eff7ff211eb5ddb3a9ada8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.225.tgz","fileCount":24,"integrity":"sha512-XRj3DcIi0OEcojmCR40g8N+GmsTYNmi524lntta8xS6xsWkSMs//egaqhY3pZ7GOE55RjuZH5e6sdQgesVmWeQ==","signatures":[{"sig":"MEUCIQCkc2TQ2+SUoO4U0Js0SK+oOMhr9HtRMro7PEoZk/A4RQIgXiOUsvx/xeqebUAXjB/JACVxaObmkgOve+e4MrVWmxk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqdS2CRA9TVsSAnZWagAAXdwP/0fSAZyAkYbi8eTlQDOf\nTdSuSZGFQDxlDkaef0AgnrqpBm+8z42/z7q4l4hbUg1twRf2AxWwcfWxRJ07\nA6O7yMaa1SZRM0oXAQ6lz7pAYM2iDeoPZYbFhKhSGgukMQQ3mYFjbYykpmYN\n+Ric7qNoS3naydh023IszEZ/bf4jQxZM8gugWjOCLeAKBOxVxZ5dfr4+1L5E\nXfB1mQHLRFsLkPZLz2isCDwIdZg3XV26/4blUi3FFPUXvVZxR9khzn8wQ0av\nbCcZbxKUd3Gc8AG6v/nfuUSr3mL9uxEnyn2NE/Z4pF30hcXzGvC0NDDUgPo8\nkvCMdh0M5vcqQ8kacvXas7J2MW2TcWGuHMysnNF3Zcyg/u8Y531ExCmls4hL\ndRo3N9fXCujPqW88KUWeX6JnkE27wSjSg4wQsMa0nWfVJIoo6XJcFJ0S/iM7\nI3ou5d9t7fjG4AddZ6zc3boRarQokCnLAgZrzc45Sm4LuIo5DnUFp8hpzwpI\n40J1jbzyHhCq2X+25DOFc/VyM/l58nBELCZi48y8RsreI3IgvetBnQaYI8p2\nB3Ao37i2+U869fGJSXP+VH39SyxqnE5V0i6Q8pToM+1YtU1KIpSo3RtSdIN/\ngm0+rDhDdO4oC6p432olXA+3lsaOW778VvISUjsPSQLIzBnErwJzKi8kNsLZ\nUaMz\r\n=0dnt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3a5be17b4eb8d620979e83b3c01116581904c2ed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.131","@balena/jellyfish-sync":"^6.0.170","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.14","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.225_1621742774108_0.34046647681660414","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.226-renovate-balena-lint-6-x-215ddbc72c49b2aff6db6e0934208a4b2f4e4166":{"name":"@balena/jellyfish-test-harness","version":"2.0.226-renovate-balena-lint-6-x-215ddbc72c49b2aff6db6e0934208a4b2f4e4166","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.226-renovate-balena-lint-6-x-215ddbc72c49b2aff6db6e0934208a4b2f4e4166","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"656b94377b3b9edecc0fb2312a7d6bd2191f54aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.226-renovate-balena-lint-6-x-215ddbc72c49b2aff6db6e0934208a4b2f4e4166.tgz","fileCount":24,"integrity":"sha512-EJpNc4pWOJDx3lG8AjhioKJ+7lcbh8I6T0Z4QYhq3PSW0Erf69HAPp9MZDq0q4EKQoWJXkGAyY/Wr+TU3YySgw==","signatures":[{"sig":"MEQCIEtcLfLeyOjRUh+v9Ul1ipj8Vy5zVmZLzB73+UA5pFtOAiArCdZWuIT9A+mi/YEC7Ou7jUgLQhIidonYkZ2Aup7QKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102539,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqdV7CRA9TVsSAnZWagAAZFEP/0mX8f36cZJvwTtoCImp\nzCd/HZ2kkJU7nk172mddrZFxb5GOvtB8SBhnJ0UgzYbPRC8VeKpQe5dyzdff\nA+eTpbtmoa4z/Gyg3UmjbWtkJZ4WNLXmDsTt5DVz9npP/sQ/DICPnQsUEkas\nFlFAxejUKbImRznHif35SJ9EgayJQBXzbIYvTwKvKfYqFwmRtzX2+yCvHkgi\nhLndaaabX3ahw1CVHFldn0+m/ra8QOXHjYciUaVHz0wPRiqcfXk9R6Ory1to\ntwJKs+fIuIWuvK4ZzN/aPi3WFg8bahw9VyQzxbnOD3AYEMYtZ+lBwhDWyRv3\n75VqwJaOLoihb0xiZ58ywfVRFzVlN5n2G30tcEast0qHHP7tavQnxfB5yExK\nm4SV8637nqTknAMDsSEbbRthdh0ghhuGjTbDKWsrDJIxsojdG3eZZl1QRJ7U\nSnYgPWgBPCYs33otvSDl7aK4EqbpJW505OlefeRXTr9PEtosqUS73zoBn1Ua\nFBf4+Nxuf3BPar2sfmuseH+QMwzxqmhe6H/BqtjOE+NL5YMVLGZB56S46grE\n3lDdlHZJb25Sx1oN3rw/9mncYVGsQSqt8O5EcUsj0mELLPmOtoA2QU28gyb0\nDQfYn2NZQxnlgln8UUi8+lPrMWvzkMbJ+hVFWemaFhpVD492zeLqybzHGy9E\nvj/H\r\n=pOVq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"215ddbc72c49b2aff6db6e0934208a4b2f4e4166","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.131","@balena/jellyfish-sync":"^6.0.170","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.14","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.226-renovate-balena-lint-6-x-215ddbc72c49b2aff6db6e0934208a4b2f4e4166_1621742971496_0.28098520736262356","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.226-renovate-internal-patch-04592c8642d97122b3e82f64797979011433c60a":{"name":"@balena/jellyfish-test-harness","version":"2.0.226-renovate-internal-patch-04592c8642d97122b3e82f64797979011433c60a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.226-renovate-internal-patch-04592c8642d97122b3e82f64797979011433c60a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa884e3aa8df202a76af46b40e9e817ab3543f77","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.226-renovate-internal-patch-04592c8642d97122b3e82f64797979011433c60a.tgz","fileCount":24,"integrity":"sha512-owLWmKMeIEF15w9cRAhj8oQjAPPTOFaii/k86ltfC0J4UOKVM11FfLy+FqAysb7ySSTyosR4TK8Gt9oPelasMg==","signatures":[{"sig":"MEYCIQCwLLFhZPtCYFLqzr53p45Hvz8bZUIY+R4jhjZ0WThZGQIhAP3zQvdxhFwukBiZGbYGaIL3SDbNJFTeP2n5EAsILYVG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102523,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqg5FCRA9TVsSAnZWagAARFcP/1TtnEdDon945nsioIXB\nVllPJ2s0MKtOiw2STxROTcqO+wyfBf9fqwa5qSeO0FGzgLL2Lw5mN8kWNfqG\nXzyquuDfbGF9fxKEaqrwwVGc8+3Zx+zPGBgFbjqiXM7o8VfSxHXDwoQ83AbM\nDLB//sf4OChlyLPolaB/WkM44dVGgTAPXv6ousPDnysj/q1XF/WMUePBl46Z\n3F8p/tIillDeN36oMj2Z6F678VCjH9/eqj7ixsrl49LO2FQRLzaQao7qJ+QP\nswtYOPqh3RgppLDJC3AY+VShyAHeh7VAXUkx6MxF2JP5hbJEpbc5mZNHIzSP\nRxdNwHNqgpyMKZEROy3WJ9jkoZDEBo/YmEYHfAPfvaheED1T62GQM8EylMLV\n0rmplqYBzhedX4LdOldmgoTpNpEkqlB3J+yCn5bzzXHYU+zwcomk5O7HB3Ai\n7u2PsvLa1mrs2sjJaJJSEOmwWDRbfVWF+tBuAOQHOMifeCVdvl2+KXzNeF0Q\nKpEr3CPVhCk995xYG2Ojad5H/vO78MqhOpI/P6Lm5kCf+xKEetfpuelXa7lm\nAfSsvTnQF9R2c4sfVS9R4+OlLXF2zEZzz2CVaC2SerQGeiED1eTcr59Bc6Wf\nnvnkfMbhidgM7ypB6WekdD6EDWPzvHYUIYQD/YAFb0ii6pUAheDdD1AduIv2\nIM0O\r\n=8h4n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"04592c8642d97122b3e82f64797979011433c60a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.132","@balena/jellyfish-sync":"^6.0.170","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.226-renovate-internal-patch-04592c8642d97122b3e82f64797979011433c60a_1621757508703_0.15275921215171095","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.226":{"name":"@balena/jellyfish-test-harness","version":"2.0.226","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.226","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"972660c865e3552d3ccee88945c4c55c0e74ddcb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.226.tgz","fileCount":24,"integrity":"sha512-EGv/AFgbDY3kyeLrCzDC+kFsvOGmhaBo//5bi/YMgwu5T0qkOVVJBI5Hp4E9C5z8GjRPVnZxO5XzItKOMdiRgA==","signatures":[{"sig":"MEQCIEGORrO2EhCIlw/rcIpG0PQ9lVTO//z5iB6qoO3MKlo7AiAk/7O+yB1O/BqKbaxS7O2S/cIYpmrUXvNkAoxE6ar3dQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqg8lCRA9TVsSAnZWagAAshIP/jg/8dcAeTtiaE4che/d\nKZ83frKp4Swdap97SzJuuf/JdX/+wQXd1YS8JDqlSphRV8H3uL4d5D1nd5xo\nWuEXcVvDwBt1rTQ9REvvu+Yl3DN9HjRNjSZlS1oQlCG1Zw9ZmnVEJM8LqGZX\nORptod+VP+RNXFO4bo9JltRyRmiA/uOjHYSZLVm0fOpwp5rlhW/vNzf9y+m3\n9CpudT/UZQ7bS57XD0GchH2itqvnIjjjOX7AhJT51ZxsRwRvYsVZNg83Y1E8\nwZC2fUCHRBuQd81GBzX8rpMG612cId6Fqy2sc52RK5O/KbCcElY6bsYD3dXB\n3gIcwOkREXewWWSmyIU4O9xXd203GeCen/ztroRVK8NGxWbNDXp68OdT9KBL\nGH1sovBsIP97eRhPgtu0isSL70iFmLxIarLlDkDeuE1VNW9J/8uI/ciddGzj\naHMk7A5h1vSxCAg7qrH/N0EFnLJTv9hfJ+/wiHCmhps3UIHLPAAC0QuGYhUG\nyoPVfDUy/2eLAUy3vAIpotC23W1JFO6gv0w/5MblDID5nLzRm/rJd2BWrmb9\nkAAoGP+LQTX10SLI8ORYoWD4MfkO7/0L421OqaeRsxqIr2bRtUV+1jf8x2KX\nHO4E4YaQUH+RFYtY3SqXSO1j4gXntXUNX8PNseVWdTN8PaOGRn5JCJmfWZWe\nHGeA\r\n=oiN2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ed25c1189670f757184239dc717ac5e4d9914a5f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.132","@balena/jellyfish-sync":"^6.0.170","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.226_1621757733197_0.460416754909333","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.227-renovate-balena-lint-6-x-96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0":{"name":"@balena/jellyfish-test-harness","version":"2.0.227-renovate-balena-lint-6-x-96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.227-renovate-balena-lint-6-x-96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b84b1c594ebea28ab28018ca8946d37d8222c731","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.227-renovate-balena-lint-6-x-96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0.tgz","fileCount":24,"integrity":"sha512-Q288tiTKgPrmelRG+fOTO3Y+/7hdxU9Sy4nBKbXbzNpdeJBBwiE/CRvCldVWMRlGdVVSnVDL73BPR1Z13G+GVQ==","signatures":[{"sig":"MEUCIENDQc1R+W4RpgNBzfqKyjZo3xBiLPcszAfE1nQxU7TLAiEA/G00aMVtCJLwLGqovwylUqftasxo9mU06QeduO3bbZY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqhASCRA9TVsSAnZWagAATVwP/3Nf4QJuH5sf860WOkG3\nZrD02w9wIB3lKas99CkxAHXkAMRPzqGnU8M5UntNFKcAAp6Pd1JzC/1GIV7j\nIAUafFB/eijohyzVKH8DrLr4DyTNvH13NDfSwrorAWroFNVunA+V9TycHsF7\nVYhbsbe8eZ8wbzKeQ/Vrsq2+CFqQQvc+4bJOc2EuxDx+dvZnIcZYL8hpSloF\npSZZzMdgEdDRMLIsaquNQJuxybkB6FNlkdcsqGq49PF6QqKU+piA14fCvJMm\nDihFtj9XS9bKIoVvW7jNchzpe0b7YqtOuFNb0rOrmWynXz2bOv0/wxbs4ZTR\nhoLzlLuW45ZdFva+B7Ch+SVHYpaY4dxfvqObnLb9QauwuIS/v+Bc1+Ge3yCc\nm7XN3GDPxKkcibtXT2WZq96HfU/HV7JHvx9DKohQkv25vCt0sWwXsH/nvLbR\nJW61zQ1IMLUeaQbzSTR+71AKNSqPXI5PSRPWgcYx2c8GdELqspGQalOyvktw\n+3Egwu2X8uOreuD5e8PnECsTmaXEyb+9+m4Ng9Qi2S/QaRvt++4+2LO4a/JJ\nlOTM7HMzZFOGTxdo65KwUelOvG2fxXUQjB5XD5xqA4KcbPllrVCWGnBxSgfI\nxfzRukM8DtBf1bsG1PNWhL6kOJb+SRFrS14cjk4FAz6hd1qv0e2izeb9IEL7\nlAdg\r\n=yq2l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.132","@balena/jellyfish-sync":"^6.0.170","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.227-renovate-balena-lint-6-x-96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0_1621757970484_0.15484403861079254","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.227-renovate-internal-patch-85cb33e28d78923d2b6e002c2f2a1220aa1964ba":{"name":"@balena/jellyfish-test-harness","version":"2.0.227-renovate-internal-patch-85cb33e28d78923d2b6e002c2f2a1220aa1964ba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.227-renovate-internal-patch-85cb33e28d78923d2b6e002c2f2a1220aa1964ba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fda806813e3ffb9cb953dc82173135a89c0e9b66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.227-renovate-internal-patch-85cb33e28d78923d2b6e002c2f2a1220aa1964ba.tgz","fileCount":24,"integrity":"sha512-24/F1CZxyf7r39v7NrXeq333as15EmDb4NJkeatb0YVb9M7gBnrTp6WfyBWgRS/PF5VWDR1oGtdbXs7rDZOy1w==","signatures":[{"sig":"MEUCIQCfXwJJksORqqTNGbfGIw7W/h5E/OEAprpvpQw/cB5RuAIgP448anQpSckeX/8VCyr/C44AOBTn/KvM09BlW+peFfY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqhD0CRA9TVsSAnZWagAA8W0P/Rl2LtDbciNUYgphNr7P\ngI4y+mopZCHNe0iYDU+FSqAtBhuXudUZMy4seu+U2JAbFAeeZzj0cip1h1tU\nVY4cc/vGFtHJyVl86Y+q0NCqd17T9iMG1rBS/jIBva6yotr6ipgawAT7Z3z2\nhEBoARSWx0vAygQpEGWf/AsgN4SdD2QJc1JyUJLpqE7N6jU4jvgtg4hzYiqy\n32wWB52R7i3RHMuSsj2GaDH0SG7seT0ocQwWjxFCk0ZaicU0jjnF/C1FRUbF\nKCRKBtqmgIiOr8o3liIVQECFXGLaiWPBlgQ/IyLiJVLRfumcspstemO9N5Kf\noZAS51TUcQFrCUrCRhDzHRK4uKoRHuRnSgv6vIqYngb/5nwdPWaSlGE7NLDL\nywAiX9Bvp2ilWmO+Uz6m+jjGhqTM+Rv/mE7aktFeyq/Nscdo6p3AZUshBSvR\nNjJLai4MlqQRoQdA7JbzLkXkAxnCO4mM4dqcP9HfEKeFpZ2v7kq1cwjHGrhc\ntPkid24JT1Ei+2kkofTAs6xhkUbV9ldHWUuzCUr8f1LFN4lc34LiN1oPXhyp\nAklxI9m3BBOcgA71gcAumWizjdhAHw+f/0mAqYffIHs9DdNVk5f7QSwJ+luK\nAxBPeazvLL0eH6S9efrC14GR0ZUk+leM8XFPmQslLtd/fcC/T/a7sYpd4gp3\n1Ft0\r\n=7y2Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"85cb33e28d78923d2b6e002c2f2a1220aa1964ba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.132","@balena/jellyfish-sync":"^6.0.171","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.227-renovate-internal-patch-85cb33e28d78923d2b6e002c2f2a1220aa1964ba_1621758196150_0.35609345353493316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.227":{"name":"@balena/jellyfish-test-harness","version":"2.0.227","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.227","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"87de9c795c6294c3c009e59ca21dc770c153967a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.227.tgz","fileCount":24,"integrity":"sha512-ykVKJbxhsWeJyvnEHoyC0unb/VjRpncUigz5BqwShaCmxVli3wzoHzYHMAN6HxZpAIQa9Zca5q+Gu6+iiK6u+g==","signatures":[{"sig":"MEUCIEEKg65vEpMw4Q+KVR7zNif881a3Ol3e+RD77FWDOCe0AiEAsVrYzWsqFU/wIk8ynuytt/VgImD0g/GEeln/WOSxPEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqhHWCRA9TVsSAnZWagAA0/EP/0h4RKVqGWbYZtUoPQUi\nRhLeW0vfF5YZD/w+dN76/lstXknTmt5lujNufpXxO8KI666e67KTfdWmNrg1\nBwvDMwbXycN18bMsJ281IFT7VxNlqONooqjiYVE0eXhpt86QZ9q5Qni6UDI1\n0BmhVxsRKm2Set8l/w6uVNyDsMAQ7r1upetutQ6nm89y9q7k1Gg+rca2MK/2\n69mDZlWOOpsS+JTU4ZvW7avtzy9YA8VQChDfIrM4FKOPFwj+WJkkQnebxjpi\n99YP1mKycK+Mr25kcYhQzRFWXDVbLwxLFfP0WNLYO/aArkvP/ZzPJQTIvLlP\nSQcNti46KaXRDA/l57xNQ/vfzGRmNmRV0MU0mmrQxPc7VkxQLdHSOyMw3a7r\nM29/aKHnTnn6o6pwvdE5rIMB5Q0jDMaCDtQHevLKMqgUHak1ECxC2ijTDtpN\nVxq4pWUNoq7IpXJw8U3B9U7F9KeHZxf6NzTDjZge1wsERexQ1gTSR71MDwNX\nICV39EubmQXOe+F9vUe47WsC74unRhzw246WI2o6Iqsdvqx9wdDWQTtAe780\n5u2BO08GHwLqWNtDdvybRvSXvU1Cw1AmCupfgZG3E42Enuh7t7s9Gx5J6f6u\nej3w71DjkQiSEz+s7oxtK0/tKo9lSzc0sg/a29xLaFqw3P3U5KjWKPM0X+8e\n0lRk\r\n=jVGk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f5afdeabcb903cdc3146589506331bc133db4e5e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.132","@balena/jellyfish-sync":"^6.0.171","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.227_1621758421922_0.2637683729618667","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.228-renovate-balena-lint-6-x-35b33be47c2debc00240fe1fcadc401875cd6dc3":{"name":"@balena/jellyfish-test-harness","version":"2.0.228-renovate-balena-lint-6-x-35b33be47c2debc00240fe1fcadc401875cd6dc3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.228-renovate-balena-lint-6-x-35b33be47c2debc00240fe1fcadc401875cd6dc3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17cdf8eb2a5a8c6a5d890a0ac62ee9aae0dc06c7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.228-renovate-balena-lint-6-x-35b33be47c2debc00240fe1fcadc401875cd6dc3.tgz","fileCount":24,"integrity":"sha512-134MkkVv1328+Sz0oXd65aHbSYbegP/MV/+Te20VQHPIlhGwVGwe0TiCTzSqYUZFwj0QPwel3zv4XCDRs0Euhg==","signatures":[{"sig":"MEQCIHu1V/8kP131fDmV88Yd8YzwtBNlBUyRyUi8ZyWPR3CuAiA4rWPV52EhjBstiU8CWl1EaVFyCCPhyhWtijfcIzPGXQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102720,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqhLfCRA9TVsSAnZWagAA1QUP/1KyGQQVUigFzU20aSfR\ncGFc+988UVNPJZYoj/TsS0gTN72TAottWSeBuNCREV18B/L30VeaMIcwcvkx\n47Sac8Cn1r7vOSXK+Gzb+JKx2577yB2xKkQcE1slAuLwbxf9CvLLkrW5e5tE\nkHBRpvCq1LhM1lcjQre/e9edqWIl5/MxwP9VRMoic8ux4Bm/QJ4XBq1tL/6G\nch8cIYOeeSAC3JZAIYsYNofG9thhIMZukZFP1mLc5SCgWFlmqMmRw3b4OfPH\nGfni9axkCWNBKS/ClL1qWzPwrMdwNx+YSsfmnvyqdt0SL6qgiK151FQVIxgM\nX74ympZDuO1FVGqdkdcu6SNmOUaedCI9yhWelcyp7iqQRoWi/O2Khyv24600\nLJDOttYlkdmUuiChfUgF4MBx3xGBypXwfexAAVPaObFzZsnWE7NCPj0T3zhI\nkaKjx7OpgXTMcSSk2yoXY+O/IH5qLgoGFUr4/xYOeAbPP9yB4c6ExjZSs2HM\nesgRFmTxqDJIuTb2lSWav0uIsUfrROEUgshGxCbt2+W5qEr7YTwXjxZZAPRU\nVlbMWTw/GX8kZfzjMwLnGHLCsB5eQDbX2Lq1OONWL3ov3Z38YeddKS1SsMnL\nOeoJsizEZHlDDQwU7QJxg1hMzDb6NrBjnBZ/qTuZoD7nerVm+JSUZ9n/XoMe\nkFvq\r\n=TK4w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"35b33be47c2debc00240fe1fcadc401875cd6dc3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.132","@balena/jellyfish-sync":"^6.0.171","@balena/jellyfish-queue":"^1.0.89","@balena/jellyfish-worker":"^4.4.10","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.95"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.228-renovate-balena-lint-6-x-35b33be47c2debc00240fe1fcadc401875cd6dc3_1621758687091_0.43065572025991017","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.228-renovate-internal-patch-50b6aaf2a6491eec82f1533f7f43456af8bad9f4":{"name":"@balena/jellyfish-test-harness","version":"2.0.228-renovate-internal-patch-50b6aaf2a6491eec82f1533f7f43456af8bad9f4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.228-renovate-internal-patch-50b6aaf2a6491eec82f1533f7f43456af8bad9f4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f423805b87ddf77206114c0df845369058b6fa83","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.228-renovate-internal-patch-50b6aaf2a6491eec82f1533f7f43456af8bad9f4.tgz","fileCount":24,"integrity":"sha512-gTmZz+EGDWLJ8xi0Dv2QQKNIOp9RYHWWHPUwAYBqBAnWok8bVkDkrjQYxqxlvf9Ba9AZcjVnpTAjcOXrVv2N8A==","signatures":[{"sig":"MEQCIDO8IGJKBMu82qIqAJaXMxSZtoXPXW/iOW7O5JsS0q+tAiA1jmpE7l2DnJUFgM3oLv5W3oZtAS81KaTIvo/IRMUo0Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102704,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqiypCRA9TVsSAnZWagAAd5EP/3qwmAcDeJF07SzF9mpu\ng+z7fKCE2SzA40BReZxqQZhB7mddDV9YhFnwX8i5uP2e4ILGrJXQeNpdH4KX\nGei01LLSqVZjKBqoeLXzrpvr9Evps3YessTOWEaY8/cHtHwQe9vqAvjDPFrw\nUXi8UK1k1k5DpNmYIJXsfY+BoLn8ydax0nb2wBOydlSawZ+28vDofRi2EsRn\nSlPpc0+fjX8KaBPBikEGbaP+4l/kwbR7KKOiSi7yDPvc3N1+wRaTJ+bm2vVs\nORQ3Js8z/SqGtosqiulqwanBCmVQd2/Gcqryhce09Q7uDBmTfm9/mo7IPWMG\ngIna6mioEwQVqc5WQ8c33lCenPnM/52d9gCHU5XpekAoFykoMPnDjM3wcq/R\nod3DMriwSfsWchZig/ALBKrJYRMKveF69NoZPe9Ic+bpzWrr7Pm0uoZPLua3\n4ZDbhwACh0Fud6WvbObz9xu6sE1eh4pZrJ49CBhGTpcFlenbhMyBhssCAZSG\n4mGuxpFZ5WMry0srSyhetvTC+qjU5TT7EPAw/Nl3s+5z0ptz8IirAce+rwfX\nksUJYQoK8rJI1tOuh4iL9fEfyPYEYCuGJDLmnNuRu61MRer08lX/S+g5Dhzv\nuZmzBpj/RgUq40k71rNtxw8M2eFzNCxMHU96fKcZZQUdjShZInceM60fHm6w\nynAh\r\n=ty7u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"50b6aaf2a6491eec82f1533f7f43456af8bad9f4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.14","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.228-renovate-internal-patch-50b6aaf2a6491eec82f1533f7f43456af8bad9f4_1621765288965_0.9983563000816176","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.228":{"name":"@balena/jellyfish-test-harness","version":"2.0.228","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.228","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7099bbb65e9a6c12a04b8ecb56c3f015e9d82020","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.228.tgz","fileCount":24,"integrity":"sha512-ZiTL8xbPIa8duPkSGy5aX3BKV6U3NA2+pPXGtMKScRtur35t2wxLCcI9DbIawPHOiNfz/pWAn1IpN5kxUkDekQ==","signatures":[{"sig":"MEYCIQDCFb23ccMYkNHgVw4j+kaoBBTPp/oqmdEUx7TajwhflQIhAIq0VNHWlpTA/gARR4UbCrCE0lnJJ6Sd6nVXjZ0GeWrp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqi2oCRA9TVsSAnZWagAA1IcP/A3YIJ63iAACFPn5kTav\nyUO9YNRHfhQOvoOUg/nVdH1Or9xdlAkNc5fu1X8bicwO8N8C1wM4RysGFo0P\nfbNCbeLQEH5hageNUFICWOXgYf3WoBvN1kzS0ZDL/6/4qjpywVieRLKEP6iL\n2Sfr33EBzyFMR1HHQrWDjjJPnczECZfhK45eDLE9CfXfprkj0w1yPlCpmadu\nW4LJ9tqNvgYnRHIwDtQUMqPwQ8v7qD/S5V8n8Qx//mffCMzLWoNqUWUz8J0p\nNXiEVvpUztsgqvYL7yKMe7hNsvQc9k7h5pSqiNsqn6Lt8LZk42jE4xbBDsm8\nE/+qUP9jLPnf5B4cLKyfRWkM8xZuSpbVk2sK7cUjLNxYA7eOCJwcmlIELcML\n8qT/TXyBzLIzotJAmUElQ/Fi+m9lt2nJzxkSZ2UcshkLWaIUpC10rhg5zeU3\nFveR4nvR4LgOtvo4LKY6PTsQZylBoexegdKrRbRpmo7uHLUF+qVolk3gDAsv\nGDnbETAtTgu8cDsHod5z0pxPMaa6ytd6loogEbsudEj5McH5KQgwiNXeqMls\nSDAt7VrTLzymyd9BR4W+hPLbf8YsFLU2XHE9cZMLmmTH5MlizSOYGCyDiu9P\nns31iubQOX9/LCMo4GRUahDCKbmYHv18swcUWUbCUkctp1EJq5I4n347Q5Ul\nWiXs\r\n=ZxFq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f34caed4e1653901659833bc9ac69cd1bffff5c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.14","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.228_1621765544382_0.972999425439933","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.229-renovate-balena-lint-6-x-e07ed57a6d1054291c93fcc9d33fde027d53a272":{"name":"@balena/jellyfish-test-harness","version":"2.0.229-renovate-balena-lint-6-x-e07ed57a6d1054291c93fcc9d33fde027d53a272","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.229-renovate-balena-lint-6-x-e07ed57a6d1054291c93fcc9d33fde027d53a272","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c07d1ac1167ae753db6e8e88fe7ae265f36f289","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.229-renovate-balena-lint-6-x-e07ed57a6d1054291c93fcc9d33fde027d53a272.tgz","fileCount":24,"integrity":"sha512-ikD68qmc7Q43ZsNtaCQaZ7MCqScueB/RwBXAF38OLxEXOqpCXWIc8V9mL1MNzZ9a2hk3vHeyeyF8PHknP1nSUw==","signatures":[{"sig":"MEUCIQCKLQFA+EmZdE5UDIw3MozEIjSTa54N762KKDV6NJXUZAIgfo+wiig23fWk2hDUpxLVvystfK3d4mQFKCRO8xYVxeM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqi52CRA9TVsSAnZWagAAzFEP/j0Ofc8+zfGM9Rx7hq1T\nz4FXz5fahP5Wg70FcviwR/F25zP6RDzd5M7D4RuWV6IoOpZv28Tycubeaq13\n1YkP1d34AO/fpXEedJxi24JTd/qymXB30CDVWC1YFd8ZnEEGYImMsggdFMCi\nSpcFH7TL0LNqdXO6rRMJze4jQv0V9j3DiQmXkXJAey0u3Rd2RiFPpwo2uyEP\nuoN4utAhACihRMycbFJB0nVvZfpk3qgNvxs/rDI4ARZolQCI5SmaClohexR5\nZbys3PHE8vygtzHZp1W0/Mn7MD3VEuLym6EjQuKvElXnkHg2P9Sn6Z04fKz/\nEGxlYhJtjMp47Hn+vIPgJdJyvc/Wve53HmKewdWVzoVj5HjW7Ab5iCUtgub5\nQwYYZPLvFKgrlJiv0FwzHKMzLLUusakmK+k/kTP+pgqPszXQ1NGS90tWwyjX\npMAKo+iZLWIOxE4WolGThcv0Ema+rzQZ3rD/rUjFq+LQmT+JCBz7QYnWFrvE\ntYjiJLbZNPQfXvGB5VAke8rq+lBQZkNatNItaD571fME4ttZnj8CAmEpyNJJ\nFMV659z4dDjXpyxqpCIpIEzb98SaX/qDwr6FTzbe3Pz+YzkI8zeizSNMYzAi\nJlSzVGaO2z8J9dwRWgAnlszayJ4sC5J/fo8PXttTrBBVxLdcRfPfsnhAiHOu\nVDY+\r\n=NPF2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e07ed57a6d1054291c93fcc9d33fde027d53a272","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.14","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.229-renovate-balena-lint-6-x-e07ed57a6d1054291c93fcc9d33fde027d53a272_1621765750066_0.08615544278309906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.229-renovate-internal-patch-e9330370bf12f9e724796ac71452ccc120d4e9c2":{"name":"@balena/jellyfish-test-harness","version":"2.0.229-renovate-internal-patch-e9330370bf12f9e724796ac71452ccc120d4e9c2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.229-renovate-internal-patch-e9330370bf12f9e724796ac71452ccc120d4e9c2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb50af69200dd787cd29721e7fc4024fa085c6bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.229-renovate-internal-patch-e9330370bf12f9e724796ac71452ccc120d4e9c2.tgz","fileCount":24,"integrity":"sha512-4+hS3jfqF9Yx30ZUQBCdnoPAQ5wKVLaO54CUecwyZ49/uT5JIK5Spr0LKj+q1PRJ/uoLlJAK5693jnkLV8zc3g==","signatures":[{"sig":"MEYCIQCKZqHJwhahpJk6FHF4pPNQPTXbIXQU3IubTNwv+KiMPQIhANx6EMuZtmIgxEbBhx3b4B7Q+asSi0AjxBlcbSvfZohP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqkpMCRA9TVsSAnZWagAAG54P/3yK1Av+gKdlrYjY8uoE\nyevktZEvi+cbECSbywAD9nsuG98KfPyq/cxo0i63T2g/dVAfPQnWsa/fnHh/\nQm412QGG+qfdO/X0+wNos8r/2hUbT3uo6IpgOHtN+avAGJMxOc7EOWdBr+ex\ndt3JybwV7UMIEQw4wftlBH7hbT58/cHgdCdKXhgm1hRqchNn4UCbcmNUBcsj\npxziLUF4n1erTefy00kg0dNB47VE01PPimNRb/jPs88dOFPKdpXsXeF3vTjH\n8LE6yBR/ZqxtPVCZtR4uAfg5++I/t6dj3tpKCyqyuCcVImRXixgYpyqPNkq+\nI9FhOlylbAk9EaKJ1XJGm2zKU7W+Ss6AJ2rexDuZHTrl6YcFi64qyq/NYxQC\nAip3Ard0ioWCwPz6fcWdev61O/cqJSO+RqpkZE90m8KRNXVK0efEJj4ZraiL\nMBxbucNT6b96FuvumqlZQO+4ribWimvlNtw0BFg5sOopqbmdUa/QwOE8yRyl\ncqdl/WdSHp69Kg6kd/rtcs6coOXOj5oW44wBVq+uyhiKgh7vqnSQHlNp7WuN\n14nYY6pfdV4o57ezQCYGJyGc+uiyWEtHXuZ3IpomC90tU8tsuKCjY07AdeUe\nv4u+cYE7+G2YPy4xFQNlbwlJA8tq7PBj5CZWUB+RlLJssVthG+SC0vRg5ElV\nuuP0\r\n=rlbL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e9330370bf12f9e724796ac71452ccc120d4e9c2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.15","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.229-renovate-internal-patch-e9330370bf12f9e724796ac71452ccc120d4e9c2_1621772875420_0.4091282011190198","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.229":{"name":"@balena/jellyfish-test-harness","version":"2.0.229","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.229","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85bdce59098694c1ff781b5187022e8271f2dbd0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.229.tgz","fileCount":24,"integrity":"sha512-A6EH0JEsk1QmCZASI0ZRZ0nxNI+BvYIRepC/PvF5hGSpbIsrtkHXeUkTp1CoQVNxvO9GcLfR9kn+K10PalXTgg==","signatures":[{"sig":"MEYCIQCJwts3MB6wK7abRjzBCMqMfTSgCbGd8JC3TDn8VzylXQIhANfGqKgmDYxmkhAZWsklaU8IsE19C1P1/7aiah1j3MIx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqkspCRA9TVsSAnZWagAAAu8P/isYixabkvl1U3eKf78W\nMgS1D/UUTsGkdLf2G3d+lwhr38vxSgb1V+woqlrItiu86il5ceN0uIc3tp/G\nUDjcgFeDJCqomyqMYMntDqaDvWTstpsRZwHVHkJH0AMj5aKSAQzdctjI1BbC\nhxGQZmsB3s0L9ZQZ7suP6e+qQJ++ie1BaqUq7SgvEUnzBHVfx9oqhZaTFU3n\nroCzKoLFgqYCL+xYoClG72+SrLi+P7SI7E/yvTCloY6r5UQT8ffWAoT9lxYv\n1lWSf1uBO+nCwPr1ofNKSHMVZaJ1CmfygUl1QmW8VRQ7xfLVpthO7wi1MyI+\nx0AjIHguR2/WqLVWRWJhb9bUf7Po/s0q9PpXFMiI39FYyBjQj5ThL5rQt6dc\nEe9KNRtNy/MHpgQpdFJDJjZlV2CUlk2kisR7CzXIvrb47VsRW4eiPsvImdMk\nAQF+46Qud893MFKtNpR93/SzPzQsfUrT27tYGrl0Bvyh3noKcVVAzTE7L2GN\nL3imBdCvnfz7c65zBNYL7CoU4JaD+iWpAOOXauz9czaXproB6yOImdhgqNOX\nAOB4HRmjg37INQgVk2EO1f86gaYPobOBwpWhuobl66p2ooLB+jp8PNwUp5Yk\n7ectDp5lfoY0a2yRVvQ3eB5XSnLZT1rObQp1tPPbr7vj4KvQrEk+hh2AeAvK\nTbDc\r\n=mVkV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"da29d0657e369fbcebcfa750d6be7e3b34672a55","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.15","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.229_1621773096535_0.5789692536981597","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.230-renovate-balena-lint-6-x-d4996b1701935aa6e1b3532de6de867fab456802":{"name":"@balena/jellyfish-test-harness","version":"2.0.230-renovate-balena-lint-6-x-d4996b1701935aa6e1b3532de6de867fab456802","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.230-renovate-balena-lint-6-x-d4996b1701935aa6e1b3532de6de867fab456802","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7364cc38b2c6ac8b4ab8e19ce7010e8cd6df164d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.230-renovate-balena-lint-6-x-d4996b1701935aa6e1b3532de6de867fab456802.tgz","fileCount":24,"integrity":"sha512-xAh5+JBiJ0aIo0ONeZtgRRxJL9ISsqkHxE+7StiE8XQfSpqk8eAmGc97g0iXXW9qw+HTVtQf6WimCcQY/28ZRg==","signatures":[{"sig":"MEYCIQC4VNuudWbxIRZpZiFoWTJHPnxgIZj1hgQob2Ywj/sBzwIhAJvJqQ+juKLM1emLDMA9qGmYqNxPxdEgA9znT39iwGPT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102902,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqkvrCRA9TVsSAnZWagAAFk0P/3kdqMa1q96YEa5SHcYO\nMPAB/KPlbtNS6lic2ne971vcIaGLZRcpl54etmEyLDgxGY2EtDFJtW0Cq223\nr1uRk8tZsLkTXE5YKNWj3O6yFszBDZnNfFXzRt+W8e+TtoLe8LPJnjs4jDR8\n97DyB69ZGDSrrhxnPqD7UMpvojtC4o5PSQDpx5DAapI4CYkCYl15Exw8yo5A\nqc0fd7/+bI/xJ0YDYpBE+0W+2IG3ZCxvH/3QX6vr6AkUsy8aQouwhjJsXYb/\n9TVav1FFpxJTvsKi3UGBJbjC29Hi0vxIwUIG37CdWeAsl0RhadT+DJ6c0KXJ\nQjVbCn6IHfA/hzzUVyxl2T9BQ4nLBQIzeTxgSuGxUQV0cJtsKxpbiRxmb7Fb\n2hK6ipAlwvBlcdsUK0jR15exCSIipCCp+/HmjJH3Yh+5tRj3zhdjrvUixWVN\n3hzs/5mp8O9SZMLwvIHD0j/CMDFIF4t16YsdfrwebUQ91u1PGERmyLeErBrQ\nT83sAio/UyF4P+Zafwk5BDFB+1c+0VO+KWCHyWf+LiKl20Ne5TUrnMl793rh\ny4IWNA+0PY1VTsfxeMN3DhWfTN/DExPHSou5mZCmq2uiK/kY58AJU1BpLJmu\ngjzi9MlMfiKVEZMSCa5ijkEadosH6uqAtgobfGBlITrT7ZG/t74nGhSpQ7su\nXm9/\r\n=31Uy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d4996b1701935aa6e1b3532de6de867fab456802","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.15","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.230-renovate-balena-lint-6-x-d4996b1701935aa6e1b3532de6de867fab456802_1621773290763_0.9102092345762614","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.230-renovate-internal-patch-3b34e2c34e3f40b553500d7d86e15e6a471527b1":{"name":"@balena/jellyfish-test-harness","version":"2.0.230-renovate-internal-patch-3b34e2c34e3f40b553500d7d86e15e6a471527b1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.230-renovate-internal-patch-3b34e2c34e3f40b553500d7d86e15e6a471527b1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6dabbfdb07fe7a0f0acfa5aab4ab39bbe89f179a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.230-renovate-internal-patch-3b34e2c34e3f40b553500d7d86e15e6a471527b1.tgz","fileCount":24,"integrity":"sha512-4CnW8E1xHhKSQIfoCjmC97vxNy0rKkthAYOPyIYfnlimkj4/yiRxwYyyDM6EMgyikAgKpKYPJ30LYl2iKixc7g==","signatures":[{"sig":"MEUCIQD3S5kUn6kXk59kyrCLUx36zyUcN75NPve2KNPXauBnNwIgJe8fmHDqNONN3a2oj6mI08oVpgfGId3Xz8ZtmsHC6Hc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqlwpCRA9TVsSAnZWagAASCoP/35nzwQNbrVtF/0cqxcx\nL95rFRY6Z28Q4sCVL8Pmqwv1459iJ65Mc7JKFc2wFRtfzZRpTlIMlFGhoktF\ngjIHUGx4U2x6CaF2hQEQ1spsLd6uCwtRDqa8t9r04sIKwDfJA5qArd8Zf9Ii\n3uZCjmXnTc7Xfj3Uik5Lim5Sxrp8ldHe51LZQlGykqzDK+XeDQM01q6YEgqK\nQsnHD5xfQt6Js5rN5+oTwlUMqT5nemusXKn1OgysIZGnRCYda0Ad61R8E38/\nkk7sdtIXZC2XSDLADLG6JAxV/zhSohdXp0awIpLM+veNY30IamdiQ6c/0vyE\n7EUPEiI+mRIAqF8+1bPrOFUqvZit9/W4/WSwYSBcyEC7i3w7LK7x5CbVRUAU\nAy46JjTLO33KAqyY0YLmt4X1oKkkBFgsLqYGvDkPyfZ5bXHGqDVJ0EQZUi20\n+Bv+v6WjRCWYI8Z5niXrhNI+4kJd9ATo4q4N8BdzNBumNae6ABl9h9p/5d1w\ngWSHJPtsxE9BdUeSRtCkbXZxS9NckZFL5XD6IS+AkkRzuqDTI6cDnJ96PMFQ\n/uQvxfsAAXnOzbu/tYxBEs5uev25aWlBJph9v7A/ePz1rSW2eIWaYwmuhnid\n71EG7fXDmM6NcUTJlFLTRgMbC6spTDLmFOc4+3fswwxqsgSrYRSMlIPrH+vd\n3sj5\r\n=+y/w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3b34e2c34e3f40b553500d7d86e15e6a471527b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.16","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.230-renovate-internal-patch-3b34e2c34e3f40b553500d7d86e15e6a471527b1_1621777448616_0.6987761785770994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.230":{"name":"@balena/jellyfish-test-harness","version":"2.0.230","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.230","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5f73fadb5697b6b6143770ecb28a5c55a102c26","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.230.tgz","fileCount":24,"integrity":"sha512-IDr0PGJhQxZ1h1+aKRHQ26CghavsluM2aC14Z/jLmkJAFX5Z+ed8DH8DcGiBFGJzpHVHvCtN+Kn7pfV0RC46/w==","signatures":[{"sig":"MEYCIQDSkBp7ml7MYOSSDPk3pqbQKFYHB/uLgxLdp49ol0iSKAIhANPWcFENBoqqBlyCBhfHqKwrGjgzQP9qJWZ0ZxdOuu+Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102853,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqlzzCRA9TVsSAnZWagAAb48P+wbZuhPVrOAN49Q8DOhp\nSMw1Mvb4jGwO3pnVPfGbXqbfPi2HIW6xI/+p0/OKnzjQXqUbS6FyUqMflGCR\nlTvDXEjMP0AAlmiPrL3e+OkNpes0Ne5g/Ozib1/tKqkqk+M+eOf0yAOimNWf\nXJ1PMGXoLNkZuJfsNICJ4PMExYUIzv8uVjrPTRjDXT9zWOmwwez4qS6w9bgW\n5bqLxN/tIA565SlUuxmaHddN9uxZw5ldM/HmPKswECU3zPu1r3DeRxAOlX13\n+bY0o4vUeWqhP3u29ISaNeWDOfUBHkjx1e1OuTthUjhLEMW0dLD9Tm8+Fezt\noQkveYJKTmtjTktMo4p/bfm1OI5hf9/5Ne8SWc1sqg2GGvoIfaKAbMpsA+as\n3KIIeJ7GXpGqEAykckcOa3zwBZFh9GNcx5ugyJxswaFnhv3k57utvzRv9qTw\nrmXDcT7+f+pOnHrjqUomzlOMII6mEWGGZnZt9ByB8N4sGGuXqqx1N6ie95WA\nmYoQXVaURH2eQW4bGHc+qevASl+QihEMXLzw0goWSOIfzROyLZ56x5wJBj31\nBAXpIiU8+C8Zmo5cD2LtNXtaykTzKiP/4wjDuXNs3hK0Jew99bL02yaWZ0n4\nDbKKaaVsf9ve/jBBIOqsDySpgrW2w1GOjz/D/6yUoJNT5A0fv8ihhAvy3Z9G\nnaoU\r\n=jPQs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"365b7c43d44228258c4c55dfb99f84941ce89a6a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.16","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.230_1621777651532_0.8660074386388281","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.231-renovate-balena-lint-6-x-c51cb5b33fd7b476536bcab740fe0ae47c3885c7":{"name":"@balena/jellyfish-test-harness","version":"2.0.231-renovate-balena-lint-6-x-c51cb5b33fd7b476536bcab740fe0ae47c3885c7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.231-renovate-balena-lint-6-x-c51cb5b33fd7b476536bcab740fe0ae47c3885c7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7b657e0efec03a4d0142a9a7dafeb7e57270a45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.231-renovate-balena-lint-6-x-c51cb5b33fd7b476536bcab740fe0ae47c3885c7.tgz","fileCount":24,"integrity":"sha512-XLfH8XAIUZAxTTrerogOPGmc5r613Kt33SLFAgaUwuLwOz9imi7JNO51RwajYHANDY7RYDOW99xv5iWHl6ExhQ==","signatures":[{"sig":"MEYCIQDsEtxMVjkO68Njq335g3fO6MQiix6PpnoSRl8siuyCGAIhALVWvtKZcHcONF9wsImNXYRpr9IG9xzioye6K5P5DT1b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103009,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgql3SCRA9TVsSAnZWagAAUnkP/RrW+61q8Ddd3W/RjaKQ\nZdBmaZvhXOcDCo1Gq4xfBFdPhn57POIxsabR+Q1lAMsSoXYBsUYA0kJhqb1b\n5cd1qKP2uuL0T8/Kb5SHlslvR+N3q4AQIWOnwSp6R4a8bjOe0qvGHoo+28jP\nSw9NTijmoHJhkdyzRLxFpU9J7xgy0zEwPVQkXVUCVhbFgNwyMqsil4aM1Sbg\npH7Ho5KHiHkF3Jv/qv0c38KxK0+VhfdkfIJW9bln9M16c+zanGkBN//M+65f\nwhdIS5J5eKOyWhks920IjCvwOFRluSd+1jAzriXBKWvgcfw+cj4AONynoxbK\n5HJLKh0TALBus6x6yuPX4a84mQPLFnm+XahxdNhW92KrQknEfwKkOQ94KtNE\nHapjyBTX/M1GfcntuCa4/uH4CcmcVI1PTjIzotrQXpKc7ZIdmJGuH/FeIZVE\nRo2bEPJVS/nWL03RGNi6nzEyJUnCwI7kQh1AvOsIhqIvTaGSx9PwpV9I+SQG\nJgBNzImJT6XvnnDcRO52Ho1SaovfUCIu+TSbjcpou7zvmzBncUzO06nBySXU\necEJ6Gob6Suv/bK03b/Kv8aHcxeKEx5ZyVD7Prc3cRa60upt7v9muD6Cmlzv\nOni9LoC6z5la/cHfLugOAAjzS1R2S0/dnk036XCT6w2yqqV7ZD1p4ahbSjf6\nli3Z\r\n=TEMz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c51cb5b33fd7b476536bcab740fe0ae47c3885c7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.16","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.231-renovate-balena-lint-6-x-c51cb5b33fd7b476536bcab740fe0ae47c3885c7_1621777874428_0.5774413753554213","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.231-renovate-internal-patch-4b81572a6e6683e4702679b4c7961ca22d8fc116":{"name":"@balena/jellyfish-test-harness","version":"2.0.231-renovate-internal-patch-4b81572a6e6683e4702679b4c7961ca22d8fc116","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.231-renovate-internal-patch-4b81572a6e6683e4702679b4c7961ca22d8fc116","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1ebb4e21edc42a4345a86f80df2f8763bca23af","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.231-renovate-internal-patch-4b81572a6e6683e4702679b4c7961ca22d8fc116.tgz","fileCount":24,"integrity":"sha512-SH0quRKKGC1U8ASYf/N637lZwGtkdelvO6ThwP+Ecrm5xuKxtdkdn8cyoPcxKDC8Z0Oj4GaBsit658DhWfe70w==","signatures":[{"sig":"MEQCIDtfXqe0HtmMYTHIgem/TrC4IAwwGhSVMgAhcdCb3GwoAiBQW3lw7LYiRpnX7zaaPJpXTpwxirX0MW+DTheOhLBFMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqpA/CRA9TVsSAnZWagAAl3IP/A4vFdGp7V7T2EKACkZ3\nU6gzRtRUNnOpuv9pRe+hONIx9CDYoBrycWwKk3mkK5VA3Q479w7nEPeIbnL5\n5p+3zSkYNY1WJad0LIhRnx5vEacxPIHf3HTWQs4KiuKH7IlIYKjD2yNN4kgO\nkDzQCOlbYYTy6EKHPZ+/MafJnFflZqgTA2+Q28LnzL2wkn3vf1kFrr2H/RMY\n5LeBQXC0069FMu5NvOcm2AbjupIbc0VeUi78+azePpMI9iSE6NW1nRvFVsig\n7KQ16s2d2o/Je4+4bevvYck8Uy424lZEAU8GdPJRRn9xvdCEFWoTyvPWwII/\naZtiJUoS6AShpXTLLcHjhgGusnNe1a/GG+4J9kUtA+lped+vks1EwMz21Yf1\nddNVhoKaNJCt7JyDH5TuudC29i2n6EWvn43jeE00sg6Mdvqp5xDbzxYLtW1x\n16CiDgK2mj2Y9z8ET46L9SCj7nM/Sjwuh6xC3ub2cyc0HbSDvU3OdRQMy/Y1\nfD4mvTBQYD20nLT4OYNQOkbEZRotJH3rwGkj5eVfPUhIqqXowV5rqVOqyPqf\nG0WB7esgMUnXw/9jGwil+w56niVzyAV7MvmqH1rvdwjFx8umJfUcNmEL4jml\nkQslHEWWwVBwhLeTHrn0JZkMX5+haranDnVXizmM6kCTwAxDed2AAILi/AOi\nGsHf\r\n=EuHi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4b81572a6e6683e4702679b4c7961ca22d8fc116","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.17","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.231-renovate-internal-patch-4b81572a6e6683e4702679b4c7961ca22d8fc116_1621790782986_0.012044730216988597","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.231":{"name":"@balena/jellyfish-test-harness","version":"2.0.231","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.231","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6e4bbb02215a1d69d8e0009c413c05201cba5a44","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.231.tgz","fileCount":24,"integrity":"sha512-pNiq784ZtrzuZnbnp0n66aovh+mV4v1QoO0fdN90Gjbvsz4b5ByT8hhprRVuis8LgKxM5BESV4U7sHiJvIL34A==","signatures":[{"sig":"MEQCIFVqpIEuJqvcLAeD6hV0aonNYH2s5T3ElNYLcKnt8QAbAiBLLDw+aG7/LJOCviDMKh5vUHbzs2osER5PWO85s6inMw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":102960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqpEXCRA9TVsSAnZWagAAZOgP/1qWcsh2ItBeAjBKfuam\nYSfkHSUEeEPAQfy9Zt5OSulJ+9mknlRQryRRbQ1UpKdDqo7s+jzs1qwIWYWq\n/eDtQwkgsd25/nSLcaOqDIxS0LBu401ag17v/GJ+FeQnKf34s5xjuvZHF8kn\nWUI2KPuwHpWEidRIP8HDgEXoD09QzH34L6Axm48qCoLCYqhjqL5klsj3+kMr\nZWyi3n8KQWa8t5e5AdN5YjpoYOQqphseX2Fmml9s+LPEtPLBRqcVLgn02lt0\nFHPfROQhIRrqg8hAF8BqwR0x/qq/n9UJ4/qQ/63mdRLmST938M5JXYZkkT5Y\nF4RoZnu5zElsmDCcmk1NnzXoWzes7hxdGw2i1LO9mDkvhG52M8f0aQrAJU1T\nbNDK3RqWNzuIVfh7c2NjEA5Djhbd0iXdm8mV1QjtKceqKIJfgINO1Hx1RnVM\nm4kwtAvM71RNXoBZ9kNAI55rJz0J81OXEcR7KGkKggAJF0LE/4NSNLNmoNxV\nwwSh2nfoAJ+MdS9K6wEbaC0v/J/xPomDZuqCWQbOVOyBSNtSamd1hZM18inj\nSp5hJeypRN7LZO0CYGY9ZjJQJRr+a6gAbFO2t6QKImbHVungpujxqTp9moq8\ny/SLl+ISOM5X8xQgE83WE9Y3ZR8FOyVa0zc3ulTtnWCNnf3nM0MoAbTjG22k\nTQSi\r\n=tgLB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5bed482b9e649abcf20fd6a2318e84d1efc73f27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.17","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.231_1621790999233_0.5916070649407572","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.232-renovate-balena-lint-6-x-280e9b999b4e9cbcbf81abca060997fe4ce30e1f":{"name":"@balena/jellyfish-test-harness","version":"2.0.232-renovate-balena-lint-6-x-280e9b999b4e9cbcbf81abca060997fe4ce30e1f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.232-renovate-balena-lint-6-x-280e9b999b4e9cbcbf81abca060997fe4ce30e1f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f5ebedc0f619c4cf897e097fa2ae10c5ce04125d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.232-renovate-balena-lint-6-x-280e9b999b4e9cbcbf81abca060997fe4ce30e1f.tgz","fileCount":24,"integrity":"sha512-OxnIbY8Z/jSTZmWuWc8yUJt7qa9GyF3oILyYR7m+uG2n42R0xwrV5/Ig+LeJ5xoNfS8qEZ4sZj+fUWoaYEH7eg==","signatures":[{"sig":"MEYCIQD28HZK2HMKHtDEaV7vug9OSLBu8pW0ACqpTT2oNGTP2QIhAI7kfkycSv7jo8ThhW9DZ7GgmS9zHVfYiwAkfeUyBu1+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqpIeCRA9TVsSAnZWagAALOoP/i2EgV6mKfqHPGqKcgz9\n2D6LDqs6zujmQgigTLe+UCLkIBGH+h4sNKFAUrRfzuvx+rwHLkkpJg6JFeM0\nu8Ci1ZaE5w9UYEPN4cE94vwxtvkbM2erO179ycKXrT+YN+OwtKsuGHW+pJ0S\nJrB1wuolgH+9KwwvSIRayNFQFzDlKap6obZIVf0rpgywLVECyMZnMom2X7n0\njR7jAp+BmznV9MNFtWBLBLRfxXdEPgxAcl0JFVPxASqnpf5vfIDq6Ytlh1Os\no10LmaN/KSqZYyTlSiQr9CLiVb0OAO79wga0z0ixxdqTm3gqlEBP6gmlwJnI\nDNxXMxJ87/hXDWPZVNWkIPK5HBY15tRDph/gpMh0+YDlSQTWA0S0s6xvLXOM\nwV9sqBdutf7es5rhzrfgBOtHdjBU1Vvj9erwGNux2nbTf5GfhgFWsvbhHKIn\nfETZ84b+PHom7egE6go6v5U6OkyrLDbvhjf4oNsOxNCNmTc+DToxL/Hd+Ro3\nBdKHnEdvHewFPUi5bVVYPO9wb6bIiPI5vep8CbMPUta82hSho1TpnU8C3Lxx\nZm6Rm29SPOpM3nxCzolkvsleDXmLxGXc/7Z1Vy9Zywu/ccC8PKlgGK+ZiZnP\nBpGWnBwjTRjz0En8mBBC2SKC46ubnCcMEKMOoLTOs6cMhxEEtVNL+kFRvJ6i\nxim2\r\n=qcVB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"280e9b999b4e9cbcbf81abca060997fe4ce30e1f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.17","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.232-renovate-balena-lint-6-x-280e9b999b4e9cbcbf81abca060997fe4ce30e1f_1621791261503_0.8187083480485853","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.232-renovate-internal-patch-c606761a35235ca93f8722a1d8404505cd6886f7":{"name":"@balena/jellyfish-test-harness","version":"2.0.232-renovate-internal-patch-c606761a35235ca93f8722a1d8404505cd6886f7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.232-renovate-internal-patch-c606761a35235ca93f8722a1d8404505cd6886f7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"889a1259ef506fa8d671acdcbd830cb59c2b797b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.232-renovate-internal-patch-c606761a35235ca93f8722a1d8404505cd6886f7.tgz","fileCount":24,"integrity":"sha512-gC3656zkqVVZTmV+qJm4CXYbmibBj1hv7cmzW3fESUW1fBdfvGjJsH+e8jY1C200jrSH6FHKVb1iv6XcU2xo3g==","signatures":[{"sig":"MEUCIQD8B2krEqCcovhHZO5WEySmJG+nxNv+ewnsG35a1nyvkgIgcp+2NS4fi+rm9JuHnA0HXyiy71wVMI6Zu+eq+OLFk3o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103132,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqqbZCRA9TVsSAnZWagAAWAQP/AqfJdzv4wvNOkSiNKfX\nvobHvWd0WaEty3de/2DdlSTw1FODlNQPnEK9D85YLAQde0H4TC9k00djquMB\nzBzS/60RpLnupBF3CEByUd5oQCKdPa1fcrkTNCgvaayPsRChyBfJTmqdtL06\n7OM1TUjx0tyJFjH8BLZz/D0S5CLzlDbJRBomhILlfj8L9FuDeInAdfmK+ORg\n6hyoMxx5DQMkEL8F+0Za8WvnOa9NWYci1Bqi0Hq00V0tGkbPRpjj+FS94VQC\nWb2l2uW15hSUfacerE6xcgC7HLHXeVqPACmWr5MkGra8MFueQqL6iNPHvNTy\nmCWJvu4tfStkCwv54pPM5Dk7XjlLGuJF3x1o+3xX91EJwHavkj05Fhz7PBZj\nppYvvro/evKaHpTUquJiW9W6ybp/b6rnniPE/G8/29/moq66ZiuH9T4CCt0O\nVO9N9hUB6ViAWCBBu1Ku92KmLy0UeQAuGRxj0CxcFhyikFCWuPKoUJ2slrGY\n+gab6rcAgh0UU/+xrO5YsRDiWafZwOi/qHv2D03aYtd+choiO2lX+e2NU2OW\nHTfKk6ZLHn6BYsPRSa0QanWrBXd4mR0jx9TK6ZR0tu4Et/r1IxeuQZiy1Vs5\nHb//BL5UiBqD1/USTxcmvQks5EHhOONCKglTQUx93/y3230EGSx2rqMzFboJ\n+K4h\r\n=n2cL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c606761a35235ca93f8722a1d8404505cd6886f7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.18","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.232-renovate-internal-patch-c606761a35235ca93f8722a1d8404505cd6886f7_1621796569143_0.8496143026437295","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.232":{"name":"@balena/jellyfish-test-harness","version":"2.0.232","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.232","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a5b8ee182b7e835d19683186a127ab0b4b71c527","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.232.tgz","fileCount":24,"integrity":"sha512-9z+IP+0MeSleJOzi0PMpT0RomSliwq+uOwddujXacO8bo4V4H7HBdwpWyxfyaChLalAgOqDcIW09MUgWw07c8g==","signatures":[{"sig":"MEQCICbuDR74BSbSPN30IsN8qXMtgfw9n2hS5N6Hbnm3FN9wAiBJnqhPZPF5fCaeh/oktntWzYyLjg2G2sdKqvKxiy4uaQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103067,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqqeiCRA9TVsSAnZWagAAxzkP/AzzTMLlOpKvME6A6yvV\nhrcL2uuzJK+v6NNSywSgqeiRw08L5FYtJ4X5koH+MxJgADYH2iaqkmTKJW0R\nb90j3K9rseIFzISQ/sgPEHoguG0ze+n/kTcoNYTXVdPCCjz+Vlm9YObM6vtQ\nLVi2+jarvoxK4iqjJ7DgeXAqbcMlLcbFLQ2pK14fsHDoNV6DBH+pp/FZVQeF\nGknbQIxU978+IMDBFuRTwNlyhIDkvxzdev70mtbfLbDmHKn4mkQ+2X2TMVnR\n2GqBiulRB/u5dXSwLtfcvlIuufwWkHDgR6Q7XECt5eSgPtfDhOjQmXkM/kBY\nomIB+xke2dZy01R15NfNTmW1MlJDGNsN9avT5LgmnGMmBKCb08mJJfg4VxzN\nMdQuoDBpPnt6rtQMUDqj3Po6Fu8DDputGIkFPgRGQc4Q1eiEMkqbkDbwvgyP\n4nwSBZoIXSeKW2IexlqBxCgC0Fik8dRvpi8kQYrdNzK2kVrIneKo+g+HL9hM\n9lAFjeLgHgLYisNmSA6MrKe/Ux7/+g5M6ZkE1+w+WypKLTo5F54DRE2wzrUT\nVrYHd8sLs2fc/ULg9XDYn3g/5SFJ7i4OENx6KxQS5swdX7scDJs2Ob/mtgjr\n1rVd5c8qtF2W4QP1AdXaLsIkCk4aFIBWU45T+PKl4IBhR89iVYnkufLEfNYU\neYmj\r\n=PHVN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c685e87b50476affc3a95f19e7d2f76f0978c6fe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.18","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.232_1621796769892_0.6914618465456452","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.233-renovate-internal-patch-cafcfc4c9fd08009a531bb504eea21f9f2daad47":{"name":"@balena/jellyfish-test-harness","version":"2.0.233-renovate-internal-patch-cafcfc4c9fd08009a531bb504eea21f9f2daad47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.233-renovate-internal-patch-cafcfc4c9fd08009a531bb504eea21f9f2daad47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e04e14df980c9b716cd984e296a3abafd4b61c0c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.233-renovate-internal-patch-cafcfc4c9fd08009a531bb504eea21f9f2daad47.tgz","fileCount":24,"integrity":"sha512-4wnVaTZfAsTcInjpkOM3HjCTiOa+alxYft4giAWcghBvEr0OL9zIU5H6AdYyxrbiNNB2VCFjY6jb/a+sz/LWHg==","signatures":[{"sig":"MEQCIE4LkV3Z5LLldkQAlNwwhAY/Gft392au8s1YNT2QiIGDAiBB02A9ZszF3rl/qfqX+krkYFFyw5ElPAAHMAkVuClGYA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqqi3CRA9TVsSAnZWagAAOtcQAIe7D37/RJi8QY7p0c6L\nqvu7Sf0U7T98iNeBxabgq04uJaZbjh0P/nHbO1F3+YeC+RI4h9Roo7JZcN76\n6QEn5PX7ushFOoZW1Mq50Tz+ld9Oxgfg9c87IKWbHjQO52C2dqe7lTi9IDQp\niWt6nvDDjPsQa2ni46mzoVpj+24VNEz0boswKn47lNJBIoAaR/T9xc3fa7wN\n1aA/uRi8PiEQ2EKN59RQjamozoOSknlrxXRLUfaPmL2WNNz9CpazgGlMmcUi\n+uPWNJIhmS/WvuwYZvmoGM5g7DcaWk4g/tJXMVNgGuoc33MbN9yB5IOaYsND\n1BBJvgACpUsWIeEl1e+D/sHrig3A6ttEb7KkO0ImU7E6JBDkKMh1UZQpIiog\nM04hV3N0LC3wlVrMQUyVKSduH1qxBo6ZOF71GXiL7UqxzAeuL3WXxYm3/bq+\nDauLEt2WzuvBWpJM/jbfchG+h8+4TB8YLAuz3gNs7ByEN0Jlj4x2UKX86lZw\nnjBi5K92wy1n8/LserwI9t34DYA8apDEpk4049Uq3/NcMdBxdILa9ditXRXv\n9lFpj7OES0VamkKvsXycIhrB/eJh0kCC6Dijj0P3vxrXD3GJDpOOi2hopIUT\nkYsFs6x6NBz7r/QW4yTqKCJ6eW01tPkKYRGfouhWNw8WHDmqv0f+pKvJMz7B\nGOmG\r\n=iN6a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cafcfc4c9fd08009a531bb504eea21f9f2daad47","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.19","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.233-renovate-internal-patch-cafcfc4c9fd08009a531bb504eea21f9f2daad47_1621797047199_0.646365660729241","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.233-renovate-balena-lint-6-x-2e892013727abef45005ea6fb7162bbb5cfa48c7":{"name":"@balena/jellyfish-test-harness","version":"2.0.233-renovate-balena-lint-6-x-2e892013727abef45005ea6fb7162bbb5cfa48c7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.233-renovate-balena-lint-6-x-2e892013727abef45005ea6fb7162bbb5cfa48c7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8eb7aa2b97f1bc23e7dc186b1554b6dd826b4d0a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.233-renovate-balena-lint-6-x-2e892013727abef45005ea6fb7162bbb5cfa48c7.tgz","fileCount":24,"integrity":"sha512-R7uGnHpxCHRVQ82hI3Zk4s8KbW7KSovkGysDGu5opTZEyYUz8/DQXJO1wCg9LJdip97tM4xtshrwKi1c3r73OA==","signatures":[{"sig":"MEQCIEh5+m/e9FWGUsBbjx91T+dI5PBeUs+5YleKilUrLFHXAiABKCeGKiKHkNQxy2aSJ0nfhFncoGXoubWcfj7hGPQ5Bw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103223,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqqjfCRA9TVsSAnZWagAACpwP/0EO7AQ2L+OW7ErqH9+F\ndIVovIYU/NS31/juMDkdSjVz9d3rU+TgnfDJnT53WenjktChxzTgHsgJTpEW\nENwTbh/auAzMo8de8D8VeQs4dWzTKV5PfBUS/f81bDK8bBmKcEOlLVMICKLb\n/VANOWYhAF4RAfM1/sVjgHSQBgr54klQjXBhwmhXaQ7pFYgrPN/UGcW3xeP1\nFwltlL2zvcDouiYuKwJp0iV9sDGveYkSxmA7n14mKtofmpSJbiRSbDpgtY3+\n9FIugM+7oQ2iRP3GrAxVsMSqWtWhIs/JFwPkpKB6NWEkfpkW6viI4taVarxo\nhEEuVKv38x0iadcI4sHL8ZOhLJwgB94EtfWnczL+5xKXYQwZO5ilx+G7873W\nj0YW+gXEZrZYl6AAqxa1XepgJ/0YscNHusuIG6S6X+P3FkcRXycBajDIfS5d\n9ktBTGs4/vJ9Rhalw73vbMwLdtybmens74IjcwkfkbMMcqqp+7+WHYbfam6v\nbN+exaxmfWj+J8bywFKv9I2T4qhaVnRaII6roO+lrxO2kEzsAxQ5D+7HkG+1\niWsdxbrCKvMf80VjbZXDzRtGjb8cIQSL4Wpuj05mgFB2uWjHYlFc8CRwC/jd\n4OhGyOOs2xW8TuUIK+b0a8brFKXh0Wd9aLnVzZhKHEbnSsrU8mRNzz3RNw1x\nG84E\r\n=S2bG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2e892013727abef45005ea6fb7162bbb5cfa48c7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.18","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.233-renovate-balena-lint-6-x-2e892013727abef45005ea6fb7162bbb5cfa48c7_1621797086505_0.38830105467958065","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.233":{"name":"@balena/jellyfish-test-harness","version":"2.0.233","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.233","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"94e716d6f7a0f9f10618516425427f5c05f9669b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.233.tgz","fileCount":24,"integrity":"sha512-x97AGGsHpT7sOSEpQgiH3+N8s5tRX3tooz5V6RgIPEIW9ggxDWaiQWVaont21BTlPg58lFPhWwcpyNYZAFQKoA==","signatures":[{"sig":"MEYCIQCcv/5Zr4AhSZbnTpCgSQBNgcVP7RKW5i3wWpW4KMwEZwIhAJMsMbvwqRJDZg96XXImIoLvB6ppFDkXUY8xzCiYnBhi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqqnlCRA9TVsSAnZWagAAo2wQAI7fB36rjSADFEYwfOoS\nvYdXezJSAlrwbCbdKJqHod3Odv3MqXDXpQ3GtpUKWXK2DhjgVU7r0jcc/Z3r\nobPHaCwj1PcQmS48orFzccJXx6qogWUwrcEZteidw6q+smC+go2RGMMlnXQ6\ngGRLrzz6G+RDeqxzlkSDMe9GkTzuVMK7SUqHUhnc5jlxq0b0PH0trAqKu/Kq\n/MMTRdob+Gwa+6rNXDw7TFn206Z4/nNmZn+KYRTBJZMxQd3MUGG131/OF2mn\nHNpICgHLV3BkloxB8eNoTikTn6Ocmcwx8AU68+b88EUFHThaDv+DkANi/9NW\n7fNi2vAOgaxIOsCVlb2be7zceBrZjhcsF+/1ovNPuBbqO1Q/GvvFYUlcBg61\nEVNd9bKea/xHvQbJpUpb/SYTBkHRjbJ35r3EkLzit1hFn8Cu4iqOIjMhaBy5\nxMIBZgTO+pF7OfFrO57WY+16cQquyC3YBFDncCwiar/+eVPgbAhCQfysSLUQ\naskhlaWr+cyFL05gUYGDoC2TkNdxbpdgnpE8M69Ekbl54kJUx6AYzZWdLxVR\n1ajaUypnt2S+aEmH4nFj44ESTR5Apsyo/yaFsoNGrKYGrMwn4IO6aFeoBI0F\nNHVzoQq/5Y0hsaDve1PMieHglj7LM7GRwZYhEMBOemVIqLI6WlJa5XZVX3lp\n4/Rg\r\n=UmCZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6b0ca23b014dff836c2911919177730d82725962","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.19","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.233_1621797349169_0.26618437856284705","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.234-renovate-balena-lint-6-x-9b4ff7823786e50bcaeb94d086c01cdb259908de":{"name":"@balena/jellyfish-test-harness","version":"2.0.234-renovate-balena-lint-6-x-9b4ff7823786e50bcaeb94d086c01cdb259908de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.234-renovate-balena-lint-6-x-9b4ff7823786e50bcaeb94d086c01cdb259908de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"31253ac61d7847ad4c44fc3e69544a350d8cc742","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.234-renovate-balena-lint-6-x-9b4ff7823786e50bcaeb94d086c01cdb259908de.tgz","fileCount":24,"integrity":"sha512-cD/HUhwehNqQQseBMGYYveo67ZE/m30+yjMfi0BHw/g/wBiqkurrKkLQGLBXozZVVCvstZBWNbjvSRnhNVXJQw==","signatures":[{"sig":"MEUCIQDUWUUFNtOousTq4UF6pSY+N1dT4x2hq1LDKJ1K/rPnfQIgAIub0tRUJRSu20P9ULWytu0WSYK+9c8prG4VL6s4t1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103330,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqqrVCRA9TVsSAnZWagAAlA4QAKOv3iNoszySK9v68JFz\n+4bKuHX+Tk6uSQexuVDPg9TwRi41rl2cism9RIj6f9z0k3y5FnP17PxvmXx5\nbV3dDpG0ReaAW4nGvPImoJD8z9kDNOQdA6UuW0hsgWNWbCIvbjBOrq/OiEia\nswMWqxjZtyf+XGwEb4Li3SGPjyxi8pvI7TNSmV27fj9wOCoKwZAM3UgDkhIN\nf+aRdPXIGi8wNKY9hLkzA6XSOvPxbHg11VKzwRtkcWcCREECxCYPANbvhl0P\n/DE3ONtDRx3cMzRnqOYwFUTp1nOxQV5cwhqbyxJnl8wgd1uSw/acTPBSIHIo\n1Cmkni0DoammsKhWE074f8QE715czanikl8vRq379VhFJZMbOMR5o+maAht3\nR+9w72OvqAz5xBD5okvaquk8tkPH45xXUSoRXsegVZN4ffDg+Xw2fEbM4BCm\nodJBD6MkTXhowF4hJtXKcS0rVckHYu6l7af8nMVIHAgbBj71sSpuattkHwL7\nkzWi2nAdv6AvC8lDCiqUf1xQKDNwE6qRdctjW5jVFrnCmQjDc57WewKTV5uF\nVPhQyz6p5sViTbi/h+5JNHAefhyIuTDsn47iOXT/qnbh3bFqocgOkFSS+uCw\n1ivGSZsYDSbqnPzc8VWEYazFlwR+OxE1dEwsJN+Kp654MAmCuFPVKcphSzZX\nJTd3\r\n=/KfT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9b4ff7823786e50bcaeb94d086c01cdb259908de","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.19","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.234-renovate-balena-lint-6-x-9b4ff7823786e50bcaeb94d086c01cdb259908de_1621797589063_0.3043920704455778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.234-renovate-internal-patch-3cb43faaf47e27ef67aab1d81a35150a3f09e5a2":{"name":"@balena/jellyfish-test-harness","version":"2.0.234-renovate-internal-patch-3cb43faaf47e27ef67aab1d81a35150a3f09e5a2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.234-renovate-internal-patch-3cb43faaf47e27ef67aab1d81a35150a3f09e5a2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e4ab2ebbe8ada3677241d65781c35cf5289162f5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.234-renovate-internal-patch-3cb43faaf47e27ef67aab1d81a35150a3f09e5a2.tgz","fileCount":24,"integrity":"sha512-VXO6ZjgEFKb9IIOnTv8u7hiNbnOS3yk981+cbhJ7TqDsn6LRuGPckqkZTgtqaxgIq4rBuTTjkBCBeOLogPyeEg==","signatures":[{"sig":"MEYCIQCvnoXay1cBoynDO0yjHUwAKuMMfT52qEVuaje9lLQcjgIhAJR9ZGPyvsD2r1EzLeJRWGCjLTgWAqaDYA7tsH62zuHq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqsxaCRA9TVsSAnZWagAAS+cP/0PpeumyztYUHMMs2JEe\nUjuHZSnxM2ut/Q5Oraql7GlgsSMlyiVnAM7FTzamTfoy+QgOdpR6VgRrESAl\nGMLjhYHMTLDUxT/zVkkOGrxoh70VylVJ9ChQaS/ImtfDcasUL6qndAIM4vrJ\nASt44C2QXjgSZCttdOgr7lTZ70Hoaxwk2EvpAlaWmyd0wbtoWAbPml80vDQ7\n2CXwLUp0FQ3OcON/1RS0Ls+AO9Ee2obXQ0YaOHCjFm2+1U4OKIrCmxF3hyk9\ng6Xvpnj1NWh0mfZULoxpZFPfXbuBwbdj50oI+f1B31uwEi2Y6jhtoZKYDYFP\nl//+pjM8J2EYlGvNEE0efY4hCqBHs7VfjRv/e6zInl/ujj8bdfHP0xtEHX98\nPcVi4o96ozsySqJJf4KPj/5OYw5RnTn/x7VdjtUJzqnh6rr4Uq4h4kXOHJPR\nh85nmAzz8lRxBAHJ5R0ZROG0ePx06oqOWWmqltQyiETL1xZ3Lx0b2H87wTDj\nxqgFAPZNObn/dCkoy4UC/Dxi18yVf/9A4mOo/gcYocbK8Cu/0oZtqfv7zqLn\nKQ+DpKdeqccvm3z1JXb2lLRHrEb2oDPlbw70eGhh4dRpgwKHYUT8hI5dsFA/\nKjDxiUEpCvcytVdpBi1t4iSSeEsdAx/nFiwLPCbuLO83T7SACiV2VFFgJz66\nXMdP\r\n=4ex6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3cb43faaf47e27ef67aab1d81a35150a3f09e5a2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.20","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.234-renovate-internal-patch-3cb43faaf47e27ef67aab1d81a35150a3f09e5a2_1621806170281_0.8592331025941695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.234":{"name":"@balena/jellyfish-test-harness","version":"2.0.234","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.234","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ea361f9e39c399eb7ce15a716765c40ad094aacf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.234.tgz","fileCount":24,"integrity":"sha512-Niu0KjOUEU59L4bpfB6TN0WxiUIsuqMhJL3zlwg31lZ1i6OEkeu6482SZRGgII/7KSx2TlvktwmMmoDPK4w/fA==","signatures":[{"sig":"MEQCIBsTpi2w4s1jmNvFqakl1yl3N1e4fudC6ZKzb2xBePhEAiAgRO5YQW6EyH1JdC1MRFFrAP/ashywgLJ4Bu8rAiKF+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqs0kCRA9TVsSAnZWagAArOUP/j7UqjFxLUrk2xewnZWL\nu7tXCxB/ijsittYaZ1Pv2XdMeRh2BbVKcHvCp50j3/RA8C+vimYWBCGVUALO\nCD189UKhXPJTLu/rkOMxAaeXlxF9COIrTpKyppA4/MCxJApA0jfGbDy28VBi\nskc2CSqzwBCLX9SqusP4Ey2kz4MmwiUwIm+ffc/oVx9P3QVsIz5u8i41yjHs\n85iBMvNkkbxNsMPzjB8Zcvw3KnJwbNURgYGWNX+fVa2al4qkaLf3Hp3pM3nS\n2P9sU+iFXBi53k3wsOeNqIX6rSEKaMwVX/ADnWfLVd6ugOaqpMiNifH+gxLW\nVbypAesKK3fNeGEDNiD80YGx3/G4HJ9IsPwqe0bAlQ3z8BkizLzbx9pIw3Qt\njz4StGEIRvk5jXkX+UhsjJNalQw3ln0LB+ghYs6U3CNIeMizTJBjc4KNt5YN\nzpuvnwDjtNqVsQx9M49Yoqjz2xZy+D6kQ2DUDXQfWvOjY66kVs+lBtKbwGql\noFPLvwL+U+PdH15OkiXXK/wPUOOZj3Lw9cwHjx6FsSh2AwlCWT9Ybl7bblVa\n0ftc/qzsbSmRXpeJZiyu71arujGZc47Is0lfuc6XVyymB5p/AY4klzmmaiuV\nDVcCulrIBYOiRSwY+xmYB5dKXld1cj3zH2Vw3g7KxP3KYu0ySYfgtXroiWgN\nuRT3\r\n=TyWs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f6e0cecfd298c3207d5b413b07f12d327bd75d2c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.20","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.234_1621806371907_0.7545176695877143","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.235-renovate-balena-lint-6-x-0f97f81085e921bc7c779a7defe6e0e4f3ee702c":{"name":"@balena/jellyfish-test-harness","version":"2.0.235-renovate-balena-lint-6-x-0f97f81085e921bc7c779a7defe6e0e4f3ee702c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.235-renovate-balena-lint-6-x-0f97f81085e921bc7c779a7defe6e0e4f3ee702c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"617f6db5234181c1a8fa5a6610da25101f91bf9e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.235-renovate-balena-lint-6-x-0f97f81085e921bc7c779a7defe6e0e4f3ee702c.tgz","fileCount":24,"integrity":"sha512-2Q2tkh+Vguv3Lpa0/C1hYEV8YbUGtCxztWTwEbUWSe5VEOWRI832fAhK78RCHufo4V9N97An0vjln6rftHNMqQ==","signatures":[{"sig":"MEUCIG9cNeIRAeijM38NFtgkDlEGCWxpTIHM/Gh9i7DgfoT5AiEAvTjKr/E1Dtwz6TumwiN44OH877Gf2ynKTlXdQfsKlfY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqs3zCRA9TVsSAnZWagAAe54QAJfMMXdAkDGnAFq6pi/L\nHWVCvGa405nb6WIKAKs+PjXqKYcRnyj8sEZEZUukyGhLU4fOzRu6sERmSMDH\nBiBn72We5ajbUkQDx82Jq/nVfbl7TBWl8fS8E3cAzE0SpYTVOKsgMA8Rds8/\nnMv52/lnfWk8Bjsu4J/IP36tWFdFml41NRQxhrwnGn2WBmNaq8Wx7Ivwqe0m\n9QYvQnXOd0ibNwL8Mys/tRlKm6exi9DuiDbAoLUJ+boZcVPBU9q9pqC3KV7W\nVGoCwEkeHLz0r9Up3V9GL6Pn5VUTFTI/rNmg0zBJyrUJZ98eN47aB8ewRA8e\ntjufRXWfxiubLr1h+7ZcKe7JvbCnP6mQKygTG+aWpVi/d4a6Pd9eC72uwI8N\nEpRLLMGGMJywVezI7Xc9JAfbfKmYIrg9C+jacYEYhfQPSuS70YKLXt4jyJe4\nkJVeIHLsrIoL0yQnQrOB5IOQ4uNojbitFkC1jZQxI5xmcHSGnL9sh8uIAfiX\nVTQemX5SB6Y2vmjmeNjkoCK745Ya49rId3patMeq5aTfuOdBIOopiyun31ep\nbR5IwcskVjRXK/3uYay80IoJE1VvZ45iedEtcL/OgBbeRIVskZU1m7JztDzn\ng+6y/m+huDk7aYZ8poUoqGUV3o/nfDzdUym2Wwcw+mksoN7IxqWXVrTSWHHd\n+jKg\r\n=ylwF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0f97f81085e921bc7c779a7defe6e0e4f3ee702c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.20","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.235-renovate-balena-lint-6-x-0f97f81085e921bc7c779a7defe6e0e4f3ee702c_1621806579176_0.8099988802548064","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.235-renovate-internal-patch-6e7c2e73ed3697d2114b45843e11efd3b5c93e55":{"name":"@balena/jellyfish-test-harness","version":"2.0.235-renovate-internal-patch-6e7c2e73ed3697d2114b45843e11efd3b5c93e55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.235-renovate-internal-patch-6e7c2e73ed3697d2114b45843e11efd3b5c93e55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b703e4d3e2dd3aa69119a898a6228c5d495efb0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.235-renovate-internal-patch-6e7c2e73ed3697d2114b45843e11efd3b5c93e55.tgz","fileCount":24,"integrity":"sha512-E2kqpHa9UEOXrUmEi1ZFbVVC4Sx88kPSRZh2bozhOGOmTr1EAWP4hPrWvuvEuW4oyUN6eKs5sWAMB/ppTcvvgw==","signatures":[{"sig":"MEQCICGTpwitAd5sBGwC2d29kHTDFWhnhggYap/3sXES37STAiA4VJYjiXJMPKiAv4k0UGwoUfWrNXccbzE0+cYFf7ppFA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103453,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqvKxCRA9TVsSAnZWagAANeYP/2Wfgk2zy3ZnAP3aGcWu\npF1U0FIjSZGAzmKPB7WyPgvc1PoRo3sB9jf8XHWJoAAgNoFlWbxDZ1NQ2OF0\nZ98NJQ16TQWa1Z0JjHJJXdFnNj76WGg2yMKwS25Ra9N9pRij9GkWhWLvgvLw\nphNdTEt+hifc/rqLE5JBmfX4ymxAu9VJ7AdyDptK2kDNTip94koWtKndI/lG\nTA/xGBZXLvXxwfeaxbY7v2rcqZ3I8l8m0RpjfrYLzsX6W+6RDORofdES8Kd5\npp0tlQspmTl6QeMfS7MOSBdhXU/T/3KaDlvEw2KLYCYem4WOatFNjFiPGfIq\nTLKB1I1EpgMDdbJ8sIw20B9DWjoASqXQ67flT9SCi3+Xbg9ONNl4NPdHJahM\nmofpO8srdDcKZNJe/jJAwsKg806AfoRbfKmNXGNgc71JYF5LJZNzcZ2gQZ/2\ne9xOBfIW1LmISMUMIl8FcTcx4vv6HkLUc744lQvzF4q01UfULPZ13T0VRaI5\nDsGTaR1lir9VPzdOMEgwTWHcbawgHXPrECOcg915MEj5H6AYkINcQcTeC5qA\n9N1FSdWtB5OHrDcXKIL5XtAUszhmY6n4t/k2L2oKawpuPv+GxlbHTKqrTaZc\nJkn2bmvA/oYMMVWSjlSh3o0RrH5uXkooyXosRuIgrF1okCMniqaC1aYE6qhm\nV6Xl\r\n=SMd3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6e7c2e73ed3697d2114b45843e11efd3b5c93e55","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.21","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.235-renovate-internal-patch-6e7c2e73ed3697d2114b45843e11efd3b5c93e55_1621815984916_0.037014110092951746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.235":{"name":"@balena/jellyfish-test-harness","version":"2.0.235","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.235","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0341fafcf5d79a5eb044824def556805f09074f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.235.tgz","fileCount":24,"integrity":"sha512-zUiaOAHGJymLWVEUCBrzAFsGbieglDFDK/PrXqgR7qQbhtLFdw1HLOPLEcjsFFIB3WbKScsBFUyhm4K3JruH/g==","signatures":[{"sig":"MEUCIAN/09PrefdC90RKeK958+3Tz2C3a32lLlAd5AVcr7jWAiEAiZTGpWd0Dm/yipnl6+cLyjeDZ2dmoyiPx+qP3q65sNc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqvODCRA9TVsSAnZWagAA+XEP/2Eht3WSRjUkMo/2g9IA\n6z2eKbqtabPrhdO4tASr/eCI/2cyRMtXh37vfeHSuvkCEkCVmib2wLbO6Ucd\nhxkDcm00It/eTJnb1fFVkm0X9unfuDMLCaDES4uFx/sP2iViQHSI0ZbCDo93\n1Fpqkh26wWngCkbR2Fyv3Uoqh2y8Hu0tBdoYGBmhC2ngmtDUminDDQ+lf3jN\nBf6fVeiLJpMowJsudSJ4CuQQMXMycy57hMavqWvxJX/UxvNx3FQ+2e2jmNEF\n3a7tpABk9JGsI+B38jzpxksYu2S+MRLoeFyIGG08Yi+rXKs2PSJkIvcaYKt9\nn4J+fetU+hUBYhSgkrfJqXh2CX7NmKHy4ZzA0GDWfvMs3daWt77yzuVrPqqI\nNQQ/8De+bzpndrIdDxwWGjR74v0fHhMFImrCLqT+/N/jtjR7pusd44lUdspZ\noi08W/sqf7nAnZJobbawe7SXapVzjra76X0ZKbie4Q4Ysn9FuZoedbHTiN8c\nt5BSfLPJG9SzKflZartAmxGgrwiBWZGrIn/yFu9nGMDjlDNhIx6s/t1tm//E\n8YWMiyxKohujkA55n4BQ2877YI7+nr+p1RgeSo63MfpLYm6tV5YfaU3JU9G4\nE8lmETDHCMMg49AFJrDBdLj1EykzrnjNhe1mj7/Aczp9fYv+9UNd3dWfKVtD\nrlji\r\n=eolW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e8a1bfdfd81ffc5d4bc98fe2f90b517b7f2ed530","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.21","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.235_1621816195025_0.8885707092473747","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.236-renovate-balena-lint-6-x-0641e359051991264e134f58ad159289f5e47523":{"name":"@balena/jellyfish-test-harness","version":"2.0.236-renovate-balena-lint-6-x-0641e359051991264e134f58ad159289f5e47523","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.236-renovate-balena-lint-6-x-0641e359051991264e134f58ad159289f5e47523","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61be0c5d12e787074883e20d916d8feed84813e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.236-renovate-balena-lint-6-x-0641e359051991264e134f58ad159289f5e47523.tgz","fileCount":24,"integrity":"sha512-zu+GfnAjQBZgPjsRIg3PoU7P4sq+QCIUUWjsywOIe0WBcxdPjbtCax8uNKEzEi7ibAdA0QpvuCepXjbIV0ayvQ==","signatures":[{"sig":"MEUCIQCJCZOMPWj/lCAreJccGj80zqOiiQAjmo56XDHpOErE1QIgCSuBY9devqE6X454Z3CMILbaS0DV9bvXvbIJ2iHc0hY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103544,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqvRvCRA9TVsSAnZWagAAsOwP/RUSa1WuMRAyyQgLq1Xp\nnSIjhxEebwKfGvuuDL/E7tTJs9JNnETP2WavfdLjrP2FR6IridM1yHbrmAJW\nUR5uUkDGWMS3LhP4oB/6UuGcMERdn7i58nAzriEy9uHOGlgeRmktBXxRhMNe\njlh6pfUUrxRdlXT7peq9+akeT8KD6LQlVZIZlfZQwk2LIOcZWAoFWAShJNiX\nXuPyoczS95OOboViveprViJfsZsnjCxaCzW51qRSJLRO/FYUaZR+sLtNI0iW\nzfAL7IGaSCSfvb3j03Uha4zA9x0gp30ot3ASxSy/CCRaOE2NcNYeONmazxXG\ndR4+bfbfyFn3r5aYygg1f083f/R+J2EEM3yE2sIvFziqo5SGi3o182B7uAtg\n/6tyUKbNiDCFUD7n8Val27j4nd0RziRbT2lShIFwEHvH1HHEWaP3cgXuxMPX\nY5FzbluVuQaCsIECB4KSqe+tqzF9Vq9hflHTuKO8kozFyac1CXYb+kCzbD1X\nBt8mo2yfqU79ZA0s4TZmlPe+DHXO/gn3fD/pFRwWEla0t9QsZH5Jn/v53JK7\nYNAYYtYBIa0Yqij7AEmo+Oqr5uHO1Vq7drig3sJNvhV2Q9nuWgiFX1V0z8yp\n0FoG71Nsqnd0ZannFkIkyNToAWEhkO5TlGyQ1rSUeC+VnnsxUuamxlB3z7fH\nQBXB\r\n=B1QY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0641e359051991264e134f58ad159289f5e47523","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.133","@balena/jellyfish-sync":"^6.0.172","@balena/jellyfish-queue":"^1.0.91","@balena/jellyfish-worker":"^4.4.21","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.96"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.116"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.236-renovate-balena-lint-6-x-0641e359051991264e134f58ad159289f5e47523_1621816431314_0.8661778982877488","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.236-renovate-internal-patch-e9d91803cecc2a11c52b8261d80eb0cf54b6e604":{"name":"@balena/jellyfish-test-harness","version":"2.0.236-renovate-internal-patch-e9d91803cecc2a11c52b8261d80eb0cf54b6e604","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.236-renovate-internal-patch-e9d91803cecc2a11c52b8261d80eb0cf54b6e604","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"55a98f74084bda44a3fcada7e612d60df616b311","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.236-renovate-internal-patch-e9d91803cecc2a11c52b8261d80eb0cf54b6e604.tgz","fileCount":24,"integrity":"sha512-B+GjdSrfY8in83mB5A2LMHAJjGQLizJgPBpmeL2oZOZE92HD2Q0Mj1L5qWSQzmjhmlkwGKvpqOdJ7tEqac62TQ==","signatures":[{"sig":"MEQCIB+wYfO2eWgj4A6fnfigRF35iWl/beCHE1VMkWfvu7nCAiByTBlP1fWPzhe1m3mMhozIe1jea9DYmKN5maKs2Ui7Eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103528,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqxg0CRA9TVsSAnZWagAA1OsP/jnXqeHMT9GpSfdaI2zQ\ndPgwf/Nc3UOJm+Ob04sJH5MQJHyozxPA2kgmLDMU6PnJ+Ze7Yukkbu443Vos\nqz0KCH/lfiLIe1KVkfY4yzJNyTY2Zd6GpPPef4Snv/IXbWuyxyvHuVkSa/Jh\nxecboSvwMPqLaG2tLTbwKiYlNkdKGGkRHGi9BUzMfWQUrwhTtlEQG0DO9p5I\nKCObX5xuv7GI8W0kY6L4KLyV+4QwDaB+DL+WtpfKvwK6+tWM6OnUCvPanfjk\nG/Tr2APmITgJRJJKHDR04rJEHQc5SgZv68U+bYh2KBgih+pFJGfulILjIyVV\nCirzR1yGrbSl/JFRyCKXHU7LbKgu/B15UlKZM8pTNyrhvd6COEdKWCCxFlkm\nKmXeeUtQTTrKNP2LN5Nl0xTDi3eX91xHb4pT0oMSPnBI/dwB8bGdBXQuRdig\nlk5wyvIdeMuDafPXwMDPrZhOYmb7GMygKp3UmMzAnFvdITSntLuTczmvU4zv\n8FfuSABtD6a2sL4NcQNHzLCzvguLpgIG4c/A0UDnhFoPbYYm1JVJ85vwnKBm\nBuvQFEOY4uXPWyGvPZtSA29/47NGdK/1OSDarvplGhKRuECQArLxUYA/Qf2k\nvpw7fH5nWodce6Q/DLz0gyq1aaL38kJEApBO1GL+qxUkqwX/6yfAtmYGBxQl\nVE25\r\n=mjfv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e9d91803cecc2a11c52b8261d80eb0cf54b6e604","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.175","@balena/jellyfish-queue":"^1.0.92","@balena/jellyfish-worker":"^4.4.26","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.97"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.118"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.236-renovate-internal-patch-e9d91803cecc2a11c52b8261d80eb0cf54b6e604_1621825588100_0.5730978904140098","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.236":{"name":"@balena/jellyfish-test-harness","version":"2.0.236","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.236","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d4ba5d1dddc22b494bfd330b2d09a3dd2060536","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.236.tgz","fileCount":24,"integrity":"sha512-Dqmo1n3/s5nT3bjNSSBL7u03nVxguEjLDIlbEnrLGlfH3WN1j/pf8EOiLLS3sT1BXbLqaLIEpkTNT7n9LEvUKA==","signatures":[{"sig":"MEUCIQDg28FSVDnOHmtSu8G/AyxWzTqYgxWK3tCxE3hXqgZ0PwIgUgRbACv8nzY0lC610H0bggaCjilBN1nCMOBIR1kIUNo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103463,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqxk6CRA9TVsSAnZWagAA9DAP/R0zSGFRpI9aY43y4uUc\nc4ZIUQDgQfX1NIEc5mdoDmFGYYBcTEWnRQQhZ3SdTJyKE/P4DGqklvZaPwyx\nSz4NXO/WuQrBHQdrJszvUoirLJ5cUvZY2Dr7MSLUKZZ9Si1BxQMt0cbHf3Ji\ntMrxJj1nTQ3LtgNsavaFsvyE6zPHBYp6BkRDMihe0PFrRxZEJbHHaw2AplYT\noaXCtEQ66Fdq6BmXIfKi1azALBTQNBWYSaiwEQcs3mh2hzRj8YqF3XGCMoNv\nOFdJSQczgDs23Hx+4as/gz9Fk4JUPtpCxpp6X14WDwAyeU54EHdDtfoSGfHf\n7sbgnxiX6NXIvjnXorQfhCQXLac/bPimBjGLST+/r/Pxt0xTqDRN5A9Jp9Zm\nrX4TU0I0QS+K3Wq3M5VqjcOnLo2ylVfqBCIwsibNBGJBAI7wFdj/6ZKyDah7\nZD0yYafcsKI2Q75zkdoJ067KkyHbsGor/BUkdtBqlBWOoWTYBO5iHSFdfSEq\nIgBQ5OMN1r0UvUTGnSs9/JZ74T76Tf5fmHLpJXiAYJFQ00U1lESbR1k1qSnN\nAmqxRzA7BITNc3xMP4wbJg/KfQhJzpsYC6ZYkvynTSygUf8gzaHHlb4v4lb4\nmmrkmmiEYNUwKfux5Gb8Mafjh8iaQf3L/0IeJbj7tbK0Z+ek5ls9RW8vU6H4\nQo8H\r\n=Z4Sb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"59063ba5b6e6fbc2c4be5814870f59adfe64b3a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.175","@balena/jellyfish-queue":"^1.0.92","@balena/jellyfish-worker":"^4.4.26","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.97"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.118"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.236_1621825850129_0.61615158928641","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.237-renovate-balena-lint-6-x-d261ff4f711fd7277ff838e56df799c657768f15":{"name":"@balena/jellyfish-test-harness","version":"2.0.237-renovate-balena-lint-6-x-d261ff4f711fd7277ff838e56df799c657768f15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.237-renovate-balena-lint-6-x-d261ff4f711fd7277ff838e56df799c657768f15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"21d312a99df05f42eaa2f9a611f4bb43a9bd6df2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.237-renovate-balena-lint-6-x-d261ff4f711fd7277ff838e56df799c657768f15.tgz","fileCount":24,"integrity":"sha512-SpMdD1Ji9iroPIkn+1t6KI3n9QsWKG6OpLqj6/NhgBKOjtXnJ7rEveLz9tCT57A6+ZcMKwHUBgGoiz6JCFlBDA==","signatures":[{"sig":"MEQCIHupfd21R7JDzfsFPsHbI1pkGw7GBOKyChz8SeXo0OEEAiBOBupBWI6GHPZIBtnfGeFPQslz7b+d4lR4NdIw971KLQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103619,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqxrYCRA9TVsSAnZWagAAwZAP/04036LQhdcVmiYzGsx4\nxTtqsZKuD5DJbcO5/GqxKOJaYfUsMOLGeqzF7lc6HfMvfV0FWffs3ECS/XFW\n7BHX2bAidip9bkr43UbSYCUWkEgBacuhduUzzFRJK360bYSdhmqic9u/kUjb\nxz1v+krxFEAXyZHsGF6a1hlhLYPIL+1ZH0GHr+RzvvhnVCwenSPx5OvXEElx\n/klaTT1V5tUYlP7GxNdyDn4R/v2E5l8Y3WOBNhKsgINCTDljzXErAibGn5Jn\n+HBvqBSW0uYsYZ9ezCefxbFg6ubZ+c9gAVNs/hsyMnmE6sNkKCRM2Q7BLXYg\nYFXKWbr+UbgIziam18o/XqNTyPHNpHU3xMoWZuLjirtjXKHqInYYg7i1ylg3\n0Brqj2R+HWl+04sEX1B2PGnlC5MI8/2uMYNLj95hJQ5PY1cpzvyb2/Q+rxcL\nx6QQJXQe+AlyR7s7b6OsZNnVKOFiswUDXK/igeGJv6DNn6DxOFTHMBQXKWhy\n6GDzg+GtkcHQML5KYqoMbzUaADNI5WEb41hPEHaP4WhodquJ5sR2ohU5IynA\nXf/qH0/0mwT+9U21vg0gHUVOzZxgKMi/5LIg2x46J3WE5dlDb8V4rncMntsa\ncvayPL+TJVc/o4Vv0hhT2Zo58LF9KLu8cvMiGneUmmVCi+BsUtrVOzNaZM8V\nN1Yx\r\n=tyxL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d261ff4f711fd7277ff838e56df799c657768f15","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.175","@balena/jellyfish-queue":"^1.0.92","@balena/jellyfish-worker":"^4.4.26","@balena/jellyfish-environment":"^4.1.15","@balena/jellyfish-plugin-base":"^2.1.97"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.118"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.237-renovate-balena-lint-6-x-d261ff4f711fd7277ff838e56df799c657768f15_1621826264243_0.11022410495002388","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.237-renovate-internal-patch-27af1d7386d7a7ca46d8fd6288ef1ef2289b9709":{"name":"@balena/jellyfish-test-harness","version":"2.0.237-renovate-internal-patch-27af1d7386d7a7ca46d8fd6288ef1ef2289b9709","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.237-renovate-internal-patch-27af1d7386d7a7ca46d8fd6288ef1ef2289b9709","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd15701b8f949242d41b0a3f9125d36c8af31278","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.237-renovate-internal-patch-27af1d7386d7a7ca46d8fd6288ef1ef2289b9709.tgz","fileCount":24,"integrity":"sha512-FXwqiXa0UqZOnv0v0ii7sIrcZbPtYu558eKRk5/GRkw1BgylRH6j4yHEo96D5IFK0d1DI5qRAcJ7yT7PSFs8vg==","signatures":[{"sig":"MEQCIHwMd18OklmBjmwDuvCw4ySSaiXxghjNJQitlheZFXDlAiB9DTGwxEoAnCISrmZIuXCzMyhuE8xtA+fxP00J+XNNlA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq0CrCRA9TVsSAnZWagAAJuEP/2gFK2zTK/3dt/Eu1/of\nlhTAorx/vDc3FAzkJAF5pMlHpR8bvepDaL8DKsPpY0lyGt22ERMWtDKH8CUm\n7dGHznxHaNKImZHEPcXnCWGRdyATvrsGQNXxZbmgIUdluSrLlKFmcsmXTHb4\nwz6uiNB+Lz8e5NxJewbyVcQRJ9Di5eTRLbSJdemgVo9vIOfjLO8uFewjJ4E6\nXi1gtF+q3WhKLqsm/k2jIyVlk0vpzLH4gfUbrxrfw3FNspFvhMcEIJcHDN9+\njMAi9jwtJ1cqYBpebu+BDr/NaCaVU93qYMs4/Q2/WCquTIczEx30YrApe8yV\nihKuFrBEynDnFT+l080YSYSl2/9ItcMZq3f8fp5nKx/X2AOskNsvQra67pQ/\nbN6u2SZy9taAJju4IoQmhRQ8kWY3aTjcpDo4eMcORuul92YesZbCWCP9z7m2\nBh2nWutHAy1vVC5Ld461ufbdyFCqHkpO3pNX8drFWPw/HwH/frTZvBF1jvWP\nxVEhDWGiZWx8n6Pb9kcgZM0Dm3BkIPrkoetIDG9c/GZGvbthAX20ZCJfW/4J\nIWyutZQA9GEu3oFzl+ToZFb3kXw3G/CxgptqzePY5DVUGs0qmN/16OmODdO2\no519IwSpXCO23MoQo6ZS5fbBRGM6mKj7mgQXlSoBfImwq52bN7THkOXwFE3z\n42dM\r\n=tY8Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"27af1d7386d7a7ca46d8fd6288ef1ef2289b9709","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.177","@balena/jellyfish-queue":"^1.0.94","@balena/jellyfish-worker":"^4.4.28","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.119"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.237-renovate-internal-patch-27af1d7386d7a7ca46d8fd6288ef1ef2289b9709_1621835947135_0.09512510397649443","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.237-renovate-internal-patch-7dde260c49f88b5b2a65b6ebde23399ce306f29a":{"name":"@balena/jellyfish-test-harness","version":"2.0.237-renovate-internal-patch-7dde260c49f88b5b2a65b6ebde23399ce306f29a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.237-renovate-internal-patch-7dde260c49f88b5b2a65b6ebde23399ce306f29a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f693bc0424cab58770f90b81dd68f8512385955","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.237-renovate-internal-patch-7dde260c49f88b5b2a65b6ebde23399ce306f29a.tgz","fileCount":24,"integrity":"sha512-NfZgaeo6fDIqBhof/8CKRcFkaFDP4biY5ky4bgY1RCXsdpqdcfVj1dlShyqL9WILmUCAOGA2wdLHbSxdwpRd9g==","signatures":[{"sig":"MEUCIE3srtrLglqoNO2NoKQPPJ36xDHn8+Gck8oTv1ZYicr7AiEAyINnd+1aqCXWqGrhgeiB3d2qkG+9jbVETBLZPu3Lpew=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq0KTCRA9TVsSAnZWagAAAzMP/Aoy880zrz9CmpOmIVTo\nFuvBrllKb9DRvIrbdK0ZagNhuTfDj9HzFx8b4aJ8vatpfaE0eOR03KKXt4Lg\nxWmgSUp6fSedS24FKkyl6rTvwy4HYqvulrqCd4aVD/JK/PSjuppLJQw+enPh\n92/AvEcDv712VQ01ASFHSOh4cEVtylcBgVlmpD7FaaAevaUoTV7RQNRDAeyq\nNyE3IpHG/aAmfYxxsMwMFl+80IS7X6taPiVV2fhDOurZieRjDL/rSf776NP4\nBbHclVpDlRIZ5ogE9cmfpVo6RahlXbUcGQSAlCf+PtwTUp0PNlWRb3OJ5mCM\nfsuZPamAzODIW9cqaaNhkvwQz7FWsMEXgKi0UX47X29XbxB1tcaSB2ojGuCt\nok/b6VPLdFFR+3EE6kT15is9jJ+AABR0sPfvmDlRaxb2NzHfUJo1hPugnhfU\n9czZYFhyVrZI0TFLfDaSCBDIg0L5JW8CmoLMcLgY5OdpxXAyWa+jUEaw7Q0K\nGen4yNPweVZ15AKjz0teBNvzKFLPIeWK4Sp6Y4e6h/T44kchkBzWwOxCkVeO\nnWTo5ZZmVS/ZIMtfdaq1kVTbUBQ7XZZGzKcH3IgnwAySjZZTi3GoNKX/kVWa\n+W+L+VRyKiVt60zjZszBWfcBl8imVCZzHFkpg8NXQi9hC7Rx2wVPOTwvfekI\nAxRB\r\n=gAXO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7dde260c49f88b5b2a65b6ebde23399ce306f29a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.177","@balena/jellyfish-queue":"^1.0.94","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.120"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.237-renovate-internal-patch-7dde260c49f88b5b2a65b6ebde23399ce306f29a_1621836435043_0.12887335190873417","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.237-renovate-internal-patch-d75410be0825418283eb9dde0c1e985a8c87bc06":{"name":"@balena/jellyfish-test-harness","version":"2.0.237-renovate-internal-patch-d75410be0825418283eb9dde0c1e985a8c87bc06","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.237-renovate-internal-patch-d75410be0825418283eb9dde0c1e985a8c87bc06","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b2a069097726b9e6b361650f75b515e0c5ff5ea0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.237-renovate-internal-patch-d75410be0825418283eb9dde0c1e985a8c87bc06.tgz","fileCount":24,"integrity":"sha512-u0OvAA8MZMuOv9eriHJXXTXOq7kia09goJsEWIZ3IYJGPD78c9X/0hJOJAicosbDKtZxITkxWGypCbU6MvhT5w==","signatures":[{"sig":"MEUCIQCRHd5I3IV542K4q4haN/ItQE3e1lGvNpD7EAWCCzMTcgIgI26V8a/V5bwc4ykoZApvogJMV8CFm0lt0RfJFBoXtdw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq0QXCRA9TVsSAnZWagAALb4QAKEkBSVDF/w1C/x7d55B\nZ0fv7JA6/xQc0jQYV/RFcfV4v/O+vmSe3PEtwRnX1Zp6psac4FWNwb56jyY/\nz4uOpPUUkH/8UVFZsgQ1ALso2w7GkfgFsETTGICee+xCzhMPWQ9kr1O0/MO+\n3hCryQmSNmh9mzodz8FDLMCXRi9Bq0ckD7i8sMk3QLpIv3pRbnDPhNBHOm4g\n0475xtQbD99zb3yxy2+Bn79RuOikhbAQX7Mnk/v2MoCGB09sbqcj1FZEoTBJ\nDEdMQV3P9YfpuMan/ytt8PtgPgQe/leyh1lreUhqgGeZm4iOtaXpK+dLHQAL\nG4mAgN2qlGGY+L93JEds/FxMl883jkOgO8WpZ0PTcv7w3PkLnTQeDOMDTuSs\nura4ka2E0JJ09/qkD/NDH8h07RkoQ5wJMYmz7IPBKZ0/lQiipYYZIPRK2y2+\no81tgAW6UE1oqr0xLK9JoHs1nff6RUUL8X/jI3FEU2p9grEHGauJLdDRwd55\ngFPtvTxG+vHPrkUGharfWTRs2ySg+JphH2CVM0dsmhmeQdPdwGbqj12uwphH\nTMbIy0h7Y2i8jzxvGrjsioEqKfMh9cxZq8n3lN2wpapFwBZNYdrqPxy7dHFX\n93NSaqRgATCnsl5EmYU4CsTMAk2uRSfUjmBsEA4uKGCJQlktOeTUAV8qZXW2\nIdBQ\r\n=8VgO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d75410be0825418283eb9dde0c1e985a8c87bc06","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.94","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.120"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.237-renovate-internal-patch-d75410be0825418283eb9dde0c1e985a8c87bc06_1621836823465_0.9102414817656366","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.237-renovate-internal-patch-f5f20bd5f80470b5649aaafafe614aaac5c06a23":{"name":"@balena/jellyfish-test-harness","version":"2.0.237-renovate-internal-patch-f5f20bd5f80470b5649aaafafe614aaac5c06a23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.237-renovate-internal-patch-f5f20bd5f80470b5649aaafafe614aaac5c06a23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"417075f58931687806ca358d4c9275123fbe9092","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.237-renovate-internal-patch-f5f20bd5f80470b5649aaafafe614aaac5c06a23.tgz","fileCount":24,"integrity":"sha512-82BciisTpuTvTKxIOZiUeGkdDXsEzi6dDANTIbLQTwe4HuZOsSSxp+jtgSdEO7neyBB7XZeTJlPj66LFAOnzrg==","signatures":[{"sig":"MEUCICesttcoSEj/QHpCULDLWm4W3mHDqLaGHdPzrd7W58U2AiEAwsauRMoGcRlpFb6rfPKBmJyPdBK3AGIjTDyvAlydCAk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq0VjCRA9TVsSAnZWagAAEGQP/R+DSogNpIkLSs0rmucl\nHwknFt7CO5lvvuQlwTgj+2crP3V5/YfNm9IFEGLT3X+zpYLUuDNyRukGP110\nhblZw4rmFERi0fToycaXiQo3rmjgx3WS9D/KpJ3609gaME5Tou7Eu2I23MPd\n8CWvzLeOuGbjzRdWFVi30wjAUTw0ND0sq0YC7kHsaLld/4alvmKUmu+nWf/8\nMdc9EQQSuMU8Fc3pjCxxHXVvSgjQhNffLR5xvhQELWu8UNk2gTWwz8TMgBnK\n2W5T2dXDsTpHTXpDx+utQL3tOGFSIOd7xbLbSbzU317cz2/UKZ4HZIrCFOwX\neam96PYYEiZX2QLYfngM6WL8ftSUwmgJreCIa05dvrcZL3jJ4V42uv6/ZQJV\n2h2iCeY/GRCxA/Y/CQj6IGnSOqkfjzRp7E9lcnn6u/WXn0mL8A18tAU0v9wI\n3Owncj/QE0DJdB9cKTkH+Ta1V5zM6I0KjpwofTTOmndE3mLQ/Pp6QWTiBtWf\ngWowtVpUN4BNdxa4jc83tZ7qQU5KrWP8v4Y5UcxvZ7Ox8IKLLdGytHSZH9JK\njhdz1A6C2AX+oZZkgysiTiQX50cCmhzxFUl7ySE0P8nSIjgZg4HoHYpfGgev\nma0b5QkjFGywqcek+c403L8tlqs9vNZQN6eV9WlyCFTz7BGegiAv5T0kGW6+\nrLhH\r\n=1Dxp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f5f20bd5f80470b5649aaafafe614aaac5c06a23","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.120"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.237-renovate-internal-patch-f5f20bd5f80470b5649aaafafe614aaac5c06a23_1621837154704_0.5747101050224637","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.237":{"name":"@balena/jellyfish-test-harness","version":"2.0.237","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.237","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f82bc04df295f6f9754304801947ac80ff5952d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.237.tgz","fileCount":24,"integrity":"sha512-HupNImuP9yfszcLMSAgPCMBoEESZwrqpi21YxxIXXdZGUCURfiW2BD4/GMNfBgrR0dbl+10F5HeM0loGyP0L0g==","signatures":[{"sig":"MEQCIDYBqfqiMPQe+Q3WgiJR9/km0aAiTqPNvwbwxQM+uLDTAiB5OcIKhDYAN/G51+5NZxsBX8EvpfO8II0qtuh55cNTBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq0YOCRA9TVsSAnZWagAA5+cP/3IaJNH87/UoJ69Ya5c0\nh+hHQL5tedn8cjmT9QDIK5wwOfasexV8Bd4W14pIbB/TAyybn5pOQSx99lJS\nfOL2VC4VksJlFzhpru8CQXfwoGNcOhWiQDK1cNGyHZhxwSYuPfkJo2g58hO7\nLTrEoKFLyMCs8TiAVs/onqg5bm8wXiW7VAlDAVpyRkidfU62Zz20C4WKO8dt\nbrUaEXkXP0+QxV7GvhyWcjjY94Xcrtd+ONaNjWkwTdkODpehLXhP0JBb+EL7\n4gSH9bOpMpoSpTxDf3GbjhkXNDjm1lBeD7D5CvzRBKufp+tB8wQ/VaOdfT3C\nMz5QYEW7aVQ/GsuOVT/pS7qFp47MLFhabsK+iB1FwWrv6L4+6jfY6GLQk4GA\nzZZiTbMbeWlITr7Bt4lvwOVY6ytMT4YrqYyx7HMeM90V+MNqx8TvPhyyL35r\nt/XYU817o1aNkF+CS4HXG6f00oYClRJ/8PGNVNcVG55YOajbt+iuIEQq7Pbl\n2Tb8b6RH2eDJ1YWXHsJcXEdfgIQx+4jxLtZe9Q7uZDIuUiNpF8YZfms1p/Vu\nFnsR/Zhg3IJsjG34OefJY6VydqnJ0W30TPUaqJxSHqMWRaai7JbrptGbUMvN\n00Hn9hqeeGu+ZUSgYmwrRObJTpMy1cMiK9Ia5xQj0hGdErqscwcvtD4WEMBp\nuULJ\r\n=rAUh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e6ce7bc91ca6cd19f1d151e4eb3e442c331daa73","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.120"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.237_1621837326232_0.16578833685275995","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.238-renovate-balena-lint-6-x-59be189821216e53f72d8035ee8bc05ac0ef2d18":{"name":"@balena/jellyfish-test-harness","version":"2.0.238-renovate-balena-lint-6-x-59be189821216e53f72d8035ee8bc05ac0ef2d18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.238-renovate-balena-lint-6-x-59be189821216e53f72d8035ee8bc05ac0ef2d18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1eba544d2ce8d255c9323bf6d730cc33915f8749","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.238-renovate-balena-lint-6-x-59be189821216e53f72d8035ee8bc05ac0ef2d18.tgz","fileCount":24,"integrity":"sha512-ATfJ5Gh3nnD88HMIXAKJM3/8ceepjEf2WKaS3qWJbrVA/QUZexJCw23xF05MWFDyowhgqXOpmNcjRDotn/iocA==","signatures":[{"sig":"MEUCIEXV+pplslCsVZB8BbXj3B3kT0wTOeqjlLtJjb2xhtvtAiEAwtzj0UKIlgc49dYS8B3XrSzJMaEsFbcnczcmKjH+i5E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103668,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq1A0CRA9TVsSAnZWagAAh9gP/i64/sI+YQlh6JRoheac\nvbNoS29e+h1B1UBAQnrotUx3KK60mRZA2Waup8aySY8geORFof4hAgYoz41G\nHP0WzFrXv/fuS1c1PPM5luGC7X0wNHxahahf4R+TiPwpqrgvjCHT8ruYLmOR\nBTPtyFPT8nb8OJNMEDjKt7aT60UUB2mt4NXAVQuvyT9KET8H7Y1aBYkc3yY5\nYTW9zGDYzg7gXJs2pPZLI5KbxH7xIiyr3FpH0pQCBjwdzDZhaX6RJPUz956S\nu+TucaID8gw0jz1cZpyvWmMZ8uTgxg80xFtemExNGL58AEIdBuFHSQwjqKCW\n1TYvckUKvXwXJoXOLdvGKu2xP4Oymo7GUGhkAORNiulEuspQ3fbl2O2NVK2c\n98zD7ql0kP7+7V5bSTeFo694Uw0Jj/i8r7ByAnNlnNt+ICSg+NZwz426FQy+\nR7rPHeEjp73f1sPHZI/42M5EwQYEtMMkt5L8wwx2rO7LEmKDM2UxclekF3X+\n3Fkbhxm+PEGQs4taRK0QMyBl6wiEAkY87SRMVHuGPNi9Bqwp4A+mIFD7o/ad\nQszCEc95fvZ6jtskl33NbF5nbsZGCjrTWHHy0Z/hmPQVaRAbNjQN9fcepTNn\n/yfLynw6pG6x0z+hL9HPs6HHGgYnvc0JbjP3WyoGFjoZle3ICrUsXzVJbs+S\nIvts\r\n=ZLt5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"59be189821216e53f72d8035ee8bc05ac0ef2d18","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.120"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.238-renovate-balena-lint-6-x-59be189821216e53f72d8035ee8bc05ac0ef2d18_1621839924016_0.17760502656292543","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.238-renovate-internal-patch-83ef5104f1a383d9d14126a955f6eb081b60fe3d":{"name":"@balena/jellyfish-test-harness","version":"2.0.238-renovate-internal-patch-83ef5104f1a383d9d14126a955f6eb081b60fe3d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.238-renovate-internal-patch-83ef5104f1a383d9d14126a955f6eb081b60fe3d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9726b5b334800143365dafccf69bb2277215b5a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.238-renovate-internal-patch-83ef5104f1a383d9d14126a955f6eb081b60fe3d.tgz","fileCount":24,"integrity":"sha512-yI2IkMsEfdvgrxCpRfas70pEiQyHp6Bnk7LDRGu8iCTRNBETSpRXMpU+g3edAFutI4cjbFPsScDEZUxy4wRiKQ==","signatures":[{"sig":"MEQCIG2nLavzOsrJjJKObYRUGX2XLCK5yEOVlGhwWM3ZPPwXAiBrRp++d79sXkx5k8Xk2WeOVcTTXwRSYNMCIctFRSaH5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq1DFCRA9TVsSAnZWagAAkusP/2LAun6wPf3DkFZfRhY/\nb9TqCrm228eaELXAot8qvRJ5v38fz4bQ0RwRHP8A7eU3w+jEwQMfB86tEPJX\nrU6EWLHeGzLy1vjhuffvFlMUSXl3kl6M0Z3obzBI5zspyH9av/S5nbArLfIy\nrxJf1wtQMfAp2XAcFCHaRN2RUzzLqdbgIO4V9lthgCoDpMQnHKAkLJzKP2A9\nuMnapSpI/l+LVhgvmAECss416OMl8FTI6F1VaGooH1SFZ3ZINZ3dz2BsMr1S\nk0t1PYO6UJhFyEXKCy984SIsWHZpol9Fa1U2hhbVmH6sbxkrROPwx/Z/LC/4\ndJrnE5/G5qOZQvcAfCKC65oXaoUxWbA9JqHhnbKu8otE8zMtOeBjux6JcYic\neA0igF7wDo/V+F3bwvfDDtjq8/3nk4Z560AzHLI81iHmRSWkpWPI+RxPX9AP\nDa9hNmSvockpDc0n8PPeMiNUSi0uDysD5sfBViZcj6kCYkVhlb48d2OzaudU\n6IPCN56ehsIQNIPDOWQ0Vnt1ivt13DXKSvzBigsq4ZQXM94Y94jYrNHHZxrr\nyu1xmJjrq+w0EliRwR/hgkedgTvwly4X1dYLWTtmaFnyXGciN20OY7b9W/wV\nXv8C/mRyos4/G6qdfjRAf+spqMc3bYvGYmu/5MWqPhrCz41pRCEKulrTDZ8p\nY0sZ\r\n=8lL3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"83ef5104f1a383d9d14126a955f6eb081b60fe3d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint --typescript lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --typescript --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.100"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^5.4.2","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.238-renovate-internal-patch-83ef5104f1a383d9d14126a955f6eb081b60fe3d_1621840068823_0.003129457853123796","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.238":{"name":"@balena/jellyfish-test-harness","version":"2.0.238","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.238","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee0cbe7f4e40db891df7ad2862684aa95ab2d1f5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.238.tgz","fileCount":24,"integrity":"sha512-SdikfX8+1lOhOelBVysxz+2Bf3X9Lkl2X1eX+JzGEHbfxVTgK+IxCwqZnHrEPhNd1XaK1cLqAGlenXeOVm63xA==","signatures":[{"sig":"MEQCIFOQQSwRNuWtZYFVvPG4q6DxtDn9P6IamQTuGZVXIBEZAiArPdA9FLjyklgzAlbIOqhKNUHpC5wqcdOl698gxYh1Ew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq1E6CRA9TVsSAnZWagAA7UkQAJMfFbylXZz6t8NUie9Z\nBpsv2nE7fo9Ve2XuhmNurG8oRjzZKX/Aj6J2NSxce0FJ+98YnPOMMvDNuOks\nQBn+AlXTelJOsf4CmJqwRb20tkBKvhgjM0+TSIbLAxr94AjsWHDDI1WszsGR\n7WjGCmi9gmHvEHle2e3pEKYjcWYTbz7mZo3mzMnsYTMB96O4YPYvU8Ee/8Fw\nv8xYPSF/svUSBII7iRTi8CO1JMfilCBYlF8EFKMyyfsB1pWkeuLTzv4uDZE4\nrAmndQdHy2IdeK5YSN1caBcPybsxjHTNtQw2oEH8iQYwb/zbespjUwMDXNo0\nRGvSzflKFFHgBKKEUVuU7B2WcenlU/rlVx+/BuDrG80wRH/5EcW6hhj6vLwx\nLJqtYpGKbohgse1PO/6miUJ+nJx9sjs8q8zzhRNK/qNlmVCOtXWwIjoVV9Oc\n+AxnKhKOr+58ThFZwT7Fjwgnp5mE/MEdW7yeCNPlyvxExtpdXItqxdt0BQDi\nEdqlovfbfFC5rrdqU4oQxVOYTrFavo1VkHvFNX+cM/x2IIV279hMB3ixjfML\nOW7MTyUDea0mAEi/WQ5cWcabQsiWzyvucaKGn4UebykQnYVsZERLKmcmgbkA\nYGMjGgBUXKUrrO7zVc6XlBkLgfMqKFAnEFw6+fc3S8H+m/HW9nrxCKewPDbj\nLtqY\r\n=l4/T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d7633dd7b50ebc61207707cebab89cc28c4f142d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.98"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.120"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.238_1621840185654_0.36429712248140467","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.238-renovate-internal-patch-3882c12f0e4699e981cf9ad26eb27f23c02c28ee":{"name":"@balena/jellyfish-test-harness","version":"2.0.238-renovate-internal-patch-3882c12f0e4699e981cf9ad26eb27f23c02c28ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.238-renovate-internal-patch-3882c12f0e4699e981cf9ad26eb27f23c02c28ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5cc455cdd2bcc90e72ec071e228a76ae83c29961","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.238-renovate-internal-patch-3882c12f0e4699e981cf9ad26eb27f23c02c28ee.tgz","fileCount":24,"integrity":"sha512-EtusRxMW3qMytsE0Y+QHVBVBIvEvHDpkPDnNsGiSqFK5y6XjAknRGNx/nLqTcF7tyugTlRfyuC0Vizfot3rWhg==","signatures":[{"sig":"MEYCIQCgWj902Fscj7YKwJEpTfxpwh0XxMswgsOxDpFiW2NGZgIhAIL5qD/wCsOatSu/iAYi+DZafhLW/RqyBGvNNUzCEYzL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq1G5CRA9TVsSAnZWagAAWu0P/0bXzhzPC/ZoQtWnGUX4\nP/9nleo0puk6xUHvugS3AKI5a6j+vO1sZncLlGOZgyEu1PXFayJcancdmhWR\n7PG5jgQ7cuQOyAL0uuXDDFdpl/W+ff2jAqGmb77j9K8fDEEeA5u2yuTjrb7l\nEwDFbbqScyvuhdLo1WJoWkvathFvVSn5XrtT1VBULO7Ucpmqz1Slbe7OPLSU\ntLCO19HBGzHPu7sWj+Hkbsj5BJyw03CX/rsgWimIn3HNUSbCCx7xcvhDWHa3\n4ztgqM293fAMhuUBhGlz8GMkGi8hemVUJsa/rCJukqTJ63ZtMClhb7rKg1yU\nXQF/PgFNVn7dHzaM95yH8OL5qu2a2cYL66IbOV6ZXF3PgzT0NPUyJCVFcCat\ngrQCOALoHPQen8O72kSsf+RMYirZA/fTctzO2w4JNmsE7g436Ob3EuxqbqXQ\ndKwAdDWaTOmtChjxmRtHqlikFOwSafMAYYMi4jf0xHFVe+zObar1Za6pEqrw\n1FI2/tH4bjywVZtjM2hk2FiYSenbeE3XWoq6/1x5c9KHrAr+qGL4w4conwjg\n4fPsdM2sJjasTC/6YgIFOfelRTn2CEfCfEpmazcKTt3myKxWwX2TdgoOTeaP\nl4vyr5mZFVBWiLpjketkcconDWWMw2iXIP7lkUnX1Ax4zsUz6s0/6lZJyCIf\nRy/W\r\n=waon\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3882c12f0e4699e981cf9ad26eb27f23c02c28ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.29","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.100"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.238-renovate-internal-patch-3882c12f0e4699e981cf9ad26eb27f23c02c28ee_1621840312933_0.8673570598874814","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.239-renovate-internal-patch-af77006aafe1cfdc5a2a383029258d0e254c9407":{"name":"@balena/jellyfish-test-harness","version":"2.0.239-renovate-internal-patch-af77006aafe1cfdc5a2a383029258d0e254c9407","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.239-renovate-internal-patch-af77006aafe1cfdc5a2a383029258d0e254c9407","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"163b967d80ec091c4ae57b2acbf44975845ff068","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.239-renovate-internal-patch-af77006aafe1cfdc5a2a383029258d0e254c9407.tgz","fileCount":24,"integrity":"sha512-ImaIwDPVXewgoEZ8m6AshwhShk6/jUZ8pEIVbjGysUT9qIAYrWCK4mEdF3xCNmfKKmW5aQVA8ajQQWOJdtWj4g==","signatures":[{"sig":"MEUCICkDNuVOKLPpHqW498+W/GfCP9YbP7GJLwkqJ2rRBnfqAiEAqgyc4Uy5fve+ciennlWK+G1c+ZqQFvF5R4SaI9RW8Qw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq1OACRA9TVsSAnZWagAAsFMQAIpBaAGAxxCy90f5Gt+3\n00SYlfcmR1JOXR+Cancwr3GQsH7pT4pA/0SSlOsEjJ4ccyfGG1GKMDGACnQy\neJIKpsZnOVn5JxX9vwwHa0ZJj3thL0P9MkwlAt1nH3CxErbAHAcC4YWmIxvM\nbKYNy7Hfa5V3/lPtzWYs2FVXsudCXePq60WYAOGia4+3RZcl9o29nslwoF2K\nqNy9jb73qI32TtHqjBlL0gOAwoYA136oQQfXlM5IZi3mSlVPEywBg4xmhxDk\n96eo9DVw/HsU+EROONaAFxS3LAGbSquLudJ0nm7DhCtm7lwa5p6P0BUaRncl\nJx1niDKtT8FNOd7R3rDYt3+8Udfo4z4LyjXp5yQonevAoTW6GClU3qMpcwkj\nrspOcn//5w9JCdCWJZmOU6Eu0ax2tdO2+zhBHmhHiZWcUUnS0Gs9d1uWXn9R\n+qk5sPk/8tDNOlEHOeMhYmCAyOvY7rQJgAOiw8X7YV9sJqheyZUxDneqFZPX\nGtlWsVXeeqfAuIrl9h9ZTQjLbwT+erxZvvZ36w+hekFFqaCAx38NpNslusvU\nX46KHvWIO73AvXHTF1TncEvuhOJaq2Ea9SlCGZQVhfwMH3qtniKbAJt+s8K7\nQBIngPvZuYlBetqNzjmvkQU8MEz1eWLmCI3hFb77zdfZj1ExZp+FuiVG6Kq9\nLBwN\r\n=Cixm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"af77006aafe1cfdc5a2a383029258d0e254c9407","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.30","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.100"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.239-renovate-internal-patch-af77006aafe1cfdc5a2a383029258d0e254c9407_1621840767528_0.9399331937820548","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.239":{"name":"@balena/jellyfish-test-harness","version":"2.0.239","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.239","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b3042a8ae86858624d7c7e77a8b33d14447f4b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.239.tgz","fileCount":24,"integrity":"sha512-uzbAJDWfDdnaCV3Vaq0+bHyUqr4WFiIIKSsHDNoNxr/3LhJB7cOOPn1Ik5dIh7RKjS9RCGxSMFDbMOKKk+NDMw==","signatures":[{"sig":"MEYCIQDm43sn5kj3XYGOntzvq7S8WX9iB4ZnmHpfUuqD7cwz6gIhAIuYgUnNJJZ8Js2SzlmMSMpkGwNb2RtWms2wauWk33iG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq1ROCRA9TVsSAnZWagAA8AwQAILEV4rC8S+l+gJSbdyh\nvNr46BdURF8+f9Vw0/UkUBGCmcesP8bEla52bvtVrJfn0ej27txCarGSEV+F\nsntrvoMWYP9eZ/6vrPrhcP5SzoS7NdFqnkcJAOxDZreSG6E0lT+EfefsaL8W\nN3qIAoNqCLA915DDWJX0DvzN99HwmrFJM9efPP4lhHCCaoW9MUieh+iDdlgi\njIhDYYHClAqs7pGN1AlyIZlhKXZXBJopi5FEa6WE3lJ7na3CfH48lf1qSM5R\nmElsKn6hahfnziuFmTIkOt9BCCSTDFRvhNIDGrdGjU1U9hAEtAwrRolys5cb\nDjUlOU7VFtVWNE5oPnUXuU2QcGuoScamBYDMjIyhtZ0q4laQKPC4Bh+LnHsF\nyG7jCEI4zEUrKt4xaEf78tFX3tS2hOFBX5n92cp4rtBGhqDhYauUmD/LArfd\nfDcnAXCNWsKW8uyPUEkpQ865WMLFqpDEU4KqbXvF0FfNvhO9WePJygCtF0eZ\nbL9y2Kqr9rBKNCX4cT98CB7YHO017ZowLTCNGi0dGw01lkiM+SqugkHe5p4c\nfKpMSVfMPxBdUcmT9zpZ39rXiKR4aPuZKVRiDBx4ONZvel5qMpDxTSS2Sx4V\nAjMEPps9bUIp+xZL2+/equ9tgV/z68pEIEmARIAGKwOY1Y664QXhyKBmXp6z\nmmDY\r\n=9qU0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"93498e2ce2b3ae5a1367681e4a40c565f93cd115","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.134","@balena/jellyfish-sync":"^6.0.178","@balena/jellyfish-queue":"^1.0.95","@balena/jellyfish-worker":"^4.4.30","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.100"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.239_1621840973727_0.4228276123370831","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.240-renovate-internal-patch-8526dcc317642d8e13be1a017fd8e90842e07fd3":{"name":"@balena/jellyfish-test-harness","version":"2.0.240-renovate-internal-patch-8526dcc317642d8e13be1a017fd8e90842e07fd3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.240-renovate-internal-patch-8526dcc317642d8e13be1a017fd8e90842e07fd3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e7e3c4c3df63652ea7f382b37c5fc0d70bb8b678","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.240-renovate-internal-patch-8526dcc317642d8e13be1a017fd8e90842e07fd3.tgz","fileCount":24,"integrity":"sha512-LUok3uSsQxL2lAZr94RK1CtAXfBYiRGc6U0a2rJmuYQcXy74Ttc5ExdQsW2M71VduToI3SsCebhkUdnFOZK5Cg==","signatures":[{"sig":"MEYCIQDz9avHLSbSmjBdGLrvrOray1CAmEGeDcNHFuAU4tx9EQIhAMrVHB5MA+kJBEKjQ4nmOJQD3TK/zmHDvE9DI9uVxgtD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq3HOCRA9TVsSAnZWagAAOggP/iA9A3jGcX8UhCnP8CJn\nUzTni7hVPiUtpadDxenlfyGR3/hb66x3tGpZz/5ZKnAmeliVI756eElyC4zQ\n3/G+jtcPh3fHb0rLYYMT+0Lk07SdTnpIJpY5fcSIZAdL+XUfI91Lp/hnESY1\nrdKiFXIlm4f7Cn7gglcGOCPSiDlaI5Hmj623rjm4JvlmsfDKYQ4QoBtDjYuJ\nXo7sGMlrQH+JTfekRBG73v5UulgckL7LZP98RgpOKh4+9EZWidf/pkgrcltK\nOTtMDhjuuUsomjhxU7+awefaTXGbwSWc8zxY7aR6eEkFam3K7XuzRQqWxCOj\nMNcFPNPnlQupteiggcadTTAZe6jtnA25LbY6jq8Dzxcnqk3lPJ2Su7dMy+kC\nvu4LLXAt6/wTADDC3x4JQC9jPen377Bw99zIL2R+4/qppEJx50tJ0HzI9h6S\nYsgozbiT73QtWhYKojTLA4LInmlQF38owbgH1YTMy0ktgdlvI8DuCggfFexm\nvydUw9oo6qPH7KFn2pxQwSOCSPaYgth4VLgMSnxeyEwgXDctgMgIBXJUC5be\niM/sp8e6/jmFU2l8PWmkSoreKIVpgBWLMQHW1PW8da7RvG+swRV2D+KNzBee\ncj8RQrkhgcsjx3kN5dIizeYSD+HW111uvrO481d2B66lhndBPBsI2KfHGvMl\nDY+R\r\n=2z0H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8526dcc317642d8e13be1a017fd8e90842e07fd3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.101"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.240-renovate-internal-patch-8526dcc317642d8e13be1a017fd8e90842e07fd3_1621848526273_0.8199526628245561","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.240":{"name":"@balena/jellyfish-test-harness","version":"2.0.240","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.240","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a130de7d3bb71f39153d274fedb474c45b562994","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.240.tgz","fileCount":24,"integrity":"sha512-dq5t5fAkIvMCYsNpvEXexS7KbMYFvbu7tp9vtrNjJ8UzHqNPdTtjBuLK86n84noSk/ybWJZZmOtu6FkDw4Tivw==","signatures":[{"sig":"MEUCICzjaypPO7g5gGCw2lWPlcznwrz0D5uqio3RXVqmW4MrAiEAixDbvYsJpG3ub+xp4oJOwEAajEFRfOpZ6rX1V1k4rrc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq3M/CRA9TVsSAnZWagAAT2IP/2HQVHMmpw/GO/Y8FaXO\nPQ6IydDuYGGu4/MCUg+U7kVZLT80r5yGdAWksuRghvyZrCgQBH+iRm5EpI5X\nC+MxZjWR5/Zm1JPR6BppZ9u7XYcX5QRSXcEonQTr4t3QHNxJaTdbHGLQWY2H\n9yiwHmIeaGWUgTSDPVvbenvI8gRy02FIF+vF0ncLjZgaOygfXLdd6g2XqBBX\nzoYxUWgUFXyheLKENMOCfeNsv9t6CTTHn/O5bHkMGHqY3rKwikdtl7DfAQQZ\n6Dw2ooCNb/Q1/sJk+8Zwq4VEQzj8zPAStNXm8OOl/9e5/OQGkxZdnySNZ3Cv\nmV9odNjnk3aDKVe7ibJCFW9f+bfnvcuBrjJsirPnlrmpefhNLHw7Xej5/OHK\nKY35D2KMlVZi7pk5LuzmNfrYxcABtgG7xZgJAo9Dikm/Tz0TInCUwrgRHyyB\naTyHnAP2L+x1UpT15T2aQm5owLgHOxYXpuNYpYgCZQuvDpzy5xUQFtwBZQ4h\n2upk2RKLduceuCyaXCTyAX2oQYNsKYvpVpI4WXUiuJQ8mZl/BNSUaaBGDtMO\nSDU8ucyimcPQ/epkvrUU7hV3gV20SuZMUyQB8lG3LICGc7P4g2bgkgTbjqsb\nZwovVMwiqJgpXmkv56k7zTMf571yq0U0WGgig/ZRYPJ2fvHdizcphpe7EN/Q\nyLq1\r\n=h36Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"682e253f694e6a793d1de33db0a2e661fa5ab9d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.101"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.240_1621848894780_0.9894736445331489","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.241-renovate-balena-lint-6-x-33aadf6ffa4558b65921b08ecba7beab5fda6dbf":{"name":"@balena/jellyfish-test-harness","version":"2.0.241-renovate-balena-lint-6-x-33aadf6ffa4558b65921b08ecba7beab5fda6dbf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.241-renovate-balena-lint-6-x-33aadf6ffa4558b65921b08ecba7beab5fda6dbf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d84ad2c9b579eda6411408ccc993cf283050bc2c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.241-renovate-balena-lint-6-x-33aadf6ffa4558b65921b08ecba7beab5fda6dbf.tgz","fileCount":24,"integrity":"sha512-cawkz0jcKkcY65w7ueDifKabMD9OAXFZnrEk8EZDqLAd8D1FVuFah7oMuBp78SQHQW9AOX84C//izMh41FEDhg==","signatures":[{"sig":"MEYCIQCk5SM1d7ZuAvg6TvDxpOLvdFstKcpOEK+ov0nPERifCQIhAJHSnt6SnMHwsb4jh341S+T5l7KAXjH3/Hs1pgnWR5Zm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq3QWCRA9TVsSAnZWagAAlrYP/2yeMzV+RAqMEi3y2I8V\nvFxPLinNjEXNVWif1zgOwiBs2/LDROL6FD7c6TKvE5A5MzIZoS5+Ap1EaxFU\n0qsFxe/CsQdDw5I3vF05n9XfD+Dc2hniJUQWdhXcAJI/+CglqklyB/C7jlqG\nHVyVqDaAFRQwOQoJNKg0XIe55UM8c/PBQkMn40NSyTdu2twDSfL+8v8qSEpn\ns+GujqKmiJZ9nVn3xbm9Fzl9xX+xtzZygzY8Io9cKz2oM2gd5jwtb/MiPYsc\nG1ab34CuZItn3a/VW/7tIRrIHXTsUefymQQIVVuI9m8WHNdAKqokuTkbUCWP\nA156xceAed0WSKg0aFiwOap+uhYYBNFccHmEpn+6bsfkz0UoA5lGgWwHYszR\nMYVnehytJvUW+b5UbAGvcJotYW9rqa+94FF24UxpOQLG8daF1PMS5YuxCKUL\n6xFCdKv2KmSdoaWC1Hc+u8c7Y/ori+cEcG7PqScK1cViWG2QR88x8MTmdw2M\nPY1pIlJ8JAJ3e/sAO/yugRDz/uihktU/ldij3rTJhNA7GjKOq2VqJ4TJvoec\nFWvLvSARnSP8kzQVX+PlVTgDdYQgIUrG1KdZPdgneGnWQQKg85HQuslWgSA4\nCvm4qhWIZdOIrSJEYKO20Vka5zlea0RGWrdsxAM8EXrRdxAnqNQXdnjfVUjd\neVs9\r\n=VyIy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"33aadf6ffa4558b65921b08ecba7beab5fda6dbf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.101"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.241-renovate-balena-lint-6-x-33aadf6ffa4558b65921b08ecba7beab5fda6dbf_1621849109721_0.7942500749906698","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.241-typescript-core-5a5de0f9631ff68d5fe2201cfdb937b0d1506481":{"name":"@balena/jellyfish-test-harness","version":"2.0.241-typescript-core-5a5de0f9631ff68d5fe2201cfdb937b0d1506481","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.241-typescript-core-5a5de0f9631ff68d5fe2201cfdb937b0d1506481","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"305c4c687dde790a0f2dab2790ec481c58416604","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.241-typescript-core-5a5de0f9631ff68d5fe2201cfdb937b0d1506481.tgz","fileCount":24,"integrity":"sha512-zhWEOoxL4T8fsZYFF91wfuQcuJPLYpPuMQPuA20LYw2QiZbqMGph9jhNrBAyTTy4d6fvYpxFC4jSklSi4ETkNw==","signatures":[{"sig":"MEYCIQDLN9BTNFSikxsJLNudXayiuYUjGqYtbzEw+geJltQYRQIhAMrB7kUlspAOdA3B+oujPeEkewi+IRNxxG87G90hiyLe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103669,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq5HtCRA9TVsSAnZWagAAMi0P/2H4CrDAvKqwIh0UtyGj\nu0u6nAYYwVP/jZcatMs248R2qIGrIh2iCMflALEBugfsg4ojyKHVcDV3KReE\nAjzJikMvZiIbBG3uqLVTug7/30rcCP/eG5+Rj/Fj2zjp6Vral3qe/eqQvKCW\nXrLmQ3BYCcurdOiMq8rBVviC5SDO8JPWuXzb+x5ztcF7U0RBTqM3uY5eG/TH\nW/hV2y1SnUgdxZxqFt16ciu3abCbfMqBZaYElzK6M05TOkvWkz+WJGUWuHFU\nVugjfHZzMUbnRnoA8rdmhixhyZ3ncW1z8JBPO0c5hEEpY79ExpPN2ujhWiBc\nJXe+ofp4cHU3N6MPkNK/nwMQjwQE1WmG+uA2k2+cpVrovjhC1r8RGdpMOGdv\nq+gZXEjdK6iUAyTHWzJS5f1cowa3JyxZePpw2AKn0m7CapexmIzJ9LIsFjbs\nUImxU9dIgCmcyadi2lnHtksW9jWweSkgFKzf/KM9U7nT2icSLlfhs7EMOxzd\n6xvbfQ+pysuyOlI0/io/YPTVrzc1ROlRNpV3I1ocOBb1eqzP4/P+3zLN52Pc\nIqqQjTnY87tBRKEmxLI/IJos2CmYaPIKgm/VkFTtDsX3DmOu3dzR4tLe9L4A\nu4ZxfwGyfVw5yEck/M+ctHQCfwHwHN0/AHaSGikD4nzfAVpL509iBeUb1UVm\nbFwZ\r\n=xVqZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5a5de0f9631ff68d5fe2201cfdb937b0d1506481","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"2.14.0-typescript-conversion-7568de4d664e954101f5c8052b72d5fba6ab443a","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.101"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.241-typescript-core-5a5de0f9631ff68d5fe2201cfdb937b0d1506481_1621856749338_0.8177615656488091","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.241-typescript-core-1db2555d42a5ffa7ff7e43088741cba46895a12d":{"name":"@balena/jellyfish-test-harness","version":"2.0.241-typescript-core-1db2555d42a5ffa7ff7e43088741cba46895a12d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.241-typescript-core-1db2555d42a5ffa7ff7e43088741cba46895a12d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5da1d4a244a985764c38e248ef7b339c33148be7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.241-typescript-core-1db2555d42a5ffa7ff7e43088741cba46895a12d.tgz","fileCount":24,"integrity":"sha512-Zw/elritKnNWzgLnj+mPMlpD9tLPFVe1uC5g/FU2SP0erBRyukbcR2ntt9P9ku3v987sSlkHBZ8k4lNJP75CHw==","signatures":[{"sig":"MEUCIQCR6hxCTQKJsijzBXKrVhe+udKYrgcNgJTrbxpkxuEWJwIgPxS7SobiYfs/egXEpQR0CP9wIwm1OylafAOLEDEh6tE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103640,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq5WOCRA9TVsSAnZWagAAuSAQAIP/wJE7nBAzgB97x9IM\ntbrq3r0ll5NObcmGvZMDTX5d4/1akzfCoJnyj94pfKa0ITcL+YA/i6ihv2Qx\nMFLqubtaeKQ8uQKquPt/h6b0BlhgWD64jf3y3f7KGXGXuFQqiamc93Gn+Zib\nwDk42Gze0LuuOxNdAHeZe5UmghcOvu3tkp5ePYPLFhEDTy0w0TwhYdmu0JWa\ndjodq1SuMfbqNqCBgJYNSs81JYOgIIKY+yFSAz98XVyuCPJCtsBRkOY3TygM\ndQXSG+8ySFvXm/TKLn73NkovZrl4i/zH9UEtwCgNtvet26LHjSt86UJ3Vxl8\nVdU1A0fBlUgJUajbZ2Bcyr4OnhYLYhlW7glwKtaHVIm+/3HLO9J+v/XEU0oL\njJBMZeZ0YGM2dhOYlFoLVuKFK0vNZmS4M8MtfR9ub2X3Tf7Ek7jczIbIcKzL\ngT54QGc6Lfd0HH01spyUfExHLsQZqjtobUUG9/Q9kV8CaqawBhZgMC6d1Vvb\nEzvqJ9A+KRG80+to04Jc5CTHQqw/1bu4C+JNS6BR0ENC2gQF6wAAL8fBdnpe\nuegkjXCbdwJH/9WVFMqp1vwUl17sM996lj31VBk6YQOvjZR/5lkCWyYr+18c\n4hXrCNOevAPJtX8kNNOpyxgqBBeIWFJfGjohQO4bQdxZ65mb3aInOXKEDfnL\nYUNS\r\n=QWBY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1db2555d42a5ffa7ff7e43088741cba46895a12d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"2.14.0-typescript-conversion-7568de4d664e954101f5c8052b72d5fba6ab443a","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.101"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.241-typescript-core-1db2555d42a5ffa7ff7e43088741cba46895a12d_1621857677967_0.15102150830864813","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.241-renovate-balena-lint-6-x-81940f00f2bdee39cd8da5669aaf0c97acf87817":{"name":"@balena/jellyfish-test-harness","version":"2.0.241-renovate-balena-lint-6-x-81940f00f2bdee39cd8da5669aaf0c97acf87817","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.241-renovate-balena-lint-6-x-81940f00f2bdee39cd8da5669aaf0c97acf87817","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dacd7af475a323c6f628f250d6e5b0b732087c8a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.241-renovate-balena-lint-6-x-81940f00f2bdee39cd8da5669aaf0c97acf87817.tgz","fileCount":24,"integrity":"sha512-7S8nzbwvh3CjHZCJuGJuSJemNqWMHzWdRW+Ais0NtIn24Gs18vCvR43Zajv179EDgcNxP2JJQT4weIxjfSctGQ==","signatures":[{"sig":"MEYCIQCRW46gVUwc7FprYhtlgbwACNBtYR6F7oz2P9yUI2lSxQIhANrDuUD/TnYNuwHkkAVvn31dSJcMBrkwxYUpRU1BwIf0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq6UKCRA9TVsSAnZWagAA8DEP+wTQinzpPOdS2ZhEDUs1\nUyPVCMLJsXq+uC4v7IfDS3FemGe9uDMda7vB8ay5YZ0XK5u00sPyxaRw3TtE\nqBx0xB9toh3XI1JZNzt6xIVuzOw3tqiahUs99+R3ATepIPXvG3r1shTZD0Un\n0r0W61NXvPEKvAmvVrTPrpxUi6CcA5ChDsZiDhMIDCo/clownQZoS5+JV93s\nG8vNr3A/lN5tQ6OiLCq8cXqDKVOpDQgBGTMD1JCDYnJ3MVH69cRYO8VsYTbz\nHFsuxBIPF1x43u/ogSijL0OzcDtnAXAe5NYVppQbObZj+Y2Yo9AB6rADkD5f\nT6PM5D1dfhitL9fIQof6WWPCTSoKR9WJgNKoQCIRNfFdbXQAOAKf6VJwDzjq\nyUJ21B5rH1hTpK+GSeLNbKSccWNzamUot8F+7ahtxfUHQtv8tUs757CVK9hn\n6aOu6ODQidmVdxCeM53YDbVmxdpxn4pIwy8kBOfCiR3dsaLLvfmYwaYOtLLC\n2ooeqK1xtXXSqbeZf44mCQIIpdzpA/e3+ayn4bWw1dR444a9VO/TJ6RaHjS5\nAQK8fPGmDzymKZOHfstgEkhrtIwHfjTsg3UXYzbj8m7maWaxOBUhH6VWYKsV\nBGmDrWdvjNxVNKjgYbporrmVkUyXds8+Cn/jSZbT4L3wSFWcn3Q7R5FN67Ug\nFb3v\r\n=DxwV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"81940f00f2bdee39cd8da5669aaf0c97acf87817","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.101"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.241-renovate-balena-lint-6-x-81940f00f2bdee39cd8da5669aaf0c97acf87817_1621861641683_0.7277415686398359","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.241-renovate-internal-patch-1b325f8445271fe4a41c2e72cc23eec2e698c37e":{"name":"@balena/jellyfish-test-harness","version":"2.0.241-renovate-internal-patch-1b325f8445271fe4a41c2e72cc23eec2e698c37e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.241-renovate-internal-patch-1b325f8445271fe4a41c2e72cc23eec2e698c37e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74f76fef0c7519599ac4a3843800a699bae38f23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.241-renovate-internal-patch-1b325f8445271fe4a41c2e72cc23eec2e698c37e.tgz","fileCount":24,"integrity":"sha512-fY6AS0P4iUAeub7ixJ14ZDOMLYETZfHhZdz+08iNTDSf4wcp8Ioe7QVBM5BUo522itroz7EnVTmAumF3M7DWEg==","signatures":[{"sig":"MEUCIGM6nADI/OXB2iUyFgDg6Km4jn3BGbCyTkVHnzuHDUq5AiEA20RK8vO1WNFQaHh+Omb6egpgaVGwhr65dDQpfO5I+uU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq+y6CRA9TVsSAnZWagAA1XgQAJ9E2PxJhDlukWGhGDUs\nlY0sKPwPm437jSQhIqoGj5A8RpwhheQUqNHAFV4RM5/iz27LDF2r0ym0KLRj\naZU4snYrqge8xSpUrw21QvkEKkyhgzoTukVC4oEewV8tNpMUl8ODUQlY8feD\n7KHYE4tIOZSSo1QWJqORXMXLMxTJR22laTyvOHRgCbmqUxhVYGtzDldB1msw\nt0nzDJK69UwEc7Dx0q7Ym/6EDcuKXQcfsA1Qe0/zwlMIu1FxhikKQSc2PLsM\npRxIWw5olMK683xRIPzqGbjJdbNswFFHSwjQuAAttBYMTlKJ2i7o5QtYa/RH\nJNISudLo1/8haHbzTMaKp+/lIAtl5r7u10sjd/DXyP6NRmjhLUnh0mhhIrEC\n6gxU4eoKw+aMaBw1RPWr4pZZbofdwojkZO6ULpb/PA2M59lsrSnrRTuh0WzJ\nd8Am+c+C9HfcPI/9VdWTXvHP/16LiqBL4O76ml3kewSUakBA62AWsJyos4q3\nS6Xsjb2t3qCWsqtHHvsvMOkH/3lGqp/SMW3t1ScSVov1sG2+lbaaOgUUjxfw\nbnhocCSS0y7qEGgi+YkQT+GhR+y9TMT12yV/AOwR7us15LGYAaCnYFvOCO6S\n5Yq3P5DIVY3YVeKjKSurM3TpgJKzuvIKugQjmqaXgLtkSLvuPbzGRJbo9Wdy\nQ3LY\r\n=HL6S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1b325f8445271fe4a41c2e72cc23eec2e698c37e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.102"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.241-renovate-internal-patch-1b325f8445271fe4a41c2e72cc23eec2e698c37e_1621879994181_0.008957049083456736","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.241":{"name":"@balena/jellyfish-test-harness","version":"2.0.241","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.241","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac247405fe4018f5b5aa717c3a68d50f5983e306","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.241.tgz","fileCount":24,"integrity":"sha512-EohPdweWHZZwwE095G0gCWNq6nGY4LzkEHXx4N5+15Ca7RkDELsI1xkDYMnJsy4D8T+VDiX7sgDtM9McXAAQgA==","signatures":[{"sig":"MEQCIGmCaalnlEOkxIMW/bwW95RHTxPwh4xIlHfcGsIe2UjmAiBnqmij8mMm+hZhVtBu1RSmuLuY38WxYlMj/1eTQGuHAw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103866,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq+1nCRA9TVsSAnZWagAAhYYQAJbmTAxI/UGCiEZxQ6ET\nUvc/P7eKBX4aZt2DGvOipkR6lebyNvy1MNINvAkcRize9i3wA2YNZ6wZFI+I\nc90HAlrwgZpsDPCqoKtH5LRGkN1Ogx7+S4CkylJIS7wQPckSr3WctnqgoM3k\nR5SSAshPzCC9t80h98yAxWPxYU6jt6v/ZpBPRdCfnN2mycVeLAQDJP9FHIME\nMBt5UNqxwtjWIZdib8FwaM+l/M/pQIGxXm7t9Bybw3TJ/c9caCAt6lhHpoWy\nqW4kbctaDNK4tCRhEzKIXQSx09vplpuDJYHBh90pSGn8F+A30wFBOVih/AFM\n0KznZ3OqVL0L0K/S8m/jG8nob+rBdVwkhAzYwDeCH3EhiGe9qaHe4fXddWmm\nsb19JLoE4Sg6Fho2n58EYa/+l5mmoQ9uj4cIoJfsxefmOOtqb4emMkI4qQUT\nPgEFK2fy4XXw8wAr6i1fTtZZRftke0oKM9aTTlg8ehjlGO5cl3E8cgFjjBxU\nLVAzLy5jOS8X813IU8rtrSgjrEu88kAGfbxHSxU/LH/jgAgRh5ogQIEt1Ls7\nTVuN74XqXin5cLRg6rvSSmvz0ftWfATUYde8HTxC9P6p1GeCo+Yg1TiWskMP\nfsNxa/FYamxpPnfPgV1VF3sxwGXt77X8Ig7u4NBdtmpD0cZ0hfMOc/a00wiV\n+scr\r\n=E47I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e0748254b56cfda5c2b9d6c4ced5519db69c789b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.102"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.0.0","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.241_1621880167205_0.8273176168919467","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.242-renovate-balena-lint-6-x-94612a0e4048ccf24bc134720c8d5b70f4df41a1":{"name":"@balena/jellyfish-test-harness","version":"2.0.242-renovate-balena-lint-6-x-94612a0e4048ccf24bc134720c8d5b70f4df41a1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.242-renovate-balena-lint-6-x-94612a0e4048ccf24bc134720c8d5b70f4df41a1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a04314d379cdbb3c81e7920dcc9aaaff9d68096","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.242-renovate-balena-lint-6-x-94612a0e4048ccf24bc134720c8d5b70f4df41a1.tgz","fileCount":24,"integrity":"sha512-aFdok6I/hsevL8HDJAALsDPSW2guKmN7AB1LP7LKJGCuIJad0j3zyVAZocuG1KOfh0khq0iy0lA6EwFsjWYIog==","signatures":[{"sig":"MEQCIFdI8cyyacjl2Y/2Hg1hINVdNv5mGhidblXp71urw14lAiBlAuxvNpRyFImlwXe+MYw1Ypxs3G4YlLEQ3qUONF4lxQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104026,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgq+79CRA9TVsSAnZWagAAe5QP+wdN1MuSttEfi5r+sW+H\noeTnKad6ipJLt0uNpN5DZaJejztoabu10MKB4Gs1VSxzv1Li6pLxB4sUu4tc\n9pA+ihx5R0EqXdemv4GFKS8G5PIsepwxjjM6ioDc+05233DilRQfgMxrEweB\n/5Z/lfaBtCuGc9dasUMDp+epK7pCVndaxoIMCeGbY4ZuekiTUPLF9FJZnTwV\n01dA4CvUFnz8im90eyVuKrDthuSiV8aXU7H1lPSONHHiNAqQCDjT5litPn56\nR4pq6nRCWwZGbm8vHa+TnCpL4jKLAQz8VSKRhYFr5imcxOtD5HRQWvVjiYY1\nQZZerWxn9lblM/BD6zKWV/WWVqV1MXoRmLSATIrXp03P0PXBrCuMZRqBhMQ0\niwKcHQn7a2kjJLU3LMutZlN6US4HQYr3CHJiMCJ7LMJbvuF3dyresdZ16WgK\nizYmACQeTISQ/UI3XWoxZTp0x8W0wkjtwRvZLg1pfsJOQ+zCRSSdWSwH1ce8\ni1FpH3mI65Bhvo6zgwH3eB6gzixUD9ZQti8y6MXBAmirFihDInZxOfz1s1/1\n0GFliYwcgtmQOO5LoOa+KK7GAVwk670Dp3e44CD/TJOo1VU6o+l5UB+Vc5xh\nhFkgycem9kKbpCDfQpyLf61ta4wuCA2aLwM2Fl0l9Ws/FaibV2AzzUCt8hnC\nLPmp\r\n=h289\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"94612a0e4048ccf24bc134720c8d5b70f4df41a1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.102"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.242-renovate-balena-lint-6-x-94612a0e4048ccf24bc134720c8d5b70f4df41a1_1621880573222_0.10482609561075074","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.242":{"name":"@balena/jellyfish-test-harness","version":"2.0.242","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.242","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bde09ce8f9a488657e33c4c795bf3dc2d77fbd2f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.242.tgz","fileCount":24,"integrity":"sha512-WHQkKUDQy5kAm9HNnURur0Ex6m+3wbJl6lW7QfiXBjhiArrSjMyodqPjK0deAgABDT7M6Sq5OwyE0xSPhYU3aQ==","signatures":[{"sig":"MEUCIQCHrnk5uRUvKo4dPemJjSU+ZVLlCUZD+bQK1zO+Y227kwIgN6pAuOYbnaWLc+Nd2GgEgZ1Pakgy/E2IdXZ9CL3ISHE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":103960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrEAbCRA9TVsSAnZWagAAY58QAJCjEXLVZK1REzlEZXOO\nUbnHBcaGfbT3KeB4q3wRsTOz0tV8zKoDN+PvjqEpmNee+jTqcINiLAEV8Cau\nNYdhZhIz7sDj7sn167Wtv5115BlUUZzQwQCfBvnHAHQ7JslbkhirVt1oozi0\nSL6+i6OfLGXiUGB2hJ/kskOh1bnG7NDU7tqUfLgBCYeugFdcklNZHyKE1cRf\noTs8zwLJEiM9JHXcpmdSSwDsX14zItVPDzx/KvYbHeKQZAh2fraXKz/yPTFj\nkKhx56ALbWYxslG2vxuXX3q/pFvYXzQamcKecZ6POrLXBWdykH8oBfvkh6Vg\nSxgpsACRwzLzlZtEW8/fRMN6EF/SxIGZx/qj1w2FXPPu1kW9l3fbEDtIjOmJ\nrXK+BGXWysE32ELGOKQguPnena6RRqAZvKwvdyY0SXV6lbDDD8/6C9466tyA\ncDjJ6rcDcmpoWumaD+cAoWJ7/q0cxjU/YLkWjOGBvs8zpowJeK4Tay5Gvdyq\n6iovy/ZaM8vQimUz1LjfA0RMpCbhp4Xc6uItCrwihBMXKAhjW9PsYmP0CSbR\ndyptmtDS38I1TqwnZQjdfQ9rUdzHzYbmHJpGGfQC0UtSYnJ8LPUI9ItkHZhL\nLOCULR9FU15OMoYuCL7q/49f0t9bbp75p0s4ll8jgcCmYsbm5OJ3xEOzCcEh\nTrTQ\r\n=LHfG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cc790363519a92e28316a07eb7dbab5fd7e8ace4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.102"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.242_1621901339136_0.8143259296656669","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.242-dependabot-npm-and-yarn-browserslist-4-16-6-9a21970a9b5c26d3909798c8536429efbe8c790a":{"name":"@balena/jellyfish-test-harness","version":"2.0.242-dependabot-npm-and-yarn-browserslist-4-16-6-9a21970a9b5c26d3909798c8536429efbe8c790a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.242-dependabot-npm-and-yarn-browserslist-4-16-6-9a21970a9b5c26d3909798c8536429efbe8c790a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3987a7b35c0339620eebe8009738d0a39ff1469e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.242-dependabot-npm-and-yarn-browserslist-4-16-6-9a21970a9b5c26d3909798c8536429efbe8c790a.tgz","fileCount":24,"integrity":"sha512-6zyy45clmMK5Y9i9hDkc9L3YQiLKvdO9vnrqhqmXnmsJ4mWkXUSPzM3Q832PLQBVEpokPIKe13leoZPf1aChqg==","signatures":[{"sig":"MEUCIFyK0ErtY8hAK6uQbbKjB7QEP7vT1K10dibg0svIZkg9AiEAx4uAlyx0hUbeE/suh56OSrh1AsnLxP/epjxtm46ZD8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrEKpCRA9TVsSAnZWagAA+D4P/jysMj7ZrAhbqf68yiK4\n25uLS5IEtvFp2BL4q/r/67mQj6YD4DmhvmDUACDSszRpdxJkZbWrvE9EmpPK\nOW2tqTdbQxoLk3G862BV73yE+wm7q6RDRL/Q7Cv4Oo4gC4h0AkREEQEZ1sk2\nleUBbbvSOT6GYAFKC8pNFWkAkZTZalvlTEGVFBDVfxx3xq3JyvPrT6pqT44P\nmD72fEJVInl7GLJgR/t2oh1itg9/a09Clrhhvx0bwk9tdfSzjN20J4GK/WWn\nqFDiUxZkM4NtDSDG88rukckxynV0m7FUfzZf/+6akiIYp8looHyVN6XhKeJ2\nERqb/Z+21PLPxewcnWOqtxC8elBHZ9z1kJEIwQxh7HS5m3BTwA3r7k1i06+v\nXPTBUUOsdEaH17gN/lOSZF29jUAOP2PGS2V7z4IE5/qUsZOVKRAv2t+y6VoN\n/W8TUY0ehPhGD0v40REzHToWuRpizR8tT1p/vBVHUv55HFuDgDyiOx/ITmMP\nx9c3/fi9+2sbeU/wcTYn7WZi4g6/1e1VmI0UOjFv+/91BGtj6UX3q0mW8Yol\nUmcWYnFY05PRCM8SGHKqI5vRAfXLq8jvJEsmXCWBP+uBT69fCU2BOTDmDW3D\nG4olKCFYlIed+x1MkI16jLn/rkhI4IKjz4pz0feiXgO44iG6YJZSAoqhkFOR\nAbC3\r\n=titC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9a21970a9b5c26d3909798c8536429efbe8c790a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.180","@balena/jellyfish-queue":"^1.0.96","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.17","@balena/jellyfish-plugin-base":"^2.1.102"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.242-dependabot-npm-and-yarn-browserslist-4-16-6-9a21970a9b5c26d3909798c8536429efbe8c790a_1621901992967_0.7324796780701024","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.243-renovate-internal-patch-46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47":{"name":"@balena/jellyfish-test-harness","version":"2.0.243-renovate-internal-patch-46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.243-renovate-internal-patch-46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04dcad495e849eb87f4a4b6e79cbdc3a21a83997","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.243-renovate-internal-patch-46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47.tgz","fileCount":24,"integrity":"sha512-oJOsYvxkyq0kKAVoAqj9/EBQgdR23kqwxQtg+EWG2W6BrdzqWS9EeRoIax7dhd/pLaUZuQC6793ZSa6NZhL3iA==","signatures":[{"sig":"MEUCIQDFuim2gyZY8BbY1hbsHllF2/BIJxKHCIGuYhOUkpVZzAIgdO8RrykhRK5tK3f5eqS4Un1BOW6N4f+0Rd1o3+rjOno=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrEMtCRA9TVsSAnZWagAAhcQP/iL5TZQ5Jl+2BFduxxgk\n0a8oM+lOk+M+X8edFZcOG5PlCw4g5LR++yEvltoAKw5CwUInY7ioEDIF5WPE\nrTU5ZgeoXtr4KoBFO7hqut+Ttlk2dQBGp2CnmKQzZ6qU5JQtdJYMJwHm3oxV\n3qzVgG7n4dbyuVYpxuG50elOPZ/Tiur/IXG/9EJhIhbOCZV14oVAcyHVdDDa\nL+ijm3QiQrYkqfFNjTv4yjchW8iL5zN/Apx1tM6Q5cDUo6pfVfWj5BxIH95b\n7cpxVoBY0wVaGc37T5npoZ39H/Qy/qL/v988c3A0spFMi0TNv6e6usYx6V8y\nthQoyIBjpbjolCBiUAIJmNKYHd0DeRCnEZSgNMnDX8gKE5lCaozm5RlbbRof\nBKccsNBdO9YZz2IXzDtzxLFW4DtOCxGYC+QDNVdeOmWFH1o4roo18cKnyonm\nfLmk5eVcTzE0hAfMVG2pfhNiO713O73eGeGhKe8foxdWGHaANmmsglnW7uKv\nY6l0ujbw7L1+t0rYqGz6uqtZX44Oa8cjrTeqDk05hGY01SNR/4HrvAwSxkOz\ngbjrmzSbunxlsg9KH9ziKqy8+ezfMwgynPeeiAMzzJ3lT5awapsQCw3gbbRa\nOgE0Ffj304uk2/x9chjcmn4ZKP/Hmn+vEd7XXKvdnr7OEdvusnBpLvZeBpxd\n5O1S\r\n=SXTI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.181","@balena/jellyfish-queue":"^1.0.97","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.18","@balena/jellyfish-plugin-base":"^2.1.103"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.121"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.243-renovate-internal-patch-46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47_1621902125266_0.3636906406911171","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.243-renovate-internal-patch-b5f557560dd0172442ded74e49f5b05b7bc73468":{"name":"@balena/jellyfish-test-harness","version":"2.0.243-renovate-internal-patch-b5f557560dd0172442ded74e49f5b05b7bc73468","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.243-renovate-internal-patch-b5f557560dd0172442ded74e49f5b05b7bc73468","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b86b7fbfe73b08f4becc05f67b36dc0fb19bd9b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.243-renovate-internal-patch-b5f557560dd0172442ded74e49f5b05b7bc73468.tgz","fileCount":24,"integrity":"sha512-JMK9tlsHJ4NP6nAhWuyAkfC4X8PITG5sg/ihfB7+U20cKPQDDJqr12cbN8c+Mf5I8gZ3RX8UxGlfotanjOCmZQ==","signatures":[{"sig":"MEUCIEmbGCyjBp3YsZ/97EEEXrYtl8plWb5biFVQ0Wl7XIxAAiEA33apJMj88kLZRbJBfVULfPB8M5TbnU8fUbn1AkVlmdA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104100,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrEZtCRA9TVsSAnZWagAAKHQP/REEWZd+y2R7LYIQ/IUd\n6G9NV8HILHxFwpy958QfZhDAZQavON3O3vgrUcpLjglwKTbAOX5i7tnfoO8o\n1W1Z8nwTIwmoWze2GZ7iKvDMgjTEgO4b7ulw2YU1hBKePvy6QDxWpkZPndm2\n8dN4EJPLWSuqM+dmY4Cqebnuhxp4OVS2IqMUKoycjk1GTrl/HHzDX+YgTw8U\nsYXNLG/r8/p0iDeHdzP74nS0iAteyfh7k0FyKOojT9sMacOab4UWjYVc7wdI\na/9KV83LGwrzD2HVeRZgw2HSDvmCSos3LNFspqdopq2vDXxFT5fGZNTg0PkT\ngnrG+efAyVaRi5Royh/qFbofqZo9M+ARddjBrHS4mgUjc26pfu7sHNGPXVJE\nrHi2RTjODAqHH7EU0IaXwYwbcpfT51AbfjZ0RJWYBWwF9bT5MhgLLMK4gB/M\nMjtXjpFti3RVcBjz61bq2dAL+oetqPjNRMqF7TaD1TZJ6e8N1iseRS8yRBoR\n5od8R6IPb7jv8A+WZu/nlnPrdj1H+DfCy65WBzX8Pp/N54vkURLBhPs+vqPH\n5trLrcJ6K9C8WOGjyDRUkuiSM3qAIIqA08oAfGJjUGxNLvqQ0DXLPsLErB97\nnrzlpP0em5ODO0n/CAmIpGhwJTI0E0HWRW8TBczkL5vAR34BjoIZ/jmDC862\na77h\r\n=3BsW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b5f557560dd0172442ded74e49f5b05b7bc73468","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.135","@balena/jellyfish-sync":"^6.0.181","@balena/jellyfish-queue":"^1.0.97","@balena/jellyfish-worker":"^4.4.32","@balena/jellyfish-environment":"^4.1.18","@balena/jellyfish-plugin-base":"^2.1.103"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.122"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.243-renovate-internal-patch-b5f557560dd0172442ded74e49f5b05b7bc73468_1621902957269_0.10463914563073029","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.243-renovate-internal-patch-01225a0682bc4cf8c948a3b715066012e2bb2d06":{"name":"@balena/jellyfish-test-harness","version":"2.0.243-renovate-internal-patch-01225a0682bc4cf8c948a3b715066012e2bb2d06","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.243-renovate-internal-patch-01225a0682bc4cf8c948a3b715066012e2bb2d06","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"502ae5ac0ee598725a66cedb03fe91065f29275b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.243-renovate-internal-patch-01225a0682bc4cf8c948a3b715066012e2bb2d06.tgz","fileCount":24,"integrity":"sha512-9+//RRqMw/9BQQ2fIWB+7tf1xquochpnqsrmvBfjX1B1Lt6hOPPJ++MlImbMxn0xJGvt6leJcLuZ9V8GmDOBCA==","signatures":[{"sig":"MEYCIQCkQ8g/7v+GYiTsXvGNFtV8Arip10efIBL4B6I+Q3lVZQIhAMmfABk14wV1oTZTeuLyQ7UVq5i5/l+uPwuaYO4np1Be","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104101,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrFu4CRA9TVsSAnZWagAAEl8P/0O+7gCeVtuM3dMIndfK\nbYZEf+MfiYKOHADzU9YM1guoXlkUODvSVDttIwIGgefzHyQ2GAD6DoYWiA5n\nM2eGB0vf3uhujtBG6sMPIBCxxSiUEXYgjJ9UBmLHtjLb1XmrK34kO9hNJKNc\nxW4aA4ZP3snEnah2be/Fbiv8JIuKAXFrD5IQ27MeAWBO4DQmNEzaNILGntjh\nwsNNrGpoLCRpBjoHs51efkhEAIWJEUgeJLKzNr+XcDjfslepPaRgYlCaCCW2\nqPM4FQ8rJJAAzEF38p0PZXSa47XXF2JSdrK6OwpZNwLf4+qhwDCYsyUW6r1e\n4JxMh3UrGNG6aSOm/xqdTjHz7jRm34QspXvrzMjrMtp9a0v7AXaVHKUpPTVq\nT8VC5D1LYXoeJYwXq0Bc689p8zRSnXXUegV6XEAm6MjJyI4itREVVqIavo6g\nIqbEAEiEdN0iC0ZZ2nuBstC+ZqwV5/xNcu82Hyf7DJaQqkzZwrY5IGOHgZDU\ns8TzaJTTUIk5tYFVj/r1iwQ3I9CSD++xdBM9OlXfu19GlfvJ8lofUPZy85lc\nY6G4zXWsKC1mpi6a70YjJjzvLqqMelVXD4DlEDN0U1iiin5BcMg6aVLWs+ow\nvhEFXH7K/WUD8n8ALEDuJjhYgqZYvSSxzu+vbek7lLj1a7qy3GZafog9hEP+\nzsv3\r\n=CAid\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"01225a0682bc4cf8c948a3b715066012e2bb2d06","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.182","@balena/jellyfish-queue":"^1.0.100","@balena/jellyfish-worker":"^4.4.36","@balena/jellyfish-environment":"^4.1.19","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.243-renovate-internal-patch-01225a0682bc4cf8c948a3b715066012e2bb2d06_1621908407786_0.7363553174970603","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.243":{"name":"@balena/jellyfish-test-harness","version":"2.0.243","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.243","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eb51ecac5f2267702d9fcac77086a3c4b403a446","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.243.tgz","fileCount":24,"integrity":"sha512-wL5RW0GZA0mDd2fkD/RzkpWp9k3563pF7slV4ie5VMCQDlpUgZcyUQ9s7rmZwIRIyCoZ1ThmS1eT0dI4pej7kQ==","signatures":[{"sig":"MEUCIQC9mwb7F3JJlEFbWpJxlvZ05SweZNcM1Sp4lZORqIuF/gIgJ9owVzsbC3ohaP8A1SJdOhc3iLdjohnGDFe+YHuKawo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrFzxCRA9TVsSAnZWagAAs5oQAI+Ynmhd7UHAIwlEZYTj\nzdiUNMM6TSLw7doTqOwIHQ0bjP8/nJ7YflqWOMTC+9qrY7sJNKvGK57hH2We\nw0SWcywgbkjOF45mlzWuBSxImkCQQ9tpJqCyFP8ezdoes+3UoqyCc1rK4ZyT\nsmcF0hSN8pl+Ca6AH8bzXQQ3Ew6gqxQTqB+G2ec/SC0Ksf2PX17t1Gxy2/hi\nITb/x05LHfkgfb+c3tLR/b9ZGnJ+xqlvrP0ZVdEXbJ+1r0DsZGt+x5IKtsHA\njbVspPy1ULhSD97FyqwbISyqKirhuhF1U199pw4u9R8+wDRXmvqxX4mgJRbM\n8JvCzEmZPEXBI3DrosEfeHG1oXiKywkOommab7vp0tomAORlTXobqIAHicY7\n1RF2l06TJC0qPgtl07ia1Cbl7dNDuMnfm0r5PoRsjoKk/4xvFEFQ+MqnEgpe\nrU0C0bMVJK13CL7cX3rTocown7WTiKogfSwPdj8e5rfUxibXnC1SJqx8hApP\nwNMeZay6c9mdNgDbG3+8U03/yaIEJ6plOBxUS4+9dvM2+PHPE7bwmxfg8N3x\n7UJNyI8tIbQUTE/T3MpbmTwjlk0XqorcWbGz5WsUhraWqFywoYNwnIUfnD5V\nlSxl+fW8THZQNbaD1oahnC0UuiW3E2zZVjtX9XkGHoyyFEOcQNRqJZDF4vKZ\n4mxP\r\n=PG++\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7849923d0ba27fbcf67e072e5fc0f26477f0b350","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.182","@balena/jellyfish-queue":"^1.0.100","@balena/jellyfish-worker":"^4.4.36","@balena/jellyfish-environment":"^4.1.19","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.243_1621908721376_0.3098118047833267","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.244-renovate-internal-patch-dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a":{"name":"@balena/jellyfish-test-harness","version":"2.0.244-renovate-internal-patch-dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.244-renovate-internal-patch-dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b9b398cc0d9793439bcc0a7739f31d7b15c47f80","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.244-renovate-internal-patch-dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a.tgz","fileCount":24,"integrity":"sha512-hVBboNLFGTNa4pUkWK6+MHenEacx08TqDwP20ZOeLBLmxDyNaddUXpSXj504NDTcsL5szmLHR+1Zmp7OCZgNlw==","signatures":[{"sig":"MEUCIQCFeLSL2Rq/OHgedJdUG7KFwQviQ8FE050LpMc02RKO/AIgBu5q0OiybZQv05vLPmZqLk3V+6sRsz8wr7nVfl6aenE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104207,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrF6gCRA9TVsSAnZWagAAIEgP/A6VfOZoZBhw5ohNKRwj\ndKdKu72PVgwjbIcmwMVurbTcLeOUHoYp/c9ed8xBG5G1Gz8hXTddXtvTUH5X\ntbJgFD7cIvZ4wUgX9QADwUKjhJBbekk0b1ke/m4n853VpiBwMTi30QaiKQ0S\nOkTikKSfqacaojGWZjscJQ+G5/3FW0qJKql6o7Qu7m8moB1nEX8uf1qaHfpG\nd5r7Q8p7pQDYYwjISc7hH2pEgKfbTByP1YaJ7i67N7vt3vvvnuk1Vme8Mv44\nNxAEyJdwdnh46/eHFPIel29IC6a1MtkhohOPW2LGQPiviyLfbKd9s6G74znq\n56l7TRLaceXamA9GOcrwH/EH2hxgZAkdjbhAhSVWKez1ibmQHsnwNJJO5mtu\nv9diM32g8ShZ+ciDfldSCeWI73eSDhQSd2YZVZPVNIvhhv6Gqv97S8/DRpsF\n4TNYpcTzP5szGoxjptHh5Cs1wcijrnmSCXsdw1A/QwT84xPHRWvf6geZIQ/7\nKF46+uozLKXXAJ8GTpr/jTQkg2I3ltXX/xADBwVxw7i9ia/AMRG++xMv7eoV\nBrI0J4JJMSAHIvxMuTy/+psFFI/jNSYURnul2M9g0PsL69PH+6NaAbp26FfR\n8NDMhL1e2Gj7HTN+UayIbReHactHGVAcmMCsrWuzRj9KtgWEzAb3kG+9q7Lx\no/+H\r\n=Uwiv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.100","@balena/jellyfish-worker":"^4.4.36","@balena/jellyfish-environment":"^4.1.19","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.244-renovate-internal-patch-dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a_1621909151907_0.2992687374453826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.244":{"name":"@balena/jellyfish-test-harness","version":"2.0.244","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.244","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00a8f364de65919576e71ff955f42b3caa2f25a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.244.tgz","fileCount":24,"integrity":"sha512-X2afYzA+aE2U6kIj3vDLxSXFs1DnuoriBuFOWtfTSDe7m+Gbp3sM3CgX/JL+NaIe+yaRig1B+9ugZiTrbbXI+Q==","signatures":[{"sig":"MEUCIQDk2NNRegv/EDDAHVNlytXpb8NwW520RoP7RNJRxtKKkAIgLvPWqMufHSj6Mb9FEAkMmH7Sz8N0ElETCYmopCM7mwE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrF99CRA9TVsSAnZWagAAhjcQAKMeNz7eKhifrJSwp/m6\nBkBAHugEGQAfpniLP3KEsscBPpKVJ7A45Q3qw2mwfGuGtL/5MmdXVNq9SU/J\nR5QjCGqkFWomrWZwQ2tNqTShLUPsduIRU4xI34ATfXW3Fa0+jZANtIh8GEfs\nN39h78JScIQFRUDjjBH6WdOqQpXWc/ojIM1vhUU5evrSfX44F1QJFOhx8hjR\nxmT8xPZIJrzr+V/hl17B8vareuP8QGPMdBVNGw7dQAetawBvjK/CZegem790\nCMPzDk2cSt7FQVPwf+TUp492e/KzpAkUte850A20DzslbPqTywVeCw/3Tu5e\nL7c7pz0Reo6GSHj5yxvVDWLmhTglCYmx6ng5eiYUwVXtAcecoZ8q2Q6gpDEv\nG3v/4/fVekcPJYyObiixMaFKRcXsqjR4h//gI9FcnOwslTP4dVA+6kdXwEkh\nx12abDxljV+Kp/B9JeodkbxDXL7xZyjQKswQSqXMszWoHrN1mhYwn5qcKsZC\nkQoF7XIdFX0RG9EA2PSZ2zLbXqWjm8HUPhLqVxrS1/rDxpxBExU4dhHNGo4g\n8BLLHyTnOQpAOv+ltRPefWpXXiXAWB4WhmNDcXvTaJQjBaQH76doeTMtgTqa\nXub1y3HFhPIqGTUCzuqF4+3z609GaC9pNUFSIMJTUZcY1V88YgZr/NqRPUH1\nhLmN\r\n=Q7Fk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6d0f873a666237465544de1c0ad106ef4717d2af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.100","@balena/jellyfish-worker":"^4.4.36","@balena/jellyfish-environment":"^4.1.19","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.244_1621909373030_0.9422242115941479","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.245-dependabot-npm-and-yarn-browserslist-4-16-6-a835d869437e06e4da253e8ff5eda8e905c332be":{"name":"@balena/jellyfish-test-harness","version":"2.0.245-dependabot-npm-and-yarn-browserslist-4-16-6-a835d869437e06e4da253e8ff5eda8e905c332be","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.245-dependabot-npm-and-yarn-browserslist-4-16-6-a835d869437e06e4da253e8ff5eda8e905c332be","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c6f713d0ac2db2c85cdd0df69e0c34de862d1e3f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.245-dependabot-npm-and-yarn-browserslist-4-16-6-a835d869437e06e4da253e8ff5eda8e905c332be.tgz","fileCount":24,"integrity":"sha512-NwdEwHtjX4vFCT6KiP42//Q9my/YClfhcLPxkycLFx64dOqgCi2N4HbYv+soe7CP2l+XJpt7OfZub4JP5BhU/Q==","signatures":[{"sig":"MEUCIQDAFJB1QWWyfhnmgRkpJjae2O2OtaGaVhFOaa9rdKA3MQIgUQfJdgyRDQ9kYyv6b5Cempo0/T1bsQ067rRTn0SMFaM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHNlCRA9TVsSAnZWagAAIIAP/2RWQPevPBuljCcm8cI1\nbX7NRvnIanabBlUz7UZxbAAhM988h9K8GZ8mZs7x7vl3a5nHVboXlNQX639q\nMFsn/N4KDAV5CBCh4xvLEO3icFKt2wQEKB5MWbc2Gf+HMwgMoufJw7qVHUEY\n5n2+MqfArnl9Qg4ln1pu2ApqR5+01xbLLGcbhILRX4DMV5ybX7jjDgE2xNNg\nZmx0fkzRGQbmcLEEhh0yx3GlyPJWpyaBY7QWImU1m0rf6GQK88vPx9x5wylq\ns9CK2MjcvbemmmGt46frE7vg9cnzUasTHN+xBqpAs7d7+DmMTKwSTQJLcIGk\nXmbwrQO5kQA2tbaBVV+V8gMoXIgJQ5qxRFFImXBhZovPANoT1Ujtf+coOGXb\nMCc7NJQgL+0CQEWEE3bpNIuZxJnvpnlgqEkkMAsgg88FGd1nY52CGEzMn+JT\nt8RG2z7g1kZp/rYGKgBvFWcsxZ6Orx3HAvxmjUtBZN+4XFNyo7JUpAlescMo\ngjR37R8bJnUGcICit50GPmNW5SYJGQ8s8ezxHOqysSMmbmjCoYPkBnea9tP5\nmgAZ7uU/Zwj3aafOBVDcKxp0m8nnEiBo1i5DmW6apFAAWXeFdz7wWt6zmio2\nE6s7FI5fKtCTsWEU1Pi+7OvQIDliEy0fV+dSEtIZZhYbxUgvg2w1E2xyhC5l\nVFXX\r\n=Q8Aj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a835d869437e06e4da253e8ff5eda8e905c332be","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.100","@balena/jellyfish-worker":"^4.4.36","@balena/jellyfish-environment":"^4.1.19","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.245-dependabot-npm-and-yarn-browserslist-4-16-6-a835d869437e06e4da253e8ff5eda8e905c332be_1621914468655_0.9407375200237775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.245":{"name":"@balena/jellyfish-test-harness","version":"2.0.245","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.245","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe113decb5c4eab8c72db8092abf8171d6915e9e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.245.tgz","fileCount":24,"integrity":"sha512-kaj1Vt7vMrdTEKzKzxAmyX1OD+Y0xjPrzNqXbWKDsjx2sk4arPfDRH0IeOSTQzGeNvt4gY72sLVvD6mIw2Bivw==","signatures":[{"sig":"MEUCIDXuFM2UMuGP4F8F8qkOuq/XZOcQGBbVU7rz8Dq7Nqv4AiEAkUWvzxpSmVR4g4oQxZhJ62LezdrUQEXsl0djc9/M03g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHRKCRA9TVsSAnZWagAAq7gP/2wxpjuMCcZ+kex3ha/c\nYRq+iRiM8qR/9tfpJ64162T2LMgiM0e6kNxomoCJ87n9twEWZy7X316kjnYj\nccU1r3EKvtmOMjTUGTO4qWrc7+nevFwbKDwrj5tnJ9YwRGfU8dhmSTTq0C3z\nAzASGglIcnE/11OJb0P+JumiJicB3ZyScP9Xadw38ThVOUFfE7BCO0XxKz09\n5bHjNvD8orR/U6NVZEeofdvFP/CnU4hGMEq9TXTdDGvoptMsHaKcHPLCvV4I\nXlESjTmE6ADRH2faIpB8mWLqAcXHAuDldjSour0rWpMErgWuiu3oEdgVTypF\nZkGKFNVWFOCzkUnWewJWK+4qk+VdBQOZAJjPfBuPO0JBvOLwttL+6ZdPcT1Z\nBDDr4WiI+uzAV6SIfN8r+w9upZSVuKq+4R86ogsELMpDjPgURYemdYFcBX+n\nrf9pIl4w1ld90FmUQx3I3bgXWXFB3eSGFZuRjbhKdUaLv43xWyfkg21WU4q9\nKpxyWT0KBVzn2+noHV9Z3uloslIy+h6GQpqUiUOpNIGpIEaFRWlpX7s67Kod\nKlu7vk+q/ZYHB9uDATLFhM5sVLB9OmNSbbuihVL07ES/qNyluxZzgN9mPg3d\neDGFWfJYmA92vm78SG623YFHvUOLDUc7yrhKUh0C6oZEIUA2ZH2FEW3Ckd7L\nQXMe\r\n=u0OS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"17c15faa82127c5e584a1d2e2b56e6de353e3a08","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.100","@balena/jellyfish-worker":"^4.4.36","@balena/jellyfish-environment":"^4.1.19","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.245_1621914697865_0.7669949073136846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.246-renovate-internal-patch-c466d0e6006982bc7d990501bda610e11f4d4347":{"name":"@balena/jellyfish-test-harness","version":"2.0.246-renovate-internal-patch-c466d0e6006982bc7d990501bda610e11f4d4347","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.246-renovate-internal-patch-c466d0e6006982bc7d990501bda610e11f4d4347","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"597e3964f5f4997dc87295ca1cf717912b906400","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.246-renovate-internal-patch-c466d0e6006982bc7d990501bda610e11f4d4347.tgz","fileCount":24,"integrity":"sha512-ndpqeQasV4WKRWuhDSI615UE0XyLo4O1DNyvfhYP8JGvAdawI8Aivn3i/UMV8GuiiaEFkaVXugYFvE0fUXEO1A==","signatures":[{"sig":"MEQCIAgKfhCuvV8O0Lt7CcdubQAAQ/mz3xqT5Ad1w56nrV6lAiBOsNpPXl6q6csmdFMvJ7eEntvbQb1NBQmdwR/3Yjvavg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHY4CRA9TVsSAnZWagAAofEP/3+oAPuQKRbwu2KdUFqY\nkvysf5ITZQRK1sBx8NQoKopWCEHBt6ed5GcK8OW54KsWFKSedn3e3Gy6vS2U\nErTkVgGnVwWTPcC0zTdRocl5HHhGlPny0dNM9IEhI9YiDu+j+nYw9nCOVuBG\n3/ZxrAuNAtHeMUgwmWVaUs0DpCNfoTHE3SmmvRQSRhF2LKi89RaVAIl4f2Q2\nGfvoewFUwBsJhrmK3itvTVtjmMbZEpK11xceCF/EFrA3Zo6gyX3jeIeqsMbp\njN0qYT/Ezg3XuQWam1Chj5E3RCsJ5KDr06cEJkMrfD8NSP2JGpvKtF2deM4I\nx0MQCXyn7xBQ/zumHWV19Kh+CScibdZ4HPEmHAWCVkguLB32eUxAJizia3F5\n4yxKsCgn6fxLQTVhgw5OCdWoyReYo0hxJH01020DG7oLsyADY6NuuTGhJoOa\nd7wJuU9FrittjCpfJhpa5QP3fXGRW2Dqj6oLQFb9hzQn1ZXUsb0UFUwF+1j3\nlFlGsqJTfwucqREgpjK17u789QJxOdvQSvwFSRL5EKiLTGUYhZGMwkgdSJne\n6fkf5QABffZmMz9BpqH63KmdTcUMrcEoaXqXoQZwhnzxArlZqJ+MeBlCcbdt\nr+sYZOSgdGqEEUmcuULqNowwmSFXs04UVvNQeDnD+xmC18Lx2DWeB6WkbyM/\nOMME\r\n=zqnQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c466d0e6006982bc7d990501bda610e11f4d4347","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.101","@balena/jellyfish-worker":"^4.4.40","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.104"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.246-renovate-internal-patch-c466d0e6006982bc7d990501bda610e11f4d4347_1621915192416_0.54744956073097","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.246-renovate-internal-patch-11ea74010421a9022fd8287ba2e0d4c683d755c1":{"name":"@balena/jellyfish-test-harness","version":"2.0.246-renovate-internal-patch-11ea74010421a9022fd8287ba2e0d4c683d755c1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.246-renovate-internal-patch-11ea74010421a9022fd8287ba2e0d4c683d755c1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f6a395a241e15f6f3cc9737247f03d6785dc613","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.246-renovate-internal-patch-11ea74010421a9022fd8287ba2e0d4c683d755c1.tgz","fileCount":24,"integrity":"sha512-273UYYX8XAJxM5lUzhikVMVr989zoEjeDIUnvnPrOYqtGiEqkxhLuNVvbBSyMw5EwH04d3rpi9O4/pns4mXyCQ==","signatures":[{"sig":"MEUCIQDw4IWP64DdJHwxrJVD5o8JbVsp9zrR6LrLuVqK23s0nwIgV45RP1BQL4s0ApqzWdIqBcP7bRvt8uf4Raw29+ABbd8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHeGCRA9TVsSAnZWagAAzT8P/jBfHv6U357gyGbx3kyc\nsVJ1qdbUnq/mP/+rzmQfhHxhtHDG5Y/az2aWvJfULSpMVyvj/yOQtNuC+S8m\nFHypQQ9rBrxceUkEVlhjyhtercBDQagIe/1etktcZ9ywk6miCSluM5jcSL8y\nvjb+kqb0lKnJHMeDWwaFtirdG1bsWyL4W0t7GMCio9MfKSbreU72z/FMeI5a\nLJifRssWYTXU+fEXh1FCCLgMBNo7pYtQIbBtgvzM7OD4y3DaXBasM739PK9L\n5doZ6sE8g9rtCnfaDKLwJQZP6uhiZIhpSDPIf12/btXfcI7iZtOcm+wKIb+9\n2x3okOxP3ZXdTcDdjIlZ61TldWNz2MLRNxayyqEQpr2x1pK56jyCIzKdwmFC\nZGVypGU/Ox+DKiHJ3DsYTAxYbYXFfjx4kfn7zhNzgNwN0fUB9RCkezf1Hr1q\nQ92IkQ25zZGhmTo/e7jx5BwVVOeqnsWIdl3/Cu6MChdiveGwYIpPixVigI3M\nJ9fqXk9ucpJdnA6tr3NXxaUVhwxVHpcBNf1Ocwy+mLmyi27c+UbmHXguO7u+\naKQa5kx3dQD3GCqxu6+/CgJFqL2OhApKKvrxxaUkNUyqmvuQAiltjY4BOYfH\n+5W3uun9QEIpCDyCBkquwJNXQaTXB32ZFKbUnARV0L4a75VC+uOR3HWEXNos\nNHoH\r\n=7oKr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"11ea74010421a9022fd8287ba2e0d4c683d755c1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.102","@balena/jellyfish-worker":"^4.4.41","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.105"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.246-renovate-internal-patch-11ea74010421a9022fd8287ba2e0d4c683d755c1_1621915526540_0.35015958367354716","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.246":{"name":"@balena/jellyfish-test-harness","version":"2.0.246","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.246","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e075eb47cd439925d4a223fc42d3f47e29968fb3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.246.tgz","fileCount":24,"integrity":"sha512-BcDiJfdWkUnbHmjf1OG9aMpBBahHI1WusqbaVtHjR68+sCl8va259uQTDR7TPU1ywR7SOFr4aAOkEImffOroVA==","signatures":[{"sig":"MEQCIDdPao2e2KKPXZwmfW5idTO3oCX8jSgRxIhWolobwBbiAiAmgt91Wx82FVU6zFSFyz2Kdl66R3hB9UoV2YJw1ayH1g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104319,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHhiCRA9TVsSAnZWagAAGdAP/jS9KiloGylipfQs/WfZ\n51gIxh2UysLFPoCCCll4yYKuRk+FxXOdIJsXS6RfAoo1K5KtgkR2IQemZ8iS\nkxrC2Y/uB3LftsTfsIlR0BFxdNkZtEU+VVAFOqiOyayTP0q34ydvMWwgRCka\n29FkpodE2tr0wTo8zIBAFBstITFGEmD1o7hzI+J/UOLgAi/sFQo+PSRvKvMc\nVnyQXht5y0h2uxjyNNbMrJGU+ba9GvgQ4JVdMFQDeB7c3x2Pk1WCAKt+ottl\nfoeN+A1Pc+meD+zze3biumX9AGx0NRNBKwavPfPDHSqcMlNc74CL/Enqbl3m\nsADqUfYAG3Zentk1QB8EwC8DRGbfVHn5anSnd6LfQqyn2RY5+WgXUMnPHs6/\nxzwAGX9jfPVaGJHYyaHLLGF/eZvOFPzShToNagC3Sw6bofF+I5qfsIP8Nt26\nSLbL0+8PWp2w5umqtO4h2nX8WKTDQ5hMFv4jyLQPZ/ByZzpDcnjE9vFGkyPy\nFJZtkUId7ZPQxh5kokPc8vRdsUw5o3psoC8gHqWcAr4XlbbM5SZu7I2HKAje\nlcOv0lJqCSbBBnm5zA7onXFyiM3bzlYfSfMKNWP+J11olUcKFf/pAs5OUiWW\n3iDrvfjziUfX22beWuLlRqRRzgs+v25trMJYySy3dqmz8GLPFEMpbCJlccGU\n9xLw\r\n=vl/w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d1d097625434f94ef6247b08d9c0aad5665a0626","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.102","@balena/jellyfish-worker":"^4.4.41","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.105"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.246_1621915745628_0.9022961651460153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.247-renovate-internal-patch-4d4738e12804df112bf8868e6b3a76e9f65f8428":{"name":"@balena/jellyfish-test-harness","version":"2.0.247-renovate-internal-patch-4d4738e12804df112bf8868e6b3a76e9f65f8428","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.247-renovate-internal-patch-4d4738e12804df112bf8868e6b3a76e9f65f8428","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01c13bd7d181df52c63dfa9e748b14045292822f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.247-renovate-internal-patch-4d4738e12804df112bf8868e6b3a76e9f65f8428.tgz","fileCount":24,"integrity":"sha512-3/LCYtsXZDmunknk/tml0CQN2ahKHR2im3QAuaudguKVFd21lfLxZC8Yyjmn5ClWbX7KdJNf3CNWDTAj9TS8gg==","signatures":[{"sig":"MEYCIQD6Hd64+mjuaILZrPW9d1eXgRqcItJNxrfNVzHj1Xs90gIhAJusL/T3HBSVY3NCEgPkloU4fiAyMBxuug19iP0PXETF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHneCRA9TVsSAnZWagAAf+kQAKUGKfbwK50LwU/m1c5q\nl79CHkriAYsYCVAcWBaImf1e/Uf/ICLmcWu/s4Ze6yJm6vsl8Nq29LsAGaBm\niNChFix4aUsNTi3TonD0KZiw3b1NFsoegxf+Zfuq8qj12N1vhHSXOy/Jx9Od\n2XrJ5zh/nUpoDOBX2wra/vMk/HFv9DLYeZLq3byyvIUQzDze0p7b/qSY1NUH\nVYJvbXZAC37VdpEgpY6H/KsKcLj/yi+GqSG4BT0uVUf/8HP3tvsYq+JTv839\nwk34IlF+ZQT9HzkwuApNniK2Dbzk/GqBBzYXiaC/X6D7tN7i/PXp0RG6Frjw\nPRFmCubxZWMXD08FQYx18texWObKfXiYHLhAWDg4FFf6kmhaySZknf48AcQU\nEcjP1LikhAaPscL5BTsbZvmRobvqfBEt9m1UAEMi0g5FMemOIRPaWELBK6Zd\nRDNzSQmgmgVmK7KtF+PcOupC97ZrZLdZb07HBy2VdQMeSbrJJ64kPY0w7DtL\ncdcQzpR/kKpngqq259y6mU7kOyUbNqeVa042vZ566obYD/r7D+oIp6aU6/iM\n8PQDKiKldeXlLJu7fuJCvd3c0Qmq3pCafQURceuku7kC9LcnyTyDZdoUSbGl\n5EwV1KkTP+fCfCAW8j1bWe2PGUvUAfEUQ2WdOnWTmRsRusVymWnXMtyml4nB\nvXKP\r\n=BujL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4d4738e12804df112bf8868e6b3a76e9f65f8428","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.247-renovate-internal-patch-4d4738e12804df112bf8868e6b3a76e9f65f8428_1621916126073_0.8102651320432597","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.247":{"name":"@balena/jellyfish-test-harness","version":"2.0.247","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.247","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db11d5ac875c73173d9a678e551dfa68cdfba574","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.247.tgz","fileCount":24,"integrity":"sha512-TQM8OLdu2Mb2vddHRiAJ0c92huoAkhwGI/qSHR7zMpRLrR2yWGnI2m/fAs9/kU4fyBJopu4EUKlq8aKi1aO4ng==","signatures":[{"sig":"MEUCIQC6tn2xE+0+NX6ttsmxx9jmWMxB2gcSRTZPvkaHJaBY1wIgUOLYqRO1F8phA9UkOJi3JbSpHMCcvRRM1AuZeKuEpVU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHquCRA9TVsSAnZWagAAWWAP/ij2BrSHf+WAQ38ACuji\nYj6aP0/dAgTs7m+ab+k/KH6zf4AX2ALnDIsXRUtTr0DPZjH/bLp4BbyszE8w\n8Pe1kkn5MMWw+MBB+1/J1ASOeV+Kh0P9WY2klCFsD9cOaIYbiamGSa41cq2C\nVcEVh2ooHYNS1fNZJQSEMx05iMkp5QNHDs0uFeYP32/wfyx2i30/I90aJAI3\np0ox3Mo8k6LITEf2IKTzLG41kgcGRVwFVHKuobFkgl14JFc/NKkb66nZiNh7\nlnV2j4ubWtvb7iyWk2GAbM1/vQD4ybXIuajn/S0HhtKGY+DtKdiq4H7dwjav\ngUvIPPxNkJi+1YztHdXSBt6m9w1GXFLRq4GwB+SMKYjmQVzs6vE5+Qa5UqYF\n9TGO937WYVXzmG/7UzZBZ4n+sdizwAFt1uUEf61DmyXR9bPwytyJNV4J5OrZ\nGQqVnCgxfxEF737rEIbSkP5JBzeTtfzqZr1G7+8PAKhzEVJSaHzBiIuLVGd8\nvEequEEskhv5y9jJexGW0qK8bFnuOGEhFaVceBHOuFXgZEGzkxGOMhiZtyDQ\n9KMW9JPmKB+788KZqXTNUWkICw81rsy84M/jYXanx2zAi3vxv1pFpDx2qqIg\nxaObKp8eVnCjvntC5Q3O72ZJ3FTgVSXlcqH8Kh+gCukQ/v8XmlnbTRA+sUP9\nohvs\r\n=eWXZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb78af23920ede81dd58a1d30c8f09c5715d3b97","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.183","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.247_1621916333807_0.47013505229898045","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.248-renovate-internal-patch-24022cbf9f8534228978cea5e05dd6b6635d5787":{"name":"@balena/jellyfish-test-harness","version":"2.0.248-renovate-internal-patch-24022cbf9f8534228978cea5e05dd6b6635d5787","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.248-renovate-internal-patch-24022cbf9f8534228978cea5e05dd6b6635d5787","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"866bb6343b5e4aa89e13f4a6754959a9200f7453","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.248-renovate-internal-patch-24022cbf9f8534228978cea5e05dd6b6635d5787.tgz","fileCount":24,"integrity":"sha512-Qge5Ne9oQ1uaaK3U9x0T1jqXVCDRXpDLHxCkk0rprFAmvKsrFMFtVLTza61Y1eAZ04wB9QxpU7ko4YceggSqZg==","signatures":[{"sig":"MEUCIQCUofwgcxWAEJBT1YVlP4s6y6T0JNwxe8+3GW+9IXuUNwIgXFe7FUQlIdfcRZX1ktJT0myXzTCQajTAAOiFpG3ezJo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104565,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrHxJCRA9TVsSAnZWagAANFwQAKMOFmOls5qMXVLMfRLM\nG7uR4WqfNfe9/qurW5ZiysZMFkUqnCtQ8aDAYkg8MgoRNEMWLsjoRCLbiAK2\nQAbTTpFJq/h3BP/Ywl//b0zdUxVuPZMC2fRXR4hTZyru4ihacEEsYfGXgUgO\n3G/KP9YWcWyhmQPyw3fQpnQ/vzWZkgw8kvE4IMYafrQ27k5MrLFowhSjNXB0\ne2R6z8JklHG7VOcRoE4OAAJ60LoYsFMbDmlLThctLaYhtFaMaLJTA9r0OIk+\n419QW6C4HpYtcGrly6x6FLPGkPSy/mrA8O+SRr6dWcgUWWKPck6OSuJRlR4i\n9F5Bo2uvfWXpg3hrGT9QnQwgFmFlt5GBvI8RTyRs4OP9qwQXwXl3q79cdyJb\nSxWlQut5TkPkFE9tVazAMW4uxapki7RYyokbHsZ5CtA8MWrqJnqm35g94M1E\nYaXLlcvQ5vjPA1M9nUb2ekwhV6qxAix8pewuJVFfnv3cZEcPwwb2OMzCjlVn\nLC8Jqi0F9LLIOtla6JfHOD5xo+eJSXpN9QU4ROYPvpey+m5xeTqxqZ+3C56t\ntQJIigh2zZTmsiDtFIN50sRApaSW0tlrPyl1bm9wFp9FENJFcHfKxwAZiOwR\nyEsmcXqikXZuBy37HJI/luuNHPkEq8I+mKu2Q5CVsdBZ2dqBg4wv3+W/Z+/M\nA+/J\r\n=x/Pi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"24022cbf9f8534228978cea5e05dd6b6635d5787","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.136","@balena/jellyfish-sync":"^6.0.184","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.248-renovate-internal-patch-24022cbf9f8534228978cea5e05dd6b6635d5787_1621916745362_0.21620742951780247","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.248-renovate-internal-patch-5a8a429505f2f3cce88787181f17a4fd898a0b15":{"name":"@balena/jellyfish-test-harness","version":"2.0.248-renovate-internal-patch-5a8a429505f2f3cce88787181f17a4fd898a0b15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.248-renovate-internal-patch-5a8a429505f2f3cce88787181f17a4fd898a0b15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"23c2c62687b43be8e4fbf52bc054d357d9f9b45a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.248-renovate-internal-patch-5a8a429505f2f3cce88787181f17a4fd898a0b15.tgz","fileCount":24,"integrity":"sha512-OP7VKIJYrb9xEPARDLPeTt4Aib5RC4H+QxX2TEs05DEcp/ihw7VqHmHkfH+JOlXEaFSqfX0GIdKt8VNSyStkow==","signatures":[{"sig":"MEUCIQC7YB93XRmhDXKDcuBf5W+pkFyalD0Oy3zaVaFCPuy0RwIgYQgFrtw+wyj1J5KFKzfdnlqsQ956GTz4BqSxmhnKue4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrH2hCRA9TVsSAnZWagAAoJAQAID5lpBV/o/IEyY7yovt\njZwZqM1riOjRSCppLW1Ke7bge4H1lEXG+qqPdN29ra0YgW9TJ/9VkVZCRi/F\nGtM5A7X8EGWdcTaUnxwePGJ2ixwfaxg5JLW6pgZITbhMXhaLBffKSmvh0EwW\ndSGhJdEbSHlNp+hq1sFkMB/D2Dr+mYm8z357sFoUlvJjAdIOhNo/0UF7dnJr\n3pVIbhIEMUVm0FLykN+tSXCtpqegETCkuWTiAZizgDynjs9zND+hltbj5F12\nU/pN1IlwQ7SMjb6Xx9GS5WHunV71Pz+VDW1yojbuE0Zezsoq8qWuO4Vx2Gu8\nGO0NKeEGaiEILf5i2HEa0Pvuz4kGdAQdiRMbV9024Yi5FGZ43mnIhknR6Mwq\nvQlfZuw8tVs1ZfHGXMM+J9XX7wXttQUf9y/2ixiKXd+GOpyBObxsgNQuIqZ0\nGQS1bFy5dSwyVJegEdipw30gJKDwJ99LwhCJrcZYO3jFKsaVphwdi6NZWps3\nxQR92Ux6fooU9KvevUWSnXYvkrRyMCLXHfhqqjsyuO6feBXSI52NJ6CfNnpc\nW1cEvplur6MuwPxiBvOPyvJPXvmLxsxyqS4Hax6ePOGmTadY4epZIr3vH8B9\nF9raethhTFktYKFfwWxwHLmjahljR7O67X8CripUdb5JkqUqhyCnwu+3Z5ie\nOIUN\r\n=5vmq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5a8a429505f2f3cce88787181f17a4fd898a0b15","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.137","@balena/jellyfish-sync":"^6.0.184","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.248-renovate-internal-patch-5a8a429505f2f3cce88787181f17a4fd898a0b15_1621917089232_0.42145022034883994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.248":{"name":"@balena/jellyfish-test-harness","version":"2.0.248","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.248","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7a2eba2e8774a7aed39d946011357a425e28df4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.248.tgz","fileCount":24,"integrity":"sha512-DIgC94ThBrTMpPY2bRhzlHr6br316DO287WTuNManlBM6fwxFbHtW4lyE0TQeSSkKj6jmm4JWd4AsQhFzFG4Eg==","signatures":[{"sig":"MEUCIAlT3dSp11w8sujhvKxzP5D/AOjV2wb7hgBLubuiu9uSAiEAwziAp1yRjwEBHqtBUP9t315P9sNDGRKP3dlz9w7twPw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":104469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrH5XCRA9TVsSAnZWagAAk4MP/2EvYXnA/V2nPR05dO7b\nXcjj7z+lnMdfTiNCFot8BngGbttntY5kD2p4VhN4rUlACFvxMRH+pK5g7Ct8\nHvOpe4hSpMR544wrwbOEGAUXgk9F5rJjSzx+SdCvNw2tk4pOoIi1gwa9Riue\niJfJo5IhkitNGfPMsBsNFGL4HqL8VXwSPEr2t11f/ydlL4LlWEsLZs9wS6IP\nlgkiKHQuNuWA5VEyQm8HgLX5pXyzjR8ySxK8Rhi4dLn0grEeSqtPZ0mUjBcU\nhBaPlMVq4mUhEDBL7GfSnw8L3WP5GQ5tmTgKRtZTgl4n51SuPVS8hGLaHG1h\nUC6isPrE/PqOkvD8CYej4MtM7QHDU4a4TGdhRpHPAM16ZDjEptAUOidoh+0r\nb+5P8TMXddD9wCCEDONaN2pNlzkecFSTj1DByB5ZhrxyX/F2DxUOBxCFiqna\nGY3Qw6XFKQ0pRHKok67Ta0ElGiKqD7M8R5j9Trou2jwpWu542wVtdaT0ThTn\nEvhNLt/HdfMLXq98lpN7WntYk/g49uQybD2bqnQtgRF4lhFH+Jz5/0nLRK7q\nR8SpG6rS3VjefVEPCWJqdQl02Mgz5zSMrsNfrkZBOmOCyIoiGrwxbpw7iIdi\nicNahGugC1F6Q8JiGqHzL/KLFpOzny8pKYVf+sXCBOQbrF30+rFStd+m1UfH\nCa5O\r\n=eulN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7609aa633ef3c46ae7bd4e774e0af235a00f42e5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.137","@balena/jellyfish-sync":"^6.0.184","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.248_1621917271072_0.00892915180435172","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.249-use-jellyfish-config-e64feb1a5c5d0182b9c175d2524b1702a54c9d1f":{"name":"@balena/jellyfish-test-harness","version":"2.0.249-use-jellyfish-config-e64feb1a5c5d0182b9c175d2524b1702a54c9d1f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.249-use-jellyfish-config-e64feb1a5c5d0182b9c175d2524b1702a54c9d1f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"308ebeeaf1e8cc1b031359efa086ca48af58d505","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.249-use-jellyfish-config-e64feb1a5c5d0182b9c175d2524b1702a54c9d1f.tgz","fileCount":24,"integrity":"sha512-k8Nf+3YXMetz00hERkJ0w1VqI5sPtdsZANxL5gcVSWwxzLvX4VCBD2XFTwYnabLvP9/A2zz99R/7g4l5/GwwLw==","signatures":[{"sig":"MEQCIDRJC3m4F1UnGRD7ZcKnBvDCxgCoYC2s6E8mVCCA5K5QAiAaEOQBnM1vwdfX0peSNNX9uiA16FlCskNDOUhabLK+GQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107319,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrI1nCRA9TVsSAnZWagAA1j4P/RcwZAwRCbe3oAvGlF54\nptfVMcdx1zJvVGrKNt3vobKBlV1NiTz5eilzMuntpSFKkH1dKeX5TfhihmqG\nmDG/qmlzHkTRY5IqJpo9Y0XNqKdIBSg3M0NRzQQmC12kPveMCrly6aLBybQR\nCj8fFhHS8SVXzyCGmuon3NtAaRH2V5LBGlPyC1BfFa+UyNztuA1WC5kAYMLH\nqFvC5ZIZRh5vdBKYrB8IvgJIYc5CAZC39Fot/U7LMnvxWeErfZElCSGnyP5+\nxQxxhKQwgGSYcvOuft3xYMSWlLr7GiIyqs7ODAcmo2XWaZ56lWWqaOsJZ8LC\niLtFt9sWaf9rgDWnzMx/7WYAR6KPGYIpMa0mbX6KJ+TPR494dHHetzdKkGR+\nk/9X5B8ObDODm7ZGxZIkY2dW45iyR9wnJ+CNFao8IJKNVC2m9GCXIRcmo+8m\nlarb+RLgFsMRKyVN8yUCObjyNBRRVGbkUNJ92sFzicukZ/C9NrYzWUcJj34l\nj5JyNOjnhWdcvtsOcHqxGqFiX9Yem9Bcx9fmqem4VrPVXPxXXHz5geLIM8/y\nEm9FUNeGTvwBfvbhimqLEpDsHw3iAvDrCRhSNfUheLBsiMlhcFfOQssTK28G\nYPq1Y4Ui7ZCy5+NIzL8DpKjXcXZrm4eIBlLvKmCMFnr71hwabNeMNFXm0fki\nf589\r\n=Sl7q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e64feb1a5c5d0182b9c175d2524b1702a54c9d1f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.137","@balena/jellyfish-sync":"^6.0.184","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.249-use-jellyfish-config-e64feb1a5c5d0182b9c175d2524b1702a54c9d1f_1621921126657_0.7623191445278121","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.249":{"name":"@balena/jellyfish-test-harness","version":"2.0.249","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.249","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c96b6e6533b9f40920254ea311b3ecec4e3f0d1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.249.tgz","fileCount":24,"integrity":"sha512-Gme4vJm945U5rPA3fs2OFSo8w+0hxqm/v9cY4gTfqu3P8shQq6FI80GBOSwDlsPPAGIFK5y1XqjPtvL7riGeKQ==","signatures":[{"sig":"MEYCIQCLA4ieRzFCS/Qpq+Ok60ojMDFkn+7f8goG9I8cNHilVQIhAOoCNuQ4xzTb+ASID/Ahb3+ZuLHD8EXT9elI4pkUHCeU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrI4zCRA9TVsSAnZWagAAqskP+QG//jW7l9QKDAFj45Am\nzsAkCR6uPi0ZAc4QbV5sXNQ6bB4OJKjaga5BX/JAC3L6kseU8ypMh8u4j+gl\no7jJKSsXJH1iWP09X9njdMEX8+Wqx0F+vp4aZkoXTtMoC+1xCqfkCZ7NTAxQ\nPI2FgLfB0/wQRal5wP+H2pAaGDAzOJQlxjdU1ApMtwXrM1p1IRRvGMtJPm2w\nJEJQY6fOD6rbatF/puDL9IkV2Y4vshqUDPIen1Ju/XG7FKkiPZR9Ziy9sPv1\nWpfJlSWujsGOVE83+H2bSA6kq1tT4QUkdSyPIee5rdYGcSmACeDVrjdT2Osf\noimEpqjTlbnGY2FBschNWdTNbRGr1OTKsINL/mClcJiVtVkUg+OM2d+2Ned3\n/ETKvlGx2Vczutt/HJ6E1S6gRoqMK63ptMB9FRsu8y4RDbDCaZz5ls1NE9oZ\n4y9QTkBQelAGnOv1oGM4htmspVyDlYThRauPCgC5O7U/SrpT0LL3EfuPrmdr\nG+fPXEAkgS004VK4FtNLfkBDlAFZESLCdlXvCj4jqPi2w6JPiKLt7A/0f5wn\nnO44vuJ9oo1XY9MzoIedMBks3xUVZbaH/zQX7Bwk9Bnz8b84dPPcr15w9K+3\nj/TyI+i6hUV7vf7X6LeH+1wARGZ5VtLIhT0URl/fa5kh6qdP0z1twjrUzeQ3\nyvbv\r\n=NA1K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c30801d5a8100432ece08a4c7abcfe49a511540e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.137","@balena/jellyfish-sync":"^6.0.184","@balena/jellyfish-queue":"^1.0.103","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.249_1621921331434_0.804165873215875","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.250-renovate-internal-patch-31e316838dd8b710c6e3b835e18e303d45fec420":{"name":"@balena/jellyfish-test-harness","version":"2.0.250-renovate-internal-patch-31e316838dd8b710c6e3b835e18e303d45fec420","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.250-renovate-internal-patch-31e316838dd8b710c6e3b835e18e303d45fec420","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"105f3193e0d9a9fc1f56b7bf6d6a82ab7749dcd9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.250-renovate-internal-patch-31e316838dd8b710c6e3b835e18e303d45fec420.tgz","fileCount":24,"integrity":"sha512-wSRwhAGNap5n4RpQ6m39JdMpMAGgDCciwcjCZlckVFkqHvKZV3RXbpUr07GOXEXVMHqdiuDSowSiLmkQWTaySg==","signatures":[{"sig":"MEQCIA8yO4ONWG/cbCU/a3AXyR9ZMNPlb5wPM6In+K/OwUACAiAN69Xhfw7SybA8t1SPKEid+IDJflg3ihi1xYz0nv2BkA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107397,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrLY5CRA9TVsSAnZWagAAQgIP/iJ7YuZHccGacpD7ECFz\ncenRRAaisJ6bwJhBBuUlBSYOtQAH36dIs5daNSWO+n8XGw42DfYNzVo+Kzqb\nzltK142dgaO0I33RV78h2ucMBP27B5R3h6azw/RZwDQrZq+7vJHNzQj58Cq3\nSsY6peoTWmze1cfZcW3ywnl0vyJGb+Ba35Bc6hi5hW6lfJIARsopWBj2sRDq\nKeM2+q1nXkFV4YTNuvyobfaCqhrvQK5Le39vHu4Y3fLGgRqCBD7LAwJFvj25\nrIFrcIK6RQthCyxiCzoePcgnu0toYnttdTU1jCsZQnGGhjlINLrqOIMhXhL1\nubNt8Hp1QE2IYFlvPqI1eNipkJAib+s7O4TRTUU4BgUPa2xveoVgcW9XLuwV\nbots12SYjMdvCYc9Nvb/b6GN9sdFzbUS28WQxmpyUz9f0WCkI7A3fomvoR8Q\njNaFMJEygQt3swRZqiSpJv4FkHxz0hoy88UHlAh9td74rYxerdRhfg3khxZw\njLATDsq3Hz18x3tF89AJM19QJD4daessx+Vs84oiclK+YHsNmG99DO9sbY+N\n1k37hDnUbWRGMndN5i7SsNq9wyLx1xvvEm9Ky73vrv9INfrN8dfqxFHSoLkP\naMpj5OZdLF9sjyFU1drS9RAKwqR3fgi4qLdU2ToCgejcgBT/PNmrnVhjp6KT\nfLoM\r\n=OhAr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"31e316838dd8b710c6e3b835e18e303d45fec420","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.138","@balena/jellyfish-sync":"^6.0.185","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.250-renovate-internal-patch-31e316838dd8b710c6e3b835e18e303d45fec420_1621931576822_0.3619289432220887","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.250":{"name":"@balena/jellyfish-test-harness","version":"2.0.250","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.250","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"583d46adc712e0a077731d1cc9028a0b1cb07a23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.250.tgz","fileCount":24,"integrity":"sha512-x+AVhRzy0j1DS/X/MAlXF6UYp8Djy8uCV4R5XRSfsQ0uGKsX4KjIHIVT45UKRcxstawLb/3S4Hxqf5BPKHw0eQ==","signatures":[{"sig":"MEUCIQDv95nz3miuP3kSKNTE0Rcp9Al9UJ42Kre/tDf9YRxZ1wIgcPAXX/wChRHm5QKpqx6YYEukIis2/G1STekrsPjmrwE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrLcBCRA9TVsSAnZWagAA76MP/3bYXzvVtbqYLpuonhC4\nHgsH6EA7zEVF/DHSGTzA8wfS75t5TD+0TVPVGjOb0fKWlB+veTceJEE5fNuO\nbE9sw3m6c8NkKGz3vn6QEw9qgc6u4hKvNOYOvvgU5Jw75B1Fz7l/HNKeBYNo\nvP7MDTZr0FQ/yI2OBTiSt1LvOR2vZpvxkCH5m90IFASLtCrqHumFElLBt4cC\niXaLYqO5cmCJC/kJNZB/RhOC5cnKSruEYPHY9mAVobeo+awrt4gRGDKsdeGQ\nPpsv7FATsWqtvIYgwTqcwqYfC7Jfj7I6x78PvaJ4vabQPlz9NE6sm7azDXsq\nkA8qeAqKlWC6bcXLBpKnEAkFnRwEwAVvktFii8Ew5AkPjgnLhgVyDkFO+nfz\nvcAi3/tFJF7a3IfBylkOhkawAbq9xiNxzIc+eRpkd9xKq6BIeyGC9h85UzFa\nN4vG1yjJqQoreN5UVizZJIAg9pl2trIIJEdyKhhymZHebtqtIF0T94Dflc6Q\nNPtdq/WbDoev+0I8RToazoxWVtyzVnVCg97Up4aXTk3IIbtNa/tlSHR90G8M\n/PmSAON9NgxuL3L4fll9mdnngBja3QhRodQIyxEE+wZHbNDta201uFuboF/C\noTwfoWbsmcZCrnTyBEN7csz/udJlWgfcDyNYxlKAanL2TrvqZVYHr09H0stV\nV4IF\r\n=ESTi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2f4b1dcf9356ffff3b49d309ce845d0b7f98b537","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.138","@balena/jellyfish-sync":"^6.0.185","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.106"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.250_1621931776682_0.6629741643736946","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.251-renovate-internal-patch-047db2cdaf6942e169b6b6a524480dcaa04b44c1":{"name":"@balena/jellyfish-test-harness","version":"2.0.251-renovate-internal-patch-047db2cdaf6942e169b6b6a524480dcaa04b44c1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.251-renovate-internal-patch-047db2cdaf6942e169b6b6a524480dcaa04b44c1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a20a8a75f5b9e03c53289530c3cc4fff382916fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.251-renovate-internal-patch-047db2cdaf6942e169b6b6a524480dcaa04b44c1.tgz","fileCount":24,"integrity":"sha512-VLmI5nholDfX0q9hjl3orIzsJO6TM84u/Q69hVsl9wd3uZMcCi+doXFPoRIJKRzKmKepwL6chkzvBIbXjgFzuA==","signatures":[{"sig":"MEUCIFcA+851Li8i6jx0Ev+gWscMDTj7xJNSnaqp4F8eMSSvAiEAoIaquuYeELZpOsDpAYQ+PWIVUbbMWV87COTCMr3j224=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrS0hCRA9TVsSAnZWagAAWFYP/2ARiIKn66y9ClXgsUL4\nL22ifnS/v5iKXT1I/I8TptJujC+5SAlfyEx3AT17Z7CxLVHNQIxZYipOJP1m\njrEP+5gXEG2kAQzdJKoYkJhoq8RG3/mlP7Ef9WtXuAIcL3glXhTwhPYVT6+i\nWmBjUaWwFtFpY3yzyWtxre7yZBGYeHKOQ+AbwwJX04MMjh+bQ1QAvvDMloUk\nXrjI44Ae1ZjeV2HTeMiyvW7idwo8skMeUXbBP0MTzkjHz8R9cEXx/oQhh8+o\n9n0iFRiWfE7YH+7XcHbfRCFP2xK9rxRpWwmeRivm2OkvkQ3xnUaVGL2/x6VE\nwPFWBAr0O8BaBe21Vyl6NW5qUyyXMmyhX/gdqRgZ1bKurE/oyPNx6EBisQ6o\nPnH7w8Kcx2KFsxnZEgsw35Ew6DlR5NrPmU40Az7Lhco//LwasLbWK67pLqm+\nY5ISrAL+I/5Cs6tkrRTr1rB+M/OI7T2X9p2v2z+9secIO9jn1MzEUFKoITCV\nLaG8zXN7Bpwet+IrMcLUD4T6EaS/jE4ioypNXt1IffaNDb3kdzruGO7vImHK\nEpYS58bjCiBSn4Q8MYtSzb5VzzLFlSCsNjbZKOoBmn+Wx99hcgXGzTZ5SXFL\ns5J1M9tSPva/+oy/5ZQo97XG8U5ISgyQZ0eDuE5XxuD522WSaw4oim3hX7W6\nRwDe\r\n=p5AM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"047db2cdaf6942e169b6b6a524480dcaa04b44c1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.138","@balena/jellyfish-sync":"^6.0.185","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.107"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.251-renovate-internal-patch-047db2cdaf6942e169b6b6a524480dcaa04b44c1_1621962016502_0.9568676628763984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.251":{"name":"@balena/jellyfish-test-harness","version":"2.0.251","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.251","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa4fe05e4d7e93e7321eb5f4e99c216ce9569e90","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.251.tgz","fileCount":24,"integrity":"sha512-quHY/Pb198v5qDgXdeJQd1vJ43qAcqtLlfTT7zlW+rbxbDmUWAHbO6R9+wjlZakXJgUgrgo6WRP1HEM3SjBfeQ==","signatures":[{"sig":"MEQCIA3BgcEMHPCHlnbbkLOCGkvLMsOLOmA4KIKFGxKLAWMYAiA2EUcNAHkT3scXNk7heA6cSE2UrfPjV6FOOKGw17zBQg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrS4fCRA9TVsSAnZWagAAPzEP/13xX0LNaGZRbrsn63bQ\nnNW7zbPyQEG0oYxTs0Hc2Xm25pzw8M3SWQX4sPcbjbZnR01edC5KhTT3hmv+\nHTctjcmn8yJQBIgCU53uoJKFXjEQ6Qou908vMJUyUzZpYtXahR5BJ8lnUeac\no7GvmZc8LrMDhc6qaHVAaqcDqkN6tE2hE4j4ihtpF1dxZbNWHeax7ktRvnuL\n/Bh/OPYBNAMYN97p5RA4Sj4BWjSlihsKl+Eicp3oAC7Gc9ndaiaL096ZVyv6\niSVUULa3MtD1k4MLr7VkItJZ9JhHGlaIuLnjNqjBmdvCkA+h5Dc/QP87/peq\nHIZxCoCmfwsQdJ0QBFBemy8pqJVVIyLV5zOBpByk8224skVb5WKEI+n2zw+Y\nk3yjFn2TKppB+Zsw6DN0bMkx8qn9AfOiz619X3YQqpPSF6os2uoqts7ds8+Q\nrWjwU49X8EQ4amVujCsnNbb/jhAibYO7gI6B5lU03ei8yvSCRtJ7iDpaPJzX\nRT/fMyJwP9HkoqauEOFcvr0jU5bKajmn9cA29ZXO13h9iCIINi32EFJpyLOX\ngvup8BoV946NTJsHUvDxyOtuGEYcnwh/uCV0x5zvhof7xiLgoW/EvDBhv9w0\no//H/zY32x6AYqkfNKaXtt7ZtyjNtxhVa4budgaKBQoRJl1KKGpIgW2652kJ\nK/+/\r\n=GChs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"44109a1471babfcce2355782fd146de6faadfe3d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.138","@balena/jellyfish-sync":"^6.0.185","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.42","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.107"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.251_1621962270719_0.8485135928602789","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.252-renovate-internal-patch-3a319d7fc084ed4c806e2934598b3b05fe924e6f":{"name":"@balena/jellyfish-test-harness","version":"2.0.252-renovate-internal-patch-3a319d7fc084ed4c806e2934598b3b05fe924e6f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.252-renovate-internal-patch-3a319d7fc084ed4c806e2934598b3b05fe924e6f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25f8f733209fbc89911bfbeecdff102458a82a64","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.252-renovate-internal-patch-3a319d7fc084ed4c806e2934598b3b05fe924e6f.tgz","fileCount":24,"integrity":"sha512-oqto8KkQY0Iw5N3dzVrXsOqMIHoKTj7psXQwfhtfb9Oy9UCRFSeP8TvlkdPI+pL3Rup475F5RVOeQFxCDbN+nA==","signatures":[{"sig":"MEYCIQCjc5/MG4yZJOk+h+nddgjml4nIScaeu7hbVeAoAmnCTgIhALH9TaTUeFnON9Oc6sEPV3CzBd4ZX7n86MyQzTgWLPat","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107585,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrbBcCRA9TVsSAnZWagAABGcP+wRrPFQWWR4XKdMjBUu9\nc0GG/F/CwR/2BKphvG3Fw4qsmnSHXpshcCxvJZhRxfGFueA3XJW24ucC9ec5\nTBS5VOtn7HAP4XxZIw4sCzVAaL2hpgU0LBtc4eendT+211oJ6CANGE9co3K2\njxcSnFv+nncHgg3ZpZrK5j5wnlDiDtRwCZA25SbP/4l0R2zqs2M2UaiczPuR\nVtpYvhMzxjoaywPbqnfTma1XF3FNUYvQ+U7QUDVLt8truEGHfQ6kwAEnmAWS\nzN035YuvYr6IPGzwelbITy8p1Re0x9EHdY5x1EGH9MSnA735KoMpIZf8lrjF\npfOVM0a2LNoTklUN1uYo5IBfLmYoXUSZKchxCuhxw9QVMEMUfy51Retdo5Fx\nKtnTZux14tfNbV+xRzHgy69CDBqC+eEa/LLfvqRXAbabFc7C72UhVbpsnMR7\nfePhsRyjYp/IIclQMqozMaNDvm2kfbcPuZEdgX6bkSbG/ER3X2ZnEjNuln4D\nXyfPpYT6tm5+lVMCFY/HHegzSIMKdd8aXz16mjDrDs1x1ltsVm3IU5cAH5cd\nWlOwYoZRBhewrm+1tz4+iDlLoTF9PdTbIT/sgATP78rxA/TI22x2c+AVMToB\nxH5LaBGyhHYpJZPYqO9dehpfqDPq3MkpUVxeqRDXJD5GyXJX2Y2CKlmVfiVB\n0qVt\r\n=+8L+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3a319d7fc084ed4c806e2934598b3b05fe924e6f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.187","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.107"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.252-renovate-internal-patch-3a319d7fc084ed4c806e2934598b3b05fe924e6f_1621995610934_0.664094727672615","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.252":{"name":"@balena/jellyfish-test-harness","version":"2.0.252","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.252","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e666602f5028cb464409324081c88f04a4d0679","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.252.tgz","fileCount":24,"integrity":"sha512-XzWRJrG6JzhVK7AbCdhPBOICS8wRqU55pnrV6qOmM5Nxzgz4pvan1KPr5TDOhcp1HBvMIYeALLEHEzevjMwJ8Q==","signatures":[{"sig":"MEUCIQDiINWdH+vJ9XdYYYrkCq0/NZnUN98tiU7nHxVpjHFirAIgD/F3SpVah4TsnDsrcMl2ALfqvf8blUmDPweYBqx03A0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107520,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrbEyCRA9TVsSAnZWagAAEqAP/3NgGUCo785NU1BInT1W\nkw/OBfe0EwPqTtI5MAG6wohX8n63sSQed1K9rhcjjXEZTBdHlrLRiZgk4oy3\nZoPzSw6McxHvn6xXlFzJKfDI7BUjETylrvjzZyFfB8hbiLT6sENlJWPO/j5u\n8jWh4d5LgA4HWE6vm5WFquzGnUZQRo22AImG/g2GFGS2Q+lG2F9VcKWniyUm\ntUzHdiva2FC+SQasnWUkTRknFBBnKbw1wnFh4m8qHhTPw73mRQrwcMS9Pnb2\nDLb8j5rWOUgJiV1CEJJONZDJh6FcE2rU32ZtK0f4xJZEB+Xc/pVlpsqk9066\nkDSag2v1MjU7daqLkB1/fGaa6Z6EbeDyFAH/LUGv1GxgdT/8+K5vG3Gz/ToO\nbXDJwMQ9WU9Eik/bpNh3EPMcFJqtL9nj1p8hj1KTU7Ajvd/PSNxr/odhypEK\nfF3rdBL+yJikj1FHYO1wHpnS8NjpoLww22yiG++VKCSI74iPGyxSsdZePXCh\nTG06yFB5xM43dnkpuwvYhnraEoNRsld0WPn9b0cT0/Nvv/o1TM4Jry06V5V5\nS1NRaDDE5e3J40IGnaalmzpFHILYXoes6J3DEr5imLM/I6e2DUre7LXzqmpF\nV3HIQTGRw+EtH1itGeoKdeF0rh2fgdQ/Wh31yjlsZCgR54dkzHkTrFrpmJ5N\nxNUN\r\n=dgk2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c0b50431d02635621468a3d5a1537b386f4cf144","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.187","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.107"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.252_1621995825701_0.6525066674221545","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.253-renovate-internal-patch-61456431b40fe36e8a7bbf28c969d8544363bf59":{"name":"@balena/jellyfish-test-harness","version":"2.0.253-renovate-internal-patch-61456431b40fe36e8a7bbf28c969d8544363bf59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.253-renovate-internal-patch-61456431b40fe36e8a7bbf28c969d8544363bf59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14036adb306500153f11f36ad1802784c5d2d1c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.253-renovate-internal-patch-61456431b40fe36e8a7bbf28c969d8544363bf59.tgz","fileCount":24,"integrity":"sha512-a1bLIteke5REw9fLgYFaBl1BSu+hzcLvhCThX4eRkf04v3oKoNduixBc4uDMdji+QLP+EnsFmDn3OwCK+BQqYA==","signatures":[{"sig":"MEQCIFDVrgMsdEY/5/3GwLxOiJJCFdIwH1ojKYPvTJpwlSEFAiBjmFLhltURfijcmDrt/an2sIbuOCRk9lJ0pJRj7KxkHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107660,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrclICRA9TVsSAnZWagAAVY4P/iAn+hWURkxoNSTf1pc8\nF/tiudP43PsyYRoTJpqTfMLwnneD5hYYK+bzgRAz+dt91Z1UFjJskM9u2qN/\nRUlpNbFOrJDrCxrMEj908FuJrZlEhqbBInHVGCUxwnYGgCXgXKcYnuLBc428\nCZ5Nt+6LONDFznXT+NudS/k7lKmBrzu+oz0JU0FslKZ9RUHrzvza9+hrbIdR\nzMFdzTDnjnqifE1aszwiXNh0e0Qw3oqjMHijoNX0fPt1ruwgLAmbIJLJyoHP\nadWR13OKhjXhUtE9PunrxQ50SY2WlOOE8y8Uwe9jk60p6MN1DlBs0yEr35nb\nAupNpzxF77zDU+4yX4EQvq0doosPaa9ERwd9D5CW6NU1/dRiqGty0X4s4+QW\n4sfxj8NZCBMNtgrEF2eJy5z9JgwOH5BmurwKVNptuFqzJ4HqMOxAz6cqD56X\nHb6RpSODmxC9YS9PqtwYZzKoixniZ30pJKaNURXCzFiwJG/qyC5/flJyWRV5\nv26pfDQWkvzDindwyZYsrKo6A3Lxakd3uP4e8PLkq/t+ePWSoHxrJIfMIsvl\nlP3uS8cZZf0sCHwrexqtYKn8QxPms2vjhUBzM9LtdwUM3O6WiTw9NAUKoYjZ\n47mIzS7Z+PK/CECdCw2UOXU+zqkbWiFtJc30mfmzjrA7pn7gEJeIQjQuPn6y\nyvmB\r\n=WfdR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"61456431b40fe36e8a7bbf28c969d8544363bf59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.108"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.253-renovate-internal-patch-61456431b40fe36e8a7bbf28c969d8544363bf59_1622001990639_0.6868945993115338","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.253":{"name":"@balena/jellyfish-test-harness","version":"2.0.253","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.253","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ecb3d759c8b735fe7e82b0463b272d719df58c6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.253.tgz","fileCount":24,"integrity":"sha512-pqMFVsPtcQfTZJhhb+8xPrRnjIzHFNlQhIcttc8zIWM2ATKsv/B5gbekFJUxjW2BttzWL0hMq8ar5FCAfn+PZQ==","signatures":[{"sig":"MEYCIQCYdt8W7v4AKJKgpeknJ9YL3E4FPLJZ+H00QYaZKeMw9AIhAOr86Jlm4ky8tv61kpR2m8QeLPVIIw5En8GB47wo4mNB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107595,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrcoRCRA9TVsSAnZWagAAI/kP/R+uVvCwFM86AR27ayJf\nFUtbUmKXSCnfdRGhKSbIg/sqpBitMnxqzZQv+08sj3sVUuseIsdjQL3dD8hn\ndnZFF3BxG1KvEnZ1AbZEQh3n59c0y5STYuC/eRoG6oY3XJrlO9J0I514r9Zy\nJEN1weZURGWXD2LVN1fexTeiJzorllulBPlrSnssoG9vbhQtB22LCt29Z+YK\nmjBH/wnBhM+fxEsdZVxpps9+MK9nygrDJ+wrN55yfwKBkG19ACzPip+L5KzK\nwVVYAwDsGj8ML2mKDIW0D5ur7XSGFhXwfYsA3/F0Itc/MrT7AxpSk+FY9iaB\nU+fuFXOR9QX/N1Xq31ZjvW6Z+EgAwRnpeXTro5SRo6et2LTki3xTtT8+ERiP\n1oGu9ccSnaCrs8aQkwVJo85UbNIumR/NlOGtDJAEgfzRibrMWcJiUHhIaAq1\ncsFA/pVw2Jq518VWPaOutTDli/VvfHkPCgZVesoNhtHUwT9c+kKgKuEgxqcL\nMlr8G+MTlbIHTN5XMVdrdvkk4SwdV5iKAFUuCq/EpfVyUXcSPXZfFGEOfK9j\n6DIM/Z5tXvQZSX//vf/sZ2EeaaKXkOEjivM5lFLuxjaneCuKmsxkCTqSuyN8\n71h+DSKSY8jNjhud6/5WXg7ai4CTMyR3BBzqruxx0w+Y38bmuLhg1Xa7McXm\nwqmh\r\n=aDZF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"22d2d348e76c62014737cbb5497ca9a1bce15058","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.108"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.253_1622002192890_0.33466656628700586","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.254-repo-sync-jellyfish-config-default-f258731e81571d988dc4f5efc5dde91c7d52f381":{"name":"@balena/jellyfish-test-harness","version":"2.0.254-repo-sync-jellyfish-config-default-f258731e81571d988dc4f5efc5dde91c7d52f381","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.254-repo-sync-jellyfish-config-default-f258731e81571d988dc4f5efc5dde91c7d52f381","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"47c4068d46fb9e6362cfa359108593d35af2dd54","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.254-repo-sync-jellyfish-config-default-f258731e81571d988dc4f5efc5dde91c7d52f381.tgz","fileCount":24,"integrity":"sha512-V/wyYq98m2qGsuB67cDmrSrtjPVxJ4dN6WETVBwGmcUFofSWWlBHTkKPkpf2TVmriFCC3o9yf4HSN6s2AfpzoQ==","signatures":[{"sig":"MEUCIF3s3feHiGBoSXOLEr7hw57Ek3K8XfVE9AGo6RH+tpgSAiEAq+Pty0ZgM6w6TAisIKdRSW8Y0J4puinl9wjJAw88GVo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107771,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrhCKCRA9TVsSAnZWagAAfFkP/2HsIn4tvMvMJEtIT0Iv\nN++l2TaPvHlxxVFdFWUMGajj0FyGP57gBHZLYyl+rsI3kRRNAP9Z/QVUhsNs\nhxsfWLs5lkSvbrl8ltYVlwNBO3clTU4dHVXmlsg8nXIcUwnApeyJpoNYBalu\nEnxlJdfDN6olzuMpQjOj6l1cHYNvF8bZ0DvVfpZzHT3flLPnFXXgDpFmPMoV\nvT1TVl3Be3QZUz12Mf66oXdGDOjyjGiUsckZrU5Fi+3Ydtt7GbPebj9ynBv1\nz0HQ+Kt/B+CvzG+t/Ic2sLaSdO10PZxg96A78JJ0S8h8ePgx5ZOwPcjAIlvz\n9/+6b7xI3NHL1rJoRFc7f5kb3WDGR+W8pF8/dOU1lrgjXnKYRmyASf3qSK4j\nl/de6pJXp2Y0iz98Fcwj1sP3Y9c9PXSj5adpz/TZVX9a/CNDxL9YUMvhOyF0\nWgnhVGTezGij0hrZnm8Hbt7+TGuSh9NI42OvQW/b+Iwn6DvoQ0htvr9PTngj\nrJO6C2Y0t4jrHygcimhG2mze11wYpaf50prK3XQfUcSevBZRYWwTBoQ1ntOC\nBRimTko6X7Fstw+p/UDcSunYEbqiatrl9noHYXuehm6oEeakJgiTAfELSc2G\niSSjONJ/QAVyMsPGOvtHLBcDhjmjkz6GGKQBnoSnX3ZcGFthN5A2vqozOZus\nsN5o\r\n=/IQz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f258731e81571d988dc4f5efc5dde91c7d52f381","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.108"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.254-repo-sync-jellyfish-config-default-f258731e81571d988dc4f5efc5dde91c7d52f381_1622020233032_0.37243403057712143","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.254-renovate-balena-jellyfish-config-1-x-1e6f03ad6fe2a6479066367ff5d52e59042741bf":{"name":"@balena/jellyfish-test-harness","version":"2.0.254-renovate-balena-jellyfish-config-1-x-1e6f03ad6fe2a6479066367ff5d52e59042741bf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.254-renovate-balena-jellyfish-config-1-x-1e6f03ad6fe2a6479066367ff5d52e59042741bf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4dc4c1a82c88fb21057bee611076deb855b76fb4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.254-renovate-balena-jellyfish-config-1-x-1e6f03ad6fe2a6479066367ff5d52e59042741bf.tgz","fileCount":24,"integrity":"sha512-xzovhjB5JTjORIcyZL5gNFNBjtrUcCAAfqtljQCywUsM2pD3P4/sV1KvldTiVSckfepJH2RMnosn6Mv5aD0wPg==","signatures":[{"sig":"MEYCIQCKOiNRtkZNv6XogY4NILzXBck1l/Ny11c4OzR/Tp3otgIhAIN6bfIJph+vpTcLZfRHlVEs2DFCUqptW1TtWyB08juQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrhI0CRA9TVsSAnZWagAAS90P/iA9bdUE+5mTmjmnPSU6\nMhXDKKWLjA4fYdZvMGG8rOwBVZXvczIViTL2MZ7u/S4DT8U0CZ1fHytmNfRd\nSOLReUZaQaKmGCQRd6StonP6eFMy7VqqlYwu8k05bYviSGwgeZiM3mcRUXp4\nLDoKmOaeG/5jEogn1btI0gsosa2ToACSUytlPuKp6e6mh+SBjKnhZVQdaPFi\n4jCBVbRytvwD5prBM69n6jlNidLHTA3NPDv8ZYv1mrG78HpQRKehqZPcq9xW\n6ieo3M6AMo6R8hb483QYYMbZXX3aeFpQ8oL1bNq2mMlsJvDtFN2bA6D/KIF+\nghttTUiOQzmp8ZJwBidE0It5tfurjYxAqKJLRusdKP5GSSkB5HxPxugJiQAE\nV/b8EC0QiEPZ+Icr/jaYNxFmIBrA6QbnxCDXGAQpAzPuIkGDFpQw27noYBEJ\naF0ag3U0yLe5/k8P31rWVH0+fIK154/BlxpTgzZGYOherXsmYQHfIRXqlg8g\nKhFyKm2qi255HSiYsf5ALjhjka+juBrCep91wHp4KkawTQTgDmX6UL0+O29d\nB49CuEWHHIxwe1WxlBYkBaNEcYVlMpIZfnWvOPIVYt3mVRtSTqIXBRF0DOJ/\ntJPyjVU2sr8oYuebQm2kdSNhcLSLMXUIXorus4JxyiRammgz/3VhbSqaITQm\nefCe\r\n=3x2n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1e6f03ad6fe2a6479066367ff5d52e59042741bf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.108"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.2.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.254-renovate-balena-jellyfish-config-1-x-1e6f03ad6fe2a6479066367ff5d52e59042741bf_1622020660047_0.11457748146343794","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.254-renovate-internal-patch-4bdcdc6f8a51bb386b74880ad69a9afef5cd685d":{"name":"@balena/jellyfish-test-harness","version":"2.0.254-renovate-internal-patch-4bdcdc6f8a51bb386b74880ad69a9afef5cd685d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.254-renovate-internal-patch-4bdcdc6f8a51bb386b74880ad69a9afef5cd685d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7736062f6d9fc7916970c8750a0387a1fbdb271","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.254-renovate-internal-patch-4bdcdc6f8a51bb386b74880ad69a9afef5cd685d.tgz","fileCount":24,"integrity":"sha512-Sb1NMXT4WO1lL+wzuOPS3E3crePrity5nzBiw5QlnQLPHufoGAGODgc83a0EgC0Y9chvU10WuC7WH9QuR/v5BA==","signatures":[{"sig":"MEUCIQCY+uO92IsShJlc1d2NcMIvBMOvl917e5KKuQsi1NvJSQIgZFXhu973O+esy3BwpWTp0/IY+XVesYFyVCJ88SdQZnA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwTJCRA9TVsSAnZWagAAtk4P+QA4J9DxjE2nRDHjrqWG\nSNlSEz04JUhy/7lsp+9uK6Xzrl4/PyNJEgc4JmwRDrzl4qdXHdFr0Kjq/RmK\n3SDGW4Jwqjjn65X9v12oO7Jq2hnHB9RmSKIB1n/vvwgsjCcd2hZBODQ3vqT3\ndq/RfhToGsPC/pgSPUp8i0rYHC/a5Ug+glIIQukAhqPiavEVHPEAdKpUzaEQ\nxxEuTFm07Jvhm0efH3+Q2jafXhyuvDMOLaPlvWObBDQtILUrCY95pOq5h6Za\nv4TE3r3KHGJhMkqgPBoI1OGc6boDE5+m+S0RQvnGiQOiuFx5QChLnOpwjY4n\n0NTJq79jewuwNbLquoORwXQUv4/QXvOQV6smnQW5qbH89KFrUa2zagPhwk2Q\nXo2EBvWd3JzymZl89ruAdVIxcHZl7250hynmYKXjwyY608gsRJM6fnAPIDWS\n/tRxel45/R6BJxeiK/5kVMRnExDbAkx8QW4yBbjMANGAjB3YqjcOB/a1iGZY\nd0abXJMg5D3L3m7/9/LrtpTmi5MrHRPi7pFAo9L53cNHQTwK//zmSy1jo6aE\naz+kWhRzQ+WS+tO4rP6qlW5nOt4hT/HY0wouHtPbbO71aC7/ArzpfdsOcDUr\nK+NsOQqy/1xtSN3FK5RffpprxFhx7eNu1j28lk1ar/FuLHEVBww6xEoR/KjL\nd1Hu\r\n=Vx46\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4bdcdc6f8a51bb386b74880ad69a9afef5cd685d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.254-renovate-internal-patch-4bdcdc6f8a51bb386b74880ad69a9afef5cd685d_1622082760475_0.7470985708795257","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.254-renovate-balena-jellyfish-config-1-x-41ecbf445ed96ec68535c4ef8f325467d6ccfd66":{"name":"@balena/jellyfish-test-harness","version":"2.0.254-renovate-balena-jellyfish-config-1-x-41ecbf445ed96ec68535c4ef8f325467d6ccfd66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.254-renovate-balena-jellyfish-config-1-x-41ecbf445ed96ec68535c4ef8f325467d6ccfd66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c6a64bbe4d384c1d632ce34111735de68d8a130b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.254-renovate-balena-jellyfish-config-1-x-41ecbf445ed96ec68535c4ef8f325467d6ccfd66.tgz","fileCount":24,"integrity":"sha512-obzr4ZbaiNWv+1u+s4JryWTeTGAGJ7iizKAom7ElNmfg9jZI1/U/kGFONeqZwxUaWjt+Kepm5Sb3qyfJj0uryw==","signatures":[{"sig":"MEUCICGwNBDs5m0cmTDYsUj+ZYaDHEsWk6PbQwupesqFcUzIAiEA8ZFoxa8oxtDvSVX1MuwQbQ+cfaAclrHb1GStIF7T1DY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwTdCRA9TVsSAnZWagAA8tgP/iDgXcQ/5OkOHQCtF0sC\nFBxf276f3ByOJf2xlyD70d23azU3MmIonl+eWzftLN6a4sTdWcVkWurT3Off\nt6e8gCwugznYTgcWYuDdh5DJKZNBbNKDtfUAwWpw7ORd/uPkHWPsHP1YrDxI\nZO+S0/7o6Arz7Wn0SebHkQuxLULsUV3q1FDqkdOfLFQCHO+Mk+H9EIlKt7in\n0/YME7lA2HTGazFD/eCcPclnPpai1ZVJE8TTz9/uTob06rDIVq4jW3vU8VF/\nd5o/FdtLmOl8S9hMdA4rlO2mtrJiCQ3JyLfytDapj2kOEoUORinexK6c2IuX\nkdlrXAtjnQLQw47se/xCmqYqzN95qfPQ/bJuje+Dn3/6lKetrV1VX7v5oRgi\nviqK0vZ+lWlxFCjJoivZjLrjrSxn5s2t+KMBO9o5Xylz4NQOMSqttXUbmj8l\nY8FN2iI2/vBjMdrccfFxrIYgci/nKGamHHLur5+YTYkeJj2yUgZSasTKzNjc\nZu1j/VGlICerlqtA6wRy1U5FSCzxoJL3LWRxDFD3SHkZvl0RlFC26aTUp23q\nRVFrKsi7RTAHpiyEQUCBI8tdoJWa44/zQhc+mc/NVzizDMpYDApOUOwvf0rZ\nFE6/0z23Y7+fLXUIM524zTtv6UyANBAhpSh3u0tDJ0kPv8+sU4eQASInNS3h\n1gwI\r\n=cFhg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"41ecbf445ed96ec68535c4ef8f325467d6ccfd66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.104","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.108"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.254-renovate-balena-jellyfish-config-1-x-41ecbf445ed96ec68535c4ef8f325467d6ccfd66_1622082780775_0.9066224437949877","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.254":{"name":"@balena/jellyfish-test-harness","version":"2.0.254","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.254","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"389cbf08fc61d7c0f99ac30d88a9f6ffaa054206","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.254.tgz","fileCount":24,"integrity":"sha512-4Vzv5MQHc1HysKdl5e6id1Lkgn0u/y/5/Gtuu39dId5V6x9cbmcvHWvq5Wl17IDuP9JBvnxYyzTvLNaJm2wTpA==","signatures":[{"sig":"MEYCIQDcR6k1Mfa3qyFSk/KY5lMnGZtsCbRxV7eYP9rIwrjKKgIhAL8BEqBK2h+WSv5zTD59H3JkaekMvs5G4KIovr+ob7jF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107670,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwW5CRA9TVsSAnZWagAAP3EP/jzHsijmS7T2LHNy8jdD\n6Fg6Wz7hqpdooTwCYPsQuHgov0/MJcX5tr2UOV5OZW1NRGoHaRkxPD1aCwqz\nR5jgGXCq0EG0LcvBTOjNO7hPEcsRtkeVfY6XDWlw70AWqRpXN1HRTDGiLmzh\nUd3zwdpj88se0jeAvp/NpMfnjIA+4P8VCsGav1YgNmEBqoN2u3ODtjRyw3Tc\nHi0JOgyxJR8OMItRRIo8f3pJsFne5BTUfV+XyGw8n3NChs+nJnHVDGxyab+Y\nznQTlpxWh70RQ00A+Pp70Ebd2PbuozePj8vjhotTr757lQ884vpYMkGA6PDs\n6Vh8SnDnIG/uPtyYIdWOpOjSbK13+b7Kj27Sm+0uBewQF+H6qw+0kC6EOFpN\nqa/uv+acHTnDJ1M5Z0zr4ksbTLgFt1RUzy9xmIkmlD5cVLbXqccOd1dYk/la\ntyoq8xu5xYufJL+7St5BdbKUjp2WOdk6neCLl1JNjJ+ssAcm5UnOmxbo/uKh\nGfcIO6ayQUKQaH2xeLkt/uZgzFP5c+5ljIy80hKe6+Lbto1pFX8eaxnb0zCK\nG/KTQ50shOmerfHLZ0DztWOuZZc6ohWwh3CEe4C6g9tj9adKB+qLjfwiPK8e\nWuXooGxH/gkZhDp82HU4sXShOKsWMvz3ffAUExrtKcWYmdc/D1tmNRJCXioY\nWvO3\r\n=YZbf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c03decd2d8defff1be67abc6c907299c6f66012f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.0.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.254_1622083000630_0.3200653127195232","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.255-renovate-balena-jellyfish-config-1-x-561760b73dbc06fca112c01c669d07fbb3d851db":{"name":"@balena/jellyfish-test-harness","version":"2.0.255-renovate-balena-jellyfish-config-1-x-561760b73dbc06fca112c01c669d07fbb3d851db","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.255-renovate-balena-jellyfish-config-1-x-561760b73dbc06fca112c01c669d07fbb3d851db","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"22f0945a257f13a561e7900c2b6c224061380869","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.255-renovate-balena-jellyfish-config-1-x-561760b73dbc06fca112c01c669d07fbb3d851db.tgz","fileCount":24,"integrity":"sha512-Quu5cIxoZTAPwcfV8fIAXmvjWbBGAjiQlTEUI0xNROrLMUuEyeETCtiEZGEWMECiI7AcW0zz2yoat9RldO4drg==","signatures":[{"sig":"MEUCIHi9mwyUMkzDCHTWLEpzy5Ty6Bei19rHbVJM2DBprghJAiEA3imiebecWxhazFjtOqZnbvsEEnlmp/CSIWQ2ktb5R5M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwbQCRA9TVsSAnZWagAAGb0P/3m+2ymsbjkieM597tHp\nshkcm+zQ0fOEXRYYSCm0QiisL7mW08dXqI7WYZGfPg1kYPV9bgLlachehkxk\n0OI7NNJc9ASJl8Wfp5C3RySVw+MNdB2MWS4NaCnqxIkjah8c5BXfPBNosa9r\n7hDxHAOI/LTG6sIAGV5j2TlnRkSr6Uie3mV8eNczmsYz+Qbs8lc6Od5KDrA0\nucIoMirPCtey95Ktqhpq0WCYzEvkJwwk7dSzWYD7GbVwbBzxPiNMWtjwp97F\nmPFSHZBR+YaMFoOC7FpLXqn1i6/RfokLFfGMyIzn21615yCb/4NpzcCUaTOe\n3rRSWR2y3+fyJx0tVvI0fAZyA1vFqJShFVq+/Cq1I+CDu+OHtUlqWMdDWJqy\nCyE071bis35Jn6T5H8UzEmHPsh4bv9wiYGHZP/VT2gDCoZTKQ1ME8xi7PTUy\nCVN/JWy7DYeBXAX0gT4e4kxqcrkVhXpohvwGqsabL/5f/aALCjjNltszyqFI\ndGbCMiek6N/IdiBU1+Fm3hS7yKTL2/Zwp7QVyRHiqCx6PEHzM7w8JqOWElvJ\n+Xq63IUrzekxdPUGMxbrYiG0U+q711O7jmqmn6o1g3em0fzthFYqA5Em1S70\nOPckLij2YvkEVLRTBDc8/TbnTSNWrAfO2LPDnTVsCkckn/RbqMcwD5vplGkT\nIgoc\r\n=kRpS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"561760b73dbc06fca112c01c669d07fbb3d851db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.255-renovate-balena-jellyfish-config-1-x-561760b73dbc06fca112c01c669d07fbb3d851db_1622083279632_0.885308570249927","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.255-renovate-internal-patch-a6e8690ce9fa330a6fdde639ccdacfb46218a234":{"name":"@balena/jellyfish-test-harness","version":"2.0.255-renovate-internal-patch-a6e8690ce9fa330a6fdde639ccdacfb46218a234","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.255-renovate-internal-patch-a6e8690ce9fa330a6fdde639ccdacfb46218a234","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9775e88eb5e283475ee4a7413657749167007d3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.255-renovate-internal-patch-a6e8690ce9fa330a6fdde639ccdacfb46218a234.tgz","fileCount":24,"integrity":"sha512-S5ZUxNBXrwItBRwnTA4wZnjVv5J2u/CbLIv+Ey3wzDpzlVgQWvqGKeKptpE5TNn8b5MEguk56vQ3lnbIhdrA6w==","signatures":[{"sig":"MEQCIHpPbQ+F0rLJC7rKjbKzuceGWPcey6DLUsoF2ZMtNfgHAiAZ094p1Q7bvCHvi3/7rDp1Mkwz+KWvV6mGLVNIKxq5Ew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107924,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwiXCRA9TVsSAnZWagAAYh4P/24/Nnq6LUEcjRiMq5jO\nXb6a8QsjxAkPvYjyLJc/mgdArWGEpZQj6F5rV5egfijAtIdA1Qkn6LLfGYje\nSFbXn/VV/xYKtbZC1Y4peN9Xy1aHZjrlMBDfPsFSnmmw7xK3Lw/cQqHNqpW5\n6P5aNeFoMYYDGIB471bVIf9GLC67vYNZEGM/GxG127nbyGt2cQnAIyXBumt8\nSTWnmqvvHNBVlWEhJzydtWmOaDVaU8tlrSRGaZlC0s93OW2zSGF+EGUhduv/\n17iGA0QEhLy8BpHAismPpeCKt1THo01YkoHwookEpEPaKDmIEFjP+HJ3CyMs\ntZmFsvCTSx5Acwi7W7yFm6G7k2AfoYbgCW+MiStI6q8/Qz9RJt4wSkNpbh8j\nrS6fst70G7Ba7qnj9zuypHEhNk/cBfWHQBuBH48XLViPTAGvyUUN2+ypwDuA\n/ShgVnnzipPko5X5NOcrY/ltKRMPpg/xXTsYB4Y5mdRU+n5xD+pN2fzVofxq\nNyIY7HbWHM5x9HVewNdp4NOSEqX6DvzqfNNOyYQgEOFiE6PyviuYgM7q6+GB\n69bUGZsiTEzU3SfDdqaWq7CLGfF7h8pt1TauD/RFYB4d63mby+XiPQo9/0cy\ne5CL21PD5E1p4mvcFvfKSO+YAb7R70k+XBVo44AXt36Zp43FPZ5ekaF2/J71\nJ/V7\r\n=yI1+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a6e8690ce9fa330a6fdde639ccdacfb46218a234","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.21","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.255-renovate-internal-patch-a6e8690ce9fa330a6fdde639ccdacfb46218a234_1622083735152_0.395568952683488","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.255":{"name":"@balena/jellyfish-test-harness","version":"2.0.255","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.255","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"768993ab877fc34fd60fe43e0b847797ce844a34","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.255.tgz","fileCount":24,"integrity":"sha512-O1BrJ3js7kp1xoE01ce8lc9RbrGoqRp7uQg32qkftky+SSxIF0KUQVt9rvNuis/brDWhvBNwGjf2IUai79AmlA==","signatures":[{"sig":"MEQCICVqEpWUJyBEoV253TNO6FTXu/xF67XUDOs+NeZG6Q/6AiAD7h9iiCDF6Gow7+WjTnwlaLr55MKOgkUTvP0vDNbaNw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwkCCRA9TVsSAnZWagAA2GAQAIJlbZUHM78yY5eS8mwT\nUP0al9HHmZtq32i4cvdskbPC5T7faK0qjzBXsegOSx/ezCKg/2G9hJe41kGE\n91g7WeS8kYNHKtdyCDKVqj4NRbV4HyL0IcU+TxvsleL+GzqmvliLfRuLe9Hn\npFKWyU80GsTei7yw209Fm3qHEsQuTmq3Zcn3492jMYJ1TDyIa3IGPor+5vnI\nVqOcVR7EuapeF/7xA1+xaUYBIDoMKQ0aVd6w9P/u6G+6AytaSiYLaB8FoQmO\ndXgHuI2wKqW4kM9rz9bxuOb7GtuWUOuZWqhleT9fAGTv1g+yxE08Fzu5ui1Z\nH9rDUjUrEP+3FoPM0Y0YOoLvlbfRTfaK1KSJ3IfbKqJF5ntSeo/dDhOjBLnU\nLkCEtOcSyLXdETnMd5N+mz0JxnIwLPsK5zLJ3bNgc3h5AXBXOQnatgHU+gGK\no2AnjlS8NXlltIGqzhEOErRoMco7Vq9enlCXB75zPwgxk2dkQ2ZOcw/du4fz\n1yfrSvUv0NVcO17n6JOUzlt0nVyTGUHv3OTs61q1pVNWuTkoQrQBs3S66skg\nNsbLVi5P9o6R29PsoprbCdqwOHOcZoSwZ1eyTpqyyf/NdfrBcG5WBL2qBp9G\n1ugI8xRgnakcDVUauQXqlq0GM/426OtWz+IiIqS26Hqgisw0jN26+aMBf0C0\n78lt\r\n=C0GC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"495c4d10b6fee7242e9923eef1d5b9555330f8fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.43","@balena/jellyfish-environment":"^4.1.20","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.124","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.255_1622083842373_0.3956777923062529","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.256-renovate-internal-patch-2e118899ea178b7eead116b566dd57252d87dd25":{"name":"@balena/jellyfish-test-harness","version":"2.0.256-renovate-internal-patch-2e118899ea178b7eead116b566dd57252d87dd25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.256-renovate-internal-patch-2e118899ea178b7eead116b566dd57252d87dd25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddd91691ce7dd1649890e22efbe7412f565ef44a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.256-renovate-internal-patch-2e118899ea178b7eead116b566dd57252d87dd25.tgz","fileCount":24,"integrity":"sha512-L+snIPy2PGJP9yizDnr2d5h61raVSvlM2PNqCw++HBx3YZ+LjzcT39E9x+6LECg5eFML0rIGW01+ZfeGyKYa0Q==","signatures":[{"sig":"MEYCIQDEQ/48TuFxeOviarSEy+HjQsVrEbtUT/bylOFQqDKgpwIhAKHh8q5jVj4nW3dNSpx5jevl8ImnBAzBViMbWzEPLH7B","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwt0CRA9TVsSAnZWagAA3O8P/1AMHY1K+1N4qAptgWvy\n/XmmxXQzb6jdeqDY8DJOz0DNuaq+hMv1CBejEGZcvQkjf+WQU2iWHXHa8Mo9\nxLRY5foc9mvwK0RiN7Sb66eECSbjifRrm+TIlso49yn96miqIFttnuweGvlI\nRjGK0eiowsIEJ5FO9rlg0K4Z9dlLWsncgN3kKkQuRGzLe8+lM1MSs4SxJY+X\niNNNkfaOI6WmTbVF9TVtQmI0ZG3l7t/MSjsbTF1URtM1irC7cCkqGAL2dBc8\n/kJ13Dj3+mWcKuq7SwTZH6oDBfKnVw1q/ibDYKAdgycmj4bPXkAMpnxYJYIy\nCkkRh2QeIEZKLLnzR2TzF38Lehy1QRIYdt6zbd0v7X8o/5XZfDRznOa65jzC\nKIZFGTb/UdogcB1C5glDSBIBtfTmAw7yD00ynpvzJANS9xmKUPwgCrmojtGc\nPRAE+abU2BN2AJXhOBXzEfUQFPsgJVTPk+3pfK8879v1uXTbevgnoQ4nJ9I7\nbcDkFw0X0zIiG1+uU6Lcmwa+3sbTQIR/fydV6J9dWUrFCt1fqp5DWyCbJIkT\nzMKQSvxpjuGrYEBBhXGXNHmTmI/0fqrbvfwmSxt1VDFTWXNBvom2Qt8o/4mz\nwGi30qoE5hPA4/troeqkrZq+PG+QBq0MiN1Y+00CSG5R4HgBaBzRTTJnnJwC\nIeRS\r\n=R3zO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2e118899ea178b7eead116b566dd57252d87dd25","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.44","@balena/jellyfish-environment":"^4.1.21","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.125","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.256-renovate-internal-patch-2e118899ea178b7eead116b566dd57252d87dd25_1622084467535_0.37552936719461427","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.256":{"name":"@balena/jellyfish-test-harness","version":"2.0.256","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.256","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e63d55a8515409a94089b753dae9174b1b82441f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.256.tgz","fileCount":24,"integrity":"sha512-p8D2jaGRHSTOhwwdOcCg6R2JV69L0fsBQW2wOR/FtH8rMM7s/mblx6f5PhvGy+4Y48L0kgs+PHPSRDuCwKksEA==","signatures":[{"sig":"MEQCIARa4kacNxgb/qroWE8OkYAuPc0YV5thQC+wNLhJ4WHOAiBP3yvS1vHRsEIlac2NlyUf9h501LuS0Dbw/ZAK5lE9Sg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrwxVCRA9TVsSAnZWagAAqnMP/0U7Y4M4rv97h+Z4VKGh\nO+bDipsC150zyIDcqJhFzglggyYwrPmYJfEHqAksvi7QzhIxRA/uFreQXxsI\nVo+KAJoy6x5q9fO5K8AYI+ukkA7pONotWY2VYtrCsvX4NfDLDML9KsF5jiv7\nTK/AcNJeNoH0MR4SuC4vmwZzl+jDPDu3ywuIFWkAm6SfRBmmiSJnId8pRVRn\n6f9UlUEGiG77Kc359CldUfECeZBJ0zntXf1ui2gUkJOp83Wt9LOPEefHmt3q\nH/2KAQr9fADDJNwX1+NhqQZS1IywttlOMDgcAJUt9ZzrKKwa9DSeowpEfGn7\noVOrr/lBqqNvGG9BsDrMHKVBSpJuQa1Z+sGd/YXPOJaDCiak2Dfem/rQO1YF\nLp8epiLyTr8qSYyxwLqGB8cBQa4lcekRIyoPVhVi6f+LP8elRVUiCYDefLHg\nbWTWOOVqgREzGGR9LJrCLaf8oMHo09LKWQtQD+k5Y97zMa9Wb8nnYlQeu7kT\no4QRF29W5M0qFHAAMiZt4DCXr3ih2DShX1WU8wV9nSa94yMVO9zDpJnY4D27\nC8ltEJLP+pvf5PSD3N/cQ9x2s7z/14MRD5Ja7A/ViMv4mf6wdxkYc06bwlmS\nOn2ArNq9x2WQKFXLvGhxb4lGOTcLkxyfCbovdKYfPeqmOagR+1pMr58fWL5X\nbyQP\r\n=uPdQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3dcadef379b49f534ae267aef2a60a005539fc31","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.44","@balena/jellyfish-environment":"^4.1.21","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.125","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.256_1622084693082_0.17040712592312857","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.257-repo-sync-jellyfish-config-default-30c05c8d95766c997a573a0558e052a0334eb3fd":{"name":"@balena/jellyfish-test-harness","version":"2.0.257-repo-sync-jellyfish-config-default-30c05c8d95766c997a573a0558e052a0334eb3fd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.257-repo-sync-jellyfish-config-default-30c05c8d95766c997a573a0558e052a0334eb3fd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"43398fc65c9f5f1511c90de7791067ea2af2872f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.257-repo-sync-jellyfish-config-default-30c05c8d95766c997a573a0558e052a0334eb3fd.tgz","fileCount":24,"integrity":"sha512-gePh5ec6Jgkkc3o99e3KcSGuR71tWppvBevw8zya+w+E7y4thIWdOEXZJPlkXA/bxk1d8CPVFK1iVF0Ka7TbMg==","signatures":[{"sig":"MEUCIQCr+fVWFSQMLy55Mgp3ozXUrSFth473xzksCBBhy4qXmwIgR1waqSoSEWqqDpr0jG6xFgtQpq/fHAYoZNq2JpGC1nY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrw/+CRA9TVsSAnZWagAA7JAP+QEwRQDPonZp5stmbgqp\nUTBGwNdlJcSjQ202oolXGwVKZILtBJpNOVNEh/MHOrO36zkefL/ljC/TugUK\nneSX3C3T/GXL4LYikEd0BC+po1VxRFqLJ7JFl/YdTqf2GGJqSNUALzOblomv\nERxdwlFFZJ3FhlfXGbf+roZzWLTy9g5CiuewJAb/aJn9Bx8yK8r3zrJSvdhg\nT6m4ggCLgRH84k4nhqW1lcBUts4eiQWrubT5q/4DxNGCIe/z12lxEFToqmy6\ntEtE/1tBhrUuowHy7hwL5siC48Qe3sCU+HzOdPK8MiqCzcVXHfywIenQDC3J\nQvgobHbSan/eu+2Dhh5ViZ7WhF+1dnR9TiaexpVHZUuC0KWQUCuzv/6fU51x\noOQoZr0yKLsmH+wnv31j/eR/M8UF19WsHv93Y/Eyz1MEVojgEHBtXcn/xTDE\n6otXuu1wyLIm8TzFkO3BgbEgxUmnWHzVIKF4X8EfIo03kOKcH9ivCyjHt54B\nlywfKxJhAV7Fexlz8cxSNx/YLQ4dt3Kvg/fe8nJtm2Rdo3gbsUOFl4rtD2Mv\n3Zu6jtugMSiNKEOdZU1F1d1ci0/7+V84eoBNLpb0rwcH9F4sdQEsR75ZkMRB\nq3TKJYZPwHyixtRy4MjuViib+Pu7r2XC4L6IJH8Okw8wUHMRrFC0JMeB1TWV\nHij8\r\n=mJao\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"30c05c8d95766c997a573a0558e052a0334eb3fd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.44","@balena/jellyfish-environment":"^4.1.21","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.125","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.257-repo-sync-jellyfish-config-default-30c05c8d95766c997a573a0558e052a0334eb3fd_1622085630356_0.536068526457341","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.257-repo-sync-jellyfish-config-default-07b50d91af5c7318af0f8dc9ee7da08a7e14653e":{"name":"@balena/jellyfish-test-harness","version":"2.0.257-repo-sync-jellyfish-config-default-07b50d91af5c7318af0f8dc9ee7da08a7e14653e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.257-repo-sync-jellyfish-config-default-07b50d91af5c7318af0f8dc9ee7da08a7e14653e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f96e821cd5599be25f185e76424ab07c03bf118","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.257-repo-sync-jellyfish-config-default-07b50d91af5c7318af0f8dc9ee7da08a7e14653e.tgz","fileCount":24,"integrity":"sha512-kzC3zRqPQU/p74ewY5fxELEL1irPRGxDQJ0TG0EMmPgKz+R2IBBbvuWaIvdlq4xEDt1MHIeKhHQoCA32ATqpUw==","signatures":[{"sig":"MEUCIQD918ptacnw8UjLcM8ri6q1U5hIoBcBpCAo9yBph65POAIgdv1AxgpTzk0tMSz2m9uc7R3XlRs9KdlnufL/7v1CjIk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108027,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgrxxSCRA9TVsSAnZWagAAz5YP/RquQmk6fvQqKXOT3cU/\nNHAfJo5sv49xsQWzxyDnrXZxU0h03Vhk4PYudb4cFwZ+D7sQaxtFVZXKrnBL\nXS/BVLH2tG8A4peQWfoLcObmOYRaFJobasi32kzIWlKvPaBHzDNcCFHihhNc\n/VkWXEYMZiRrsMjKYrqzd0wlZAw3gaVZGo8lAsQpiTZ22mPbqYPnvkJ5MNPX\n67UC0UueD4H4+n94/HzwXol3UoVXsQbhIrfI//ua/a2bbTr4M/VCfA8on4Ey\nd6Qhy64k+RQCons0rdjo3HnSrPrikihLM94iD6gExUXR6ecvL8+LLfzzLW3/\nqJFkGfF8BUAEMOz3CimOQvNsb/y94vytCG1CySR0M6Ps3GxfZflWEKNYLOdG\nC3begZKArGn7wgz6LGFQnfGu9L7wcCpbfB+DxPMvOHy8E862zTJq/9rPgeiS\nlNnqUm0UdCWUwnYGFstwTLV34DqbPHcT07TF5BqvdQ9sc7BvUSTQybS7dSDC\npv1RVdpUEXpjBvo2FM/YcoOGI8LbYpLym0boAbBrfBKUJ55VpssqYU9jF5+a\nq/QPgaAVrWkK5DINQmx+kGyACopZf2aHZ7TqNGoSaC0Xe2FAMIit6QPZkQgd\n1mz4R6sg4fxoGmZc6HYkQD37grWrNrVphVQKVVEiC6gpHJ/tIhymOHcYTvGt\nFCe+\r\n=H59H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"07b50d91af5c7318af0f8dc9ee7da08a7e14653e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.188","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.44","@balena/jellyfish-environment":"^4.1.21","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.125","@balena/jellyfish-config":"^1.2.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.257-repo-sync-jellyfish-config-default-07b50d91af5c7318af0f8dc9ee7da08a7e14653e_1622088785868_0.6499779516691087","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.257-renovate-internal-patch-28b95aad7fd3f7039eecf874139b0a96d249d759":{"name":"@balena/jellyfish-test-harness","version":"2.0.257-renovate-internal-patch-28b95aad7fd3f7039eecf874139b0a96d249d759","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.257-renovate-internal-patch-28b95aad7fd3f7039eecf874139b0a96d249d759","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dbb8aa7ebb532aadd51ce56a8557608854f6132e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.257-renovate-internal-patch-28b95aad7fd3f7039eecf874139b0a96d249d759.tgz","fileCount":24,"integrity":"sha512-j/GotZ1FRRjiDvn9gcrTkOTSYtPLu/SIZQJBUAQg9FGM29Z5YbhbomMfweo/Wxax2mFZD9EUzHJgpXCzueL5yg==","signatures":[{"sig":"MEYCIQC4AMHMn/YqrAK6YMRZeb7jEBxdWLUcVX07WwfJjl7NlwIhAMfvCJcxMxaXGteKH/6qzV9wfPvg4mfMOpJrkZ6fFIGD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgryBmCRA9TVsSAnZWagAARLAP/0JOAH/LgVxqs5BqP0Oj\n8acCEdGVOasOPjVCYcbEzcbRsctQ+lIlRgsALPONIc3fWD/nMDEMA2OSd8Sy\nZ9SZg5d/UL25bve+090YyOCOqzste9BnouOwwgYXLaxsB8vzxli1jTWBfkcH\ndlpMjjRZIV6MVBbVyC7wcD2mJMZ+sq9V5wkkSDhDRchhcgbCzgXOoN4ToDRX\nc1YvtrFMA7ein0EUrYhumORgMUPvjfa16k3bGY4DLjYyZk+ZQ1RzIlxYwYRy\n765AUJP7S+4fRkk8KxXzAk0kfdZrQUzNwx2HppjG7wPG/pIBYjXC0BmjBLLY\nAj2MaVHAobPzFlGdu5iN+2qC7UEM15V9O2+KE7FgkzjOzSzU5HnuBlHVohM6\naX8q8k+n7Ujo17mrt+JJhIHuC7mODMtT6Cl9XbrfbJyyTDZMbVsuvWuAo6nr\ngRfLSIeLvP2Nr8+SDqN7BBvPysPM/oeeL+v6UwefFJBAzZAxcxWOaa6ILccD\n8Cet4f70nyVcyalwBVzQtZtxoMb1CryCOEAt7Ej/KQb1K6yoCcKYosghMTgb\nAj8uqbffDCTHi5SU2V+ggtgv7NF3zzsektKn3C66Q5/+cTc4BuW+p+KGjZkW\nCZhoZUHtDuEplbKYwZXF65gKQ0MxUXmfyLtXqVFj8KCXGsiTHdrEvduwpOxZ\nqcWs\r\n=ZUmY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"28b95aad7fd3f7039eecf874139b0a96d249d759","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.189","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.21","@balena/jellyfish-plugin-base":"^2.1.110"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.126","@balena/jellyfish-config":"^1.2.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.257-renovate-internal-patch-28b95aad7fd3f7039eecf874139b0a96d249d759_1622089829545_0.5505272021513117","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.257-renovate-internal-patch-ad2a97d864189c317c91d1ca4d85186cdc3db4ea":{"name":"@balena/jellyfish-test-harness","version":"2.0.257-renovate-internal-patch-ad2a97d864189c317c91d1ca4d85186cdc3db4ea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.257-renovate-internal-patch-ad2a97d864189c317c91d1ca4d85186cdc3db4ea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc55409122099dc4d9bd9ed523ec6e839dee94af","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.257-renovate-internal-patch-ad2a97d864189c317c91d1ca4d85186cdc3db4ea.tgz","fileCount":24,"integrity":"sha512-nGdfFIUKsVnlKW4dOzrB5YFOJD4nMv83PF1ahvBJh3XCVgwhlLxmPOqjcHXzx3iF0o87E0eLOz26DsuTXW5AgQ==","signatures":[{"sig":"MEQCIGai8B45tSJ6JVXL6MchtYXfnUKfhVpWqJSCYG0U8jb1AiBrUD09/9zH+rOdvcgJobIqRWlgX6sbe7ZOJV0ijGi4aA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgryF7CRA9TVsSAnZWagAABgAP/2iVi8m0xtmbhDX1HYoR\nCBYCdyOv1a6KssIqXW5YDxpZXVcAviwBnVFG1n3KjSqSIT9j/Doc1rPc7jD1\nh+ALlMP9N/ntJyob5gCojlXu4HsqsPrIWeChzZPBDaV1Fg14EpaHqGnz3Olt\nGlXkFCADJGZQilFbsneaHHt0OTMGwTXX85wjZoTpMT0GLnZe/PYUnJ44lGa/\nGZwGu8G9jpYm4vTVjDO9w10+Ks3PfaUBjaWXT6Hbo/whgIz2RC8hdSHLxN26\nDsw1lU9QiAR0XLzEYy4zgkAN0Q6n6qxv5kjKsnIkM3QdjcWj8MVg++dSXbQo\nqKcnxjt+Oc5/FPXCXxAcCdDOmeI2q9arK3T5CWkECVyd6JUSsO/g4bDkxXzz\nQWWxxLTkVZIYFNUVWVACl3dt3lF2MhzHs/Fhtyt61Q09Gpwd2SaIL3O0KD8Z\neWw5KlxsLa4zjwEv4lMs+1IUy0z6HztWhbKd/pID654xiZCqbmUQRw4fbDM2\nfg6ft8Oa/FZArgQ37gZukGjeFKI8N4DCYsgo/xFkp27FDT2vhZlgsjrPbWLK\nj/xIFHdrR9oTU5EYT+eMgJKmFknKcdb2Etly7DgT/0jWCi2VP1cS0BEiNYkx\n4Itp0biwFdaA7Hb9ndl+QKCcue3OweyLvqBDBljvCLgb/WsdnJN+4CeZQvSf\nPs0u\r\n=Uuzn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ad2a97d864189c317c91d1ca4d85186cdc3db4ea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.189","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.126","@balena/jellyfish-config":"^1.2.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.257-renovate-internal-patch-ad2a97d864189c317c91d1ca4d85186cdc3db4ea_1622090107216_0.8820841470768928","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.257":{"name":"@balena/jellyfish-test-harness","version":"2.0.257","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.257","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"35ceed996fe345968aa4b231690cb94aaf9d7941","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.257.tgz","fileCount":24,"integrity":"sha512-WKW8X2vnt1iqEDJFNIaiP1+obtVLSepmNdHvhldQMjcZR0m1q3a1htWFseDnjaA7sOSkGbHmQqh1N9yCA1mssA==","signatures":[{"sig":"MEUCIQChh+rmAKG3WeNmewLDeiOjvrq+XpkoR5Slu1xetYCWmgIgSMIjzhtSKqoSk9SWjyh9fo/KV5d+tdZkuo+PNP2kjSE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgryJQCRA9TVsSAnZWagAAKn0P/1UkkdQAgYkFb5Zdxk1P\n0nfmK/abEQR8o3rHwtC9xpKCEbPymJ2Wh7cQMBZzhTg1dS7A8w4/c3ZZUPAN\ngF/TVbdv3C/wZklGbTzIDY7QCK71SUnnqcxRpoMKz8jQF/9KOXahFI7ICGoa\nmBvAPkNOUzbxaYntCMAkQ5nfX+hJcETaUMfC/nPVqnN3KBcSdz2FDoOgcWVU\nTCRQBp58pbOe7bpIPX0Pv+g+mqCkFiCMYB0m4URmIiNzN9J8sfCE74UDR8Q0\nHihBp6ErVqSpJAVEzr3Wlq6fDUhczmVusGYxxWeuhejG3m9O7XhH+q7csyjz\nRlasIJqP/ez09FlvAILiSAqxmxnMVz3rPzDq7F8qu7X3tskv3ZCqNrDrcit/\n/E+OMl9uBxnuUD+imT6Dm6BGK+dprcfEkYzq7GmDWWgbZbXe1VA1JO+KE7Kk\nRd1B3+yHWkZzrki/lpZdJd7MTdDe4mxxd8+3be6qs0zKzV4jDmvwq4aHIbzD\nV7Zs7KylOMp80sQqWqreTpUfZg6rcDGphJXLhsHKVw0DIpybos4yuJcDP+RB\nZOnmMuffwkW7Yr+lKZ57R+UxwT4qrmIyRvHfDV2JuVd88ekC3REMh5tL/qEI\nT3tzK0v3DPH4pfpylc+wP8Z+dgQdLNU/OtuVxtfJb+1voKLJ3hg1P4LhMI2G\nf5KB\r\n=9RJw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e3a499967ef6b9d31f3280a17eebc91f5046ac0c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.189","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.126","@balena/jellyfish-config":"^1.2.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.257_1622090319812_0.1899695874984415","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"2.0.258-repo-sync-jellyfish-config-default-378238b81e7dee649af7b9405b75dc107cd144f1":{"name":"@balena/jellyfish-test-harness","version":"2.0.258-repo-sync-jellyfish-config-default-378238b81e7dee649af7b9405b75dc107cd144f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@2.0.258-repo-sync-jellyfish-config-default-378238b81e7dee649af7b9405b75dc107cd144f1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9be79b45b6e614a1a3cfd6ff32283cf522f79328","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-2.0.258-repo-sync-jellyfish-config-default-378238b81e7dee649af7b9405b75dc107cd144f1.tgz","fileCount":24,"integrity":"sha512-vxlIFisL49Gk0yN8x+l088eL+6WslYI+afRrOUwXvY4/fgaRK8AI0xCPLeCDHPYr24iqGRDw0TtD61SYlKDUYA==","signatures":[{"sig":"MEQCIFu+e5uE8zkmMJlkYZOu3lBCwn8Ph8OsIvKFiDwqRiNUAiBeu+FUQ3pPVR3fGcQKWnC1tTEkhCJxNPVjPUIbzI56kA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr0CbCRA9TVsSAnZWagAA5KAP/R5y5bJLch7hGjJW9lax\neikwTzEFfuRM9YkN67KyPt6Lg4n7x06Sj++y7c30useFenouY362m2+3RYr5\nJOM3vFj7rohbMHblwAASqwScf3iig+s6vtHbUnHkUkwXBIaweZnhuFWUK5ck\ne/vYF+aRJTOHOGoB0oa2XwSm1pkj3SUnrvKn0VjcRQHlHMgDtujt2gKjmA6F\nLG9Cf3mWVCLcaAP8j1XUCpgmj3ZWLZMjgg79xVKeyswBZjUHSeUaAseSdicP\nTbbuu/ep2Uil5naTds6YxoJxS6GxHVFIKeKWngKUBxaOm3Glim4bw4ZHsRsp\nGS2RUJRjvB3Vhr7NC1XIec7GmOS/whpBPJ2/5BJT2vKHfopmr4vnuiiWVwWv\n9FRVnT8sB7P5Dk0NjZTcnsu6peGUxwuCKF9N6861idW7/P3WLQMJ83Ex+jpA\nTWXeJ1ECqfD6tuMNM4ck4Xj+bMgWCsGHNtfXPmqneFgJX+uY/tElV4B4RQ7t\nwZmhkAdh370A2ob7NDvQ/B+b9t9jhCFu0KQn4hCK5zirYFtt89hFUd0hVgA7\nKHoMvnpN93cCW1CBPDzPxg7sEoxBI+7gPhJzfnC6s2pwPDreYdTbQuvbrwhr\nzm89DTaF1xvyiGycYEK+365EaRkNN/Hzf8PQ/PXMEB6uRBsmkysVoi+I0R2Y\n0QYo\r\n=NfZx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"378238b81e7dee649af7b9405b75dc107cd144f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^2.13.140","@balena/jellyfish-sync":"^6.0.189","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.126","@balena/jellyfish-config":"^1.2.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_2.0.258-repo-sync-jellyfish-config-default-378238b81e7dee649af7b9405b75dc107cd144f1_1622098075290_0.6398384669445902","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.0-typescript-core-24f2603565f5bf64f666250c3493394c40ac5f1c":{"name":"@balena/jellyfish-test-harness","version":"3.0.0-typescript-core-24f2603565f5bf64f666250c3493394c40ac5f1c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.0-typescript-core-24f2603565f5bf64f666250c3493394c40ac5f1c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc17104bfd904c4868c401a1f5c0f4a58ae82f1b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.0-typescript-core-24f2603565f5bf64f666250c3493394c40ac5f1c.tgz","fileCount":24,"integrity":"sha512-i6F7Yzt8gYCGU41fKCXUEbTf4/i1qBHf5KOd4//ns93kc/PDvC64ri79RzgBb4xx4fUVT0paOZYj1K0cLJ8m6g==","signatures":[{"sig":"MEUCIBlePnxbIr9DvbdKVR6cTnkT8XzZ4WJlUU+WRkAe5pcAAiEA1smZZ+ORfNV/goUfykOmGqwvqbNDieJPdGkQLyEsP6U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107729,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr1ElCRA9TVsSAnZWagAAuf8P/1PTrEewtCYkateeqn79\n2cLopVp3MyOcLlLEf1mdsTUlZHM3HxNuhzDZ+F90unPFUyMIvBiQulX+p+5j\n9wXjWGSMR0hX0jWLg/NC7UouqR7j6A982GR7++NI9mPJQSNctrCxRsCkAO7k\ngSAL/d6pSDOkLExbeaEGio0sGgkkV2qPCCuefJA5XHFnqHk1UqlFg/oncoz/\nYWEReojDo9Nu2y1mSO3hsTUClT9RsQnQPeJz1Dk2RIybPgjaDFShdRgq6CBT\nR8Y1ygrEqrg8MepZyHs22lDKpxlMuvtKeCBxpUsNfSpLjUPLbxYDjneOHrTm\n8wSDwwqqQ0zx/W1NYdPR2t+AN8bNMyFwRZzKtIR6wbsyUNbgedAGXypveH8a\nBp+J//GxBP9aMK//o7k/RpN6niatN403Hyna77yZbT+y7syfEpQ/8iHU/xGo\nmeiZhIk4XbTBSzBN8BIrmV7QquOKk46ZvyP9HsrzUkFRDcbUq4q5CnERdlM9\nsM+Wlwt10EpphMLfk5rYu5ME1g0O5NWNyZMS3G9GD1TBCYDVJsKZsQUowWpF\nzyLBFFWjJ+Ztv0t8GYhYDS3JgSTGkfphXPxiaN1UEpYUMdbbecfK64SGWUhE\n2I09BAD/+9D0i7EDfjpPnHf2DfocFjckn1Nh252PmHjcPWdxZuwwuDtVN5qk\nuJ5R\r\n=FCGB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"24f2603565f5bf64f666250c3493394c40ac5f1c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.189","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.126","@balena/jellyfish-config":"^1.2.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.0-typescript-core-24f2603565f5bf64f666250c3493394c40ac5f1c_1622102309419_0.7767703462578721","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.0":{"name":"@balena/jellyfish-test-harness","version":"3.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"21a3255969cc0c51ddc29bcf48aeeacf33d23658","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.0.tgz","fileCount":24,"integrity":"sha512-X+k0wKcWUBJb54cY6CgjU9aPWWPN/7Cj6r5JJ3ojHEwB9YR7+C5vI8X8MRiI76AbvsZwiHZsYO6yyX8yWTQx2Q==","signatures":[{"sig":"MEYCIQDJMuWptK7pocukQ178uFUAMAIF5jVXEyB2DVgm/bznkgIhAL4gn2+psWhb7sCGFwyRTCpO24cWwldIVU+HG8OR1ix8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107672,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr1M5CRA9TVsSAnZWagAAHdMP/1YnK+ZU0o3CfpEo+Ouz\nSiX8GxHHrTe9S8o4a6gZv0cYaToUg24Tb4y7iOlp3yBFOBba/JothjsqWIvN\nKEdnxQgjDcGLnHt4+jNQ+nRAnJIdhSkQy5TH9HuHIRcVaE5viqhYIKc4zAOD\niPwyoJowPKBCNQnOvcVg6LnzVU+d+OvkPsmwZDa/zc4IyQVs+EZZY+h9ddIr\ncefJKAcCoPvfBIbcMP3eK3gzt5eTqxSIesuQqEXenQ4RypZNQgfyM2qfvc1y\nZpuJuXmnmYZ52PIqIY+WEnGV3ZWKmd0lmkNpJ2YCqaFZXT1gIMMKWo/azyW9\nL+5N93AAK4vONcdl1F/hHDv5jNqDD4jy1OsBBdxLmL6TFnmd0BiLUKyI4ZbS\ni8JZ2KVhwfp3R2eSKoAqylO8k37NHls3Y0uTXGDMzOCofrVwImXj1nlwWQAp\nu0dqBLmaOYj4h5oZjrv1NpynUukchp3rIqd4v25pRWbTprP3SpPqAL+9b7TE\nY3z0n9AvaGSKRpl3pnetVo+2PZK/sKsHZYNxU3W7OPs/YrKGcjxD2e/Et/i/\nE7uGeyShR1MlTHrrbsFNlSbX4O5oe/rNT66g6u8e3l3mF1jh1E76gY5d3R94\nW4dwJXZ0SyHz/Aowwi76f+IZBJh9x/xT8xSLs5ylwU8kwOJRg0G97y+vq5iI\nIPZj\r\n=5iqP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f76e919ca71bc9923cb98893f459b8efccd0799b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.189","@balena/jellyfish-queue":"^1.0.105","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.126","@balena/jellyfish-config":"^1.2.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.0_1622102841227_0.7429862834440408","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.1-renovate-internal-patch-2074a5125f23630265b2aa3ca11d1f5140da90a0":{"name":"@balena/jellyfish-test-harness","version":"3.0.1-renovate-internal-patch-2074a5125f23630265b2aa3ca11d1f5140da90a0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.1-renovate-internal-patch-2074a5125f23630265b2aa3ca11d1f5140da90a0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"087d77de60bda29d952b37a3769d15e015262861","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.1-renovate-internal-patch-2074a5125f23630265b2aa3ca11d1f5140da90a0.tgz","fileCount":24,"integrity":"sha512-Qjo2FGpKFp7TYxNbsME6RVlmE9M0i2gOGtlcKZJAFlLSB+nH36+rXoKM7dfK/mV2JlqXfYyQL4gjwlAQz4Qirw==","signatures":[{"sig":"MEYCIQD6jEUWvxxbDsxvn9rd6uuRfwg2/QeqSWdKNSAijI+lcQIhAPecKV8bKC67V1023Q3aLOzwjHjsF/hhVwzIm9Yo7pqU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr1R/CRA9TVsSAnZWagAAGTQP/iBWlEdCLstQ9mVy2bUo\n08WOvb5r3Z7NuK/yPVJT6QzyfaAgwh9luO82d+wJ1qaxfSpoVenUMCtnpV85\nJZSNINK72R5WyjIuNTbg0oXwZcieUUJiklJijKhDOVAV5MNByTy/5Ep/7Ara\nPfxM9/hqbzsl8EZ7wObIsZh7WnumPtcmbp5XzN3I37ba0Dg+fdjenjAWpzGM\nF2AH7B41kZZWMdUGcLthOYg9jHvJlvx5NretwXbtWJABEpijBXUGnitVUHUd\npT+g+sYsnfQ9ybljQtkWbXAb7JAK8bcIxzfBKlBNRdW0QoTmP1vHFKXerLQe\n/q29BQs9w20fqgzSzUH6v98xn6fSCAceLLJg8uhtTHIw2djMafg7C8aF5udC\ndwlHqhyMHaQ9MMn31uRBYysfW9FTNnjiv9w1LiiwjXuI7OpQGerJqNfFfpXa\ndE4jCTB+O0Yg5W18HwtGJ7gVP6xicLQ4Cahj/sQfkNHxj9+9nXqXJ8e9XeOh\nZpv6l+ZpCCGQctaghLhZc28QS5dVzzd2ybm+S3jFIe+zQmZNXKujBi9jHB0w\nxBmhEXm0P4Pfagwiw3aD2M8VyW0GzxNDALrttf5P0nLItCad25guOJHTByYS\n2yfxfqkuA1Np5g8n+YRGVUitfIwqx9hm+LLK5ghPV/RBvsVJLMzeQ00si/Ww\niGho\r\n=qtrg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2074a5125f23630265b2aa3ca11d1f5140da90a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.127","@balena/jellyfish-config":"^1.2.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.1-renovate-internal-patch-2074a5125f23630265b2aa3ca11d1f5140da90a0_1622103167377_0.7427266870877123","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.1":{"name":"@balena/jellyfish-test-harness","version":"3.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0841255f34b8cc06cebf41a34c311d536be56a8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.1.tgz","fileCount":24,"integrity":"sha512-EWhitmn/HONnRYfOFRh0yiE3T+YIN4v0m0B9UhGJsKzWRHV91SQ/2gTiwdW7Q+vxY+h6weKwaHbWyTLCXBr3SA==","signatures":[{"sig":"MEYCIQDeuOIgv7naTpvni+paG9ZnTZGn4zzYjwpmV962oEBUWwIhAOOI9OIvZy7sS5+m96r8hHYsAxeJhXQTpi0cQqVkQ5gk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107745,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr1VbCRA9TVsSAnZWagAASREP/0whwYQyQRdMZDmU+Xa8\nCLZQXJT8lzWAvI4EzvSTWwyvoa38wYB8+xtrdRg9S9vpXqTw0/NSWQomC6ZY\nUrkD+MFCMmwS963GzsBIS63nUMR+JD9IKw/oPE3xWslMpFugqdMOCXYnGPPX\nGgq58xsgEKN6PufD3HIR4ydFUUiVexTdE+EbJrzLXPWY695l1/aNJB4CoBv9\nlS5398aUfU+WjvxbWQeNWiQPZ4Kqm/0E0Za3SpYAf94GUcIzpjJ1mL9jo4p8\nEgxmQenNnW4jLLS+zGp6Cy/Lx17nNZcYq5KvWZVHPaz6//hfd14UmeVtsvfW\ny/f5r+7EoyC7UVIynLG7Xln739LcVG81JFHTPRTEZof4wEUdHYl3yjFKIxQ7\nHEmLNtg7hNm/5cY6nuVTGdBwcIxOgmw2biZbA0h58dLvL6DBDYp6j6fo9o1B\nsBtwFQ+39AgQkZwSybJxi+TrpRVRmLRPCF51WL5llpjE5yPGYr8nCIKZ3IUc\ndmFWnBnsJC0+RmDOlG+f3SnNXFp7EBfgtiMBRlQT3ckEEPm66P+qmXWwU18Z\nOiqt1d7paFppEGPV3Vy6JRGQdvCdmJjaPQTuYzhzcvLC7nW828bcxYsQyR5v\neijvZklyCIwA0dX4MLs6XR/0tFx3QiuCILkwyFb7/noT5cvaKHB8NydBD9mw\nK5T0\r\n=MxZg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a75fbcc4f8c118431d7a680400db344129f5dcce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.127","@balena/jellyfish-config":"^1.2.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.1_1622103386548_0.8159564978065412","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.2-repo-sync-jellyfish-config-default-5b2a39237bb96a90bbfb3409093a451b0289a009":{"name":"@balena/jellyfish-test-harness","version":"3.0.2-repo-sync-jellyfish-config-default-5b2a39237bb96a90bbfb3409093a451b0289a009","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.2-repo-sync-jellyfish-config-default-5b2a39237bb96a90bbfb3409093a451b0289a009","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7483dbb0680e0af029eb703604d9eb1e7ab43b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.2-repo-sync-jellyfish-config-default-5b2a39237bb96a90bbfb3409093a451b0289a009.tgz","fileCount":24,"integrity":"sha512-RYXAV5+JUPL0lleIrP3KRgSNoOQOqTCFfQAMjJfxjt+wGhA19phMMN6brNlH0dAAjyrqcAT6e5q/GUWQF6eXrA==","signatures":[{"sig":"MEUCIQDgDtrjSp7Hzx0iiR+yKlEa5rQdRm9GfXMU1TZarMY22AIgNmOqK9DrK8lI5k+126yLvbaUvRk2KiA5XTZ/rT0/d0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107919,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr1jjCRA9TVsSAnZWagAAaBsP/AzDvKeTUsDReDLgfOmi\nrq76bjJ1EQdOGHB57GBr18eYvpbzlkLxiFIB6Zp2GCqYHjDs4bM0jDYKgpn/\nZ1OtFT5jJV+z9KNcrfqFWe0RU/G8hY76+mgr4U04wRk8t+sq/vnQxPFI9Oq2\nxTcTF1dWeWbJwxa7PPjy8ruY87b8X302gL/zsz51UZaGmAQKLDKghhaJdk+A\nZmPqLsSLvkLJKk+fvdSXKeytpHiNZcKgbXa7FQDw2oLggO0rCrRSCEYjPpz8\nKsgN/HXv3G0/Sr8QaSAJH/2zANm2BRuMSae/JgA7Ct+mJ/yeWMUiujZlScMs\nKRWAIcysO2XukI9USeL82lVNEQhiRbd0wzUUsBwOIL9DhFov6Ydh1tZy3leU\n43jN6x3G34Hxa5bfI77/XQI1kihiMi2oGoEu2ZOvdxxtkEFzGaIU19PHHC+f\nO8RK+7L38vs/Na6KyUdTQsDBbagKHMnzkTEcmfMoLZ4qpxT2C4PWseo1PDmy\n9+fMLXBe3m7Qd/TaaodV4Jq0/HrCYEgDW71EU5dZ0wVBuVVjdwfCC6y83Gex\n5vNKPYnia2WUCLvSabCOdQlwepTst+X5EUQa6lgJqXCinhv3s9pciUzuuNZ/\nqkQl9ezt5euaQkk6JHuK+TW+yhHYaLZVzwcGfERSE77EaNb7kb48Qgisr2id\n+8xu\r\n=ho8h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5b2a39237bb96a90bbfb3409093a451b0289a009","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.127","@balena/jellyfish-config":"^1.2.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.2-repo-sync-jellyfish-config-default-5b2a39237bb96a90bbfb3409093a451b0289a009_1622104291040_0.0916321343208597","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.2":{"name":"@balena/jellyfish-test-harness","version":"3.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b48b34c5a3438509a64d948482c4d6dd035887ad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.2.tgz","fileCount":24,"integrity":"sha512-gJ7d07pnoXkFuxoQpeYndzs3Wz8j9r0OkHhZgOL+QfI2yQI10FTSkt15wPBzXKUs705EK0r6THdJMq/Z5PkW3g==","signatures":[{"sig":"MEUCIFZILkA6VA29S3ByoLjS24Pcxg8dPpQdUVQWwbx7qioSAiEA5T6xFymNwooWyQxu1cTke0pAQ+Ke0dFW+AaivgtCQn0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr1qRCRA9TVsSAnZWagAAAMAP+wQlgcAPKFeUuYmfcXOZ\n+MoB7+85z3TyqCcjUhGiXkxMPoHuCcMCVfm7lvt3KdxSKB2MEeDv3KPIx7rO\nu5zmSZqipVCdYTdtdE8NEOS5bPl3xvyZJcQxBC6d8tjUs/8bvhl5HzxKqRSL\nRZnupeZbXdE9SHXjB9E/S5FUuBuJC16Ye7+ULTiIQzY336qIcdh/kUvmXoZj\n8Cpc6ZLySP5aXQyxIJToYgnIapqVojeOdoJVOmqWuTtvq8vZmaJIPMfRTijw\nZrIYBjSD2udLprq8DqKYg5i+lxlKdjBbeKkZQl2mqutU+61qA9zZH5QqZGYn\nLPyppL7gUds9zMc3Juh4WSldvpQlotn0cBLyU8eqJQXaNCBfAnwxNbBuwj/I\nxZKgQGxSwyyQFyQjv+zrKlugk/429y7q868wAiwV1vAwNtNIFhNMz5YcbJiw\n3HP8jGVshzsx8Ndh8T0fLOpCshArg5LhGwv9FvPQQxS/JhFcCoREWjnig4Wj\nNOC3eHUGdiksh/cgTeTmOeCyLF4QVefLIdmU8ozt9O+vuqNi5enlf2eRSzkI\nX5QLCydds3mZnolSClWFjZjBkCfJKJn3XArVxSkq97dhc867IxycvY5PeHlj\n36VEihuqvyQ5Df9AGO6tNPU7QCv260gv6IQhKUs+5Km5d3pLvXB7p60ykW7d\nd938\r\n=OERB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"16cfb45ade57ec506734439fdfc0f964fdb828c2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.111"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.127","@balena/jellyfish-config":"^1.2.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.2_1622104721336_0.2594677744564231","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.3-renovate-internal-patch-70b1aa8640791acc33cdd54bd429673194a8658d":{"name":"@balena/jellyfish-test-harness","version":"3.0.3-renovate-internal-patch-70b1aa8640791acc33cdd54bd429673194a8658d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.3-renovate-internal-patch-70b1aa8640791acc33cdd54bd429673194a8658d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ecce00480f08b3cb9e426806b628dd06478c718b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.3-renovate-internal-patch-70b1aa8640791acc33cdd54bd429673194a8658d.tgz","fileCount":24,"integrity":"sha512-PDugsfj31Cj1iVSCLCRNAl5irngoQB5DN7bTa23psln0eiwgLJpy7EsEJT2HUevTzw9/L6TQaZuO2JQ4kcEMGA==","signatures":[{"sig":"MEQCICOsN8E5AxRR6x4qB/dkCOSfPaPtb8DcTT29q8kSL09wAiA7+6f98tDfBdUyAHvIOvI4a5OnJ+j8KreP/xoM36yqjg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107981,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr10yCRA9TVsSAnZWagAA+EAP/3sa1g/DqQIDQ8/XQo0m\n1pMBMjSbEwXCdZgvwYfUZfxUtvrI07SjHOjbAgKxghYJCY/+2xIAvtV2Zc0y\n/fpy8keAIoyvIzZwztAzaL3L9IkhtjrNOmXtkNOXRephnBQN+b8VQhb0QKH8\nBF1VJTC2RNb8Iz9qhmFDGTUV+F3xdHWcgUHvpY4X37jI8S0g/2ZiOARbDYMA\nZUtYaSKN6eGP5CWl4cQfPHGu83ZRO2uJUICaJlM52vk2nf18h6VFMlmg+VuE\nPj2hn/TAIfpUwZ1WgOXBAfHMZllQ7e6VS+aVbLDlnM0c5EwMTx2F1EAJYq94\nfYlSflhqL7Xj1YjDyTfAug3tRETxLIJrpJZ4GuLNx8OpzTXA+Z9qHflrZ7tV\nEbrki4o7SVP0JLWdhuvFT5M8AyKdrBreaATL1++mLleO9aELk9puGQHojoNv\n9A5+ZgKMHKjYj4XqYDItgfISLy9pgfc9TQ+YspwLvPjbuLce4g1l4EajQUZR\nJpdPxgE/oCGC39+E0kB7qnYDRkF2e/5I7eQN3CsrYRi00f21Jo3cCSwtZHrD\nr6ICb9nZqB0k1pYQDsDtfN+N47oTLlL7NCTOP5tQoDE6C7CGpMowYotxCM4n\nnN0MA0b1aZzHurWY3Q1TW0tRoqHkW8qAivDEXRAA5hUeyS3l+rUHQYdQuktB\nVxJ3\r\n=AvrJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"70b1aa8640791acc33cdd54bd429673194a8658d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.45","@balena/jellyfish-environment":"^4.1.22","@balena/jellyfish-plugin-base":"^2.1.112"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.128","@balena/jellyfish-config":"^1.2.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.3-renovate-internal-patch-70b1aa8640791acc33cdd54bd429673194a8658d_1622105394150_0.8861378954473931","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.3-renovate-internal-patch-7ab795e8c00b5f0e2d751b05429200adf3c3c04e":{"name":"@balena/jellyfish-test-harness","version":"3.0.3-renovate-internal-patch-7ab795e8c00b5f0e2d751b05429200adf3c3c04e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.3-renovate-internal-patch-7ab795e8c00b5f0e2d751b05429200adf3c3c04e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"afb81c04c8e51bc0f7144daffc7b85c257caf386","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.3-renovate-internal-patch-7ab795e8c00b5f0e2d751b05429200adf3c3c04e.tgz","fileCount":24,"integrity":"sha512-gxQ/trptVxDQd1bqNeqb6T845NoyFpJP1bkcznojZCPBbq/PUZiCHuuuopbiN27wEsNAtK7AYEFxyG0uCbNWFQ==","signatures":[{"sig":"MEUCIGl/Fdh59j2ioA8vBmMPF2NabuTauqMOirmbE7Ky/DFSAiEAqnN+EdV8AhNZltZSPtr1HToA0GMCd3TLhlKv3pmey0k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107981,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr3QvCRA9TVsSAnZWagAANeAQAJJVSW9LL5UM4V7T+ygB\nnt+/HXrG08BE7bWX7E5nAjh91eP7D0GRpPp5F1AjE3eXENJez6tncaIptqXy\nDJSn3FtegSB6NqAGQHDhXOBSdV4Wo2p0jhDE0PF7YwBsuwhV0SynhqWOk0/g\n3hZX3CWV5t9jgww4gZGlx80Rv9CgZtJ7aC05YnnjiU3W3KHP2948Z0lBhtmh\nk7/zbyWtksJLdm3hu7c1IfPMHSjlNJGEIr1J4o72TPkpwIfGQS0V0aeyHCau\nbaA5wd7BRd2Il6WfopR/TjgZg+IRdy0jjyCl6HOeHOl5it2bbCroQXIvcCg5\ns7mO4lxYZHfS3ieT34lxS3Uk8FIiPAlazpnJy3DmohtqfCxlDuMEYHAmUOh4\nxbhlAvNtpM44eBmCyXaq6v5lOpXddLx3eNehlEZqzwThX94JNVi1SVlvB1Cd\ntgSQ+HNRniUGJ5N+grTaZ3Hl6awgCkdYsMA+PuRumN7Kxph+w7SGJhZLiTfV\n3kxRrL2QmEZ2CEj3uD27nrj+yP2bOvUYJVWwwKq8FPhjWirKP/vHoCjKruMh\njybZQBcfsnqNAsK37jsTez/hjRTRFExePgDCijN68GaR6O2Vdjyvwg9qJqXI\n8KoNyWMt6gbXOAPLeUgP+RyaGl/kCASg8GHCZdEuvqT0NbKNtWy8JigGL3pK\nR0Lc\r\n=VU8T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7ab795e8c00b5f0e2d751b05429200adf3c3c04e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.47","@balena/jellyfish-environment":"^4.1.23","@balena/jellyfish-plugin-base":"^2.1.112"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.128","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.3-renovate-internal-patch-7ab795e8c00b5f0e2d751b05429200adf3c3c04e_1622111278877_0.6310413790184994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.3":{"name":"@balena/jellyfish-test-harness","version":"3.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59d3b794c2359e82541666088087c6fde36481a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.3.tgz","fileCount":24,"integrity":"sha512-ZV1g52ZGZrNqHXEEWIXSs9LP29G12kHVQZPW420kEt3qQzB5VTzD9MfvHY4+D5oTZBPgttj0XB5W8EJ+WlqzuQ==","signatures":[{"sig":"MEQCIC+6buCMjCOlAWZO7BfmGB5cvnJlzp4ZUYZL8NQL9lPXAiAIHZ60TYPFc7DN/MV0vetnm4c/zYhMubsiNdmHtz7c0g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr3URCRA9TVsSAnZWagAABQ8P/160pd7eXdreCA23oDe/\nI/QJ2GdJYT4d4G34JuL3sYQScTzF42xsYDf/FrbYsKDnH3wILvMYx4ecllu8\nAon6RhAbMf5kVxxBgRA8oa+BvfS2fk0LPYE/I9SyVIAS3YeTDl3w0MkMsQfK\nQLQMz/3J6YQrS8GgfI6S/I15YWIK/WooQxq+AwSUyjD4b/z3ZhKvh+IqKRJz\na15ssPXVKePp5pAUG6VH2TwSFDuJRf8KWTLwDtq0vl0lPEroK7GMInM8fSsl\nHmpzhOmY5lsAPbVG1/jxb5nE7IL72XXDebc7zdcmT1W5avKSxz6EM/zr0N4a\nSNX3nuMUD86K/uIAM84HX5G/+qhSSpPxtbpX4L1sH2evyO+8e6bYorybVHUf\nk2r39itJXOooFlzdxn3+YAFU94n1OCgv9/m36c/DWsNACXQquChvNsFs5y8g\ngH4QzoS7I8LKYZziBicnYDYUGvBn4LgptMhY60HElAX/P4xLETJ+oh1SJ3zS\nX96G3AD0hFYzjKUQ+EbI3kuduNd6oooNTt0MGB6VkY0jQVv+IBYT4Cqub5W8\n3y8knzV/wYxjyXC9ZP1UKhIqh0FYMfScLhNkcPv+ftgYc0zB8dGst1CGA/0H\niydKmLPWAH7lwXa4mmeadpPZZm9SLyEtAk5NlxNE30wFu7ZItghx/dSJmycU\nesa5\r\n=Gufs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1f39fec5a228a2e819ae11bc0aa98092f31db272","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.47","@balena/jellyfish-environment":"^4.1.23","@balena/jellyfish-plugin-base":"^2.1.112"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.128","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.3_1622111505361_0.1802870701975583","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.4-renovate-internal-patch-3c6781f67543384a565e2abca91a7bf7efc06cbb":{"name":"@balena/jellyfish-test-harness","version":"3.0.4-renovate-internal-patch-3c6781f67543384a565e2abca91a7bf7efc06cbb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.4-renovate-internal-patch-3c6781f67543384a565e2abca91a7bf7efc06cbb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee84a30355dd08c012ef7e319fcec9f9ad4296de","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.4-renovate-internal-patch-3c6781f67543384a565e2abca91a7bf7efc06cbb.tgz","fileCount":24,"integrity":"sha512-NybuFAUT11DPgFsFzQZgMQSQ1ZnpxSkAlgbFTAOBSQ1WzN4Sh2Ts/NNGJ3SyaW6IAwLwHPtd+JEH2Zsuhg/UqA==","signatures":[{"sig":"MEYCIQCalpbtArTFzV+HIUDUISUXb0b0EcPFKb7TZaGz2MY66gIhAKAXudsv4sTszJ6ldsCh1xyUYj3eeBorm2c4ej90vFEC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108091,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr3ajCRA9TVsSAnZWagAAVccQAKEOmTOtB/ALJmILTNbb\nIYtQEZjmKSn7+FvSdX1wQhBV9uN87vEnkchkkunK3fqCd2LjpoQHjsP3dFru\nG/8/H9oe5buTJ4KoZrFXxILPsjyKGOE1sU+wxwckLb9QtdVXX2gmebhDHuvV\nAX33P32cAw3nYoXw1YY90LGmPEUCykAwXkRMU174zOS3rjb5/eiq+xqoM6wQ\nN4GIBoFRLcM1vXONfgi1kaJUMkb8Ea3fNucByPlWYADyMw3Q1ITIkgkMx9H3\ny0rGJOmpb5wSoYGdGAN+F9FHe4PIIh54WkGzKqOF3NzDkL4bDXRmzkEuRwgz\nWGsSwtfcED2A3Y1ZBkyAza6aJvylXhb7mucs7U8Drxo4C0MHcXBxUz4C/7MB\n0QQtmFqwcCR6CXbhgZdfjK6SV4VomyDkNZpqvZOswYY3OKaLYxD0d7a9Nj+V\noLKP4/0wFbN8iPwTKQiB1WOW5tpJbGlw+JaMCkh8aFKZoOLAK0iitkkO0IJM\nPAYWbi77k0Y+MAVWCgCg0nV+ofxdq1GMhTZc0GvxC3QXIdhNJjIqFgDrbKJf\nykWf7KLyhz1LhZN3tGNClqoN+9OoG95QKiZ3aObef1Nuwwdmr4sr7Sz+bPRt\nnZ+uzVd+IvA3mYDZY0yyx5u+UqScNTE+8+NsuVBagL7RpB69mM6WPLCbNokW\nyc66\r\n=dP+x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3c6781f67543384a565e2abca91a7bf7efc06cbb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.47","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.112"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.128","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.4-renovate-internal-patch-3c6781f67543384a565e2abca91a7bf7efc06cbb_1622111907055_0.31080364900367097","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.4-renovate-internal-patch-3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106":{"name":"@balena/jellyfish-test-harness","version":"3.0.4-renovate-internal-patch-3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.4-renovate-internal-patch-3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"052877e3c1f6464c1d360f9cdf85ef2926e30dd3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.4-renovate-internal-patch-3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106.tgz","fileCount":24,"integrity":"sha512-5TaXJfiNWgcRCldAoP42FuNn8h3KK+F952rXRnNmI8WaxJjLgbX95a8MutY+EQJzxclLuZpCoWJa9/C0MKfPOA==","signatures":[{"sig":"MEQCIBBxcCYL4Ap2FwuoN6YtSaR5ZwbTqw58V9PiL9e3MvZyAiBTfeGnt5CIR3KT4xdz7shpUDws2KzpzjS4ptxlEbKuLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr3g1CRA9TVsSAnZWagAAHwwP/iNCd/hzrP1QxMevoEO9\ngzMNgV1qe3gpdNXJRzpYClLm/cvcBL71ZDMsUhkL3+Abt7tHkHmXRn164Mea\njEznAiqNdldbnpdjMupSYGsM6UPTS1Mgj2MDnl+jJss9iU+SG8jHM16fk82W\nPJuEiddd8Z8jp8htIdNIsQlax1FkhiuvP4SO7QQ7om1BqnSOMMYowmALKIQy\nTVjgeTQ0MNpfTJp0/HcJPPCPkYmX8bHysuZZEOIBzqZsmQor+/JOY5U8pjDB\nw2AWeZ7pcS8ZbWH4rImKF8Xa/b8GO2wWiSuIdktx44rleNF8mUyLuoXpFv1G\nGxVpgNEkH1OjuSONlLX+5oZvjz6cecV+ur1zWWF9Jb+omDL1pI5Ag76ke+Qd\nzzGjmCWQj6gCJKTd+H/rPDH06nJcXBP0Iy8ZO2JC+4xVrVyGKuWZcU42C8yo\npfhdHsSs0Yy5MIUmA7n4iu+r9TivVoJNSf8+HIuRaSu3hC7NX/kQ6BeUlM8b\nZV9e4b2SsijbOnSEoX2IitlIOB+2yW3ao7wbbHCZemkkEGetltdqE6hEbAkY\nfC27T4X2IESnU/LUqMaCRvgsXWBPOdv+lgKv53gnqREz7/V68+6uvwTU4qVN\n21tEqgzVMUTcFytMUURBlPLoGCjuV+yulNAjFTG0IllzNUipOjFBEFg6WXZU\n+Sih\r\n=Zc9q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.190","@balena/jellyfish-queue":"^1.0.106","@balena/jellyfish-worker":"^4.4.47","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.113"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.128","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.4-renovate-internal-patch-3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106_1622112309042_0.5404510067625861","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.4-renovate-internal-patch-ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee":{"name":"@balena/jellyfish-test-harness","version":"3.0.4-renovate-internal-patch-ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.4-renovate-internal-patch-ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3b9d3ceffcc839f031d0fcd2f697fe05cad49be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.4-renovate-internal-patch-ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee.tgz","fileCount":24,"integrity":"sha512-sa9FUHQ0xjy6dM568sscd8VJYHu7cTf8caB4tVNQYxGTfIdXQjOuRRtQcjtUAzm8GUtQ4MGPCawSGMoQ5uBYCQ==","signatures":[{"sig":"MEQCIC7ou0mZHDtCo4Lo7A4cnK/U9X5SmPHO+/uFJMgA8t6CAiAspiGog4gH7OaBV73VAMK33Yuls2HPUa8Pnhlaq37u2g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108054,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr46KCRA9TVsSAnZWagAAsGcP/2HCnX4VjwqVDHD9LWh5\nGJkgsfy5aPXZzNTBujqcbUMJkiz+Lp0c4l2xul6H8W9xpbsbrGDyixwPn2Xo\nxnj0MZ7VzrVNZ7ZWVoTeyGJvq2XGMICToK6e38OlU3LQ0fxDCp8RUqFhZZID\nDZePsmKtB996xxAqcFN+oIxQXWDW/ugxJpTfcqzWEQ5C38kx1/Sy6/Sc0Z44\nayMg5yMTmW38JavT7EtauYMD8Nn9fn2LgAchoIm3AFURU3FHPJ8MFnhva08M\nmTRJ2UDWVlt+p6FUsiNG6+dH12PCW1zXoc9C7S3ll4P4/zav8Pv9A1ya3N+t\nTUMKbYGJZX/ET8N3D6wuJCjQv5M+MfnriRMa9UeDiql5xzbzrYOn0lS7FKmb\nbMqHng2VaDUTT3lKCZNowA0SP8RM5G1Dbwt8uODmXvUZYYAN7SdsS09XqcIt\n/gpF0Py6HhAvPL6T09+lDwOPmgYdnG0d3+qTtGY9PriqLuMmlDZTQ6kt9MOv\nkrZVuQDoTBkOAAXfVb721rj19CN5FXsqeTUPfm1Pmncd7yfoeDyKEdJzJOTn\nIyijLZrUB5unSx6KTIVTQj/P+K3HxDS1zJv5w2oE0tI4qKcSYNpLW2ttatDh\nIwnSkuTYUjONk668rcExyRlfCbPSoHjasGigUz15rshwu4q2Kzy69zbdHNZ1\nGRcd\r\n=F40t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.191","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.48","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.113"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.4-renovate-internal-patch-ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee_1622118026208_0.14364116527807225","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.4":{"name":"@balena/jellyfish-test-harness","version":"3.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1de8e9a371c961f225aa873d48f9790023e985b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.4.tgz","fileCount":24,"integrity":"sha512-JpUSbITXUCLna3fb9c34dGGt3J5EplggXl/dheqnyIjJ/H8FTOeuTZpSO8izEPNOS8Vr8hO2VBoN3a5JjQKerQ==","signatures":[{"sig":"MEYCIQCprrYGWbIGFp4tDYbFImHikBAUlcTmeepOH2OR01ZSiQIhAI86cBY2KUEZiUIlRkhiXzcpe+KMCrMIZu1HmolfFxpP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":107989,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr49lCRA9TVsSAnZWagAAWsAP/jorTLxFIw5BGIWkh8f7\nqVOrxJ5igYxNBODD8K6Z3XRHoF+WqGrWzvB/omKurtBoaiUVCFddYS0udZmN\ng5odNsUpi8+kDVZazNiuqeROP0JMyEs6MxUDjLhVX+RkQejSXBf0W1nkYkkg\neI3rWu6hazokz8URztie59NTjYD3Lnj1g42Icml+uDR8DvM5GHz3v10vyAPg\nnOQcQ8qO4VdluEOTmrTlI1fLg9DDDRHmHOJOYrbIaBjav+DvR/efuDsPD3ri\nbYsX32HqzSq5GFWI0zY4VQIqJY1+W69wnRYVp/2tmbWdINt8D344oujge55b\n5oyJA+RjWrM1kJJm/+eI1y6zb4NkBPk5n5gDts3cu/30TzeNgj1OXsLQlRSI\n6uD5HakWdvuMHTqyfSWFEIU56EcPBWSpojVQ7k7pQFoAp5eeHmfg6zt0acUa\nrDu23cnaOAusxtV3LL4gdtCpBisdFeYhlpvLr6ZKgFR3m4Gsph+W+oy84/gR\nSJMCau0SSxY7VTTZN+i22VirLCNTj6kw3gZHFiz4ar2QvaWXognkDTWWq9GN\nbctWRj32wD/qHDz8VmsQU70P+7iVQoA96NSgiHFngs+2ShIEXq6vapMb9Pr0\n771xcRIOQAL3W98zguajZEiI4TubuGGcizAHPmLi5INLofh4brAbNpS8t2D+\nGydZ\r\n=SOPQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a1cd72e5c5b5a1e351ecc11a512d8061130513c7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.191","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.48","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.113"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.4_1622118245410_0.9809806985795717","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.5-renovate-internal-patch-31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2":{"name":"@balena/jellyfish-test-harness","version":"3.0.5-renovate-internal-patch-31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.5-renovate-internal-patch-31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ef2c842d64ed6e07db72200c731a9f2dd061b139","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.5-renovate-internal-patch-31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2.tgz","fileCount":24,"integrity":"sha512-uYU4DoVLS00bczYScJkQ1/UW9qZDGhIRlWFeO5sc+MwhwWlo2lvPNp6Mzqru1alJSyCb7bR4FYaBeNI9vw83mw==","signatures":[{"sig":"MEQCIBDizg8f8TOQpwReKkBNiuCfFNSyoITCWaKu8xrbTAXgAiA6+EKrqrUyedNPPIFV2ZjowsRTa6b+XpnovmRdqWkejw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr5DoCRA9TVsSAnZWagAAe40P/3QHwaCQ8DYP9upveVxY\nmtG4yI5nxeOICTSeHiIQx5+Dj+tQ+Sd9mgB63GGe5L2QZY2povM3SmsYDxx4\nNhypsXUprfml4AA5UFwLVo2wq7g+MrFRC4CV1weaMA3q+U8mYWTR/XNEuwqy\njkFhZlsLT+t6TLtSIxloFDdQQRO5a3e6PFvuQNMqmAy913msM+j0ofVc1tB5\nmJcc5llsH6GVf0dsKCsh8afEejqV2phWQqtM161o9rUIN1NKBbiHUE9XU2QQ\njxGVZucSY05YOC16YT+J4ranrrcwVL1cF8An6Fql3LOFpDFkAHvK3K9TWesb\nBoSk1PYAFW9IlYJHTwQLUZBVzta1baW71J3fgP2+UwLxc7GJKJwfatGufdhA\nI1hd5fdjmzP7jcNJYL1GZ0eOxcF8d6qY4e2BmrzB9cA2E76BX++R7R9gd/Tt\nOlkJRM0SWt9tBGb+nci+Z3TFUvgy1oEMpz6gdC78iGKLptDFvURqTT/sclNo\no9wohd1QrJctOddX2/hX452wVjhUWnWDqQ0g6a2X+JwnPK7ummM3jxr2OUMA\n7l41PyMK1Axgwe33XzkzOq498ejVhSGmxCOgszFobm2TqEp12JQ256fQpXrG\nhnvTa53nMYsBKsU/tH/O2/E5H1s64CI+80YI0x5MZdK9ZWD11qpDYmFvDKyJ\nLbnF\r\n=zlSa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.191","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.113"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.5-renovate-internal-patch-31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2_1622118632228_0.04748142125697208","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.5":{"name":"@balena/jellyfish-test-harness","version":"3.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5269aa3f17dd15474d0d543b6b6900b04a8a82e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.5.tgz","fileCount":24,"integrity":"sha512-Y5JdywWJ5Y0aF418igqJxhmebKj3elR6E/SGGokpx6hUR5hf0QmWfMFN+Lj04kuqenbdBqKCmghmOFNMXOQe0Q==","signatures":[{"sig":"MEUCIQDnGvdTAqDX2RaSgtXr+1yp3zsOYb4dPYgj1iNvJ+KErQIga4Z6AW8aVr/gUrDwpkjKy/xQwk0pA1uCV/NKmx3iu8k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108094,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr5JjCRA9TVsSAnZWagAAY1EP/2AAOtJIavq5RCH1+plU\n9NVAwELgZiRWnCVIcr8aFYd69AfAstgKyE0LIjUHGcKpmWMTrc6IO+vtuYXW\n1LxkqDuHV34qWRPtYpkmux6IFLForT2qcjy5bbTo1nGC3UwKH2iIVZ7L9bhh\nmeMrVMiJuvmlhKT8AMnpNrf5Fr1rjMRaksn7EAwqLsU0zsgac3Ge38zY+0XV\nqLejTfSjWnBsWs2uzIDqZtZfEdmibTc9UPPjBsK0yoLHS76KDpZokOkll6iz\nJvVEHpCTLEXuiL3FoK464xXxWaC/2Gwu7g507qrHCse5qxaEmPPuqy62i74J\nlC4Lj8EJlWC5tga0SgHkaGbW/26Z1jgiTRVePmPc8dkLQzrz57Pkl02dXXyo\nPu6ymSsRGKua1C2maexoXbZa8aI8GhFKS3lfv1bom98Uzizr7nCe9H4KSVPQ\n9nY7q3Wcw66Jstu9el0xFWLkl5fRsdZBYukuH/gF9JtQAuoIScinstl6QTWZ\nTzGdI7eXehyF+AO25hQDI/yw+qOUETMOX8zF2c7GHO7weBSGCXaFfDXp8+oe\nQr1ENVsDyC7yeQ8YEfBWbGhYlHMmSXPI2Cau43q6qhtJH0zZZw3UmuP3gqQ8\nitlAelCULTeptQXY8dzzSh74OeRLPszXLK4E/4uqQ6p916V4oCQ7mIGaHXqI\nwv57\r\n=FuJY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6a732c33284995a1893c68d7f102609c5ea4bcc9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.191","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.113"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.5_1622119011234_0.1964796486759992","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.6-renovate-internal-patch-5386992e01234c483aa543cb672761bf9034f3f1":{"name":"@balena/jellyfish-test-harness","version":"3.0.6-renovate-internal-patch-5386992e01234c483aa543cb672761bf9034f3f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.6-renovate-internal-patch-5386992e01234c483aa543cb672761bf9034f3f1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d528e7aa05f548ec5c41e939ef1d37f59660ecd2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.6-renovate-internal-patch-5386992e01234c483aa543cb672761bf9034f3f1.tgz","fileCount":24,"integrity":"sha512-+BUIZJjuD0xNEH7QDBsdZyIjHbWdbvd/ORdMJ1Wq/u/8zF/fJVcMUKqnvtVF1D+1XIGq83ZTZKIvCwRKS/VtgQ==","signatures":[{"sig":"MEUCIQCti0boDDm/FxWaOphc3Pgmm/iSIH6DRH3lQH504YRS0AIgOJ7+7KkSI0XGQvVr0AgVFz0Qt9RD8ucKos38fO6E9h4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr6YNCRA9TVsSAnZWagAAkSUP/jS4SzB8XZy++byY0RHq\n8GII8yzBPK05NaRgRqfiLtCo2Jwm2c0/ebsQHFQEX/n5Pvmc7g8py6mMuK/a\n0RrgExOJ6PUmxcYS2odDkHMYoxXEeZpZv9UVjyP979HEJZJUHLfdSdL1afEy\n+zjV44w/So6w98ovmRTlqhNb/eQz5DdKUq3p6E7z+mepVVEyAGrEQUu+pSWw\nkBCF6hLygKIVYRpo0QQVVIDkmf/KsFnLj0BvNrSYL3vot5PNF6WV1ny63k8P\nWg/0TWyviV3rxC3qDeMa7ahJPtYf9y6Rd69As6ik64uWHdw9FKAminryIpJ/\nJKbdp47eJODqJqJAyhhEgIRqAiIPKqZdoVLdiubxL6r1M8kXufTN+4nhokPo\nZBucJjD9YHFMWXlBvOxykv1fjmJ+C1O8jcAg4Uyv1KJG7og1dEhIJDrkJyOx\nHKwES5+iL5QqpeoedkilPGex2IPa+zqgUbToJlPMjhagE9Z4o90ex2Q1Qu+N\nNFBk0iE/fRTs9zej3Mup9wRMR4eDiPL0m0vIR4UGrQ3jlTcHYlBkIelzKjcY\nOhEw52C5e4tUISaO7N9A/eVt0Pwfw6HeO7KgFxy7VwSocUIVnOvwvmQ20Ucq\n+IZNOsoXrCbhtjiBaYs2NNHGNVrXPKncotztZRcsMgnyRNCNC6K7WFTDS/8e\nGOn4\r\n=y+2I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5386992e01234c483aa543cb672761bf9034f3f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.192","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.6-renovate-internal-patch-5386992e01234c483aa543cb672761bf9034f3f1_1622124045348_0.21031808251252437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.6":{"name":"@balena/jellyfish-test-harness","version":"3.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c5f559ef7db4823178596079e488349413791d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.6.tgz","fileCount":24,"integrity":"sha512-JJa1NHLOLgVFWENNmcTmW40Erg4MBSpQXcxCzRAx8JJPafZAXADqqOqZuDEV4eEYzHgR/s+2gIuX0idZmqUHSQ==","signatures":[{"sig":"MEUCIQCtZ6T//PkW+OmJErI/Rwy67NR1jBXXJiv3TANknatcUwIgKOw2HG/v+MNAR70xX0tDTCFziYuXmvQsx+EpPjm6AxU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr6b2CRA9TVsSAnZWagAADjMQAJf/nhnn3NfZbzqpv9qC\nmdK7fguWHxHFGpNZUcqCmBpYw5SLqlHttTKmb0Xb5g/ypl+TMmf71OJsaQ92\ngaOek1WDv3Gz/kZPJnY905gSZAFoWYB8368xoCXcfycmQajxbLQ1fXeWUyqQ\n6NKKgr6f04WdfnZUFuEIvqGNRZNa2Mw74TELV5RHDrbgenFKoytbf23M9Q7n\ngeJUsflj4LZzrG+Hy6AOuYosbSn+L7IE1sjZM6ifG3J0ujFKw264roa/jQbx\n7PAesYqWlcAFLBIgGH1F0paqWjRzUdnFfe2XrQBEIz41NPjbwVwcfBRprWSL\nm5s9ZGo3Yrex4s93XqLWivlnQ3oM17mumzBg3wlNiYK0mmGilgTovWJ1aQUO\nfEaQ59/0cfM3RDT5yvZNYxhR2d6zDtpj3LuH6o+yrM32PBtp0A3SHfKuLwuv\nvvXTp1KNPc3UvAQQjd31QLdNMnbq0ZLAvnVEkkU37NzZU2qWXrZPna64e76N\nE35E7IAM15jmX/WXFniX7jTr0dbxMgBSoHxJuFDnhmkEjBtEh4J6pUADD9Lq\nx4jmFxoN1bDJQvtMgtUWJ1WGNBdaPGd64SD22t6KWB4Ba+9PY8FlTXIVeW05\npHLNKUslvrjOKBqUKxDHMhZuAsAuiozEY+fzvYfCDVs772Puc32NeJ2fYoEK\nGC4s\r\n=Q27P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"750b26eeac93334d5e98f9f993291821f768155b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.192","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.6_1622124278176_0.7622706721690098","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.7-renovate-internal-patch-46a38de39b81d5fa358423d4468b852e0dd07366":{"name":"@balena/jellyfish-test-harness","version":"3.0.7-renovate-internal-patch-46a38de39b81d5fa358423d4468b852e0dd07366","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.7-renovate-internal-patch-46a38de39b81d5fa358423d4468b852e0dd07366","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f57507f3cffef2c50f9ff790d50d8d498b4a89bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.7-renovate-internal-patch-46a38de39b81d5fa358423d4468b852e0dd07366.tgz","fileCount":24,"integrity":"sha512-Mf0/tbaFRacIL7PFMbNjlRF316j/JIM70dpnvfABS4vGmDJtZtVWlFFUrYchkqcjfM6+6Fd6V3mBA2a6DVzy/g==","signatures":[{"sig":"MEYCIQDu+CLag4uhAkOnpkw23azBC1gs6gUuYbIQHz+Af2tUsAIhANxFLUGbCRjer3q3KVx+8eQ+b8f74qLhLlhkMg4DXv/N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr810CRA9TVsSAnZWagAAHoIP/R/K9j/4Nmts7U4a8bJW\nT+4ff9jqi1NVOtXFueG8tWxGYV+8q5ScobjOu0lp7xlcRfq0MqbMDBB5oax4\nw5dmXlXASpXhokmT1KcAUX9YK+HwLYuFeIHxtPpAKynWAR+8xanCsXuBgfb/\nKBRsDuNWE9Z5ZFB24EAX94isT3vxR2XAboGdg/dalsZIOAIVdW60PZru0cIk\nGGT2ukw4dzqmFmIO3uvcVWY3z+ntlmBXH84flQFKZkNxjxC/9rO/cw4LD6CF\n3CEwR6uFyxUF3Yh6GAxwCxOdUSL2BO8EDR0JnThjo5cLOaRN+OuyAPlV8VJ7\nOxRnvD5ZvBb+M2Md9egt4U5/T4nGhc76Cs00L8m3UCKQpUPoBlax99jZhsYp\npQZlr8qaqEtjt8It4DsmbKzwJ02yCniRLayW8jX9TGmQxUPbDMz8QbIQIXr8\nL7z9MWr4nVm0tXKIvjq4FO66lGYxWWCDq3bvmk2ka2Hd6+HSoihuVBuk5UkK\nnLytrCf2SjfzkkCSplq038UfffHADnAGqgV/BkRVIwi5F970mgo3Yf3QHXKF\n4fHXRBikhA+Au8UCEgB7p9l7RGiAZISdnSBh0/K5GUXM1rWCD9Qbwdpw0fAn\nLY7szAwajN+iu52wv+Fl0l5R9D6R3k9lN6IMu6yvE+ZTKHAUsaMyqUTN4kDH\nFeXR\r\n=XLAp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"46a38de39b81d5fa358423d4468b852e0dd07366","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.7-renovate-internal-patch-46a38de39b81d5fa358423d4468b852e0dd07366_1622134131596_0.23478229846572085","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.7":{"name":"@balena/jellyfish-test-harness","version":"3.0.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2b9ccb8d9b40f1a85c4cf3b258358e8da7c892dc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.7.tgz","fileCount":24,"integrity":"sha512-UQw3obHHCJZ0h1w1h3TAQApdKnWD5bjNcxk9g6qN1FQLipcyHY2oDXw8ioV/XH2rUqV1dzRzJnRKNz44hd33bA==","signatures":[{"sig":"MEUCIQDjEXaSjUBWnirSW/O6ZlF66FloPsaKRNW0s0hwuetzkgIgP7xv2ps3V4D3DsdsRQ0pIK4Ft8P5O/y64lJOjCIem4I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108271,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr84nCRA9TVsSAnZWagAAPh0P/0wPhp25MuURnTvv0ru+\n3Rdd5Zo9z4ANuCSciHLN9G+KX85k+1So5XcxmSxaf8xn0LlJyiLnC31TTsv9\nF27Cjwa6EYM1TqD6Ozb/GuP5z7UFl0cACxVgTzs1Eq0gKXwAiF/Cdqa4CPGX\n0ApJ4io+3InKmmrBLR1Cjj+hdu8e9XZnX93oOEQ83hcXYQvH5IiVzlBCkWW/\nQPkqmSYrwql7MWhZwLW/kd8Y6gfsLOmhhbI4fZX77ukQdee/dutqMziIYRmy\nWvdKg8ZakaKdSxxOZE5Wp45FCctjhP5tUYby9TO5uJXonR1Rd2fgHbiuuXNP\nTthtWeDBKfYsUY6/2OTT1mBMbGvDQK5A77wDkhuT4atqndwrac+Nh8Vfni60\nuCBmlj6EJAY7NR2HR1vxZ6+o9VbSotX/CJidJ37lWelMvuvi60oZZWyEizAn\nfTIg5a9DcOjTHxjdzSb4RudIffABMQ0Zaf3vSzVQk7Gg0G5O4FylBou0PMh4\n9oEJV1K118XSLHNObBmV+qoWIT3uPi419mYdylk0bvjGvlTRiAtEurK0bp12\nvGKtgrQmiBq64PD/C+/uRuGATADrrSHFjtjDebVloiZXLcsXihQejq9mIDLa\nnA6g8s8AjG0ub0cdjVmsQQ5Vl+FnIT4b4U02saSfW3fxh/z6rIWwU7/lNo0Q\n5P1N\r\n=/i7X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ab13f081ca8e78be53a0a987f691e1b6f35daa13","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.7_1622134310919_0.5727533645713783","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.8-h32-evaluate-links-03f32ce2de5cfb27bf46aadf63a10ea3a38ca291":{"name":"@balena/jellyfish-test-harness","version":"3.0.8-h32-evaluate-links-03f32ce2de5cfb27bf46aadf63a10ea3a38ca291","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.8-h32-evaluate-links-03f32ce2de5cfb27bf46aadf63a10ea3a38ca291","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9232d399f246cd8bcd58ce7a5e2f862b71bc4be9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.8-h32-evaluate-links-03f32ce2de5cfb27bf46aadf63a10ea3a38ca291.tgz","fileCount":24,"integrity":"sha512-iJlfksaYEVxq/Cjl0tSeM8QQ2PJgSkAbmrJC51rBGKoAN8nSlrHS0IeecqJaoiiQejZHDdoSJiT2nSremqqS6A==","signatures":[{"sig":"MEUCIQCNz4V+cpLa70ZAv2iY+Im6lnbtH1M4UHfap7BW1ucu8gIgJvu5JOx/6ht2vh3b2GGpOzj8QNZwstVWHDuDHrGTxT4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108459,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgr/qQCRA9TVsSAnZWagAAm5MP+wdbXpqzqeWfNEr/3WhN\nGG+8l8ftnUMnwLvGXMO4WIQajCc1ys8nwQqruzFJC7DAdg/gNDfv2mmdT/ja\nDUaD2hTXtxh3ZFaVgQNAacG4q2pNCWc72AHXRi/BTDT6trgewQ2ZeD8phUWQ\neoJSY5GKhOqr/Y/LSoOn1YadT5rui9AcySCMztz9VPDAm+DOKJEgxtsLoiFW\n58K8y8OFTXa355jr/hn+00DeGMaUfbg30pTMyBDrDMcDfRhh4px61sUsiZgl\n6vFq9C+RtuZhzMQkvEUYT92AJ4G5sb9Zi9OQhbkURMHS/h/ZlahLs4Pt2tJU\ncm953onoHQnD/DAClT7Qjac5J1DhleJHEoXAXAQBx9Fv5n8BZX+UcRqlEj7K\nBIMZqplzxKvp4m9CP/ATG8PcsIWPFMWzQjkUdmiTEnl0JZ8ds9dpdhSvlmyu\n0sizyk3WZ422wOeGdFYls3BZpE/E93t5mI2a4yGmynGmFvt2WgwgIu0K50OA\nbQ6+5KM9a7lkpakrRDkxEBo1vFXUNklsWi6hJxjl/NlA0uFaFHMqeg5Q/HcU\nsHpZYqRCeuDBECMEFNCzLIunU1joS4liOoBnqekq+YWHEGyfZUjIgujxNozL\nMAqBL7l59fPClgK4g279ooCHfYEFMekUEDcvbqoDJKY5509hXhOx6U4gciwG\nzKRg\r\n=BOvv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"03f32ce2de5cfb27bf46aadf63a10ea3a38ca291","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.109","@balena/jellyfish-worker":"4.5.0-h32-links-in-formulas-0d72c92f3448b4c7ea60f2c47581b68401b14ac1","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.8-h32-evaluate-links-03f32ce2de5cfb27bf46aadf63a10ea3a38ca291_1622145680222_0.69107443315974","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.8-renovate-internal-patch-a8699ddd92299df03eb2f783c6efac2d5aa0ea87":{"name":"@balena/jellyfish-test-harness","version":"3.0.8-renovate-internal-patch-a8699ddd92299df03eb2f783c6efac2d5aa0ea87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.8-renovate-internal-patch-a8699ddd92299df03eb2f783c6efac2d5aa0ea87","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e753981c98f11adf5f36c941ca0035c6d89c02b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.8-renovate-internal-patch-a8699ddd92299df03eb2f783c6efac2d5aa0ea87.tgz","fileCount":24,"integrity":"sha512-WsfryVrXqGjEwPcAzHAILq5z51od0d5nWwf1F6zs/lW9kV8WK0A6JvCyMmNZADKLq2oEPnWywb0amhpzmR7S1g==","signatures":[{"sig":"MEUCIQDQ1QXzUntl2gS4jZ6857/CSAXfOit2h+IS+TCpuhvVewIgV7OWTsJNjC6i8Jpb68Pjb8gdtsvdnGyFFx/ZQHthyo0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsDraCRA9TVsSAnZWagAALhQP/jkKID1l88oWxapPOg5m\nEI3cK/7Fcvy8l/gqMvUx2pKeyqxu/zsw9eeUZBQoCS0piBs8jKquE4jJDMu1\nZKbKZ06d6hiF0ViFO+Xl2oaJu3duDCSVMOmfdNZFBFU3Odlc2x6WSuiGlg59\nnRFtD9AZa4brnIsJaPLUidojlYXafEZ4gaGFNNlDmmLwqzsDaD+pFcEDfIGS\nsuFbpabsVW+lY7GolpAr42P1MsVahPEv7Z5Ae3jPRKLoe9BKnrFspULjjpH6\n2yU6yibKsSv0MqM/7sBVAm8hIQZN4icEOo9W1tMDJzywrIEyB/cc2IISLGyr\nrj6W5PUJJmZHvWp17njYfvea+ts3zZaKn8nFewWsw4CwxlwXnGbV1UlBBQGp\nd0t6mfNWoIn+KDzF43vj/ie6nARMNeeXMWIPPSeTFhc6GwOzJfbFXaVqb3fw\nYwF4+JClJIIVFOU70iKINLvmv3up6dWfL1/Gn7lN5XaMfwQAKUqj8S9AWC/e\n8/rDecxSHJK1kfdIOtOzamzSPJHVVLAx6jiXGQiUPEKhM4XmlOHMH8y4nRh0\n3lpk+blQUuc4WZMTMr6OtRnKIHsKvRy+ACtOhzeN9gOyr/cPrhL0s5jlXlyC\nYky3mBkUuqlRTtuHXo626VHAhDL7YPd9t9A5EY1useCfIG6rVMurbblRLV4A\n9GbA\r\n=mrNp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a8699ddd92299df03eb2f783c6efac2d5aa0ea87","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.8-renovate-internal-patch-a8699ddd92299df03eb2f783c6efac2d5aa0ea87_1622162137385_0.11746405191867737","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.8":{"name":"@balena/jellyfish-test-harness","version":"3.0.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e7ae4b11f3e5bd62b41b3abdb5fcb33e8dd707be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.8.tgz","fileCount":24,"integrity":"sha512-iaPrlB2LquAVGB75mifCCGmdeIVpz5lpSFOhrI594kgvTAHD4/mDy/YzvKiYWEWBvXhL0HpKMlRD/zMLlyfPuw==","signatures":[{"sig":"MEYCIQDyMnPUxE56uMXLGML9RRowK4TEnzhg81zLM9QzErStGgIhAKTyOKjH61Uh0m0iS9bJU69U37420dAcYFZAaRGmWMdV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsDvnCRA9TVsSAnZWagAA1H8QAIVuKvSjZnIizm8zttBa\n+a+l8ffzdMh5jS7zD2ZDhZKieBYDD2i62SXYZmCRWWoxyfun9ry2k+20YZuW\nTsyxkDbFEHdO57uJRd+LpBv2EAslzyPChhi984hYnjCfRl/9asyqCL53S9DU\nD19luNlVeOXOULKgGoqGbvVqLQkh/3WNme6/Ie2Yl13Oeiebc/xMxVzEm9AF\nG0BEkS0AwiC41T+P1fZ4uSMKhCs+4Z3R+mWURNshddmCrTk7p9+srB5eqR+Q\nW//X/Dus02638D4bDmPvf6t0GpTFATblamETVpesR5EbKvP9QZS/yb2fgOL+\nW236ekwTSeohpQVZuSpqKoX9nJiRzF7IDeN3NVVOT7e5nIVnOA1Oxf+vv9CU\nCDoMoeWtQJ3yVK7Z04TZHHKZCmTfl+S+n0N94biGe50aoJSeFOcjrusG0lA6\nWBciWiAX+yeYTWAhJsS+w5v2GSv71ROrQxeWvfyanS/YM/8I/4xtgsddOmlR\ncN7d6GuhFYc5kSxaaYaUJxqsFtpQ6DMf/Yx9Dar1gdSmifODW1l9LMhccAT0\njQNVNZuitFUTV5yaW3VBt3uIOuWb7M7gZxohKOBSBKilyAqXhY4kqUHEXWbp\nzt0ipq7YHYb+1tXEK78fioh041S5m4DP/Mj0M3ToFNao5w2IMG1+blcs2q0y\nWVaB\r\n=K2z8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cbfe1f83b7c98d1ab3531fc362b2cf0eadcd4d3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.8_1622162406832_0.9830517039899973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.9-dependabot-npm-and-yarn-browserslist-4-16-6-8817564f77e04d6634a30e0dec63bcb426f27fb9":{"name":"@balena/jellyfish-test-harness","version":"3.0.9-dependabot-npm-and-yarn-browserslist-4-16-6-8817564f77e04d6634a30e0dec63bcb426f27fb9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.9-dependabot-npm-and-yarn-browserslist-4-16-6-8817564f77e04d6634a30e0dec63bcb426f27fb9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79dcda1d5df6b503a4e0a241a62ed75c61feecf1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.9-dependabot-npm-and-yarn-browserslist-4-16-6-8817564f77e04d6634a30e0dec63bcb426f27fb9.tgz","fileCount":24,"integrity":"sha512-sc+ItzGUIFFNB8n4TvumD0kYZBTn8KJosCroku+Nav99OqIsxg8AUqt5SMQ9Ysja/BOR8lI7w2VoreGxT4E9Fw==","signatures":[{"sig":"MEUCID+4foXmjZugSQHMSotqY5dMYIOP5w8sDTicSYfvdXfsAiEA0mrfCZsyBEOG1UOqvUxr3kz2PlIw0Fe4GBBc0Yu61sI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsD8ICRA9TVsSAnZWagAAFEIP/A4T4zpKjZSboFRk4MF5\nG6IF6lq1Xiw4GKqDN0PAGBuUhzDN32a8VhFcIT2mfrkphXWp6ERoz8smnvnn\nSrEctCc1ZdQbcZIxwlaqoHRW06xUTO1xOPr5Wd6gYUOKph+9XRqhJTZXtnFg\ngAR08JfBun3WiniDyZUb65HMwB8ALToB5QLWg2HLXgiOYUqj2eOT8T73Kmri\nILp/O6/eyJloRbA33TcFfMVaebWh8PzJCBj5tY2KS4F1UUlcC4KNTKn/0Esh\nLRu/E1xGdsYMi7dyBLsuzkVW0P8Z6/Rm0A54/4PB/u2+lhXHzd8wu5VYXTKL\nHvoKFPpAEdW8uGkVhPJZebKdaRiphH/NYPTQqUjDK7Cfe+MdPo78t1yXQ675\n7t3D8SaaIK35NQ2rJmASblPxapHEJsc584fXsCsdanNoC0gqYxaHh+K+zz7J\nAhDm5KmtCCbw52JpnUxrtb1l8K6LKGwboBhW7fT9MyC5ui694xeZSz12qlUk\nOGspWMZ63L8VvQaEKx0yr+vLA7WSSmDf+u48DgmRhCMC3LXXg4ylVeacMb2b\nTfh9P9oyzq45SJNZerCjVqWGkKYuvo4iRcAzBRQfsVTG0aniFeKFoYN6+S8A\ngJk5p6ystPjsudprIcP9YOP/I+4a2Iz+ZBopP/cnCgmM5RIC5t8oIeaivAs+\n5B25\r\n=/1VZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8817564f77e04d6634a30e0dec63bcb426f27fb9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.9-dependabot-npm-and-yarn-browserslist-4-16-6-8817564f77e04d6634a30e0dec63bcb426f27fb9_1622163208029_0.5249049570282449","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.9":{"name":"@balena/jellyfish-test-harness","version":"3.0.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f88362cef8bbf7ef1019e3f001114ec9dc2d0a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.9.tgz","fileCount":24,"integrity":"sha512-v3jZZtfRj7h7LUjX79OKKuvv9fjTQxJlu2EYNaV39Gy6fuBzajQzxhSH4UAxdFn3/t5g3Sv7HhRRRKHARY5Kbg==","signatures":[{"sig":"MEQCIGUctC9vu2o6DPXhNrSCOmUWAHCWmMieI8A2/GlDncYxAiAWoUckRdrtlJbXnQW6EIFg2X+yf8ZBZRCk1FinDbDfsA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108476,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsD/UCRA9TVsSAnZWagAA7ccP/itfFRTsqOT6NqA5CxvB\n7S9tJUuFvRbCnJaRBZcOe0gOoFxzaWDsi0cYM85HInbppjtzKDn0rzTRRwr0\neoaszxZHFNmqY4ukgKCuSSoxsdHSz9cpjm1UJMoc9j4gLM+dPfufshzhOBiP\neNDL2lFGMd9KD6RuxZ1YNh16psdxLew1OJy5/6EGOaAeVLP5cJYGP390cnfv\n5oI6jE/QWEUhsFmX5zsgmKw2N5ZISCtfgRMbYOE2MiqYVTey4OCuJUTkHq7v\nFjE/nY9LyfDtSEa5b8IUeXZpvQWnKmTjx2RqgSDEz3BEfFUt142TdFwQO4zB\ndBaGxqQjqBTUBjDQzDt74ECgLTe7HBtEWcstRIQHuJ5QHsQgeWvSlmU9a/nI\n5F4B7vKAO4quh+ckHei3Gee+WJJLBYw9wOw8PRLgjiwiCOjcYBHT+1rTjHVo\nTNTJhwapQlA9dxLvuVmp/vKf8n+10GSGrLhsgJl6IMlItcN3QBOgBcrGS3qC\n2bu5WbfBaggOPGaS8QQG7mvXuOzI01Vzc4ixZ5GfhmQNmizc/cVuYPd2z5Hw\nrdSkhHHgaZhcLCnlGSFG4bBWP/eZO6wjborE9O6fp1k7nIMQorC21imxGaMI\n4wt+VEZATRCorZ+9BVQhUuD522EwhPLCuDNSMUaK9EPtttTci+sLRR4SkV7r\nqCCK\r\n=WNU2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bdd24a5df178239bf956b340314b36adf5ea6b37","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.49","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.9_1622163412110_0.7247010418315873","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.10-renovate-internal-patch-4d83942c848463082d1c3114b3103da885e0c3ba":{"name":"@balena/jellyfish-test-harness","version":"3.0.10-renovate-internal-patch-4d83942c848463082d1c3114b3103da885e0c3ba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.10-renovate-internal-patch-4d83942c848463082d1c3114b3103da885e0c3ba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f73353c1cfe8d2304d3a353c195d8fc7ee2ebc0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.10-renovate-internal-patch-4d83942c848463082d1c3114b3103da885e0c3ba.tgz","fileCount":24,"integrity":"sha512-7TmpFUj3MjEXbtBQK9VOh6nGSHiFK5WNNjpzRHl5itB/+5cyROhBUOXHuj8LfVIfsZfhB4JFouJ5jgerRlxMdA==","signatures":[{"sig":"MEYCIQCUXVolgy5ufJ0ula6Xvdj9g3fsOkG+B7odbI2XpKypvQIhAPvSJvLziiNQhrrarJwUlkc2u9DSQujm/vJqmauhrfvJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108648,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsEEpCRA9TVsSAnZWagAABYwP/RPkoaWwQBgqqywOeeXa\n22D2tJZ7OqtGsskfgF9/VLYkIxQO3y9Vxh/gBzhwzLIwmYddluAcclcaq6vE\nDNk02BjWZb4+14QoMeOw+ojZCjyR5wNsS15iJOt6LShsecxu/SqMnoenc/SN\nZFVS5XHj5RS8DJTElf/nUS0IBsTcKyK5VSFb7BfpddrSsOCqkzqbVyvJR6gV\ngA9FLCnH7zLij7YypNMttBAj1YjC+XiHRBn+fjthdPbvEOFcnyehrU33ADPx\neo3yAlrcXEewpXvu3LRFhqrI2yalf6aRW1S58qzHhBXAgWaWZ5tiNQKPib3K\nVuLqwRyU9CultbpBjTR9/CAgZNZ5ItjjHMhr37gedrUC7+GtKCOkIKObbAXe\nHXBMQkCooVi2cnRTeMmvCbUADdiuToDOWZskRbw/X0PIS6YOvG75BlQwYD4C\nbTqnge9TbSR3SOodIeVn57j9QYSfBm05fre8Q4/I0SH6+Ck/cDymSuQkCX+j\nxnsO1gXVUrkj7iXivsnTkrF6u/FlvUJwBvIyZWEGN3Kw7lydP2F/+D73MbLb\nT/VbJHSJbJP71y3H3zi+uPPNlbFN23hRtLh9jiW2bpJuwg+buR5RGP3T3AxQ\nHHTyVJdJbf7eU8VfpWUdp1BA7qTaNovDNA8T/uR94cS6JI7E5GSjnyYvUGHJ\n1Emu\r\n=QNaP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4d83942c848463082d1c3114b3103da885e0c3ba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.50","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.10-renovate-internal-patch-4d83942c848463082d1c3114b3103da885e0c3ba_1622163752941_0.6633984356487315","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.10":{"name":"@balena/jellyfish-test-harness","version":"3.0.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3fe3cf49ba2680ad9df50128de19c3a14fbbfd7c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.10.tgz","fileCount":24,"integrity":"sha512-5Cw7LQhi1TRWCp3MiRbKF0TSbgpZzZx+nIMQpQ9NupUQWp4HJIqCo/ukPH4SCV10HTC10KKy/oO3Dh/jMv/hlA==","signatures":[{"sig":"MEUCIQDXTFJLf04qeNlwkZzkemGj6G/VwT3XqbMhZj8quirASwIgUAzrjXSTIKitGaV5bdL3aPglDHT+pV1POCLe/vJ3XbA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108583,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsEHpCRA9TVsSAnZWagAA6NkP/iKQ48RfGkx0j+Dx/KuM\nIUjpvCwmTVdxZnsDWuTBm2yY9r1e8Tw/FuzohRxR7bAr5nptkyXLwZEryg12\nhLlhk4ZoF5jSmApgMBqn+qDYpLQXKc4x7OoGFrfM0XLDuJvJNfolpevKSoNs\nPyXa8op8wt/AcV22hBsp+tTTsZ++NKhVDkziqjGvTcgILeXJe8LMSkoalznf\n84/5Zyr7TK7y34IpyPG7H83oS9GaYaJOJMm4UrX7wvxMPYYdH+zeWOZtxEgX\nvIhMI7HG/jsTUEqx1Xa0o2X/nTmqawur7J4jYrAOXOG1Dtwd7GbQ7nHaSOUQ\narb7m4oLb49xOppVW2P+rh9YU9QoPPxoWiFnES6unGMq9MoMOqQns6XNRd7z\nI3RAvI4IymobjeU7B+K6Bga0fMZmIdrnB3QszVLx2EEpIW2U27Kf05f0s7Xp\nbKSaUav2oY5NchdidHJ9BAbCVsDh7xH10ee8CIWtYYcDI5eXYjvN7D/bB0GB\n73/EueL6H0EAVNLHWc/HqAVKM+tEkdbL/My/LFIfW6X9FEwIOKmWKuj5qRO0\nVPQMywCvIBO3yOaH4jxUcEGqjwWVf9WA/Pt6qI4s/qILdRysm1EPpSYRdsQR\nnCdmwwGMPrpIQXwamf+h1xZBBzd1Wg5fFCmE12gxMqOaNOvgzADcUw29Yffo\nK4Bp\r\n=xRPt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b46e5151e70a58f5d321952e83cc31236e2c0955","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.50","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.10_1622163945324_0.8290273867557296","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.11-renovate-external-non-major-41b776db8c4ec619edbe06c73af415a34fe1f795":{"name":"@balena/jellyfish-test-harness","version":"3.0.11-renovate-external-non-major-41b776db8c4ec619edbe06c73af415a34fe1f795","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.11-renovate-external-non-major-41b776db8c4ec619edbe06c73af415a34fe1f795","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8d27ba525f1dbf563aa83535e976e7b302df2bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.11-renovate-external-non-major-41b776db8c4ec619edbe06c73af415a34fe1f795.tgz","fileCount":24,"integrity":"sha512-tGLyYfI+63WQIxDtIWfCz+sTlBhornCkGyGfrvS8MueUz7u7eq9Hl08kNv/TVSx0YdNzKGLc7TYWvZrehd/x1w==","signatures":[{"sig":"MEUCIQCdrxG0d34GmDiVWcakRbAVYTv4CqJ7iYXlKoUGp/QtGgIgVZwpu2DBrO6wM1HdQ+Sd+EXHoOZSZ1rHqtY8stvbVow=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108730,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsYgoCRA9TVsSAnZWagAAeswQAJP4zQsTaWnKtI1SRCQQ\nozr63/pY6yD+rWkSEMMXtRUrL9tsjVCx2dZ1LRKVM+IJ9n9T9e3DURYfeAMT\nEu1houlPTSAeEpNYbHjb8u8JHnKKnrUxREF1LoE2a1nmuZlfVZyU/YQbWo5v\n7RpdJWxCeR1pEGzNwZINyJuhMBOBAs6ZAjBIQCJ5azF1ggG90DYDcjB9KhRS\ns1zshhVIL7+6LTR2GXRQhFb3yp4QD+lhzZfVfBhFLA0DF4WF91zw7ttlc5NI\niAeFcPvj4QUqfb2pSNjpvkeRxxAdNSI8CWHGVzq6HTDYhnIrBxgYRQrLtSmd\nwd+ymaLfRalPk1OpfQM3aFiBL/g1vTdWShfKppZqq7cjacDmQIP6EmSWQRO/\n/3MWDfOmIzlHW1VbBlqNMuEdhXVAjeWbFQbCfjghchLQy2Pufm48NU9Ygk4h\nVU28D6oSODNsfTEbLYny0ZfxqdOAConhArJgTQCdFgsGParPuPYzquaLKShb\n83yIh9aDrml0rEcQhHtKyX5Yeto9gyQns+cetN7bf1icCC8eNxP0bi2zIxuP\njhCye7GZ8W3Tm4OUre07SdoCyDz4TjeyyQLX7eGIWCa4MYok9J8KD1imCx6A\nZdYdZ7ZtxiyjIJwrTqEm7LAH94Fa3VL65OUuRtnsr2s20MhTgCpricng6fHT\nfLAU\r\n=oF4/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"41b776db8c4ec619edbe06c73af415a34fe1f795","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.50","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.11-renovate-external-non-major-41b776db8c4ec619edbe06c73af415a34fe1f795_1622247463922_0.9089462806555701","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.11-renovate-major-external-major-5cdce438da6e0abc664b7ef82bfc060c9341a5b8":{"name":"@balena/jellyfish-test-harness","version":"3.0.11-renovate-major-external-major-5cdce438da6e0abc664b7ef82bfc060c9341a5b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.11-renovate-major-external-major-5cdce438da6e0abc664b7ef82bfc060c9341a5b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85a93a0723f7a20682713f5660f5eb7c8d7c2857","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.11-renovate-major-external-major-5cdce438da6e0abc664b7ef82bfc060c9341a5b8.tgz","fileCount":24,"integrity":"sha512-VQBSL71KFJivFmZCRaUOT5qpSNl8g3oYCIpO5BSCXQsKwWq7qfpq9Ox7j+tpBZk/znXpbZP/3mcjdYsJHx45KA==","signatures":[{"sig":"MEYCIQC5oDNBe2518X46C2L3/vJOO2YvHNFLWHSF3EzFhgoyHAIhAMzp3EuH8MhOak4mCGY76qvSpJErxBlSAP1+wyT3V38t","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsYg8CRA9TVsSAnZWagAAtdcP/1OERnm6U4S9Yci6cBCJ\nIUy5XPvQmxtR2WIB23tBAOCAbYVJrI9reGRQiYs5SOVBj33TwocbXb+o6irV\nCrVeIPHIgBGYIjmVOipqVeBAGFTGc2y0oGlsDg3WHmBszKHj/lW14gFsWRIF\nYOu1ln7TQEfgDCXvleTvntCa7N8sFIaQzr5C705IXcFo4RrBGUhbkMXxITjd\nubR9Z8wnvEY1iTYtNJIXpDZm4WrPovAVAQA9ImmFWx3BTi/LZ+1tyn9zB9kg\nRERZBjGnJY0Jc5HykyiY6aQRcUm9GvR3tnVyyQr+7w20RjUc+57bDk7DsGq6\nc6tX1qxUHwb3smTD0OC1+33JkYa3ZsPUsTe+Sx+h/q/B8XHAldkxaEK+pktQ\nSkuTCsTnv2otxxs1hs0cE3pg1S7HSwm2bF7IsqLoRn/Hu2hMKST0GLe05fXm\nAEPL178L6BcKlJI1PYvQISDAt6p2QyjUL18tLdFqJGCN8IzokCr/jm8b8kQ5\n4QPubGe1waAF/fECibwgukSoi4KpQQfgfegqDQR4BGsi0Wzv84Geim5BmEQO\nUkfOitA9h2dfWnuP6dD1e+32z8DRBnQsY7EAqxI0GyjyDCD3VbO5sRLAI2Io\nP7VyJXyTefRPvfgrNInmNl7qoTvcMmRL/59Wtdad4+JHB0e/fYtdIFHYdcns\n9gai\r\n=W1eY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5cdce438da6e0abc664b7ef82bfc060c9341a5b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.50","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.2.4","@types/jest":"^26.0.23","@types/node":"^14.17.0","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.11-renovate-major-external-major-5cdce438da6e0abc664b7ef82bfc060c9341a5b8_1622247483582_0.9011516896191236","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.11":{"name":"@balena/jellyfish-test-harness","version":"3.0.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f1e18e9883df8ac1b8aaa1cf369c64ef2cc7773","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.11.tgz","fileCount":24,"integrity":"sha512-vGE8x3EHoN7o1edqSHD2oJxjFC3siZm2d0sSO3Eoqx5VL1EmU7pN7AQKA1QiJv1sR6zdfz6TOGVKiiXVRnpgWQ==","signatures":[{"sig":"MEQCIDMYIVlvi2+IoD/KlXwQvMDOi37EtZNne2kRic3oCU5FAiBerPay0DjDRzD7L8NSdZRHH+zEWAzn5V+OA4rGtcjX9w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsYj7CRA9TVsSAnZWagAACcYP/1arEE5srRtHt5Qwin6N\nloSz4LjYgHCp8ARty/fnMS6Hxagl/Yc8gb04mxB3GwbeZNuJ4iZMZ2ZVA/97\nMoQtBRASmAPvm7Bh5gCpySABNfq3B67nro2wOeejkFOloRsWPdqX1PRLLERZ\nFzuZsWZg3b+0RRlv3jt2St7TwznlfVIPQNIqdY59IsaycX9DpDDt/m4214HC\nE3D25jvyJj5e4SRqu4hAVV0teye5phsuAsoyCZsJJsJGPjWgZfYtxZey3HBB\nAqD0yMe4mqt6wOrwGW2yvKQd1AZgSB8XhqRhhI0XP4mHE5oCENTHVUYs9wAL\nUSeRLSarP2GREHjdmBhk+eiRYuRnBKEMZvpvcrXyAqCRWp5VyJy/OBJ4ezk/\n/jLf0N5xpzmFSm4WmQ4GgQQQf6oTvEh06kS7AQTl64PE87bv4ZtR5c+6ofhw\nPs8vD/U3QRqiFdA97QQbx/Et4I8w7+VQ2GJ1ytGto8LVAzJZjSnnP7PGDKkl\nXKAUhAV9LpgYjF1NzKSHiQlC+boUPi3WiClPkQGcBWFcQx//xdxdPOYbhaTg\n4RAXmlzcgUbu3N0L0sWwTmQ5hfia05+ivghovQcVzysp9nyTVcxhIyX0oRqD\newk0OYsRyth6f3p1UppyrS6mjXvtusE6WjecQLLhl2REMnAfFdvDJFh1bzWU\nQm0d\r\n=uFo1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2408b53e1c8e7bd7c9a8d81f94ee3045e0f369bc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.50","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.11_1622247674501_0.9589170535901674","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.12-renovate-major-external-major-cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4":{"name":"@balena/jellyfish-test-harness","version":"3.0.12-renovate-major-external-major-cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.12-renovate-major-external-major-cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"06f781dce19b9e99ded07a9d1239624a6bf4c861","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.12-renovate-major-external-major-cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4.tgz","fileCount":24,"integrity":"sha512-mS2lTHqBh794pyD4/tYP59N1fIK+YohXgUwGLof0UCkyUeV/iXo/2zWQwxL56s4DsHhrYck8CLWmTitLnPzwhg==","signatures":[{"sig":"MEQCIFRv1f48DP0OLZ2PtK0bln+qN2aGe4SWh6A6qfV9r3OTAiBsFoa81A23xfBTuIUymRZ0osVsz6IuvZ1cCw8IYQg1Sg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108813,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsYoUCRA9TVsSAnZWagAAb7IP/0LljDUJx+TC/85gEgKb\n/Mh0D4hFO7tfrVljzxgd58DZV3tQupN/PeatR6ma3HOJae4ULRY8uz6hU6qu\nZAfR0UXeHkf38fnRtF3KQBOCKUsLNlCsJPX/ZqwseZUsjfxd1XylVioCxfje\nX20TQWDc5f5A9ENYsdHucU7StS+XRrPqZ8QZ1SJaYdUXQ2YpWnOlyp1sDRWU\n+wkK7wX/ELWEILQtGuxpI1ST7QlyB5GBEL8pE3D7LPmzcPjz+uzFtfvk3Q0X\n0ByTIkUZVB5N3zFyjQ0wQ98hTb2yuQVybBNvXlah7tRoyBdGJzUu/0opximf\nuaene3AKt+SQ4duenvnDxlDG3V9kLagM+bHo9RkyOBICV/M7zFY2/Rxm4wMi\n00Kvo8fVutOcXoUgSiXBZhAjHGLCRyF/kW3WCU74nD4SpnGGGu/ZVm1MMhPn\nIXyK0BRcr6+ZzIZF+GDwU24ElWvvN1RkcbnKIYGcDFC4xAcyrjuhxlNQZ5YK\n7CTIChPiO0PPIKy3G1YejKvV7FfH86DxIik5vEzNiXg8FBAwbtrbR+TWX40F\ntR0IwvfUfcnEM5BbrYgJgpVVuoFrOg7CuHLALvM+DxY+YlFhzxNpuXn2OYEj\nj661H14YdB9J6H3DUGKyAeB0pR5CR4Zu2gbgG65zh/Wy0oe+OLBkYyXtEHne\nxnCe\r\n=Y3Q5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.0","@balena/jellyfish-sync":"^6.0.193","@balena/jellyfish-queue":"^1.0.111","@balena/jellyfish-worker":"^4.4.50","@balena/jellyfish-environment":"^4.1.24","@balena/jellyfish-plugin-base":"^2.1.114"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.129","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.12-renovate-major-external-major-cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4_1622247955774_0.9650321870952836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.12-renovate-internal-patch-aeac43ba7dca94f6dacd7fe3c8c439ba51a87693":{"name":"@balena/jellyfish-test-harness","version":"3.0.12-renovate-internal-patch-aeac43ba7dca94f6dacd7fe3c8c439ba51a87693","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.12-renovate-internal-patch-aeac43ba7dca94f6dacd7fe3c8c439ba51a87693","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"66b899cf88c00ed78661aa82777fcda99754461f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.12-renovate-internal-patch-aeac43ba7dca94f6dacd7fe3c8c439ba51a87693.tgz","fileCount":24,"integrity":"sha512-KisbWi8yDQuIzgHZfZ59XvZdEt0wqZ9H9KRvGKLS9WB9ACsckszd+QRXuXnV9c+G14/vXgb1BKMzJMGnYvFpjg==","signatures":[{"sig":"MEYCIQDj1e6kimDHu1maPEEY2GQ3BH1orMXbDpM9sihoh4MDIwIhAK5bMEVMUHtwOLywXivJyrR5psF9CCB4D9DeC7d0i2QI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgscLSCRA9TVsSAnZWagAAeX4P/0OYr1wXQEMuxVTDUMoh\npD5gROy5+vQIXxi8OXoF/qexwwJCBA8gZPzXZOC0Dxlq5JQRQFlvKR8wrtx8\nxdA3eo3iugKopFSKo4zukCn0TylU5qsidPNP/YzqmASnj2PHo+73j6gjI6PV\npYeSCguoudTaVOjrXr77hIw4bsCcPDSox0s8oicl8c7H7qHtrwdKuaBdVF08\nRExMNvF+Byffh/BmlS3fBYB9jc6fcA1ycR4EOQVYzoFqc6cwkCVLsqvpkBM7\nWwtuzTtZ63vP7paF5/iu5/WGF8nDFcg3WlXr0CS0gripbrWXL+GL6guabmSO\nWKB4taee8dyj77VdkoJRmPoe9lNR/+fu6Rbeh34d/YKwEf7tcUd0IC3M55fl\njNKSHFy5/P1Nsaa/O8siTbCSkVswN8OxAD9CLR/FWmIQi1BvEqiT6kUOlfm5\n8RRUei9i1jn3U0T+WLJDfKGnkrWGAQ7U4+97kVfLPaQO9jtQmJpZsYy2vOI5\nnwCOi0k9LzCWPuq2juqXQ1tPb/AtEEb3TC/ArpIHvqALqJA9nS1UCL4yDQSM\nWhTLOcHYCew0kDkMiJ3MvGnSLEoz7eX9qouZJz/WxMjWzvxy5WF2xojQgXhI\n+k4MX2a8/XIeF8lWy+renGsIPXy4YAF/AjvMalbJXC3l8jZVP6pANU/Kt25/\nggUf\r\n=8d+S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"aeac43ba7dca94f6dacd7fe3c8c439ba51a87693","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.12-renovate-internal-patch-aeac43ba7dca94f6dacd7fe3c8c439ba51a87693_1622262481760_0.9955968267227853","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.12":{"name":"@balena/jellyfish-test-harness","version":"3.0.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b4c0ba2bec6696efb97be5628eb1c32ddfd9b2f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.12.tgz","fileCount":24,"integrity":"sha512-fhHTJM6UpwqkQ00m6Q/N/kk0WgGNP6Waj7C3EGv7qBzJshfVuRJKa6jojFskBpAWc5WDQdAYnYj9GEd8LNqxGA==","signatures":[{"sig":"MEUCIFbTb/DcGwc9l9rII30AgyAS8TAIPsIJ8euS6Gr1NzPLAiEAwaZl/V/VGyeP7NxJVsTxzR93GFf3uZ1Ng+W2R+6P57s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgscOuCRA9TVsSAnZWagAAnwkP/3Xq89nQ/ASSca1MzrC0\n7DK4H69EksuariJsuCAiwxtIL6DGEHHMSROmk1KZlDCZ4mzqEr0Zw49myz5U\n5jX4JP1uWtKy+u2A5rzQdTrz6HadckaYbBVm8JSEAks7iSAPeLjqb3baV/3g\nuQHvridrNXo/Sn5iDshbvPzFh7vLIFvFBR47IXNB3RSB1hnlsvlGvdMKmLxj\ny9F1Gh+1T0koIcZr7uMiG/S2MSTJxlSydYx0+kLbWMWgkx8a+8G75vZDxpN/\noKCoZO5tcE8fZKs2rP4UJ687EMw1NMOybk0zT2xG6mbf2Hz4PgKNdIDXLrQ2\nrY6uTHZfXQo9SwBwskQpdZiM+J7Rguc5gk+tEP2oMillE6qzC6ZQPkTCFaEu\neGzuBV7K8B32zspWmYTl25k247I7DJdJVVbjYqTkth/YofVQL9r379BGze/+\nRMSsxrlIxwOVLKfOva3xd9K/YcOK7Nv4QXPS2fBX16JNzEuTeXP2yuQ7Py9E\nBS2Ouxp1ghgFawFhbYKpULj9PGxKRUsI3Z9doDDoDjXLg7Nem4hxLO6/V2Ce\nCqyd4POArG1Z57xi+tCDrqb+9fz1Q+3+1uGRCRQ2dJ4vEZslbfX1VjPqheqG\n3TFT6E1OQBeeRxIM48MketS6mrel5Il1lfCARLZDfobi2fLZihZ1hwzuC/U4\nHP+S\r\n=tODR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1e67e9efd22bff036b04f16141ce055aa5b69436","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^26.6.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^26.5.6","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.12_1622262702023_0.27561221320052587","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.13-renovate-major-external-major-185db6d0c8f68ff8149bd26415aad5e568b4d496":{"name":"@balena/jellyfish-test-harness","version":"3.0.13-renovate-major-external-major-185db6d0c8f68ff8149bd26415aad5e568b4d496","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.13-renovate-major-external-major-185db6d0c8f68ff8149bd26415aad5e568b4d496","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"90ff6822169eb9d0dcb79d44bd7dd0fdaa7286fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.13-renovate-major-external-major-185db6d0c8f68ff8149bd26415aad5e568b4d496.tgz","fileCount":24,"integrity":"sha512-QnhjgdEra2yES11EyPF5rBHSWO5L6YzuXj1KDoLVaMe5/AmJtryTD4rCNfSprPCNOuYVAWcp74lbOyp6YBtRmQ==","signatures":[{"sig":"MEQCIBm6GCrXd9/MqTIBS+NAyi/K++zaK9w1R7WHdxRJEFK0AiAUuxjpui6KBvulW34kWB0VIR0rMm5k9u506PWTKpHDKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108887,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgscTeCRA9TVsSAnZWagAAZrwQAKImCR1qmP8K4iCrYFBD\nXbwFbN7Qf6FLsIfcDTM450R1W5k6Os5GTfUllpyxR9exhsRctxL5mWAVNYnx\n+X2grOuQTF3TwKciXnMFEfDVTnurVzlNv09jQpXPmD16PTqaKOGBOLRbxvZE\nRNsJ8rrJjZEYWDKHRtm7PuBrf8ccmg5jNdKubDDvOp1Pw2+GA5HQ/rPi1mMt\nbXO1cLkL3GIpHM0x4Zjkzz2A2dsBnirQFyxG5DZQx6U0ltFDndsBctXq8mZy\nnZhINw143g2d6uS0/lsg0goqO3E+SclwGYQG65pZNTI0qd36H78/PczTILFT\n2sYGU39SANJC8xDNelHwoH2/0rkect8T7w6TUM/nb6uLkw9YrF5FEY/bShGR\ng+144RpBEWkSlBI6sqx72zxMTaRx5l70MCPcUTi4OsKhvzRZpKfYetgrje9A\nBoNd0iOD8uWXLb0SXyKDtUE0UlmwjzEpaEwhdvDs58MQgiy7rkIQk42wOIC5\nst2/aQMZdQgQRR15I4h1qt40SCIe45oFQ96y7n2LSvmeeeDFaSAcvAHXTwGQ\nhJyQ2e2sqiyRUThe9VcnevUbMDZiVFwU0RaPpdlvqTW8N6QR5DzbsjDxc/Vz\npfgRvI2Ujz6mJdLzsGWGmhZAQnTNKCzYh3RLodLKD35PPSZiykJsacp0By8L\n25+f\r\n=WzoI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"185db6d0c8f68ff8149bd26415aad5e568b4d496","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.13-renovate-major-external-major-185db6d0c8f68ff8149bd26415aad5e568b4d496_1622263006203_0.010743190068018382","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.13":{"name":"@balena/jellyfish-test-harness","version":"3.0.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17304bece885ccac4e3de558799b7bdc93f51dbf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.13.tgz","fileCount":24,"integrity":"sha512-GZ70dS2UfQcREUfBPMEGpvJ0rVQuBBvMoq71thHk7k2zi5n74KUkj2egrgY11oKudEyhbasSTTqKgqs0ZeJdeg==","signatures":[{"sig":"MEUCIQDYlIdp+K4mVfm52svRX2py9AZNaElj0EXF9B82u1dmcwIgBoFlkdXsi5CDiGdToucKURUTi7DeZeMXpt3kniZjTgE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108816,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsd3CCRA9TVsSAnZWagAAQSkP/0E6bCRAnfH5AA2HfDC6\no6pPzxosPOkR3OLRJcwXNJqr9PGlrSE+k9Qzlp7RIM95EczAbUMtk+ED+2OY\nbB+j4iMuPU8xzuY32kWwfptzAwgtigTWuXSuqGTDbgGRC9gLj9W/Aq2b1WH6\nfAHwL+doxWn0T/gwNH8bn1t04zW5uXYZ7Gzqh/Igc8EhP+PqWlH5xRRUiNuY\nZyJiUZ194y8DSyZAEYw5WQ/bfYUghZ6V49zrnDmnP3BRe2MZYqXdIIt2dL27\nOU++v9raM4cGYPs8FyCSZRzpCz8sNy9D46acbfG/ugGjtjkTE5xhlV9PmGtm\nBu0Gbj1uDVjFt9TGyHTkAn/aKtkINc/LzH1cEbWPhmBc45z+5wemlHu38K5G\nluWey9MuULfKOIo70LQU8NMrGPeSIb8RXUkcRd2m+AVmyy3bL3MMvvMnzY/4\nt0OTT/k2bjPze1whWj4xVGmwyY8Sg6B4ZJ4VG3XaV4GsIgmLQhX9b3+F27Wk\nOWQM5bD++T2/PIAdej/+dx8veMwh+wmnM2YfoVupV9Yh2onvpojHE4XflP1R\nR5HLSffZsTl8HW6j94hUB08AQcnAc8w1gZeN/MRxhXzbnbEh1QUP6rFZ5Rxb\nS3DEJAP9nUxIBeDLBtIr0VsKxKg9/NC2y4xp0/+HeO7rj9sjnMlAv6H4YwWO\nLo5w\r\n=TwWY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"52446b561bee96d87da25626249747405fc3a40c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.13_1622269377563_0.9846605048911548","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.13-renovate-internal-patch-80f2f13e5d9be52bd5c01addd3e238e64a3526af":{"name":"@balena/jellyfish-test-harness","version":"3.0.13-renovate-internal-patch-80f2f13e5d9be52bd5c01addd3e238e64a3526af","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.13-renovate-internal-patch-80f2f13e5d9be52bd5c01addd3e238e64a3526af","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9fdc5e338ff1f01c57c87b5974de16682ef177a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.13-renovate-internal-patch-80f2f13e5d9be52bd5c01addd3e238e64a3526af.tgz","fileCount":24,"integrity":"sha512-SHs61h2SOJoJU83wlDpD8O7fAlBI8lBa2XeKnOk8A8Kyq824qaD4GEh60KWSIQkBlS07txiiq28ourFNRJEI6g==","signatures":[{"sig":"MEYCIQCnhwTLnXXPECHe4Paz9kshPTfQay9hRUsTVpi552xYgAIhAOHRiWuzfMi+lPRfLWQUnp6C/8ISncq2yir1mdOvU7QM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108965,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsd59CRA9TVsSAnZWagAArfUP+QGlSkqsp+ajea6ANnFI\nVTWe98w306raMvpZMg5EV/1+SBGFcBKBY37a49+SyYfAS6FKdx1PNZVRBfXd\nHcKSOfN7oWewuW2mM/EBvE/fuWuA3MelDnKdsaXKCOprpO7WA6xIdGqS59Ye\nSmN/+VHAPWGh08cY/mz5FRGrhoHGRI7QiYu0YawxVIR5lwFpjBw9nhhR/r4B\nVjsgqBr9rAqDwCXpuywSMHzABAubuAnw6xAb2HjRbHYw7+UYhayEXADjP9Kz\nG1aK8njlBPdPoVYoLPaRJm6xmVkxm2lcc3hu717K5LVaO4prdIJp9dYl6IAc\n4dRifS92bAbyw9vVFOQuD2ZktIimEIL9ttS/IbMrHm89mdyYy8b+nHZgE2Xi\nt4kHxw2eLzDG3NHYfFBY6CrDPz4+xlZIfgRsLwdbkbkCnrM49fxCAAhWgOwb\nq9lcIv7TywbA1Eq8INq96eR/zg3s3WSNKGSImKpuzzoSipUfp/BXM+q7xIOa\nSq4QOGwYXv2RnILsZbB3m86y0f+yOTLKyw/PArShgpYcfpVhpS4EIy2FwGIv\nVnt+gx5myySruBgL7X2ZECn7jNhfLsIIIrweFGiB4YPYD4LUd/VRzFENAZ1k\nSyHSKYtzVpxTrppwITBFQlV9UqkmPx0AHVFIO0YPFjakhyj0BdLD67uIRtLi\nWPWW\r\n=Xexl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"80f2f13e5d9be52bd5c01addd3e238e64a3526af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.116"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.13-renovate-internal-patch-80f2f13e5d9be52bd5c01addd3e238e64a3526af_1622269565350_0.4086296941908678","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.13-dependabot-npm-and-yarn-ws-7-4-6-c50a8aad1f4f3131baade788de89939e0bdbb26f":{"name":"@balena/jellyfish-test-harness","version":"3.0.13-dependabot-npm-and-yarn-ws-7-4-6-c50a8aad1f4f3131baade788de89939e0bdbb26f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.13-dependabot-npm-and-yarn-ws-7-4-6-c50a8aad1f4f3131baade788de89939e0bdbb26f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a3a7caa0349ffef85aa8ae23b5848546926f9796","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.13-dependabot-npm-and-yarn-ws-7-4-6-c50a8aad1f4f3131baade788de89939e0bdbb26f.tgz","fileCount":24,"integrity":"sha512-BNojMzVJ8jkGJbGSJP/oOHccW+TwscJB04fFC8gbu8lnjkVAgGKEXh+sy1kZrODGEJ0baQHHcvle14pmUCQsig==","signatures":[{"sig":"MEYCIQDBdIOj+d2xyOo+TW3LI93TCl+0AVBc8Nk5jV3hPnfjQAIhAJ7PwB+Jh4OsJP86KEBNKB9MrnkO12RA68TCGfQi96XB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108890,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsd6rCRA9TVsSAnZWagAAwU0P/i1dzD5LqNz7n2lCIYkV\nzG4Pf5ps3IH7WaOTS8tTFkH5NMZe3fqV1fMHUxL8STUXy55xukkFVx4MTd2F\nkMmdmjMyT+/BYB84xaoBRYuzn00ujKiKG9ZgNG1WzEACaNIzrIalm02JywXg\nI6iPeg5uGFPkj4Bjwx2DYz56kMr8NW2EjJ6ab/QWCvGNqOwl9xseTLI8FRnx\nklA5crgcKrD+F42OGQV/Uew3UQLBM6jY/CxnjRiVAzHvg5oNkIMsoor0LGcr\nhEpG0k9Y3qV92xnpRje7A/7RAN50xSyVqJsJmkr94qw2fIblA9TzU4gN6P+J\nt2D02kR7VeDD50OMvdB5o9oZHqafSs0ziUN5ks/YfFG8m1fKOStU56n1GOfQ\nvoyx4PmkhiXl6510FjZPrQwIQK4azMhhJO4mPxY7bAEOywtIHD24SW/O8LHd\nrRdvbNiq0+cppKcxzfW9I5vpcBBPDnINm3DotH/gzhgthghYL0XvsReEcG2t\nO29KRj3gyMWwvi4IRBTpNuSmhqzBaZc9n7/zMK0dHMmmEb5THuZRN9vryZVc\nlOURdS741K1qRv2/VEMl/hwToU9x6WUHpsBWEn4oZ7TVZeQ/AATavVyK63Wd\nUXDhtyOnitWhJtAbXeOIgD/7oC93tBBwA5G+FKCGydZuDwdzk3Iav5ZPmvJG\ncel9\r\n=6ON7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c50a8aad1f4f3131baade788de89939e0bdbb26f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.13-dependabot-npm-and-yarn-ws-7-4-6-c50a8aad1f4f3131baade788de89939e0bdbb26f_1622269610876_0.04579019218835101","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.14-renovate-internal-patch-a01045695b0365a94216a4f5af60ee2ce7231f64":{"name":"@balena/jellyfish-test-harness","version":"3.0.14-renovate-internal-patch-a01045695b0365a94216a4f5af60ee2ce7231f64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.14-renovate-internal-patch-a01045695b0365a94216a4f5af60ee2ce7231f64","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ceb041815cff1bcd0afe670c798a63146f85cbd6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.14-renovate-internal-patch-a01045695b0365a94216a4f5af60ee2ce7231f64.tgz","fileCount":24,"integrity":"sha512-As4C3sKmeyN6BXZMj/MVemmnReUqtGsYBDNwauz0xSV+R68/+ER4l33MXE/L+UDA0DEY7XNvLETqoykOSSMXYg==","signatures":[{"sig":"MEYCIQCM47kh0+hi0c+6jxl+VSKWzX7jCljOmAZYGQYd0u/3hAIhAJ5ME6BqcCeuLNXLZRvzdNvtIXKRGoPeDouqmmmaUA5S","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108955,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsd+iCRA9TVsSAnZWagAA8FcP/0OhUCST1SpcEfWPeA2X\nWAc4C0vzGSUrt3RjBEDxvMcHfXtSWpkiwsOIBGQJ4dqti4t9clsXhTupMsUt\nZJP08of8/KQu6jhulKh+BQaPd+xiQ/xUdPMsOx4POWJ+Fq+NabTnT8u13lav\ns99BWng6AAagFRia5BSbslXSuOgTRtQ7+qQdqatDzwBMYRgy2FtuyX/pi3Aj\nCBSvP99ne/uHSx4JllBDs7zbr3OqlJPntbPQ/OObi2gg0UJ7tgB5vADMWV3h\nGmJaKtXeAQiiYxC3cvNesNoQhDXq9jhesgIYVEKPachvwRsyTz/WjEsk86br\nbwxDfwl32QXGIfUX4OFTUla0XxiJImzE6xT5go9B5s6p70lGvBLVjk7ofn1E\nLryZnXqj8wlqn5AZnqw3DbrILBl2KeHHb7TwXSEPmvAe3gbcSlkVgBIzJ/WX\niIpIxMMiToVPbiJ+5gvCmQqVPjBtXvHgulBq91KXCD4EFuuWxcnIdXJDoh2w\ng93eJ6whJz/GB2likGffn8hVyofW1ouIL4PvGre9UhYPDyRm/YETXep0ys6h\nDlwzeuRTZvXaCtpPLC+2M3H2Wm0WUH/zukTeuYKDXtfRIHVrFGLXViQU0rJw\nnJ7WR2QN+vsDGgVn4j53ASs+bVjMHCY5McLhsm8j2qljd5LQqFvj+f+DqWit\nvny8\r\n=k3zc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a01045695b0365a94216a4f5af60ee2ce7231f64","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.198","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.26","@balena/jellyfish-plugin-base":"^2.1.117"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.131","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.14-renovate-internal-patch-a01045695b0365a94216a4f5af60ee2ce7231f64_1622269857699_0.45371219284243836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.14-dependabot-npm-and-yarn-ws-7-4-6-6e2066dc3d22ca6fb0ca6d7c6914e344f8762755":{"name":"@balena/jellyfish-test-harness","version":"3.0.14-dependabot-npm-and-yarn-ws-7-4-6-6e2066dc3d22ca6fb0ca6d7c6914e344f8762755","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.14-dependabot-npm-and-yarn-ws-7-4-6-6e2066dc3d22ca6fb0ca6d7c6914e344f8762755","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de90bbf1a8129225d6cd5cb1dda77fb65bd37849","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.14-dependabot-npm-and-yarn-ws-7-4-6-6e2066dc3d22ca6fb0ca6d7c6914e344f8762755.tgz","fileCount":24,"integrity":"sha512-ErCvSOkHON4haLVqSXLihG9nkJf0H7q5i+wMgcdpbrR1pTx3mEqJp6axI3NeqiQb1VmvPmrHC08b0KQqjxlC7g==","signatures":[{"sig":"MEUCIAvs5YNJR2BUQQGwvJfbvvUxcnEawMJDDXyGix9IBqr1AiEAv97djt++52U7AuPj5QishRUGJ0MucJO8mjCae7lxQkc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsei6CRA9TVsSAnZWagAANyYQAJNqHJ/pvJcFim/o7AEB\nafidubkm7cA9fxgP5DsYgWqL8H+o55A/kAOuanyAi+PUlx23KWW31pAdiVI3\nKVuN99HamZ8KkGAe1skR8stwl0J6Cbj+xp2zWkh7DBZZp6sE97R71PF9Cd2E\nJEesdjcIzcaRtbnca/+lQ5tbMcksA3lS5bMd7VJ9t2laFW6RyU0x6xAeMAl4\nMPuooh7ZqTdPM4f99+h6lqH0D8YS7MWB6NbztLzPGZGiyWlTvz7Fg1OB5v3m\npjW2/1+FhxYD+Ozmdh6kbc9yBFHL4THnUoBt7CU9+WyzBpW0NKykgJDy2jdF\nLiSqmq0cL4/Uc4WxG3oTwiFUgVv6NUY9uGay0LEAkZN6aZxUep73QXJCFdmp\nI3p/x5MRC2ZkcYoX7KFBZ1yV9kCE2lWSHmRnEzHdbIcgT0FHtntNqA63lvuY\nhOji9OL0diziiqF9EjnbqTrqjbqGsbfkEOk49xuwxptEQfUyMZHR3dElRC+/\n6ntdwZR9OrSvN0uat81MAcXpOaIV4rqj9NHCKZqUXWpmyxG5FZdQ+I5IBgYH\nDz5AxIzHXbAirSzVZWtlWaN6XHVTGGnpG77HVTkTMvrKhbGSI6bsqRA9oPNr\n40PZaREKoacpU5C602owcdHMIqIF7CQ7z+fzn0F/bEU0lmFJTHoMb5wwJxD5\ne6rG\r\n=Mbhp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6e2066dc3d22ca6fb0ca6d7c6914e344f8762755","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.14-dependabot-npm-and-yarn-ws-7-4-6-6e2066dc3d22ca6fb0ca6d7c6914e344f8762755_1622272185771_0.27457612434864376","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.14":{"name":"@balena/jellyfish-test-harness","version":"3.0.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25f35ce4c7e66bb08b9e43b28cde2b41497d6346","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.14.tgz","fileCount":24,"integrity":"sha512-ZoEz7yIWQ7AWQsV77D6N/wNbh3CNz/kXhFVmVzN7g893pvUg3+pEbogltqjp4coTMHynuj1jUiPd4ZmvtxRs3A==","signatures":[{"sig":"MEUCICn9p0V4bIYDibMsE3o9BPo4siliwIo+OSBOmyZCocNAAiEAjKdXLqBqopRF4Q1M9E6l3ROGI1BmzX8Xk/lbPgC77Rk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108905,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsemuCRA9TVsSAnZWagAAiVIP/RkQ315eVSF+BTsyJbNm\nr9Jzpgri7etr4YXzrIMs6PQ6heDiVHycajyQ82tMyzthaHIZWrIx1FFvmJly\nx9KTas1vCx1EwkdA940rF+s8LLU/75w4muSOoeTgYeRCymbkdV3nYAwES7Ub\nYY1S1GbVSJAl0Y1VV/8kfpbO4zrLNPQpaoYkwtX4M8EvRuEgoulju433CKa+\nKvp0ncTMEzJ+Qk1CutmEdSdSq8XX436Z/E48VdHUMVVtt9FCWkAD2PUHvecM\no5N4ROYlMHZNl22rLmy/7zFVOnCx/srwcOqQ2jjLLf0QurLEuN34Z/ell3FA\n4YCDGhgqzRk0hKZv08HJRWUxAiGIiW8AwExkiFIIyKhadgMBG9TaIcedYmYJ\nnbY0+cDRQexpkzBM5cwdaftYWjJeQvWbbJOlJoBbjv2YbAkufXSQTYPyLqGE\nkV0RQhIhv8SZQ36tsWYEGUo3zfqGCzGMwFUGxCy8Q8nTxApq52DyS27Rrym6\nFKr2H/PZn+QR164Z1/7fMVHMv00nF5fIggKslCsLjDlzTp3NX7HrkpfuflL3\nN1qC2DiWlds7ILfuyOJIEH6Asd1nvZk/FYEF8Tr4ntXlqur1601LxLHCU5lv\nUoccVG3kGFMf4p8Ie9ClzUIWu9EmYYduuVCPwBADbHg1F825E+LpFW54LR/H\npQIB\r\n=geaP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb6725adf216481064ff6f1954db7b27f795afe8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.197","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.52","@balena/jellyfish-environment":"^4.1.25","@balena/jellyfish-plugin-base":"^2.1.115"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.130","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.14_1622272429257_0.49724445829638286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.15-renovate-internal-patch-39d59a852b8338d9e66a1a922bc4c1868c7287fd":{"name":"@balena/jellyfish-test-harness","version":"3.0.15-renovate-internal-patch-39d59a852b8338d9e66a1a922bc4c1868c7287fd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.15-renovate-internal-patch-39d59a852b8338d9e66a1a922bc4c1868c7287fd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c1bfbe575da127448a3966d5362ee2b0c5474ef2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.15-renovate-internal-patch-39d59a852b8338d9e66a1a922bc4c1868c7287fd.tgz","fileCount":24,"integrity":"sha512-GLfky6dlRGbzGOwdmbMjv/SEwnVPQph2WYphvO821HPDHa4Ni00keolC/Q/7ogxUyJeAEgPmguj/83qhJzERzw==","signatures":[{"sig":"MEYCIQCbi/fMTsRXPWfBzqG/sfUc468jMVQ3DOOk47il/T9f5gIhAK73Jpf8FnWfP6VKNQcAhSmGio1bqHhd98QPIMVEmTYN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsez4CRA9TVsSAnZWagAAng4P/3PaERbdObosLaCQTKER\nbw/Ac+KP/d1ekrnPa+XkyPvtbjhTIMS7Itm72BhXfngD3nWuSAkpRk02yFxJ\nKofYTXlHiOteAVAVfKjkyICXzqGPVvDtIuwwmW/iivjizTP+NK+99ew5UEGO\ni228zeGutjlVDjzPkqU6OxRHs957Pp2ldqUR+jRB5U4ry2w1UIqJsHAAwtSS\nLSNpaSSwA1+84yS0/i4TfFhA13gjQGd/sHh/89g2pga/BU1A9rHgv5zpkCGC\nN/tPblRwKbM5HzsgNN1LILL+46wEInICnkzeZwQXVVcrXgU66uw/CcEyzjSX\nONPuvqqrrfH6E3BsWVFZ528TIFx2tjK2v1hVV8ePjawj78v9w54lO5ATOyVD\nkW0CYgu7E6oELB9MC6O24J3xzsPbuHoKCcvdIamkxlFCsl2QpOcbLmc68+m0\n6RP5FWAXkNKnOvvrKh2ATwYVhce6R85P8QarxZ3yBKMXpV1H7Z/FHCkFyOta\nPtU26LcPqMHIrHAUcdkuxDNpwJdqDuwvDm15Zna96WS347LtGRPUkDAxhhgE\nVFI709/a5g5LsBcuLbM2Xfu1CB50k2QtMxcRmTDK41aUkOLZdh3yNdEDQVlx\nJGbH1JoZmZf1dAZAZGQisvfKYtZKZ7TDQ+z/n8U+zrQ0Xt5Y1RpeHrhXedi1\nFXli\r\n=pRWl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"39d59a852b8338d9e66a1a922bc4c1868c7287fd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.1","@balena/jellyfish-sync":"^6.0.199","@balena/jellyfish-queue":"^1.0.114","@balena/jellyfish-worker":"^4.4.55","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.117"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.15-renovate-internal-patch-39d59a852b8338d9e66a1a922bc4c1868c7287fd_1622273271773_0.4232908851677941","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.15-renovate-internal-patch-3af5c575e42b40c2b229397ec0d0b06133f3a3c3":{"name":"@balena/jellyfish-test-harness","version":"3.0.15-renovate-internal-patch-3af5c575e42b40c2b229397ec0d0b06133f3a3c3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.15-renovate-internal-patch-3af5c575e42b40c2b229397ec0d0b06133f3a3c3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f22d2a9b8f69028bfdd3bfe11e6c91586e13025","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.15-renovate-internal-patch-3af5c575e42b40c2b229397ec0d0b06133f3a3c3.tgz","fileCount":24,"integrity":"sha512-rfTrBYXCDf2nepD/bpRNcOlZqSofYLGgEC5+Paw1NbJ7d7Cj/Y1/BCmQQYoDQ8YUTd8d5iIMlGcdcsKUsh55Cg==","signatures":[{"sig":"MEYCIQC5rf2pAf/ezBqzOcmCqF0w3w1ccRmTLbAc+0fZnC7o9QIhAJNWC/vX9gMWq0iYD4pXNLV10df8rI1g4TRdLFxbiQbR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsfsdCRA9TVsSAnZWagAAWrUP/32LsOwxwwtmfMTZcF6b\nBUBoaDwX4fmUpZSFrjrL5u5KbXIUPrn+gQi3oBHvYGeU3o3iiKerJHEpE9Er\nAHgO08ohPX6io8dUH8jE79kTo+1QPd/sY1+RtrRSie7wDvfB93ebFZGlAysi\npT0VkNnYJ5rgC856UFRaxEc0A2aMrVEumqbittAGC7EJdj8c/mi2oww2aIee\n4U6Mu0alHBEDCwiiekk8UW8aDWmO94CTtID9xD7P3aq5EbuvbkBgoaUaKaZQ\nFOPc2jgiIegxrWtz0+MzxsOiqLHyBY+mDRKY7v0xJsZa3boRwCYcEqKxg3aq\nx1v5GpWSAm97qHK8+0Up9y1isa57lN2hVAP2jYGGwGRTMajTNe+0P23A310t\nklhW0UjFJzbN3wTxmZvZ2IVnQXrRUcLh8ML06mX8d25LZI3/UbuAX+9rm3Sb\nyby/8YaOHQY+FwIOyL4q5V30LaISBg1Ntz9PdMdn9LIEmf/rnVwO9AVuVqGb\nUkV9dgojJUK91rcTzOVbopecLsyNDzdrG3cVstv6gnn+pcW6drMS8/lDbNAN\nLWUU9GwEoaHo+FdwYCttuQMuoNC4FRU2JBgBrxbJMwVUGo3WFAc0aAlDn/Jd\nvWZX+DQxC+BorYtAyK9zQPuX+Fp8j/fGYvODiFdcKT4fVJpW0bvNs8RQgdwt\nikX7\r\n=0RLm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3af5c575e42b40c2b229397ec0d0b06133f3a3c3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.200","@balena/jellyfish-queue":"^1.0.117","@balena/jellyfish-worker":"^4.4.56","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.118"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.15-renovate-internal-patch-3af5c575e42b40c2b229397ec0d0b06133f3a3c3_1622276892582_0.7717414156279994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.15":{"name":"@balena/jellyfish-test-harness","version":"3.0.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4875406207ab576c73375d944f2b6450c3dd43b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.15.tgz","fileCount":24,"integrity":"sha512-Lgu4Lf0QdBkzuAGbjqKdwmuvfyqNWgH8YFOznPoyhnKVukePIc3XgZ2+t0IiUf0Oy5dZ+82p5YbcFKU70n90Mg==","signatures":[{"sig":"MEUCIHCPGnUgAUTVHj8xrmXzqLnFfbLudNTIM65ucsSsVyf2AiEA4W9unGQOQFrfKzTPZBZz8td9G2tTHbytpTt1FCdr8Ss=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":108979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsfv8CRA9TVsSAnZWagAA3YsQAIqW7TPnyhWRlx6kmkpC\nRleWqGxZvXX5dS4q8FZHA16SeZE1KpywST8GxqUHytuL5IMN4SHBEw5ocatD\nwPoUWe1JI5MGgYXU2rxg3zwQve8Erbnv8yfcX9jQVDwX+QggbQg2SBFr6bEx\nL1K1MvBVBm5RobAh8Db9OUsLWyOxPv3GNWdL0+qTf8uu57Hr15FIqi642Xug\n1wgalrjMqmn6e9iRYInSsUHcASoHTXkpM+WqfHJ+9/BkL/sLnl1cdbYCq8e8\n2uiOZe8CBZCP+iCeDYSGKsQTbr4POl/WDU2n99/8tFTJ+ByC1wICtu568bjp\nw3G8Q3w6kfF+Tq4PY2oPmIoMtEumScWEH8+lLdF2iV2i2r/ZKDnc0ah4O+Kh\nQT5XCd5Tk2JwSi5gEOWW3LMXGPM0bP7zSSnf93NWr883+J7R5xtm8CC54Hmy\nEmPY5w3zliVoUt0KqnjK8bNtE2rpqTB/aPrG7WViCdDS+10mjf0A2/zduRmM\n678sYCHcEyjqSJVJpXSiMeEI6nfSeQNKoLyrdHBCPFx1jex7xe0vWiNmzS2M\nThWQ9Xo5JVtE+95XaPoe/VNQ40cRb9gL0vyCvEfNDhRlpesR8poBECfSC49X\nceqELTSwzmztDGhER2jZ+M7OFEYHfO5LYAbPrIzOHn+eCJ9V7eKmLPxahT3T\nbxHh\r\n=EEMr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2b10b89a28a61f706b0c82debdc9847f2a0d1ecb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.200","@balena/jellyfish-queue":"^1.0.117","@balena/jellyfish-worker":"^4.4.56","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.118"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.15_1622277115484_0.7752409982614159","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.16-renovate-internal-patch-f5c4cc244ba1403be9c72937f8bf17141d9410af":{"name":"@balena/jellyfish-test-harness","version":"3.0.16-renovate-internal-patch-f5c4cc244ba1403be9c72937f8bf17141d9410af","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.16-renovate-internal-patch-f5c4cc244ba1403be9c72937f8bf17141d9410af","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1ff8573a90db730b3406d1de1ee36f624192969","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.16-renovate-internal-patch-f5c4cc244ba1403be9c72937f8bf17141d9410af.tgz","fileCount":24,"integrity":"sha512-gb+7yAlIyYzLtcSLOtaVwvNjIaK0+j2AAd18Epej5Y6XmMt/md1n0Ekw/YRm4o7AgJqs9UjudT9Nsw9PwSa+Mg==","signatures":[{"sig":"MEUCIQC/egdEXGkbaUQ93DB1bvrgOQPA34HPKPI/0wIVcHh1lgIgd8AZfJrIFHaX4qIHx6Uzk1EmfbTsMDfGeReHTuj8gp4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109118,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsgmxCRA9TVsSAnZWagAA1IYQAKT9+RKDNtcJ1p+zM5th\n/Op2QghHn2XfHzZ4I1GDmdhbOAtKAtMAh3yeVQg3jEmAT+EsT6vWnC2Cn9sx\nq1ZvIsZvsbV03ZWH9tn/jSfvrzKJx2hZVY/hfo8YhkSUteQJIj9gCqOwesSh\n9lwMQ5oqSLx9yRbY7gzZzGp7WB+HlgYu6G5O/oPxf5B4suWmCn7eJvZke8bs\nv/W6SfT0WZ0A9449hwgG8yajpFwaXrT7UjWXTLJ9Y17UwwRBGjXopEGwKIaS\nWD32hHk5UDHesxOvI8/BHu6VX5lwFQ1VI4LSGNERGYgCjIrz7O2lCCR3EPZl\ndZxD26XJgR2SLwZe2ifHEYcDDXUFP/9oT0JEGjIFSK7FnHC9ohDRT1wPHVKV\nYSwnCuylTg2VB1RQe+PnnxcmFmYLu1dwc4w2mec93S14aYgH27CGFjEclr1s\nKwane8i+qA/X/4APqvtwZr/rr9pQ30nUL2gsO1WYpStdLHst7i1giAT/HFKL\nYCeVp94UlVzX2+DZ4KZ53kD/Lk2yblHTMP3EWVkeTMr/SFzMHCYJSSxfK3S8\n5psbFKFfLMgeElm9JfrwrY4G0650C30wMCVXvAsrwdQHp5nv79XvORPEUkK7\nwHfNdyRhdDD+Jc6Q8zAb9iLCZdHbPIWRc3pi0KTU5pRZFOQXuEyCQcX+w7O9\ndWRV\r\n=hp20\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f5c4cc244ba1403be9c72937f8bf17141d9410af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.200","@balena/jellyfish-queue":"^1.0.117","@balena/jellyfish-worker":"^4.4.58","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.119"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.16-renovate-internal-patch-f5c4cc244ba1403be9c72937f8bf17141d9410af_1622280625101_0.9311922905681858","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.16":{"name":"@balena/jellyfish-test-harness","version":"3.0.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe3499a3989f2822a86da7a256ef19c2ca8888ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.16.tgz","fileCount":24,"integrity":"sha512-2z3hf5SUqCyO4fDnfAMLUgfa92rfM5CsgthbQ3FUpV63DvmZzmLLuXz3MMJXSE/odWGs1T6AugV201AJLYdzlw==","signatures":[{"sig":"MEUCIQC4pb4cNf/3IZbM8Gls0abpokOU9VNkPfUGvB0hthUjUQIgDJ4C4/7c/ae4tCdQOqTvrtTSGKsYOn3WhqP5k91JnfU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109053,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgshDXCRA9TVsSAnZWagAA0pYP/Arebmh2tsRY1no2myjB\nqhyXm31LIz2//oRme2wfzl3y5wxq23GCr9ecwTjGFKT299L7fzxrQrGm557j\nYtP8vUiBlZlYlq4GNmVm94d5dSrYiRoSi1Epm4z4u59tAsh6IeXwUdGFFkry\nBP5QwvqoHCSr0bfPi4CxpYh7fp4VWPdF979PHSrrj1WsDFWIr4MZgE0Ecn/T\nKcu8GmGXoPVsdtud+3AWOHn5LjUoCzrZszNFLoQnd7b7t8cJIBwPtu4eJPxD\nUtSDDkHj8BapmzP0k73BZwWXjP4w5XQHy0lcbAOCfMjgQ+syjZKnDVuBZEjO\nhDdf3SLi2zK26bwTdtbeyZ4mw+OzvP7dC9/S5m4VaMF+N/7Izk8OWEaU4jqQ\nprkgOtW8q8T/RTGoM5tVz8KWA1WSkWMK6GRwILP0bpPJpAP7XsGb4elLdWTi\ng0TlbvqmixrlZM/xxcNlSw0Ryp3KlOSvTQvAnTfjDDIi6QKByJdKm+ebngjC\nqRVEuewqN0uCDUPcRv6JT0h7eAQYehmh9jx8mNoowtEV5pCFKfsprCc/enSc\n7hs1FEukZUKNbY0/QHLfDmlAv8TTlSDjRQVOA1ywvAysSaJV20bpJ7vRZtSM\nDjuwpDAFHCIZ5LR027ogixw99A3p9fw/89RXUD+FYWKCwHWHtCQObaG1TOd9\nxmwk\r\n=YtGK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b7c1ef50a75fc2e1dd9ddad70f7b42d6b64e3533","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.200","@balena/jellyfish-queue":"^1.0.117","@balena/jellyfish-worker":"^4.4.58","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.119"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.16_1622282455366_0.5318348350583602","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.16-renovate-internal-patch-e77d4607c26218179eed54a9d012a342cc85e297":{"name":"@balena/jellyfish-test-harness","version":"3.0.16-renovate-internal-patch-e77d4607c26218179eed54a9d012a342cc85e297","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.16-renovate-internal-patch-e77d4607c26218179eed54a9d012a342cc85e297","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a9a3e0b627e857d9b38fc2e0b033c8d1da241e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.16-renovate-internal-patch-e77d4607c26218179eed54a9d012a342cc85e297.tgz","fileCount":24,"integrity":"sha512-5zGVSsnjU4lQl1/cr78zZiSwQKGy5tdOr5cW3+UcpytDxUL81+6pkwoZ0xp/QmFLXUO0HnLSJY34LkURTEtiYQ==","signatures":[{"sig":"MEYCIQDCvQcE5DoiVMxF5F2lV7VuBcZ82Zc09M3mtmt+NxdIjgIhAN3Jf6su0Arc3XRZWr1swrHToXxlnE62v5sE+65nXOtb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgshHRCRA9TVsSAnZWagAAzrMP/RRlRUkYyAit2CFBLdti\nkX8DKRr+O7O8IXGaNOsYf95FzlNbRhE2cZKP6oCkvB3hMuYqwAH1VShWoSLJ\noBLyMvmVqlR3phOpNxmGEziwHes4x3is85r5roY68r6x610YIk2xBjqBwxqm\nk225gPPKHCJbvTZWdrgQ7i6crKynmo4B5DY1Y6ZiDbzBy3BB+jTFRi3ZyWg6\njEfvSk5ETlnzzhFUnIQzWOXkzqo/OzmEe5iOCSAx/wfxGZNm7ZQGuLGjNIAw\npfI9MJG81tbqKQH+Ro52m8M3A8+qA7fcpJzzJTR+vkjaYcC7gq4WNuI33yDW\nb6zyK/OaKVeQE7Z5n5LXlr0JGwbO/ATHO+pdq5VQ75tsipp3BVEL0GpvmDpt\nK/aRtpkIBHRuLtwsc8FU+q1Ds7GrDUUvrtaGg3yf8nR3LMCIRmTzSn/OlRkf\nA1Di6qEsaxPAK6HVxQVVF93a4/xhTK5F8CqXAK5t/aOS83qcJEO4DfJb7sU7\n1gnC7wjDL0/zon3SWmc/e9aNFHjVm1njrRdPqTbAa3yyH6N5u7ht2kKZmqT7\nghgwOoJqiZCvdZ3xFlPhjVO9H+vbOFxeEQibRCAdpYteX3Km/62r9u0TeRq/\n9E9ITbHpYos4d7ywgs1FTMIIgXCZdztfeYbrH0inP4wcZT4mSyNRDr2Sr6O0\nSlLJ\r\n=yAaq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e77d4607c26218179eed54a9d012a342cc85e297","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.201","@balena/jellyfish-queue":"^1.0.117","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.119"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.16-renovate-internal-patch-e77d4607c26218179eed54a9d012a342cc85e297_1622282704979_0.2927462199410036","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.17-renovate-internal-patch-40c269bf0831a512525ea3cddaf75d613e19bead":{"name":"@balena/jellyfish-test-harness","version":"3.0.17-renovate-internal-patch-40c269bf0831a512525ea3cddaf75d613e19bead","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.17-renovate-internal-patch-40c269bf0831a512525ea3cddaf75d613e19bead","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b79768f937e72414cf88f23f4367f6d70cc8804","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.17-renovate-internal-patch-40c269bf0831a512525ea3cddaf75d613e19bead.tgz","fileCount":24,"integrity":"sha512-7vsvhA+2Js93M32/DPk/11sv9D5yav+G4j0jYEdPbKkY1uAa0AZ6cdJjpJ/U8jBAypU+Wm7Eh9K8XqhdBqrRiA==","signatures":[{"sig":"MEUCIG/6O34A2kBEI48OUJs5UWliIu0+iMFklce8v5EBRqAqAiEA5VZvFvHBA979SQIbFTPBwhX3vOA/P29zhPfy5EuqHjQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgshX3CRA9TVsSAnZWagAAQvgP/jqBogtVtXbBwNYJIVOp\nAd/zcAGZBsBhyZRVeReby2QHX5gYqX2980cbgAX5R9kSYj9Yv/+k/FnIG3SU\n93EB0dQvH+XMi3wAvrT6t7RmLbOMPOX07ZV2lljksPQ4pyZn/hB3yNUnNRZh\njcY4C/HD6CMqvtEFgIkYcG53K86cV8HY8sH8EOfc6UFGM0QAAQ0CLl8Wa78X\nLtafa2WDVvLBzo1lXBXszjH6YTYV/jcKqK+vQ5+M5aMtH3AS3vup+9g0TLRc\nlqWTmHIgFiEDiVoKCphhhROdXiDP9owpbHobj7eiE1xu97mTvhb3hm9dTfJX\nj8lEyl2RC0mUgvvRGNTD5hrHyAqoTS9ski9HF9Ai88VzO9rJk1QjJZi4Ysek\naxqqS2ovL+e8Dy8yvVL3RfsYKUFOWC+i9wF1/UeuHpQJdKw2tyEEUfwQVRHG\nPQOc5ysOraRrpVQAYllqDo5ny5vznCfotCTm5Q/QP0ue1HDi46TOfce1NWxn\nLXdr93z5PavYn6b7UEe/HMEI1FF53CmxjdHXmrFpQK1RnKOUr4HWAmQdzMHn\nFvT38Q59jiY1SCZ/FCZwu0B+GAubXevq7rzOLzRxe7EmGOJzp7jMG05suPW3\nxwLkuX99ce16V29a/vS7R4stkGkOrL3dkMLagGWkIKCVmbqQ6s+zDS1nSvqq\nY9uy\r\n=MoSg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"40c269bf0831a512525ea3cddaf75d613e19bead","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.201","@balena/jellyfish-queue":"^1.0.118","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.119"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.17-renovate-internal-patch-40c269bf0831a512525ea3cddaf75d613e19bead_1622283766676_0.6071657912405455","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.17":{"name":"@balena/jellyfish-test-harness","version":"3.0.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a4f4c3ad6b5d3766cc92d00b80ebdc5d76d66b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.17.tgz","fileCount":24,"integrity":"sha512-ZLqgFbmPlmFoEaWOlOU1XguAJeN0kdskF8SpNz7gJ09PY/kAUAHAa1MYMb4rGDjQhZl+zgtHIhanFBf7HV/OeA==","signatures":[{"sig":"MEQCIBNjk9vg4URAqjv/321lpewnsGWrTcVRtLnk5BZH3mcEAiApxOlWYCWOtGyXiV1z38+UY7aIE5XV5YVZPj1tXNZ+Lg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109127,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgshsaCRA9TVsSAnZWagAAGc0P/iMMM08X3tKVCR2HFBxm\ndQjUQAfKFma0dWxE0Qa2ija/erjIRxTspfxOrZyqfHrv5Q5iWmbowvuEcQp6\n0I/lqwQV7lny1+C0BvNyTJxRmGwCQQemldEd/DU7a3mjyamC+BwWgCmkpGsk\nGE+rxJtiBjpDeV1WTwUoJhh3rBzxXazq3h0+W8QSPLccGZKOMltTfBlC4QZn\nJWnCX63B7/rQYD0RFiMwSJQ42lo7gWeUkMSGTQ4ZWb5vLD56TO8W2QUhlTFi\nbULfcH4EODeyrKUK8ey1IO0jBQfgcNbkYaZQiBLEvW2lc2mDW03dlRWzh+Pb\n5u8hRxQgp94kD63xfpJbKnpl4sLODwKVqD2BsjQCvAiI00L/w33clgn0Tggq\n08FJe9YpImIsVbHnfv0D0j4aRDQevlabRjNfIghH4RmM26m0vbIM1uwUhN8s\nPMB5dmD3L41mTS2YKzajVCcds5eb12zuErNcK2lURLurtSsPyG6bkVDLoOjV\nSjy1ymH50Yr3Gx8B1Ub/J6KHQj8+bCjWtpIIdUOvocVFaFHAuwToSAIWssus\nMJPbkoPdEII6PjyrzVC0eDPbIe79NaS0FxdmQ/P3jncMnhKnXu01xGOwrQbY\nTtljA/IpwRGF+C77DkktPlftNwAAdlw9/y+RJu+sk905q3apU1CVm6pEToej\nYz0N\r\n=GfkZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1d4c4964be89fb7f07a0c23532769e62ec1bf2cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.201","@balena/jellyfish-queue":"^1.0.118","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.119"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.17_1622285082200_0.8882895128235906","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.18-renovate-internal-patch-957174566da50bce0487d6de0807be6fe7a190e5":{"name":"@balena/jellyfish-test-harness","version":"3.0.18-renovate-internal-patch-957174566da50bce0487d6de0807be6fe7a190e5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.18-renovate-internal-patch-957174566da50bce0487d6de0807be6fe7a190e5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e3d52b583d4d83fcd6361de819ca563d1676529f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.18-renovate-internal-patch-957174566da50bce0487d6de0807be6fe7a190e5.tgz","fileCount":24,"integrity":"sha512-wdUOtl/aQd7qAHRxN2Gij/K2QqcmJfp2WEE78yPks/3BwEunnqrXHBFglTH8BSYA42oQ6hc2caqnd7cdpEU+Ng==","signatures":[{"sig":"MEUCIQDiCZT9igVKQy4/EYXOeO24Xg1cqgvbrQfcPYeVVM7OYQIgeWsuwkyEsm5MhwFsUvQuHuPgKzFaC2rmORuRKGrxAvU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgshy3CRA9TVsSAnZWagAAbl0P/ieZpm3KGv7D+KR/LRMx\nXvQm5K4PfHoMDFhiamjuD9gWEX1b/QLENDaDUqldMxx+QAWz3GIsOhEawymX\nWzIruBOXF9hVusFPFL8vitfm3W4jBk51/Ef+ZHl5dJSFVraqIqxz1iJu8T15\noav2sQv5ajZVzEGE3IAJAyl8r+2TBuZbz+pklU6V5ZbkvYNG+qdITlTWaeKn\n6KkOrC2oLQRK2iulbdUDkN94S4DAimpN+joUdVmisKZGpwg3qxlPN32vf7S0\nAjpZEZJzfEduJiyY5Zz0rURWsy0uvnVlDzziQCRP7gF96QfrC/ZEW8Z69rcT\nAcsBj17nC3RRsAhecGwQpuGPA1U325Ln6PG3jy7FKy4WN3ZLFlRIS8AdLKL2\num2KCZfT/6+tVqwVSVllbyT9xhKiRzmN3YHMKHpWNQ1y/c8I4Nwy24wj8e51\np6lsWKNDIqcSb8XO7SUIMZjjl+g7HYIhtPcDEfE6pUpLRIAlYlC5OruQfsi+\n4nWPQgT/5SCyyH8dz0NNgoQa9XEhDHQRnkFrrVPgfyLixViYmOEQ5YqhIWgZ\nvnNY45Nad+P9dwaVALcty62b/2iQX9qTBGFTS2eU25Kiq4+nH+oVBDasxNNy\n0ZhHWb3tTiHOaMbdlonp5ZqSbZPOSJVi2x/vLYeHIlu4su3BMEZCeXT90s+x\n6ENZ\r\n=eGam\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"957174566da50bce0487d6de0807be6fe7a190e5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.201","@balena/jellyfish-queue":"^1.0.118","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.120"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.18-renovate-internal-patch-957174566da50bce0487d6de0807be6fe7a190e5_1622285495116_0.24837500927116496","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.18":{"name":"@balena/jellyfish-test-harness","version":"3.0.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7045e07af9575724ebef1f2f26663fffe63507e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.18.tgz","fileCount":24,"integrity":"sha512-b9hMOhiXn1tOQaDElUM4Xyb+9t1E8n3BXoZNWP9iaA+PQQy9cddwlrVy1eFTGjbYPEFi71X4/E8o+4Gm/UV8dQ==","signatures":[{"sig":"MEYCIQCd1Diln/T9bQ5NiHPFYm3914MlD2XK0J8XAQCqFBP8wAIhAOfI9OnRDlwRA7kxU8zi9zGVuh1a9w/yTkAk4aKqStKq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsh24CRA9TVsSAnZWagAAd4UP/ii5Vm4OI1kBlO84/cuP\nJ4j3fDOri1gEenEjGtPYIG2EZrR3C1jWa5X1jyLPaPW7/yu5zG0SuNBWCSF3\np+PYj4ZWnOf/PCwZ7r+SFacFaCtXSKR+sfQ7ucVlR35IvMr1KU8BZRnonLI2\nSzlDDijPZUn+n3Z50lB/dFlWu75z9hH6e9oAR+wl/99i142iHddeaO70AJgt\nZwKBhmQ4ngufA1ykmhH0qDLBoJea1J1QgWsP4nEK6pggqJQDkAnFKkeUZYKg\n6h/fyqBzoUdeNtwaHqN9oo3jIbChsN2jnZP9x7//mK3BcGLe2lkCbsY5ydg5\nwF0KLcg1YaveBo0Vhapt8c9bH5TZ8MnAaEQPiv2wc/3lAf0eJ1zAlA3J9v61\nxb08nZI1C33ajMbuAhgQqQlfKZ4jFOhaCrIRjOLY7j9rsbCSGFrvoziqYR7C\nzQ6ur7FQF4EjaLzrRonG3Xo+6FHEvABoTt/pewevG6hzjzedlXOmyXC75r9h\nvD2WeMDS/lPucbvYh45YxR03qXplwR1XeUa5JSo2WlusStbdFvmQfAenHM2h\n0huaxDOYRguCwUNtIkWtSRN5omqmb9tTbiUrk6r5A8IEstPtbxR9JTbvLLm8\n+dUV7TAYF384wjryUnNM3mIzZSXZPKMH2FBHZundHkjGQVnh2u5Fq9a8RFP5\nvXCU\r\n=Pr3u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ed77719d4b745b35b61f34489c2a016cb919f74c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.201","@balena/jellyfish-queue":"^1.0.118","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.120"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.18_1622285752293_0.7661290374712588","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.19-renovate-internal-patch-87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5":{"name":"@balena/jellyfish-test-harness","version":"3.0.19-renovate-internal-patch-87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.19-renovate-internal-patch-87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27dab01185e78d1735b7546954ae8027ab899405","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.19-renovate-internal-patch-87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5.tgz","fileCount":24,"integrity":"sha512-rgCFrmaiLF28yNPG93UdOa4E6R8+ZGlyZwk9PDzLaTf63iOofdAJl4UxZrWX7GPg9IZpYSmHhV/VwmS8vb6EkQ==","signatures":[{"sig":"MEUCIGCrgPCFMDfIIX162Xng/OiZ0x6O6ZMU44YqkIiQ9B+QAiEAiYnELm06Rk8aZdDjbBXLq0Ei3AH6zlPK/bIeijnh+CM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109378,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsi8CCRA9TVsSAnZWagAApegQAKUPDfYrozjTNHPEjKqp\n6ahsFj3Jolf5Jy8TccCiFVUk34c/MwhWFnVKFgYOM+t0AXWv1F9HrKMaxnym\nfgOtvVQSlEvyPodiAC6uD7qxdfH2JdCQdX28ubokpO6zwh6t2F/3ee77trZG\nsghFQgbT3CFgl4alelB31CGcdULGRagI87jMfD1ogoF1THqUKA/QSql01aLT\n5T3csMZRxu51NFcneh/eW7lx/QJj8nnAj0elBk/N5e653QO+wNYHwOkS4Bbp\n8HPU2GzbKjH2ocdSwTagZHOxubBnE94Lq90XP5eyKMLPmopROqpQaIvd/W3+\ngGeg+LFO86CoajWsgJJFyG7OeJfWasDw7sCfIYffdR7o4CwXafA9paNmhNwh\ne97y/RuyaVKCBWDp/3vDyMYtCjF5rhZt7xKii4pWurwLXNC1db8466/o1NOE\nIpUTS7VccgOsexnKlvfsR+3DEPZUWv6XLxulu52UV1tjDG6Khsu7erq9Gz+G\nkwRczRWT45jHFIaahIBBIWf86jQSPKDEnxVAsctCUVH5XLVklwrGesaaonwZ\ncxgwAzo8Ya3O7fK4HOzqwF2QFHn1gRuHCnNVrzV0uH8N6q6NUG6Z+416xB2K\nh1bSM0hxQwvNBgLg35Helkd9m5cTR4GyKiQAAHwEPKi50LJBV2L/fni9afs7\n4lE8\r\n=6GS7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.202","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.120"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.19-renovate-internal-patch-87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5_1622290178403_0.9187276478790691","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.19":{"name":"@balena/jellyfish-test-harness","version":"3.0.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.19","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2cf243fdf73735cc7f2267764ef42c00101e06d3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.19.tgz","fileCount":24,"integrity":"sha512-0ACtbnmu9YtlOO526ENRMOjLMIvmiwc7Hvjz+r9xepCQ+tLLw/m7E1RFphWRQOnZJAsMb2QonPD+4jklgbu7xA==","signatures":[{"sig":"MEUCIQD6Mfu8+dWMwEprfN3VmSkd18hURwhsqUrCQtgOkfqr0AIgXCC21qovXq/5mBo3hfjosknDL7l52eX7ITBfV5nZc2w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109313,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsi/cCRA9TVsSAnZWagAAr2gQAIENqyY5qLzYgdzDUABd\n2tqu+HL+cqIoVKWc949oD1UOsuH2dN//RFG2y2rMllqjxkvjK6zw7ziO8ICH\n/vIyRdokD+ou7quZAb6uIbX2QxP+/FV+CLmxVLK9fGEqu4us7JQNGwjJJbCs\nSw54ZAk1bpjKSr7N3WplBofvmfY/+LSyneL5XVszpCWh2UikYro4gbbnQHYc\niksT2filRqRB8odLyupcGwpMIx/QmldEySYBbFju4DLivuaLCkg7JjftCe5H\nDzPfyEEWHhUp+w9yrdZL5BLMeAFxpb6WjdnhXs2uC4ZdOdEpYizwd799Fru2\npCPdmrFcWZ4PpcXFe7VCLie0ONjS/lc4QdQ77TKAbK5wWu6KC973U49t4ZNN\nasH707oqADuytEthDmroFPUbcFIhwQrEpABotgUYJd0kgP2lieteJVE2L7W0\n0Xpp+ypNR/ZOM1IsHe6JsCNHI/H9c1hz+fL0uaiMyHkdf/BZDYdJbJfl3s28\nbE/g7BtiW1CHIYF4l/4EzlDBcpHFsrUNAgfsaccIMGhcNIu6WVSKi/lZrFBT\nhBB3t2KPPTZ7LsGNAzI59gou0rB5R/MC9hdmH4iiiRzx+cV9eSMHrHJygbRa\nkkLrNtyBkhAyaj81wOswI642uO7EvoX0hWf2ZNXM75OwsXZZe3zshkflXTxv\nrvwd\r\n=rusv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"72288882d2163fd1abbf73b2d52cc872f0700cfc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.202","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.120"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.19_1622290396090_0.5586425485276392","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.20-renovate-external-non-major-714cbb8a224205bbdff6bc4ebc065e3f564c2adc":{"name":"@balena/jellyfish-test-harness","version":"3.0.20-renovate-external-non-major-714cbb8a224205bbdff6bc4ebc065e3f564c2adc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.20-renovate-external-non-major-714cbb8a224205bbdff6bc4ebc065e3f564c2adc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"459b16fd72d76b21f8d10420e9232662c3f1dcda","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.20-renovate-external-non-major-714cbb8a224205bbdff6bc4ebc065e3f564c2adc.tgz","fileCount":24,"integrity":"sha512-Dk4qFZQejM1mKWWC8kvKdziZm1NSx461mo28/IPqvMhYjtwqjRcm7Sp+/OFqJM7BhHCj3fukSWqpd2lF6UPmXA==","signatures":[{"sig":"MEQCIAH17syqFhpRcPAsRkmX9Pkjtn+vDgTAocMG9MuVmk1+AiBPWOatomzKVr9p8jX3AMilJirymISd6BaD5M7vkJQw3g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsknbCRA9TVsSAnZWagAAoxQP/j6JoD1BstfNf7XiJ5X8\nbojGbIiyILLV4mm+55bfJyLWxGJ0k/5v/0KbkQzS6tlQDlitPrQ1C0JHZ+QA\nUAJ68ZmZRR5HY0MjrmZySNjpbzm7fIwnXxt72E10YFBn6bwnOg8ksgtiuDdH\nRA46VJ2AEwJWPuSnWMO3gpcmn88AvOUM83j0d6T0fqovsbJj4molZEcudkPx\n68M5getDXssl1scFPWzk/lsVwTrQydzsqaRu2q0bZoLL74/eMR7XK7phO5au\nue8gZY6/dPubleh9cxEuEhwZxP6G7ohIxdXuD/tUIEdsNgRBDt0j8ajB0ZEg\nZoD5tfFSW2/5PoIV+TqN8lMRe7BhpO79FEEBi+iiZq3fUZ7YVabKg0gFk74U\ngM7/awvhhU2C5ENZenpgj1TP/8x8sjV/b7do3a0CZnxlCIZgp9in8HsdWLRH\nvL8m+GIiECXjOun/SHsaTIgZ1ap+MzBxHnSwljSSWpiZnkKv1d3I5V4zpJcm\nvFX72jJge0OjmYwuAa3kgBxuk6EQlMS1NttDGgVTEWC8v1MQkzFprZUcDmYS\nCRuJQkGwKn97d+iodPewceoORGTMEssY1WtSojhLosv4jgUJw/p1qafSwuYF\nczurVTjsWVFYwIL+M1QWrI2w5ubh+Y91L02hsrQ5jYEJP9m8lPIQeeXyZGQ1\na5In\r\n=9YqT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"714cbb8a224205bbdff6bc4ebc065e3f564c2adc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.202","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.120"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.20-renovate-external-non-major-714cbb8a224205bbdff6bc4ebc065e3f564c2adc_1622297051045_0.6290835956047556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.20-renovate-internal-patch-9ca8fb4367bf379b6443ba4d547eda0c65ce2de0":{"name":"@balena/jellyfish-test-harness","version":"3.0.20-renovate-internal-patch-9ca8fb4367bf379b6443ba4d547eda0c65ce2de0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.20-renovate-internal-patch-9ca8fb4367bf379b6443ba4d547eda0c65ce2de0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9aed4ee92ec6fc73fdfb5ad1c57ecba4ca5f93bb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.20-renovate-internal-patch-9ca8fb4367bf379b6443ba4d547eda0c65ce2de0.tgz","fileCount":24,"integrity":"sha512-y5/rkyum0iyddlBuRyhfHJ07J/SUJmrYWzZtSeBaTfTqntQSWVK/zF9dC1hODhVZdwQE6x6jBGsNXC9MG0/18g==","signatures":[{"sig":"MEUCIQDdUlIGV+1AaclCSz+VkYUmoSTtYWrlX4w02maJuoZqSQIgd7JCqylPTz3S+1nTw1yPnLy2CALBo+E2uEhuajz6bnQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgskogCRA9TVsSAnZWagAANuEQAIJZcvSN6hE/MxXbFndy\ndZhlnskJvH8e1A7zxZA7LsBH46TzdjgI0aXXA+u8AbuNF/0fztU5p04I5/AO\nYQKVwP7PD4QhM/wCxriqx4i+ULu7x6eHrW8RZcWHWu6uXNQaeMbXP2eS1+5a\nBngnXNZmKLaymMBzfIm35u94spT6sxTn5A5NQaJ5tb5AWAWo6b1n00OWsmWv\n/hbFuJKdsSQRYBEvSxLIlGRXNUeBugl6r7+tW6HEbtqdTuE2UEnY13EiSOy0\nYiZXuGna0qbvDEhFfUi5niEiVFEHB5cF16FNlC9Wg0SuQ3+DyXy5j/nMVkHL\nXPKlVnhBspMjISHnZJyzhV8YRnbYvwzddwJHXk9LH0kKAtvIoPehyGQd2xJg\nWnKpfh5AWkaZKNSmGK/2wbZnmuSuiZPbXyn/GKndco413cTB7hIzZ0m9svLB\nb9sddOMMePQp6EJMsfqoMrEanTXwEhV9yYOn/sTZPSYpzMXJ4uziV3Tyk2nI\nrwscg+eBklXSLXNTom+UHZtH975nr5pD7lNZWPQrTCtdNVKAxc/dJanyKrku\nt3NwIBMJ+fog98F9nTJ3Uo6rP8N3Zqspt+LSO7NmoiEOJu9pfv+0it3dbeJX\n14qlZ6IM7y8rdQ05t7Kwlp7zB09TU7ySa3si301aLy7czFkIgP1bA3zN9XUJ\n2Oj7\r\n=xpT9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9ca8fb4367bf379b6443ba4d547eda0c65ce2de0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.203","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.28","@balena/jellyfish-plugin-base":"^2.1.121"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.20-renovate-internal-patch-9ca8fb4367bf379b6443ba4d547eda0c65ce2de0_1622297119884_0.87985300961849","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.20":{"name":"@balena/jellyfish-test-harness","version":"3.0.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.20","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"128dc41a8f626fe79ee3042999086be62a4beb1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.20.tgz","fileCount":24,"integrity":"sha512-mLG5SiiAZhCyT41zmHBzXYc+Y21TNP1T721l1fMDV+8Dun06h5IMz3epmaDaWaKTFr1ofRtZQp3tW9pl032AdA==","signatures":[{"sig":"MEUCIHgbHUIXQcxUjhZGC1rhSN1n8tIrWzrLImoFyuxcqEDVAiEAyg5GBz0WyI4+jwpyJPN955LmMkiwMivONSF726vwJsw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgskqrCRA9TVsSAnZWagAAhyQP/A6TU6Kg9XVsOhrpnksK\ntGZ2pJSVnhbIkRRQDFMcq2amebibN/RmSRPVIP8fk7UuT0akibZI+hm68hrQ\nIAPNxyXZeRgre51QR4BPDIRY/EIzOxbuujBlf8geuOBJ3n8/knLnZy7Iqdfq\nqJlDWmNl8Y65dZvqFgkrM5oZjh0M+R0kbBXeSHYNd8iPhnQf34uLdhXELpZ2\nn4XU6rNn6gxPTJe/RG3RfNqFtdg4hOPa2Nr9BS7KoeOX0OZAJEt9YrtAuy6Y\nZTYeG4CDOLQzWEmIpDk9mwQvtLI8omqZj6IQ6Yaf6GSntZxQyJ3Ul6rPkkEh\n621IArlOeAJcRlDPuncco89s92pgAOSnpZN/Ml4wnsXQGRT5WvmXjkrwfZMW\n/YfREnObKmpFKoWqbb+rCWHiOg9vYLIzrgqpR38OYsmLGuqNMV4SvbfmXpxL\nt9xeIB6B4JyX6Azx3mFZ6VOzho1bsWDhG9hkZiwW3r9r7b8fTjIcutE+MQ5Y\nb+8OoC+XJiWcdv6JK9QDfHmniQqDLSlMtoVpDhHjrmLrSjzcSZ3HVcspNhba\n+Vvb3tInoy15uWRwIVAKz7QbjfSGE2LxH6HnV05jhBX1QKvI8KR0hfXZkv+u\nnqzczg4vlrfkO7b3z9LiwZtAPPVdkNF9oCZgOA7uXFq2wYlP6rLdKFiyF9OE\nSGH5\r\n=lgLx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"83a404e3d1a001d08b5ea9f93dbac072c4bb8544","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.202","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.27","@balena/jellyfish-plugin-base":"^2.1.120"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.20_1622297259014_0.8066901414259051","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.21-renovate-internal-patch-1b49ec3a89c74e10dcb842e5a85448bd471cf0bf":{"name":"@balena/jellyfish-test-harness","version":"3.0.21-renovate-internal-patch-1b49ec3a89c74e10dcb842e5a85448bd471cf0bf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.21-renovate-internal-patch-1b49ec3a89c74e10dcb842e5a85448bd471cf0bf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2edf71920fcc521f142452a69dd379d3badf7117","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.21-renovate-internal-patch-1b49ec3a89c74e10dcb842e5a85448bd471cf0bf.tgz","fileCount":24,"integrity":"sha512-sMkD/89miiDG3JjTDntwjBkGiP85Vo4Q8AfrOXFo6bxVuviB0+BvbQIvIbalNuTTVGBH0ezdglNyHzfq7QFTPg==","signatures":[{"sig":"MEYCIQDX/VpBPeqjJPL7g4GV5CdId/BZ8lxWCPkbBS8/rQFLDAIhAMWwCPIueZzXSh1qMRap5esLkvQHP/WmUdlq1+ODDbYr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsku5CRA9TVsSAnZWagAA1FoP/Ro9Czp76DT+BzJLlR+Y\nn6vETKatn3H064sV0LRvJ6TZD69RF0ULRcKlZIMS1sdSwJAGhcbrq853FiGz\nH9oyBqYsnqA5vfG3hkNMWRBb7UIQ7SheRvnD1DCE8wfvomY0Zv560slhiT+G\n97uQPkTAbmDFwZgqSuSxzom4y2IL39UJbYIR25mP3U2EU0Io/9NHTcKYSBqj\n2Z6vHnRRM+38Z1hBusV06rJHvxMN+t3URGCJ5tIdB38FMaMB0ew2qF+TiBvU\nCrtV7OyA3MemEi5sj6Xsol90HEv6c9NwrkIt3k080Y0h12DVRLN6RRRA1ATV\ny/712MnuYod9nm/2VeM99CmJkH7UIGJrBOJZIqQ3Unsv9KkoP7GwFmAqfW4q\nrCJDhIzzV7HY/oRlh3CZHkvfDukRQ4fjfm63Iau/V+Jlyg0CJ/n3nah56QLR\nhh4OuABZx3sIJEHKtMVp8nZxhayE9/H+rJd3LpPt4tJa4ijiZNgUAcrjW833\nJ4c4VeAnpkiwiZ0Y3j6pPq50ZO9CNme8Mc1uzGUU0N/2tnpkGSfzHsJBfvBB\n4w+GLs9pKter4aG8ajslxy3jU0bLxiKURkSDJ/aCdWwDdlwkIAXWw/v+wiKw\n1nxRv9kuDwSHMVMVhRzZ20cAUlNd3f0+jOl3qEs5zdgIwXCN0B/6QQF5Rzrv\n538t\r\n=ltD3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1b49ec3a89c74e10dcb842e5a85448bd471cf0bf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.203","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.28","@balena/jellyfish-plugin-base":"^2.1.121"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.21-renovate-internal-patch-1b49ec3a89c74e10dcb842e5a85448bd471cf0bf_1622297528921_0.6212576662372915","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.21":{"name":"@balena/jellyfish-test-harness","version":"3.0.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4c08dacd93b320fdcc85aabf1682af489d78649","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.21.tgz","fileCount":24,"integrity":"sha512-9wvJ8qB3/4xIJqx5RmQxc+nDSNWE9Dq/4T9L+jlDYWD5aFdsaiB62Q1B4mJPmuD2IHsvehaJs2rbPVj7Pb7NSA==","signatures":[{"sig":"MEQCIAFs322Q+33oplV0/EebfheimSOck2C3Gpj3X1D1tnQrAiBAanh0R627jkCGYfC9izutaiPwOA7bceGn5BrWkUx7+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109473,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsk0CCRA9TVsSAnZWagAABlUP/RiETElnXhrBEyc3cgy2\nA+smlb7wdK6wYun1PY8E3045v46UwuYUBATHYPF2IbsSlENcmtkxr9Ak0bWH\nGCcSDGDfV1nkkXKPLk8qfFTGNFzuzoyrO6FpQ5BizZCbCgKZ5zfZSkP9fEM7\n8i2IVrIzyhG8znjHtfDux4tf0LudnnMuyaT+EBMzzif556bOs0IsIYjGK3e2\nBmalR4rUZY10pQVbmVA4z5k6W07PU2pnDz1ukVSlK0DNwJxNJgi6GqwbU1CL\nSliFhIimYJ3iNecBZagqCwlmoh+tfUIAZO2iDiCQZnL0c8JT5tiz1An+wa/e\noe5bnAwqOmhdPxm8D6CfOzzQwBQprao5P4w8qCaHC+nUPC0l2eVwwfc+J05g\nOQz56IGCqnTY+ijJO2M82PEJ2gIRfvOfjug1DdsyGJnHr+QsWVQTmM5BTzkz\nhnsnnj/TZ7FkKpXnMbtBk4z19Ccweipb0JOIpKuwKUUWJQI2JnssOxpMkxzE\nr7j+kXTochHn9szDdtGOCgv3khMSn1lpjytCjUuNAluoYIadgO7hhFIHXmpH\nraRYrpmHLNfTFyQZGdz+yJnfHHmQKqBLsm/dswSHoYiAFQGSb+XpnIgBperg\n0bALnNGk9yiVIgbPtcOGFiT88L479xBN00oapF3ync/P7g3lyYeZMAOll2dI\n2Ldq\r\n=RNBU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a7b8423c9b0d30ced241d37a7405fba94a88cad7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.203","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.28","@balena/jellyfish-plugin-base":"^2.1.121"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.21_1622297858383_0.2370038839380797","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.22-renovate-external-non-major-7f3a37ea28e42334fb809f60f6af26f597bc07be":{"name":"@balena/jellyfish-test-harness","version":"3.0.22-renovate-external-non-major-7f3a37ea28e42334fb809f60f6af26f597bc07be","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.22-renovate-external-non-major-7f3a37ea28e42334fb809f60f6af26f597bc07be","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27bf4629e8dd35bfbec8d7eb0554eed1f9d34896","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.22-renovate-external-non-major-7f3a37ea28e42334fb809f60f6af26f597bc07be.tgz","fileCount":24,"integrity":"sha512-oKbmQAY2dbkErwD+hDhz1n/O539kpa5nzZyKedufYvu7QC4HEU7xlBKfKW9ryCoooDiY4wJunKmdhAJRaVYW+Q==","signatures":[{"sig":"MEUCIQDQpkc4nmfKAQ1Xdnd6J8/NDstxNRmU4+2zVj3kInd5qwIgCKNPWafURgGa5yz26mhXQM2N/M3eKUPwY6jaTk2K69Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsoYECRA9TVsSAnZWagAA6pkQAJNb9oBMdnc8+FAc1cCt\nd+sYCZ1O2t5GzpO+vsPdpxuO+/J1oDhbSQ2XklV9hdURAw4J1IVmO7h9F8dZ\nyWUzOfPpxMug3f414JHE4UDABHMaltH3PY7gRJv5v3+zjOAaNzQU+0A/u2G1\njVTMw9nPLCHfiM6FpE+VZhZkZNDjXP31oZuzQievn0PojsBLj8YruzefnLjb\ny/HCdjb9saVxv11vBGmwdyGB8Lu066qPEQ63g7zQOxrTqf8xAFTdKAA8QLCL\nV1UFSCvEfXk0rAvIKABW7SgJiH4XHvUqSLf2wIH3kuTCjHaYLHOPOnu9bdbA\nDeuJbkseZOu/LTjGHfFw+hr1y1F8Wss0DygEN2r0HlEi/CdezemdrLXKMZtD\niizRbAcXBQfmhq2M7oWr6Ay7faLggrXJLNesYCGPTd5Ss5rioZ5GHgHqJC9X\n16Z6cEq7o8Vp0t18P0ZXzd135iStYM9jaHS49oglhdkXARmnJ5gnJt042zez\ntRLgMIc+E+BR/8HeLUh1ojBf3ojtPa+xzNxL3wo0M9JMWg8jHchzHJHqIguS\nk8QszldvKdxY6x/2t32uN0FNq0BaOLt+TNRMManfi1tbXGAF5B6GtwRJx8lC\ntA/G368ng0JQHfF8qRXS1XX6HXB58kqJ8WbPfAVkH00prPmQC7r7F9GPvXJG\n1cF8\r\n=vQca\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7f3a37ea28e42334fb809f60f6af26f597bc07be","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.3","@balena/jellyfish-sync":"^6.0.203","@balena/jellyfish-queue":"^1.0.119","@balena/jellyfish-worker":"^4.4.59","@balena/jellyfish-environment":"^4.1.28","@balena/jellyfish-plugin-base":"^2.1.121"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.132","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.22-renovate-external-non-major-7f3a37ea28e42334fb809f60f6af26f597bc07be_1622312451577_0.07586622644796281","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.22-renovate-internal-patch-3934793a6f596f7469a23610573e844c1d2e685f":{"name":"@balena/jellyfish-test-harness","version":"3.0.22-renovate-internal-patch-3934793a6f596f7469a23610573e844c1d2e685f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.22-renovate-internal-patch-3934793a6f596f7469a23610573e844c1d2e685f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c43d2b0681266d1ed87e24f1eb4b24de0ebbb92e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.22-renovate-internal-patch-3934793a6f596f7469a23610573e844c1d2e685f.tgz","fileCount":24,"integrity":"sha512-hvY8NFL6byRUmL9B7Arqy+Vf+sH8Pg0DGojNPom2zKJxKvX8aOhbqYTT4IL1ChRRgdHlzztwBjBP7oKjPNFQhQ==","signatures":[{"sig":"MEYCIQCon2+i5nTsacCN3Tr3kG6s6CEusuc6VhKuVJs5gZe40gIhAOYLB40nQuwV0U224ywMM9j/8soiyBfZF9HXO5umi74s","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgspxiCRA9TVsSAnZWagAAXjsP/3BncCfsh1ab82aNc1KC\nuMLQjwT1/eJb5j5FdGY0D/KOCcltbZlPouP1ltKgxmTbS2y1jNkvvq3+BJxJ\n/E6KaVU0U8ME2unNz4K+67yNqaBh0/UR2Bt6ltIW+HlEC1Zjo85CPEJVWmXI\nQg8TXtsZbY4TDB0mnTf1JX/vaWKWTnY4nfejS8ZNzv3PnhPT1O22Nk14PLER\nWL+tTi9v0UOAOSvRaq1TUinnpRLEJSguYVQ9yPoBTiHk9tVuIg3+EjCWenjc\nHXq415cFvyny6WjU0bWoVLMIOOy7WXOhgu359N0QUwtMkz7sgwTobPaTmLge\n0Ro1853JBcR4L0pSN2hlEFjbmyOKF/LlCbIiFPCXwBgYZCeICWgeKp0qr5hP\nGendo1hUf5kZ/RZwtAzziYCcnfOEvD6lUYlNloVZLsGgo6Dsa8vANZTdoiiF\na7uuNyJ4qdxqVKWKSgMmg/kqhJ6nwWEA391PCJFBx6x8ATR/2jdYhDSqvfY/\np+96GBPy8TTheyUvKwMLsz8rGfmSpRJSkURbnK4Ojhm11wpdOdz7ijyruLLl\nlL95DmZLNosNZVp5zO6ceA/+JMztBXuRaxpAFjV3GhpznnyXevd1CFWMc/uD\nFFuSJI+LjQBpYZZqtp/5JOunpq3Du+Qvakg44FWBA5+DYnNc0fB7sgQ5ucfV\n5aNf\r\n=gydW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3934793a6f596f7469a23610573e844c1d2e685f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.4","@balena/jellyfish-sync":"^6.0.204","@balena/jellyfish-queue":"^1.0.121","@balena/jellyfish-worker":"^4.4.60","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.122"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.22-renovate-internal-patch-3934793a6f596f7469a23610573e844c1d2e685f_1622318178151_0.8464333734209912","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.22":{"name":"@balena/jellyfish-test-harness","version":"3.0.22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8abc20a36de32ccf18cdd976dcc10051312e8f3a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.22.tgz","fileCount":24,"integrity":"sha512-q4NUfEFxBGOFmAvgOhAc1owQp40FrYu559996Lb6qUn6TkF7Pm4onpwbZ608VfiK6x25j8C2eCEIy3OD+hTfIA==","signatures":[{"sig":"MEQCIEraqysv8WQW+wJrwEUtWV28/55v1ussP4imba1in0qOAiBpAWv/FG7LmSks3ReOg5/5UXo655F0pjDdPjxpcY900g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109547,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsp1uCRA9TVsSAnZWagAAWWwP+wX2QIOcoQ7dMZ6ophgH\ngAEGhQ90a5LC2kHijL/F8sKkIsyDpMs5Gnlpda6RA3byfvzRh2blEcMwL8ut\n9KsSMV6G4kcnqXMPG2RNWvk0yKiJWeMoHTiD0MXIpEE1l5ykPGU1LhHwFZFi\neU0mftwzN2EvP80liHihkyNW8r6lqKpqMQNLy8Ijlvqj/l/hWtvKZ/eHMGBP\nVQ9c+rSHGpuf3tYmGDt1KHBQNvSxsLmgQeUI8iyuKcIU08OFJALxQIZvQ1jl\nUrQCKZUpy+EUhJnOhv3SCeUPmzwrbx0nsm8IyJUi3Y9BUnlV/rZOXMTonkqO\nfdwe9MUEiQbF99Q109h/Iae2FqPaoNQk5y+cN3v6CdZj8oXfSc9m9d4hT4mk\nIiZM9x9L9CALgA+fcpCc3UNTe/aj1Nqhc3URd/LTCWXDizhKfob+x2pHi+NH\n5yIoZc6X7nxCkYpngPKsA9bblQH5/pNtzmEjYIFjC877y9c8lLEwsuSDxIEL\ngnGe+uSOeKOlxHtHt6zOYuDiGuKWPtg/tnaoXHavLfFl51uKGU2WBWTEKc+F\ntpLycBAkJhBVJH0uqUcn/3r4ffKgLV2Lk2EDC9sU6O1bTaVz0D6LP4tLdAgD\n8EqDFZhYh54FU1e8Mt49BeEl1tnah2rKgX9cLbwjGWY6wfmlFBRjlJoIUDtU\n5PCv\r\n=Ad3G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9bc0e14a4795168487eec5dbb32bf31ee539188a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.4","@balena/jellyfish-sync":"^6.0.204","@balena/jellyfish-queue":"^1.0.121","@balena/jellyfish-worker":"^4.4.60","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.122"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.22_1622318445714_0.20671670176259904","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.23-renovate-external-non-major-c484fce64624f8b4894dc454caa3d1f6fa4fabef":{"name":"@balena/jellyfish-test-harness","version":"3.0.23-renovate-external-non-major-c484fce64624f8b4894dc454caa3d1f6fa4fabef","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.23-renovate-external-non-major-c484fce64624f8b4894dc454caa3d1f6fa4fabef","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34dfa4aeba52f0b4fea162ff1517a4fda62015fd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.23-renovate-external-non-major-c484fce64624f8b4894dc454caa3d1f6fa4fabef.tgz","fileCount":24,"integrity":"sha512-FPuAPpFSgB2qXBEd+4ZEP1Zg35WQhHQHSll52PhCy2tuNkm7ON5OCf9uc4Nio5LCIgGjD/xjbiX2qeRc3EuDdQ==","signatures":[{"sig":"MEQCICDZWr29uV3wGjA9u9ZJvnET8A3gI++yElavzh4iTKGZAiBE/Nm1ffYiQPLcUDoW1jxndH3SwUzSuukrNCuEZZzmgA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsp6CCRA9TVsSAnZWagAAkGEP/iM2bBOZdTl5wUKaDQ0y\n32kI57tiB6/G2vOIjKlz4+onZEAHynnWMIlnuwLlHbQz8RKTMcEijVaH9RyG\nE/LY3ELM6vZal4N319TRh+jlUDXPd/XAyamqoPg7A853WK1aTlkuo2Q06LQw\nL+vUpjTXdft9qEOwpZ0MlPzbPGiNQNed87YSTYhcMjWGvu2NuiN2AVxyzV0z\n6v/91B3mmZhdkQ77O8Jg/MycqNp8oMfO+kX/ec1a/cX0QvsBfTIGxsYeRiAV\noDNMKM0DahyqpssjB9Vp9VhYZ/OLVZnVf1EkNrKR+7Syu/c+/DybU7OXkKZr\nqor8MKdj526ci0ttXruqY2V5TYAlTD/4cnzy0VVRKIHBn4+hJSAD78rlYjb0\nyAQaL6L4EquXebZ+KqZkmLznuR9jzZQMbt1yK10aQT7I3qu58dnGF+QPty3j\nki63NAdLRlxOnld5fEFz5PdKLy60CEAQEhzjQ9Cw5u5upyNzHbMxXnMZLZ9/\nRiVqZD/B0qQhwTHBYoSqrcZxmt1hZa8aLNwJF0DBYCvski8mElIW0Pf7RPF0\nelje60OAyj9o9t270z0kKQOfeaWOqiJJi6GPuwYJOL923p+eNxY70Rm3nle3\n9FI2nuoiQmeH11hrrheVMRDAHJlWx7ESOzyqVR4VrYoENM9CRBN6fQ9MwaQ2\niTKB\r\n=7BHX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c484fce64624f8b4894dc454caa3d1f6fa4fabef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.4","@balena/jellyfish-sync":"^6.0.204","@balena/jellyfish-queue":"^1.0.121","@balena/jellyfish-worker":"^4.4.60","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.122"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.23-renovate-external-non-major-c484fce64624f8b4894dc454caa3d1f6fa4fabef_1622318722183_0.9936177875977441","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.23-renovate-internal-patch-6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d":{"name":"@balena/jellyfish-test-harness","version":"3.0.23-renovate-internal-patch-6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.23-renovate-internal-patch-6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bd48c4f8b7cbea0c832f74606dba753e580b9af","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.23-renovate-internal-patch-6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d.tgz","fileCount":24,"integrity":"sha512-S5s5GCJnhjVKZ+q40o6zaLNmQe/N5yYcie/8v8pWpYhsm7lmK0Ycby2Fq2WAsZBVGV/QsHMNM2ohoUz63toFeA==","signatures":[{"sig":"MEUCIHWmTupbRbrlBpZAh3/2X7kwI2QT5Xe/87zqg2xh7H5dAiEA07vY6YZrkyN3op5JFxHrRh588yLWU9wyXKJNFW7kcuU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109718,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsqALCRA9TVsSAnZWagAA2r4P/0IVYdlx8/2fRzPtSKqe\nhsDye6Fs+K+QyvOYXmKz8/W7mJ5e5mcjQ9VG3Vd3Qgk7T/tRMzicA1w5OHjJ\nMEceQJS4d3FClxwP3v5a8nGbCNJC9hqwYPqifVFYyIa9ZBGQ31m2iNmVfXF2\nmXsQPibiuZFsD+f64rAmSohQrmlbbAO66AERvOiIMIHEAVMDqmJx7dTNG9OJ\ncs2ezq/bnDazBIbZApEE1wjknjtqsG60wtbESCEuefNeVFExrK/QRz+cf9LN\nTcC9HzZV/rHhveXpsJGVXmPjX0ptQ8mWCXUlnWXt4y0sQ8Z3UHn2lhMuQ7XC\nk17IuH0v8pBs2nOi7JCgzFQmJHjUnLi7PxvkFL1oV5Dufwu00N2t3IhZLnWI\noLHUuwuJAWWkb00dbdKAk3ORInyKxmOdNwmCjMyB1nRbBPBAP5Srw2hAfIfR\nmOKLFzn/swkDLPTSKTMAjTH5Ya4HuIALlS2yNf1Ug2UmzdaAuQgQ+EfV26x9\nov2GZ21zSrCdMHs/6XwiDDQrH2a0qF0uQ6zz5ak7HOZccBW875AHlw0ropgO\n6tqQHqUQHFPUG4QI+0Z6Oal4W7XCGw3ojRti3S5dUOI/NSWmpZSkjnsETz3r\n1brlL7CgA0qI7BmM1DIxM8Kh4iXsZvz8OA4kDYdjjpL8SPzpnQPyBREysKzS\nPJqc\r\n=va+9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.4","@balena/jellyfish-sync":"^6.0.204","@balena/jellyfish-queue":"^1.0.121","@balena/jellyfish-worker":"^4.4.61","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.122"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.23-renovate-internal-patch-6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d_1622319115121_0.9247295092256589","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.23":{"name":"@balena/jellyfish-test-harness","version":"3.0.23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aea23b9a7edf29dd5dffe6d91f98e9bddc1af4e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.23.tgz","fileCount":24,"integrity":"sha512-OZqu6ffNfO8xcUoBmSSVmVxvC5PiiVW2fZ05L/9I4XCJpYre8K1B9HQFqXp9IZR73cnhXsSrwwFMdY/d3p/pew==","signatures":[{"sig":"MEUCIDfeZ4MSG60pnYFcmSPrgi5PAVFZq3BsEpqwIoj+1LJbAiEApEc8Hcf4hz4TBYFbwSBVbaItHnGcTtDd5BuijTmfsII=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109653,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsqEdCRA9TVsSAnZWagAA0fkP+gPNz4qjxRzG1dwp211z\nAeGyC0HwTZLI/Tj4QZSwGOBNLrT6DnoMkm620YsEERRoZv1OgJPoc5pFnbuy\nH/GwMkIzxi3FxFiQ7yrkXZeAenU5nxDsAnVS/9KTa6sjX4hWBZ0tT7TXc83l\nC46qplgLWsH/HsqUjMPd9FFC6zymvOpVhA3KI/xTW5S1fwM8tiMqh6mz2CcZ\nqj9B/UUsNkC91tvs/s/dBtfafBkaJfyIKAJXfY8CVAehSZlEtzhNkhrn7pFF\nBuXGZOqh0/JyxjLIeZyuz6RWV9yrHEdIPA4M46UcWc38ZcyMmDnU43BNBffb\nw/RZxOJ4bUAS+4qlUE2bKDzn5TCkz91VESTZg/MKYcX9WYhLQTWiqQfXzEhZ\n4Sf8z7SnJULPk7WB73ZFVsK6mJ1PxgM4jU5GnkxyLLYhoBfpFSd+BdA1qhUf\n9VO0m+LzzOuXLyc1OEIdja56PxpH5URMdu4axuUavvZ1SjvcvqR32JLyPCfF\nE6xOuoim2KY2p6ntP+52G3i5BO9GPFiML2q0lFVCzSe1aSY6dgEe4qUsWAiT\nIdbrjCzp2kNGEnSbKaoxX66ChWUEUQKFZ12cMruwz/vE06ENkGttVC0bNiqs\nX9nR9m9QzHYImimXlkBhSpb82YkjjHcdLAx6D7CkwWqFlMkSBde6txyQHMyV\nv79h\r\n=cCBP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0ab3e088fdace53daa19663f92448e1c28fef8a9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.4","@balena/jellyfish-sync":"^6.0.204","@balena/jellyfish-queue":"^1.0.121","@balena/jellyfish-worker":"^4.4.61","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.122"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.23_1622319389067_0.33142680385434975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.24-renovate-external-non-major-895152b799af3f5667d98b58045692268dbc1976":{"name":"@balena/jellyfish-test-harness","version":"3.0.24-renovate-external-non-major-895152b799af3f5667d98b58045692268dbc1976","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.24-renovate-external-non-major-895152b799af3f5667d98b58045692268dbc1976","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"610e21a8721ae6cedb60f12bc9ce8d0bbc41f0b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.24-renovate-external-non-major-895152b799af3f5667d98b58045692268dbc1976.tgz","fileCount":24,"integrity":"sha512-nkccFMSl7I5wcl9iF0Gl2IiIX1Ksm1kHAK70mnkLryuy8ukucXkK4xZ4qnFOUDl2bZQpTQ5uc32S7NuenwgNxQ==","signatures":[{"sig":"MEUCICel3GN76vMn8oyPJy3aPcqvkYFSy7SEfnr2zkyzolozAiEAl95UJ4f+BdbX5i1dSobAGJoTF8+5iR12+UxjlnoaTUw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsqH1CRA9TVsSAnZWagAAMNkP/j5UJLZYlRi04Q0tILmh\nh1whm6KtJofZXVvgnrkl1qHDw3urZdWZovsp+mLeXWqt70nNk2+WMiB7MAIn\n5tqKfPeyLieeJucjt/FUPArJTK6Y+qARKcyUeRcypD2kKRpdJF+Na6l8/Pm2\nKT0k/yOMPZaLvTCbw2dG0BYHOCjrOhrvgO0Gpjj3cN91C3Sb8i7Os/kmdIeu\n653xgnEc0rM8qDGY2qt8/b5x4039Jip2AAuTURGaPN/6CMnVwKHTWBCOKxrh\nGV5AN5NvgAZRM2L9ZyWPLQqgM5kAZDCbIoLLvXv0EWZUA8PZDDS3VC3ko2to\nGCbN1Lmpey+BOBDQrzJEsrTCzkyN6my3qQCOq10KrbGeBu/htRkRkAcOuFWE\noHsOg7RFSy5YlK1AnZIjQCYZYjwcBmnKoRZKTfog2B+ioff5pPHFkLgEBYW+\nHgz3Jr0Cghs+G6TFwDvv8UHSFGeLmt+sZ2ap9VpmHDPME9Pianj14wtzkx8L\ne8/XuKDSkm369vjHoKgHmeO1QEdiA75xUru0NmTF05UDUe41iZJBvnqmbTT1\nTyxJ8GvtumD+jyKjbVJ/aTD2luzHh2VdrKHSgd3/0GR4GFJkgGDXtOX/ugUc\nqGcls2cJ2ZyaeFHqn6jgXZ2bNPnTOpaD6Q72sLyTPlwQVq399xvpyKkJoYQw\nzHar\r\n=vld7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"895152b799af3f5667d98b58045692268dbc1976","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.4","@balena/jellyfish-sync":"^6.0.204","@balena/jellyfish-queue":"^1.0.121","@balena/jellyfish-worker":"^4.4.61","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.122"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.24-renovate-external-non-major-895152b799af3f5667d98b58045692268dbc1976_1622319605388_0.6489492014336808","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.24-renovate-internal-patch-2895d293d240b881886271f498d3b574d9b9c424":{"name":"@balena/jellyfish-test-harness","version":"3.0.24-renovate-internal-patch-2895d293d240b881886271f498d3b574d9b9c424","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.24-renovate-internal-patch-2895d293d240b881886271f498d3b574d9b9c424","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5a8f3b12f5a9642c372d39103fc5e42795bcd2e3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.24-renovate-internal-patch-2895d293d240b881886271f498d3b574d9b9c424.tgz","fileCount":24,"integrity":"sha512-e00lIS9PNl0qyaTFcUpXwSv1Ou4vCHoLvRoiSHjGtp7d970/BAF9sS85x1ajPUxfGopJgJdvRDxmopF5Cjgvew==","signatures":[{"sig":"MEUCIAq0YjuxODxGF7uYjY649JGm949qMn/rvYbfG5vAghIhAiEAqqHDGeGWf0RJJ4TPrc74Rxjppwx9HAz/+sZg0zuf/q0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109792,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsr+PCRA9TVsSAnZWagAAw1QP/jrd1vuDVIuYfsRhOtKa\n1kYSWVQHmrxsqXAFKxGokDUbtdNkcABDZ5ox8+WkGGOrhNcFDPVOjpaDR/gD\nHoc+mjAyq0ZaHLWJe8CHh4SfBFHXM2C1aB5HgIbG/IokrQE7MbknHGQo16r/\nBcTx6oBifWgXw3b2xaUc5Jm/9eQGuo6Xx+HyfP1NirNdKONGjSa2QuCYoz+P\nG7qxQ2M9u+Gn3J8r4z2xnqMEDeBq9TsVIAMn4Rd4LkCTplPwt8BmejDibYvh\ndxsstLKVM52HMZwN1g3cz2A04e2kBjaQs9jyKxwxQ0ZcK5eZXqspeGuyHNbg\nwxeE0qhPZtgKbPLeljozeJTGuWK9vgaXweEZUtbAsBPkCkggqG2Nt19fjc7o\n/DFAyVEkl8XjuWpsVcdHoXXHo2YYpKhRSJYv4X98IZf7e+vzSZEu9LccCgOq\nJSXnUCoCQ2W+tF8thw8mrKeyDGxTboKvnemCb3YrqgmDuS4vjSbUmKeBGCR/\nf1NWoP0x4gg2lmPg29tBWPTZHEraxa+r6Xhg9jXIF6Hvl6tAW7pXKTNW/oW2\nh7gWn3NmGr/v96HCjWcUSwcZkLPWSkyVGT05XD+UB8o6Mco2gZ4qi0Reoofq\nKebOWKCApCZZJ0AV2U1JNe/Q+MoRjsTHzU/RWr4bwKVUlOwIal9ugFlOi8Is\nU2FI\r\n=5XgT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2895d293d240b881886271f498d3b574d9b9c424","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.6","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.24-renovate-internal-patch-2895d293d240b881886271f498d3b574d9b9c424_1622327183042_0.19869913134700146","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.24":{"name":"@balena/jellyfish-test-harness","version":"3.0.24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f48174fb5e0314f539fd246ecb2d33814a0b545d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.24.tgz","fileCount":24,"integrity":"sha512-yBgT1pjtvL3tk103Ywz5Dc1jsJx8BvuHVUjBx6l+y17nWskYEn+vBtWhDvjF+yk3s8keFiANap623C1Q+rVxUw==","signatures":[{"sig":"MEYCIQCraQbUsFerxmPsDIv1ab8tt/Xlb+KxdZFoNE55OH4whAIhAKwH6KeXDUeoeBlNtOFNFK1g3JBImdO0rQBpI+9zfbJC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgssBNCRA9TVsSAnZWagAAtYoP/RInVnpZbJHR/7vCF12y\nP6njV2tczdyVlIaRbcPyz0nG1n2u9Khri12JHpPdndFnlyumMemOF6ZMyy3B\n8ILEYJMiNNIYz98bSw9qL9TSAlAp6yjNYTibY/mzg80LlC2ymLFIDrjgYEbA\nhe1k+71b9LMa8y4WgwnJuP4dz7qQR/wmX+I77Hi5PgwgKp3slrpGQRXuo1tc\n9sxVII8zZpaAm0tBeAjPdDxW9eGZHP27EZOSDCNKPSdhAb1kX9K/9C3tjkGH\nHu4mD4PpsUNfiOwTGiWy76qADjHq4nrzKEmL7ngFo1+5IyUOhXRqI6bCiZ/s\nBMJTwZLK+AsgqB17xttyRqeOC3lbMWLeSWJslKPKMfHUjHiOCxg2IRFtOghc\nOftS2i43uyQZ/3g1uT6Yi52b760ohKLzB9LjWuSxbunPe3I12teLXwfCvC3x\nw+3rdcBzO+iig2eLgxF1Tsa4JJYTKStqRtUFK7MFcnZJAOo5+Rv9GBHfwkGF\nVCG46cuXX/CVN+iX30wkYBsm8TPjq5rVdwQE98CsfeVSrSGNb/Rb8pZia13C\nDJHr2PTUiC2PcGgx18wbpJCZy6z1Dkqfqbg1zuA4Q2sCy8Hh7L8NK54NG+GJ\nWP1EeGUcddmXhflKD3lelFkq7AwJsGpGmH12nPCvyiUDQhceLL5ukfCIvM5F\n1qP7\r\n=ezO8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"94b10fd7e28afd0094ba959ccd750001af66bea2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.6","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.24_1622327373030_0.1528441471048103","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.25-renovate-external-non-major-85235b0f13282f47d46f2db3c6b76fc7dfedf193":{"name":"@balena/jellyfish-test-harness","version":"3.0.25-renovate-external-non-major-85235b0f13282f47d46f2db3c6b76fc7dfedf193","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.25-renovate-external-non-major-85235b0f13282f47d46f2db3c6b76fc7dfedf193","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"87600e9e0aca1539bf138ac05711713762074d7a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.25-renovate-external-non-major-85235b0f13282f47d46f2db3c6b76fc7dfedf193.tgz","fileCount":24,"integrity":"sha512-aCtYrAcmmU/SZ9L9BqHL3+CxnC8xTPWEXU9U3ZRy+cHceOpfPuYq2WHg6JVcaPbdRJ9k1+sQq5DNJH/aUfsiWA==","signatures":[{"sig":"MEUCIFgdsO7LAovmQX7kwMhEOFGQtwQEzuH1fJpbhm6Sy4sfAiEA+hbkq2FZy9vbVzfUuGjGwMhPO8SP+roXq6hTlw5eXrw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109882,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgssHiCRA9TVsSAnZWagAAAAAP/RP1tCNIb2cUKMAjw37i\n7nVrflyRMeYvLPs0V8beUkqL1++84TZuhNKq7JmKUBev+mP6ZbsPRW5xHzuf\nZRDTILM+loObHjSqsew9xxMCzyMgNbE4ZO05HKYd8IKeIPg+igVVa2uVOyOh\n3sG/z98UqQ9oxNZXpco7H1kcOZoa7k4BiJMimmYW6f/5fSCRNP/88m3Hx84X\n8zLdMTN4SYihJnCbnACeHtmx8D2iXx3uxd8qYUiuO2WLLGAj0hCUFsZ+neAZ\nJ5glIFzJAiG/Ok+iTiw/XP5Y3bqkx8f6ckXHXoVHwCx535xa02S7En/P2d/w\nX4J0X6Q631KECpMZGZ8PjCn31nRqvuTAH4hMtkQ7rJegmzUvQfZKHEiU5kzm\n8fgaKPouv0cNSApPZfwTFRuNujGGOS5r4+IYiASuPj2nZyTJBMWTQWYqxBcj\nvks1oK7C9eKFrepzCDCNwUNICG0zH7b7Nae/h5UGy99i6RhQVFF97XAZms1b\nm8Tqyrof+P72bEDLCQe9O5hR4GUXKgh0m992eIPxt1zdWqzT90R9ALzrtV0Q\nkqj24CU1jZkEPg1sV9m/R6gPoRVPz8lCeODPRPvQQivDgI+u0vBuWpf0QTfO\nMbwEEb+mmEcwA9Eb2EZvEyBnAH35iz+IaBTvJOll5lkKpqOHcGyg9PRrFUa4\nnmXE\r\n=s2CY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"85235b0f13282f47d46f2db3c6b76fc7dfedf193","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.6","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.25-renovate-external-non-major-85235b0f13282f47d46f2db3c6b76fc7dfedf193_1622327777639_0.12931691802115064","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.25-renovate-internal-patch-545461b0cb39b8febec4ef3e4d34f51de7ff6d09":{"name":"@balena/jellyfish-test-harness","version":"3.0.25-renovate-internal-patch-545461b0cb39b8febec4ef3e4d34f51de7ff6d09","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.25-renovate-internal-patch-545461b0cb39b8febec4ef3e4d34f51de7ff6d09","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"51428aed8780436da7ae25a85eb2df20b8e66044","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.25-renovate-internal-patch-545461b0cb39b8febec4ef3e4d34f51de7ff6d09.tgz","fileCount":24,"integrity":"sha512-hWB0VDz7lFBmJVEVkRsAYc0GlYO5PEZCZ1XuGM0yhPFBsBszvjZnx1+tN6vRg9M14uG95iKa7NeLodHPBbA7YQ==","signatures":[{"sig":"MEUCIGPXmGB5u6WWbgZ8+pH228Xx9sX3Lg+OCweScX3KOrXyAiEA+dPF9tTgoQ7E1rOhS9B/CH1KDRmBZ6G/WuDUdXDHLjs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgssMPCRA9TVsSAnZWagAAq10P/jIjzCh5138AwyvaSXqg\nErf0rsWegAFQno7010qsyjnoQbRwbKpbU0fx6Gv0pmu2B729mM1ou5dphpAK\nnS2P1eW2Ez7wlX2HC0wB7p+LV+hXpPRk6ogx4/e9S4kxe9u9PQZjDYfhUWU7\nwoGIoYMBMQaQwqOvDtLguv/D2uq49J1IfrG459eJOLZjIL5u6f5Px3QH8tb2\ndPl+OcUojSe0Qtm4xiTlKrlBAuZigoviAKSNl94mZpKZ0Nuskpb8A8/JXo4C\nhmV7XoevohVogWL2r1J2IYabLMmcYbFeGsh8KjbdSnJaVLzs80PhBhlkkK8l\ntURBTbS2/ykfh+E8RtoiWOtZKFCo/u8/Ja6st/GdUUYa1mrVYdScSBKCTeKl\nsHaUgNAT4iyAr/ni48GMl/WPW99qxkdrtMtlVqKSRCCNsIbdERm3rTjpo/e/\naHZDMm5dDkhGOsYThnbDBcI3ZPZsDknUam7rE3KD6U7SjzH1m5keKy9nB20a\ntMwZYLhJ2LEEbR3k1uT3WkKsEdZoGmFK+2UwZlPl5fWFw96TrTlvmSrFEmsj\nEyZPTSvo5Uum2sV8/7x75AwsMbDcn5DVwJtTcP0+dXgy62uNlfCF0YZbEFLz\nkkMoThZfijGIj4sPSj+bLpO9tn6M3S2K3WxxCgG2lPd2vo4Y4Ow5mRmUPUS9\nBH0m\r\n=g4bA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"545461b0cb39b8febec4ef3e4d34f51de7ff6d09","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.25-renovate-internal-patch-545461b0cb39b8febec4ef3e4d34f51de7ff6d09_1622328078908_0.5389659406974494","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.25":{"name":"@balena/jellyfish-test-harness","version":"3.0.25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"42c64eed1b3d6b45286a4971aa3924ac0524af9c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.25.tgz","fileCount":24,"integrity":"sha512-qG0sBCtauxAF0NdV3pbCHmAFjX/6h+Xa20SdXhle0z0xdMiiwR4iMBAc7oEASYwmn1ZVaQqgjzeMvs+3oCSDvQ==","signatures":[{"sig":"MEYCIQCbBtRTnR3jOYEZwPLiSKfLB+Qhi4orwhU1L4b45WTOSgIhAMNDcGmY0bVTRLyBM7SU6Pu3wkNajr82ekwQqwh9KI7R","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgssPVCRA9TVsSAnZWagAAI10P/2rYgEWkPo+qrzPx7QOz\nDY2SkOE0xD0YlcYlL08dYcobK45F2tkRX7SPACJ5GGt6BSOaw/U/EBvmGL+Z\nUn65gOt/Wb+QSefmu3i0gkNvo5AGb/hEjW/rVafHrY2wcT1Ez+hIHRdL0X7b\nG/xB3uOWff48MPi75ALclwvnBrKQZs2I484dZTb71OXeJdgJshJg6CvLiCVS\nEjn7bQC4aD0+QMgi4K0GZ6/ZDi64JrFi0cOBkaVpl0yUbloM7Jp8Hiat7tV8\n9vqbMoZcHr8nXfFrlAUvSvz0hfrmgceJ+0YkD+25aC5vr6LGWZtjOUjB8Dbx\nHckcHJus1FEV/xxHa444yLOo9ivEuufJV/KHbCSRxHKC5SU4ZKCIFODtiw7u\nGa83Ex3oqUU6rvqaGnnbV5h62gH0o7UrssqOHAAxBag+wOGwnlPnZKcWQ/oM\nRsqbKV8zfcjmEUqHLTNdMUvnB9zAVkCFVKI8Du9E2Mnhdvj6n4pOrjiiY9CT\ngB5zXWp3yvZ25EIlyhxZl9qkhPLSEctw/ZhUKJvXVBlvibG2Cgo3i6Fi1td4\nTaVpNqOJBdlCIg1x6TYanU9OpuOxg3zcpo8iGjJNM/ecwHyXa9kIRgi8Xf2T\n2csi2sw5gQOf+Dext0RNOd62iEMNUxJ67iqtciZgN1DmJ1Pxn+Dcib6DYpYU\neLR5\r\n=MVGh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d82a79e4860f55854681a7cd99cf724d5a0fa2d7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.25_1622328276925_0.3535563777775368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.26-renovate-external-non-major-856b204777f11843bcc453cedc760806bce53d02":{"name":"@balena/jellyfish-test-harness","version":"3.0.26-renovate-external-non-major-856b204777f11843bcc453cedc760806bce53d02","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.26-renovate-external-non-major-856b204777f11843bcc453cedc760806bce53d02","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1fb0ed74881186dadaf0eae2cde945af0d1b2a3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.26-renovate-external-non-major-856b204777f11843bcc453cedc760806bce53d02.tgz","fileCount":24,"integrity":"sha512-zjREWHqTRlM2cfy7K5hAkk/YqWI4bbjmtNDrPps8m3E3j1rb5PqgVFQggrcJ3Zoo/whAwWt998Jwzvm7p62cEw==","signatures":[{"sig":"MEYCIQDiMZauUOCRq0rZG8I51lNKeZRLIZaD3s/gb9s/4004HAIhALJYvOVWyBw1Vhof0WlYTncaFVaZGUD7w0w6t7tKHvJE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109985,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgssTFCRA9TVsSAnZWagAA8eEQAJ4D+11oOFfekjAJ2ciI\n6It6MnY0iyNU1y3Z5quqVA59wJvwYnVc4dUjKMhbes+dvgyfGkg5Vizd2EuG\n7qYuzuhZyoGNV78SMBUXT9pMRfFsD/gU17SpbFrMdqgjrJ9C1ie58zhz67Ea\nN0Xa6m7cgB+o17QPKONquoVImsWc3Ic9kzE+7RDxU8sU44Se80g3mov7S7Ra\nsHjUVUX0cicP4pe73HsmmGSAZFQ2Cub84M9rjQj7MNQw8MdHiiRseYa2GBoz\nOgSM1Y7eKOOdaJWrbnoYWQXzNM//+GfGgdG9e4ScjG9PMOb5d+sHx5meFihV\nu0AwaEHYimZ6FLUTJ2rg9cglkrHrlOjpo5qYJsuB6sv+EzjdV6he5KLMYUBB\nP04BylJrTRStuosVBJYkzE7Wi7IFEB1pgZUaYeElYWgHiUeGdD0ImSQxD5Qp\nSkYq0MECkCtybXzOmtVmu8Tzfh/PNwvjW3bVBlMAExFQwZdd5qx9l2hE+lYI\nmbIA8ocrbYF6BHtEEsnf+bima40Kh7tT9XpFhVFCMMzZkeoM8G6poy8I4xPb\nvQV+neLRiB4k6alu4tBfYMzRhhxlGzWDLeMLI8WAUCYEYC/1QsN/bZ8gmMsw\nIoSgJ+6a0I9oYf9CGx+o5e3QG32hniVBeaPWBoL5itvDQHfhoO8U0Ktccb6G\nY4kZ\r\n=3nsw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"856b204777f11843bcc453cedc760806bce53d02","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.26-renovate-external-non-major-856b204777f11843bcc453cedc760806bce53d02_1622328516621_0.5279575341446552","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.26":{"name":"@balena/jellyfish-test-harness","version":"3.0.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"612dfde56a575fee593f3a57fa2da4d286f5c8bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.26.tgz","fileCount":24,"integrity":"sha512-aB21a3rc74/+keSWGA8g/3ahhjZbxBwpuT8abMXtRl13o3ACPeFG8UKHMEPRuCu8MAVojDDc1JmXKtv+c8IvZQ==","signatures":[{"sig":"MEUCIQDYM6HFnUpywSKTs80397eL/ObSwxwEDnJk75BNhTTBCwIgeDbkkm22Mdo/lFc2WbZBg2f/eHmY3tArhBJ8vSZsSic=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgssvuCRA9TVsSAnZWagAAgkcP/2WbLhSZ3MVb6KNlp8wQ\njpjudHT3LieGkvH3oKcJ80lyFJG/ns00SOCnzQYYFSTo0rpMXPnIyVkNLL6m\nG5mswdng4qgVaGmiMgBgCeiATY2ukOil4PBKIPH8mL4zwifQdehVji6Lwy/N\nPwrY63McYRCBlu2oHY/j3l1329mPlOOUbYX4SzHeaFEs8pB6ij5d+/t+Nf0p\n1DDVNG4CzuL10YRUSoY8Wq2ZR3XSlw/gqSouvt1J8gOmUftNJE4GW2bgVbKw\naLM7mTXIIqM40x+YmWaSM5jJTBaxXPa6wsZViU5cjV/Z35KYIZYDVmCmSDn6\np24vl+s846XWZ+0vr18x3pAr9zc04+SxWINF8572FkWyNO36L7rzAD5X61VO\nB+F96cHlivHUobWx83au7hzp/koaviaf1/nWN/+MbN5LWWwX86hHcDBqWyDL\n0RKy03eqeYVo/sbnf3EjiPvdL7IOnszh6I9GXMHvUZH0HfMxM93JlSoQDuh5\nZo1JzS/6pQQ7tR8pmuwwZMM9gHofdjkgxDF9iiukfVs5lDmIZcRUgI7tSlOh\nMfieCBw/xzSU4uT/qtoXspePD4phcgsMDAe4dxwh1w6qkcQF6/auXwWdiZsA\nijtF4R1SyfzhGP+lJVYzt0JTT7H/aSk+m1PvdhJW8HLKTPpoeLU+pGZ4qs/a\ntmMB\r\n=/yMR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"439f39ea542bd3cabce34433598218e9e951a396","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.207","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.124"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.26_1622330349882_0.6411318413042497","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.27-renovate-internal-patch-e7176a04aeed7cc78385eb3076a5f1312747f529":{"name":"@balena/jellyfish-test-harness","version":"3.0.27-renovate-internal-patch-e7176a04aeed7cc78385eb3076a5f1312747f529","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.27-renovate-internal-patch-e7176a04aeed7cc78385eb3076a5f1312747f529","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c03142e97d665ba343c96da81fbf63f51c54087","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.27-renovate-internal-patch-e7176a04aeed7cc78385eb3076a5f1312747f529.tgz","fileCount":24,"integrity":"sha512-PeHfQcBrBbOHt4UzokkezSqNIi2RYWaPSvhYToP+aRhEzVszqe/qRhBp10WUuPY4QPkg8ViCYxlI+6GLmwF7Xg==","signatures":[{"sig":"MEYCIQDPuZhFh+56TBedlplQSfrTySmYe30XzPzNEWirjl1cBwIhAKYaYcN4REA6JhMpKHtBkPx7WrF5Dzc5va9Q7EMQ3koq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110055,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgss1ZCRA9TVsSAnZWagAAvukP/AhmykgxFVhdqy5SMQTr\nfTnWtMPVDYkRJM7H3IXq571A4wpuz0YG8MIlbnIjhkw6sKQGBhV9X8og1Z4x\nMib1Sr33RlyRSUUnK6Ufv+Sym4q1IhlDIL9IibLGrJCysnH9lyedGI+kY57b\nGO3wTdB8F2cvk1PcnvSSMnfbzhr1MK5VHy7jhien969dWnzEE9R9oXncfKa9\nIWgUL+YTyJwhJdTJCcueKCMQEcwBWTch1qh4mNGa5Cr/927sPmISGCSuhLTT\nuLxCGH+L2qMvi58ll68FlHPFDm31ICNX9GP0MAZXn11kxrlFJ6HEmfe8Gny1\nsAcXLqOJWEgMl5WIm5+rUo/A+umiu4LWKCFEX+ujF0BgVT2aHR2rfE+LRVjL\nlIoE3GkIktJqKCbsj7FQ3t40E2wfNHhJYbxmuhJQkrA6lEn0qcV7nmu7g3Hw\nni3uALBFhCdRsqXqKzR8S3/pCl8HPO7/9LMeSV9aVmeeulyBK6ASigwzeuiR\noJ3spfgmTP+ciD1ahlg7JBn/CsOeYF81G1TASksk4Z7xa6e685DYjp9JXesO\np6sY1fQKkLlKAKZTMwMMQqn3EPbKBWnfPZxAXAlkLHbhIMdFtrNcN3xuEKPl\nGkbb8cvrrhgpaImNJENy/EEdTdTDTueHinedSiuGLlDs+n7wCpRojpVLW6o+\nUi9b\r\n=+1u8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e7176a04aeed7cc78385eb3076a5f1312747f529","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.27-renovate-internal-patch-e7176a04aeed7cc78385eb3076a5f1312747f529_1622330712767_0.15999218029049866","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.27":{"name":"@balena/jellyfish-test-harness","version":"3.0.27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c11e42f41b736bbdc9fc3c5236bf1aa53dc2cca3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.27.tgz","fileCount":24,"integrity":"sha512-t5io/ziUVKmwT7XrZw+ujw8suZpgYQXvV5l2SkHr2mu5So9R3ZfvMmOg5OAwYwrsiVs9p5nYh1cZx9cfiPB0aQ==","signatures":[{"sig":"MEQCIBob/2OR1c+FvV6qlWXlMEEIJsJjmbI/Q/DiIADVL9KHAiAL6PQNw+bn1DVUtKFxN0rCg+fRxdIPHgej/pj3GGLvbg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":109990,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgss4aCRA9TVsSAnZWagAAmqsP/1SB/e3TTdruxCwV2OJr\nDgEUQx2NroHvJYp13AS9bWao2baJQhc2vI4aa92YjxqvVTIe2eXW3eIYCdwP\n4dgB9fXf9tqIVP+JgZRn0+wjJSWeE6GtqeeGO/Rx8LV2Rjd5k3ZsLDdSQuB0\nx2EWbu9FtugJOsDHD2q/e0Xr9hxCzTVsIrMzyY0do6zyYo7s1izuf5fRaW4I\n3WqIUYiNbb6Gg3UxPDM/qrSj9cI/hiwbnjBsXVtIwznyAE+NSOAoEpf5xgaT\nfzEgaVCLz2/rYiFm041yCMhEG62YfddtBeQ2+Kf268jtub7EHIauklckBojo\nUGWVJadNyeUwxiAHIClNSavqeU1W+HyAD6YvlKaLwxdZp/+DAqpzV/fAFyLJ\ndEEn2AyipCKR2DBuLMcstExDZQdZGxGHglDYzvNfJXqjj7NiBe6ibS7BhVUZ\nhRg9RYcnIYPdqjbcHWFC7IUEI/R3ELGnA0CkPC7PdIqOJxUh4UMT8QJpHCyh\nkOdJy/2j2fCOeZoAspXdgWMjc3855MYoAzZBrJ7Oc/9/ezVcI5PnMNDzMKQv\nbK4QwQKCdqksahC4332i37BrOLgB+8SUReP4sNxne63BEQb2Ircms/mmDKwv\n7HqIafElX1ONq4pbkeJNB6wcrawTvagOl8bN3GU+bn/spxdJXVsKjkQL/7nK\nsV4E\r\n=FhsS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f539a81735449b6eb2561a2f78d422c80aef12dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.62","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.27_1622330906463_0.6809458018857317","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.28-renovate-internal-patch-1f0a141d27b4123c111faf52db16ab5d8062cd7d":{"name":"@balena/jellyfish-test-harness","version":"3.0.28-renovate-internal-patch-1f0a141d27b4123c111faf52db16ab5d8062cd7d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.28-renovate-internal-patch-1f0a141d27b4123c111faf52db16ab5d8062cd7d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e4acf7a7495479011d480e5272d1faaa86ae42f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.28-renovate-internal-patch-1f0a141d27b4123c111faf52db16ab5d8062cd7d.tgz","fileCount":24,"integrity":"sha512-bLY5SUokmn1UYfMoHRDtTrL5JI7LeT93aWez4S677bPEXQ1/5RhTKCooFYkHP//EnZBqklDUEgZgB8jUhMjc3A==","signatures":[{"sig":"MEUCIQD81GdYacpIQ7IJWX/wS3hBdAhzsimDC7hxeZTjZbVLYgIgIQeYqJeQZ2dbpitdL3xT9SLUNpaL7rRSTBCXiXRB3jQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110161,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsuMOCRA9TVsSAnZWagAA9lcP/01ZhYg9RNzx3dVK6Mat\nCtD2gmvMSai3IUk/ysYa37P6kp5f7Jz0Z83gUW5eWxSk51zDNm3Bj3We2Enf\nFGyuPAXoPfF+YHFsuE+rpAW/A4yo0UmN07b+mAAHiKPCD1ub/vBRKGIUD8y6\nCP4DVHeobpcHDQC3fQ4b4GsV26lsSmtyPNhhvKJEznLhYJBg5k9lChbC0dNh\n9Sgo901wvxRdiaKTnghgS3leEywJmmGLcI/+bUVZOytSahjCGD9JORJ68+6J\nX3hKkJwd5xSwCxuWCprcz1IVNeHoUWRuM+SIM980Zgq4wXKlIT3xWFj59O02\nNai0Vg3DxvGKritmxLh8zQ/MK3CysR39aTvgbsDI4YQ8UrQPKS06rfKDiU2s\n3fGhenbPH5mNHGTlQTllAV/59SqpwmRLXM2GokGhmKJ3DNJ3TNwIxrSQyav5\nR5wegldyUxfIpPhkOAnq7tXb/+JxKx/fYeNpNQNCQJoNo/QJz/KFSwyL9b1V\n+Z60QVo4cr5oXsElvUIfhvUB/aLNbl7m7yVgSZeVXvWVCBH11OZCa+JRO8Z6\nKxXnx3WlgOnui20AXsKSQ7zHawCZQj4erX8USWL8Ns81CFnad1paXq1MCJs5\n8C7FUHy94dmMXhVmnR3wR4Imzzy4uqX2e5db8aiNwImMs2XDxKmyo27REZ2h\nfN8n\r\n=QYHS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1f0a141d27b4123c111faf52db16ab5d8062cd7d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.28-renovate-internal-patch-1f0a141d27b4123c111faf52db16ab5d8062cd7d_1622336269382_0.07269775315202676","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.28":{"name":"@balena/jellyfish-test-harness","version":"3.0.28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.28","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"556008b2b517308b5c40701fadf4d24b6ca8cfdb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.28.tgz","fileCount":24,"integrity":"sha512-LlJfeRc8VtECUCpcKRk2Z612Zknzq2V90eFnGegSvEpE7868hrxE4N7+Ni+vfZHt3L018BiiNgXE0iu8KMYXCw==","signatures":[{"sig":"MEUCIEtyuRAuBwYbWpjFjwoBbB4JzOGoWHMJsstyNgaMTqASAiEAwVi8C36tgJefymkvQaJu8Jn2hpyHfFr0NXI/ZBZ/dlU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgsuPvCRA9TVsSAnZWagAAI0QP/Ax0Ph+QSbHWEX6U1j+4\n5akCoScP3m1FEe7DtLKQOF+uSIQcWUmG7Cfo9/4F9uOrGwH1pr7kYsMKguYh\nDK3wr6XEFHCy3aPfpTywpT8Zjw2weOFWDwxRrzXz4OeSduR0E7+5/bsyTS1T\nEVJZfXARC6KLwzNEwEVQ8O3efdTRi8L3jU7gc4GqI8ci/sLOKiIgNvWxmwn7\nmEcJSvQK02+3H/n75ZHKNOezpuYm8tL6Iw/kF52YmT4lJlv62CxgBwZGjjNE\ngCRgRX/wyz2ByEbHeERnigmGrVoDOT+tfFLK/VPMASK0MYhPDxG5IxRu4Yxl\nM3XadMhrl7ndCY8Sg3RI/AI0ud9MP1NNIUgVP0YCISQ7abCARF066uNmN7bl\nCrNO8s1FoTi4t8LUsXMtkgpDmbd8BGM52NQ15N0Z1nibbAVL9rZKsoNi8I//\nApEK1ygiYnlFgZmRH3NfDu2P+e39mvz47Mv9ilxngmZO3nrMcklzmv2n4NVt\nTyC1Tv0WAkR5fMhN+JQXHDIO3cNZ4/qq/ZhAQ4bdSb0T7MBudARxGLLBQSXA\niZKvKR+JXBQMXvva7JIrd+lhz+qINquCeE538I2M6E6X7zH2jkxo5o8YmvnR\nzzJGrnwIG++D4mRHEHXymKirbphl+2BsridFet4SSogV0S9TvnX/2OizZkVl\nyAmu\r\n=dRKg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"713da7542befa3e858d3064dd2ffd009c5d6f634","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.7","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.28_1622336494851_0.508717538944292","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.29-renovate-internal-patch-481a0f573d3a2eb945a459c8d1bc7123b3588d9c":{"name":"@balena/jellyfish-test-harness","version":"3.0.29-renovate-internal-patch-481a0f573d3a2eb945a459c8d1bc7123b3588d9c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.29-renovate-internal-patch-481a0f573d3a2eb945a459c8d1bc7123b3588d9c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"318bfdf7b13157a5a2a746ccf399607390416368","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.29-renovate-internal-patch-481a0f573d3a2eb945a459c8d1bc7123b3588d9c.tgz","fileCount":24,"integrity":"sha512-Ogf+9IHRDqSz41gpuE6pn6Eug/HF498i4T4a6bOFwDNj0cE5CyHYBVwiv+zEC+wZtUkdZXfOjgx1Joz9npBdXQ==","signatures":[{"sig":"MEUCIQCNL4Tn76qUfpd8sZr/X+leJ5nalXnLGCurbEaaEiZTaAIgJjhxUfqnAg4LXRi+sEISEH3G/LMKRKBuoiN1hi2WI2I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgswDRCRA9TVsSAnZWagAAE7cP/2SHsv+BMO6F2/toxh1R\nFXny9LOEvgV2c2uFt5SzyY3HqSSGf11aPNsWKMFcrdMjOI6pYi3t/PbczvtK\nTbPttuk+NC1H4HHw3tIe2NN3djaFQR7MariZohDNzwKpDqXl1toBqkWStM/7\n1kYMuUZ1kahMWdD/khbJr2K8Eko25gfVOYAQxfYkEThT7dCDgVDQz9lmrHrN\nh1QKOlKkhSeOkGojRiig2C6jBGzHtAPD6yDtUHCDuxvu/pSiBHiCPe/6HSvD\n6Be46DkNr8YROHe1OE9hDd/pNFgJ4SYFFrv9+3kRsdzFUivYcQn7oLAUrNOG\nsET7zQJnMIvDBm/e6rcNDVCxsoMKnZLd2nzeid9OBCR2KCNSII+zLkTpaHq8\nM2aBUqIiRzV0XUXJm/QLeGvchnEJUoRgdP8hkuN1iEtzFBqK57hsavX7ceT+\nZ+1u+z+6C0HJGyusSCL07PDTNe5I2swHoDKoTIz3kPKy7VGuU4PaeTwYkIBb\nVsHoOgETWfy0EpE+o0/w/420fxEwBwhmZAyITl0TRlowUKBN4Axq5HTRcBYh\nmw2SuDUh0z5Px5r9n0gh3CSBRE0ChBqeCdNzy/rR6fVZ5/FlxFT9d8x/SndA\n0PyqQhdJpcW6iOmo7jNX5PWIYVIaadsCwPj4r1uUAvObtJmrI9837EmjKGGr\n9/HA\r\n=cMPG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"481a0f573d3a2eb945a459c8d1bc7123b3588d9c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.8","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.29-renovate-internal-patch-481a0f573d3a2eb945a459c8d1bc7123b3588d9c_1622343889253_0.0583716014326261","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.29":{"name":"@balena/jellyfish-test-harness","version":"3.0.29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.29","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"965d36e7137828c82f78f9b39a3d65c467962e21","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.29.tgz","fileCount":24,"integrity":"sha512-tt8r4Rdl8x09aYSXPprCTFMJqtLr+OTm2QHcCq83lj+V4dMLf+cvHAkVK/kh81gD2oTO0SZ9Q6VcmpBBV1bmAw==","signatures":[{"sig":"MEUCIQCfm0EIoN4HhPZUWtvStPxBGw9k4wUUf9MwsoE4TDkMRAIge4vQ442rFmbsFhjRd1/AsFflHxIbUiO3joZ1vXH9YrY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110199,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgswF7CRA9TVsSAnZWagAAi3EP/jczLzuQxG7VxPAqLup8\nyjo8tsIOsfLgbSNH4q5E4YeoAkkgE2DxOPaZXd9pDmOb48jm+O1UDo77EAuG\na8dIfYIUCokB11NnoYvB726ioeu9xaEz4Hb2fQHXMahhPQ+q10+znDYXkWVZ\nDLLaPvlaAuEntBOC+4u9hWB56PIA+DnSWC+hk4v0VV4JZkvyN6QPY8VcZdvw\nkjBSHVyfpIgVT7K1LWMhIS8Wkku79MPL01Vo0Q2+7kX9n0W042AmSmm6g/Ur\nsa1Gp0c8CRmRDCQQ7kWh6zzDDRjMEI3Db5oFSVb4zL8g5AOQ/LBR0hbUIk+9\nYqyVXgIXnmjhF+CT1h+A93N4nl8qNr5eH3TmTqVdPnxDsm7X+2OttFDD4yAa\n+pKHvzReBXP2eUNjX22843m7KcYt8p70ZxtlZZcE63JYRdHqC8Ti2j9a6oYD\nbOxIRrSF3oU+qkBQd5YtqtZDF8CCYD5kZB/4GvSZlNU8qMDC0LSGC1j9vYg4\nJJ3fT4u+hihjccWw4X8/v6U/SSQaNRMyH/icTcjrWaIeXktAjjxFTtjcY8zv\nR15mvxmSt0ZWwcr8HcoXz3YlaK/0lNU67bNuTHVR6qPsDk1XDthpyhkDBlTa\nJXZg8J+dSV0Ac3T7AI/J3toedLue8uk2Bx84ga5LFrN9DZEA6LYeaiPVqvvL\nre2L\r\n=dDK6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8342db8bebb81fcd875e09c50add525ce21c961e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.8","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.29_1622344059128_0.12062824516798187","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.30-renovate-internal-patch-f3563c590e60216e09aaeafe0c04d0aab4c495f8":{"name":"@balena/jellyfish-test-harness","version":"3.0.30-renovate-internal-patch-f3563c590e60216e09aaeafe0c04d0aab4c495f8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.30-renovate-internal-patch-f3563c590e60216e09aaeafe0c04d0aab4c495f8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fd714c24924b0531cf9dcfb89a30cef5455ae4cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.30-renovate-internal-patch-f3563c590e60216e09aaeafe0c04d0aab4c495f8.tgz","fileCount":24,"integrity":"sha512-gve5YMTIsTUoM7Bc5L9HQXkx3KBh2dxYuTFfu3i1yI6Ec5bmZFMo9U19JbrnIA03V/SI8kVTAjcPiZMy+9OBsQ==","signatures":[{"sig":"MEQCIGtIxjMAlguolEvTAc9kFI+wMrS1YUti9puiQvz/3oORAiASI2Fd1qa6JypERBNQhHS98blsL6xuuo8ba4U8eeVGZw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtDd/CRA9TVsSAnZWagAABWMQAJkxU4hs07/RN9ttbTbc\negKnsWkLgCwGRywyuxHJY2iqmCEIn+295Ix9BQJHsTlh4aqEDu+Lq6DHj7IF\n8VgbMcQkzpUktV/KedMpBNxHX3DMxpKUWqpfg+3Mhw4j0gWA1/tebXPmRF+Q\np/Zb7XUNkaKZK5YbX0fQL1gtHa4SKC1RSHCTTJqK/FtH+MxLBm+MtIxPBf+d\nj3SUlC35lY4guVAjBDy7ctCdJbcWi9SOTYkdZfqWOpjbmH99OMDdPvH0MPNO\nC3A+e6U/eCeqIoRlGShWe6OCw7ha5sm2ktWqtK5mAAcfp23/iJzf3MObeTnr\nzQghtCdXpm0VjtLNuD5uvnOsQ6mpxSmuBSxvxV6ThTHO8aMJX68OST/xm1kA\n+wEmJff5iGCtCKlfCPrWC+dPhd+LHWvqFuFscLlDK/o/i/Bi2SqEoLQAi0wO\n8jKF4V/I3L0EYrGehqsPbbEkMRl3COhb3JkKDkzv0fxOqebWCM21EAh+PkIH\nnHO9+K0Z0Po7sGuL1K/0Se8ACkvZcnNgI5axyaE+cCUL4pUrAuR/i471EFfY\n70K7rBvoTzbK3zSiiDc7WGznySf+3wmFovgDm8mw5QyESC5fxwmgg+dZdwXY\nTYrxokXhhaUoi2OD/THkBmhgiwSgQHadthgSj+L+Fbq/EFLY422GX8VjqZjC\nyQd1\r\n=KR9B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f3563c590e60216e09aaeafe0c04d0aab4c495f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.9","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.30-renovate-internal-patch-f3563c590e60216e09aaeafe0c04d0aab4c495f8_1622423422652_0.1271319071118875","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.30":{"name":"@balena/jellyfish-test-harness","version":"3.0.30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1407a585aa29ff803298038117f12c5c0b41fa76","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.30.tgz","fileCount":24,"integrity":"sha512-9SUjucf3vyui6LMzi41I4bpobCHWQ8rIzyAQyaoN3cGsoYkhUSvi6e81Za5jpF1bSutGyPki27RLsxCdIjoczg==","signatures":[{"sig":"MEQCIEI/31DGdRsfHEVDK5gSk9SdXXdLA5c43HmZvzz5msdYAiArN1LFWpv9oZnoEyC6hrafa/Wa+1GliStqDuuxp4Kfkg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110302,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtDhWCRA9TVsSAnZWagAA3VMP/3Md36FIQB1X1IdHuvBV\n37eeQjxzhNx6GpphiJLFdzpDdn98/PpqvEdzBNp3YJpBWYEaSX+Qu1mH4X5B\niUtQFRaLLBncNU5zxiwyWVTnEridSO772aZOtlVBqOP+39C8kCkt6SbyGNA6\nSmdm/4uueQrf9oCZRKRvA6QAe2HO1m6h4RcpHHuw17AsjnNEGV4xcoZ4rfCP\nelLWBfmOUHvo+xJKsSXmkBDNNwXFpTwmsifTbLnPibZU1THrD1gWUNtcdxft\nfk4fTwVrj1qU/AoXVY/Q+wmmK4GHbqdbZgTA2UxojyCWBbIrxKCtpDAn7A+a\n+ByipWoDRaW2ACTewgHyLovQgGfKOqx6TuT3h4ltwasw00mGX5ACV2KJO4Ln\n5khYlJf24Sdwo+2gKpcFr63IKZwmSkfGE8bfPXD3SPFJJwRA8Xu0TmefYD4c\nRlpyKcNm0he7DutlrdMUR+aEvkKx8G6GevLIE5ZaDvDYCmgOeTn3xuv3PMD6\nb4IUaoYmq0nZdYpbIqqm5rzFx7RSVY39XtwKZZ/15Z5vgRxF/SRb2/hISPSZ\nXiyk3gXSbU9MkT4bs6Kk0f26bVJ8AAamEKo9C8k1Yjsqd7PqIm25xi8ryvx+\ne5wW2M5SixZboiaYoCK3ycrbukpy3Yw+URpH1+yO0fiWInxZT3TqCmtMhr7b\nc+Wz\r\n=yTcb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cac3d23225516020956adce7e78b060b9b4894b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.9","@balena/jellyfish-sync":"^6.0.208","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.29","@balena/jellyfish-plugin-base":"^2.1.125"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.134","@balena/jellyfish-config":"^1.2.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.30_1622423637956_0.7311761224021287","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.31-renovate-internal-patch-761b294ad23e47b72eb63712526e513b072c4d6a":{"name":"@balena/jellyfish-test-harness","version":"3.0.31-renovate-internal-patch-761b294ad23e47b72eb63712526e513b072c4d6a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.31-renovate-internal-patch-761b294ad23e47b72eb63712526e513b072c4d6a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b44417dff0d7a067ac4ef6b4012c9942bda31b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.31-renovate-internal-patch-761b294ad23e47b72eb63712526e513b072c4d6a.tgz","fileCount":24,"integrity":"sha512-JrXYPnI+SLC5XOnjIkbo/FeawOXaYIEiwNzlGNdCTq98FkHRqGIfySgX1P3tslkdjPIgFF+HBc82qOlkUiZe7w==","signatures":[{"sig":"MEUCIEqWRVguPEsmhNhJTD5RNimdvGhX7oOjMbc+6K4QIdRRAiEA/T425q+Ue73zBHwLakmREwXqZ/ooAZc0oCwIBUVqhbc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtGleCRA9TVsSAnZWagAAXnoQAJiJw/TPTvhdzclvHPcR\nLTYnw9sxvLVNSMoMvlKe1PsPc8eHcYxlvwiGh++10HHcmX7AdeZ33D682oyo\nLvV6Lo4Eihgs4nx2gd0oe2J8d86LKmB888ug1YqOpOngJgrEf33bB2sSNcOT\nWxmx2OB2mQsmSww0WZYRMq/mQA2HFXRV9MjVSwKGNxlhECpW70V/9cnICaw2\n7+BCoOF3sM23KupF0U0RKYHNYQMdEou0kgAEgdja4g6CtFR1dcxxHvJrZ3gI\nQgYYqWqtbhL1uQMwrZzszi76ZtdLldl+2pau/JWRN+iJCmeDBWgVL5EtbZ1w\nA7jVl2zHOjXw/W4IVj0HmWVi0w8b+gBcARI2JDTFcGsWHL4A+KOADUFfr2nx\nvtwoEuuN/qgqZiEVAyXatPzIZJGTyI7rMzLrFg+A8PqNhRt2D59KHaMOaaGn\nKEHhh5FZGyistJoPCB4rDyaCReQqTrXoUliC7YubZtfUeDTAx28PjMX8jtGo\nQyFBy9les7tXyyz10jQUlQ3M/ttPnp90fIfGaydmz8pwl41OebBPNym2UUNv\nUyPc64a6ItnhS/khMT0Q0uhA+4Kn8KqmlcUtGHbYVUHkvP8aCCQSnkSijLIY\nU9XwDtVVpna4XjChkHXAWcBeF/PJSdDJaUixv6zPA6Qf+HwJll872zrMVvyM\nEixP\r\n=U6qx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"761b294ad23e47b72eb63712526e513b072c4d6a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.209","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.63","@balena/jellyfish-environment":"^4.1.30","@balena/jellyfish-plugin-base":"^2.1.128"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.136","@balena/jellyfish-config":"^1.2.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.31-renovate-internal-patch-761b294ad23e47b72eb63712526e513b072c4d6a_1622436190080_0.8216040342881468","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.31-renovate-internal-patch-089df4e479e477ba16d4b4a456dfa4aaf538d9a0":{"name":"@balena/jellyfish-test-harness","version":"3.0.31-renovate-internal-patch-089df4e479e477ba16d4b4a456dfa4aaf538d9a0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.31-renovate-internal-patch-089df4e479e477ba16d4b4a456dfa4aaf538d9a0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79e83705a894e93bf6556d057b4851563bdd109f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.31-renovate-internal-patch-089df4e479e477ba16d4b4a456dfa4aaf538d9a0.tgz","fileCount":24,"integrity":"sha512-CyHic3RKESTkvHVFg6BnFoSVB66iKDnOVKHe8piGjxkHxeQxmTkNP/gT/fF1nV1IFWWuWsW9pLiV5auIuAMLAg==","signatures":[{"sig":"MEYCIQDEbhdScpolSeXJJmnoW9JrMPsBOSSPAhnSKXh7CPxPggIhAIWBVe8VMaLR0Z2Lv4sRNDvhYp23HldelJt0fbQ7YQF2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtGppCRA9TVsSAnZWagAAWeEQAJF26iFaYq4JHj83U8Y0\nYouJIdlrIpnZ2XaBD7B4q4DIBoGipPuDxz5sGC0TVaMB0ba5bMJUDaUD0YSR\nqTnTYH5N5wmAbxRmcl+oR6Iq78DkETUjrCMdJTqmENuVQCICRaygioomGNKl\nQSu/tsSg1ZGgaVdykWg39EHn4pEUYIx5QhzULEnIj164sqoui3h2gPNEwbek\nNBpqU5NVA/Q6J0AqMm/yMWxFjkvVflts7oFi2V/dDTS0t25hu9AB2VtT8sKB\nbWfUl0QwiZ5N/dkUYys5XziSmjmzFlvQU9wSbNAQTcQVD6WcBhKuRZzMCzE3\njPuF/l5cVArWT8egjYimXtpYPBzGrwkHQf1MbFmOosAq1JyGwh69ZTofrBNU\nJ+Z2K6K1fP7Gp0FbaSKXZtakudeItiyho0U3dvxpAveq2a3qSFX0D1ejqSXY\nN4+AxlUu+2MjiOugqb5TLH07XY9xyN/oPiBkaaGXTUXDIwTA38PCtXg5W+W9\nSlxmh1dzTQmvcSHDvOMLDCZ139PEIIRmCIdu2HZB3dL6otKFenkLhzkrCa8r\nKlCbmxuyrBhdKn34AGs/JqoivJpD5Yhk17v3w2j0Gvs8qQy3vXO1kzEsfAqW\nPzFqVctt5JbPLXeaSNDl043m6iKmURAmTNfdEwt/6sVt5dgUa5ZRtaNHbenC\n8T/n\r\n=UTAw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"089df4e479e477ba16d4b4a456dfa4aaf538d9a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.209","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.30","@balena/jellyfish-plugin-base":"^2.1.128"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.136","@balena/jellyfish-config":"^1.2.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.31-renovate-internal-patch-089df4e479e477ba16d4b4a456dfa4aaf538d9a0_1622436457139_0.23384776314682898","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.31":{"name":"@balena/jellyfish-test-harness","version":"3.0.31","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.31","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b365797307e6a6da9e9fd9d73215280e4b74c4e8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.31.tgz","fileCount":24,"integrity":"sha512-UxFyFSZULRIB2u7BO8jzSFB33pZRaF22VSEeMFDRoCA3UCjPtrEeQZppEvwGa9rKlQSKfzyLjNl1FnzDf+vD7A==","signatures":[{"sig":"MEUCIHjHC3mNg5hQh1kxzeca5C+OOYlzqFRQqeT6ZEp3auptAiEAxuul8okZvXGsCOnC4Hghm8E41QtnUIt/Yvb/GRFm89E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110377,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtGtOCRA9TVsSAnZWagAAI+gQAJpS5v5DWgvTUqLBF0HI\n+jUDyK+zuedeHJC+A66A1VZnnttwRde5taJb8OWOX4jv/huIbdiwogetWyup\n9BfQY0EeqeC42rRkAt8tSfooASF1ODy39uecEw+BxdJga/fWYEdEpJcki1Gy\nYjXB/ysv4m+OxcaLwzJGYsAglleS2B+dYvvZ78nE1QEOGW1SfbbCmkm41sdZ\nIe1ZGG5zdNNQOq9tqJQgmG3WfhLDAS+dbDr+c41Lm8j1P3lhaOyFM9NotBif\nuKeydzei+vaL/pbon0uf1FKNmcSQJU1QF9nq+IUN3nM326luSm7j8ai0fcnT\n+tmlZsGuMvsRfeVnE47pAVXoYEoKSRyY0UBxydPop/MdvlGimmtJWha5MOGI\nhrQU3VKB5gKKtrJOphBOdNq+YCZFdKI/tzKqqaFDCeIIgce7N3ScUks59o6g\nP6FZXnUqILyQVCXPVF7cK69+Lk9ohg8UdSWdnXK3UIqEuUqDyG3fFVr9bFs/\noqXzuE/KxAxfv5F1MJN348wqPklXbtcd1Mim2+ywK7q5YLMIR8BGERPgnGUJ\n5fsRDtF/iGLBUj4gyh5T8/Pg9jE1YM21qKTFmWACenyRkEI1zFqjEs8dkp/f\nLhu+sA3lhCU3Fmh2u0gmgjAf+NOjubzPA9zGhRXCCWVndO3ekPOfHTmzCqFq\nWMnV\r\n=PSYt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c68ace6097e56c600fb902a6b3b55c1d3248fd39","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.209","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.30","@balena/jellyfish-plugin-base":"^2.1.128"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.136","@balena/jellyfish-config":"^1.2.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.31_1622436686196_0.9135816858303583","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.32-renovate-internal-patch-a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4":{"name":"@balena/jellyfish-test-harness","version":"3.0.32-renovate-internal-patch-a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.32-renovate-internal-patch-a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"680854cf3450b64b7865c4020eb6ebba53e44d6e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.32-renovate-internal-patch-a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4.tgz","fileCount":24,"integrity":"sha512-3yxW4xdmV6E9YifqE7GK4vGgalhDxvmdHyc8Nmm9Mlb3y1aM9DbdEd0PwN4VYQqYckXJBmDy9O93vxXqz5/NcQ==","signatures":[{"sig":"MEUCIQCS3OaFNEqAhcsEx+b9ovA2fBEkrZALrKouSkSmkgTwwQIgbIWUV/4iN3H3UXgywhyHInYvmkcyCCOkMXGBtS7tOf4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110516,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtJcxCRA9TVsSAnZWagAAz6kP/0UJqhyY5bOrSbZwfeT/\n8SbUDs3Ia0/dcmM+DR/uGocoXNPpCKSSK67A2tDFfqWoJfmbXJo+0HsObnap\nrhu6JRze42gkBl+7fT2uMVOHxfTYJW1HTFEMXGSrzVPSzhe21Ia2NiVoqRUg\n5BfYlKfREZmIaOYKnYCrG+eaV+ZpQViVlQc2UASqCgM8zeBKIVFWEDRD9Ztc\nTYhdwj6G//oaD9PfE6WFrhMFBO7Sum2PR0BPYH2qyThebsrL8LowtplfPJu5\n/yuRPhnScnspDSqnQTgIWkuE0dvPXqok2nm1Dastai43bCeernc/LJbxYUmj\nHFM+mOHKtGRR7JAd6PJz6O+lQCoYqR9V4aIRJevmUiL0Z8axcJ4RavMYR1h+\nTBO+9ydFNiXKDbCsHkzUhZKouABhgKz/v0z063ZAsN4UqwGn1K/zgXze2Igd\nsa3fJ9w18xHya/NvnHR1oBcHYVFSGIxsVrkwIX4SV7WuJP16owpaLr80hXaV\ngcLI/23Js7i7yK9dMQGOAlIrcPT2+9JvdX/uhjXl5Tg2FH3FGhL+IYMA3qSa\nLJJB4H8JKSwtFS0G6BVhrVrlPngGDp9UaCKxWoNLfSUBdDgMGMxVow1q+2bN\nPmDz3azZqMqw8BxX/KN1l9opXnLEyoaKvT3adi96o3N7DzKt4LcwFDeSspjI\npDCY\r\n=lZmg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.210","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.30","@balena/jellyfish-plugin-base":"^2.1.128"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.136","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.32-renovate-internal-patch-a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4_1622447920615_0.39320990803606626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.32":{"name":"@balena/jellyfish-test-harness","version":"3.0.32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.32","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"36f123837852dbc812f0002d04f509ca736408f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.32.tgz","fileCount":24,"integrity":"sha512-nwOlpnwGpliA8VNz4Ue+ljStFyb/SqWl8cUd0oa12A6V3Qyrza88tKibvq1THQPbRWcrgaxccP8zcUfRiZWj5w==","signatures":[{"sig":"MEUCIDbmHca3jwfLiTGCRxP0fXqGhGbCyYaZSe1VvP1qKesOAiEAzxZmWN0n034EQCMMBYAkd0QqiQTxMNBjqE+3aiaMiYE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110451,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtJghCRA9TVsSAnZWagAAsHcP/A5sI7jQGvsGs7UOIQZV\n4MTF6ZBEs0QUfGRkMepQbhI8h+wRfZSlsxRzs2BSgBFbrlU2dGL4uwS6x3Zy\nIOcMbdeaLyZh6mWZ0xLjQaTkPe0hMzcrCvfi7RSIDWArVhMX+suYEIfQEo8B\nNsn25Qs0MCIwhCdI8nha91ZL6GLKzYVMRgXzovtoJAZeD02eASJXSD4LRMX6\nt7rQEJzmuNEmav+dEBvqE58ap6N95v8J2PVsns0Qajz+DDXPA9hZpVnIwRYz\nEqe80pKsyrMZ9UXidFyCvt/D6sfESZjOf+5YogKpGA4BPu4WGlrb7gX2QTOw\nL2I5sVneMnSpVvtWiXo7zgQ8XOVkQNl0XFI+9xsZvW+GgcD+CtakWgK5P9LW\npVtwQrLjM369QxAqSgrct7PnsuBpyGQlEdnyn+G1Th5jRQOHQO63XghSW8BD\nq6p/A82/3vVmJpz4MIW+nC55sIfKgN75nxznBmTXmaP2ckzCDplnWNg3Boqq\nhpf5Gw/JopvcPcFCux5VWQ4LeP1GE+s+STZzXd+VkcaJWBPsW2VBwCjGpCJ9\nR23cnsJadodMmLAWz03CXumFrs3+L/EfNlt2qGFxI/hi3nh5YenV/OuqWeQO\nlAksrqhCH6OsaIdcUKSuosRluKA88qWCNnnzMjGIGSEUELVUsUhPmEIXg1B9\nzwwY\r\n=Wasr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"511ed53a7bdab2740ef00d6fdfc467d9afae4eea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.210","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.30","@balena/jellyfish-plugin-base":"^2.1.128"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.136","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.32_1622448160936_0.92649831729208","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.33-renovate-internal-patch-765280ce39590ea145475d4a4de3dd44f309fb9c":{"name":"@balena/jellyfish-test-harness","version":"3.0.33-renovate-internal-patch-765280ce39590ea145475d4a4de3dd44f309fb9c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.33-renovate-internal-patch-765280ce39590ea145475d4a4de3dd44f309fb9c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1fe09d94a99ce1ae70b5e68836a939d59d237139","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.33-renovate-internal-patch-765280ce39590ea145475d4a4de3dd44f309fb9c.tgz","fileCount":24,"integrity":"sha512-wElrJV/MJzALAT1IXqnI/UcDvvI7+61xC+SE46F0kD5N0SMJ+v5eR/RQXxEXESdiNUPTZCsjkDlMLZR8KIG6tg==","signatures":[{"sig":"MEUCIQDQHntQe9058B4BoaV1oQvsKttIDfegzOr6KazHitG+qgIgRNkpJ526iMtYhj468yCAIr5qvrtT1U+ctPnyUvgt/dw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110590,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtL8LCRA9TVsSAnZWagAAU0AQAIc5tHcwG7f1zkSdggxn\nSw7OWqst9/s4HuWEdxKxNmDnNFPtCGJ+/8LUS0h8MOdUQSOR0MQuQLIhytzN\nHNi+JFOYOqbBp9PcU1C769e1F+AsKNUffl1e+/6gUuZYmsDC9bjf2uU5mErG\nS2p6TwMX1u+Jmi5wY2trEBUOZYj2zM/6FJpDChPBkZtBXNxT6OU5UiQ1+hYY\ns71kkUsbHpIIptRHAQn3fkhyuAT7ca3JmB0mAgGGF2szXpjjXjIZ3g2pb6CQ\nQPDxJzXSbVtUlu+AdQIaf0Etd3oiaklUr40SMRxSyiR7PryK1HvViwFuClaj\nxFLDQGCARjgh9dlFCb9uAbPJ49ceKRrEVYxls4+jKRKoRzKQDHXLGmOH7B/p\n5uw+ZPL0qZRELC8Fv2/btPtzJPko33eHL4Q6hcaxz+gamOuFfSb0zHYSZC74\n6Q/l3HMpJellYZCITCxysxjQ4PkDK9Cs9AN7GGX3argv8zUw4zL//RFrYw3v\nsK8Zl8fV3TdpArW3o1BhifyIte7HcDorrBZZA6BfmNJX9GQzH+RlnlAZNBwt\nKMQBg7AsxgucbA2lfcra1qKgzpWrkc+z/81vGlGQ3x39YroCx668zyJ7mTh5\nQCG8k1lPBGtRYuE6o1V0xPjaJLYUrkl+0QyySDE3mAHrvKcO1VljIy9/p4JC\n46L4\r\n=T7HC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"765280ce39590ea145475d4a4de3dd44f309fb9c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.211","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.33-renovate-internal-patch-765280ce39590ea145475d4a4de3dd44f309fb9c_1622458123042_0.47183141206837687","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.33":{"name":"@balena/jellyfish-test-harness","version":"3.0.33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.33","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ea99e4b0c53b990b5c4784cc7ae76190a608091","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.33.tgz","fileCount":24,"integrity":"sha512-TofuYy9lePZwWUZhLOKgaakef3iVQGz7Dw0zO/XyCIpcTYI0tFCnXw26OiwlAqvRLupoE+b8qLXrF3Yyl7Neyw==","signatures":[{"sig":"MEQCIF2ztxbBVVZiaObIQow14qEpHM7l6RY4TdpsgZwDEmIYAiAsAw8PbBa+JEPwHLz0KkebCxRfLtGGkO8HxHA+nyavhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110525,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtMABCRA9TVsSAnZWagAAaEAP/0VkRACcoGbjk6H4HfFL\nNQyTPDp6+0mfPlye1Zr1c/LrYoXDl0d3jhCPkl6ZADVFE4l++9Ywx4NDhHHv\nRAhZHJ5iUkzFpcJV3vnGJZRrsHxgpsgLpLvsaLNt+afXm3rJumOc7eGrwlbp\nq4y+wEqub3T2qSyLp3neCVjqXombjV2mjTAXFYhSwvv/py2AKvaBrYakTqXY\nHiQxDsrgL5OlxJOUaHcDyaXBZiZxU7mxHsgFu1wlGaL8bA3tGYKhYHlIcSgT\n63kIXYLHgX6NZ0M63IG2FMzxkyCV1NRe0u8ILbWKafPJ60y1wtxboJn5ET9m\ns4/4AV1AmKGv0anbNZL2ISJ3X78Jv+gQeFMi3uktYola3T69ZcZB+RWXvpCp\nNum6E+U0xtx9QU9DPqlerwlk8azuZs65+l202pbHz57FeT5z2v3J7AqkUCYW\nl4MmFUMzZZO0vtrLlHRK7z+EgygWOr9lJ3S4oinwe8TyrJoKKCKf/tfyV4+L\nsmIdznfhLJxK8dpwDkNwvsK1y1howk5f3ghIoCbk48duGeEMrPCGXT1pVOgB\nqgLh3Zh/Y1BSqpt2W0NkVVV36S2n47chp2p7cUeVGQ4+OfudIBMzzD9Mn7Xm\ns8/M08Lq8/WXyTBjLbj7E9+pDumOkfaTxnsvyXZaJtJbzbEkn7Bw1xzW9NL1\n0hYl\r\n=zm52\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"65b1a3c8102f0bfd03e51c64ef230624416fd2f0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.10","@balena/jellyfish-sync":"^6.0.211","@balena/jellyfish-queue":"^1.0.122","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.33_1622458369136_0.29024683194425593","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.34-renovate-internal-patch-711f6cfcedbbc97ca1b9f4289fe36cc644f909e1":{"name":"@balena/jellyfish-test-harness","version":"3.0.34-renovate-internal-patch-711f6cfcedbbc97ca1b9f4289fe36cc644f909e1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.34-renovate-internal-patch-711f6cfcedbbc97ca1b9f4289fe36cc644f909e1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b0e8cd972f49e53948088df0c780f9b788b96019","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.34-renovate-internal-patch-711f6cfcedbbc97ca1b9f4289fe36cc644f909e1.tgz","fileCount":24,"integrity":"sha512-fP2kfbT/EYeItmEFYt0yYrjfeJNO6olYLjtKGqacr3py7sq5VLz6YHm6k/vbTOrSX5OxcYp9myZEt2wGVGNqOw==","signatures":[{"sig":"MEQCIBvPjusRnzETSC0YWD4h+TCViXaqmotG38O/I7ZXO4g3AiAOdv3omCxfTOkMV9vQGtbt70DO3X44/nPT6vteXUTE8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110664,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtNaZCRA9TVsSAnZWagAAzaEP/AxOuw15fOKacP+0YIFM\nx8N8tK3GWv45Wwd6NhhjaBQHd4rACEiXmSkBO3LMaV9X0ZWpBmppgUY6AGnC\ns4kFp7r5DySyIKrphTn/Yruo0OyGoLx3AdO22D8lfZgOIuJ+COUF690tbE+/\nU+L1KLkaRp+xcgiR7oNZmOng9CnbUcWtmDfkcK9VtRxfWv2sXRIeiT5mu7eB\nz4AbvJszuReXRPVk9l6v0tORDVutOWEAgk8IylxocGbnx0/pQCY3LrjLx38q\nabrR85PJpsb60XrKFFUlbfxDsNQq8S0cIqL6j/maZ5AoOQxMA5ZGnz21UcCZ\n4uuYZhF2jmEUJbKIyxDreKCiJoka6d2NPvcLmt4UzvfAaKOuCZyO6tsob21H\nnrnqanNFx9Ps/hWxeGE6KKIxfxxodiwOGxMG8Qt9RBeonz4gr2deG+78PBLN\n1dBfIJ1c3IM5o55Iyb0dBDxPflBudwNgCocaWZk+zsHF3Wl3h4dMiUlt+xvC\nrBSpJU2Gs9qXpqgO+YAnCtX3xvjnjpwLnDwqitIyPtLnaalsSSLs/7yPhsuC\n5784FBNotS0xMWb4wZp4gDRr6BTUAuLtmmu6njs8ybxcAnW1WtxpaAXnPuC+\nsvK/qDUaaE4iIud6lQoqhDdT3uCvvEabIsDb/7vJ7Aja0TesL4gsoCBOCWZV\ncjbk\r\n=jmDb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"711f6cfcedbbc97ca1b9f4289fe36cc644f909e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.211","@balena/jellyfish-queue":"^1.0.123","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.34-renovate-internal-patch-711f6cfcedbbc97ca1b9f4289fe36cc644f909e1_1622464152830_0.00784480268390153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.34-renovate-internal-patch-d49dc99dd0103142565f8f5cf0aff363aac2e3d1":{"name":"@balena/jellyfish-test-harness","version":"3.0.34-renovate-internal-patch-d49dc99dd0103142565f8f5cf0aff363aac2e3d1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.34-renovate-internal-patch-d49dc99dd0103142565f8f5cf0aff363aac2e3d1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ea0c3bee513ef18b7b762e00240d058d4a2c17c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.34-renovate-internal-patch-d49dc99dd0103142565f8f5cf0aff363aac2e3d1.tgz","fileCount":24,"integrity":"sha512-Yo9Xsi1E/R8oeux17uSVEApB67DqZ8M4hqT+MHWuqruImbfDfG3/kv7CouO02wXVSXCMsTtAbsc5FdEdT7mpWw==","signatures":[{"sig":"MEYCIQCjHT9xL0VxRA6Zwd63TMN6DCco5Sa2s5JapbhnfmiLtgIhAKvjlONK9P1bfqkr0qAgKN7gXvr8zQz0WfSQrT7/oFQt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110664,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtNejCRA9TVsSAnZWagAAAOAP+gIfK447LlOEFwHZJsFU\nk/bTgToFqWHEI4bvL/xgGnJeUfEgsKH/Sn/irZiE1HTBWHGALSc9p2N5CNR9\nlBJFRgik6xYzzYWZy1W5mX0CVsq9UezDcfoJUzIxMMc3B06ArDbF0GtiYJMe\nP4QFH6OVZZLecBEKN7GSGBfwbcHhYaETWMwLamsvISylJ+kVJ1nWphleUbBf\nEZKa/wPWt3sUjC/CEzynS0k3iGhMWXHPpK2lW3wCKfhFxylaUMWHRz6mS0on\nZSWeTGPU/Q9Hk2enD0Ldgl52Y9V1QPEEyv7ojZTdMyeozOCit9MFWYhgsoDX\njZmaDj1i6jde3k64/xtGH4uzcY9ljGtqhBumt1X/yC1ZJwf8yRqBkHmbl5DQ\nQ7d1pJ0RDq0CWBkmrcK4NtkNYHTQZSo+wYXmyEsy+jbzgcgOAy+OIgwy+0Re\nfmO5jZSuPbSSjdph/pjwAacR0K2xXQJM2Aw4ZncBzJOiBKNgGtG85DbtkeY8\naWIjMYpkuIg1QRFq4nzAp8AoEjaU6GOJQSDyZE4kTLlpN00PTUn8fSkXfetL\ne4X9CT2oyiiq1H3MUZzxgsW/v428kzOIBSARJihbT6oS6q6JaHeoBcQheuVO\ns8/zvwixdyydO3n9R30agIBlNliKmU6Tpy32OQjNFu1C8oHiMNCKgRA27L7E\nMGaT\r\n=Fe5D\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d49dc99dd0103142565f8f5cf0aff363aac2e3d1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.212","@balena/jellyfish-queue":"^1.0.123","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.34-renovate-internal-patch-d49dc99dd0103142565f8f5cf0aff363aac2e3d1_1622464419442_0.4683988469260243","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.34":{"name":"@balena/jellyfish-test-harness","version":"3.0.34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3d68e0eb57e4c173123c9773cb2665b99f9023d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.34.tgz","fileCount":24,"integrity":"sha512-YbnnRQE6TGaPoCEPVX/I94OO2Jhvinody8unE32l99G1UuQJtlyWWVrQ3VAJX1R5McUhbVqOL21zU5CM1HciYQ==","signatures":[{"sig":"MEUCIQCM6WCsT8tTD2Z4tw1vGSiRpTJ6gTHgvDyThuA95nNIAAIgHCsCgc0GereGlW9KjexPOfeJxRVC9tmby9576dqfVVk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtNhjCRA9TVsSAnZWagAAcuEP/iPX5ojSQ/Ig+lzBZE4g\nwoh5liFt2ZMRKcFjg5nQBxHUC7XklKKR4tk14KxMlIL4pu3KV+aXWR1ybOfO\nr7OE+H8tT0lIdaYxnCwxnSa70co49Z41ApvlcUOdYicNc/nQkDfAIbo2GMQt\nPI09H4Yi/Jf1im7mZgfnIIQh1y2HGM39WdRGsAOb1BC3tLUggk6Z+vM7blNB\nxOzZktWoj4OquWqg6l/67KkVLHaiSJLkOvYVX3eg0JkbETBBbzbsrhA8dKTC\nDugyUlvNqKBHy5InfF1VjQuk+JAkJdYd100xNBmfDdjUGfbrYM8E+WffhnVQ\nkPlxGYva/JaWOJVWlI6YLXrFKbYrlIfD6nIUcuM1aBZvbGVaxAXxf3lOhY77\ndJC8PsmhgMFPx8dKeiZrvIf1KjUnLqtLejvRaIxgfPeHeuErmNkp/UxrDHUf\nlb7s78RmVG6bCNXoSo0O7KwG9lsClyDxxGGFBTwKV8bkthXXBfGNV6uMDka9\n6Us1KTK843B0/jn2HVI043DjK1nU6d5mRctUizs2M0H3EdJJRb4Djy83hDcT\n7kJelTeGeFJ/pMspxDLaY5yw0GUGR501mUJVQRyS39dR7A7QXRHm+oHYtce0\nrsJf5F7HisHiH21AQaxqGC8cz+PajlXQh4PXZ2ieb3in0P2yTEuYJuL7ETCP\n9FY2\r\n=xzSn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7839446d704ba47fa4155fe0d7375f3cc24079ab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.212","@balena/jellyfish-queue":"^1.0.123","@balena/jellyfish-worker":"^4.4.64","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.34_1622464611299_0.6176629784956149","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.35-renovate-balena-jellyfish-worker-5-x-d3a41f1f98feefa929ee964e0f8087bda99e95ce":{"name":"@balena/jellyfish-test-harness","version":"3.0.35-renovate-balena-jellyfish-worker-5-x-d3a41f1f98feefa929ee964e0f8087bda99e95ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.35-renovate-balena-jellyfish-worker-5-x-d3a41f1f98feefa929ee964e0f8087bda99e95ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17883c2149f9abcf389c3c7b31cc26aec29835fb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.35-renovate-balena-jellyfish-worker-5-x-d3a41f1f98feefa929ee964e0f8087bda99e95ce.tgz","fileCount":24,"integrity":"sha512-sf2tlAFov0Qt74StowK9mH+17krybs+RqTumy0n3cFhAh9dw6KTBT+AhWsiAEjuMSHKZxZE9PcJJJ8KeYaeT5g==","signatures":[{"sig":"MEYCIQCRpgHwS8zQ7cX1igpm9DMw3cwXUkyNP9WFovWajKdI1gIhAO/VpdYY5oVe8gy/bQWsuWL4i639Lhi+wK8y70EM4MqX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtUIfCRA9TVsSAnZWagAApaQP/0rig/i2y/CSZxL0kD/t\nXWBSYHV9AeD42Xpm5GESF/fy0UgxFeYN/WJhTBCL5pBnx2bDpgs6kIwFo7jy\nQybaLFJKiQSqcHWKG1zYQrTbqv3ln8fysaxxh7LjmCMrCWQK3MMkexeYLkj6\nnFbWZ0gC36RSRoTSFRRxluXhe61NFJq7FqiLjXtRs+Lv7LtwLzaSwIQzotei\nn8jbz99gjYnJmzXw4GpHS0CSpJrIS3auz+BJSNEUZKCJE4oEYxMuGf0yDxPc\n7rP7w4CV/XvZJ6ob8VkyycccfV6igJgmCu0icG0yQs0R2x9OsmW6CTTbZ4wB\ngfkye51UU9UmkTtaL95U2U8+nl5MmggJ7wQLL5EX9Bbn2NHQErDB0zpqT5gk\n0tFTUsxD/tYCShPgmy/2mEtZnXF6eIKQiincqCNzNXxMkMWu967X4xaN7Eji\nkXMJrvYOU+HHsnHcDFKjA2SrSdxSUg+0yltDH2BCJsOoKoOvK+y1IeFlG4Zn\nV7CkZCho0sCmn+o9v1UCMsYPiA6WQf9Un2eurE/3S2erBOzM5debcMcdqa2K\nMfW/oG6nu0V2emWGFiAgcRnf7eGydDIaF0ncWV5NODL6ibFwZRZfhFiNClWU\nnaxj6zwtjejId0wxc/75t2TaAVHGFYNUtdphu8G6C7b29EhrZdyBwlL2kngw\nyDSX\r\n=hLFE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d3a41f1f98feefa929ee964e0f8087bda99e95ce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.212","@balena/jellyfish-queue":"^1.0.123","@balena/jellyfish-worker":"^5.0.0","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.35-renovate-balena-jellyfish-worker-5-x-d3a41f1f98feefa929ee964e0f8087bda99e95ce_1622491679437_0.7828615169632773","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.35":{"name":"@balena/jellyfish-test-harness","version":"3.0.35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f01ba67f7351c6cbbfb0003665262db300b82cba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.35.tgz","fileCount":24,"integrity":"sha512-yXLIZE8c9KUjF11VTLFhhNZ9Se35Nd9K46nPEvNn+wV08ZHEGrjvS8lGTD60N5UFsRx8vYG1lqi28pq24FkFLg==","signatures":[{"sig":"MEUCIGSV3RPTbx09tcD++MW59Tr5eVkJmU9iswinddpM+lmNAiEA+22w4u0uVt5NvFJd3yX4C9V3f4t0m7HcRtWPGgBolaY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtVN8CRA9TVsSAnZWagAA/KoP/36s7+sSBoR+D5A3aLEd\nVrVtSQOvBPTik0UzYeEyWrqGZ7RZunZ53NUaBDhHD7rSmo0RuzH08jnN3vms\nc8kdVepz9Cy++S/3dpMF1Mpa08Sw6wT8CzbiMTe7gpQsefd3PL++kXU61ZkK\nppXxiIyANfqtjRwJ9L39bF+VZ033HwfOMu6Nh1TovRANVIqSU7L9GdfNENWz\nygxPxS/qLZ5OxBUSJqvqqbO7YQdkYa6rUSkGRF27kCPLJM8hcTed+eo+oF79\nd5jJ6UN9SNh8P6OZkpGKyf6ZnEiVTnxnQ3qn4cIYViKgCWaki5jXF6yoKRs6\nMb1zqaUQ/I1Szx52taTZ4pmAlpKC/71I+r6/zW9lYzb9yFxc1Kc6JZ7j2tT+\nDeXsQ2pc+vJIX5ZFNf1cI9PRyGk+lNQResq4x+nN+2y8aPb0oZQDnZEFVHzB\nxjs3xeVJn0mj75lWnsjNEcseEod3as6k5m8MToRm7S6ssTPYwKDL4VQI9H3K\nQVTJI9o9wFg6jPGdjZUnbgkR0tGahBBHFZLsmb/diMS4kJDs9XLvaBKx8fZL\ngLTlYkyJsCYJXHUwhFmO+9OlLZXAspGNqZu+RwU+S9pHoKU79WSpRBgvVL+K\nyFXbS5jFkA5BNxEh+03xmE+kcJbCQjCdUCxWfVBWWC85wSr7P9vplOnQ2zH7\nAluF\r\n=ovfT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e03be76bccbb6b43c71aa9e752f3108a216c3999","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.212","@balena/jellyfish-queue":"^1.0.123","@balena/jellyfish-worker":"^5.0.0","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.130"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.35_1622496123764_0.9435038804769973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.36-renovate-internal-patch-33baf862988958d0ac5fe2de26d977d59937fea7":{"name":"@balena/jellyfish-test-harness","version":"3.0.36-renovate-internal-patch-33baf862988958d0ac5fe2de26d977d59937fea7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.36-renovate-internal-patch-33baf862988958d0ac5fe2de26d977d59937fea7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85fd21d931c6b66a82a0cc69dbb55ae9f05ca456","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.36-renovate-internal-patch-33baf862988958d0ac5fe2de26d977d59937fea7.tgz","fileCount":24,"integrity":"sha512-0jNy6XV/Po08AHL6Vcr9Bl1TDOl0a8F+7m4C1ech39lJstuhsMK8d8JrkBBVvsWFjMRV/gaAzBS4mYEsZIebdg==","signatures":[{"sig":"MEUCIQDo+zUGMnRQS3Qy/bzyvtcnebLQuvH558kfCDcq47OkhwIgYF6Q+DgLEJpy/EIvjqMyuoRbgMb50oLhkJ18HU1NUaM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110838,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtVYqCRA9TVsSAnZWagAA7KoP/3iBIer8NVsYdF6TiJQc\nLyK1tr4pk2hBEGMmZ2yJxOVh/9sbBnWHTQ0h39lJNW1BDdgUmT8nGPLft7oc\n6ybBq17bI6oTb31+nF2il48aSsAe07Wuan2tVgVc6uGpvCFXZz6uhTRIDNpi\n9kSGpiJrGwl/4zgLZuVMRHs1DI7/TwcGirFni1MYL15IVZKCNhUxd3nyJmda\nuVqOjgqp3YGTJ9npGVHoqGo6yg8OATkr32XmA/oXN+aNeS0TKjo4xWZOeXFy\nFu/GGYjgE/+3U4ZZttpeLXutxojm4hi3NNmW0dOpmWQsK7gBEg/FSymT7sXW\nJAFZNzdy4X9GGvoX+QRvon4ZTdKOTP1BCOiz5UAiU0f+eHszE9zCyzdEAfQx\n++/+J+Uhfgtr1efIEWkofiCGHxdu5S/Tb0uk3RTQwr/lg9rhASHVGWFDrToQ\nT/x4zAJ5IxvHrLe6fWE6Mg45w4Am5KEmHTxvNX1Xe6xRFeJVJUre6tr1NrxN\nzj0wcxN3/cblWuO63YbY4XhMcgpbyqgiiwwzTGFdRZMIXhtt0DCv947BPWdZ\neJA4M/brURQIoK4sk0BLZJKwlBVq9+J31EcLvUw/4S5G6BEc5/GuVz55z/Ds\nepYvNKXCU4iRT7vFek/T3zMdgSNCi5PSoYW7VH5P83wsw6fizTFqIApVlLkX\nQbQo\r\n=gEpE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"33baf862988958d0ac5fe2de26d977d59937fea7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"^5.0.1","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.36-renovate-internal-patch-33baf862988958d0ac5fe2de26d977d59937fea7_1622496810308_0.2580505492443117","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.36":{"name":"@balena/jellyfish-test-harness","version":"3.0.36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.36","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d930471c2f600b627f12c3e11e6472e90cedacac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.36.tgz","fileCount":24,"integrity":"sha512-jz1rSE8cckYtlATSmvQrpjYgdvGkfx4N2A0I5LdiThiOcItph5tFH2fgHC/iDYd+MB0TVmvVdrWfzh8FnaavQA==","signatures":[{"sig":"MEUCIQCRmKdxaogiQCLP1PQ5hLHEfJWT2TiBTchM/CX9TqhtawIgCNQHHe+4v0lBZzKUidmn0WCuJRux2fh0mhyOdCC8300=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110773,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgtVcQCRA9TVsSAnZWagAAeiAQAKLz/L5/VO6UW4Y2INfT\nzuhqlJHSgwvflIzOJfIDWW1HX9z69EBrEZ3HDrNssUzJmsuoEEJEadnXRuiY\nVIlFwSZLK9zn6TngtFmeKPrOxLvIvLQjAetd7+gb5S7MMet3jo+Qhy5U07fK\ntg6rEQLJkR/KVHvDoGAxuwx58QxFotZJtRb6k4FjUvvARcVV3tuMdUbdnU59\nYXTf5alrkd9+nqZ6pfaJuSKPjSHiPr80q3TFREb2V3d3QlpFADV5X4dM4f+k\nfBf0WXof23nmmbtf7dMY1D1ZIDew24ulfkKfqUrYBVZNSLVsr5V1uYTnr52u\nljLtH+mjISfBEM4iBYtQPXkY3ILHpO3tLOejb47n0Xrcm/RbeWWIxszQWOY3\nzoFUsR/5hIvUFCufmC/gLfBK+ePVOYxxPuCoUQxePEdw2iaAt+1B2/nfO4c/\nMitTGiGlgJ0RNhkb6JJrxYgNCfK9cucACA7cRMj7bDCrmy/g8iWkVtqG0pl8\nqyEup9XU3tV0JkqVzTgoI4icF5T9txVY7tZgkTrlmFCZKq1gCNTVOE8zIUq0\nDlwmZZieO6zcTsKNi2nJCbYDfMC5hHwxg2reIUl3f61n88AHqBHYn2LLg/wQ\nZDF9I2sSH31emP6iglydjCnBtluwPgEd39zgfxDzAk6lstgSTp7zKDkCFs2w\ndESp\r\n=Kk8U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6250c5efee621efacd814ae78df96821bd0b1078","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"^5.0.1","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.36_1622497039661_0.36552951156909885","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.0-triggered-action-schedule-c44f253009d0c8b3a69071960917196246ccd4ba":{"name":"@balena/jellyfish-test-harness","version":"4.0.0-triggered-action-schedule-c44f253009d0c8b3a69071960917196246ccd4ba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.0-triggered-action-schedule-c44f253009d0c8b3a69071960917196246ccd4ba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4b5243e155e827d8ba924dd600c76d570a64282","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.0-triggered-action-schedule-c44f253009d0c8b3a69071960917196246ccd4ba.tgz","fileCount":24,"integrity":"sha512-jK71xiIW6RvhrwPpn8PuQ8oInxwfxjzElVdctxqFDx/K1dVoMSimfjMIzC7vy+hWrTJ7sY/ScXdjuAbibhdiOg==","signatures":[{"sig":"MEQCIDltYqImbE+iOOSMhG7hztW3QZhxMEr/mEZrVIKOsVEvAiARn88dsvuoJZdtahuvpmS87Q/RtAhhwfhK49WMKJVyVw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111031,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgt2pKCRA9TVsSAnZWagAAmTcQAI9U+YmUBnajNfracgnA\naaelz70R0yLfgSjD2VtxSJg8xzzapuYZXan1+gTTD0D//JtWF8y6kM/pKorg\ny9shHgMhhG4cTn+PJNlEcmBzvuRIq51ze2lQDpoOHm3KJ2YHuBCvJVze6wz8\n4LYBy/hJsHedNf0ph5dyQF1crYrQu3Gyo3JGtt8wns0V21RuInXbzDxU1YrW\nk6R4YVUjKfBWppStcDXDzowqPEXd/0HvQ6LE/T98eeh4YSvx/h746/luIvXl\nk5EZ/CUPiwo+RXvhSwxL4oUiGRV3VcuvW0Kxs1dsGxP5Swg4mwSooCoTsc81\nAo6jVPVx1kRMr0aaBg2Cp88ea7zlJ2bQKp2Lgy2x4KMqzcbEzUKUSFbfGE99\nAytDu/Q7mBZN+Un2xiHgv++NjKW88H1GCut4wjSYtP2HwykorZ2OWuPXjzs3\nHpqDlK6NkcmV0EM2ak5ZM6jAnUKwEjfA0RXI3CpbkH6Aq9JpGCCUNdozsuO5\nSAOOsCPavFAcl2Qf5cbzAGFgqgqTAzRY/F8haDog+IN6rFxHUdyON88WwjU9\nkuQiF0xbiwYNU88vi6DsgcSXYpGhIH1ZlMZdGyadUzJ+4/zMyVEQb9799aZi\n58y/YtCH1cifpa5SGofEpvwsZZNuWDhsfkLQezuxCoJuXhp8AwGKJct/IwOl\n3V3D\r\n=LQcd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c44f253009d0c8b3a69071960917196246ccd4ba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"6.0.0-re-enqueue-triggered-action-requests-4d16c1417f644cbd2db1ed1397daf8e8dd974392","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.0-triggered-action-schedule-c44f253009d0c8b3a69071960917196246ccd4ba_1622633033846_0.3612014352288928","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.37-remove-catch-uncommitted-f62786b6f4c381a2a0c86d0619f2d4a93fc5069e":{"name":"@balena/jellyfish-test-harness","version":"3.0.37-remove-catch-uncommitted-f62786b6f4c381a2a0c86d0619f2d4a93fc5069e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.37-remove-catch-uncommitted-f62786b6f4c381a2a0c86d0619f2d4a93fc5069e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e5fbd8842bbb8a3df7335a854a559b07437ab26","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.37-remove-catch-uncommitted-f62786b6f4c381a2a0c86d0619f2d4a93fc5069e.tgz","fileCount":24,"integrity":"sha512-pjK/+NN5iu3NM9qxf69mVsHRhF+3wdvqRO/iHgNqy/lipl2K48vfpoZVZpAQYPahpiiCQguOvlOjvYRS3zSl9Q==","signatures":[{"sig":"MEUCIQDWeDlJXF12Jz6coF3OtmiS5QPgTRIBGbBe0YqU4dfs3gIgc1cx8DNvbH7SOgu93PDUzjGyRrP04RyUTUvjm81idZs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguB1sCRA9TVsSAnZWagAANYgP/3moGY2nnnpkJ4TPh4sc\nDztKkPe6D9RMLbO88/7sWs+BdZVIVJ5M0/quOBXTsCDpiT0jBz8u+usiD6QG\neq2eMmWmOlJz2Av2pZUBokMMiotrtLO3Qm+k77GuvMWpXHU97z/bXIuqJg1z\nk9G62o8WW/oNm/Htc1dDAvgsVkLCQpHZw//i10dmicMutu/fztK81l7M/BpL\np8Zp6vpT9dPXCk1bHcHvN0rdag1ZNXf3bGt3NIvthDaK8EB7wa9cmOIk20Ym\nS0hQcQPD6q59RUmfViABqlqvShu0Y66rhKi8RVsidPkR+lR7HyX6evy3vBv4\nYDSZ673YQMaBmDHlI+/FCc+wIbi2Qi9hEV9hiyFhG2kK19e65AyDvpYbjDp8\nwFrgI1YkQRlXKRCHEsZfRqc6EdXnEo4WzVNGrbCVfoDAT1xyDARB1NPZStcy\nkoNjWKOlRbPoX6Gei+uHOlLG83xA4VeekDu3oy3MOCh+MM65OLXQZFs7DlZ1\nDSPIdwgjEKVO1kifU1QRF0QOi9OwU/K6Ci+7L4TEz2TLf4L9oPCCLKluATIl\nt1jplCtglJBJpxkfzZG/q4vmt/nUjQmmu36uesUF+zqNrV1nnSRrkXR27+iC\n7KkMLED3hpbC7N2IjGl4LIAt4GZ+tK7F/2U9Nq6yo36X2LB9+H9uwhII4tcO\n+eDd\r\n=Imrs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f62786b6f4c381a2a0c86d0619f2d4a93fc5069e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"^5.0.1","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.37-remove-catch-uncommitted-f62786b6f4c381a2a0c86d0619f2d4a93fc5069e_1622678892247_0.7323093378540857","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.37":{"name":"@balena/jellyfish-test-harness","version":"3.0.37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.37","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"57a813a752e99c9c00427029aa8ea10036b690b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.37.tgz","fileCount":24,"integrity":"sha512-iR9OCbZqweF0VhGmrNL+UfcNCU2C/OjmZM6uS2RHWzZI2N2j/4VPXGNIdMDvqY55HTlnOU44OyhP5LklLsmZgA==","signatures":[{"sig":"MEUCIQC6qCtnGr7PthwwPG9LYpd6d43Dby5ZJW5PeuWQOMLudAIgdV15CtflAJ6x/aTtPZRxtJ6S1keGywzlpt8tcJAlL0U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguB40CRA9TVsSAnZWagAA/6wP/3bt5jrY0u5o3yriBeDt\nNcIcCZRjw6UbtKkTDZu+QBVLWLq3aapd41PKbceKSlwC0qi1kdTf6uyjNIxV\nmThuIsV599c8lSdL26UA1ExK3McusXiRIHx6REpXIxfey5l2DBDfAYEkUH1n\nqgTJhbH1NCswUAPr4/u1XETQYthFbwfB3+vaRS0goTw7nMbrHV+W0pBev85q\nZUoJQ17HSUfUSmzq0xZgfUVWQl8Lnd1C1FdZz79yIGjfAgQWnYMtSAqyKmrn\nr0rTcannabAvbiLO9UtAKqm+2jxL4ynMIMwP7yEGQnWALw57BUQRqZHBvQDC\nq5NbTmkz9Uweqh6NzE5tZrkaasu07U17uXE0Mux3WU5dQMCctwuHqqJahghr\nUGsFXMwhXau5651xCEiLOGtwHqs5gGAxBcGYpcvZXjzIxGbhFVcqPdRWI11K\nFs6vClcu8rJ+7hJmtXVRD+dWRDlXRm4t5ZnlnNtiyyrIBZh2wuLIpABYMdQ0\nJ+LpR2JyajhM56vh9o43NT7GpZ2ghiSlSXf9fb7zUYS/Hnss3ipgaqxzWKZj\n5kdwQM/YaY5E1aJWCYzZW3+go7ERUkuhNDK1LBAayG771FjDRX+SEOtaVz//\njAl261PYvx6LZEXugRv9B5jamAHlhZCI97GFuXC1Um6dfwOqsSlMPN+yEdyn\n1+HP\r\n=whEd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bf75ee30ba272ff987715690ddf63d9c3a45ed8c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"^5.0.1","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.37_1622679091909_0.42797081557996397","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.0-triggered-action-schedule-ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1":{"name":"@balena/jellyfish-test-harness","version":"4.0.0-triggered-action-schedule-ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.0-triggered-action-schedule-ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c1d25c5f4e73ba049471486ac89b93cfebf56030","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.0-triggered-action-schedule-ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1.tgz","fileCount":24,"integrity":"sha512-oY7kW4hkhN5C1Pkz+5nC0zGt6unJ8Qot26fVRn/CVz+3nx64jeqJr+ABMVZIomjnecI8Vh5MdFTRZWTkufSj0w==","signatures":[{"sig":"MEYCIQCKBK49wrHcviku8k10GiIS2M53GDfD+AN74UE7cwjPSAIhAP7v2L2Nuk4U9fNJWnDh27tCIF2xyyEUICTk6uhWMUV7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111031,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguP3lCRA9TVsSAnZWagAABM0P/0orPTYKHchJhKBXwMBV\n/lWF0UlAmdvUXEV2rDmIFuvbPMgg7wtIl4I3otKj6OAMl0HT/dKRmXHraxMO\nXCRiZNcUZhYQ+rRarHc+5i+DaQ8/0fs5UqnFbQGHG4q6xGDe0vvmjP0Ubelv\nDiyRcqayvpl+PgEDLhSQE0nnjpqvBmSsbrxxc79OBmju7IqqK4fQqNsHxVv1\nwlzQ01IfywXaWEB9ACcHxJJwK2zXD38Shz7SJZqmo3p+IoOTnRIggdvUcHpy\nj9kX8qNStOt1lEMegLHZfEwTBVJtVGO9NjPS0sLHaVQ+m64o6knZxkWpVaW1\n7pnPNSpcnXFosj8vd1YrBtn5xIOSKP9nLcv5cTYIbt197QWKsxeR2D7TH/KI\n6frBz+DYMO6h1/A6dJZm//mTNXD94PPYsAKEeCJ3a4xfbO937CDYfsS4GCo3\nf+/pp0K17iF3ll+hSzk2wCsIjW6wFEQxR4cn07iiU2V64XyEpDtwKwiNJyV1\nMSlWL7ZHDwjlB6wDZDOmNIdNzwkxwdTR7gzjQqEEFlXurElJZw+bNM4XgDVA\n44ocQJEX6LFrwSkv7Rk5/i2Wc/V13ZMmiZJAYrdK8klDqjTLOw80aBq2w4MM\ne8ik4Ua96VMDs85PcsWoZP/18dY8DoOEDQY5zR3lHYwFTka5bmDSU8GU5H0K\nI0Fc\r\n=Gcsh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"catch-uncommitted --skip-node-versionbot-changes && npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["npm run lint-fix","git add ."]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"6.0.0-re-enqueue-triggered-action-requests-92826e864093753905a6a924174134021b2c5f7e","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","catch-uncommitted":"^2.0.0","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.0-triggered-action-schedule-ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1_1622736357824_0.22135454755229023","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.38-improve-lint-staged-fb5fef9eedfc80a16df8ba55974793068eac2753":{"name":"@balena/jellyfish-test-harness","version":"3.0.38-improve-lint-staged-fb5fef9eedfc80a16df8ba55974793068eac2753","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.38-improve-lint-staged-fb5fef9eedfc80a16df8ba55974793068eac2753","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9663aa425dbbc2be111b60a287bb4d655e736892","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.38-improve-lint-staged-fb5fef9eedfc80a16df8ba55974793068eac2753.tgz","fileCount":24,"integrity":"sha512-GXfTy8dHy+xAZiBLK0CbnH01lbezRLfooVkGXlOUkh5G1SvqDbR3WXHshUK4WEi/PdJDaBhel2CVsGTxG/3QNQ==","signatures":[{"sig":"MEYCIQDtWPGs0wAZleVVJ1naqqWZnNiLP8oVca9nqlXWvv/IJQIhAKYCfHWhvFkhhcfbVlpyu6OhQ9q+7tuKG8Z5JbNWKvlW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110883,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguXJ4CRA9TVsSAnZWagAAtsgP/3fXh0LKGYpCdAQrvk8U\nrmn82phnxkFc3x2qwwB66oYqhvpWqovzEcDVb6dI8alWk1jRK2iXdR52bowp\n66IpAQx99krsE8Ee09De9PwyNoYj7Is8SXXV3jvTySMNXQtjqmm96KO5S4hk\nwahLHSr1SMxomO7spDLpaRmjz/vNBua9WCrbUc7cFZrx48Vi3sVCaMjMxtxg\nl0/fiqT70G75pMpkLcPRxIuBOQK8l/jrrbsKYrBP9pxRTTPNhX0SaXlKBKBu\nk+G6zGf2rGAcGmAJ8lpY3WlCCjH9ulst6fLgrZG6AGoQuVAjcNQTYg9ughhy\nsWUjYuIF4UsyHGPgzWscvp3Ip+RAQKybWdjE7CPvehQR36csjOiRRsC6OhgG\nSFBvPdxt8Nw7NW7ZO879dDq5JzACZd6eXRN9Kt2g7nXASsAEK0Os2a31bdM4\nD6/p9PB1Uqx6LiTMcRjorBbYmJAL1PMGu9nPp/g3eGBu0LGAp+jYo84txpHf\nxonn9KLvuZJA7kq+4wyj571oHcafUzxAmw7b775EKJOjaUOreFbYUb60dOHc\nJohCZ/y4D0xDswy1mJ3oFuTGcVNN3zQ3xkM0SPeO5KLbGIcr7KAtVNf7PWLR\niXxKW1BSGDfAaYsSbVDj49s2jWoE8kHkFCyEtzdIwHN+34A8cAnhUROV2vC3\nHrjI\r\n=bULl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fb5fef9eedfc80a16df8ba55974793068eac2753","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"^5.0.1","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.38-improve-lint-staged-fb5fef9eedfc80a16df8ba55974793068eac2753_1622766200215_0.9286325434919784","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.38":{"name":"@balena/jellyfish-test-harness","version":"3.0.38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.38","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1cc54705bdb8ec3c8bf5ca4b0ff5a19d96733483","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.38.tgz","fileCount":24,"integrity":"sha512-D9rsWmeF7oaGQ3QDDE9+OESIl1WbOsKrNVHVf6VZYUhfCc3KF8WSVqhH1p7py0mhRK6wT6vDQmLZVozIrnpy4Q==","signatures":[{"sig":"MEYCIQDVVznWyn83dE/R1wEwpZSno9R2R+KTgho2vkLQI2bRWAIhAIhotP8C+KBKBAdQWR5KN74AbPW2QAxvYhBemiysu4gR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJguXNhCRA9TVsSAnZWagAAtssP/jeMFp109iuHPZrOKed9\nJqIBz6P4q1GbusxS7nbcTz16dFwxx3O18Qy7SkEsPVFLnzV+bxxf3g/mdzWT\nqUwuI2AO4X6EJjCSlCIL76yOrBYe0G8KPP3g53DCV5XIi8F6TuFp2umF8nE/\ngqoMuA9keJlBk2SHssTH5dZ1r7SFNKyQiIccINFoDnYgsrxxwT9SUeaDB0S6\nkpnX/127rYO5OAd1qp3lMFOFqpIR96Ao0NWP38X1rOneghDEa03Qo4OIqZTt\n7KmzoSY3wAg2ZpeO8CcEBhUxczd2UmJdX7HzEFQvd7LinPZV0dQGbBnfwrxF\nHhyrT2sU6pmZX8hlemSfpMteKQN/imp8XeQPinr9T5rM7O+pXiIMnuLqa94Q\n4vf/1umr8KLG1pzgA2j7Mib85H/iDry6TmrKqPIlij4EekVUxITGY35Cy8+h\n2bqtzKyr36romsNokgsU0Wi63CaoNnoUJiKx8cTlVyJsS5hv7GI/HH8c3b+/\nMFFZroYv7j7jY8ZdnVomwjGXxHeGQ5yFZhMYu7j/QvsbzsPy+oFp2Lf9CJue\nrPWojxPpi+UBuU7Qi42nhaPx95lsn0wYm3RYKWM4oPCLw8594K9iSVErCzAY\nnR/XX0R/av6UBV2mo3XovYA4z1YUs16MbhvTMluYCowMjz2zA4SV8Vt2zIsh\n4KTY\r\n=Thtm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2b8b930b2810f9f858602c4c0fd1d3145d8cf094","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.11","@balena/jellyfish-sync":"^6.0.213","@balena/jellyfish-queue":"^1.0.124","@balena/jellyfish-worker":"^5.0.1","@balena/jellyfish-environment":"^4.1.31","@balena/jellyfish-plugin-base":"^2.1.131"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.38_1622766433445_0.7285209821295944","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.39-renovate-internal-patch-da8df59e9e444e05ea7d7f4452c7b931bf2a0096":{"name":"@balena/jellyfish-test-harness","version":"3.0.39-renovate-internal-patch-da8df59e9e444e05ea7d7f4452c7b931bf2a0096","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.39-renovate-internal-patch-da8df59e9e444e05ea7d7f4452c7b931bf2a0096","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dac1de6fdaa5af8ba4e1d40becf8a506bbaf247c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.39-renovate-internal-patch-da8df59e9e444e05ea7d7f4452c7b931bf2a0096.tgz","fileCount":24,"integrity":"sha512-kBlgmRg9xH6CL2TK2WdfWQwdWJfOt+FdXom6FgPlBcZm/pqxQ6fBSzkuWQvpFVkNFlY7u6+t5iWLkxtezwcfpA==","signatures":[{"sig":"MEQCIHg5yRTrE2weVPNJ2f2ZWwkzVis5U2PiWOAQlARw69GYAiAZ7aMSmY8iIRaDzVgwmQRpTHjBMwng3oZul2wfVeNwLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110961,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1QaCRA9TVsSAnZWagAAZ2wP/1Ptj8AwB3Iw65z0uMBr\nnsaYFNkmpoiGkQ82kjZ4iYSnmMe0eZCvwHd/UB9mJcPWy8B8Vb/QJHioFeON\nDDkHMQyagLjgE+c7IrQX/+SYYo4CbPNOwCJMPo2+S1OknQ4lIFowWXVlBi+b\n/psWuocp6/49loanuMXS4OgiXdPji4XYsiBmKQBH3n7Qc2l7uQnawuDV/fzj\nF7xigft+WQPTYoXHg/9sU7Dn655eOh+ihwaQD4r5DnXVn1bcz7b5JduNt5vl\nYc0IN6JdkcNHb+Xd2FBjHT/A/wPDQpmWJ7M0fjZ1nR2Ubz5/LR5l/vVHm5Tp\nuW2NBFp2QJD2TVrYAin+0eeNiAsZTiqu+SXj93YBS91vV3MmcO7X7O5Tz9M/\nte9amoONmLa7Hwci8YpEpHvSwu+92fF0bj1PjfWtE56xth+MXwPqwEzwEbRv\nRbx0OJlitmuacutHbFEfxz3k+D+0L4vSpLMV9wC0AOC7CV3Rt582uqfrnqG2\naTr51O0ARz7vedwGetLdNTPZJaNTaWawTCfvLQhoIY1ksy9scYJvbsFsFOuz\nt587ZcUzVdMVTAp8I4SvahS/Ezj30tlj+GM9nkpcfnkpE7SS/cH7QyXdlFT9\niSUtHhqt2mjBmixUC/pvUq9Bmd3A/YAH8rY2KJ/ZdSMaQgKSDY76XSUNj640\nRiMO\r\n=2ylR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"da8df59e9e444e05ea7d7f4452c7b931bf2a0096","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.39-renovate-internal-patch-da8df59e9e444e05ea7d7f4452c7b931bf2a0096_1622889497989_0.9915949791494445","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.39":{"name":"@balena/jellyfish-test-harness","version":"3.0.39","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.39","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c40c0964c5f0fc4038a64a0c643035a87db5030f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.39.tgz","fileCount":24,"integrity":"sha512-Pg3WC/qPQdjmKerGU5reiHw3oon6HhEtsIJoN8XYUSX0N7ji4vYe+XcnCCy/XQzAhvHBR5wsFNRIpLHksmWjNg==","signatures":[{"sig":"MEUCIQCGBQe6zSG1FtO2LB2LL08UPYp3XcVn8v+5MKsznkoh1gIgVOHR+8z6tpoVDkZMl/QVvlDAmlvsPizxMsZKUUFTpNE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1TlCRA9TVsSAnZWagAAovUQAJeWJSW4wrp9ap1iZof4\njhz09V3GfPghs7VHG2Wit+80WfGZTLgm91UaYeS0Zyhnc/pdtQuX+x8bLYXI\nU/v14Sl00QCgWy4/cYm5lZv9QbtADgRbSZ3MSscV2zYmwRcfrwAJ0MtOG63A\n//m+VNNdDMVVcC1lcb4uMWOPct8IP32CQvZs9N8ly1dQr6KM7Gj6Pbspmvuh\nEbengulD1ZPFtuSXeNpzjn97MdGPjnlXoD4eTmm7gn8jhKubc76cQymdzEAu\nGZMteJHaB0XGKInnFsxYRhXRcR9Hix780qW1FWj6+KXoKZrerV27ZxDAi+Pf\nbYXLxTXuH54ET2K688kFYnt8eWsd31RDxSbvqUHzDiIyjGRTj/Y6g3NVtRp4\nRotJ1Ge3T2qiHzvhd3RhxkkiCIOQ4HUTNwXJjV99ULDwHomhRIjf/yWnkZsh\nzSZ72JdUvJbHIIX4pVsEePzwUsY6CZ8IWSESX4yyienyH4mOB/4fQ9cM8KgT\naoq86iqAjJ/+Ym2JuhJ+s9e43BkDFPzTx4HfYeafKhi4BenVcGE+bPD1Kztl\np0rDfrQbKYMu0jyNz3EaDnKNcrOUM/YsPEBed+xOPPz67/ZxjDLW5WGjqAim\nv2zakWUL9IVyo9a/rihrAZwvea7hOt8CeDnm+rTBAxh8yfr2GWGpBmvwaqNG\ntC8e\r\n=XIXz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5d7c7f61b6fbf7234452d5d200a399cb808c8eb8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.39_1622889701540_0.29655438214948227","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.39-renovate-external-non-major-fa50f180e4430fa6c01e13998dc8978b37394f79":{"name":"@balena/jellyfish-test-harness","version":"3.0.39-renovate-external-non-major-fa50f180e4430fa6c01e13998dc8978b37394f79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.39-renovate-external-non-major-fa50f180e4430fa6c01e13998dc8978b37394f79","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f8d8003861155da4054bd401564fef99a74f76e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.39-renovate-external-non-major-fa50f180e4430fa6c01e13998dc8978b37394f79.tgz","fileCount":24,"integrity":"sha512-l6JvC42uZI0RcWz6bZ+462HOAcW0r+FDV1mwLfNVeTreSGm+hCo2orxb9gbkGKfPNxsTy7uHSl7nPccX29FizA==","signatures":[{"sig":"MEYCIQCL2u8DDv8tL5U1v+SfvRCGF8QHay3nZ/KwWO0/FiImRwIhAKT/Lx8lInbnp+CqWQkHtgD0hR31LtW+jecY1gJPsUmf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111014,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1X1CRA9TVsSAnZWagAAicAP+wdtlUGnGNH8E55OxV60\njB5WnhEbNSglm5wJcdS7qceGPd9fnqKhuprl/HPjjTnt5xiV2worRHqnoqmD\nXeN26C2CXZYa6vpdGvkLEov1KCb8+E2oHGkQxmzpQWdzgMuuMghtSNkCE8Mu\n+KBjot7zEDvOAfukSDu1emZ12OItjzrNMw+GXd1PWids1hZwiLYwD3x5FQTy\ndzRA9HHGGmUrAr14ccKtCn+Xwke+EDdJEDMljeUb8IyGvdBGedylJ02orMEk\nMdf7LRYba8gUGMmbOEzCHFkf+ViERN1JnYASKT1w2RVcKyMf8tWf94XiwrSv\nB2O1T8Xi3rS9KSvPODIvWJcYpYBMiXedyoMCbssupJJWDUf/dpxd/HU057Bq\n64WTDzgdJ3gdGYI60CmQNDG6c9uDQaMHdc/fCfBEBPPXg2/dlXpvn9kSOXAI\nWbYj+bcPS74tVPojRzn8qAftLEoCpf1xvikfKNwR81oHxWwWRD2AxLzRBwLC\n6t+89F7AEQT07dnCA0Djrc2zdKOaBtWq+ycgvgibG0/O0ST4xD8X0BxTIEO6\nyw2IKCD6vTaBq0mWGIXEFw4zsfU6tECAn++M0L8GOaLGU2MBeTRTlSetuDPS\niaopG9MQjBvUbSbrRbV7gubMdzbDuXGwj+xm03JRLTueqyAZaIlGo12z3dnO\nCNfD\r\n=nwgF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fa50f180e4430fa6c01e13998dc8978b37394f79","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.39-renovate-external-non-major-fa50f180e4430fa6c01e13998dc8978b37394f79_1622889973767_0.28758662120662226","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.39-renovate-balena-jellyfish-types-0-x-fc142f9b25893d90dfc6665497d6ddea57bd12ab":{"name":"@balena/jellyfish-test-harness","version":"3.0.39-renovate-balena-jellyfish-types-0-x-fc142f9b25893d90dfc6665497d6ddea57bd12ab","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.39-renovate-balena-jellyfish-types-0-x-fc142f9b25893d90dfc6665497d6ddea57bd12ab","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f1e495e8eb1aaabc5ebb4b75e95a2a9cc3dd76be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.39-renovate-balena-jellyfish-types-0-x-fc142f9b25893d90dfc6665497d6ddea57bd12ab.tgz","fileCount":24,"integrity":"sha512-zDc2bgv9jKNLHRG4hRblYVhBWCXf82s+Q2jkcIaswOhmoOWvNZWTig03RCueRnU08nWzWFBP+eGNA6/f9JcmQQ==","signatures":[{"sig":"MEQCIEvq7D771U/s6NEBWfgYMMWmQJEXbTSGseWDg4p7DEtZAiBDar/p6mies2mEdtX/QhZQOfS3NYk5nTaERdzvtd81+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111047,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1Y0CRA9TVsSAnZWagAAus8P/070BdNggVhqD7LkyHuz\nrOglraU/AbQS54wEKEYWIBJ/l3pFS92Yvnqzi4wDNF8yraR/LJJNLxsrFKD7\n2UL/jTcoJa5pOMw2y6SckmQb7TCPhgzAx/g9CA1XdJoXIkesJobkQsD3nLFF\nnlFgkv6H3ctvGOTLqz9bBNxp8V2jvKLNIlS6G2ZTGWiGY8qjBv2cck39WAfp\nUwqYkyQc+MeR6XDFRZCAdg34t7P9JzjEK066eCLAqwz/ZOoNroP+KCZet3ae\ndZJLpHzUliIES6qeyhCzH8BpQAcvLwX5JnKpJTZv9dUDDwxDDb5XuiAHpMdH\nIjdXru5mzRw+dI+mWxUE41gplU5jbrJi8rJytNJPoty6Os4p8Hcp2yUV7Zpw\nMFUdTVeLwqI6NyKCW0pckeGdBbmna/7C2XQQO9TJdhGE+WG1hUejfEsp3ABN\nSSi8xnHJoi+PFx8mUP3yaeaN9053svG2miyEut6KXJ4PE50O1r1nKl5rjq16\nyfcOwiJP1Fmi5Tt4Zg3hS+s+3lckphSEY1EY4UGvRKdz1mwO+RI7F36y7JFS\n3nUYkRCcMkZbdmsMxfeGTt+VX1E4TwhRgt9HHt7G9oC9hCFZWHhets1dtbn5\nDTyXODmf7BRvJrwo/8BUKmVZtvKCB0OfFIK3NSdmIR75kdIBYhAVKwTATkxI\nk+tD\r\n=I3r9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fc142f9b25893d90dfc6665497d6ddea57bd12ab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.39-renovate-balena-jellyfish-types-0-x-fc142f9b25893d90dfc6665497d6ddea57bd12ab_1622890035875_0.004953551073895612","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.40-renovate-external-non-major-15550305c406c5ccbf081adfa5461f5dc0b345c7":{"name":"@balena/jellyfish-test-harness","version":"3.0.40-renovate-external-non-major-15550305c406c5ccbf081adfa5461f5dc0b345c7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.40-renovate-external-non-major-15550305c406c5ccbf081adfa5461f5dc0b345c7","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5879915414d91ec5e7079b7a110ad6f4bb258a3d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.40-renovate-external-non-major-15550305c406c5ccbf081adfa5461f5dc0b345c7.tgz","fileCount":24,"integrity":"sha512-kcI5inenDkkwEOmXqMbcKUb/JBB3/NvCJztHR/07CjgfrDe3FRUkqiH9NUi3M+1+HmZxYqDiJwdzr7sGQqPaPQ==","signatures":[{"sig":"MEQCICTL11yAplGjjJdeLx41hGo3MOzYgyq9aHR5eVVAh8G7AiBO4SfPLN53kA2altQZzv81stiB5NsdXbeVRHV9FkTzwg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1bZCRA9TVsSAnZWagAAy2UQAIVOUkGweMtZPr6NitqW\nff5UctiOTscMl5XlD3knN1PYPGaf/D7uSM0O7u72VAHFA3xI1CO9wgmIZe5W\nwAXN+D3Eu2fqnkWQMqctls87u4v7S5O2pY9qtqnZoB6zG8coDo0SYDtFvRpT\nUxmUksvEb2KNIo4Kvio+puQ8oTqANBDFcthjgVpJNGq7HMMcfQq3OXfeJDQT\npPHTe6seoWXxuTaqyH2LlDyMy6wPDD73G0tnFnAhr/+0z0zVFvifGYp80/rd\niLnj8tusjiGsNu06zY7iMAwrSck7smd1zHzzqw6Y7oOFzUpPo3zp9PSX2j+G\nWTbkvrZ4bmgJ95zxs6ar6uvaUtnI42U9zr3eDmAaFn9U+VrazkXEmy5wfkjI\nvoaOak08CDTi1NhR+jAUWRFs7/ZWGwdZedGXDYBi+otuI8L9m3Uu0AxmJ1jr\njiyMDvT2jAFCxWCBXAmtM8oUkfQ9Zux3WqstlMvyStHFmDIcH3e71xKeS8uB\ncbvXzVyfWVOV4Jcw0fk2jkIaUPzzzVsLf8NvYvPNPL5LHbUZF69wfPmSy4Bj\n/o4CcnZyk5CtII/HNqRkq87Ve3Qn3z9bp/C8FoUzQJTBi4s8yxKyYiXvdufD\naOsWnRvXCj/avefWCNa+N1349O5DCMIMNwl3zvd0GJHSqG9L1GqoxF8Hm+a4\nEqlf\r\n=2d8+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"15550305c406c5ccbf081adfa5461f5dc0b345c7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.40-renovate-external-non-major-15550305c406c5ccbf081adfa5461f5dc0b345c7_1622890201575_0.5688621955643776","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.40-renovate-balena-jellyfish-types-0-x-d1e32045e38010a00657b6333eb878689baa482b":{"name":"@balena/jellyfish-test-harness","version":"3.0.40-renovate-balena-jellyfish-types-0-x-d1e32045e38010a00657b6333eb878689baa482b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.40-renovate-balena-jellyfish-types-0-x-d1e32045e38010a00657b6333eb878689baa482b","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d9c6e5c75db12d6afe3f0a2c702a79a98f737a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.40-renovate-balena-jellyfish-types-0-x-d1e32045e38010a00657b6333eb878689baa482b.tgz","fileCount":24,"integrity":"sha512-ZzUMNr5u1nGLL2j/1yQ5YonYaT9GkO+SYSAohnZK7EzB067Jwx/yoiU5/oKUMP67wRF+p84vnVJO2SihgCMtng==","signatures":[{"sig":"MEUCIQDkIEwmpW1dmBPjovejyBJBQ++texDAIfstRve9BuKWZAIgNZaMEMby01BixJzB2URLO+HzWhLBLM9ir1F90lfcqHc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111075,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1cJCRA9TVsSAnZWagAAuuoP/1HKR37rRT0H6SaDqYI/\niX6psidWfkJjKeK0XmFaj0pMm1HjrlKgxWJMOg4UOc96B3pyqHPwtkSqk7aW\nT4LedewLupvxFzGVMXkxH7fBuq00rMj3KcmM1LkqAP5t34y+i/K24QJUoTEb\nFcHUhGVx5m3uPcRjlTNVP4g1GmPREnL+CHiB512Al2kcrFr9T+M01mEGpYry\nH8JiniDPHaRx5bkmmrCcwGLMovjFE7bU+IDJ8Z4KdS6UfvS8fFjjbIWxJU+W\nHV/rMwM8ZkFlUQjqcfe9l3Avv8CRomS8bap4hdUByn7TqN6u730li4/CWldo\n9qGLN4hKfjzSfoFkjRI3F6GpWebbLmX2FIZ7tXf7oS78lEShmfsHMN0RPAxm\nGYDrK6N4gQj9uiNZenhsg7lk7yI2ozSDbIPweFA0RW4k1jliqIeDw08l6Nbg\nGYGP1ctmsxRsqOk2HqRH793PkNAQAZS894Ey9RUzYvmY6b9GuqbXs7C1R3rz\nNnQRJ9BX4wxlyw33W0runoajumiGfMZJdzF4wtOktTlogoIqE7mbIy1heCA4\nF9oGMcnjSAVvzirIN6uGJkoNvynEsEUwsduVFbXsq/5+7ZCpwLA64itds1QT\nW/prA+1/JwopcSGq/QbfUTeIH30tjosoUpKMf6LEBPEpHZELmF0Q4xcfmsCh\nzr7t\r\n=hXqC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d1e32045e38010a00657b6333eb878689baa482b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.40-renovate-balena-jellyfish-types-0-x-d1e32045e38010a00657b6333eb878689baa482b_1622890249342_0.6550240340640681","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.40-renovate-internal-patch-5919b169651d05a06e60357606689ee0d7a8f917":{"name":"@balena/jellyfish-test-harness","version":"3.0.40-renovate-internal-patch-5919b169651d05a06e60357606689ee0d7a8f917","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.40-renovate-internal-patch-5919b169651d05a06e60357606689ee0d7a8f917","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c70ffbe5808dea1e02881cf218c0e137a1982f85","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.40-renovate-internal-patch-5919b169651d05a06e60357606689ee0d7a8f917.tgz","fileCount":24,"integrity":"sha512-qZQz6CGKAUhPtq50My03nsSvKrAb1gGh2uM5g8JNLz980BzQbjuWqZhP4eSDhVJwz6gqfG4mGaPpP3YSEROaMw==","signatures":[{"sig":"MEQCIHOFBzKK6RaGbH0pm65XZGpzL0vE9j+Gi+ZG8fNszTW5AiALdScWzpF8ZTjyLi+GbnnbFCajvrBXBAFqD6iPCzU2mw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111035,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1ddCRA9TVsSAnZWagAAf2oP/jhRhxuffP34wZsJaVw7\nKSZdpvIP9wwHWGYa5OPu1VXb0N66MqlTt78ZG2uhaAL1pc8TJmiq/IpYJWKY\nGiy0bQ+ktmAypf101BBzb/GOOnhBlKLqlSODSWFsKsl/9nUPECSYlk3pAuM+\neW5QcxlvBblpU1BpKbcrb7G5UI1zkI47FzY9nj0uct40qf07baXWAMTHyycV\nFEPjB5d3EeXO9JEsSJ0AJSZ4znyFJ2e92RUbONDKWB+617jXqc4Llk3XIIr7\nsLIvoeZio6vAQeCF/JkVpaMHk9Ma93Bd83zNmKnvqm6ZDsuT2TNE35FGAq4V\nuR65D8jKJxUoE6KN1Np9p5ku6SCsU5CoZSlfEfYKy95Af9lRpNW480Ad9c10\nDovlG2Ak6fIrb2/qfiv3ab/eeVceM8ZBh2J0e505un3/wNr2M0bsJjmQaO9D\nlvtZ4/JgZFRYw1DXAtgKrs5U+allbuANeWVpXyRekPnlD7THVOHPM9eNHH3B\nF27M+m/2I1pXhbcYCAvLQHBYBEZg9bKniY33FSYYXsAuGNvu5Znv+Aob9dqY\nOY1XE9EL38vnlqnmn5dblvoZAYtMYueF9v1fdghjg5SO2fO6gkX+Om/KGzF6\nrwG5zjYWywj90t6HLwLgQpz/1e3mmuxlD+/1NCg0b3HO3QjDgmKeITQL/S7x\nmfbZ\r\n=nJqT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5919b169651d05a06e60357606689ee0d7a8f917","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.0.11","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.1","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.1","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.40-renovate-internal-patch-5919b169651d05a06e60357606689ee0d7a8f917_1622890333308_0.21003506047953713","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.40":{"name":"@balena/jellyfish-test-harness","version":"3.0.40","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.40","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bf32c8fad4b272b317623fa0e42bdf7b19e21dba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.40.tgz","fileCount":24,"integrity":"sha512-owSLkVla8ekLIvk4otkJRG78+UQ7imMAJW5pt6ms5xXQgldQO+YtsuWPxSfFhxnjLk8NSuWqMdd8ISSKJ46Ogg==","signatures":[{"sig":"MEUCIH8mYkxf2pnZGhNYD256LzWuXszbADWs2TFNbZUjrjJBAiEApT3nNgy+LDSs4QK77I7Fu/ufzE/adGiNFlp8yvDJB3E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":110973,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1ekCRA9TVsSAnZWagAAZr8P/0p2IOw6QR6lUi8/FN5P\nkrXPR+gZ+wu7M156ttHVTMcP7xeAW75y/ZVbSGEKaWYiEp6NLc0icWxSwV7D\nXXlR6v2pvSAb++WxS8mqSlzl7rHaf86Afma0MJbGLb3slkPLJAIP1d9BOQAo\nwW/xBTJU8nCdQznlGZQT/AGpYELlVbVstd61Do2GRf48ZTG6mQsm8a/1VM3X\ndCEgwzJzdwHFB/ZCeb/3dKISjy6LTbqRbqWJzOu4o4l5gRDwRKy/sfL19kZg\nVNZtpai3SbjJQ9tLTmER4aR6iCwjw+pfVn4lgZJrO3TCGttNHB6YN8pdS7ni\n8mqDkNQ3OBe/vKiYz5x/kDjBcGMsrJ9YpmlkcIODAqex5rZEh5yXZWm4AEi4\n6n4oV4bZvQf0szjJbuTHhy8gkh8GRhZmvAmyiAU6ZelkaG5QuH6AKoYMCeV4\nXC65ASkXrG4imXwl0umt7wrvcnQI88ycIcaaZ0rD8ofy7d+z/2frsoD8iH2l\niTuav2zjNpU7vyKGxCUQFfg8CrgaLtE1fdF4CXogT7y30eez8PHFEtJ1R6Vg\n/pC6puu3+UUD9GqrxGA8NX9JZLH/5qjZDdJWomjI0Y54wHB2oZjThhduFVN0\np0HNvOJupQfODHuF1nOWz9NTdKKmUTf6XjeOEHxPQ1epxT6DIlN6YcRQ0LVt\nevpN\r\n=QXGq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"47341d43910aefb57868077ca2244224f893cebc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.40_1622890404540_0.8438830031580686","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.41-renovate-internal-patch-d5496f0eb184119940e4cb4b775a2056248e2b9e":{"name":"@balena/jellyfish-test-harness","version":"3.0.41-renovate-internal-patch-d5496f0eb184119940e4cb4b775a2056248e2b9e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.41-renovate-internal-patch-d5496f0eb184119940e4cb4b775a2056248e2b9e","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c2dc041f2c778cd2dc41a06644b0d281e66a78d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.41-renovate-internal-patch-d5496f0eb184119940e4cb4b775a2056248e2b9e.tgz","fileCount":24,"integrity":"sha512-o0gAakQL8lG4RtQJES2GnZd9ufAPFXv32vQgRcWdjqWQ/qVU7hvWKXeRAX4EK9qT4YpdmoelbgHGf7zg3LPkPA==","signatures":[{"sig":"MEUCIASKvSlLRfJrh9k3iXwhE5UIIVbOm2MjdV0etGEZTjlnAiEAjkKwZVUk5FZG2ZxTkTRuirKYJfUeKpgvmSaK69Mcgzk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111112,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1jUCRA9TVsSAnZWagAAqZMQAKJs/GB2p3/eWZqfo6EY\nOuG3rhKRd3cT2dHdcXEWYgjD2lB/Gqwnt/HR0Vg2xuPGwD6ndtIe/X7Y6mnB\nopqzri3p1CawkXxwz6Qr3ulqR+GuMPr8vqhOBxBv1M0cltKrhdvYVo1HVnw3\nbLHFMlrVMMH9DBRoVoDpWsesPQ35fWENkgQMKphvCuFMBvjjEbMRp8+gD09C\nfXvYjb3Qf63lSXnBOX2m/FsMJb0DBoiR1GVM1rIrxEA5+ZBar47hTdQT2hsE\nyQHaPmAi5lhEPHOopUuotx7Ls92BtXTQYubSO27lyxxGH0LzFe0ch0HgKVx6\naEzidI7jkTykU4BrtgUxDisJ3IlVTk1Kpk3gqF+7ZOG8fEQ5aFFKkvMpMYLP\nhSR+4V8y6KEruMB458GLW7FrE3VoKgbpSUPJjTRy0dWvb6CA+y5BKv5Tr6C6\nv254R5gD0hIadBiDpc2hjokguZejKkqP4Q1VsA93C0jDooiHyCJ3RrTztd0s\n0rirxj6yxmQWyD0a2cS4T1CWPKrG0R0NSFexNmB4PxCjYAnUYc+CHeCIdrzL\nvgvygQim2Ik45fZEqQ4n0PEj0uCggPMGV8m6uKuMHzDM1FMS3iJKp+mgDmpr\n7Cd6/xgFedH9RlKSTIwCmdG2//HKMgalO6bJfgOGMAoupgZCM0SfkWe97H3H\nIM2S\r\n=IzGh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d5496f0eb184119940e4cb4b775a2056248e2b9e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.41-renovate-internal-patch-d5496f0eb184119940e4cb4b775a2056248e2b9e_1622890708405_0.40526527717618777","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.41-renovate-balena-jellyfish-types-0-x-c803c00411c80e2120349f88903c72db39e81470":{"name":"@balena/jellyfish-test-harness","version":"3.0.41-renovate-balena-jellyfish-types-0-x-c803c00411c80e2120349f88903c72db39e81470","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.41-renovate-balena-jellyfish-types-0-x-c803c00411c80e2120349f88903c72db39e81470","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6785f1e01f1efccbf8c6c0cad62446c08d68fb89","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.41-renovate-balena-jellyfish-types-0-x-c803c00411c80e2120349f88903c72db39e81470.tgz","fileCount":24,"integrity":"sha512-ZtMHPPdy+f5l/MjDHQ2q7SVzLSO4vJ03LnM030oPB0hEXz/sLvX4NFx8AVUpolRmmuJDyhvRKM4HSnZI0jmTlw==","signatures":[{"sig":"MEQCIECDFkL+do+v5Yc7cxJQTE+/GmI8olY4fM5DmKTVyseyAiBuYzOG8VTDLctlBNzc5RV6esbEoIYRJeHcpzxNukfxUQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111152,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1jcCRA9TVsSAnZWagAAWLEQAJwg8RdzIUMlkRvQ26sI\nxHwYpC0OtqkmjF+4IH6uwZrLdtgzjmPsHZUzam2axVKSoEdDZ15EOFOjN/kS\nCbXUkATq19QRFr1gEY+GnMknENLPuD/T9K044s6GV4Eip3fY7igYsMOltigt\ndwPF7hr20iVk9e/ongOFCYauKbdPhCwHjB0Mut6/muAx9PQZ1fdQEQQvQ5Ra\n/xCp7sw4TwRKS8HD9ChDr5h/m1ug5wYr4W+p0iC0fSjBpW6o73aAyx6APsoZ\n8uNH+9waxyomGpmL66e1MzuJtJ3Rx6FswkxNso4F3Ke1wEvvV40Bss60v/Xa\nvNpn5Jj+W1xz9zTDQIefeV9DS45FqhbkoguqLrB47S+JaI29Gm31sAcwfwTa\n0jmzMdujDYkT4JWgHyfKJ8NRPJpMGyu13on7rKvi0jBjuwXVLUWcrlQYnKST\n8e/ojh4oeRRtNU9cZRg84w9g2ymozTAEIPP5uqHNgXN1CDz9CRz9vi8Dwiid\nmpU/kh+WdEupmwhnfdSoaWFiHXg6T68ZGl9dhquvRrl29ICAIeuC3T1Shfjn\nEwifPI2z2Rr5ljZCZZdsH3lFBJvPTirBeeEPvI5FIFrbxBJt9a+FLs0lO3sQ\nN0KYYp5QbqxHvyvZMwwhWSqVDGMNieE7CAVnkbq0RfQUbO6zZW/AMFbZcKZb\nU8Ez\r\n=AWzW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c803c00411c80e2120349f88903c72db39e81470","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.216","@balena/jellyfish-queue":"^1.0.130","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.41-renovate-balena-jellyfish-types-0-x-c803c00411c80e2120349f88903c72db39e81470_1622890716412_0.31187824716635304","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.41":{"name":"@balena/jellyfish-test-harness","version":"3.0.41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.41","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"63b4dc4af932ba18d6696230ebf7de669e361c46","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.41.tgz","fileCount":24,"integrity":"sha512-i8TIjM1wtoAYnW45Bg9w6Z0kCXxM2aIiAeAu5AssmLVRwSDjZsr4pwFwCRUmGThYoZegfSG1XuM4jCYbMKZZ+w==","signatures":[{"sig":"MEYCIQDqccG/ORz3mB4mBfHJrj+Ps3BHp443DAAKmpOscYkUQwIhAMLkBdDL34JqaINfMIUyjwGPZZR2JxN2JdZDswUpDJiY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111047,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1nwCRA9TVsSAnZWagAAkPgP/0E+oNhjR5pe3XXDE5Lj\ngukBSbe8kZ6goKQrEua36quE7JiX65vnbdSG+0cB7bnHOL+exPqFHklZBL8k\n3r+YBcRYzOlaMMDnboWnMDRy4LNzAgTDlcRiCBLX+KDiGUqlOZF/tZJ05DnM\nUZG9tk2KChclQEOa+drf/CKfaEF/6070r6d3K1NsoD8lB+zx/K8ZX70Uf/E/\n/QVUU5QFVraH6PUSrt15p3CYrDa5iKyOwAnUf8Nwl3VjqqlWj13kp7SbbiNN\n/jwawQgesTmqqyxg3wNVlKsY2TLRox+rk0T7bdYKZ/mM8jNez1o9efy/Vd7p\nawV7CSXL2YsMtJnAV7wLyP6+ZsRy6FWV3VEA++QZ7sjHFhvwjBbx9gXhtpFC\nboPxbgI+boreRZ8PzOgL7RlUoS1rcaMUYRFQxUva9EQNGhH/PMkXOmd1iD4L\n6n5aswkgJKGpf5mQ9u4SoAzQq5/Jf6rQACJaHYCl3Kwb49UlRG5R/0eYScu5\nswXVIdkLBv/rhhyqgAY67b7vkZLSwHpBiRcjDeKADsQjhy8MhhbvISLWbO0B\nag5b6MypAFPEuxRwj+krduBT4lK/Lv9zgaBIzDexD1srrZkfdwIhLfjdWJw1\nwjs05yEztOz5qvMSNQ/a2NybH9/srgzs2xpLLJwO2UASuU6Fq/icLT8dYrNL\nVnnw\r\n=9TQg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"417a067a65b3ec52d2950aec5c63b6214682da5e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.5.137","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.41_1622890992660_0.09388643987643297","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.42-renovate-balena-jellyfish-types-0-x-485fee923511e7de87d0741918b9b74e9225c4ac":{"name":"@balena/jellyfish-test-harness","version":"3.0.42-renovate-balena-jellyfish-types-0-x-485fee923511e7de87d0741918b9b74e9225c4ac","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.42-renovate-balena-jellyfish-types-0-x-485fee923511e7de87d0741918b9b74e9225c4ac","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2becd6f01f090b85ae5976053d039920dc01955","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.42-renovate-balena-jellyfish-types-0-x-485fee923511e7de87d0741918b9b74e9225c4ac.tgz","fileCount":24,"integrity":"sha512-s01lXwJLy2DDCcV/LNy4ms/wucLhZC3cm4Lke5JYxPY0hhdAgGrDVxpNB4775QtOaeKsJkn2frROh2lPQHOAQA==","signatures":[{"sig":"MEUCIQC2+y6mUyb1ANErkff3LsWvsqRPWL7owGVFdVt4Fe3zDQIgejC3YEopsIP9aOuXEACo7cb28GLbhjS05HTdfcPpTaw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111226,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1rgCRA9TVsSAnZWagAASAoP/3lW2o9bRl8MpMn8X//L\nZd7sVFaS5lQ/u6Z2k5y/yoK5YdxYV1627iYl+L4OgoiWhX4dc5sNAaTuO6nM\n6zdKB+l9Tv3kIsxV/X+QD0euw3iVFzWuDqlejawvbrR893UiuBhdjxaVkAxe\nhmo+TjrlUNwfYFILCgO204sARnjakn7839WbG4frW/krnqb8+he2QLEYH9SG\n+xuve65CE27i+HpkRuTUpT5zHDLuFyH7K077AISPH//KEvxAvPsr8tZkka6Y\nm6PtQgyQXRTzd7EB6PKFuNQRhpn6P+Tgf4I6IenrOJQqDM1OMTibRlBwAuGe\nC8TFQBjFrDz/wFk/HFJNp+Fhsm+dbdUUyrGQKF4nVp2fwmLUqHaCfzEkzr0j\nKfTNusLbn1pzaBZOBoDym26i1c13MAjEMew2Z+jIE+LQBS05eLfODhSUdDZA\ndlD2PUrPR50AbiNTKD1BWbYdkQlwh1+XTSSFvgSHTQWWxr3xyS6HMdxIrVsK\nLs30eWnSP7tXN8w2zBcooDFCQWETqsNLTI46eemMXl/iubFIJ+7cYZy3sF/y\nVhZ0NFuf7DAJOeBXf3bJ9bf0nxfRhEn0bPklxvbHqfeKT08VIBb6Vah7rRN+\n+kImpUUe2GzZlupFio+xnybpfKatGtSzKXnXimVRjdMaLyirS43OBEZ6gpOE\nFp9T\r\n=5ZEP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"485fee923511e7de87d0741918b9b74e9225c4ac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.42-renovate-balena-jellyfish-types-0-x-485fee923511e7de87d0741918b9b74e9225c4ac_1622891231876_0.07821694048198591","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.42":{"name":"@balena/jellyfish-test-harness","version":"3.0.42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.42","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"521715deb3f3ea34f18e9a427cad8584e006b3fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.42.tgz","fileCount":24,"integrity":"sha512-HN6kpku/N8BJ33hiFjrwFsDWxrze8Yf74QYEU0IMNBRq8pzux8+u4mo7R5AOvRmAsB9BH0/wPO2QHCqXU/pktQ==","signatures":[{"sig":"MEYCIQDNxH8rdoyF3d7qaACFzCRLDM/hSDQCF1tGd4LGOaePhQIhALObRiFdhymobBg38TpzEUixECnElOht09CbonYWQN6i","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111149,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu1xiCRA9TVsSAnZWagAA0YUP/0G5VWQEZwr6RNHD4iCw\nL+xOCAwjNWb4IuJAP3G0G2GMJnQh0JkRnI/MCeozHOLCTw6RlVJkxYUMMTDj\nMhAkyMNY9esG3f7qeNZVLOFe0oSRc+MWIbfM3HNwOlWt2Pwerzs3W0XbGKno\nrqlKCm4KAEu2FnP/DsiFgau0/cLl2PuL2FBF13Dr9/1/WjJPsWk+/8cyD0yK\nOPodATmUA9IfzsktdJIYMz4D67o4zOImKA8q/mnH/xARLQwM7ZalhvM7lxak\nX6g8qnuvwJ/88OINgjdbp2AKmsJlFTnzS9zP9xFZCSsGxM5rVZSI0TTPhXf3\neeG+lSRgfIVpZ8HuftV9FJL17h//ELObO+hoYT31g6Hbxd9UWeHGuuRiGA1i\n+n/i84/JHB5djLKkXx7p0sjluVIRAbyx1VDOrU+4KXkURb42cYMlprTz9gtK\np1f9BqBpA9y+jODzPY/NJHTiXOcC/u7qaZEuZ/VBuTgrazqfSikQz5KMoV0X\nxhxzouSQQmrtimaU9BhOoMkmKjYTmhejyGyNQFxNT/Uo2vNvblgL+gVdp4uz\nUpBVkQBMcTvamajnfqPAwgIX6ZlqrieUMFARImknW2qJtAV0+Of2WwbGsK9P\n3CSQ46CS//RYkZCgfdFJyewDNnRWmSDlF5Oil8pmi+djOg8iMhGmcqAQdos7\nB86p\r\n=mtXZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7bfe88acbbd3f0156b35ac610c20f6899204e3f5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.24","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.42_1622891617898_0.8676295921782011","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.43-renovate-internal-patch-ee7e92a4208afbc40431cf627285328c447debc6":{"name":"@balena/jellyfish-test-harness","version":"3.0.43-renovate-internal-patch-ee7e92a4208afbc40431cf627285328c447debc6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.43-renovate-internal-patch-ee7e92a4208afbc40431cf627285328c447debc6","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba53d2b5ee30da24523857c4be3e3cf98ba1d741","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.43-renovate-internal-patch-ee7e92a4208afbc40431cf627285328c447debc6.tgz","fileCount":24,"integrity":"sha512-sHZPLW5pkX+BZDbAZQ5qvMb/bv9ZXpD03l8yPV9ZFhWRR2RtZHgZSTMZ3XMBNqUPjAWfTXNZjzfrmynjF2UOZQ==","signatures":[{"sig":"MEUCIQCyHVAKseeyhRo5AQ6/P7NEeXVQfXdMkiKZTXfxbQ6PoQIgUgc4JagClMX4gcQnxaB8AJhOvQh7xJP/k4Kq+8hQm2s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111318,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu102CRA9TVsSAnZWagAAcPcP/jIYcuuQxxo8ThOKIDza\n2aPr2eT3Fm6C6cA34GWz9oTbcQY/GrlmA92kiRFNnihpc/qHHLK16YkKo6Bu\n7w8ifi4OElEG3x1aBy19zeFGRQ0SoTInSqGoGiSO9o6X4LAPV9DVKP1SBKXR\nKFXHtsFWPGw3sPBHQBwuhbrQsemGLExCvWax+m7cxpRfoc4/WWXrAw2JeXue\nI725DD3z+G7VFOa+YcegxgUkUaXSH4SXI2mPkCCzAsuNDkNa8LzdO9fIXoiA\ngOr7KQi4IgBml/IHjaI8zW12V8pjDVFCpd/eM08n/7wX8WoQL+9VZVhis8kr\naEHKpytHD4NNu+ry2SkK/LgE9GVGhZVXPHB5fNXzhVY8YgnDrhTUqwUNRZg1\nFFylft+0pneFKe+vefLxx5tVmF71iQWeQtAe3SWLxa7AUvAyB3K2BcsQk2RD\nAZWhP78sPzwV8fyydgvVeC8DtFtGOO0ZULObeE5f2gZ8g1+VCT3khir8CFAS\nW7qlSzrb99z+YFX5wrDZZLUxotFXPdetg6jiqi92FGEI3JTD5qmUcdA2RJpz\nUSdAsf+qSAolYO8TCSBplmr0LHNzuNCCEv/J01I2egkGMo/EXMPgYp6vlxzx\nNrKkZ3DBXVbYYJDE3a8Ud/v/OcAvgkk5bP7D7PQn/5gkkhVIfEyINkbYc8cV\nEKpK\r\n=QeWb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ee7e92a4208afbc40431cf627285328c447debc6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.25","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.43-renovate-internal-patch-ee7e92a4208afbc40431cf627285328c447debc6_1622891830225_0.025874117870663182","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.43":{"name":"@balena/jellyfish-test-harness","version":"3.0.43","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.43","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d2e56b36f5b37a098febb3edf68cf28414098c74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.43.tgz","fileCount":24,"integrity":"sha512-3WBm0nF4W9QcNOEHEGhVebBSYds2nslHMsC/Hp7zTjkvd7Piau8GmWarKzWRhmgVeMAztT8LV+ZoZrA7tcRhTQ==","signatures":[{"sig":"MEUCIQD3iHsMR3/HxO7RGNg21XlZch2bOj9LiFwFttQFZzCk7gIgVyGX/p7fC2r2WwhjfOCo/FQU95qngeZRhPXOskJdQik=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111253,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu154CRA9TVsSAnZWagAATGMP/i9CpULsev59ZJ1zZVzF\n0z8qp1LZfpnW41vdaTLt66Inectlc+HYY1su1FsS/rElL4FAjr2DQiYITqT6\n2PEdK3ku8A8kdr68x7+LUi5d+k5uZmKEIxiQ6Hwbrz06HpbaaOPfPHnwjJHa\nYWRZ1NdSeBZDfSUNPn9cgSyIACubFHZJ9IfQUpQOak8/rDTB/HSMwJg4WG3B\nD9cZYqzdY/dlbOlcLWt1UpP13anbQn1wqTLfF1Y05ZGgGeZibb7TN1ZJ3NEJ\nxKGyFtcuM0LEBbMF+jKAjHjzlEiWHvq2brYZO95ddBvvndpVwi5aK3ZknQOo\nqKyvz2Ab3D8hG9dLtiCTwr3eU7MK+1KX7tZWOnGxWTEffSCGBRFY1rVDIBoX\nINx53sBtOfSdYfTBrrDNd9EJGMp8AqDsIAGHiGhr1xn8NntvJJIW08tMa+6L\n2JekByqxOOMd03hIgmch9IMscWHN/VzRhZeYtx8S9Veoq9Wj/SSE8y/IEq6r\n6oO1srzOHeHPSr1WVElNSLYf7Py8s6fQiA7BiV2mXovn9fAGbG8L4N8V8Ua+\nY635va9UcmtQx42T33f3f7us9HNbmOwRDgFJP7GdHpuEryRgI9i3eiYSm+R7\ngtGirlx673PFqKThHo/lLeM3ihFhRqkhB5T4WFFx37fvNZa4YEfgQGEieGDq\ngVnM\r\n=CflM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e4e24cdc45324fc8e2df2565b5b61a429231e94f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.25","@balena/jellyfish-sync":"^6.0.217","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.43_1622892152095_0.3329021044663414","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.44-renovate-internal-patch-1c5146145baf42263e2632b166d76217d24eb43e":{"name":"@balena/jellyfish-test-harness","version":"3.0.44-renovate-internal-patch-1c5146145baf42263e2632b166d76217d24eb43e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.44-renovate-internal-patch-1c5146145baf42263e2632b166d76217d24eb43e","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"af5b6ac700edfc2bdc67e0624c0a24a3c5e59bbe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.44-renovate-internal-patch-1c5146145baf42263e2632b166d76217d24eb43e.tgz","fileCount":24,"integrity":"sha512-CkVGYvlbqtqFcRJurerUCVDSMe/fJG1KytybwM4Rs8eddKVmnBnFHthKgA7kUNloPX8J4wbqf4zFDNssAt++oQ==","signatures":[{"sig":"MEUCIHJvSmaFVOKVcEF2Ws3R0U9uhuuUWVDmFuXnp/kK4IW5AiEAtpa9ERwPvW1eDoV7lTCKsWO1Mix71UsY/svByA3iz8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111423,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu6GSCRA9TVsSAnZWagAASgsQAKSzGBO7mSSWa/OOjx+W\nyzrw+4hD/uJa4oc1tECj6tKZmtapcKkPrrxaVfh2HkE1X1k5Kmzm1Ltx54V/\n8e8+1eH1PWPVMwViCvVy6BJ/q61tX9SW0uGKsR0/a6DxWeNmcW3lm+MEiRog\nZqffbVgyqMFQxwRYd1oJzYRxxqAwlrKjzCA+nccjP7b8WYWHNAqa9velioa0\nZRbzIdTjNvcSIeM66+tYbtb/k5Ly+cjkuR59s47prCU2/hxaeFUymFLbo7Mp\nkHohI7dt+uZXhLby55uE2LhZHEAwuKgzE9QooVCtn+qnx2sBBN7UFMy1S3p2\nSf1YaYpW2MY8SX1TuMwX0hd8aOqhU2d9ocQb0tz18JcC2Uj/PrPwip4zoXSb\nZjBwmWuoBDR6hEE5wGHOnjlTtO9sE8LqKPMWCzkaGOKu2f7y6bLB4QpYaeUq\nG9x80Fk+GgzP6iNpXzwts8Xjqh574KiDi8h7Yp6Bni8ebCmn1WtS45HCCcVF\nfHsK+LlkYAW3Mp39QKY7B7VI+mN/5PR389YvJp2Mq4xtM0XQDO236VLNyLKE\nCsXkZYVpJsTUkZ9VqXaOYUdyb3rI3BZgxH0Pubn5OcXpn0dj3PDfW+I4k02S\nY8AMyYx6c+hWDe+FIq8cbzl/PivgbMdxRzCU/8o8rir8tbpDf40HfjnBNulm\nOpZg\r\n=V93t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1c5146145baf42263e2632b166d76217d24eb43e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.25","@balena/jellyfish-sync":"^6.0.218","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.44-renovate-internal-patch-1c5146145baf42263e2632b166d76217d24eb43e_1622909329905_0.8983971768199284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.44":{"name":"@balena/jellyfish-test-harness","version":"3.0.44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.44","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb4f5111fd8cfecced8ecb16161152e663b4e45c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.44.tgz","fileCount":24,"integrity":"sha512-lvxzsDzphTmZEKm5NXX0JihGfIFCoub0sYVY827z4tKusIhXt75XifjepJwP7KvQGIYmQfXKHpzAtCyGE+QY3Q==","signatures":[{"sig":"MEYCIQDgn9jqNHY7wMFT16wY6ayPF9i5YdhnFTM7GM0LJuxVFwIhANNHZmvLVuvRk+ab22ky+ahvB+KaDtvQnmYfQTSpaO2Z","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111358,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu6JgCRA9TVsSAnZWagAARlkP/0fZouxKzZziCXJmzcuq\nYGDbj5L2PCN/KpspCRm0rGuM8Ph8/gi6rVVCGWq0WCNv+jGGVxVntZ0bCEe2\nrzhjXhTjCv63d7XV/5TsK70tngFapujAvqEvBYbv1isN+ncyl+2uz32o5A7q\ndVDZmOmIw0Hq3P/kA2c8SQ/oegAkHjWiHSl8W8Vtnun/NuDe51K5W3FxcK9C\nlYfYEfWXWlKW5OxzYTVEtvdFBVYuMZuLN6cBV/u0eBHqGk5ZSFaLi7sGppu3\n8Pe10Qrf/iejamDigyRwEpcaY99ZHfe44ox0RQ8kewC5NPz2Oq7Cm4AqBpIK\n8ugVSJQ8Ew30Bd/8zC928fVZTCWEBdHQuuHmCgCYcSvZUFtmlkyTzLvOYYqB\nUitCsdHCP0/L+h/sKWMA3WP5KNgyDYhLnWesHHBYqnvT9Addvhru91ugz1Eh\n54AbGOrzFHVzJvb0D8QRNFfpSTHFdtMC+xKQYGFSgc9oVPDScZ9VguG1jFEm\nyfX2yzXka5D+oSDsBRQVhzWejEipN69GZ+bNm6ib7JzvC1Tm1bsk07aCsEuT\nT2sVPrPENF192GwkbDOozWiXIIUbFkfOyeSUiiYQWtTkHW2OgIXNjbRG2Cei\niswHbMfe2nRf9XUXaZek6Pen82kjAwCMEyMTw3bmUnHG2QIuODDeKj+Jm0KZ\neh4y\r\n=uzEm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"14ef3d5939724c97a4713dc86362d29d2006accc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.25","@balena/jellyfish-sync":"^6.0.218","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.7","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.44_1622909536191_0.6757975727431405","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.45-renovate-internal-patch-2c8adb5d02678e26035eac99852325b666f7809f":{"name":"@balena/jellyfish-test-harness","version":"3.0.45-renovate-internal-patch-2c8adb5d02678e26035eac99852325b666f7809f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.45-renovate-internal-patch-2c8adb5d02678e26035eac99852325b666f7809f","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"321a16891ea2da5cd0d72736d2afe20093e2cd1b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.45-renovate-internal-patch-2c8adb5d02678e26035eac99852325b666f7809f.tgz","fileCount":24,"integrity":"sha512-B7nxistl6kslurPTmpsaegRkCJrdoN0IzLQnFchItUuAsTtdDHYYj/wNY6WC3JzMuYAs0hSqANjA4TgWqFrNCQ==","signatures":[{"sig":"MEUCIQDTmD1rVATtsndrpb+raIVEYyuNS7QqyvIPiSOrfgTfTAIgKuplCPcCYgIHcQr3FsRAW5VYoKcv4cahiHmLzQ/vWrc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu71cCRA9TVsSAnZWagAACzwP/0ZwnoBsFTmKaXlWPElZ\n+0XJkhK9Kwefb3K264YGH/yeIIVOgtzoo9nRx64nADp+toTWgmzcjq71X+ud\n4mGA7LjuNDRgjqD1mwi2e6S21k/c843n4HbJPe7czsitH3NhVjk91m+enIS7\nOY51yYyR0saQyIQDUzaVNWztAz4xqgWzWap47xKbtPM7nOEDmXvLmKrgdYqL\nih+NEDq+6mclAKqNERLCoB0WS/SpNIIJtG6+DSL6tz0krXH/J501qJh6+UA7\nt3slLz+9SoL3RIBIuqlttjO9H0bYlHtsi7FPTzJviM7qjFbipv3sHAMXHNMW\nQCoREbq5/S5xqN7BreLfyr7DiOe5qnrU7wgl9wtw/ztTTbOUsy7tk+VdNEcD\nE44H9/FxuGwl853b6j+g6TP8oKQWuxE0nG1L4fpXU7BXB2K5eA08VEr4nbnT\njkgElKKgS8Wezh7W8ZoRNx8yQoQl3nkDjIwOngwPjv0EZ0wdRLIVhQF6qwza\naA7p/87x9QWpMC1TgoNWW/YPcmfkSExqLoC3XelL+zs2bYD86rwUx7PmTb1t\nJ9VSpH5JAI1Pi6zjY5OCzp5cAxfEGjner0HNEzE3UM+kD53hKjswflVRcGL/\nv5sMawqyJRrwlU8mjY8ia8pjv/jyYy3omgEA3yaIGfQ+2/6jDQ+7O4PBVwpP\neU8R\r\n=ixT6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2c8adb5d02678e26035eac99852325b666f7809f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.26","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.8","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.45-renovate-internal-patch-2c8adb5d02678e26035eac99852325b666f7809f_1622916444252_0.4540602400180347","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.45":{"name":"@balena/jellyfish-test-harness","version":"3.0.45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.45","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"467e4564c3a063e482dce81a2876d657882101db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.45.tgz","fileCount":24,"integrity":"sha512-Sj4LYlekug2/tAHpTDSM8/QPue+DpfMFCsVxBUVsKyx1umFQom7VXq2pCaJm/LFFR1UjUQc0EkJO3SNTetDoCg==","signatures":[{"sig":"MEYCIQDgrvkUePBzy2RFYJvvClmBjfIKM4QgeyHfJlVO4PMUrAIhAPbjRIpQ7Ht4la76VgseGLOMHnJ09lmEKEHrPebmYQFG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111432,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgu742CRA9TVsSAnZWagAAzZsQAJLxqvL3fqHCBhf8h4M0\nk4n9Ps1oDkW9pa+Scxmodk4ZVg0i3bxreQMk1TxJalRPobMDcFiXCSSXOKNk\n4LN/Eor8b//TbvvNCaF/+FlwjzKggvtcpf4hvhm8oXmVLnRy3lC/bP3C04Rw\nY4/x0iO0qCEJVQbvb9rQd0a6DPrOTMOKet6t0G4RmzsYvJ/9tujjpOHCxhZc\n8neXIYADdM34SxgIeH38tJpqP6ljMWnHPi1t/piHey41leaZY/E8gEqNbea8\nVRHr3oFKVQeqeo+t9XFM2JKNosbtlLwfgV4xPV4h1UGy0sDeIMsIElbDiypd\nWxBeqyn4sYCDrT2ilpSFjzNsg2uOmmB6CuYMJ5v68FlcI3HQz55C+WzWelnC\nAY2TRcoe0Zu7IJgALcMaVuT2cKMr5AKEhjQNZ0nmtIzhDaX0shryWvL0wXjF\nyp1YDrIVvIQ8S5H7araAqazsPcWrrnLZFr+dOzeigOr4xTXW/2C+FDh9Lukz\n3iPzzFxTaTHzADCUjt+LfgqL6KZ+ygSZWU4lrGAf2BTLAl3USEPYW3ZrpAJ3\nB8w3JX0WjcJTlLyfQQqnlxyzhd9x47OenkCYu3cnePRHdDdyLDWIm1w9z3Jp\nZ4kk+kWqKC65tIuhHALWJEFWuwZlXIFnzdweq0UU9H4Xa/KcKxvTpodzQziN\nai6c\r\n=bZxP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"44afd78c848b87f880f1ccc1f7979b1a610a3541","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.26","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.131","@balena/jellyfish-worker":"^5.0.8","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.45_1622916662797_0.6290880221420365","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.46-renovate-internal-patch-7b30c6f63c3b204d15a26803b34b043a10fa965b":{"name":"@balena/jellyfish-test-harness","version":"3.0.46-renovate-internal-patch-7b30c6f63c3b204d15a26803b34b043a10fa965b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.46-renovate-internal-patch-7b30c6f63c3b204d15a26803b34b043a10fa965b","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2135110507c7e0fae0856fa17cb1b860b8add1f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.46-renovate-internal-patch-7b30c6f63c3b204d15a26803b34b043a10fa965b.tgz","fileCount":24,"integrity":"sha512-Z6S8/Stek2s4IHp5eiO+Q2P8DoTVciwA5wFWqCw99J+DYhQFsHdq1aNtNlKSGJN3Yc8cdav/oqYQDnfxneMbDQ==","signatures":[{"sig":"MEUCICO4EUsF/vQAi70qf0II3b00uatoRz/r4NOXwAqYpLnHAiEAkCuJ/BME9QFez8iI5mr6WOXT47DFeAlrtg7jWxL6pfE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvBUuCRA9TVsSAnZWagAAGDkP/1iySA4utpl+8JLi3GUV\nVOneBvFlcgOwMFW438EwiPPtit0ANxfx33talnaV57IvLykiuNL24KB0cCFb\n6Lvk936e3gTHiJa2lBnFWMf7lO4r3u6PniKmGV6PnccC28V0dDF8wFUmplnd\n9S7/UndBzLNC4aLYbibEha0qil0Aru6WFK8G8QsAujnI3+aTYzqJJcXj3UtW\ndE41wVcSD5+2P1jwZOR3DjSOBRBmK1fijGB/9qlGzqkBYVRCAbw794Tj4jvI\nM/JudA6R+VB+uX9bclwsU3X0AwSnXqrbgQCzKcbhidx8sG1eug8wZyrsaGPo\nf0eEQ0AqUNKiWXby3wNbNzsrvgjRq0DZweR12XXJ5l8IqOLYsobxXtYlj1pV\nWlu1A5WrCiADJA+NdbZMuDC4624n4/6k2d7IovbZ71u/KfbcbyHtSl4aeik2\nWgZnvV9hwtdvRcZP1JsMLUpOlbLAlqkrzzuB/8x7eAmNy9NqNPjSNRgn8/UG\nDDJhz0P97Q094gLTTwGy1gLW85n31wOQvmtOq4dGmUfLXN9U5orB/IJN0aJj\nJ9k9Q5i2Va/hqxjEFSLjMvquvimiJaHD+dkqlWJP5kKdbrIqrha82Apqf/ZQ\nuL4uSQBP74siI+AgQ3GYmreOf8zhVOdysuJD8bcGVj2tuaz+xtpnCPgK1E4g\n+umM\r\n=vN50\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7b30c6f63c3b204d15a26803b34b043a10fa965b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.132","@balena/jellyfish-worker":"^5.0.8","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.46-renovate-internal-patch-7b30c6f63c3b204d15a26803b34b043a10fa965b_1622938926093_0.2254102511085272","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.46":{"name":"@balena/jellyfish-test-harness","version":"3.0.46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.46","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c0584d20379082746663d502c8d0df23a5b41785","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.46.tgz","fileCount":24,"integrity":"sha512-2qm6dApH1KwCKS5GYPEmvBbqSSp9yhO4bPEklpeNFOJOURrzMI3Q/Kd228nCzVpY/t0ZijSKOiMTfrXs2cBl7Q==","signatures":[{"sig":"MEUCIQCNLAUBx3t+KT4holzecpGAbrJ+SV8TGTDsnRoDJfsmJwIgGMIsM76tpWnP5J0dxmgFLlK9UJKARsg89N3/zdcZdK4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111506,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvBX6CRA9TVsSAnZWagAAce0P/14sE+/Trs+8Hyv+W7kO\nQsdakitJxOzdb1gXGkUX7DzXNk675mUwgHDi7tQOto2qm7RBu8TtDTmdlfqI\nUdcZRNI0cw7lsvN9OuAxMMC0qHCd+H4wZyoYybBF2efL7PoIpSzkWcc/oqAj\nqn7cOar3G4OxvUFtntweO6494qrmUWp1GGxHLKq1AyllDFuG6BXi6sk8wS61\nrbPFtyQ40Y9d0B2vcM0LR8cYJD1fBa7uLbwYMYMVfFfbay0aUzMFIRHp3Pdz\n7lapGkvY393lAehDEXlX+UFJ12UOxwsLfPmniuAGcp82aCIYylzcIE5JOdGJ\nWpvKFh7Fr7ebFN4eiKP5wtk05edV7EHKH6djPVTjwvZQWb/aUT2zoc5nvMeP\n2lCLgReyqK2os1+7jnDo0Ho08WPzr1gGOy0SeMCQd1tL00o3dlGGc3kUy7pn\nTwafoP6d/a8/fQjkncRkPfJLN7SGPy6nRX5jaeeVJGg4qRx9sP7l2rwc2Lm5\nC5SRddiYNTFXUQEirZv4qvZX4lTG7cCX74XAbSUlsCTZc2WaxiZtrYbspKF6\nxITAc/kGXLLDAuiydDoQzqAKGpP4kAZWGmsClPGHyhVjh7bXUQ2MdeXCi0lH\nM7AGcTwXb3OXt3lOZbWDRKC0HMWHmOxy5RPEl86qkpN8Gvr8vrbDJ0gHAlEF\npLaV\r\n=SOWS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f20311ccb565ff55c46490667971b6ad518f7f74","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.132","@balena/jellyfish-worker":"^5.0.8","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.46_1622939130744_0.29648867975143123","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.47-bump-jellyfish-queue-8868869cbf7dd7657edece9832ae7584ecc3d0d8":{"name":"@balena/jellyfish-test-harness","version":"3.0.47-bump-jellyfish-queue-8868869cbf7dd7657edece9832ae7584ecc3d0d8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.47-bump-jellyfish-queue-8868869cbf7dd7657edece9832ae7584ecc3d0d8","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2630b2fd814d000f54636eef60b72fe0a06bf0be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.47-bump-jellyfish-queue-8868869cbf7dd7657edece9832ae7584ecc3d0d8.tgz","fileCount":24,"integrity":"sha512-yFOg/C2LkGDC+6Gab1M7G/itoQs+KjhwAO/XsSDMmVae0YjzDDv5m98OEjLrFYObQhVUPixIauV2XlOFodcu0A==","signatures":[{"sig":"MEYCIQCiZz4yYmf1NO9MkdoCuhMReFCJipQ5uFK2OTQoXJiyywIhAJq7arwkdoEzNOcV8vvBCidO43WJEVLHA9kLH88K4K4L","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvCtKCRA9TVsSAnZWagAAbvUP/RLOBDqA49kWwZ2sNHgL\nKXTNJk4vcVr8wkrt52cvOFXZzS0a8N6uszhWfAJtOTMIf+QX1+n7mZrW2R8a\nBEKxFPVxGXIp4q80eM8X9hO8oA3pA/mbIm9e7+WWufslv4x5JMmsNRiGrXGV\n6CQ/cXXRKwaA1ADzIIKt6oGHsmHBu7bNRePBj+WA5llA5ZeLe9J1eIyrS619\nJ5Y1akru5+rQJ9LcpOeBlfgArcDfNXcOoJirG0I6bfgsEzTzsRRabs6Gmrmj\nYg1RaOMhzwroHHjj+vJ8pAUDRKbTilp4hebrzDFkYMyhq7KQ7RdGDKZzPSow\nWm4Dqrx9uWD3Cxax/pio0vimFkUzyoLqXoZxgb281G7XkQpe2ezjCsO6vDL8\nZLbIPP4AUOVGCfaMJjum9y3eGUR/pWMc7NrkINXArDMLZzNIZ7BpbpprtC1r\nGBkTfcmlppWll1zKvbTgdzcXE5FRJ/Fl8rmhj5I2eKWaZdvyGU4JDspWLhgl\nQFMR0SVcXq7J1TwPJxzyh0feAauYNGfl2xVPXqpfKTBMGp1HXUPhpTziUkH2\nsceqW0OgRpW85sAL5BoyaD3MQ5l6D8A+bqAvyvMAFTT/INvYDLmAgSyUqnLm\npOZuQScsoWUPzL0gj7tjdWhXEkGRmY+9I59czycvym/5fL5XfQWGcd2Z9sV3\nV2hy\r\n=u3wA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8868869cbf7dd7657edece9832ae7584ecc3d0d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.133","@balena/jellyfish-worker":"^5.0.8","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.47-bump-jellyfish-queue-8868869cbf7dd7657edece9832ae7584ecc3d0d8_1622944586602_0.8113005536988536","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.47":{"name":"@balena/jellyfish-test-harness","version":"3.0.47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.47","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"001b2e783dddc95c9b76c15b71e14540b328cab7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.47.tgz","fileCount":24,"integrity":"sha512-kSkYAGIbO4muW7Eda8caDNABf2lXWSap3zvAyvpDuxW1t0UPO3F3iNfT6lgkaa0yyrc0n6sQK8J8w+Ye4V2uEg==","signatures":[{"sig":"MEUCIEVv4238ODSEMYYY7jFXBHILiy6cbK/dFSN0Ud4/y82vAiEAqqn/ubov/GqJaKW2KtGUA8TWBvPsIzeOY753VKXjyug=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111584,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvCwMCRA9TVsSAnZWagAABEcP/3TPo477vPcAhKFXCpEo\n8RTvDMi8WrIVOIAxtzBDcP4hnSp7lFcwZ4excYwrbf/gD/OsYciZBXJVn0qS\nt0JAtkvqYVyYes1Nbo66AG4XTKbs/dmm9NVqW4hXm1CDeo2QP3Rfri85j2X0\nq0tPiBv7T9jPqYGliYPvPyTVK+rIFHpCJI/klv+aOCnBNcE8WdBSbda/3857\nA3EcGsuJ1xdqkk+AfQOSoSA4ZR3x+7u4oysRHaXfctVrKrk2vEIe2dMhVm4K\naktipXe85lpjq1/mAZlAG3U8buhPTIHFTaSzqmsq4g3JzFWu3dpuNjd9Q1XX\nTOu0AWR+7cvYarRrt7XBBHAIv32twjCeiaal16IIGyy+k5WHMne8XRgnFhUw\n4m2Sy22L5YQzEK3QX0WMZ9yvkCYib+71jdQ5Q2rYbURm+iSER4ZQObqx5ypu\nnbiQ832eA1EfjjG6nAuMtHbpLG7UBQBhUDGVM7rXTiUHc30JbyZKMIRimpfN\nRy/gyLeK+Qe8tJjDDG+ny95RJ/xDXevMVNzkaI9e+8gw4bMDx7P7mdt0Rp3A\nQItzozonz99/v2BvVL3dRokl6YKiIgbi/r5G52KCKbPteOmpgwARZIynJMEs\nuFB7sgzGbrJ6VoSL3+c8ykkS3xpIP0WiPF9hFafNhaT+OyLZurSbOM+Z9UrS\noBxw\r\n=9unq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d8334361cc5cfb786c444a6403d950280de14faa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.133","@balena/jellyfish-worker":"^5.0.8","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.47_1622944780072_0.6952078879104431","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.48-renovate-internal-patch-3facb5957f484f0d9df35683048056eb7bb05219":{"name":"@balena/jellyfish-test-harness","version":"3.0.48-renovate-internal-patch-3facb5957f484f0d9df35683048056eb7bb05219","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.48-renovate-internal-patch-3facb5957f484f0d9df35683048056eb7bb05219","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"35c13c72a3edc0a4cf38f0ce68f97473f509d523","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.48-renovate-internal-patch-3facb5957f484f0d9df35683048056eb7bb05219.tgz","fileCount":24,"integrity":"sha512-ujHZT0F1royUFbXwOSkU+ZCfqKOPXIwVg6BCijgxHSIuno0xFvThATTJjqFWMpjH3cOImKhv6IVSJw87KtbB6A==","signatures":[{"sig":"MEQCIBRGj1lqpSYalqsWpJNA8mmoGO3xJXxY1piV1STR8ITFAiBjpk3hBfZMzbfNFDoaka8Ed4wh3fZCD4vL2R0lnAvmxw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111754,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvC1VCRA9TVsSAnZWagAAi/gP/3NY9Zc6WQliHU/Pgm4o\n6Bndg/hs8pnnv6Ij/GBURolORKGuG3hlR8XRRrfcUg+CtNedIDMonW+j/6C0\nO0ccLxNAMOyGk8BI3HNROc0hzyoQmnVbqvwbR0LADl76Un8yhvw0nzprRPjY\nvGeNqJXi4zc4XWg/SkvtiMY+M9lh/OUYoyn/atM6V2GdPvrLqj2lbE8n/LNR\nfm0fUDofM5o3Yz8D4+AlQcLf4+aHbIoNoMU218iDFb84U58ojV3loZL1CqZR\nIs2ek9m19iXFtU7yeQGBUuYgxpe+Gwxr2yFm1JFpvO8ci60GgoRYyRNazZ9w\nYiJXdWFhujNYOfrYdyu1KzS6d2TYQB94cB/8AhjIcHud/wySQe/Rx3Xuwc+O\n7I7ngksTKee/hCSJtl6MlQnsWabZPJ8zeC8NvCZPX60jrooMLkfjeX89RhVa\n0n/a9t2gT+j5qFDyRJVMdw7M42d7y8ZlydrKJVMULEzNYv20QE+9s5R/siQh\n4TsL4oTfGqo1bqoNBKGGCbKTXZTHwuxN/WR5/xePNFuxknUpm6iAOIWgzIpK\nEMEVsWHoqbuGFF7nmGMiz5Y6jZ5ftwQ8Kr82Gz/M/TK9NcZud5eAfIZHuU8W\nLWROzxI3Splf1ioxR9owh6pAeLtQrbActP5Jy22ZN+0mEIgjoTNbrh2H18f8\nLuna\r\n=VY0K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3facb5957f484f0d9df35683048056eb7bb05219","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.133","@balena/jellyfish-worker":"^5.0.9","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.48-renovate-internal-patch-3facb5957f484f0d9df35683048056eb7bb05219_1622945109433_0.9006759427300479","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.48":{"name":"@balena/jellyfish-test-harness","version":"3.0.48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.48","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"50896ee5801d1df3c37a191cfe0c4ab5020e02b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.48.tgz","fileCount":24,"integrity":"sha512-JtL1OyEHejmiEjZlvyhfetj/AsRswlODZDXtaMAPcAl3o2c7lWmAokB2nt1vP2RieJms7simrzD2v8kFnvSOaA==","signatures":[{"sig":"MEUCIAjsOnijOrnNnCrN7UbkXXF6f1LmF0kwaCMbaJlmVdGOAiEAtcgDS/IXmSlMMQ4zBkycX/1O9xglRGrcK5UmwEnQx6Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvC46CRA9TVsSAnZWagAAtWcP/3M88hZDCeYdPQmVje5H\n46k7poxTZIutYcZbboakwgSorKuYNgjmLIFSQXhd2oUqn4WH3VW4w4wKECX7\nvM1GQAuzG36WXyOhNwcVqcRGHc9vj/Ry0ulx8S3ssaJTre3ci9M4OONkWFIY\nHpGZKNS6oZ+zvfeBcDh+DZ/rthN7YhuPqW4TdWLA/S1MPJzEx9tlZv0lX54l\nUVIeOGUCNo9ffRvFUgV/bff5rCJjjUzsl0jAT1SHhzoPkjxPvr/N51tsRa+n\nIVnOzx9CCudP9LumhRd8Zdjrkb79EfPGO4wNQ133j8j67qI4dPwyz4zdCi+H\noUUKC7P1tXMMh4yIVtsPRo3hf6wyCKcQNypmQEf9QQg4IYznKXVcXdfijmAS\nlYVwHfqxBb/eXKm4FWNjbZFSIj0fyTdZE8cdx60v2Av9epAKmCdBnmvTBn9g\ngD3gq5FbhTxtiRSTir2FOg37U9jcHHOPkK5GNsNt7tgt3dIqj4vhsYTxhmoP\n+cKfbJXlqWHDZiRT643dfXcluQHYCfh7D6VJy7NL/y01H3KmttZ8E73splql\nBeWc9y0H/P9BRxF9dAagZuDLOSnRRi9/cAzBVywh6ZbtXlhQ4Hq4IOdTP9m0\nKtDdgBwVQvBU6kof/pwpeMs3QgoOauyXW8Teg+ek64NtYj0rqyslbBiBROjS\n35Fo\r\n=Ygwn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cb3a82924e652968489ea79a5dba2b32216ebff1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.133","@balena/jellyfish-worker":"^5.0.9","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.48_1622945338200_0.5217493148330055","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.49-renovate-internal-patch-4fe6311eb69a579e46e708aa04e726c78cb8f8e7":{"name":"@balena/jellyfish-test-harness","version":"3.0.49-renovate-internal-patch-4fe6311eb69a579e46e708aa04e726c78cb8f8e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.49-renovate-internal-patch-4fe6311eb69a579e46e708aa04e726c78cb8f8e7","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"968b100f4f2e224dcb5afa60fd20f661962323a5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.49-renovate-internal-patch-4fe6311eb69a579e46e708aa04e726c78cb8f8e7.tgz","fileCount":24,"integrity":"sha512-TwlZ4pR2C5Xb92zrHQyCmSiiggDmTaawwRVHm18IcyyjiaearGn5GWcEYAMQU3Yw3hLPERCMy/3FJw43XhN+7g==","signatures":[{"sig":"MEYCIQD+CCSg8C08Zg9TQZ6q5P/LOnsz5dmQjaMkHmtLrktx1AIhAMpseUgDD7r/E8BRS1flt/qFvVWNZd9EUYduuwpKHRcM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111860,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvF2+CRA9TVsSAnZWagAAm2gP/1oB2FgAhFNkj4N0a6SH\nifcdZeKiFg4aymDqmXtQS9uBJnX9V8ZqgG8mXZXp8ZowL+ge2mQk8Wra6shm\no77TjgYdSbKDxu9dbD0qgbhGIvoTdjmMOsYiLMf3DhSFAAErVTppxoCJmuTS\njtnIbiqdsgUUki6+A+HqTgH+p102rUyuQsYgMIA5Kp855bd9HlKRCmANyc50\nKkQjUo+S73xN6K3FLNEj4bfAsf9zwBnARljaKvAxErnEv+2puGAJ+nf5vDUX\nYwoA49JNbWpIlgm8Kc6jNhyhnvJwiC0pRJX8I0YbwMjktnw26+UtsVB2K6hY\npvmfS+HmUjqifvHOY5PTGKZ5XdnwWbD5hPnWrFlFkgGRCgew6uck1Yvz9slq\nxwoj/gOwePKAEREFZssXPzJyJmO1NE3caTU9IJMJdWDpmyZB/N/uO3TegYRJ\n3X2OYc5FYDPsKhpcgNk4bLlh0hHDchGVyeaoYzgUqUNYiH4lbNVEpxhSFNO8\n5qcawLxd4nMOtnIrqK64AwC4DK92rSsXxZi5LBgkOhUQZeUURYdu7Zbcr35P\nGQg8Pw5bE9DmMgR/taV/beimk2cxqWqmWxKG4xI/nOy0NKGVFQHyu7ecM7uR\n6BnQW0EMkHeG9LMTqBb8iOakXxdr3Mk/8pFuT1A2qJcuPBrPm43Cbh9iQaFP\njXKz\r\n=SFCV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4fe6311eb69a579e46e708aa04e726c78cb8f8e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.134","@balena/jellyfish-worker":"^5.0.9","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.49-renovate-internal-patch-4fe6311eb69a579e46e708aa04e726c78cb8f8e7_1622957502577_0.438915645558386","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.49":{"name":"@balena/jellyfish-test-harness","version":"3.0.49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.49","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"50ae7b00e496840b70e6ee0df46506da488ef612","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.49.tgz","fileCount":24,"integrity":"sha512-k/i2q/9EYfmT+OLhese3T4U84gyMZIynSUtIDJOx+2l/4H0QUur2a6KV8rAk4jXAhOzD4tt1vjUQ37/eM9CCIw==","signatures":[{"sig":"MEUCIQCv+wxuPbjikbs1E+vagl+1QTA2FTGGs36NsBqdWykQggIgBBK0JFDBdyUZgs6F2hA9a7kQ2jjhyj6lHcPWeV0Ew/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvF57CRA9TVsSAnZWagAAa1kP/i8aKeArMZgHVlfqScGy\nIHo4SZC44xr2g2Dj2iQ/wyhhOz7+c2RqumoyEyMiHg7T2A6m2bgJ2N1+BFeG\n0s+uzlCTqTM2xSHJH7w69/LtlYbNduPml7Xu+nEfTRf6Vvd0d1rZeGdQnO/B\nMQSGXL7OrwhkUdeSzPLpdcwhzFDBj5XMgLOE27FBjo+cNikMFhIMZ5umuv2D\nVO+DSOmPJ/iahiukppL4QTqpq+B42pIeSJqb+BH7vXDKq96K1ww8QjGLJh6O\n92XphOd8S7VXxZ9khuZLMFiqUBFTFh3eb2UqS1ALYIDqfgdifVokksCUf72q\n4i1caq2p9g9XNz6foJDFrMVCiG5HF8Cc/8M2HGv651EAmkb74fHwDFajl5cA\nXpjbgPOThAcdSEisMj9jXbz/nW8WosHt8btByBrlFWSSaxJb188JADCgAwVa\nn253HgwbZBRO8nZGsSdDljMY0YABUErPjBsSFLjgUpM7PF45XSConIbYmZek\nweq0C0Cs6yQdNEePzCEw1SI7wX0GLPxvijOZzEM9CoUhtJGkkQF2BjXz3jPK\ndE5t58zIEQ1DbU8yBccGdvV+HJUhFxOh7YOl8DR8yNrAZWJ+qTUCjlNQn7ml\neo8PiJgGjhvyzfWhkglh3LIb+YN0ELMgibeCKyu1p00CHrFn1le26iJD3RBZ\nWRd+\r\n=NlsA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d25e08b9108cc3b03b4a723fb700a915f013d21f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.134","@balena/jellyfish-worker":"^5.0.9","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.49_1622957691863_0.5945906637956879","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.50-renovate-internal-patch-c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48":{"name":"@balena/jellyfish-test-harness","version":"3.0.50-renovate-internal-patch-c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.50-renovate-internal-patch-c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5d3d6ff87395213aee8865a9ccc0e48c4d1df32","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.50-renovate-internal-patch-c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48.tgz","fileCount":24,"integrity":"sha512-Ua275jFWj4yJPi9QoTT+yHk042Rh/R0Ad2LK3Mqvx+OVTsMIh8OJeuC2PTMtF5xhqIx/mMOIwOBwYWOvqZET0g==","signatures":[{"sig":"MEUCICN1i1mP3DG0FUHFiv9vFuhETfeJ451vJih3GvfLS7MUAiEAt6xWNyvR4mrtJUCAXbjyNfsRlusqncfgFD7OwLuAOvo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvKctCRA9TVsSAnZWagAAdWcP/2NzHwWeZs+njbbwx9dl\n8/nPkkHLwQoyVYc79mYbQWH36Vo/o2qpjbTOfEDvxsFjQruiIYPIWsI8l/PA\nSCzMXTKWxj9u4/At7BeXb7OiVRTA8lVG7RelCRElw5hS4v3sCF0NnoHHWJJK\nFwwadxdNbbLRP/H0NKInXwz5LAVxxKMPYBWJ4Vegj3liBquICHyiGrETSdDu\neI7ugp69pRaZa8dFxw5aByN1JUBaxjRkhgiH8OPShRpsytcVGi+9e+BC0CxW\ndv8Jd3THnVPmIAn4QV5sg/RFYMuljssYH0a8sr2vDEY0lBGM7NV/KFf5kaSM\niXBLZtN+DjTtoIb680ouwv8k3z99/nhR1mXTKPfQafz0hlF2Tmb/4bzbbd3H\n08TAJe8I9CI9W6F4GPRygCQj1+g//NuqJ4pN4szYAq7G31wzJNCjRTopCuU7\nEa62czyvYgOtgozwL5CxSrDXRL171kVCVZbRUQnrr05cpu56sillzkcBBhUd\n/tDoQv8shEd1USxHgGlO383yJnbSulkgWBKWmJDswY5UepIbki4poT/gO8In\nBVMol2K9gzXIgmnme+bnQs0Jj6sWy7G0s6A8yiDbnnDzz9KC7n0nwggMKVRl\nzUseBm68+B0eNeQt60zitxPB1kDkRz63gKvFC1yFT+GzwyAFLc1OttGXxm0S\nPOrU\r\n=zRbz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.134","@balena/jellyfish-worker":"^5.0.10","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.50-renovate-internal-patch-c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48_1622976301246_0.6707396722538701","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.50":{"name":"@balena/jellyfish-test-harness","version":"3.0.50","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.50","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d0a59d71b6394ed08b20d2fbdef6990c8e34f2c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.50.tgz","fileCount":24,"integrity":"sha512-xu2kYFmfwDYGBrq/CfHBR3Aust1MC8M79f2b+1PPrqWoWI86DK4YVca7Sn8l+Uo9uAts4fMa1GkdqqzrU+qLlQ==","signatures":[{"sig":"MEUCIQCrdlAJKOjU6CmzZCYJIFcx6DmRT3FlTZ+SjAJq83t9vQIgIBf3Trz7Afsr7Vu4Yry2T3l0pc7c4t7kxkD0gs1viXg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111902,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvKfjCRA9TVsSAnZWagAAQz4QAItGsemwMkYbxWSXwtQt\nLMYxYmkk2IPTVO/dF6+j22DhHEXhSQk3S9UVWnbtFDKV4a/5jgI7AxVBtwJk\nP6+zaDxsj9XNDysO0LzefBUt+mPiF4vO/Je4P/U9fw0t9YGTBLckWakhQt20\nXl2Tolvm5AnyyxGMLWQoiRDmAFnLdeJ/9CSdBEjrKdHgHx5yvftupKHhOnSN\nCRfQfCdkkTZ0TpapdtPC+hBzyML0DMqLg8njSpf1FuO9W0QtDuPF61F/ftwk\n1s9MvkZ29iySxkPsR+VCbYrPr7/XDjKL/Ugca776sLzZks/fRHBWD0KpnXXL\njGghvaqlF/eiRDw6mjhT8sBvUYxwNjvg9F1yYhrGd4WxfL2l/qQ/4RnzvZ2t\nOR1b+CWetLK4Jc28iiZ7d62bEKarLuJwRB8Voj3m4/WgKpyhkOOVKCCVmRja\n9sMLze55keMTmCMmcLnOD8oivgtAhs46JzhEZCygXodqonaXXJcvBzcJIyQ2\nJDVeZ7/ZFtPUCaxuooElnzoKkBYcoL03HL1rfki4narYN7qm/VguPfLpqPTg\nMP0rYvCp/uuiZEeqU/j1cIAhYSXbRckdiwTS8JuW07H/WSmbaCI4UfyTjgUm\nPqGV/V/7MBb0KPB84f2n6/oxJapG+1XsRDNvs5gLJ+UUGrxchfi4qjIR6sOh\nyuB4\r\n=B+F6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"442ba7f5ea0da902c857e49ab08b5c93cad16ad2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.27","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.134","@balena/jellyfish-worker":"^5.0.10","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.50_1622976483731_0.010168266332452047","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.51-renovate-internal-patch-23603ba29c95b1a5c7cc5ebdc9963554c0381cb5":{"name":"@balena/jellyfish-test-harness","version":"3.0.51-renovate-internal-patch-23603ba29c95b1a5c7cc5ebdc9963554c0381cb5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.51-renovate-internal-patch-23603ba29c95b1a5c7cc5ebdc9963554c0381cb5","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d4ff8fe4e70482cbe610aa7c7d35ec8773dcbcc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.51-renovate-internal-patch-23603ba29c95b1a5c7cc5ebdc9963554c0381cb5.tgz","fileCount":24,"integrity":"sha512-x9RZ/Rt9D/lJLt8rCYpfAUPv000aXmENj5NWkczeIZ8+YjBWNipkIdwTQdWVQ/5cTCCe3huVREWBmddnl7ZVwA==","signatures":[{"sig":"MEUCIAERKkJKCqsTKSts2ftN4IUTPup5J03/AyDzJDqPaTWqAiEA4yHdG7pQXRv7poGx895bC5DFUONHjkMGBMEpmATOciU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112041,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvMAWCRA9TVsSAnZWagAAztMP/iH2py8XEirNakZ3EhAU\nTfdmvfEbcRpTJK9sSIxVehPOzH9GegRuOnD0R8bfthgniRN1W6jAoC+QptOh\nempNdxVVctWsLsqhn0vMQMIugKvd4yOqkS0Ci6x3o9UG/343MmtiziGgJZHa\nB9c0eOIF9T9jTMx5CtI9riA9LyWi/AGNb+TKygs9b374fkBBcxF7Ve32lGMq\nbnUmxTfyaDDapL5SWcVVn3U5nyzTnp9Bia9ovrf3TyrNaCN1QTK5ygXcNto6\nR+BnE8CuHXilyFLG5NnU0HvgPdihbgjInNsgg8PzC6SlkJAcFXoo7BL6Npt1\nlLO0E693Osqj8/ucWmlh3i8f+xXvhAaEEVKgVcWwO6mahZq+uD6bYy/YE4Mt\noHLkUDraDDMhSR9klJ2vYBUz4eEaXvkIiFyE/AnLMHkWt2FrBWf64qBpbfUF\nhfRIcDYuD5DhH5ycZbna7o/pVhUoRcGeb1SpmloSgXf1U5EnZvnlhl4SG8pc\nlW8llU9gjppd9qPqUC94/rBSRTYxjEggnygjR+s0uxQrAOsZGsubUyTaFYII\naTp19eEZeceWkYFvjLn6Dm33o9JGUATac/WmvEcYRuzfuBZKs8dDnCi/LZ0R\ntj28WdsjwV7ArIJeHr0Pn6mtXYh9G7Csr21QoZaK9qBxWAAnuEOpwg1ShW2L\nFUrZ\r\n=rjl2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"23603ba29c95b1a5c7cc5ebdc9963554c0381cb5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.28","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.135","@balena/jellyfish-worker":"^5.0.10","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.51-renovate-internal-patch-23603ba29c95b1a5c7cc5ebdc9963554c0381cb5_1622982678485_0.9317970507919648","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.51":{"name":"@balena/jellyfish-test-harness","version":"3.0.51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.51","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"67c15453cdb928db92b04084cca774bdcc44e751","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.51.tgz","fileCount":24,"integrity":"sha512-ARnUG1tTJvOem+YaHi1l6q7sLtuOM4jnS1bVqbQt4nvQ2UGc9TALPoDsdx2RELoY2cItSUPmf7ArQ30A2+4+Pg==","signatures":[{"sig":"MEQCIBbpQ7VOBdQeUfo365syDFmhUwVJN3gTLDoN0Yv2X4LuAiBqBZl94iHYM9L+h+JXS9MDJD7hX8szltxwiFv/JyN3oA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":111976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvMC8CRA9TVsSAnZWagAAZ3QP/2aJVlN2z2rtyHqM4536\nKVk71KpxF5dY5RdyI7MHjgcBXhKBiGIhA1jfjaEZDvirrcAbadUYG/XlPEsn\noRRFYvuvblKnBrPSwVVDJ3vuIlwLCJfOLxj+42Jx82DY+qTfCPFTkAwI8pNJ\npLQyh2QWbDZcC5ZXuP+BXaAKKMlfO941fpV5mjG7RyXb5F0eL9YOvlnojk9X\n4KD3AhuoGoWZjATqEzMBNbTVuJ3wcXpIl+lPZRCGsmWrvdmbU1d6+YN+DyNR\nAL8so5pFiiguxvefMif/uPZLGY6MV+71IebXRBKs35jiqfn+0jyTpLtPu533\nXMr5pJu/EudxRiRCVnez8YoOC3tYTvI83HUZpuBmIneftrRG2oNv7YFN7o8g\nHTJjC1jml4DbFaHHVbWIzz3+lsx6ocBf7myvDIwFCQvXeVe8xJoxsjvilVXy\nJcSUrdOSWSwniLnwiRyZFoMRy0M7RMJv/BbOqbZyzceVwXlRF1Wcc1RCSEQe\nl1L5ub9qxt0XTY+RX1n4bjiFCewidMPyKmuIQLGIRKI+rkFbQk0HYl7A73QB\niC7caMACtw0PFhbzej5uPHRsGmNcqGTkFY6WgfDElma4yaogSneZL2DWSszQ\nyu9OFolZFKMGH97qr33dAIkba4eEML1kEwsTtpRU8WbvZOZRqRgVaMhgaCzP\nZPg+\r\n=xrnq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"616a2347d63b5caf7a821570847eb7f25211226e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.28","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.135","@balena/jellyfish-worker":"^5.0.10","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.51_1622982844001_0.9694497395953057","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.52-renovate-internal-patch-a4e7d1c6579663fb480c4e46a5fdad38722868e7":{"name":"@balena/jellyfish-test-harness","version":"3.0.52-renovate-internal-patch-a4e7d1c6579663fb480c4e46a5fdad38722868e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.52-renovate-internal-patch-a4e7d1c6579663fb480c4e46a5fdad38722868e7","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d8eaa20bd096b146872f9af88499c639385b3b98","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.52-renovate-internal-patch-a4e7d1c6579663fb480c4e46a5fdad38722868e7.tgz","fileCount":24,"integrity":"sha512-RJT+v8QIbMK/jaiJ49NemY+vnCjVy4Ks2n3bxLNm/5ozqV5hpwGPRVEmltPOBkXSPcb9X8zIAQoQc0zQBrPqKA==","signatures":[{"sig":"MEUCIHY7gprBHdX+FGI9a0vd2/FA0f9l8d2dwXKYtwxQXMR6AiEApP7cHBIqrAieCTMa/eGA4xy5DeX5b+64MuKLlAZ4720=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112147,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvN9LCRA9TVsSAnZWagAA5esP/Rfk9K7dRh7MHpLZBoCe\nYvW1wGVvcIbxsu49NTVA+u7MYMl8zVWhyV1dNB5kr5se6S9SFAIWVOyRY3Vv\nt9m6alunpIQxmqk2fRM0EnCj3CwHuY2izkNIv8B54SiXST4WFE7/OzAWJ9AV\nP2V+YcfU+cfYbICzjrB84ycw+mHvZQHeRY5aTLk4cw1byzXT3vrgtaVZOWPf\nnVWo3qsE1+zdiALvK8ZOCwWyBSMVNMJE+9PJeGhSJ3AyeOOSIjfFOAfcNyur\njR7k4k86Ez8MNE6QwmMWffkKcTxodbQlyi+5DN+MvhkMa9u5illxq8g0vrUC\nqSxT8Kxv+9A5eq/+dmwlcp2vuKPYwXnovDNqNavn9BvRY5JBUxiT4uswKBd2\n3cOq4oye5gHihGM/NX/QB1E586U6Zhtv8zaBcKuGFqxqEKqbdEKViuAdWUOe\nkJtTeaX3SH64nY0VV6s5GE5t7wUKuS+IC5cuT02NAkC96/RH9wWFUYYmZ1dq\nQCzGondwQCZAmaGsLmPqhgmyZq+YSGZ1ws9bRBqaoqniM1Jpu9o6eUPSf9DX\n3mUYSMOCPD0ZdDQyq4DnJBunMJyblP7TkEZeqN1+Pf1394zvpeAbKNaIbTds\niTSWXk4fvdJPT69oHZTyLA2PRB6HuCGznFeVeycQ08IRrusY5aExXVmNSRLm\nyXNE\r\n=a7mY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a4e7d1c6579663fb480c4e46a5fdad38722868e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.28","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.135","@balena/jellyfish-worker":"^5.0.11","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.52-renovate-internal-patch-a4e7d1c6579663fb480c4e46a5fdad38722868e7_1622990666934_0.69811129422653","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.52":{"name":"@balena/jellyfish-test-harness","version":"3.0.52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.52","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"900431495607db8d73fcafbed49af06dd9d04148","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.52.tgz","fileCount":24,"integrity":"sha512-57+LWx3595KvXGR3gnXdPVvDRNwZS1SgA9jLEYRjQVVM8HlRu+gsk2rY5IdAOCYraO16Yn4aEO0m7x7HXxP6+g==","signatures":[{"sig":"MEUCIQDRiQoaD5FTUTQjOzF7HK0G1eIyJ9mR08BtabxXi1qpQAIgcOrrYB9qk1gTARAsRBGB/HOvjVzVgQM9LOke9XIJmhs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112082,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvOA5CRA9TVsSAnZWagAAhTYQAIyLWfBdcOnZxEErtK6B\n4zD8Q3qZS/LU2xjUMHed+vxo7qH4E3ri7CkBj1T+p5+YG6eD6zIJE0yK0iCK\ndlrm2cEhtlWVQMvz82e64BzCX8LYj/ZO7rmRxDv6PvC3qFHt70vM2P8mCxHA\nkBLet/T46QQ9x8UcPZDtdQMsGeKqkRhpPiBQuUsMX/mP8XdT+e1KoD/j45F9\nGWw7P8B+izgCvNZ7/O1teOPcMKvcZfT3HrYjeKlSeyGXG+vtIQlLS+aB6nHY\n25bjV5KrDRByl8rDT7VTFy96uDkSssU7OWPswLM+NShvjRw6Q/C7B/FatCNb\npZDEMz5EiAqO2l9GAbbjVGWLQJgabuj5i0bz3m/AzgqEZbcYHMvsh6kBJqzi\n4RiR3NsMiAPENF9Pkl8ufo4oIi3+VlKB3j3B+swS+98Fuyis+i+aqobsIQxP\nBN++vewn9xZwKKYw10XEvS6bxGeKY7L3Rca+wdTmkrG1dhDeIX0jkCPFfhD2\nqUs7lOg/EzEkPHOK5ZyDZWhQKOwZSQGpKxPyKQiY+kBEH+ecAPALcxh31+/O\nMPcQ2GQLm2axYJR8JEwhdC1KZVex8jSILVA0IVESpr7Odr3MDLvBN7YFWnzY\nooE6JJQJcnUBNcgvPPl3xcQ2YkNCBMc5r/kIoGrQU0EEfrUPqkmyZncvmly1\n23hd\r\n=5xYW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"400287b66880b9c952b8d96a852a5d9018e3cd67","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.28","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.135","@balena/jellyfish-worker":"^5.0.11","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.52_1622990905538_0.3909539535539479","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.53-renovate-external-non-major-2e1faa7edc547b008a09f44d66b240b5c6e46186":{"name":"@balena/jellyfish-test-harness","version":"3.0.53-renovate-external-non-major-2e1faa7edc547b008a09f44d66b240b5c6e46186","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.53-renovate-external-non-major-2e1faa7edc547b008a09f44d66b240b5c6e46186","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c503be3ef51f34d24c6e5a4386322951a34895d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.53-renovate-external-non-major-2e1faa7edc547b008a09f44d66b240b5c6e46186.tgz","fileCount":24,"integrity":"sha512-CZM93W4hD6TCWvr1jBowSwHp3NQ8b7N2TFNkcDXCgylsKqVPhf7JLQh31emxDi01t4uS6Duu4eZ9qCo0bBbjWg==","signatures":[{"sig":"MEUCIQD+tMWyI5XFxez4xJZb4I3jrVOT8OI2T5WATJTmRfrsawIgILa5PFOD3/FaHjkKr3Zr4/Ir/MLthCVKIHvh2g0/98w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112240,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRHHCRA9TVsSAnZWagAA3OAP/j8oJ9Cz/COhm2KMjNqA\nTe60qrcfeBA+j1uMmIeRNv1N9KKdcGzVGVog9KiGAvpRDD/pK8QbD247iwOU\nv1yTIXYrFXnXTKVxH8yPsrdJwtYwMpEShkm4O9iV0EefM+lstnZZeLeobi96\nJiHPJ/Z+XuXOdlk/jNRCWKv+1DFrcdCR/Je8zg+Wm9NbK3rCK10vU6VstDnX\nWdnr5zpc7UNz/2Ef+fk6rjFsTfWAKjxUJzujK65Ioj1l0Chd24f+9MOY2PFh\npNndVN9E9Mho4ZY22r5tMvJTNa9gpYQ/1pknDSbjMVOVo30ezAnshUrYdupj\nZIobT+OyZKRTGvGaAhnP2w7wtxSlVQG0Ccgl6eZ3sG/yjJtbirFRoKptJWi3\nFWNLC7Y3Q7ccJdRaAGSKVXPruTi01tRCfSraXJKJ7lxlodNGhWtNxx/EsOeL\nIj8Gq+7iCjyH6G9TU695UR1aFHGfTiDw+QSIJcrj6bCxzr2GdOp0yjUpMz1x\n42q3hhkJTjHWefEl/L2poO2nWGNGOS0MsOez+V0w44S24FbPfCVyMpERcm3t\neh00y6YTwJOpKWd3mFg6Hxew0VUZstmpNuueAaows1dXdYggM8OdRS36+yXZ\nMsoVGgMbyvm0cVAULqGUUBPiTckeHLnWO9O8bVX1C+f9fu1/i6EogY2EmteZ\nVNRQ\r\n=9LJZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2e1faa7edc547b008a09f44d66b240b5c6e46186","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.28","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.135","@balena/jellyfish-worker":"^5.0.11","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.53-renovate-external-non-major-2e1faa7edc547b008a09f44d66b240b5c6e46186_1623003591655_0.30203658771777153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.53-renovate-internal-patch-f5233acf209fd76be2e2c709c2d3b0f6e9490b41":{"name":"@balena/jellyfish-test-harness","version":"3.0.53-renovate-internal-patch-f5233acf209fd76be2e2c709c2d3b0f6e9490b41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.53-renovate-internal-patch-f5233acf209fd76be2e2c709c2d3b0f6e9490b41","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59f0bd83b3de19c026bc8ef3cd9f4d6ca7dc8d98","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.53-renovate-internal-patch-f5233acf209fd76be2e2c709c2d3b0f6e9490b41.tgz","fileCount":24,"integrity":"sha512-iC4NZJpvnh6ySCBC9NO77TH2cpCKYdn8olRO1EyRRG7VJgAOMSE8PVpG2DQKHTB+irX9Hfl5PDAH5b4wZzcSvA==","signatures":[{"sig":"MEUCIHJxaZV/wfkSBBRUWsGMwoJ2ZeVsIKPGYc/aKgSEIJbKAiEAwIMN/WFRI2zUeIiZpH05x5KFd6bQt0kTrnxBICLSasg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRH+CRA9TVsSAnZWagAAmF4P/AqoIxjY7XqZtSMBhpK6\nOUyDlet6WUatdJlvZS/crrWq835hSWbR+MNedlNDyaW+7Bx1CTYWPNs9bIjn\nCwhhdul3nRCoarGeDp+uJ1nKhAFdj1kQnhbvqDPowmCfneo/g7XH0XTQ4+pA\nMALBkyC4v0gAaL15OuJAwYb5C17cT+4KyBDQLJKc75N+3fHrNp1gSHuXqTuJ\n/nKik7k+oUv6KIjd9YlWbdrQvoEBPyAh4X0QtbSwsD1puAvjb20ar3OC9/kA\nZgglHqCfs6ngIepU8tSz0PAUiEp7jjRAYIJlMSP1zpcFWYb/YfrFLxtoUZHc\nQ9Tq/09iBxtpfYFnWW8OYVqLickNrBrmquuU9m0SL+SJuE5i+EUsUWdRL4Vl\ngGEBPTAue5NXX2D1kZmuFumoDVzicVJ1NY/4SQAabBNXEBzqE6X49ruLkXZv\nWUZHYStJABgDYNqNnNEN8sf++HuTUeIozHtm8hPbsE6xWJZvijzuYcCE0cjD\ncQzWt13PMhqT3bVQm+ktvDSFcwxUSGNJdcZ0jZBrfK6gJCIxkFJmBXMAcEIv\nUgQHoLVFcEafzeSSzSJhymzSMCIW1eLa8sWHnDvTdrk4D2gdPbSjFjprOglM\nKo3ptrGGAk0EVny4O/ScJ+tdWsnsaBdU0AEdBIHVsNLRrK/eWjGW+h1meOqS\neo4g\r\n=R0oJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f5233acf209fd76be2e2c709c2d3b0f6e9490b41","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.30","@balena/jellyfish-sync":"^6.0.221","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.11","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.2","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.53-renovate-internal-patch-f5233acf209fd76be2e2c709c2d3b0f6e9490b41_1623003646320_0.855506021727904","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.53":{"name":"@balena/jellyfish-test-harness","version":"3.0.53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.53","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e2be18bf03dd58c98e6d2b7097e6fcdc8a2d5017","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.53.tgz","fileCount":24,"integrity":"sha512-HLCJswuGtdA2lJEItIBPQ9Jt8DSKFZkql5yduo4cI3ENAHbonV8fnAfBoc65kvsV03wCCrS/Fa5tadhAER726w==","signatures":[{"sig":"MEQCIGcd9I2OxHqcBs5q5Uy+mjVHmD1B6y5ycaVKUkDbXG1MAiBVSjzFYACrP9UDjULNf7Z2OKS3X/lv7YvabTTovlAeeA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112171,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRKuCRA9TVsSAnZWagAA6fsP/0NeeXpDqcoYkme+T+Es\nPGV95wNJWi9XvqyVtOQcpB5HypVLTDOhwfCJxsCWafE1anZsVA7WEoB3xwNU\nO2Mhei/PueCeHg/LcqhuvaEaInpxq4/HxtNX7bFvB91qMAHXmlQ6+RoLHCIx\nOnV8stiFNuXfUFSWd9VJ7DGyWWFREswRae+o/guXBjcd8NJOAWNqNmLeKGHi\nTtm/6+JlWui0roafYuuHFPioxeaIK3RrhATIH7/DEjxwplAHfyGjYvkxqzQw\nQfqTbKvTKzr1aIb5EF+Y5p0nNTzo2vmt/zqW6LNP5eE5A2GAZ2lUPW6iJdhu\n8YUtcCfVowRGXVPezsN5l7cjIhiXQamD4tABQ7N/EoO1vr5ozJAzf12e1Laa\nkoHnkcPcX2wtCAIzh8bCF7f7Hmwl1SVjY8heBAAsQAqJef7Ak/b4z3cW9v4c\nbpmjl/Hz5wME/gLan6oeZxdOKdAYMDEsfgdIGzRmtVJr1Km+yqsoL0OWPUcK\ngzAe3NQpNAS9505hPch+BqERF59y6oCv9JbWA66gxBu4ZqxK+yCpw1F6dfxS\nfsFib73y3y6aR87JaQVdrHGR+V81yna2TwF12RUMKD8XuolNo7FikZgAyhnA\nzmQjbkC7/FjxuzO8gCa6eoAE+wRAkS1HtdD4oJ/8ls3DAVy0vMgaWffGrd1D\nPHWQ\r\n=gUIp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5bdf5e599decfac2362d3d8f1289606beef83a28","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.28","@balena/jellyfish-sync":"^6.0.219","@balena/jellyfish-queue":"^1.0.135","@balena/jellyfish-worker":"^5.0.11","@balena/jellyfish-environment":"^4.1.34","@balena/jellyfish-plugin-base":"^2.1.138"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.53_1623003822104_0.7879399388219299","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.54-renovate-internal-patch-fc1327dba7cb776a223ed8ca81fb015bab025b65":{"name":"@balena/jellyfish-test-harness","version":"3.0.54-renovate-internal-patch-fc1327dba7cb776a223ed8ca81fb015bab025b65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.54-renovate-internal-patch-fc1327dba7cb776a223ed8ca81fb015bab025b65","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ebeb235d321387b53fd590943308fb95372181cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.54-renovate-internal-patch-fc1327dba7cb776a223ed8ca81fb015bab025b65.tgz","fileCount":24,"integrity":"sha512-VKjjmHMLAbDHGWVZTjeVsshh7vQ28O5CIUqqflyJ42HEv5xLmb04SxY2PCtJzl+ymg4Wn5iEJbX6CAjir5Nn/A==","signatures":[{"sig":"MEYCIQDbG83Qg+jsrvADjgYy33oc0iqXk2OBKWPC/4x/SQyRvQIhAPUPKmYfaqyVcOWctaPnKlfl4mW4rPpD2WaL/jdda/tg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRPsCRA9TVsSAnZWagAAOrIQAIdj4U6H82vriui2Hwt6\nVgtvqvB1ce2DSTe/rMW8HhYDC7IGnT21vEVfuvGc21udyt7VrYwyWpC87Lp3\n54krzZIosy0Wjqw19hWO0uc8j/92BN6Tt1ERTqcZOaHe5i4IaQdPckBtgxbp\ng+tM72imWwwaNQrMU9Jra22wnbcruJY6bk/iWieXxV/p5+x47UqehGHHNAm9\nsUIU6mbstqagL1Y4R6W9a+0uqSIupoO8Gxk7TtzXIzxEhDnqtjcc6O6X93vR\nXs9Ru1ReTjCFDo7NPxluaJaEW19yPzRW22T4IWX5ig5iIGN4rceAICqgRkuh\n+7GlHGExj4RayORAx9wOiPXedlIalywRTNamA3ACV/gXfRGEIF6R/hqm4AYW\nx30Z2YZqZmfG5ZjqLxJGGK44G4teT20rputhYFDHXMXzF2eFSe0lIuD3SW8r\n4KS2wVxAF4hFjHxeZDurvPoWLt4iXU4leWBr5Nk3p/l1MCD4nEOT131K1wBT\nbG47KFAGz8r2KjGpexVT+Ti358izXthA4AflOOnzj10noCF4ZJW4jNt3ekhd\n/vB7trWbnJ7PBpp/IS7wQw8/49VP/JgGn0wRAHiRBTN/r5IHebUqjlQwORUx\nrFB+/4uVPNjONzXvzoWlZNCD74XezFioPixRa5QfiXf5I56RaiCMfuesXR4M\n/jSi\r\n=dnlp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fc1327dba7cb776a223ed8ca81fb015bab025b65","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.30","@balena/jellyfish-sync":"^6.0.221","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.11","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.54-renovate-internal-patch-fc1327dba7cb776a223ed8ca81fb015bab025b65_1623004140308_0.9197767741306686","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.54-renovate-internal-patch-8b853123c7591ca60c2f3bcfb440b174208bfd3e":{"name":"@balena/jellyfish-test-harness","version":"3.0.54-renovate-internal-patch-8b853123c7591ca60c2f3bcfb440b174208bfd3e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.54-renovate-internal-patch-8b853123c7591ca60c2f3bcfb440b174208bfd3e","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d97dba441edd5a6a2e3b1569a8df36e2e46bd85","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.54-renovate-internal-patch-8b853123c7591ca60c2f3bcfb440b174208bfd3e.tgz","fileCount":24,"integrity":"sha512-Kk6ODnPVa4HcqQ2YyJVnYEokXIVQh819K1lOyYT2nFECXIb3BVaNWo5TI7oOtcZDhkyG3fSlwqe9Au/pCqoALQ==","signatures":[{"sig":"MEYCIQCx9icPX0yggVkUcT1ln4eCDjma0oeUA2xishr/+8qY2AIhAL1ysXjQv166QQnSBA6m2pn1SB4b9vt7Nd88DGxja7sF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRRaCRA9TVsSAnZWagAA+PMP/RIonUl3htmJC1iojnBR\nEFIiC29dRZxZvaUccvQ5rWqhnMEJAmpBtCAZS+Z7m/DORNBFMP3CN9RjnDFp\nkk+kgIL0TSuXiIYybx93aGr+H8jhJIpMjC5bdjUtpd7/9WOyM8D95B4WnHqJ\n//KiqKm0CPnQ+19RyShitqrpXdBUhzf2vu25nAuxHOiys+ANMew0yaBV3Eoa\n3koUGg+yjMMAAJ0BcUeaqrtkWxU4GKe0G0PW0Lzxrt97JpKKzCdo7shCverb\nQ+gFDIIDTELGBslCeSREGfrLKXDFLDTKGwjlwMxS4wgGkH/kkW92pjiCm+Zp\nyhvngkaIVppm5jgqXgFIn/MmTpg+c4DMIQX5S1Ws3N1IuhSAYC2U93M7BYwi\nKKkOwSZf+AzGTHuFAjZDeTqJNYhVCRONOw4MstfpnUb8dpM6CpzPFT597zlQ\nsf2ifA69lS9D6qtfsqFpkIhYgiQHGVfUgFpT0y9+BN1WOddI4o/r2r4RldjN\nvF8BkM3r4YRVSz9AMiaRAlPWoqEGAd5Oh9vcvSOJMMVu+mJ5nyaSC9Vw+P85\nNAQwdIPkJgsUZxyfKC5vvTk33K3yV9RhTYOSI5V+z8tsF2DdO90OLn4zHqK8\njjy1LSYAJty6RboSIw3kBP/Km6LyClkRl1Ulybv0Mqa0abDGcgzPww3bizEd\nFemt\r\n=thlJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8b853123c7591ca60c2f3bcfb440b174208bfd3e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.30","@balena/jellyfish-sync":"^6.0.221","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.54-renovate-internal-patch-8b853123c7591ca60c2f3bcfb440b174208bfd3e_1623004250412_0.279328256593955","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.54-renovate-internal-patch-a89b7b5d53af0db345d0733602c1cd6ea8f4fed1":{"name":"@balena/jellyfish-test-harness","version":"3.0.54-renovate-internal-patch-a89b7b5d53af0db345d0733602c1cd6ea8f4fed1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.54-renovate-internal-patch-a89b7b5d53af0db345d0733602c1cd6ea8f4fed1","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"63f56bb63be5df59b9c8572dcee7c210bf637788","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.54-renovate-internal-patch-a89b7b5d53af0db345d0733602c1cd6ea8f4fed1.tgz","fileCount":24,"integrity":"sha512-/t07PefUJfiIgwn9Cav7+8Zd7riX3gr/PUizr20/se4ZAEX6I2KkZZTPL+XKkXtSNKw5I0WJ5RuTpYQ3NUQsMw==","signatures":[{"sig":"MEYCIQCdcNl5TBVGOP2MMjrd3kzecOS6oWfLPxfR5hzgmUD5RgIhAOj6G+/C/etGYGzuP+PC1ud8Txg3dBpWqQZ11FNHWUkO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112310,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRZyCRA9TVsSAnZWagAAZFIQAJbciixlcEtasLmCCg7s\ngZuFUxDDjZ8FRNw1UZdnni1PXeBqpQXIcF5sY/8T7FFdlOwYNUOOOHkv1aLu\nby1/I12rE4y3Y4HiESwJq9wy2iV3MphdugiHjQqVHAfNBhID07qfQ3PqTkPV\ncpOTbTjGdzMn9Qz+8QeCuM/7emDuGslmJENGSG7sKH5yIZjjtvNY8ikq7sP7\ngGVjU3XFjcpd/xVSay1EC3EG+ysI7v0s/aA7PgM69c9BXtUZ18idmrypVClm\nix4Z3Ps3HilW2earExya59wlxW1wnjuFioyjGImBPVZE91P+q0gQWTbbxoxV\nEF1+wSgYBm6BZfQjbbrlg7oXqMDLx1RSNV2XkcupT14smE/wknLcl7UiNYRx\nuW2BSWBENhbA5tRD39pQqpY9CD0/Op1M9LOPhfeU1ejC/dhWaezSZy1V0NnB\njYukmDRUqpLyWurnkR2OqnorAunOPHM+cHF0zL5+TImVdIdniHUrbe6I5G8C\nDoIe/51eeuaXgjTuouPwjAIe0bNvqriNfN9W1Z8oz/PJ44QCBX48XzB2iA/b\nN/AqAu3oC6t8tpfosQaG/ynA5wYilXwP5ifpHy5lgi8BrhwIlYr0ad0Kqjza\nd+D2Chv90YPUdmtJA/r+0uWe3xwW9HPTHI9WvAYQm9A0CVNugFhTiP3XJQ27\nGGqG\r\n=BlUA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a89b7b5d53af0db345d0733602c1cd6ea8f4fed1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.30","@balena/jellyfish-sync":"^6.0.222","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.54-renovate-internal-patch-a89b7b5d53af0db345d0733602c1cd6ea8f4fed1_1623004786348_0.1894587795106204","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.54":{"name":"@balena/jellyfish-test-harness","version":"3.0.54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.54","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d2c03109abf95c4fce084b46c65dbe2b260fd8b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.54.tgz","fileCount":24,"integrity":"sha512-bcM+5VHGVsWUlMratGBYk0Okc4l/nU6zGycdGpC/L4LxbSHzJbSvm/GBLbEWglBLQkIeMng2oIidc8kuGGvCJQ==","signatures":[{"sig":"MEYCIQCsXTRKnraLA9YWsai60Qv9L5c0+Xf0WegvKd2Qtzo07QIhAJOnvbEWty4HowzWTZj0SNJqRNh7J5SW5HRzB0/biNuX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112245,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRczCRA9TVsSAnZWagAA5IUP/iy9jm16PYfGJF+/Iisl\nKsIfmkQK6LwOKPOfrDRN350fF30dXgMAmgFfQjqh1NLlSsfsWlwQV6W8VrxI\nqtCozsSi7h0FYYBCs2kkfHfnTwF39cFJTPm+A/byqrEdC2/F42J4O0w5eUrM\nKTSMZGq1+xlwaiKNcJ6amkXl4nx+Sc2lRrdUKh5yNScTf/mEO040l5uBycsw\nyeeJCBhhfppdHJIv2OoiwdRUXTuKLQUExnAtOr2zxHsLtAT4l20wsJtX0OX9\nHDVzJ7S5xx/Y13JKF+pVOz7f3otmbSEW6ymSbVZKptEYT41u3/4JEoIDgrtg\nJFMeCrWryX4E80NAdsbhy/StKJ5GWpLGFco4QfbxeRKAA+xOO9t4S8JE02R3\nKSZjqe32btJPu/Ui7ONcHX41BV4lVVd2n+tzd7qA1ncb7ezwgu2fGSQ0xNjP\n1kaY0qRv9+7xV9H3gr3pCAXyUa1AK66ZLbDhqgyuE/cBgL70BcOAS5tHdljD\nwGJQQVdPZkMcJr+Fod8YG/Wy5CtwVV2svxV60pOKL5USPAq2fjDvIkpwkx3v\naKTPp8ggu9PSeKh9f9tjgsk7luZFoRy1/eD7GjWU07+C0qEL0zyy2Sivr7Gs\nOggHacj8T47iSJKfZpMy3gI49tp2Se5OFKX1UGbTL0jC/wsuLDTkvgTUzpfZ\n01/a\r\n=eDtX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f82a267ea79575b83ecdb56bb9de29041fce5994","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.30","@balena/jellyfish-sync":"^6.0.222","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.54_1623004979629_0.020178726260552837","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.55-renovate-internal-patch-452de6793ee3ed73311ad2f6b0a8bc74b737f6ba":{"name":"@balena/jellyfish-test-harness","version":"3.0.55-renovate-internal-patch-452de6793ee3ed73311ad2f6b0a8bc74b737f6ba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.55-renovate-internal-patch-452de6793ee3ed73311ad2f6b0a8bc74b737f6ba","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ecb9880891f3e82a7063af691eb3eb95768e6d75","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.55-renovate-internal-patch-452de6793ee3ed73311ad2f6b0a8bc74b737f6ba.tgz","fileCount":24,"integrity":"sha512-yzV6d3etuG76d3gBzZqIdVxGsNu5S0qwr6V65MZBg4kEb6ya7WAlaREt7ZXncwIhDk1Efb/BRLrJTC2CXga28Q==","signatures":[{"sig":"MEYCIQDlsmv+C1adfeUjclsb1LqPcA4Bb0R30OofxmtjygVjpgIhALIM3pJcFvL5f2jW6RyECvn+M7Rp2cXOD9KgSilTEqf3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112384,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRg1CRA9TVsSAnZWagAA91cQAIgFbLeG+hefOo8uQLRR\n1mCDnvyublrODhKlSr31R+x6vmf/3xRHNjzNyMrZaN8isNIdgDwQ49eghRwN\nKgDuP2bwbKJdUdPuUxgYTnZpancBW2LhX/XlO82WNzp7YdjwBl+WFBP5cNNB\nRYsRA6jYfUSfGhJMVY/A/kl4wwBsM8SHAMxOidu/9lX/Ga8v63XUEuyj5lGH\ntUV7FGUUHWdvN3s02XOVxZFSqJU2Pihdiy9QIlPXRtI6JFZHotiYDzB7sFQX\n5fCoM2SLMJZKFDgIZ9XmqqFw3H2jLE62UV6eZdkJowFXI7OOuxo7XkTucyxt\na2jLfOrGswRxJyGsGlV/tgQyoUMyl6L8lw9jE+X+n3p5wL0EIVSegq43gZ54\nBMf7esLDiumXlPpZEIxNaRuOat5/NTTpgm1LREekxPs9dKQ0sd09/SnNTjr8\nSGqx3KogIBvpTaBqnQuptQk7fjeMqVxoYXbSOpdxk7zUGW1HfP65rihHE6+f\nqRblRfGqLvjuZvaHL+yF9vibeq+6nvo+5rBRNUu/XXI+KdeZFdYbroo0GdC/\nyQ+jbou+cybvDGbo4DfIh/TtMJrwnD+cQLGBQDlgpN+NFZQnjK37ndzTqP5U\nTyQlBX8ybUf4Yd/3vp+EOJODgEg9E3QtH94HiLLH+dKSjPj1i5FaQrXJtDEi\nuLnc\r\n=HY3J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"452de6793ee3ed73311ad2f6b0a8bc74b737f6ba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.223","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.55-renovate-internal-patch-452de6793ee3ed73311ad2f6b0a8bc74b737f6ba_1623005237154_0.39324795368444576","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.55":{"name":"@balena/jellyfish-test-harness","version":"3.0.55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.55","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"267225b695c420373a7199742416dc7fadf191b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.55.tgz","fileCount":24,"integrity":"sha512-bvKuj5HErdOfd5yT3l8+uJnPpJjWi703GxZ06HkEek3pkNHJ3sp5cGguAFzWrJxoz/hMQaq1vv9J3EVwxvFB3A==","signatures":[{"sig":"MEYCIQCqnWd9hNOlNS71K7rq/X1L4QBfqmEM3cQY8Xo6pkQIJQIhAP0/jtBsfqe+g4gpwyzjRbmXd43zVMd3qV/2cXOMt21e","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112319,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvRlYCRA9TVsSAnZWagAAoD4P/RsWmB+DFj2fcJh1lQS/\naV21p0kpkI+f5uIIm/5C9OBzq3iTasKKDbsh5QZBG1pdfRmaTIv0/8xYBjoL\neKiMOPnQGXOUosX4x6mOzVvcamIQbgo30N3NwcEr8pwo71YQsMErJpcnoYnY\nWQHnmCoK9X1eHzy4ZtxXN1MZcibFh/S8sghQkcRksQRCCRg0GCz0rloOwDuA\nSwb1Xg33QRPE7B/wfCUICTXnmF7lJiiwEoGwgLjZG8WdkLpmrUO3avp6DuGX\nCNEhHyWDugXqEp6ZJnDRyKwh7ql7R91kD7cgO/r6rxmzuu0uW9z+GslCxa6Y\nLx2hVUa8lQgaNBk3jWbuEbVdhdfWmchNLFMZS2OVlDtC9snpKpK/l9dnSKhw\nA++yH0fSCZ5wrQex2oGYmgsDKFq61EkWNF5qK0jlJLA/Uxhsod05Z9eSlxyF\n78OOD8PMeLSI8Fd6k6Ky8Sr4cv09bB3ZYp+ofdIsP9NY6nO/XPkA7l5H+KYn\njUDryz9K/D8XTO8m7cFzrraQkkQbOZiL8M/j1TsuKzykaTku+uonyVzRvfeA\nID87+nvlGqy5LwUX9XJktLbmeJtV5X0kN8vFMVUl8NiunKJHKoDGyohNxrpR\ndkraybo2YU/cTOqMtiqq+S9e3xKFq31VzvFeosvD8F5KFg+8QEbY+qfYNJV+\nAdfJ\r\n=cvMF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f83dad726f49138e912f45cb41a19859808e2424","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.223","@balena/jellyfish-queue":"^1.0.136","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.140"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.55_1623005528047_0.2504177663817857","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.56-renovate-internal-patch-db159cb41995e3289d45b7370c03a0cfedcf6a09":{"name":"@balena/jellyfish-test-harness","version":"3.0.56-renovate-internal-patch-db159cb41995e3289d45b7370c03a0cfedcf6a09","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.56-renovate-internal-patch-db159cb41995e3289d45b7370c03a0cfedcf6a09","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f2dc133824b1fa1b0b8d5ac0f48a2299e81954e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.56-renovate-internal-patch-db159cb41995e3289d45b7370c03a0cfedcf6a09.tgz","fileCount":24,"integrity":"sha512-HEJA5BVpLx+l1OL/AoJ6HCSghZATHxac4/rJkzh2YFHyJiE5zLLpkwwYZ8LwXLbIJh1CL9Xztwx30Hgtgl9i6w==","signatures":[{"sig":"MEUCIQCAaxDChoBJfVKdGXTm/ocADonENChQ5TTZpohA1eX1TAIgX7ftv92AjWyn3wgFIsyIZlLg/2ZMTMVjdjtsFfI5Yp4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvWQnCRA9TVsSAnZWagAAzUAP/jzYLFIKLkloLJVKIYbF\n7KljZsj8qh42NpLz2GQOVj52j/GQYmnHkRZX4oYv50J2JGmlkG3ItBtYbF4t\nQ28uxFateGF3rcsn745xm3i4qVTHlDT0Nxb4hjxCi8MNWm/MTrUEKmMpEq4G\nckc4mebdhwKMxX8M59LLtZJhXdsj9C4fm+O9flWYwe4q0hRWvwN8iHyrwHmP\n7FETYVPG/c8mI4w08jPaMG3Jlj7Cjv9Qy0IS4APWRTDlOC/G7OWerG8g9O04\ny2SRhSOJYiCdO96cvDqjRCAzzyzZNO+TfZk3qqDco4fpPlU/DMsXI2QuA3HQ\nf4sO7T2T1kkxunaHElprq91yh8p5fa2wyAh3IBBVosJOB6i5MG+PTZZ/DTij\np8ifryoMPo/7su2uCmoG9WV4AxyoNqTZVSwZlXitPpZBCVVgpujauq5cJ3gh\n5JW1yBC6oIR34h8oo7i16WyBISjEhaTStjkQUC2WKfTZjhypx0/SkSFS0Pzz\nLAovBOqX+oAqkaCJpVBOLTPpeulslpCXly6RKMDiO3GK9j2rE/Hp04JZ7iTo\nsOC0/eRMK6pPEn3a1CSVa9S1b9l7WcG+AG9LjacNUrwLPiqGjkdzyF44U8UZ\nFqmvuEXEULAQckyqAPqy/Zed1xxCy4Pnag25oZu/1TnSxGhjL9v7xljnWMZH\nPZLG\r\n=KF9c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"db159cb41995e3289d45b7370c03a0cfedcf6a09","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.223","@balena/jellyfish-queue":"^1.0.137","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.56-renovate-internal-patch-db159cb41995e3289d45b7370c03a0cfedcf6a09_1623024679724_0.4105253227631829","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.56-renovate-internal-patch-e412c5ecb2ac50cc185be075d6641b9bafd5c327":{"name":"@balena/jellyfish-test-harness","version":"3.0.56-renovate-internal-patch-e412c5ecb2ac50cc185be075d6641b9bafd5c327","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.56-renovate-internal-patch-e412c5ecb2ac50cc185be075d6641b9bafd5c327","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e0251d0e87a9ef00f7d8803d52ed063a5b9ba1e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.56-renovate-internal-patch-e412c5ecb2ac50cc185be075d6641b9bafd5c327.tgz","fileCount":24,"integrity":"sha512-nGHhUEoxwIyMj/X3seBHQaRGRfbewn+R+KkwZTzxTAr8xR/PyQ3KQTjbSrO0utGXQe2Sane/aDVkhwFUTGAsJw==","signatures":[{"sig":"MEQCIFEw/9z2dxYGJJCgeLl478mG4yawr8ck4eYFoHAve3TyAiBPvkXV98C7unU5oGKONWhrU+Ti6i4nMgOEt/ddHdI+Cw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvWVsCRA9TVsSAnZWagAArQgQAJryoDvCY2WNNrBSr4NQ\n3u3tQkXjUYeQwnEvNxVqpaU8dx1IJXgagc3/GOPQYOR8BiPkjmwuqapThaUX\nqLUy74AguUs4QZI+WdiuZL/AGJgiy5/0D6cTndTTWEh7J+9E5HqEFEk1Cqa/\nohWccKZi8Ag5IolldtTJucQYl6t0PCCZjh/dhi0O19FFyYI7/IwL5nsKCcZ1\npayTC9pbkiut19FZpyngYqTAMrm4yxjtnSSF1XRgvh8OqtauopsGTpLXmGqh\nPFUSReSbYhCBp5qgfndtLU7bvQEkA1h2kXCfWkH5ddNbxER/R3UndxbkLjjS\n1T2WeBiYarS8ErXcgaaCdVylb7hN3THcF7asRTahr+tJQSMt0pSAvFWtjGyY\nrS7trNGByN6Y//JYhjdFZAvrJOWatj4rciXu0sV4tCIxXBA0MaOTluzC0rO4\nEwCG4xeICFvLshXoQ3FM2AjCbjZfJzF2iz5k1Mx3L5tuyEWop4DsMNNVkGG7\nupsUXpfgR7rKHoVi8ZKEL3qqkCw2XAb+lWgweWtSDRRIecPrU95g5vX6K2qo\nNpQ8gHnWG6QORUeW9umZVJydasyzQII1a5ZX9KFqAZhm+j/ztHcqx+2s6+BQ\n8SVJaloeWGUPEPhQ8JSirpiCornSrRrV94+eWTx1pVsu2Z1naqqqFEBSScE9\nYMZu\r\n=HtSP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e412c5ecb2ac50cc185be075d6641b9bafd5c327","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.223","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.56-renovate-internal-patch-e412c5ecb2ac50cc185be075d6641b9bafd5c327_1623025003870_0.23716985783860678","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.56":{"name":"@balena/jellyfish-test-harness","version":"3.0.56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.56","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dd69414b89a9a80b56f6ab43e87818ea4cc316e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.56.tgz","fileCount":24,"integrity":"sha512-Mxxl3KeBmd9cGsImxBRFLK+MwtRk7Dwf71QIn2J72K0T7R5KBz5NuJU/iDH/PbLQIj/zngClbmSMb0BSJfjdgA==","signatures":[{"sig":"MEYCIQD9mTji6Yp2ehUFYOWgGhJcO65eBzk8NN6FZCk9M64JJgIhAJ+HKP+81H6VLZTTH9eAITzi7f6sNmCnIYBWE//7dOB3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112393,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvWYxCRA9TVsSAnZWagAAkJYP/3Rfe8sOCMj9F14SiR7g\n3cs1G1tfHbpzxIrdBzRK4NbvAJzah0T9SgfMZMUXdu8UEM8S7jeAA22MHgTe\n1WgXPFYXsfudpF/rGb0tA1tt/moJPky7/k7b1qFSkXrGPw2REK2f2LPKkzjz\nfNlmFLEP337Ic82VG2tA/646TE0FfcAs23gusmYtUCHDmF/fvcGjLf88pGaP\nDROK0HR4UyXeeCb4ijSKvUMZJ2fcRZ+yWST90H8HEPBu7rfACgJgA5qPIUAq\nDkeup0EZlZq/g8Q4wft0g8c6hAJy3MHyMW157FCi14IqrdmnIBvGGEUEePNY\n1n+uoMlyaRnTTOOe2hLNJs6Kj/F4zG+YlFhnK/oC/JcR2g1/op2XnYXq4LJn\nE+RMk9sJY2nv4N2GUvDrl1tH7aF+FZfdc16ypmCwhJeOKzNAw5uyvDToUHjv\nMAEZxnYRR+98svSDKbz0UomBSP9PKlUXVhGEgg6Dto0F3LiDgQZg0ntLf1C/\n/QeqwdOciMbJ/ovH+QcQ5/Ifn2EVtr76XaZxQajGr4QhucOY6Z1svrGl2TPa\nb6EHX9E7TOfOqKvX6MegNlnqm8xhifElKHi+3kUaUaepuKyK9/BpVaIuxLpP\n+SHbKLoNElpJpVBP8w/TjIdpA8Uw1cqsEp4LBW8zCoOKtQyD5gJh0VM3zvjo\nD2mX\r\n=KqTD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"baeef4a15f378904cacacfb66c380f24968bb9c1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.223","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.56_1623025201235_0.5792654689853172","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.57-renovate-internal-patch-40e52501d4f32a7f97613f2d36b4ec806afba52f":{"name":"@balena/jellyfish-test-harness","version":"3.0.57-renovate-internal-patch-40e52501d4f32a7f97613f2d36b4ec806afba52f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.57-renovate-internal-patch-40e52501d4f32a7f97613f2d36b4ec806afba52f","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bcf97b3029ad0d59baa3f70167fcfdfae9d60926","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.57-renovate-internal-patch-40e52501d4f32a7f97613f2d36b4ec806afba52f.tgz","fileCount":24,"integrity":"sha512-KvanIjlo4USYeLD5JUIZq2cDhf++Eol3SMUwG+4UXqkXaugUn766i3GJ9Jehi4/AQYSSWOPr+xlgorZkFulJcg==","signatures":[{"sig":"MEQCIHI/5+IwL9/7UnpQ1dmLUxNts3ZUgqZ/vwDjW3YdXbVYAiACca3hkowTwqHkFmrWaZm8Fl28reegicZhPAyHRUPBqw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112563,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvWd8CRA9TVsSAnZWagAAa1wP/jjyLaP102fmJw/rFgxz\nIz3USTd69n8+sO+hHE3ltwIu8oK9fhe3RGnfrzibGHSuPrRLoM4weles0Qdc\nRDRilxeB9VRKi7e6MJ7m/khK9mIFdyTwTmzBK4ACEMpY1Lyonjj2GhNgiShq\n3z3KhYVSekc2HjDbH3fYVVmams8gUaaOM0HMpxycu+Y4UhNp70iYgTIHAIQ2\nRbs06CGRqWB39DHZbqS1/8wu7jhHqeVFSpyvBuv1E+spNCFy+Nu3T0vIvmth\n1SEIPAJR5f2XdtG/2FaUDGnJWd9oW+xYGKygC4arW4OAYtoEqqriPuNx8cZ1\nU+/PkkuTMmiAeRg2jtIWsVsKUTqKgm/yvn7ORmjWUtzy+PntO/OiJ8+2hxeS\n3NeWsSpmokpgjEpXIsrN+fyaE3DmvTeBrVIkHfqiz1Wi+iTGh45ybrStx4U9\nQFpYTMGQeMH3iONvTcBmFArUh5WEBY5/9nCwOMk+4oyTgvGaW6Wvog9aK+De\n9/aDEipGK6+CzLbvq6N0lTQ+elFj8uAq/BPJps7wVCIdEUN6MVjt1WeA8UEB\nribD0zQ2Hxsz16b6Q8AheMjp9LaqgPhmjSYInETNrRX9yzNpjKeAHG5Cjw1j\npjAj+nQCkDkKkST5yhgOC5yG6oVHPQgi0g7hxvzDH5t7abHTrP1dOUr+3gVs\nJfkZ\r\n=gOlG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"40e52501d4f32a7f97613f2d36b4ec806afba52f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.57-renovate-internal-patch-40e52501d4f32a7f97613f2d36b4ec806afba52f_1623025532298_0.5086045718669232","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.57":{"name":"@balena/jellyfish-test-harness","version":"3.0.57","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.57","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa3bffec3e3afcf01c248ddc04e348f78776ea7a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.57.tgz","fileCount":24,"integrity":"sha512-NwzmM3trZtfKUUvWFumEgUQsJ85KxpbQk19t+chwQ5XCMGAjzpU2YFcoxmGKQ32BWWV/HsyVpaC08X+3HixqgA==","signatures":[{"sig":"MEUCIHKmx3Zw/kHZMuK9kx/ChhWPqYp6TPJUqBMJuvBOXjbmAiEA5EpebIeovLaWltbO+YTGihsSI2DuOudy6cDpdPlzIMI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvWgzCRA9TVsSAnZWagAAVsEP/0sw6xgIQSKDNbWIFGDI\nqKRm0UmmvFNSJSb0MazoJy8v08KcT5e8bq+BYwrI0PnEXaxXaLVuzHBpEwu1\nO5ku0K0H0m+BMWYH9HR/sanJwLW8p277b7BjP0X5iG+jS2Ht/CyJrDYxDxve\n/nL8JIOaFcL61aMYYCDP+qhHsg9lYYOw//krVnGVmZvUW5iz4wtiZO7Rqsaf\njySPu5RBNh6NxmdwolQbSCJj7ee9flJ1VeVz37PWRbitWHzBIo0rB8Wgjjyc\nKE5Ko+UFJwTPsLXRZBf+LRbWKkoCi7ZtvTRT2PA3QRYZ8DGp1HpYhyYi2a8F\ncfZ9/essA06OKkY5FTjNYp6Q5qO1OKqxPFh5o+xNlL0pmpiu4jW2yQycsV8s\ngemsIOBlMW/wbS8sw43sDaPoxQ9VOT1+DCpHpAoeJfp+SwItycdloNlvPH8Z\nQJ/4O4p0drxbh2dwTG4fVaAlc+QGuWnC7ZBIyS9hGyN+UI9zPGAGsEEXd/bI\n+ErgRFIXlbXgdZzwwOXRqaRL3F7KIFg6pLPxPFGvExbqcEXs6R9yTbTWs/BW\nbagaG01ChLfaOlDwrdm02wmF39qXDawWs5OQ3bB4fz/F2h6/ZpALDFH66V1L\n5tu2ppOKFw49otbz4bwSUtsC/TXvpMeuOfRNMgNsTvS1roCpnvDmavDBJwAh\njqG4\r\n=M7Q9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"87455d3a5dcd1cc8e00b292e6a73ab8c6f6cbefb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.31","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.57_1623025715556_0.5591840245116728","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.58-renovate-internal-patch-491ebaa5505b08f1f8bd2c4129d3a3913f0988ac":{"name":"@balena/jellyfish-test-harness","version":"3.0.58-renovate-internal-patch-491ebaa5505b08f1f8bd2c4129d3a3913f0988ac","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.58-renovate-internal-patch-491ebaa5505b08f1f8bd2c4129d3a3913f0988ac","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8d8227b734d9b1f8eb65c86568c89023048edc7d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.58-renovate-internal-patch-491ebaa5505b08f1f8bd2c4129d3a3913f0988ac.tgz","fileCount":24,"integrity":"sha512-pilfbBtWPn8v3StW/q97ar2TIY5WoJC6snNmgCl9zSMSscsMJzlSmH9ZaQiVYFKzNETfJbMFzSpNCVb6aJnSKg==","signatures":[{"sig":"MEQCIDrl9au8Ybul9RqUcJ27OktmL+eHkttTvx47naY6b11UAiB2rpMr4tqz2Vo7K1IqMeRGlZOOnOgaAWuJcOD6o62N6g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvYPGCRA9TVsSAnZWagAAJ2QP/jDvhTNv79sG4mNTl/OR\nmuHhE0acHeSLoIWIRpbnGuqnrP+Kp2b7pdIyHkRJMI2WAKAZeu8phtd27oE1\njWQ15WyNwCK0dV1c7/9susYRvp5nVbrwVTWfBN8EGg/SBth04MvO+ls0zlr0\nzZavWUckz1+8cQgXiRbb3syhSwNeXDzr6dw07BOklOGLGKmjsn5P3xD6xXPc\nF8LrzQWF8ZDDaALZ4CJOEhrfPQak/yuYR0TIseTgqOtagy8R5nDzssyFU0yB\nOSSnTnsOWb+DxhJ0DjzfQkKgVuAatC062fFnxih1gCgoLP9R2YM9YhHYE50C\n4DFPYa43j1pMxgjAISHR5GCA0lqYJjzk5NmaNSgYS+Kl2IdssKNFw3OZKryp\ndGxXuUupniujde+BI3n5jllWHYRkIZWjy3vYAXpGofltriqp09dGwlqnBdVE\nkMkJ0gTNErwEpqswINX6LUSZ8WrG7WZ4tBV7nOkDeuf+9ZoQXPt6CrUdLP9y\no9KlaVXjYduyve7V4UK7d/XH4AuPnd7DBMDSXQ2Y+r4zvBW6+Buih6M0+tIV\neYMckMon2p4HdBoci3k0Yse5FThhhgPB12GHvxt10q1ph3BIkCNxmW7LDgfA\n5Z8ohLB14y0+b1A6rGgNS9ed9Ggo+jw3Z4r4bUlhjsUenR2XgQJXySA1/Nf7\n4MkJ\r\n=jNig\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"491ebaa5505b08f1f8bd2c4129d3a3913f0988ac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.32","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.12","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.2","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.58-renovate-internal-patch-491ebaa5505b08f1f8bd2c4129d3a3913f0988ac_1623032774333_0.14303125793917992","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.58-renovate-internal-patch-32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685":{"name":"@balena/jellyfish-test-harness","version":"3.0.58-renovate-internal-patch-32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.58-renovate-internal-patch-32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8c261106e2ce2aed56a538f3c42e5d5d908f18f5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.58-renovate-internal-patch-32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685.tgz","fileCount":24,"integrity":"sha512-QwOpRJtrPi6rgs6DdhVSeftT2VrXe89+L9OxEDORX4sLKgw6zBJ+u0Se+EV8kGsxLyOJIIMsvF2bdSYykPI85w==","signatures":[{"sig":"MEQCIHkYdeXTbaIvwH2p4Tna1sGyCg277A0Znnz4zR3m55VfAiBuPa8Ykd+xqtEZq4FeJXfzDJrLTdYfGlaErVFfdpUH5A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112637,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvYThCRA9TVsSAnZWagAAHAEP/jQFPAQfPsG31KI3NRak\nH8PAVEbyUVGN+etxazhk9kEIC3PEsQhPd7zkvY9e27BC+/7GK52NdjSwoD87\nGexD4/gpojTU37aGGwz1GRFU5w7TXgoMBXQH+zJ43jYhdkBqpBpJdisxRzn4\neDhuGDStnjxDMGTIEHOfqhsJ3ftB28W6nmqiOAqQJkGy6H99SCDDd/RKOD5A\nEJdlOh7iVqXfxW6RZW5FbQsQwULSOSBNLl7lbhlgt/tyjkORmUIQcsdpYdjV\nuLMdjJH7+CSzf1uLWpf8cdfIdLTpO1/h65tLOpmkMe78GBr2Nx9Tk3oZg3eW\nqmNMq09E8iVWbxG1+phfGUcoaf1JHYozzS9/Y2Cf2dmMiHwGlcTFKufRNEjs\n6hh6JoGEVog27MVNtyVg6N/+NgfXLNUEc49fTWAqEMklKenI4eDv1/WVXLLy\nz/seeSQCv9mbWeqBe4QzhbxS3rW+0XYwZsIn7xYTyrgXRkWPqSB99Pri0w2V\nZh8JvUEyUIZLsl25BpSGHntYnJasNssuVvjLecDXFj+kuvHhah1SaA7buxdc\nHvOwE7jhVMloFxTxbRSe4oIBbhIUqAH9pt2fFAv+rX82tzvx6BVrT9eR7laE\nJC+zmjBt87aH0NeR903dshiSRKv5aj75Wc41ufivtOE1iVjbSgExeFj2WALA\nu+hT\r\n=440N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.32","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.58-renovate-internal-patch-32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685_1623033057696_0.754646484455882","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.58":{"name":"@balena/jellyfish-test-harness","version":"3.0.58","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.58","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ebb29351a4f9dc10eb01a85762356495bbc8862","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.58.tgz","fileCount":24,"integrity":"sha512-5jPEgOF97hotM94OhokSzgcADp/0ll/PsbGPL856f7iwvUFuy2SqP2L9GlAKWwV9J/30H1MA+gF7kHlrZjQrnQ==","signatures":[{"sig":"MEUCIQDafm+nnXvlQ6xmm2m5jLUPsYvbSEXMoAn4hK3kBnq5rQIgU50F7CWNmHeIqk039b0QeL7Am6bDpkeaJKaDV/ymgvQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112572,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvYWsCRA9TVsSAnZWagAAAH4P/3kbNr4vJP5gUkzz8mAP\nJcavMrQaRXqm8thM6f/9h2nw/1abDJK2MqLQXjWmxVGRIC/+QZpyTjRXK7bk\nHDe2Iasue18mDhR+Hnrx+zr0v3FyEImc7Vp60guVwR/vRcF+mPHxb/bOx/GB\nrwGXckty8Co2CV6mc2rgoIroTIy2vBr58J5fWdTp4mswrMfYMBKbQSbjD0FE\nIEuz0ZLMlDmS9r3kvz5w4UqlPEgjRyW5qK6IiWHDnE2LvBmj+L3Xq7RKQjPl\nxStXHZdRKtCiaCUIivVCgXkoRkWDjAbPF5GtLu9hPSMhE+mwhPtyTKMkN9Hu\npH7785t2x3FRoBwbOjkRD9iP/m05oz/rFnAdnLwgtr0HTr+kcMRqAiUtFAil\n7j+JM4jIGtXC5CvbbsaJHJmXX73oYu+KNiSpl/KcZ7890Zlm4Q/wRP1gLO2u\nOm2EBLOB41svHuWSYkK4MA+yi49t0+4w5WP4ztvRmIlIkOO8l1hF/XYS/gMg\nja2qwMjayo1lU4w30be3Ta1WMk0Mdgdgy3i9sesdlSmtpEtB8HEiUh2hk2WC\nrUgs8n7UCj7qYikbW4w46fHp/zQWaC4/p9yhYJlmzkZnWW9HtYhlDI+wKq7N\ndEdxsH2jGlJ/iHngkNKB6DdBOdt3pnGQBq0jiVoCzWvdCBWwy5EVYw+i24yS\n+wV0\r\n=G1Ie\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8f6a96ab16e4e262de61440d75fccf16b5db7837","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.32","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.58_1623033260303_0.814783713504003","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.59-renovate-internal-patch-a51db79ac411414b3c14f02057fe9acf1a6bc3a2":{"name":"@balena/jellyfish-test-harness","version":"3.0.59-renovate-internal-patch-a51db79ac411414b3c14f02057fe9acf1a6bc3a2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.59-renovate-internal-patch-a51db79ac411414b3c14f02057fe9acf1a6bc3a2","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e8bf65f53e4bede8d894adf98b46067e13c09cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.59-renovate-internal-patch-a51db79ac411414b3c14f02057fe9acf1a6bc3a2.tgz","fileCount":24,"integrity":"sha512-oArvKLHFkX6ApfmQz2pK/v3Q//ILQjGaTaKuE/e8lEfbhfJAhiNRNzVJG6kFxOEVyTbyzks++oK7LK/XdQBSnA==","signatures":[{"sig":"MEUCIQClcbJQt8B4rtNla1BXCMuIsiVR1Y+OJ5rCsJyaKuhWVgIgK91HX6h6OCfQTb3rQbharCl1sosBjWlSGiHPucHJgzk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvZJwCRA9TVsSAnZWagAAzRgP/jAfd9pw/eZmJbj3kyN9\n/cwZGAtYhUEhi+/CLv6SalFYPo9E3TYOFBsHpsEj5BgJFdc/Wy6E/9zAD4xi\nkNeB+rf/EPVAS5mqq3lpj1sEBt1TPrWQg6GrE0MPFoFySNuYla1VGWowi/we\noyWRdgJnqAOT8B8MyoWWT8IycoQOBGQRfh1+y7LnKbIe4Bvqm3K3GQKhdW7G\nNfJD7BTpELIo5okMsR8h3x0GKNn4O7NJnju5WFvl42o9Rvcfl1Y6722rnLXC\ncv06p3bC0xZ+nNthhFlpkaQv76Pnl+WT+THtANvao0ePyXqyjpadZGs0j6l5\nwc1Usvdkalke864nBIbdVEhCRqMUyFRhCeVmzGvFtzhWlD71gkN7S9tkowsf\ngJHunabSVT1930WgWfimBbmfyS156OZT3Gi7eWdE3lmF0SSl6DRxLufGxkxc\nuEy0IdT9hG1Wd5Eo1T6T7ZrHBqq+xSniw7Ni3kiU3Nw49OiL/oehvfebT/mN\nIgdhiKF4YwRZ4j1t8LghQXypt8OCHWL3U9rSpNliN6Y76z/hO+bUSx9H9PV7\naJb1sPjLy95rwGp1hh9dVXhPRfzCnYY1srm3NaQux0oROYk97oMK7pOo3zmL\nenNRrXIkMCFv63tV2C4labvmtYeU5OpJ92kvPpcfuMQHcWRn8T2Rj1oBwj+y\nUG0G\r\n=T8jy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a51db79ac411414b3c14f02057fe9acf1a6bc3a2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.33","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.59-renovate-internal-patch-a51db79ac411414b3c14f02057fe9acf1a6bc3a2_1623036528066_0.4354601810382157","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.59":{"name":"@balena/jellyfish-test-harness","version":"3.0.59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.59","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1ed8f84260a04087ebe883990929ea967fcbe4db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.59.tgz","fileCount":24,"integrity":"sha512-YniBblfXZYF1fohq63R+wrF3qU038nZSv2C8taVIwFz84Ci6olBcQejSxr+dpoXj7FsIk009bkN9rKoqZBMUOg==","signatures":[{"sig":"MEUCIQDVD2gIAHsWOEX/pBHWgDB+VPQnmi8hq4fpqYXqLfA6KwIgPT7IXXbzCyZAXxASNRclx/J+1XLtCrnnRM5jlSt7cO4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112676,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvZOoCRA9TVsSAnZWagAADiwP/A7Tnfc350wGREtfEWG0\nXxb09VO/8z2Lcd9B8PemFrYnofOkYTe63YdgIpufIQz2jld2Q4j55uu201UF\nQDNh9afqW4jTYMJ8X55/BcZAok0PA9r0OXZYssKbDS0NI/GI/Dvm7JSTyRAc\nxS7eixdURaTjKT29avixSHbUGEymkDs6r0bGrl3S5R7SLxpEIKGMtDjm3T1j\nz7jdkVHwP1eO3XfUwbg5wkykEb7zboVEFh24ljdaTj2DVyrWXm2QSkoAsBrB\nFH6cqdre7nqZPW0roSFLEHXM6fHQIhDziQxrPWpCSLjF89PGj2bSsM3mTIGe\naHW+/TV8TK+LJSCGVRT0HdIHvRfntbHweejjBU65eMByGWksSckQNZwQr5SC\nLmQqQ6kMYNTOGv1I3z5kSTbLyHs4SHrBsFAFpPKES2V31RVI+VvgKsbLxNq5\nOz1/Gq99zZJroL8L0DtuEWDusxok9Fp1vHlZtJhC6YGXAY5OY0M0soYWA+Vh\nQcA+rXLfS7XaWUFp8jXpriWhzayRDAirU1S0I1LUnzJAyPhoN0fVXlSa/yat\nQ+YiwM3oCM6jVWVm60QjXfVTEWPyY6V+5gQ5HI7q6sHbMtE7k7sdNfa9nhXD\nBXqXsQXfrBCohaVA14AYWVlfkoSZ2cJAC6d4RBKc9gKr06DLVO2Ykh3UPUSc\nXFBS\r\n=7BkO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8fdcf45a8fa7fdfd7ceeac7baa2088749730e581","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.33","@balena/jellyfish-sync":"^6.0.224","@balena/jellyfish-queue":"^1.0.138","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.141"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.59_1623036840388_0.5201707536188447","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.60-renovate-internal-patch-415809e3abc7468da39dc61c048b671f8987555b":{"name":"@balena/jellyfish-test-harness","version":"3.0.60-renovate-internal-patch-415809e3abc7468da39dc61c048b671f8987555b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.60-renovate-internal-patch-415809e3abc7468da39dc61c048b671f8987555b","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa4197c6ee42e2b539ef4de721b68523cd51a851","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.60-renovate-internal-patch-415809e3abc7468da39dc61c048b671f8987555b.tgz","fileCount":24,"integrity":"sha512-JPk/bGQ1WkS4CrkAtml3amoiKOiyzzFphZwXumXIiAppL8IhI5ZO3imUt7psKSGtSkYtnF0z4lopxGPAwZmCRA==","signatures":[{"sig":"MEQCICdywAhMlHxvm6jiWH2n9bQ0sRz0qb3LjyNh/2hfkxnoAiBQg2gnazMgJ35TvnzsaAjeTEtdzymRuFB05sB6VGMxYw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112815,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvZ5sCRA9TVsSAnZWagAAOpMP/ihguAOuGKAbU2NV1ySf\n2EXyztHgEgMhocdU/UehCjDxhCtFK24aKTJrg3ea7SM39QQkDSN1k7QGjVwb\n4amacouluoZV9XBpITjzv54D2Ir42IF8GkdmVE2dKtpsc2hDqE1X6cenY1Xr\nM36K+s4p0vNTPnS+JeFAs0DY8fa7mpuJZPEWc8OSp58MCMnHIeHxeqeNYkZV\nY+Tq0mBK5Z+hR3vUe01jPlE1DRpDNQN+5qVuLMPslYYGNd81AFAAmRJMdfk8\nlu9UPkwO5icxMoaCMWkwfNxw3OyuibtMktXyDp+mmOv0L14+5Zyl6RCcZ1NM\n8qH4xOw9kuXgiXp4C0CICpDd6zOyd6NYBVwqrkLBrncBQNGQWnQ0/QIv2Xz7\nDDg33lSG3YSQBVaEBvH1cH6glebFZOC3+UJUV/gCecWDiMTfb0jhnDH2moTg\nWYD6jQMspz1Infnd637gzFRHt2sUz4+YGrR0fWjDh2aUsGo3oKNXArfZN9tA\nEaE3XoWaKZiTZOpQYbOdZftOgfuDgQBQA+6W8RJ4fV3Sjih/jHvXAlHKc/kI\n9PGblgUqSVQQbKXsVR1HWWgiUZtbEmb7dfvWHAm31XUCxEnOSD/VZ2iMv6Di\nxl/uEkNgyB3+jmQv7folqLBvTLA7/ZKue/2WVL9i1E53oQULEzu7Ua5MKnDl\neltg\r\n=lhqK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"415809e3abc7468da39dc61c048b671f8987555b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.33","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.139","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.60-renovate-internal-patch-415809e3abc7468da39dc61c048b671f8987555b_1623039596440_0.04653958691647153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.60":{"name":"@balena/jellyfish-test-harness","version":"3.0.60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.60","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cdc6d28277538831f62042eae9211f5f943e5935","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.60.tgz","fileCount":24,"integrity":"sha512-4ha0XMU5e5ZjjxEEH/89Pimhg0PIijYhBcOcju6fFUgyJegLDQnQbwBPKC5jC4hCVgKvg+4/Za2UtwXvz1UQrg==","signatures":[{"sig":"MEUCIQC0cjEzQMjsJ17nEbCwRWmuLGbalRa/UOP3TzqTFJdxhAIgPoAmyzy4RzguWgKfTcrMxGkq5/ZHp2uSIB6UfXMX++E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112750,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvZ9ECRA9TVsSAnZWagAAeDIP/jGo7OGJsSHXXOgzJ9Kh\nQCXzsqOg/4crTIs39oManAceEJTg55a9QAmEDxLI09IroCW2jMghRPLoBY5o\nqWY8Q+x5P/suW25RTLIbieZglL9cOkBC+vlkVsPlbuM7CV34l7TJWkyfnWeL\n8PKdPwYCOvyT7w7z1y2safQpEa9amvsxnxQUz3irb2YljGTfohsIK5z7gt9B\ngWK7ZzAw0myHNDwigDddEzRe5x3T+UO8A6u4r+ddd3+rnuHpcyllMvN0uQj2\nGQNnIfdfbF3Z8O1yO7aQOj1f0MTes0+nnhi8ZtIhfqIQMoIgf9ZOe91tIlxQ\nNvauWuW9l2opwYhikF6x8z/QBXyOPCtq0QhZdoOTXywNvOr4h2jcAdvw4IUb\nt3D96bLKvrns5rHNhhFd0SabcH2dK7C+LHFfDW073NF3mMYKYVuqdCcJIiUw\nxL9eFRVZQo3OrBccbpepXy8ihX6USsV0rrnngHVy0U0/60voXX+qXCGFnWde\nopexQ/QkqLdvwxstUdUbkuxkkEWSuI/FjXmfpDc7EBpC4sIXB/UXuq0yEaVY\nAeYmigS5AwwcY9dIe3Xb24Wf5Nx2x0lT2ETLlIGBRccB/IqSvpDfZXSW+TbZ\nK8UEtfDDZPEen11k2WxVkiYJjC2kRILKhYWTthfulFU5T7WcHmILjER2OCT0\nBkwC\r\n=jGr4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f76be31f59dca80dfeceebcab83e0a9233b8495a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.33","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.139","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.60_1623039812495_0.9847655250960439","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.61-renovate-internal-patch-624063124f44f0f0dab601856486fb9333d7a04c":{"name":"@balena/jellyfish-test-harness","version":"3.0.61-renovate-internal-patch-624063124f44f0f0dab601856486fb9333d7a04c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.61-renovate-internal-patch-624063124f44f0f0dab601856486fb9333d7a04c","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8130f6d253b43fab52a3c40a542cf4f1e81b6748","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.61-renovate-internal-patch-624063124f44f0f0dab601856486fb9333d7a04c.tgz","fileCount":24,"integrity":"sha512-U45FVYrMePPMO1HahvnvD2EIbImKKGOVz0YtcbuUVwKwQ/sQ0ZffWzp60IB9qVsFlZWC6Ulklpn2ioKRDrFS4w==","signatures":[{"sig":"MEUCIDLfJXXrAC2gDnOypvoDfsj2F9qcsVxOgZhKDu3W+yhoAiEA01CtpnrmVzNbXMaOacLVG8xAsPJNna0UoBkWm89yyvU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvcVuCRA9TVsSAnZWagAAPkEP/2cIgnD8YyCYfND8Wym+\nNHBH603KpX2WzhqkOtwa6AOWg/R3/b9X6KduxI1Hi2PdFr6vtAaZXwpDUHfx\ngMrUYmSzxxdN0KbkMCEhFpNUoFI2N7LrFCJadedNC6jgX0pDuc10akvY31th\nVQc9V8fBWBeioH5QASMaQzcoTklaCnXhNrcUro/BbcWoJegk7lcGwJdLxmXK\n0M/Pj7GANzad9diCmiODBk32NYVy/0pLM15u0SLaxdv9mXu5/gCIXOrbHYgG\n/CD/PjyuA81vOyvubY4RozuOMIorWSkS78Bz6TtMD3hl6R1Drpw/S97Jgt+d\nKjpwzTbk5JqovLBK7DT/QOv3D+xf5QZcTwl4x8fw2VOZKcyCBi72GlF4cywW\nxJcpdK4sQYhNokep65vl9dNiry+M3irJEWq1N3m66aC5Qie3Rgj5auzX84JP\nwMoJ8yagfplzCyN+VzIEp8irNjIgZ25AS3r7WASsB1XgLKvPm/Oh8Uf5jyAJ\nl2y/gKaEsOxtsq/67KmdhgvqNhkhKj2LzLJXee4KWxnBiMp0S9HZDcGLPI5u\nzYTgOToozKIzLDx2xo+jh4RHk6A0VSsRUl7tVokIiD9RMfdzUTQ9aDBnk3Fe\nxKufdbH6YUH0jTxtTG7jQaW9+5rmqHCd2ZsHsTlsLYwNXdIAFbbfaSSf4AJY\n5b3m\r\n=4rOr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"624063124f44f0f0dab601856486fb9333d7a04c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.33","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.61-renovate-internal-patch-624063124f44f0f0dab601856486fb9333d7a04c_1623049582662_0.9751885415021391","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.61":{"name":"@balena/jellyfish-test-harness","version":"3.0.61","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.61","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e53fcd4682f598ea3a8144595cfbd82a4a0bdd9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.61.tgz","fileCount":24,"integrity":"sha512-CCOrDB8DN6HNSHFwcow9Vlb+NNkbueKyk7y+27lO6BEkPMTYafBdU8hC7rbdXmpzpzidJ1EG9yZ0kSOW3vJ3hQ==","signatures":[{"sig":"MEYCIQDGZvDSTFLrjVOwCkCHF8oKbJko7n2/bYNrAZ1aw6kCwAIhAJC+mM0eFCB/fz1imDXv/4QOsfJXjYETt76ivyvivFFm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvcYfCRA9TVsSAnZWagAAoiMP+wWRQszTC+yXyljUQNEw\nMzSmIp8Qu0y5/mpn4dmO+XoYpxBIqLL+oEBJIO9ayHhnC4AeVnoQFXING5or\noYt52nrPdW5Mmbj3tG3agI1RBhLKGplYpaa6fC5e24uHdGHinnW7ut1DiKNE\nMf4q1FKydo5U5p0gdJz5T1Jydgzs+594wUFqH5DfwPTvSPYf6XxG6yw6n2M2\n3iGP25v5Qf0pwZU17PqE+19iSrJF6Vq/zulHUc+ZA4VlXkqY8LjX0Z1/jhHn\nD80UJSaXLKiUwsy+gJED2T0AbggTdn+a6iJVuUor8NeW90JTjoRGRV35tiux\npYb2C580ZXG28QEn6vadStpW1cpu4+XXMDe5S02Rr+4eufsqnYw9SQIKqpEo\nMD46i8bDIx63BdQLz0WtnbDwLvt0AlF941kaj0IdrF9EHq8PBonBScWyndTB\nEFnJdSzmP1ZpfGVQkIfcClyltP4Qt+i2fJhZtJQJBJCv3U7EDEYgctlGdY7m\nAyl6m2y+uWVZzjMmpP4ISK7KdF377p9J9EyqLTKIGkcj21G1RqNFnGK8enqO\nhIIlry4izrtdCiM/M5EhQikjFWR+UzaV9gr4wL/WngqjhlTYghgxOrWt9WXZ\nbsUAuIOFEAFWlwRYanVEVALLjMOpfVCat8PER5SNGq9OzdcRwgfNxC5eIvc7\ntpIU\r\n=crmW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5a40cce2a5e7b417107329d06b476dac6a1ddda2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.33","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.61_1623049759530_0.3365354784646528","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.62-renovate-internal-patch-2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1":{"name":"@balena/jellyfish-test-harness","version":"3.0.62-renovate-internal-patch-2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.62-renovate-internal-patch-2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cde56e894d3353dc8e400e51993a8a6aa3e49422","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.62-renovate-internal-patch-2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1.tgz","fileCount":24,"integrity":"sha512-zXCAhviKqG22aG8NuUrj3HA+g0sYLJKWTv+JcMKGM/A61ck6enZsn1N5YgINEwBM6wBefQKJtHost21TU0eqDQ==","signatures":[{"sig":"MEYCIQD9vuB70mA1X4pSWDDr48Zx3DevgmnLoWwP/j7h/ZxUZgIhAIYGsXp+h0sdZ0FsFCyvy/nsRIzoOaS/spUdOjhgR+i1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113025,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvfB/CRA9TVsSAnZWagAAyMsP/Rocv/bUQhz0XDy+/4Io\n0jXnOzpHqyow0Hy1XPpyXE9Chub7bmv3KFC0HdtiDmMSAS2kLSEsirQs36vC\n/5FOK2vcIT5LuYBnwTgX7BvwajH9kx27Hsv0zNNGisrqTrC1cTXiWt+eOkLl\nbYiKQ5S7nMdBDTYggDfwIzalmqwjtLWTs3U2qAfjCv6M7C8bxDHY8Dv/u0cs\npi6OYuOoyjJUOrI8C2JxCb6fIS9Ligu/mPCGi8yFk1a200tpAouMw3g3Ace2\nr0CiR6qlSPudV7qmndtCtPd05c98/LwiSPFkqqGkozX9hBh+Z4gVt4yPLr+4\nFLmP8Qy9xk0rTVdcSbDcF/dc6YDJmKE9ueNPAkEKURgHA9LfjEzKZclMnfp+\nUMtD7Tu+VNMku5wSVLKLbXYkyM3SVu7knly75LbAvVB+dGrnOoxtdGxWSFp5\neRlihzMtE8kOCjuvyEGrawuyYcvzfPc5KNZC/U6IiOja8WhjRyaXcJEsz1oK\nvKIgpFKSlnMSKhItZ9rnfvqtyXySfIUapxZGZlw/V7KP4QixtiM4N2R/GKvo\nC0ylFvI7ZPV1Y8nkxJC7vdpsL7vc+WXlqW9cyUjL/9kOTH/srySltRhcrPmp\nYZrtbzyVOk6wu437UsmSLzu00zEslcQcdzsAwk5yvBBFd3dVeJUKpw0vt81r\nc4sI\r\n=EY7+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.34","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.62-renovate-internal-patch-2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1_1623060607508_0.5449515035740751","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.62":{"name":"@balena/jellyfish-test-harness","version":"3.0.62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.62","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc4380054bc11b4e71a8be5eb3170f5310dc579b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.62.tgz","fileCount":24,"integrity":"sha512-KsdiBBBt+nUe7U5e4dwisoYz16ClVtaG+2DVWTHOQVC/CITjLG3qKx6un+Yzs+WtchEvqqWkhqHc0jnl41j4Bw==","signatures":[{"sig":"MEUCIHLx1QIDAOfgiiqrSf+5ZDHfLZIP2l4MXEbMJ69mPMPiAiEA3GZ/Q4grUpp9kys+F/mt489hf8rUIlOqM42Lmslp+Ts=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":112960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvfFMCRA9TVsSAnZWagAAiM4QAJ8E9Sug6iiIpdHrJca6\nQrg3lpI5kNfvUQj0eS/bxZwEi+kpwY3dqSRgI42/OB+et+PakdAFt9zNIfpP\nqbA5TBLNQkW8+RzWYh7JSHoYImy6t8UNmYxEPcD4G87R524scxNje9Jjav87\nFHi1SUv2G622mgE172ppjV4g7ko5J1UmnVBXCSXjx64V0JFwDAW6l1JJZFCr\nUs8vTFourkmC4VRFHdskropKF/JdLAaNCCOIN2bYpKOGIGF9eWciHGUMzuS7\nuTBV+0qDMy6fCEPmrhZtS9vYmmP2DPky7Ig7sxuHzJXBN/3e5m1pga7PAImN\n6i6DWhs8hNKbWJY0w50TmrA9KvLpqyGzTkJj1BbFwlCaRhLcZkaArq53b/cf\nuo8LVQFvjQilBftYZGazqv8PeOL1O5SKGSIS97WuXj6NUnNApCutcIhB8b2b\nkAezPoNk0Fi8/tbJyMGC003Tx/WbInzPNoiF/Ij/0yosB6LyzMovAtKgZkFv\nEaGR6OFsyVihNs9meGHCIuAuhU+YEnr/YRcY/aseKxd88QXN+QpdiErWLE1W\nIh706n01F+X2EiMMbZwdxGwUtkzF/H1fCmragDhd/Nj7DFN2Vv5eIP0gE7Xb\n6EsxM6shL7VCJd1NEtqL3NDxIltRizwSjl84HlI/hSK1xJx4Tvd3APGBAvKS\najPL\r\n=dVcz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f1f83f65a62db9b4cf639cdd008e890b03045a30","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.34","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.13","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.62_1623060812064_0.3376215440163195","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.63-renovate-internal-patch-4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb":{"name":"@balena/jellyfish-test-harness","version":"3.0.63-renovate-internal-patch-4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.63-renovate-internal-patch-4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"644f134d16b0230c8dc8e984d242f041e299b21e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.63-renovate-internal-patch-4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb.tgz","fileCount":24,"integrity":"sha512-b4SK7f0Iltn2kmA9V7CxuVEtLdU33d1RoRXzSJ8ireE6s9ustEPdDfrDPKKr2muCfawW/WmDGT62QWTCyEveaA==","signatures":[{"sig":"MEUCIQDoVn3Uo3xAuPsyakciFU0cexJEIiXudDlF30wQhjhWDQIgKHQl4pE7xkGrQMr8OTIc4BcE6cNb0K91TCYWLp6eL+4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvrfZCRA9TVsSAnZWagAA6ugP/2dfGt3Aily4BT88ci+6\nspeQA+pdkn6sgXlvwWSEB9iLLM0ygBup4FONuexFJ8m+JHZbc4y8392Fcd7o\nSUNL3cdiad5U6K5iXAXkjLxIDbFPNou0MVsba9McMN8pIIihrR2qqibRCWv5\njNT0R+dMtTowRQ5IOb/NgniVA01q1EwgiKsVYz3VIPL+stHJ69scoO0kR6+5\nBj3YJ4xY84T7UBI+gVIoO3WYAuUiL2h4QFR75VXtDGP0p2u5t2XBjMAVnJu+\nZT9f9qOr9YcCPpKvzZ0nPNJB4ssS3QhY8kv89HDKp95ftS621AiQcrzlLq7P\n/CybZSHt+1e3RMnsC6Vs8edfl6TQNwQNWdhcGfYDxX/MEeC/GhPm/ZLlgzIF\njpFbFgMO4H55o17UKR02iGwp1m7UBfSVgUj6VgbxWIKHQZd2njNQAMetgwtY\nJQMOARJiet86HW22jmU6coRl+2uB7eNtxUKK3KwFeqboNdpMt9fRZ6+Ei5uo\nFcKharVg5je+zt6yP6nhMI8KKWH9MKgaVVsP2iOawG0/UmqdNVFow5trQ+oh\nMpkld25bnSDYUZtCij4uYO4Uc8o+AZ2bfhiuik4BLXoIqjLXZvnnE1MFFZNs\nqIihwX0Shcz2rGIp7IBdSg7CESVoWiVs5gXWxR2fl/mIxfGEXZSY/e+7Yg8i\niKRJ\r\n=ofPL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.34","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.63-renovate-internal-patch-4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb_1623111640931_0.3957965639637038","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.63":{"name":"@balena/jellyfish-test-harness","version":"3.0.63","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.63","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d67f6ada2415c946df8f418ef244bddcd99b3282","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.63.tgz","fileCount":24,"integrity":"sha512-pJEh3FJaoi6Hs0S9It7olIYaRGGF9Z4o3kQl9GV8frpaD7UNWwdCK4YCUSVIUkvCqQtVIoA2KqPMjZZn/2P5xg==","signatures":[{"sig":"MEQCICPvBTiey1gmnxxoR/vqDa09rHNtFOobj8Xuzfd/oguuAiAxF1GwlPJ2c+vgUC8LIXf+KoV45QM6bfKzIEuKXVulaA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113066,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvrizCRA9TVsSAnZWagAAi24P/29LSy3DQ3FUj+1EQtQn\nFnR0NLwZVLkNz2gBPYZ6nm/J/Tjlq/zKoubfkTAUJRUdD3wQuqXz/DQZfxm8\nRcJ4lupFAF97OQLcY0+emxu1h+t2O7kaPTXMAcnMiL1o1IAv0Wd6m6yfrZxq\n4PiL8EbgpRLedgFFgziAojw8uyKRG23NzunKBZeL8n71M6aHgK3rHpQTD8ca\n+UE6B9mB/VPkSYwW0eyrn3BX1IYtvNCy2NyDp2o3QHDZpd1qEieK5iQ5X99C\nCZNLMi0hT2ZVIlOFudlr/uIYq9n3Ue1ePl/qFdQrnvrnisEycXKPLtTCUYIQ\nGDAlNilp7qDeYUxkfdU+Li4tkWPYAxLXueYK/MJFeU3fO7VxG+Jm5nxOacMM\nk6DWy4JYRED7431gddtLxjq+oOQkcDpeu8eNvstKD6ygtHZlVYNUZx0fRhn0\nIzvh7micKa91rer78XM3dl4lZkVfoXnGcpsWkixww4/ufyGVP4QswpR+2EAn\nJwuO2Pk7xGfYkJWMu+zmCMWjyI5b43+coJcHvh1WLmfwMljv3rlF5CGfSigS\nlzlKnIOCZJ0AEiNsWzmgSA6u+g+5BRRtnRCYVyFy9xytGzeBoRcA/7mtzn31\nsd0nHukMobr9EnILi/Iv802nOWnL+oDgDkDZmfhI4/rT60g64iG60kSFYfzB\ndUd8\r\n=tXTK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b4db917700c08df0b8388590bbca71b0e95724a6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.34","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.1.35","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.63_1623111858948_0.5058888082540689","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.64-renovate-balena-jellyfish-environment-4-x-1a55d5dbaef576c3b144487c234b72e91f982756":{"name":"@balena/jellyfish-test-harness","version":"3.0.64-renovate-balena-jellyfish-environment-4-x-1a55d5dbaef576c3b144487c234b72e91f982756","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.64-renovate-balena-jellyfish-environment-4-x-1a55d5dbaef576c3b144487c234b72e91f982756","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2895476564089de203a495f9a7e8ee815f15c9f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.64-renovate-balena-jellyfish-environment-4-x-1a55d5dbaef576c3b144487c234b72e91f982756.tgz","fileCount":24,"integrity":"sha512-KChjBxZwYrzzl6VVMQQQnd7/z5JgTvLFiw+jBD+Hj1rMhEpBFsgENtNh0zjQbWrHF0RU/bgQ6cySFp2o9loeDg==","signatures":[{"sig":"MEYCIQCVs3H/tz/uQqVC+SeGjMa4uqrhi7SnRRqiE+ueH1yOsAIhAM1NQJvypnaIrGZCrjlAzi1x6RGWhNYjmNHvT4EXkGT0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113258,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvs7CCRA9TVsSAnZWagAATQYP/j4tYWRDFLlzMH0UPFd2\nyvZ9UWbRGx6uq9ul62jXVZB21fjWKpT0jEyoAbckN5Pn+u2WBUyMTnIlYq8D\nID98KOYRh8OWdSThUE9ZgqjMrIHHtn4GhFixxQ+U0UhPogz672JUQH3fEvtr\nGs5XqjZCYpSCqB01xCBKOzeJ0aSWWHZ5wUv5GAmuiIxsuCVQCVNW0JGuo/cm\nKFw5V7xG+TjP5d+4nlMgkfPeEiedEIgQSbLhAcHeTqQm+RNDQ76CAUba3o1+\nxj+OEMYEMze12Q+tFq8l/WkiZhqXS3e9AsYb542kzdMFMQJ/HWmUkdD664Ol\n//mWPcv3iNtsY1ncy15tmAlRSCJnOIQIBttgVGpX6EvBLF5WUwqTRIoKuORo\nJbMAJ9pUzhkV0o3Fy1bgHXwjxtAqLY2NiyZjNoJMj6i/cOs+k5PYa5+OGuD8\ntAxcxjPv7pQvSLVFAtqdO86Fh+j4LDeBt3LUbAbrB4RWdWF9+3EBm9FEGqGJ\nzQAqlqrkdD8ylkWaOd4+7MEV+hXN4tc808wGeB57ZmF+hOlfxStcesvyoAQw\n6xSmhqpITlecLehP62t3GxGVlZUscPwivZJIYGiWY3R0X8OjFr288XOayQCU\nPweGZ0wKr7tMhvSVGt2nmVfzu5nI911Mbs0eB2BgIR+VkOHdbX8E0X3OUjsX\nEWHJ\r\n=+UD2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1a55d5dbaef576c3b144487c234b72e91f982756","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.34","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.64-renovate-balena-jellyfish-environment-4-x-1a55d5dbaef576c3b144487c234b72e91f982756_1623117506362_0.6940907048054108","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.64":{"name":"@balena/jellyfish-test-harness","version":"3.0.64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.64","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1a4912fa82f7ccf976075448b8d016cc8da09a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.64.tgz","fileCount":24,"integrity":"sha512-2+T2NQd44seSC9xCTYMu/mWxVS13DVOiWat3VZiabe3zbf8c5MQWpOo6IeJfrhZhuGx03oiuGZOKZuPW525SIQ==","signatures":[{"sig":"MEYCIQDukA2R60iYRCTbP2FoIDFXdRnmg8ALJJcdzwN2wnA6iAIhAJ3zA8MjzBfCQCTQIRiLc2R227juhQkcKv5H28lSzn5Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113175,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvs+FCRA9TVsSAnZWagAAnGMP/0IES+lZKaRWuKKgVXVQ\n9vRRZMAkgIe/K/uyIRmYop3fwsiN8VGGkh8nc8lJtL5vZnKwCCgOVOm2gRoU\nMiM+hgR5bGZNNM1bL/agAsfdageejq6xK7pfFLkTjBLxITVoDvSuU43nfLL2\npdTnbbmyS0HhCrRSloGSKd9yZPt5fk38ImtVn9Ogc9cbuy4DJ0T0Ml2VPVx0\nJ4EKyIS1kCFlCvRGPzwUh7sndFrQEjYrD2hxQird99S2yj5vApH8hi6LnYAx\nqY/6ZlSBj1nGmAGOn34/d82CoRtoHKkQbFtMAxRZTvRb0BhZ6em6ofjHcbrh\nczQWThK9SSAehshE4g0ph4AFc5RjqwZ5W8cOAHj//2nOOEcyJixdGNO1t9U9\nfsriY3Xg45niKUrOGIqo0WELeOryQakntjkLzbKS8syDZu5jY5bKmz7dwCFq\nOBP7Wi8uEoVarE5YffxysF65YMnggG7ZzhLuP2IDqeogr9SuYwIzDY6wic4Z\nyuvn8X9Gyj56lwKEmuiPKHMWG/LyGAOtKMrNXCKb95yAYvFcNxi9Ib9NYuMh\np/URtjLZJU3YVWgN/faIpNhYF3PPTT0fvXhfO5l93pvfWMETUFhyxVQ/jL83\nocAMycsSiAYcD6dbYDipXuReckrzmX2wxW7WxQ83QePK5es8l2T8sE4Hz1zc\n5QUO\r\n=2w2Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9fe845dcc69a65486cec73989c23bba8d473f4a7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.34","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.64_1623117700920_0.7420378045806104","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.64-renovate-internal-patch-711e15efa9da7769be6412b134547cbbdfe6cf11":{"name":"@balena/jellyfish-test-harness","version":"3.0.64-renovate-internal-patch-711e15efa9da7769be6412b134547cbbdfe6cf11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.64-renovate-internal-patch-711e15efa9da7769be6412b134547cbbdfe6cf11","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ffa48735c8ba07eb3e792340b10bfebeb66b492","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.64-renovate-internal-patch-711e15efa9da7769be6412b134547cbbdfe6cf11.tgz","fileCount":24,"integrity":"sha512-AbOcZse5Dt/Kge09fNK/g0h9e8f0zHvVCYXCWBxY8Q2qpN72Zgx4vjj1b7FXuv300GS1E9pBaZ9N/ESJj2HUGw==","signatures":[{"sig":"MEUCIAdMOB5/qPmk14UwkP7vubB4sKA4JXzZ7S6vL/faxSMYAiEA47ey+d6n2G/bTXhCaDZljfWAxWQOd3iOUPU/GOtjbXY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113316,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvtCNCRA9TVsSAnZWagAAkGcP/3wpUDa5FpaD2A4pJUlf\n7P27miomrKgKMfPwIyGaGkL0Ooy2A8vDe6HpXWrG+0EsGSKqzrNQOk7zmbeG\nr5l1Ef2t4I3t0ygNzSiP0l1CMUUoWJ0esn+0cS/Ef8DmOGzC33EsvS3QNEXe\nHbSSfgHWkw7rTzjMgySLYfpa6JpN5xCcWJKmAHmSucQlynNZCj+dQwxzVmAJ\nrWEwmf9beMhsDofQrpqGHBPRUNPg1sSPRnsMysc5ojHmpaWS19RviGl+DFWE\nlLQ94o4fdTORPGleV0U1X5tolZ8DbJuiWE6lvEfSs0hnBtV/n/Ij6WzDhhJs\nLidBzVP966GFaqRqcepm6eenjYDWEyTHMcv6WEOb37Y+9s34UXZ3YqwojMWC\nrUXekR8Wj0ivz0ldd6PKhnfUD6wwu2IecHfUCERzu0V3eQG+n0gl6D5AOjkB\nvrzFIO4WQNMK2T3MCwCaAWyIDIXIAby45DcZ/it4YWNdarEGwa0Ad8np4tR3\nvpTSuj6OP2g2Q3Cl73Ntgrc0gHBWoyZd7n5kKBW+KEi9/ZzLdy47h/TGFqwz\niIR38aJKmu25i4iQXYdLBVWyEtGFQP2l6wU0Vz6E3ZCdfYV9QqLlklF4Ljph\nzTU/TVHM3G+Lm7peHhfxm1CqyWOxf8GGkJKC/uOWKv5B6FFyixMTzZfyFWon\nLtES\r\n=fN26\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"711e15efa9da7769be6412b134547cbbdfe6cf11","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.64-renovate-internal-patch-711e15efa9da7769be6412b134547cbbdfe6cf11_1623117964941_0.5739229447460061","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.65-renovate-internal-patch-610bf9361b6f145d2cd122032036c83aa8819110":{"name":"@balena/jellyfish-test-harness","version":"3.0.65-renovate-internal-patch-610bf9361b6f145d2cd122032036c83aa8819110","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.65-renovate-internal-patch-610bf9361b6f145d2cd122032036c83aa8819110","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e94c5f33a19bf14a866faec9d018809a9fcc64f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.65-renovate-internal-patch-610bf9361b6f145d2cd122032036c83aa8819110.tgz","fileCount":24,"integrity":"sha512-KDPkd24/RL9Wjkc9Hz84R6SbJLBMDgWy071uDSdBSd6Ywi/QNHBf5Vz4yoAp0NuehFs10asraEqiAtIXS2kkhQ==","signatures":[{"sig":"MEUCIQDUO889buyp+1EZqve5lgnmYGFsf9UIompHcPR45NXJ/gIgO0p/idROIsBVeh6olNDC9tkMwPUgJxbRJBQnbl5rOws=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113344,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvtF2CRA9TVsSAnZWagAAtUUP/iXAbuUTHARTsEvbF9zo\nKR8IFxPzV61omzzwqonuigWLlF8lBw5CIPngaIRZb6NIgKVBBrs+GG2TKAxK\nXidMM/zHggCWoluHlUjrDH/ikTjNvL3Gpu+vyHPqz+3xa+RCVNfJ7mVtEptW\nfUtV98nJ8sg2CEmMSH8s+C46YRtfCqB5UC3TZJkXZzXOpTqjx9dLcBzpPUjK\nwtMx8xmhoSUTj9aax2w7bMBgUHYkMGITkgiZjixW2LKmy991C1WhNBdf3/9d\nUfOC7s6vLbf1Z1vQB7rqeetb82z/O9rZgP6EqzC+eq/rST87FCTJOGfQIHhq\nqLVvWNZnK5+fVoiFPOQMgZXolQfdbhuOBneqqtkK2vyfMcL+L5xlTNEWA6LW\naO4u42/nqsQ2X6Nm/TbbWE3IVVqjTNDyWbiVlpiRc1Z+t7lyKOnU0YFsj3Fo\ng4Lbwy9n7/XQf5YvFsljocy8rVbJ+IEzW+HstHYQMwin79/ikU1BeTzAzO3i\nKE51WfN3N/5b+KHbCx8Wy01rlt7TWIRapVmYkfAcYn9mWVOycee12DvW24nT\ngNqpe5wW4uV7mN/3lNAmJ1jgrftpcV+CT5m8441bqARg5vvuGF5DgylN80EE\nrcetbU58/MEv88EL1IAdBGV5AlYsq4PDnqn4YtVr+AG4zZBFRy+gJ1DNUBea\n/G9Z\r\n=KezI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"610bf9361b6f145d2cd122032036c83aa8819110","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.140","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.65-renovate-internal-patch-610bf9361b6f145d2cd122032036c83aa8819110_1623118198748_0.3398845515393427","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.65-renovate-internal-patch-f2146253bc413318eb2034ba9b4c9566886b68c5":{"name":"@balena/jellyfish-test-harness","version":"3.0.65-renovate-internal-patch-f2146253bc413318eb2034ba9b4c9566886b68c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.65-renovate-internal-patch-f2146253bc413318eb2034ba9b4c9566886b68c5","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba3ef78b8caa3d01715f1bab702c7d9c205e5cdd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.65-renovate-internal-patch-f2146253bc413318eb2034ba9b4c9566886b68c5.tgz","fileCount":24,"integrity":"sha512-SBVqd9OoEPP+Ymhxv4YPO/dhRkuNonWo2zR4G4kAz1iMf0gbONIqi3tfU5c4Ie3+En+oJi/WdYcF0eR/WiHBIw==","signatures":[{"sig":"MEUCIQD0pnonw50aRi5HaKQWlvcYQNZFSTdPo9GZGtue5y8pEQIgV1siT6IJTTCIPLVF8VbnCj3pxDnJqimLZVss+Df3hXY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113314,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvtLECRA9TVsSAnZWagAAWSMP/i+rs0/1RUlzEIwzyRQZ\nqPvg2BFBaYPAmL9hREFv74cOWHOFmF5XD9jYR6rqA9qkZ9R3fQ2r2OOiSBPG\n7GQWX2UOK0bmTj31ZNJ0/nLxEVSpQBx7MAo7fzPuzfsQzgt5K64q0QnLU50r\ntPD1L0SJTQXoJW+ze62eH/kdZmI/U4kSAHu2wHP92n3fVt6ZQZKnU0M9IiTV\nYL+itmMbG92qXVw1REPaM7HelZIZXoovQs5F3mgZ5JbDFX7lEvhKlvCH9VNC\n8dhHM9TeGM5NRUCPGIKN8lb5PYmuBvLlw4Q4cqvnEXdMPEU6KrEErX9m1F+a\nZTgBjyjD5y7FYnFnHkZOe9w3tsZPRuTCqf1c1Lg5UQ9CVsaAaliJtizaLZIC\nHvAbfs37Vkt2ZVmtGLi9QTNZeImbF8vOMyfJ2xeabu0TIj/pcjuS2xwEMKz5\nx6n2zz/BcomF5IB32Dpl8QIz4Hb2pREVnbg8G+hEq+ZaeT4UYm5xQMKD+5MC\nz+/YyyjgPyMVmMhu1kJyITuM/3IsRUhZnaVzSaWyRDSzrIqpMsUpXONaVPAB\n+AcO8bjBjhRw1ts/ozm+lfz4VyzH2QXVrmoLJt/LMbWK8IYtPVBJcvUypVCg\nyfUac8wsNDYIa19PH0uumpwR5TDuXdNb/3Y1/nZLV74B0eHoaw3HQVx9OFly\nQtgh\r\n=+nzq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f2146253bc413318eb2034ba9b4c9566886b68c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.141","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.65-renovate-internal-patch-f2146253bc413318eb2034ba9b4c9566886b68c5_1623118532771_0.04833809203281891","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.65":{"name":"@balena/jellyfish-test-harness","version":"3.0.65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.65","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"50a5b5e95c0a3ca1f2ce47fff5ac373f51400903","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.65.tgz","fileCount":24,"integrity":"sha512-Vfz510ys12bp0jOEVQlprVENqrkB47kXi4wQmws3QNTzGSfBuEXpsO1IFB8c1MFn9SbxU4b4rtvocwMd3d3CTg==","signatures":[{"sig":"MEYCIQDqnDnDViBaPPdu0L6Ne5bT0PelUVAYfqxaqMyK56UfGwIhAOblTL2rrAG2huFG/Rf/mHh+zx755KnFx5OZUCDq5Z/t","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvtOECRA9TVsSAnZWagAA6lkP/1uciSeC+qcqmzdHWXiJ\nJg1RtsGmhqfhgJCxzUFP9bxKnxGxyGZDFrzmVLh7F9ekbBe2388zXtI2xgnU\nu+hhGYcklDJlaNaHG/4jEoNN8bzL+55P8NloeJcKAWGUWE7HOXukyoKdBHWm\nkJWkaaS5nS8wDsdn5zcNRlO6XP4eKTaEq05Mc1+43WdeivTwOx4S2fCdBvbw\nZybBeueRqWodiGWQpBd3McLykkkz1MEv0zHOrjO3UbLCTJNTkr0C8iG+5b5/\nIUpiFexnhDhC/zrY4McDVqqvLSf5b8RC3YL37gYkkQC7PnkvkdRkD2nYb+2A\n4CFAFMdx1v81dPCBycFSEwtWRD/vBY0VCDPI0rVoKl0HrefU6CA4z4tZWXlK\nohL9q5zNHtsZhY5MPlAEmNfhi7wqA9Zge0oBm5L7i3E6VCVhVzA/+N+zZ/xP\nHtLVQ7YLljqex78qu5XoZaZw+jnC9ZMENLi69k6y9nM3pfhNmxdWXD7pLExK\n805my42CvAoSIMHT2LLoiXhmn7pZK5boREVuXlul6JR6SyFncDHbW5X5XzSj\n3l7wcUD+UFBWvWnAK1Xm8GsP3F2gqeg2jtyKs2rCji0sIdcttiZtR1W7cVHc\nrIpA2+rksOHUpXBzBwOf0r0koHlkBwAS20//acgUcuftgJqgu98a8t4tuBrC\nzGTM\r\n=DftN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e58e0ddad1842ceeb2dda14b1254f5948e03ce5b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.141","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.65_1623118724176_0.5947268220990576","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.66-renovate-internal-patch-a017929eb5c0756b2b122d7c5849c419e2fea1e2":{"name":"@balena/jellyfish-test-harness","version":"3.0.66-renovate-internal-patch-a017929eb5c0756b2b122d7c5849c419e2fea1e2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.66-renovate-internal-patch-a017929eb5c0756b2b122d7c5849c419e2fea1e2","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fd4a2e97aad934ecc0698effd77689ccab7c8309","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.66-renovate-internal-patch-a017929eb5c0756b2b122d7c5849c419e2fea1e2.tgz","fileCount":24,"integrity":"sha512-h1hpNgAOMyOQsnXjlMOH/lnbpUpKQxzS5kPbQN6UKLf6xd2ShnNyPDHH7XKu42eH+mBOBkoalB8xcp4cJ6ZL4A==","signatures":[{"sig":"MEUCIC4DMPrX/2Usjm6JsJsasga7rNQVSZpu3iP4AkbXnm0SAiEA8RvnbvRsAK8ADB+BAmRamcw8fJNtjchkSbv0TGsJTbM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113419,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvtSjCRA9TVsSAnZWagAA898P/jONLiuaojWn5RLEcE6w\n+nz2JU5qAusDAV5eKyMyZYaoQ1PUpIm2FLZxAUec9m18VeHxrHGXr+GBtHtZ\nmy+sCqMiTHfkYBDpLst9x0/2yI8ce9Awurm2SaPMj1psUHPEoCo/rbxZA9Wb\nHKBg8U4EHWl4Rhx8cfg77562o32X5lbsZoM+4aOaXjMds5cvQ8ABV+mYi/AI\nHYsnrUePLKPA1kEfmVBJM71RYDS+7MYHVr11u9cnctxPEjNHZAfv6589DDca\nW3yR4dsQpm7zvFea4s5MqAPUjjCns14wI7kJfvw0Lae/q5mrTKTAYx6qYVyf\ns60VeK2lBRH15v3b3eS0XvShgwH9qEPHtrP6kszb25qrZjkzPf3yRK3kjd58\no1g5TUSGGAriyrz1OQWzFpwAP7M8xd/MAD+UwwCj/PxAeIDnkDyE9bSG6mfd\n6EGMoZ3gT5f2jLHfj6KEq8WfIK7O0GidujMOSPtGTPeuvqH7tSnHtlfxHwzV\nr+9OyYyW+QDlrGcGo2ZlFdn7w7JYG2fJ8s0o5DLDOaTcmGBxwMUp58heCiWj\n/UovOCPcqWx1pqvb/3rGoayelm+vJYmXWaP8wuOUG6fbrH7lAACh4QnOwNcO\n+MaM+H/M/F5sWhEECsZNbJIidx89kvSPxUjhmI/i/lZT4tT7pyj/4IUfEoFT\npv2n\r\n=6s0a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a017929eb5c0756b2b122d7c5849c419e2fea1e2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.141","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.66-renovate-internal-patch-a017929eb5c0756b2b122d7c5849c419e2fea1e2_1623119010871_0.4775825649314098","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.66":{"name":"@balena/jellyfish-test-harness","version":"3.0.66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.66","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"03d7c50091ef0e8c486d3c85bfb7525055819ea3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.66.tgz","fileCount":24,"integrity":"sha512-7N1LDQQI0XW02TFPrjquYo2VI1iXlpVmqIfjmaOyfCO9z/ay2jJOePmymHFn+bhaqEN/YZm+8lXy4pjACEtTtg==","signatures":[{"sig":"MEQCIHvxK+fBl3MVTaxm3ZpdT5uAlpvKoKi0g1J79xctfXl8AiAq1CXj+f3b8KfivR4chuDgZ1JRO/wBwWNgW6/UWuUUgg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvtXBCRA9TVsSAnZWagAA4ekQAIXUpA1Eg/oUSg50J3uS\nJhjhRKluPMqglGd8kWDkvOJ8Ee057lP/QtsPIeGYDNuiCoRi2mn3zOnm1NbW\ndxS9l5QDNT96KfjuSkkXHkAPr/ZLVRsVePg3BRRkA3ZAzHrx1PCKW3h5zfi/\nYkjTAl5+XVi0j2shszqOyWaVZvyaeeNklypEEd8GuCA4dKurH3EmSUvwPgnR\nR7xhzNEeKlrKJK1TWCRBT1GVeyVYze3q8gEUSGphIYetgwSdGT5Sr50kXNI8\nwxwJeiOnpp5C+hQnBSlpsWOUNtfR3ICQv7Fwmw68BMMxK9tZ7uu8N+Mu/9d5\n5i9+f4NkeI5UFKmDtM99iVcyGOqDW1N6BmB1Lj21FNN1agfKcHdM2LlvfNlp\nVVDXgaXVQ2hfoD+t9YIUvxc/LVjhYRBI4Xry38HctkFuEyZk2Q0ByWxVbKfy\naVlKomPWly+mqQmje/Jdf4e1T/UZmeZpGlZh6mYTvxdDEsEc/2Dro4P8ssLK\nLTR0FPkVO2wc3F85Ws1kf8WkPAUC4tAO/liIRSyd1lkjRn7XQArMmxFGz+km\niUseYQO4dRRKgv2XrK3FyM7Chm21vEpTpBJOsy3WjM4rPUvtf/j5h2FwRXlk\nDiMmHP4VOnCzVUKQ257Jf8sAGlm3Ff6KE7k10g2YUMnxIdGMznR1PncZsCgS\nzm+x\r\n=QhMl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ea5ac109ec00b7aa4f28b370f04ccc1b8c74ac5d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.141","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.66_1623119297771_0.9078471384519253","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.67-renovate-internal-patch-a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5":{"name":"@balena/jellyfish-test-harness","version":"3.0.67-renovate-internal-patch-a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.67-renovate-internal-patch-a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4cd4bd100f90aa5520b87390d1c42801db69b59e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.67-renovate-internal-patch-a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5.tgz","fileCount":24,"integrity":"sha512-4V/67MxlDsypJq3iwo4Xe52WHPkN9CGdLhYvbkOIxkDV79WkXeu8jPPqsNpLjdQk1zGyVk7zBV/SJGiY1+IPng==","signatures":[{"sig":"MEUCIQCX9cH7Pirm5t6xwupPxWY2LAXKnIICvMvyDIzedNPDkQIgCIIy0P+xpjUMhu7pehw2bKdxzWW+3pWoKR3KGI+S9qs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113493,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvutwCRA9TVsSAnZWagAAGm4QAKIR0VRyqqIWuRwkxF1I\nFDL4KrrdgFW18OVaw5R/G0kWsljxR5M9y7jc5KCyY4C8h0gH+vHrMdKMBklQ\nYAmVXMsfknF5iin2nrFyBCCEEir4yPQa1iwjxdCgIoScupZuet76DtAd5whO\nYlBCa9ajX4O+PXQ7fkNBl3zg0sC/HkjjckNn5W0w/yKWHREUC3z2C8Ihd/fE\nphhIUcBywC1BOrCzagchJMDI9a9T64j8vzdmNvMAnDjrM+kSpc0N/s15iez4\nBG4kG1J65wDPrb9LTnOlQxLuGZmrjNOmJBEMtNNcf/i6OZxowgh2PhIwMnz1\nmmlus06C3Sn/WK1i8MCLPRKx0J/OtHnqPE8jEtxT2NrB1oDdLCjJHSaJQF/+\nsvFGjYk0I06zTJScx7ECluvowo602HFnc0/ysJPSLXvGdqQqooV39jhzN4Y2\njMD29fykqYWEXH3nm1DY9gxe4ify6WC/w9OCJ80MMIUH4+v59WdSaTQROgzr\nvXi4S8LLmUKL78nqYPWHbUbxEJlFrr3or7jYxb+oNQwemgkNHmiJ8rkeimto\np1rjjVYIEqe61eFqGxx9ECRxDSL4+Xy88nDb6wTxDA/oxh60vvSI1uM2p4uF\nZ67bxaTH7hPz8LKS2UmckdwHaWSbalyPrBsReAZgpQz+WvZF3bsyJTpddoRF\nfYsu\r\n=8RM6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.67-renovate-internal-patch-a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5_1623124847925_0.6127281586568627","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.67-renovate-balena-jellyfish-core-3-x-284ed3aa415616499ee888b53e96135e119c1493":{"name":"@balena/jellyfish-test-harness","version":"3.0.67-renovate-balena-jellyfish-core-3-x-284ed3aa415616499ee888b53e96135e119c1493","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.67-renovate-balena-jellyfish-core-3-x-284ed3aa415616499ee888b53e96135e119c1493","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5065bd8c8c82da122383fc2a8ffbd64255d0f412","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.67-renovate-balena-jellyfish-core-3-x-284ed3aa415616499ee888b53e96135e119c1493.tgz","fileCount":24,"integrity":"sha512-HQ7wz8tyUZaeW3SsEEqf4L2MCzV4AJ2UwByjhT3HAb/DaMX3NCus9T8c7FZnpERAtPOp1k3YDBYzvPmbDvcLLg==","signatures":[{"sig":"MEUCIEC4tLf5Ty7WjVE+RQpFD+M0DzzTpAZIoC5PjRRGtmCsAiEAyatPCh+E3Wb4vqStoyu0r2ZAAhU6FsaPjGx9xzps9f8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvuv3CRA9TVsSAnZWagAA0PIQAJ8VPqZymOL2c1nELC+1\n33lfmvgujIpR9dAUZzmsmQyjfLHHP9daWdcHfgKMpSQJj0RzdvqERDTuB//V\nHEjRTxobCNGuuoqJJYKls/mh2GK5ou42h+Um1zaOa4gNaIUMoEmYzf869zgC\nORwWbHD8tUudfzy63x5SGUiVcprnSb0LD95fRJlQQDGcFhx+7YB+J22XKDtv\nGvvYRmrQarrMguv3Tv1k1yq8+PuIjMaebnRC9mOgsdfMcTAlmJxJebTp/sep\nPsX8R48USnN8p6G2UK/xdDBh53DvAuMmpar4vT/stvT4pZqy4AIVflw00b+F\n4qfOfTR2RGOhUMOoMmqstAhE7L8AGkmJciTcYsQLdbq5hcO5GM6ohZR34RPy\npL7uXgNyc5GNeSMIwaxjtEpscftVtZmroyC/RsY8pUEdxkY9MejK3SG5Yb2O\nfp1VPH+gYtNvcXKv9b/7sALHvrKDSRWh68K0j8H/zCRHGJmZCthzVBGEeI2x\nmdgKl0TxtFbpWDntJCF8ha8aJqplWz4qr1mJb8qKwYhsbQgBllZDp4NekBW2\n++dEVW2ztySKlsq0yCV43ySVfcNXUbFJSZdxwY4/ILsBy6lxSU7NKHt7dt8p\nS+v8aMkwQKZ0i7TLNcCMZ/MpPGGWsUNKHOJGXNSt8haOjqce2lWwyhFHH2LB\nx1jy\r\n=K9ZZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"284ed3aa415616499ee888b53e96135e119c1493","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.225","@balena/jellyfish-queue":"^1.0.141","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.0","@balena/jellyfish-plugin-base":"^2.1.142"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.3","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.67-renovate-balena-jellyfish-core-3-x-284ed3aa415616499ee888b53e96135e119c1493_1623124983432_0.11646198088724669","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.67":{"name":"@balena/jellyfish-test-harness","version":"3.0.67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.67","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e56b42f3c9561378a4325de16f770b7779fb8912","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.67.tgz","fileCount":24,"integrity":"sha512-xlHgbCXOSZ5IIYaRTsvMo6t1OA0wnUeo0cn5Se6bT9GjPXe5dwgwbw2X3bymLVC94B5n3A+jdmoIz9ucnk0rAw==","signatures":[{"sig":"MEUCICmklphsUncUmddJi2sviA+ddUpMukdbmL45hQm5fuH7AiEAmXVAADBq9T3kUhvlTtjuuhvTaem9UxqOZMx9KJr4JWI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvuxUCRA9TVsSAnZWagAAOrkP/io13eYYNeFA2xbzTLre\nGjlg9ZzRoqNLMw/W9+o1W6oNMmf4LDSDJgLeClQfPi7XqcJB4y+d0cnc2w0F\n5KBgFlr3mR/Y+DFrdxEwTxeqSvo6vbDCbqzZCvUxWTorKtfWTfwPFeVXTJEF\nYq+n6OtjQvoFPXy3Y3lQcT2vfY16JsA+Djv7WNrmkMiqvXORW8iOujVKFSB7\ntaz29T1+p4Tu0oSenLRtkQ96fkEq7Ke88V61Z2rDI4aoD0KjTJ25tdfObn/i\nyengfGAwVMAMC6H05oFfXDYRgeSUQvwJXDP/ktwg6SwlWdQ1JKHCzuF5/ocw\ntTEsazJ1PcMDCFTfJBJPLVBl4JltyLcNBTtvGMOSZRuC74kpck7gQjDSe5Vm\nrMhnko/A7Xwj7N9QXWPLLx8l+kovdDGSEeTJ/6iQxz6kuHs5E/oRJPO6DAFS\n8p1v3i3xPRRFmC9fbVhbwMRG0NOXnJ7gSUrov2iMUfBCaC/gVo3GeiyEulUm\nKrOj4KVq8O4aWwKIahXVqoPWuNRu6jJ5MHv1LksZx5ASDdyWnS1VcC50433w\nTsJ1/kx5/TF/i36jODEZ/1yUdjCGnTPdZgzV3WEfYlqo2azrvNa7AqrjH572\ntoIk5jZfI7Cs1UIZukHUxs0wiIT6vM14LDXOV6S8TMM4cmHp86AwKKtRmAW2\ngODU\r\n=JE+Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e80733205790fb3803ef73100cee0cba9b9baf31","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.0.35","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.67_1623125076665_0.9551494243413752","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.68-renovate-balena-jellyfish-core-3-x-7522eebd1e71ff9b8a21ae49b773d130e4a6807d":{"name":"@balena/jellyfish-test-harness","version":"3.0.68-renovate-balena-jellyfish-core-3-x-7522eebd1e71ff9b8a21ae49b773d130e4a6807d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.68-renovate-balena-jellyfish-core-3-x-7522eebd1e71ff9b8a21ae49b773d130e4a6807d","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ceccc40f21bb29906700b3654a1b828a85353306","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.68-renovate-balena-jellyfish-core-3-x-7522eebd1e71ff9b8a21ae49b773d130e4a6807d.tgz","fileCount":24,"integrity":"sha512-0JGs+5ZMLuhCZdelXsuec7AT+uYEeek7eXZl/R8RIZWBDhRn9T8pWno5CyxZ+wHeJ6+pha//+fzxTX+QhtFK4A==","signatures":[{"sig":"MEQCID3vPcbBlWqUNG0jd0Lv4Fq74J+Euyn1jpixju58eJkcAiAbTlDem5+728dY9Tnn9FUMB06rS4vBcemn/tkgGfIAhA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113606,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvu6DCRA9TVsSAnZWagAAS3sP/iAsNp+ZN3IDw6lOPYG6\nFZXeDKUGvYYdVW3bFWbjCqovhAqcRRoNVxYo7zPx7jknEkxvwvjrWGK4RgVJ\ndzu7UJEuZbjZH62BQZ22RtPSMM1wYeW8+/CmLrmRbpI8WXjGqSMQEZindO/M\nQz1RCA6mjmrSca0nudM4TJ0sKI91TBS4sQ9XuUsPcukETDcYQo+X9w4Xeavb\nyFs9MqjbAjENowBPSoENRVhPjC91mK9X4gEgbSXvUdPXHKmrp8VLHV6PFmqs\nDjfkfOb+ex2GhcoOshRRhk0TqLgCJb/LEkhF2qLex/xr7Eb6o1T4nUsGsy+t\nX6xjZyXcD/h+dOmNyHxylWNhRnvWAkB1u+oKZEwxjpMRCq6vBr5Lv5kKKHUH\nJY/XGHlfLc67Ylrmm52w0l9GJ6CdyQAlJQLadheE/3JQh2W6nEzPwNquR1mW\nbSJ35D8sUjmRGIHeoY0f8HZAgqcYe+HkjT2CnjDb7SF/lzcaX/C/7dtPjpDq\nziLauJjb3yizgB4nQnQI3LaGRP95aR8t0HHVhSaQP439sng0dUfQuskV3rvg\nd2g3LTmpel6muV9yozZqKvcVcvdtas2WEeVbkLfVQAk8vopACR9btnTou6ds\nVGMtGb5ui24lJEg6YsxwiIt99hkZWRApbT15feVDds3bywYNxKZD8LINopjn\nSm5E\r\n=jDsK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7522eebd1e71ff9b8a21ae49b773d130e4a6807d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.68-renovate-balena-jellyfish-core-3-x-7522eebd1e71ff9b8a21ae49b773d130e4a6807d_1623125634978_0.9854268098420425","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.68-renovate-balena-jellyfish-config-1-x-62d6c9d94be060417fbb7627b31d2acd51fd7df6":{"name":"@balena/jellyfish-test-harness","version":"3.0.68-renovate-balena-jellyfish-config-1-x-62d6c9d94be060417fbb7627b31d2acd51fd7df6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.68-renovate-balena-jellyfish-config-1-x-62d6c9d94be060417fbb7627b31d2acd51fd7df6","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa731375b704431a5539c14205f44d51bd9f57ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.68-renovate-balena-jellyfish-config-1-x-62d6c9d94be060417fbb7627b31d2acd51fd7df6.tgz","fileCount":24,"integrity":"sha512-nL8HdQFLk4HY1EWY6H6mIadrUFPHD2FNhVnQaLHUjsPQP1ExgMVmH1vQIfTXfTlQb8GnEl+3cmHpiUee3mmHmg==","signatures":[{"sig":"MEUCIDHOTlODpgHktzuAknJXTHpIdElwTgbVWIO8Sw7fFTHuAiEA+OaQ3Yi6ue/yfYn5TWnEwDLHY0icoGNwymkbx1vfbVY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvAbCRA9TVsSAnZWagAAMM0P/jX0agBgQ48tv7UvSj7h\nun0bFSt2fMGxGtBpD2ecAmMUJXJKKym3cOrVofvoqu5oY3Oo26jovPYX8kVw\nTSkNaXrICbecZALfg5GgdTuVhaamYmLe+W+LGlTLqsftA5hq5Ddo2qE939FQ\nmeJXsTEXHop0zg/nXTiGtBk+vy/1VJiOeheCff85vZGvqy7MWkThCqfh3TLL\n7Q55yB92S8NlAMDMpq+0bWKOQV4rrp90QJ7HKW71mVMR9vB5BuOoCVeq794X\nk65Jz5yUM2E1yB3H3u/Idtdks+JRKIo71c35/27RuKk+588TPyJNPzr+tLac\n7yIk/OG63REDEWIk9XlJuMtIQw3/wMwyV+HewDrPi5B22fVOJtAEA2ztLlLs\nYvDSsInFS8Pi0ulecv6naBuXlG/ccwk1X8BXlRvv9iPIXM8O2N+BhkRY7QLG\nU9Vetq3fs4AwDOD6RyakZXClFmuGg5raLJdXzxLpFHz/84j11n8pMIJVb/tE\nKbOOwN+k6KEmELc5/+mZmRzMgg+mGywn45j3kMyIKGbcB419Y5q2pwkSHX+o\nOi71dZQanpwqn35Fy78mtkXTIizgYAdCW0oBd5/AwOpCUYgybvMH3YgJRwCc\n9/ArWAkMFs2HCiv0OA+8Q+2ICmvE0VlNgrdtdogBOqmjEXqark/6c+pwTTle\noWtw\r\n=I65f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"62d6c9d94be060417fbb7627b31d2acd51fd7df6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.68-renovate-balena-jellyfish-config-1-x-62d6c9d94be060417fbb7627b31d2acd51fd7df6_1623126043286_0.37457051897817917","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.68":{"name":"@balena/jellyfish-test-harness","version":"3.0.68","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.68","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f8b1f547dae8598a0f2caf0796b33c553a3ec45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.68.tgz","fileCount":24,"integrity":"sha512-0HNbB44zqlZbrWNn9viAiF7ob28HWQjA71hZ9nhxs6VykYM/fB7qsk1fW4RvBcTZ2U0+ItA7vx08URnUeDytfA==","signatures":[{"sig":"MEYCIQCPu5MFAXtKIgCKdmRdS/24tg7aJLIl5d/T84CCzrhRWAIhALfJbzhBu22H3L9+jg5M+IWW/JOLZ4IrvhOehNyf4Eq5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113530,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvCVCRA9TVsSAnZWagAAI2sP/A7hv0nUhCw7waxe3bva\nTYFBxKQVMsK4nxj33c/zI9RmGq4pY4S8xZHpwM2c4iK1LsKNjPIYGAcV0utj\ntcE/nJLtHxvvnKnkEDZ1bgRBbKhR4aVor4gFvH5QBEdwhatYRz8qM/zckKbW\nTv0NibhiCmDkBa9vfjxTkRfuBLMn+bUILrYposu9LCfESHq650BmqezSQaxH\ngkeZv8Rjj+yifmEnjZ9S2y92f7yppeqseNbHyp4AmYwzB/xrlObnwNFPSgeK\nhlnEHCiq+ERHMKKtNE33ldzpMcqg+08QyYNuH/byA9CS51t3d6AVnhgwVWUd\nZFpp0p/ohu8xs5lgBRH4CILBvF+K9CTplksF6V2unD05PREFZc+pwnvcwGfn\nc5A/uGnmd5KpajaxxuIZhBQoZ5c9MCRBaD6zrAuZEl7tc49vH8p1604UmDLk\n3bkx0PHH4WeDRLIy18m1IkubQdfQ5uccSQAImtordQ2W9F48p3/93ODQVzzD\nKMfFyzHH7a5w4Zg8O0sxRi6/ZHFlHk/oYrgGNOWXHHqiZIcLUSeBzOz/cyP6\njBJeOF4iyr+y1mQ7IvTLOYHsaJeCtvf/I9Ha1ApqTPwbFRdPxSQopZ6kYpND\nyvQ7+SU5RO6dHBWqapoWWOh9gsEdJopqxnfaJ4APbiGNsGRYBR3VH23ckBkM\n0KVt\r\n=7u2J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3b8e44bd6df94d2602b00a970166b0c7ad7d8eaa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.68_1623126165157_0.26130981827746513","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.69-renovate-internal-patch-b0298197b25212e04e925a4485f5304a5b0c85e7":{"name":"@balena/jellyfish-test-harness","version":"3.0.69-renovate-internal-patch-b0298197b25212e04e925a4485f5304a5b0c85e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.69-renovate-internal-patch-b0298197b25212e04e925a4485f5304a5b0c85e7","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"afa71248868a54a3dbe947aaefe0cf4bae93afb2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.69-renovate-internal-patch-b0298197b25212e04e925a4485f5304a5b0c85e7.tgz","fileCount":24,"integrity":"sha512-pc6V5NnEnomstIMG5AFTtG5bQ7uOByFRljDuiPAE3kCNwm4+F+uyPOysi3EYG5Y7sGl+KJeDT6p4Zoh09T7BgQ==","signatures":[{"sig":"MEUCIQCaymqZq7Uaubd4sbtLJS2EA2AqRDBshbhhWtVHde9dGQIge3bGO4qrPxw8hmQgrU6y64uwOcMazOHh34KvsLmnEzQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113707,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvH3CRA9TVsSAnZWagAAjY4P/iytHOe+UjSdOnkkCvwX\n84azWmXEif120TpR2Ns8TJ4ah92qCobcRK5comNy4imQibsAzXKj7O2y71/H\nWZMiJtX2UnuKHutbZrqDYiVl/nouedF4dzO7UAjXQRifKPnRN30KyKkB/x+3\nRuYy9HPeGaP10IwPYB4WO7v4/rarK8JPL3SlOPZR6jpc2EO/Dcc6j/wjzOEr\ntxJjbdGI6xZLHIWnVbyJFOK8l/niRTnvsQguYiNR1aNEoT0fMIQfgVcz0z3g\ntoN2owEB0Tg7hKED74F55TCYTqEj3fff+76FJapQziKomTFPUJzqTomBWHXN\n1F89kEW2LtaxLg0BRIqpZ8nLModa+taLnizL9MzL85tygUGqDBoDXWQ+GpS8\njFbEWLGYQuVWOURhKdHfiIIW2o6YaGM5NgkMpLlH5gByHhm7KlEAfw6WqTEG\n9J9Z1v2oZaT3kZh4zLKhEZ4tZVuHDPovFNjkz9AyCZxZ9lYMxNIbWwpCWuhO\n1yr8o8tYhOCbAFq6x66c1lFJjEjBD03052ppk/X72g5jBS3SPyQBcjNGgGwq\nzGsngO3GgrC09o84pOSILX4ZLY4wcF9iEPJfThCJLqmn5sTNJ342fcck0/Fc\nRZ6ak2mvc4Q6yB/rv2Q65lD5QI7ujJh7or1cs8N1DZAKIgLpVLAiNzGATn4r\nTG5s\r\n=BPVM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b0298197b25212e04e925a4485f5304a5b0c85e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.144"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.69-renovate-internal-patch-b0298197b25212e04e925a4485f5304a5b0c85e7_1623126519561_0.19966862464080148","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.69-renovate-balena-jellyfish-config-1-x-350320b415d3b1a3ea19ef714a82ed62744c14db":{"name":"@balena/jellyfish-test-harness","version":"3.0.69-renovate-balena-jellyfish-config-1-x-350320b415d3b1a3ea19ef714a82ed62744c14db","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.69-renovate-balena-jellyfish-config-1-x-350320b415d3b1a3ea19ef714a82ed62744c14db","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"768a7f7783a76f44c9efa6b5cf54b08b7c39fe85","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.69-renovate-balena-jellyfish-config-1-x-350320b415d3b1a3ea19ef714a82ed62744c14db.tgz","fileCount":24,"integrity":"sha512-n/j3WGiMVlo1fTI4K4f1mCzvPW6a9SGfDJUPzLvhvcE96cNmKmzcTOnHtzIwiU20U++9GyrOAn0RrcQFNMdi7Q==","signatures":[{"sig":"MEYCIQDTpC4gmwD7Ac5NTz8zGsG1eEZb2tUNfX4I3YvOqyuDYQIhAPwQLQRx2iA1t2JRhZq65P2j5eBChfZS9L8F6KuK8v+y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvJ+CRA9TVsSAnZWagAA/28P/2u2DzmX2Z6Y6tESlIr1\nHw9l9F4XdvPYrQGm1a0aK7KiPxwONTz91xRlpa6khz0RC+VtQ6y4/NctnRMp\nGwLDD6olDDXF6oTuWj6+KNksALYREwOqXLJQ3OY9MThbBB4xWtL3vQD9vAf8\nseKUzOQZHUK5yHunufex5t7bJ/M9+5OqeT7Xwmwn3Z+FRovBemQi9Pytmn0O\ncdvSqV1iaRHvEDq+sA8StWShGDMm4m09qSTa2SCKTMUhOks4Q9eNBI9RezDC\nG3/8355UQy2FDAKrNnfeZmx3qGkXJarGvq5FFM+TKPLlTdfwUDpYJXMG4oq4\nXN9zUzDPAEdpAFhP3IkgYOY+bdETWwEcTHTcAy/pe9PyHNS2UF3szT8qAes8\nWq0PbREWyf1ZAb/3xa2oKTd70JPl1+flGJgoIALDim4YvpfQCVEmACoWCrkn\niAozL063yknOM+me4kKk2z0zxIKJIh+gdzWDzMZ2CQKgHx3xfZpE1wS7Hldo\nYqmWoJb9QPGHMg1McpfvIAtrPUNo5JdJF8FT7CC3tZ4dStajKZ87SwyuiY1D\nj3UMS1AwFGlPrEvIx7yuRPQX74xV6dFaRWdBf8VOcgWjxc74CVd2l454VAXD\nQoOr8jKhHbMqBAD//vzUdagOxBDVmNcI3rxSjeQQfr4XiTok67qqRqaFzNIO\nluRe\r\n=bMEd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"350320b415d3b1a3ea19ef714a82ed62744c14db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.69-renovate-balena-jellyfish-config-1-x-350320b415d3b1a3ea19ef714a82ed62744c14db_1623126654719_0.05720346012551314","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.69-renovate-internal-patch-757b3a6e5573450aa6602097eb16f55943f222df":{"name":"@balena/jellyfish-test-harness","version":"3.0.69-renovate-internal-patch-757b3a6e5573450aa6602097eb16f55943f222df","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.69-renovate-internal-patch-757b3a6e5573450aa6602097eb16f55943f222df","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b02b77f8fc9d9d45ba1b9fb9fea252f595286880","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.69-renovate-internal-patch-757b3a6e5573450aa6602097eb16f55943f222df.tgz","fileCount":24,"integrity":"sha512-rwJl/oo4ASwDKGlS2LDTTA857+OLQX+BLfdjh1/pAsmv3IsFORQ4VQZHuB/pMUU1nw7j7FJrEhH3iAQZ8gOY/w==","signatures":[{"sig":"MEUCIBe7DeRuKSqYDNW4OIcNvkV7sPozMf4c+k0ZEE5+GvLwAiEAv3QbtoYw/foYNbR95mYxJVN80dqU1FhaMpLkeNir5aM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113707,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvNlCRA9TVsSAnZWagAAs0gQAJWt3NhwYGTN7HWinfvo\nog+RmdL2cra7fN52SGbaq3y6zqaKBNmJGAFzD1Dtr+2ySf6s/6RE5sNWhw1n\nNyK3KZkOyQ8a3t2pAHv9UqIg2dzZEZpSap4WkxOOcPZM4mc+R1ynEwXyIBsL\nVigVzjimXEXXrIn/asddIYg80Z2rctXS0L+84YsfweC4XbUqSolgIAiQcNU8\ncv9PHg5TXz59DJzjPZLcsWW5/zRbdGiAOWAqFPFjdZC9hCq+hIpwO0C4LC22\nwvcn7U8JrYb7EbCY060mmfiDew7s9p+Ygla2MooTdNKpNe4t1LW62RiauMVs\nDD7e/dfQLW0rTaq9uR4rbKaJpO9UjZWAnyKGgnKRNGskEiBxLfsIWSVz4NPL\nuULKti13tRVyWpAg5jiofXLrJAycLFJj82857Absm5KlJibRoKeJhk3mbEnZ\nrSKjh9GQGQCgjCRJi/vS3uH+u7CDp1KFKs6IIpx7m66OHeJhjQq73EEPGGq1\nbw+ClSIp3nXvO71KiO0N/rqFqq6CfWbdlRrFDI9Qrt8yIr9qYG/xOzju1Ten\nYS+ELfOfkroQedvGRiany9CBA187dn4/hDVw2GmYkwJlMfCiSSe0G/sHwwnJ\ns4sahfBIGp14IFAjGTL4nK2BoL7reIfG9RwY+zHtZxWeX2F986Z8YscaRobc\n6oQs\r\n=0XFF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"757b3a6e5573450aa6602097eb16f55943f222df","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.145"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.2.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.69-renovate-internal-patch-757b3a6e5573450aa6602097eb16f55943f222df_1623126885767_0.20526176364956417","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.69":{"name":"@balena/jellyfish-test-harness","version":"3.0.69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.69","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e20fea7294a6daa0712065e1fa2718bbae3ed2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.69.tgz","fileCount":24,"integrity":"sha512-3QxUoCFpz2hdOOh5j2QVYM5IcBtuMgBgwFv1zul4tQJaBzgj3SLRxe6Yaz3RA5F8SmQPWKN7J6IJSwZFy996vg==","signatures":[{"sig":"MEYCIQCRYRRWMcLCsuFNQ/BIUQouIbc+zIhuyE07i7kPYUDDiAIhAOTSY6H5+bR04TqkNAmT6nnjX6ImWUUp0MgTadIBSq+N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113635,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvOXCRA9TVsSAnZWagAAeBUP/2rVO3SyZLaVNi7mO+Bx\n87IrqFs2kNkuHzjsPbxgPUcI6yzPa+NwauDRwqdLziw0IdcPUY0t9rag78iH\nIRSOlrMoergDcBKkkqNk/0Z3jEOp5vSWWSgqAyfLK2jwjsIUR2jmmSH4flHk\nWAuSlzdBZ8GbMrG31kUu8xieF597ajjibV4H65JFxvmOHhIdfyDwQsY9s21b\n5R7Q4Z1HAFRkwN8VTOfiYrAV+zyJTGIuOxRhkplJbys1YTyD2tkBM165MrWO\nYdAoWpIOkT8lETP9EuP14A7xgkxJhd43RqP6Std5Fag0u3Z1Q1j0osT8hHFN\nP+WGdeXTZIXmCwneAvSkXZON43122VdeZqO7GdALXWEg/64rhS6X1wnZmDSD\nTjz2TlTI+RKhdZ5nsz/jPXuatw3aJeBI9QgGkWPNk0E4Sb+whFhepNbI5nn+\n6g/Gt/iI+gPeEIvk0hRNJtjkUeMSLN9NXJSRNBku6TKv3YEikiQO1/BSTbUr\np3HjapNSFWazZ//EOurjVyVd8hMKJjrDuLGlkxyJdIQuysKeumNufdpopM5j\n1sH/36EwqJoEUnSR7THqCVgAP2ZY0gzhIlS5DxwU5jGvuXFS2fxuS8yumGAo\njLmzrsMEoR/GWfyUd+YcGnnwQKf+9Xqn2a8+cWnHqpR/lkIEyE97STT4rtoY\nxjL8\r\n=RTPU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1ff772a0ad03d46ec700ebffe08b8f9938361707","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.143"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.69_1623126934921_0.5247162628444606","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.70-renovate-internal-patch-1db9811c3bc3b79da0947bb920663357af6edcaa":{"name":"@balena/jellyfish-test-harness","version":"3.0.70-renovate-internal-patch-1db9811c3bc3b79da0947bb920663357af6edcaa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.70-renovate-internal-patch-1db9811c3bc3b79da0947bb920663357af6edcaa","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d6b77d93ee3285893d37769d97d3ae9976489e3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.70-renovate-internal-patch-1db9811c3bc3b79da0947bb920663357af6edcaa.tgz","fileCount":24,"integrity":"sha512-lGy3+tIKFQ4tStHAfH8R6ztCoY7svKf/ljERk9kuMvYUV2aNm0021sQ2ofND7h6wU9JhrEbUR8vEZuw3Ln1R+Q==","signatures":[{"sig":"MEUCIAeHRBFnkQhBy3DRi973oPn3wW3cKO59yxJHaoW6daLiAiEAo06e8axeqtG/hg1zgz5xHMNDnO3boW/tQTo+QWE4kR0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvvSrCRA9TVsSAnZWagAAeKcP/24A4TsZ8S/AC7FI3sw3\nrWXUVmII44ll64VqK/g5FU5up36+km5h37zVbiWNoGWgTKUN6yTOtJDARkol\nU+mpC5iipW9IuTxC9fMEy+JwajitYVT0Q8xSbf1IaGg15qIqLffkBC+SjASQ\n9CcjfvseAKf3Nlyezu3j7HfKMIaaI/+izJ16RBpAk//mKkiLsq9WwpInG4Ne\nAAfGp3uiyxmmjL8Vpvui2+DTKpcAZYDkF8OCOKrLWjNu3H0NGI8YiOso8m/n\nP3Sq7ik8O9IQy+sq5YzeqCeb68JwxHvTRJR9H+wYH08If8KJcgE12I7/KzF1\n7KD5DfTvwhIpNgYkGYtQE4F8oAWECLcByXQ8wQLPpYFRAo6gMvzQxL9KEGh7\nonSEb1EYr+WoG94H5hQEFhOzky3vXook/rZFEmnRc5/J9RqMxU5ZebMek6K6\n8ySh7aq2w+rA7Qj5d57+8qm/4xMY4Ruh49hzZMJtUfGkBgRVjXfTBNm4MgWb\nn8J92aS3CWXo5hLgtIL6XjINAXfIU9QnnV5lDvGbOfRJ9/8N7HI1JUY5gvGl\n3ogG2dftfWzpT7RioZcTutN8xUFj6thbfTb5VEPtt+WxUAAVxGdAp9uER4Li\nDqCS3h4yStOkMhihNJUSSGQQmjlQOJWkTwOBsZqov0wHlcBr4fD8riV1Y6u+\n+eC2\r\n=oyCR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1db9811c3bc3b79da0947bb920663357af6edcaa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.1","@balena/jellyfish-sync":"^6.0.226","@balena/jellyfish-queue":"^1.0.142","@balena/jellyfish-worker":"^5.0.15","@balena/jellyfish-environment":"^4.2.1","@balena/jellyfish-plugin-base":"^2.1.145"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.5","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.70-renovate-internal-patch-1db9811c3bc3b79da0947bb920663357af6edcaa_1623127211700_0.31724122831495505","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.70-renovate-internal-patch-719fe30577c9afa0f63cca1c9010c83232bdfd5f":{"name":"@balena/jellyfish-test-harness","version":"3.0.70-renovate-internal-patch-719fe30577c9afa0f63cca1c9010c83232bdfd5f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.70-renovate-internal-patch-719fe30577c9afa0f63cca1c9010c83232bdfd5f","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba0b74eaf0c7f22233a3c3b1246523a67d0bded2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.70-renovate-internal-patch-719fe30577c9afa0f63cca1c9010c83232bdfd5f.tgz","fileCount":24,"integrity":"sha512-Sey1/ZiwmGi7gzVGjI70nHtFH+aIozZLIACELVbNrE1rixOnsDT0Bu0+tx+9Pj1+90/zj4zhmEd6sxS6q5Ekxw==","signatures":[{"sig":"MEUCIC0Neau4VLF9ckvKmykJ9kN9j61ejqUNPiFpbxHrN/xfAiEA0e1uUqcTOq8fFYLsOXbaimps53pIRpxag5mUe6kFync=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113774,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvyMdCRA9TVsSAnZWagAA1MEQAKDQKM3uzaMNShPeiRyl\nzVWV8Zup/LXchj58KTs65r7YPyrMBpDvu/8tvqpRBiPJZ9Q44hg1o8Q8FJyF\nrOYDOJg/aVkUQsVJFq9dQj/Fg+vuZYyiCacJy8eJGKU78gvyOWv+PbFQK21V\nMhW0dFLDarxv1eGn2DtdNp0+vHgeqk6gpTMBiBrNITZfzywKcKRvMFoWqbaA\nKNm0zbnWvEP6ZkOfSEd5PGBhOqxUyprnvz7cXz3hsxQdVCwvhqzM67xHd4BD\n0K0knVeFUmqJCSAHUw+k1t0z5g/u7CErP/ws7zt3BiumksslUJrjCUYiMBjv\nOBd8tZb9imgPoRTfWn1dGiQIv4zKXDm5rBioVHhjD40RykDvN/D7u1OQtigc\nXFqLbETty8yUnqNfoqNAzEMSAI+CWzrIMygDEQUrsLWs/klec2ISnqak0A9F\ntPDFAxWQ/t7jYoth4NsmI+T6opux114RFlBIqM2/kEDEZBKvUNuln8Sz6Udt\nBgFfSNiBWFmTtVMYjkPm9vQ6fCIwyA9ECH9NqhPcDxeMjF5pnoxSRIHa39GE\nZFF3A3Bvd5VLF9nU0R2l1UiRrh1ATbtSjzbIfqSqdEQonY/MyT8Tg8XCHGto\nfwSpv4q67PK6qqk1J6PWWYJam/bhObPK/dXw1YPQj+C32PrUkJPoMFh3j00w\njQ4c\r\n=bgn6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"719fe30577c9afa0f63cca1c9010c83232bdfd5f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.2","@balena/jellyfish-sync":"^6.0.227","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.16","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.145"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.70-renovate-internal-patch-719fe30577c9afa0f63cca1c9010c83232bdfd5f_1623139101239_0.8722062657107024","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.70":{"name":"@balena/jellyfish-test-harness","version":"3.0.70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.70","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"001caf7fc4cb7d44b60f0c90a8b395483f74a93b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.70.tgz","fileCount":24,"integrity":"sha512-r9gu2o+YW2/mZDCwLHJ5GEAC7oU4D5n0fZiKOZkZg9w0oWUsF6lYvOLTA0cwNzDDmKQqIJJfP3O2NTmKpPTh5w==","signatures":[{"sig":"MEQCIDjcFj7xlzY99IH2X9v8evFEePwoLsH3kltmPEG7/IjfAiA5V+WngZSFOvzAyocuG87w9owDOXPzLlqg1PTq2ycw/g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvyPLCRA9TVsSAnZWagAAnKsP/3wOkPQ6fYLqrRF3ytLk\n0lSYtObxiW/Y1BoJyAT7LNBsfzbuCQHOSOIlmBA5/HEcN/pH8YleEl0GlqWS\nJMQSM78hdXGA6XKZPS7+m6vKWzanEz9NEBEfwKgpLPIbxGSUbHOg8ps1eIp0\nKAI3XqIZ8YUmHlShlbypDywhVczOX32y5QyO0/2k8Mjf97pWDcQr2SoOCTeY\nm+542cDeiqRhHEmS834tepPSDnB2LrpUsh3dkJkfKw/DMgBSTmjnT3miUkuH\nBXyNQimnCEgopnGi4IbArP97aTUQPWAcwcJhx9SGns/EBz9hZqDWy3GrW9kn\nUTpZ1jVZfVHca1TkUUQSkHkEMVmAC1TakfcUPBU9iN3dZnciOTfJ+7oqhxpE\nP6gQBLK2Z1UXBO2KCsL+lxP8excHIy5iM4szU94Hv0iFjGnSkUU3IDYiGkSW\nb9Se/x5Dw9d5xDGXAqOGoN/A3v2KXiYHTKFIdNtFbElv8E7R02G02Vih3Y5C\nqKA2qycsAbTsf6qA+/nu1VMMvNExm828tdrG4X8myIyV1ZvHGr13jP9tLKzY\n5Yn5IWvJl9ctlyBeojIxlw8wcTNUQWW+A+6CZ0FQ7fLP0vnGr7nBVADLV4gq\nBADP4yDwCxGZQ7Wvwb6aO43qCdxYMntTVBIOxgBG+YKj1B3spkX54R3+SHCO\nFDhr\r\n=ohWO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c07c598f3417af9a8b59ad675345ff0ee7185e4e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.2","@balena/jellyfish-sync":"^6.0.227","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.16","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.145"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.70_1623139274966_0.4573495780039001","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.71-renovate-internal-patch-a8febab37ff03517239c3cdfd037c51d3ac2793f":{"name":"@balena/jellyfish-test-harness","version":"3.0.71-renovate-internal-patch-a8febab37ff03517239c3cdfd037c51d3ac2793f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.71-renovate-internal-patch-a8febab37ff03517239c3cdfd037c51d3ac2793f","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9719d0313ad98f72c75700421e07e40dd1a3482","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.71-renovate-internal-patch-a8febab37ff03517239c3cdfd037c51d3ac2793f.tgz","fileCount":24,"integrity":"sha512-bL25bWyEDBM4otRYQyfbM48M3BPNClzFuRPRGVibe8zd1FcsvfMqrGoJzMzWDKJ7igJsCYjlgtxL5lZW+K7aAA==","signatures":[{"sig":"MEQCIDYQZTuGE3i5vHvhvmGvwWwye8QjaMiqsODjGzvaCqbBAiA9a1A3j11B2KHv30E2MI1/pVPIYBhR7vgZAE2a/pAajA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvzj1CRA9TVsSAnZWagAAY6wQAIjRMl7Agoe2HgYCrBmI\nvHnJyXzOCS3T+JQVN8PSEjsjhh4EejentMm2gVQhIUC3vxt3eM2WDpef5LYp\nDBxRITiUpdsnmsfezEcFByibNG5VBpGK99hxpcyH9mCpxPlAWt6MAlLP23KN\njkpTnt0Ab7pHk73NKQn6gP2LpJA3s0ZJWn5RUo6zp1FUexEprC+aGupkC3z6\nWVnTjJrJnBFF2GkYKSq+pA6xiNNpd66ta+y+jeRo1VBivgv9QJaHVzj4j8JO\nRnCLC8hzV43fheXZVGyk0RpM6IVJSPZT3pju3uC2dbJp2nbztqqwvb0BJ9rK\nJGjkhjjImbDF8zEqTFwD2Qr9ERkXK+ZzBXXvc94hmfxxVYFLfi41mLwvZl8Z\nZLgoqEpO/q8nYZI85nQ8n3FgHAUUKWieH6SoznmqRM8kaaNo4v5slTdSUBfj\n4HQpPCZ6HMLT/0X7kka+9bM5L+Q96STF1TeoYEEZNUKUFGONra3QYMAFiQx3\nxRlMX+Y7YR2Tips54ovP72RTJqwUiJJOCc9EWv8PVUaK9IfQYgv8dvgQrKf+\nllW0i2LPSS+fIDt7hFYvi14fbN993O5nddAV+LrJDqspZBV9q/Dm6eY0iduO\nIVC9RD2wuyg7klvSFqCnM6L97HoyHCCF652u53A7ifDVOFW1Vu/bC7pvtTLI\nqoB6\r\n=QPHR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a8febab37ff03517239c3cdfd037c51d3ac2793f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.3","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.17","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.71-renovate-internal-patch-a8febab37ff03517239c3cdfd037c51d3ac2793f_1623144693711_0.5350261873343856","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.71":{"name":"@balena/jellyfish-test-harness","version":"3.0.71","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.71","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"03e91c26627b292de3effd67da1ab25469547919","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.71.tgz","fileCount":24,"integrity":"sha512-8Zeoi1fzMY3Mh5rqWF6i4QdRm2/tb9KrcuOPYhrWz78GpSo7/MMn4CeAKeOpqAvdOpwZU0VCZyNwK65qQQKX6Q==","signatures":[{"sig":"MEQCIFIftK9Rkp2tUEBRgQiyonAnkYSZVF8QFgjEC868KWTxAiAk40nPAMiBIA4A7HWlSpKlBy2Gf+hkT17xXXYU92Njlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113783,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgvznACRA9TVsSAnZWagAAjnIQAI9W/onhrWjRNevsbNDi\naN83fhIxyo4KQUDi56tFbdr2EIS6obCi763ZthscYFyI2YmB+tt2FR7G0CF9\n8XRnAeVwaPLdnrMlxiAt2GRPUOZX1oRI9uJsWf2M3HwHrSvmmfvgim5DDnk4\nmBDUot/+rvrup+dt40Z4K5GS5ZbqcHDe5zFl/+U4y/BpPTH57FY5CALi+gbc\nq6EA3mphiEYox1FV701RwIEq4kUVMnx2bn2FjUBlTCh5mbOpbkYvsTcvECNd\nNropt8aSIZ7UC5wI3Z1oF2o9uZNWy05kYqtb4pcw7887lCRqQN2yzlEN/Wmm\nI1jyHF2E0GlzBngjq0DQ70pwbeUzAZPOFxCFbMRJR0tufTagRLDs+e6EOSfX\nkEeDLE1sr8c7Zs8QU95x+Xu0wbBrvGawN9mBE4camoSTP76OWhfUgw4AqGQs\nVAuDoLq+8i5B59JWMY3QYycYBNqITYui7WqfQd3QZebCDdeLCsO1vNK+VBrC\ngokl9QUfeoPFUH6SsGcf6XulHFbuSLOZ1I9MEF+mFLPDiPVk94pvoEiHnJW7\nrkM5VmHNoFf/bXl+lembKmX+gazb+pynBaH++ZkxiN9xomrHA4M7D4vouGYV\nG+JTEPnjmeEto3mCpbpaVIbilQBuWv0/scE4XL+vmbs9HCoUDx/PCggT8+Sk\nWF5X\r\n=SGJy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"feb3c374a9d44df163a438529932a897e17549ff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.3","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.17","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.71_1623144896171_0.198735500942127","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.72-renovate-internal-patch-9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8":{"name":"@balena/jellyfish-test-harness","version":"3.0.72-renovate-internal-patch-9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.72-renovate-internal-patch-9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"23ed5d9d6d0df752401051cf2db610e33bc28b83","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.72-renovate-internal-patch-9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8.tgz","fileCount":24,"integrity":"sha512-Hf6VwPLe3nhSE1GJU0Q2Y/0USp9oYo9xM1WjtNEMBXF+x2fyzrlDWB3KpfwtomsZ93MerOVaE60f3uPHn8o0xA==","signatures":[{"sig":"MEQCIE2Xu2NTrl9E2hVdZjUX7iC6uRda/gMGQtL8ybeq6tEiAiBNm5BefjKY1o4kVaCXw4eslRZhVk2TINGyXb8WdCKtGg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgv09ZCRA9TVsSAnZWagAAbokP/ibjucW6NXTcdStnAzF4\nZaz8lmlJ8b/BPq+I9bGczWAZIaHsES1Q6TFsXGyimbt7W+DyFw1uR9wn7d09\nH4Gvd9v0iS0iY6XlF95gqgPQ58Mp81U8R+2Srd2uUjiUkoslBYJr4mnAas1Q\ntaXoEfXCS/Eodz9jqSnvw8rdnj534plRXmNQ4Sp17+oIUzFOy92AmIQJ4izD\n0Hl/Hk9kkyXsvF5SPZCHlAosxZa/LqPsntZoXJKOx6QsWfCwmiSP7Q3M49ld\nBVFvWFUFkx35Eywh4OQsMFWSMEXNeD0Ih+NsoHMcdZlSzeyFEE2u6cssQjpe\nJq0R/omv6DDXvt7YQoYmZSFgI+4J/I6+X9jnWHtI+hRcsGpPqDxQwm6gzB4G\nWH4A0MDEjDs70Dj+EEq3gdonyYwB4X15EkoygYeDedP8B9Gn/MMbjwjTCUeN\neDLqi93udlfDJ6eAgq311Dt9hEhgnRqaCiyszUgk5nRQ4uZik5BYMV2cmJDI\nVhvxCvzHFQPYQKnoDffHA540Gqwm0uMBWoulSMCT31jIDMY+bI6rR9dNQhGw\ng6fgkTgvfCTaVB4A1JJywKQwYNvZMF8jqZmQyS62DDLH9z2L+ElawzYR2ApZ\n59U4NMfy8etm7GOcn1Fo0RQKj/NwKZTvmr8lnMyIUrEYcHc7VB2D0ZfYGfKE\n9+Pa\r\n=w9ow\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.72-renovate-internal-patch-9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8_1623150425276_0.7294198369815716","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.72":{"name":"@balena/jellyfish-test-harness","version":"3.0.72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.72","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d69e809d2206aa0f5eedfadacff9a095c3ee90a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.72.tgz","fileCount":24,"integrity":"sha512-i8tqS6oJLeFy5mDsEz3JX+d9/FcoX8xRdqfy176P/RoHjKz6nq463hUYILFm3+TCpEnyTiWcjk1VJZgWDH5vxA==","signatures":[{"sig":"MEYCIQD3zQeS0bHG7zCLpSXmvVzXHuZqBCYNxaXsSSNnk8XyWQIhAOinlfNb8aMHwWTYFCDCuOq+LE7IT/StdDW6IZwv14oc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113857,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgv1APCRA9TVsSAnZWagAAeZ4P/jCLvl/cNzCVmV/MpJtr\n6cha0Rf8dPYgooiUvxOYpB0LCXArbTUPvAXjJxPM0vyf2L+V88+p4slX62o6\nUw+1AkKh1IDBgNpEvn/c00s9OhCMuqapY8vhy/M/Mt4Fpsl4o2MA17RRfQef\nfgtNXxohoMyi3CfiSFHWs4OKLmahDytaFjv7UYzcw960SmPVmsH7uIKkL+fx\nzYbYkHNQYMav/LBxTdoxMyC57NAhrD8hzjlgkdB7vW+qYHSwhO6YAoXkq49r\nUffhKymLE/j3N/yNrYuslkBCXuAdyg96/Q9ej5UjvP2vyJKEttPf/NgedbRC\nrQb5n2eZc1LAVhjw3O/FIEfQCGo+v80lAU5k/kGDR1+nOf022dPXea03GcYL\noRa+Yu5pVI8S6yPbkpfOwxsa1fNW7aiV7KUHDc95CDt2dvVqKNso2bFtPYfJ\nKvIyTjFj4o/b9NHm/TfQsKXGE7mSPnVN0gUMuYkPBCAIbAxCIYBGfyjaTOH4\nOkBncrSguulbHt60oyG/5M/67FYvM6b8E2fi5yzrsPwJ6F/NJ6MgPzRLUGsr\nH9hcMb74HP7b5pLuNEonXaQ1W7iu+StDFTzqjcW/KRDiE6Jt0wn0JuKL4vVE\nrwXpr/j/+fnoFi3J9sXlkfakhhalfpTDvREnph+T6UtSw0oTl1YgDNtujcsj\nOj6D\r\n=GxtP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6c1c7275d2ea981957cd851238c4d20fbe6f8f95","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.72_1623150606912_0.8198004991895795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.73-renovate-internal-patch-d2f7a9041999a5f7595bd611d8a399548561530d":{"name":"@balena/jellyfish-test-harness","version":"3.0.73-renovate-internal-patch-d2f7a9041999a5f7595bd611d8a399548561530d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.73-renovate-internal-patch-d2f7a9041999a5f7595bd611d8a399548561530d","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e48af7d62572184d46946d790b3c1b80d872b47","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.73-renovate-internal-patch-d2f7a9041999a5f7595bd611d8a399548561530d.tgz","fileCount":24,"integrity":"sha512-gJSd5kFJCFBok03f1DB4R3apVoIlPyXyyPB8Y6EqXP3yGKuaY7NWQHFuVy7RHhHJjY8zl5j1IcXR3eauOr2AcQ==","signatures":[{"sig":"MEUCIGNlRoNmtwWqZ51DcxuXhy/nMzbLzXgUn5UPZ0YtMA/xAiEAxzUIL7XiGY/UxvY+YXn03fWCccX34LQVSNX0swRUkFA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114028,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwCX8CRA9TVsSAnZWagAAu2MP/jsNSzfkzpMMhSwyGdRo\nhpeSQloGGxra66r+MPbOeGUFVY7kRZqzrb3G8VVqpMhnaOR3nAWYGYu7bh5i\nXLxD8TbDcIBzsG+7qlal5K+Ugw03fe18uF5buWz9STECkSTz2YUuxNp73AhW\nGpZWaCpmPjoXH8RB2ntGoNbphl7pT86K0jFCm1c77NakaROQPqB1+nP6Q2as\nz9onXi2EeRAoKkCdkLmVn3dWdl83DWF6NDWg8cqIfufj453LFJ2lgLFxth/n\ndeAEfZqc2G6mrGrA9dLAjCJ9d1M6HeMsjOC5GloGm9X+JtgHyQFkIOz1yQTd\nteY3SuFWtGvhKpdyMwtNkwBVLgbluilg6WR0hwPDq9vWPEgu1mKZwBNcx5t8\nXvKoRt4bfbDxhf/lATqc6yU8hr7xe+UkpZ3ljr8tar53IiM5DhkhjJMs3FIW\nXNhnaXo5P1JYbwvgvWBLS8VWFqZl3e6Tq6BRm/JNgMYhh+VqC256oQRtGPtc\niLAtJ5S9CA6Or/D3tlh90Y5gUy3I2++7yQO1eAwRtNFbyABcKcpY6mhIb9Dk\nkJF7qz0cxLirp0otxZRPAnkbXk2Jo5VgQfZphivM2gzDC/hsSCPAQetaG+gw\n5sj+geevrA7+Ma4dVz8wdinrTPS7VincIdOcOHSmsxT3sPTS7vnea2h+/mU1\nzhHo\r\n=mjLm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d2f7a9041999a5f7595bd611d8a399548561530d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.144","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.73-renovate-internal-patch-d2f7a9041999a5f7595bd611d8a399548561530d_1623205371786_0.5951424957237332","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.73-dependabot-npm-and-yarn-glob-parent-5-1-2-9037f5d6a7a5c2f546bdcedb5756f6db777e9614":{"name":"@balena/jellyfish-test-harness","version":"3.0.73-dependabot-npm-and-yarn-glob-parent-5-1-2-9037f5d6a7a5c2f546bdcedb5756f6db777e9614","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.73-dependabot-npm-and-yarn-glob-parent-5-1-2-9037f5d6a7a5c2f546bdcedb5756f6db777e9614","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c71088889b8b9c576164de4a7283c99810ddfe4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.73-dependabot-npm-and-yarn-glob-parent-5-1-2-9037f5d6a7a5c2f546bdcedb5756f6db777e9614.tgz","fileCount":24,"integrity":"sha512-e8odFkXsC77Bj74RLosN6gPa98UgCHDJW8eHjT58dO0jTOnF558a9bqmMaQwQrvuvpSbJ+Mh3bMoOD/lEt6mqg==","signatures":[{"sig":"MEUCIQCmZxH2c5oERymgm1l08EhaaMp1ITAYLRPEwVsNKh7dqQIgU3FMhOzU9PZr6XZ6teIdwKl7Md7tPyYWf9MtGdj3RPk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114038,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwCYYCRA9TVsSAnZWagAAUSsP/2wB6lXAlgo4W4usQE9o\nb8iCdcYQDsfp5OIzE0FQ3F9P/Mrxp3qsmBD64QG+QXXMGFeHJezl6vKpQuzc\nARk8lJ+nCNLPlTaeJTapcwbPYt2rjVkp70t5UIhuL9N7O67eqJrzT1r2jNJm\nxUgo43K6ftMrKOaWUly0jC9uK96zM6srKVyo2FGcfGMq2p8v31aHJb68H7Zo\nM8/PkOQGOHwKTA6cCMxJMrKqp906W3lfXsVCUN7zVmif3vBQtQcpMXdlUeDs\ns/ABdYhn0nC7qMj8MbEOEscVNjt7RGvnryEMoe1w382938C+UHdgd7DGbl5D\nb22as+Ntq/YtQHulWONjWPQqiW138oZHF3rte4GfDDVoX405JpE1Fmz54E3e\nWYFB0cRs060Obj1+GK5GmCcIytKyXLRxgMdXRR/rhE8QrmSA/DM181CBdMQO\nhyQxpizj1hxTgirprNJDFG9fvIfdhseF8ieiBlPpEf+RUERB8/QORB7elGX6\nvx0VkO7ahLa+Kd0fixxOanIujI8ZMoVyNYxgmTQIbvRFH9vbT760ArM+L/qV\nQy2zY4xY5tTyEvQbTq8meMiKHt2eZMh7ni+UMUt5V+Q7YLZJPDzGZpcN9MZ4\ne5aU0G0vZP+VfW3vItOjIO1b2zADx2IvErshXOmfMo8baPh91+jtBFOyCeL1\nFgmz\r\n=JQ4L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9037f5d6a7a5c2f546bdcedb5756f6db777e9614","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.143","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.73-dependabot-npm-and-yarn-glob-parent-5-1-2-9037f5d6a7a5c2f546bdcedb5756f6db777e9614_1623205400771_0.06408557138497151","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.73":{"name":"@balena/jellyfish-test-harness","version":"3.0.73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.73","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b8b377b5455d58619c6b3303074ef04e5b5a1c1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.73.tgz","fileCount":24,"integrity":"sha512-2P3PKL9wfaQuz2pbVwQI4yahEk3WZKF7VgoZp2moFw+e6uAHuGqR6jYpeSmeMESWPAZVOm96WuU6fAbzeOEkCQ==","signatures":[{"sig":"MEYCIQClGY7YmhBS4qZK474ZzTGPmcxy//938KMNRoJTMb9dQwIhAIwBDRozo+4+VGgXoGCIw1G7AwTu38DNUDB/Av5pQ2aN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":113963,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwCbrCRA9TVsSAnZWagAA2uYP/AjAMHROHuK8AyuF0JwC\nCwS2rkjdsujAUwhQrVVgqM6Cn+nu9AzLWDLfHmfpHD5E4fby09IQ1qwCRABY\nmwXDN4ofsWbOFaF/beEplY2vPHAwfhgxCUKP2NyvjLcxmKLouyMU8f2Ru4sQ\nzkzHGc0ZpdTXY6TV6C4MaWlI5Ke58UBrzCzt0lChjUelSdRMhIB8BZwyxwmG\nWy/Yc4OB+DjTf7L4HAdlUXfQdim3gzH2Eo90nvi5WRXldFH8A6REr6z4Nieh\nXl1oEDAmaaN/1GGQv1gcxEiQjxJIj2auQO/hro/4bWVpbimrw23cvnnueAwo\nf+omK+vJgvGmq0Ha//TbFBXOUNuzotYdOW+HVSHdx+MIZPvGK8vsP3mR8NRN\nnzgwrkyWuRO4RRq1VYiarie4mJqteW5oyeaHBFShPyD6udruyoAN+umCeZAm\npfxxDlgdQNljtSJ1W5bcBRsydWDgc8qYj4T1iuKL65P/buNzu1XmmjgLvKc9\nfQ0nktOGxQUgjXDIPekJclUFHdgII0mRiNsX1emB+xvI4417/0NbQ3eI4uI2\np+t4byaLP0/7tcuknUugLW7P21WbCry6wz/uCfhVBolfi1AMXjHuVZyDmO25\nOuTH/EQlQKJkH7eFONudm4Nq03L6Ur6PhqQSvDpOFfusSzJD7Vivaim0Vbz5\nIGuh\r\n=RnKm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"31f059a97031d976bd257ccf96b817705a7405ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.144","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.73_1623205611214_0.1661422486663453","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.74-dependabot-npm-and-yarn-glob-parent-5-1-2-6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc":{"name":"@balena/jellyfish-test-harness","version":"3.0.74-dependabot-npm-and-yarn-glob-parent-5-1-2-6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.74-dependabot-npm-and-yarn-glob-parent-5-1-2-6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"081fe75c61422cd19e8e2a1c3d90e63e7cbbf7c8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.74-dependabot-npm-and-yarn-glob-parent-5-1-2-6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc.tgz","fileCount":24,"integrity":"sha512-KCYa8O7Q8nPsFE/svgeighm31FmjH7tMXc7dLewYFldo6uK4srTghvjIpsZDSBSvyh0mWw1t6QMeGVIMCbLAjw==","signatures":[{"sig":"MEQCIHxbJjUsiEYAWI4RRp6n0Xayp+y8v11T8bSOm+jgjKghAiA5373mgqmJt78ExBBu2BVMgVF2rC9flw+nxYZ2lPEgkA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwDzkCRA9TVsSAnZWagAAnDAP/iRzjbn4MG9WTEHPKSPG\nzGbviYnQZlBISgbAH2d8amOybb4bLQQY2MsuOOWVNRCC3xfbFyxzeqZyugv3\nWMsvllDto5u5vHIYp6Oqtux+AskP5YRmzBIspNc+hgTaeHqopza9KpUpeQUj\nfFYdhiTzgNZxFrxdfmvsftsu1fSU6wdgwYu903BXhDdvUpgxeRd8UIOC4vIA\niKzspc3rpFSl0PeQsBAFuIiTUSvX/SjPOPR/USRD4Gorp+ureSyBLxhx2D7V\nNIEarFS37NzaTt3Fuw6wrzok9zkdxH5rEd7iHYZRyFeH86vgRwdrT94mnx0l\nMpIBW1SIHP6D7taVqLPHc57KgXfuvag+l+NvpKYQU/G4o7/ig3mZBmkSqW2v\n0U1zq2ljX1V0YZuXLr3yVMKDHuaZStf/niPCyzx2Nf1CBBNp6K8fwnvWcY3v\n/4y0ZyR42oufjdnb8AnUBo1rwtEKevKQYWugDwTNigaPadr8USTZyVHegAmA\n6viZ4ZzNuTsqCWEoDaKsaaPrv9mJdyYxQ9zum55ocKXXCDr3MLyi4+D6dNrj\nTeiJmP6bW5IX7nQc91DA0++H2pl7vofd3DYSZo0zU6wa2ix6LEGXRx9P1GYA\nKhJJsxIy4vpUg+Bzm4q6/bNXsIEUux7HG7beU8gK5CoUg+jvL8kS+xIleoDF\nYoYj\r\n=RnuP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.144","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.74-dependabot-npm-and-yarn-glob-parent-5-1-2-6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc_1623211236358_0.5387581633599352","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.74":{"name":"@balena/jellyfish-test-harness","version":"3.0.74","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.74","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8120cc5c08d65e24eaf02a85cb34b07c51172ad5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.74.tgz","fileCount":24,"integrity":"sha512-ZfelU5XVSQcDE41FU8aYuxT7RRXmfsiMAvflkoYRgG6HZ1xQ0I2Xe/wWJKsA8IuZTf02Jeczp2Qbo2SH380LSg==","signatures":[{"sig":"MEUCIQCtTYDcBxazxatv+QEmZEBkKHCNoLoj9FiZtfPSMg0zsQIgeufDLhKVLz0RSpfYrN6CNidQM05IS9Acl3y+YP/ayzg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114061,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwD3CCRA9TVsSAnZWagAAKlIP/jUz/h3DwWuqElybuOll\nE2HPgN9OBsR9kbHlbkYOlJSAjQia+n04tzqxui20WTq9OOAmB+pqiOfEcsbl\naXhOshZ6U+npjAAtVouxUoCXcSKatq861u6vIqeCvV4whUPazSNwIYslwhXq\naBHomCQvapTTs1YhjBGVJdNpVkoDT5cstvnj0ogJo+bhsAANmahEdb1o6PvW\ntrtr0la9E7QoZaguLCdB7n4sgsYY/11F2x7ZONdAqmACEW0091Pg1PCjACbj\nEudj7IIbGj7R45mJFIDqTgS6SdsQtv/033GRGEmlRztj1hwYFrulNoJmVdf0\nejAW/E3Wh232X0gCjJwP3M/0eRPY/VpfgG7ta+X5Uu/DG6OCu/JBiBBYOSp+\n2z/I28Indc/Zc4NBmh7nBZcQf9bumBRc4WznNGOMfnFhUk6Lf3pZk/Zun8Ri\nmFjZenPNuxqPTMB91MfpGl3guyBaY5gbf79FnZ7R8PbBhsGThKbYJmTzZOug\nyetLizO2Bk5DLhrINmnBmgGqudvHumvdtQ65dti7a4+Vf/vGqnG+kPMPF6UL\n7/A/D96OtAcfPVyCo/+t4lF4r5bHPzrPY1J+CHzrhvHRHml4i+CeznnAj+UA\ntrJtWmB09TxSIx8ILxNb4BzubfJ6FlkLdDwlRcZRjMQ6Lwo4Y2+Dje3Gbt7d\nIiIs\r\n=JHC0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"baec48d3aa3486c8670853d5b8795ef0aae9bcab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.4","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.144","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.74_1623211457858_0.5959052390274406","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.75-renovate-internal-patch-63b0d87e71512a98459e8114c9a6c7ec2cb4eddb":{"name":"@balena/jellyfish-test-harness","version":"3.0.75-renovate-internal-patch-63b0d87e71512a98459e8114c9a6c7ec2cb4eddb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.75-renovate-internal-patch-63b0d87e71512a98459e8114c9a6c7ec2cb4eddb","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fca919925cb7c0555d0f19af17ec603fa8f96cdb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.75-renovate-internal-patch-63b0d87e71512a98459e8114c9a6c7ec2cb4eddb.tgz","fileCount":24,"integrity":"sha512-iTfhHkPk7f9qWeXqLFw90Zj82jJBF4nLdP0/T7tOzP0/um6KPGQwveUPgVhQh4LKyftUlcTU1g/LLxG0ts5qTA==","signatures":[{"sig":"MEYCIQC8BYvP6OKMFzraGJ823SBqi+lc6EOZeeNFyX60VgBHXQIhAKPLVobvh9wu1Jh3DniB+ZbOL0psJuUXWqDkaYvjH5CD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114200,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwD6iCRA9TVsSAnZWagAAAX8QAJ/ec/Y/uVpdXyhxRvST\nVywFl7nk556XvqtRD2ZkgK2qRSlWtiKu7xk1Ph7JAVpiZtHQ7T7oEpEJ/ft2\nAW1Y8lvmp9kwhNTBv4l6NyCofAvFg/4XFaKM9jSpbjIm07/Cx6Suz8s+JHhz\nHleY9+sWSzqzRj7fMHOuj9SzQ+n6htmE/VYlTtnN3UfK9du181+phe9IFc7y\nCSq6IT2X0Ms0OaI0Pn76knZYwK9r/OlD/yxDYadh1BxJaXG+YhlaMDeoEczV\nJRO7mqgmmxDoEVHIHI8UttkYeQ7TXn9EzN3a5nG7p/wVh/SoE21GqvRfgbRq\n5D3Nl43s4UNX5sxeNiOiT4RF3Yd5D1vdzwLRrE8EZcLp4sMhS65r9ypDWGRr\n3Vwh8vy6AI7MaWQj50nrNo8Xc8IuiEWVrjS2byjwynBu8fgvBIRDhuhtjupU\nbgbTKC9cvNHT9I4t1XgwecKiaSy3m0mIJOvsAhsXHS94MNqXzV+2nL8Y1VDH\nhJ0sdbIBhmVrPYxCzplZ3zdCOEL3LvX/KvqbcuCKBZcrLgzzq+pCk7BjEDwK\nhoZSY8tf7m7t+GFBtj/8Ci2M2hTyukGNutnw6BuC8E0v1yXMBmprDvwuQfKk\n8dX2A9N3I9E3HVfSYav56pyDEQrmHJRGpho2Sdo2r2ixO1G+FB5uDlo9cmGG\nxGh8\r\n=11zt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"63b0d87e71512a98459e8114c9a6c7ec2cb4eddb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.75-renovate-internal-patch-63b0d87e71512a98459e8114c9a6c7ec2cb4eddb_1623211682638_0.3660032449605273","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.75":{"name":"@balena/jellyfish-test-harness","version":"3.0.75","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.75","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a949154bf8bb0d1be8c74f1d5b5717bd0d8d4bdf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.75.tgz","fileCount":24,"integrity":"sha512-tbQAMzPj+Sq1E0IYp1Zq8kt5Thy+FiPcCdKV+e2UGakeenRrcGbzDxcCisS9cHkJgyko1EXdLY9FcnvZ1AJ0WA==","signatures":[{"sig":"MEUCIQC5Qx7jlrkct6Y2eGn9ZS8c0Ljsk2+I9P92GyT5/WeidgIgYjM72VcxOvbYPdZWAMA09Mwnq38ik64wgzmeU8bzYig=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114135,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwEBdCRA9TVsSAnZWagAA9ZQP/ioXAkfpY7Dw2m0tEUFi\no6WY9Ag0OMVXcZmAeyroCzp2YmqelHkZk9Rpa0ky1doy1KOabwP2Mt8vX4zr\ncLvlVCpt1I7tX345/bZHIYsYVUipXMPkKwo/TTFpNDToa9bjR83d0DtbXedh\nvjtM9bOPofT6xfnjqX1h9L5nco2joLjPCflj6wxX0JcB5O9bacPqnNK2xlqH\neLLHxomx69QvGwCx11/yB6itm/zoMUpc618MIoV7ZHnkIWAgMh1lF9fCbD7f\naw01sttPl/c3zoi2cbP+Ggd2hiMZx0u3JMG2VATaA73wj0lPRJ+QQH5WHV0l\ni5l3pPqnxTOv0ym3juAJkOX6ztdxC8P6qvS4V/xgRcqHyo3RM+YhFG8zRtXF\nwCcH1GgpXstcXEkZGnoVpadvJao3M3vgu9sMjm9Sap2mT0ATmbP+1UO6IWvj\nybrL8JFe0ZQe5BiOtDf6n3PbAc4W91qSwsmlwOiVObSyyk8Zk6lPAu86xqbQ\nmvx22ZQohjOAwp1/fhOSkKqUhbf0BY2EPIyPHZ7v3VxeATqesdSNLUhWccmG\nuQGbM95n2RFe8kfi4Bhp7427D4XAzvoAGWSeG8aOM8B84ISElSF7Wj+WAlWR\nUnIZjR/i2ee/PlaeW1SWTLhDukuOOKhJkHCWwgVbrfCr5yIoeR0ffg3a9sgt\nW5ll\r\n=GIwq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d6cb7498441fd4729041d15fea3c0804c6bd031a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.228","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.75_1623212125074_0.021910757936204783","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.76-renovate-internal-patch-f5b0991901b4ff4da0b4f237b0ba95835d7c20ad":{"name":"@balena/jellyfish-test-harness","version":"3.0.76-renovate-internal-patch-f5b0991901b4ff4da0b4f237b0ba95835d7c20ad","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.76-renovate-internal-patch-f5b0991901b4ff4da0b4f237b0ba95835d7c20ad","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b22e2019dd8238269198d16b299b3bf25195700","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.76-renovate-internal-patch-f5b0991901b4ff4da0b4f237b0ba95835d7c20ad.tgz","fileCount":24,"integrity":"sha512-ZgKLeXqPXaF5c2uwAT66afZn9eYcMgrm2d9m2jHhOxhW+wJFqCJQA0W1ARAryc2Hvc9wllfg5FFYBnHlbOUVZw==","signatures":[{"sig":"MEQCICH4e0X1ogCWEmWEOCk3Ke1KLG0d8snk1FC6pxMY3K7MAiBVIUv0UbMd8viWNH2ou4chEjMYNL6AqIaubzHHh1Qxrg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114305,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwHWqCRA9TVsSAnZWagAAHvAP/2T774SCNsPHn4IEyzQa\ng6/2EeUage9QgAKmBvUTdM8Q+zKlt2hY2DaGGhXWguRAW/5hwp5G/EE5htQ4\nkEwMmgzSXaI8JYLJ+eIRSdJs0q/uSPNIMTSGP5KnDxq4ZWyt4n1woq0Gq0Th\nKhpZTp0eyyj+5N3DGbFclC2TOPHsxZ2vBQN/wlnSrOsrIO5uHr/VweZ5fj+a\nfUPs40WSEhsNqQdoShCo81W1B/1eys/fAsfb8nnaP7C/k22BLLYQrYAG1r/e\noImmU4oJYVCHIxO40E5/l+a5nlhnsvgVvNmCZu1nP3w0Q4NKJo2yibADO7ul\nMh1u/lfnMlBpXKaKQHjp1T5qMAN8mlIh8Yvf92a4Sj4JRa88PRrBtecpllfq\nPohRHN/9JIDljraL4Pm9zvocB74bqeD4r6Fo9Ee4TtYdowT8CCYALOqw0miZ\nyeV/wdFqatKU5isdCFIzrxWkbCl7dXyhnZkiW9nT6rd6Th/OqQ2Wo3usUtvz\n3D/+gynh4g6IL5I7vRLnQvpR+TzCMGw2bU7nP+P6EptDLRiDuVOE3QW8IaA5\nJvCkoIX7My64zWegdOZ0esvv2UHNBDColKuXJ+XMK4EH7Xd9meXo0r22Iedh\nDjgNit76OB4T/gh4X3CLQhu3ndXMPP7dy0gqcK3nTSGCHvi4f/rBwQa4N1Xy\nmEya\r\n=tQ7j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f5b0991901b4ff4da0b4f237b0ba95835d7c20ad","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.76-renovate-internal-patch-f5b0991901b4ff4da0b4f237b0ba95835d7c20ad_1623225770301_0.6849657824473441","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.76":{"name":"@balena/jellyfish-test-harness","version":"3.0.76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.76","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2142ae8bae1f54d96af6ba60083a840fd740fc23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.76.tgz","fileCount":24,"integrity":"sha512-/AvGH92HHbgCHc6mbTxoZbBRJNfKVSd7FlKdelXfaWTm07JtJL4HAVjuw/TiQ+pHdM2xZYpJTls2vtEPiyQwmg==","signatures":[{"sig":"MEYCIQDbPqCGWd8jDKDhcvWGvU5MNkGFxPFVjxbZue50mOQvWgIhAL0o6m/T3N2jf+tS3co6RUaH5uwIIVhjJqO6yeDfoCsy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114240,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwHcXCRA9TVsSAnZWagAAOe8P/3oROdeXyEJuFGBTVpZB\n2QrnkoMSPNkW8pvY76em/XUzRS1C2IYT/ZmRsHIA/jX8xV5HW2Giea0vVESa\nbjm6k+zSg379dvOAIKhlJ90teI7iuY3qYm3YsNNqCqV1TAmkEWCW4NV97DB3\n1nWammAG8Snb4jqeFlK7it8yhBZhDMXz8xSVeaP07hgH7MJw1udkL1wsDTvO\ngHfK6fU/L3f/CNc7KQ6/SCNuVufn9aWPL6M8FPQMUDxtVAQxX/KUMVcFFLdZ\nkNQtrowdkmhMV2bELhAUrXvYDFjTdxnLs2/lhJa+kaitGRToHHZkuELLsSlF\n1JEppJS35PbLo2lvXBz0Io/b7ifJD54M8hkvuE2fn6wTAeEZk+BSiNLRkkMS\nwCN0BCgYd7QA6ICfXp4dQHMeEzgWHT7z8craOI7Xr728QHI4gbHsiV0sQ67M\nZ9PwnZDYj4WxDHof3iqf+uP0YWIyOOhmYlbM/HQwly65ZoGwJlzfRFMx7lqh\n7BMmxY+xm4l8lwB7kuqpW7XEIpNzpM8cFlKAsuB4mJ7Zs8GeMO4FRLkRQASw\naOEuTeAhjkuOWgyTGDNS0VmNnDawheLCuSV9lfxt6X3ju64PKqWCv6+VsbZt\nd4H0d59hiD481P+mcszA91WRe2CXT8h9BIMyyE3S6X5/2quAbKvyBfWJpJ29\n6svq\r\n=MYuI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1969f4407dcbfcae83a1ff234c022dc07fe56d01","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.18","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.76_1623226135067_0.8684506043463027","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.77-renovate-internal-patch-1a6d5a65af0020a3f99cf3133afcad4a250dae8c":{"name":"@balena/jellyfish-test-harness","version":"3.0.77-renovate-internal-patch-1a6d5a65af0020a3f99cf3133afcad4a250dae8c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.77-renovate-internal-patch-1a6d5a65af0020a3f99cf3133afcad4a250dae8c","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33f8c341423a8ed81eaabe701727246ea0bbf8cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.77-renovate-internal-patch-1a6d5a65af0020a3f99cf3133afcad4a250dae8c.tgz","fileCount":24,"integrity":"sha512-YwlY2r2//zoCnzSkvuSnMwmsyYbH3vVF5olZCcpAM7LHiodXp9IrMjAiwaaxYWUAnpyGn1gDyV8sqOBxHc4DKg==","signatures":[{"sig":"MEUCIArqdAOGKI2tw1nfBYGoJLV0zhZTdqF58cMx19UClQqDAiEAiHXvCPkjVv+EfEdqTmJbpmDlDcTQHE3hhn6UBDqcHtU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114411,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwK0qCRA9TVsSAnZWagAA6uMP/2i/ihDvGSzhi6Eeq6bL\nR5EQvLEAv9EUnnhD/peT6l4jH+3ZmQkJVEvnqf8zpUGyMGmtPLZiEaHp6uQr\njGymac8m9mAUlCvsD2xsiWOFD5Va+7hqZJSq91jtBEblaHDHKcYvzvj1l7zw\nRKkilYxAtIbv0xHNFgIuPpNAzufgYg+TBKqNKWb7k4smqx4KlGIv5I8kLOZX\n7X1sxjEi1HirFTICJmyvo5NI5+d4kR/fd5QOP0PKO67asXtXhK+7ecVVBd3Y\nnjNShZSQQdLS1/3RspR2Xm1eWLQNYaCy+7R3BOM1pVWSzOxuBPlJ4NwCNMe0\nRxBy3U+D39nZGnPDvmiTSpKBmfMewt5CEG+ezWdDXygBkrSZNvsxZapulY2+\nHJMaIVTY9MxOcMWLNM2fH4DMseNqZ2mDd54tt8aRelbDU5CRqDm5/8SBW242\nJaSvQ0dvjCHWghpFssNnEyNEg0ah7kvZ3FjKLy0IzDPGHE+b1bjrYajblBlm\njkitTGltYC8pFgOC15EBbCOu8dWGn7EXuKJBkehxVghvRuWMubGvdL/CvfXv\n7TMgkc+14HhWANmpBxl8OKlJRQhX+Ly8F24LzL4aEZilsnbudFdQ1NPYsUwp\n9+uEQ8VSKMlSh3k7h6BuNd3lhOQAhjk3HtnKUAomCN0oYdKUBxcB/wdi6E/M\nHzsy\r\n=HM0Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1a6d5a65af0020a3f99cf3133afcad4a250dae8c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.19","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.77-renovate-internal-patch-1a6d5a65af0020a3f99cf3133afcad4a250dae8c_1623239978650_0.9130651243818175","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.77":{"name":"@balena/jellyfish-test-harness","version":"3.0.77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.77","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c58138f9956f649ec59fad1dbf79c5511ae8c73","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.77.tgz","fileCount":24,"integrity":"sha512-dsI7o2xTaSHw3tdeCHIbDqi2vEl0AGRR8l+cqtFIO7hStWduI0NEuXDdJ8TUsOIx8piERDMbCf19yDTX4vvIwA==","signatures":[{"sig":"MEUCIDZH4dOm+Ot9dXSBJ+4djY4XwikLspu56U4Kpn/SBd+2AiEAmkktqOwon0t01Xj4+Rmiiq48AcXEIhsVCuxqYlUNhls=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwK4KCRA9TVsSAnZWagAAN0cP/3qQDN7nYL0wrnleHESK\n7cbHfhflB8xOl3Z9nhwvodK0RjikWv2MdrJx+e1qVUFNM5OQtJOLJjB5fuEr\nDsIJ5FE0Kwr4hzKKUTlPFE5Cey0N2Bb1Wt1nzeupO9sXB3l5aHlEfXzemyKA\ni2QvzrZolPq8VxyYaNnGhJaJ+2smxX79ekhXYZN+CDB2AcjCYfOBpDoUtjgr\nGW/UqLmJN9t7c2NPf9N9DPhoXIIxoEfJyi56AOifFCr358uxEUPbEVWmVKa4\n8KJGrKMQ9/W4c7kiF1ZuFrluA5XSo3yZlzRM9mV4hmyvurY/Z+NwbNdCxOFO\n/cjT3fh7nj9db52UqtyZzDiieb+WYWSQ/vBLM6JgAicqBaClR5iyZN+74r/g\n7Qs8OpyFZcOxjz6lMRanCXpxS5HRIwmBRZymT1BG8JclYyyw6pZqOcVYhkyW\nJtREj+zwPMXROLDRjBkAsTUXcHeS0Ioop1a5ln5vNE4MNRzW6/LmVyL72b8T\nMAwT8TWUyPRAOXgTliIM99MNtz9T+clXsnZdZSblsjH3HQVibSIVqULKDw15\n5maUlXlgs/FxR2Yxc2slExvU4bKIgOyngaiobIfwohjeFtcRAJQQfT07U0sn\nZlZKSkai1Msxb6EvmQzbPeSKOyKBLzrkyXVfkTUu+j+WSV8VPLcm57PEZRkA\n+ukR\r\n=Ps59\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"297fb9345518c0108075b7b29cac03303fbfcef2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.19","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.77_1623240202314_0.47118276838311446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.78-renovate-internal-patch-8defbf7337398b38f38c20dbc2c67b4f7e6c9c02":{"name":"@balena/jellyfish-test-harness","version":"3.0.78-renovate-internal-patch-8defbf7337398b38f38c20dbc2c67b4f7e6c9c02","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.78-renovate-internal-patch-8defbf7337398b38f38c20dbc2c67b4f7e6c9c02","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0346897188c5f70a920afb4ddcfd489eabb05c3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.78-renovate-internal-patch-8defbf7337398b38f38c20dbc2c67b4f7e6c9c02.tgz","fileCount":24,"integrity":"sha512-5U1vocWSjaTQjjlva2WOeUbtshapHBP0MaXcL0v9yDHyu3/2qGHLu2l1t7wuMNS7Q/SPl1VYWkETHsmTeigacA==","signatures":[{"sig":"MEUCIQDCYw2B1y2jF6Xcr1T5Hrk4AV6aU0Ufnlj5Ut2ppsYmWQIgL9wI4NHpvGI+hKNBekmiweSRoSRcrjKjH3QIC0KwHEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwU6yCRA9TVsSAnZWagAAmQAQAIS+AIiGEH4wYrJ0gkG+\nPfWTPDemXg8QoGJwTyrk1at6eNGLQHwPhP6nVBCnU+/e357HdKO5rM/yucS/\nr/f4QOIfE/6/LWCbavfl6ISHdEO84wFVqkknkk+ttjUqwAKx7zitKNh2Q5LS\nbJOF/XWhuzKa7v2VTbplV7rCSLNqUxhqR2s2C8gyRhkg7MbXDVJ0CTeg1wY3\nVi2l+8vUrUbk4Ld6VTbmBNvpr9lIRaDEHM9Za7q2JVwC7WbOxhKMGXnTX4+P\n9GpbyZSOImrs59ENIj6pszFZMLuX5ljnd+nKx42TurFctbf8aAeaJxLFM9qq\n2yYHw1CSyt10oxpUD2W/keZUm7cIYSOUOrYEwmFWekGH7lbbZ7zdT3eFmfBT\nRj46GofT/Sru71MQy9WVtCZFmjw4GDJ7Pgo1JKCR2HYWcCLvb+qR432a7NAX\nbohrXBqXjesiVgb62aryXnm9MZ9Z0+XL+RH38u2cvON7z6zs46b1jd/q3/pt\npHQbCCBeEIgD5oitGijFHyyFSag+/uaiwmLCDLJmt2AfWVSdxU9vHZnoL9W2\nwJwIlMuCmzE2xY9yENchUyyxr2U6gSDi/KWN+QlH13FNLebIdATygYJEjogL\nKQs6zku2/yrwsG+meUqX0dETnS6tCDXkTYCFExeYPGEmFTqVsjsSvCyp0nO/\nrhIR\r\n=bqaZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8defbf7337398b38f38c20dbc2c67b4f7e6c9c02","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.20","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.78-renovate-internal-patch-8defbf7337398b38f38c20dbc2c67b4f7e6c9c02_1623281330029_0.3642087409798709","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.78":{"name":"@balena/jellyfish-test-harness","version":"3.0.78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.78","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34aa4ec2f86bd8442423a5c4cd81a0a713e18894","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.78.tgz","fileCount":24,"integrity":"sha512-s4Pky3D/zNUj/rcliIa41cB5X8zDtEzXOoBMj1/7LhL4Pufnw3OdT/nEDc3XJLPZPfU9sMcRytEaQlOaEL4KXw==","signatures":[{"sig":"MEQCIFNK6Mq5T78ghP0EM95pB49XhCxHTUg4KMipTKA48T+CAiBSxpTogEvqnud9hXH63Lxx3WsQf4uuRXSi28NVX8+tYA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwU+ACRA9TVsSAnZWagAAqvAP/0ECCWly1vVAylb0JqbZ\nFXbJzxZXQEuqo/D/7hTk3jVzEsCgsXxeTDmeNjwpwncJDbblJO49J+wXS75T\n14di22PyfX34O4XQZdHwrHizcF80mW41cytk6Rvt4bx62RQ0vqlg8zp4x0Iw\nHmnrB1+DHv0dg7r9U5GpcEJCpSyOI4Cfe+MwXb4ex3IaM/2scm+w2SbQotWj\n8HYThdQV822MRYspmn/Rpvs0WFnFsKR7u+k/Oc9gSs/Tbya+2QMILs+lvzWN\nCy9pL8mkx3+ZVDmdGoV2I5nbColx7kwqoo9wQ95vJJpwvXO4gmBG26zcdou8\nAW36rL0JIRPAGX6VfoXxf1GrfCSKKymuNtzXoEBbS16hZt8J235tHQHn9Xyl\nLQ1SjzHksHVVo54/pba9e+btBaVSUbcD/nggwG6wUZepNa4OPrlbrEhgi5m7\nt5VY67pU6N1P1g391253rvRXyCbQHum2cIzC4s43RZbgj1EuMiFAUa20BcPv\nEgcxA5Gg04tEtFkInO0Qmz6CXH254xHuD6IecSRvIBya9p3cGoVc2FFlNkTa\nb+zg31eR5nfQ8uN2gOhYPVMR7WmQ1CUCmoRkz5Be292z72tEtESjUuxEtAR6\nrBTnhLZiM49xmBd9wAoO8kONKnkaQ9qgTwJwhLBDpb0Orq0PyhScOH/oHVgd\njkwq\r\n=inm5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ed017b22ac5877f4b289c1f86a2c29ee1d1b2edb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.146","@balena/jellyfish-worker":"^5.0.20","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.78_1623281536309_0.030786209175967638","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.79-renovate-internal-patch-61ce5712c3fe4d09357a75c7e93781a57551faaa":{"name":"@balena/jellyfish-test-harness","version":"3.0.79-renovate-internal-patch-61ce5712c3fe4d09357a75c7e93781a57551faaa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.79-renovate-internal-patch-61ce5712c3fe4d09357a75c7e93781a57551faaa","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33dfc3bc555b3d31a8779477915e7a37e8a1917a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.79-renovate-internal-patch-61ce5712c3fe4d09357a75c7e93781a57551faaa.tgz","fileCount":24,"integrity":"sha512-ml6ZZIHDaybTRxt9+tvN9T6vGyzRnjvEHkgrxBR/4f/q3NJLy3uFL75ssouXJK/3adEVN7ZqOXMGOMV33qlClw==","signatures":[{"sig":"MEUCIHSeWYx1oQJxzwKRBrK8fx3ScaHPuVy71Yj4NL7Qfjf+AiEA/4DOCUJiTFGjAOmuF9RlUHZVnxf/qXSyv7rBLd1pnWo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwXcrCRA9TVsSAnZWagAA6ZcP/05fOV/6xF1BV1NSb3yZ\nI14vZw4dXMa+uQsXNLH6/YEW0uvJ7IOyK8Uu9hwmhcA+bircdh/brpMmtuQm\nlYfiNLx3jXB8RiR4pf82/ChbVkGtZrVDWOBDqM4RsahjT8UFDG0Oj1dIAA6e\nTraSKVMc5PZzyVGskIsLfB3QKsDAW/ehXXZwZmzTjPZTJoyV0ucDcBm0OPFS\nUgISYRnpGrdU0hyshH5ZOr53f5szsOUOvC/VYmEhU4rbd39umr5nwc/NYz7K\n1S39uRliWBZ7Cz3T8dIeC/4GgNMfZR18+PSvZBsocbS4vDrcA0f0VdmkJjK9\nJ7pvqC8aLUzZhPQRVL351xHsO51q2cfHB8PhAhekWTX8AOjFCjhd9dkfDCnW\nQFK5M+slWvkaxeJaj3cy1yoVv+WiNh95071/GTsTuucHxgCM3iE4Q+J6MW/Y\neW4CcsV57u+dHfD5uCdb0FxYu3tTWwFoV8Z90Mmp6Vm0f1jU+iAmLE5moSkf\nk1dvyfDlqfFJUipKwqFCBsWxLEXzzXZh37cavB9RvM6zZK+yA2fZYDe4Fhu2\n+qOeSBaqd+tOaC3kCpD1+M4vlsqEqwp8T6Yr5K7kD3aRqSWKUtSk01q2x+KD\nBS+VTNptutB8E5jYYk6z0fd1OS0UtOmfiydlfDJLAVTkZzA7gk6qQElbDCMJ\nlX/3\r\n=LTr9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"61ce5712c3fe4d09357a75c7e93781a57551faaa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.20","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.79-renovate-internal-patch-61ce5712c3fe4d09357a75c7e93781a57551faaa_1623291691261_0.5068650271098645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.79":{"name":"@balena/jellyfish-test-harness","version":"3.0.79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.79","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d217b9462ef0fba6c80934812928f8e8e538766","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.79.tgz","fileCount":24,"integrity":"sha512-Zw9u+Vfor2KCrFjI2m6XqFxLT7+EeHD/iZsSwU15O0YK/ELEYtOBp0KUZ0IRKoFITY5jZ4k16KUW4yh/Pcwoqg==","signatures":[{"sig":"MEUCIEwkaje/yuOvi8a2wPcOPg4DLRCc3vTPWr83Lyl1YH7oAiEAjY20EFXc2enHcIfBIumUgs4DWhIF950Zb6jscAdc/fo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwXfeCRA9TVsSAnZWagAA5hYP/Ay7R03R66wqd1dkQeUp\nVuMm4hk7dLGXCgsAiDi6tMZ6wJj0cj60gIIku4nmKtgsTiSyJESIhQp4o54u\nGu+J4vaoJmk7XKX9uc8OX1ReaVoUuDonx72KzdlKCYUoXWi6l5rif7UZ1pBb\nQi9hYJLnb081eyzHpK0H5obWNzY1IvomKC6mXZQj5c6mU+3/nbbk7axaCRav\njE/tdgz3uwooL0kfvQBxi+0wfbyjVt9MnmE2OEIL6eEaTjAOx37kX9VyWJrY\nOI3oh5fnGPk1r5drgJjUkb/j/J67oVQRCnoW5JswLmtc8MZcTRkrm30l3yuw\nmRN1YN2KuotWAfdBsvJ97X52Yv7IKwlUTOYErEJJKyCkbT+oe8iIXBvproVM\nWmBoJbEBFZ9ZBuusW3WsYNhh4Ea+suxGLOvdRf2siWxHU1C8g4eB01FmCt7E\naPzwLKJ6AWjYlUEO8EJrhklPzDvp9sUS+6ePjJm1N2Geqit0dvxPAeb/z4IB\nhj58x6lKoddVsbMXd4V9A+PLLyqjAACVb/RO0mB/QuCvDfkmyuhMVMLW+T3c\n/Gm5zxPHTi8wNuJWocBm2CltjfQBmu9Xxb9qpeAztg5hYQb1F1yiJKalFvL8\nSb9cylIT7kqYchlhHX7qo3ELIeW68ph0pfmJ147vlK6518/i8ZO3WrVzUHms\neZUg\r\n=fiak\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fe5d9f87c98d12b46ffc2842ed9860c5202a893c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.20","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.79_1623291870417_0.5448025712957973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.80-test-loop-field-da6b2d2f08396173a917884472e076ce5f45ebae":{"name":"@balena/jellyfish-test-harness","version":"3.0.80-test-loop-field-da6b2d2f08396173a917884472e076ce5f45ebae","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.80-test-loop-field-da6b2d2f08396173a917884472e076ce5f45ebae","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d0e15487189a0d96cd21d806ea2dbb1a3d8d64ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.80-test-loop-field-da6b2d2f08396173a917884472e076ce5f45ebae.tgz","fileCount":24,"integrity":"sha512-76MwdTtZTGvFr1dd9cPyu93kuGXn7BpfHUurNEJrm0eM3Cg57jBPJmIVxfPFd5Pd7vqjtAfMJnVxzuZXIa7OEw==","signatures":[{"sig":"MEUCIADlP1/g1ltX9t6Nw0YYFSIkMEDiuSYNV4aAao1D8B0eAiEA+jvamHs5uoo3yb7b/JImR8H+eSZsYnR02Bv5smv/67k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114753,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwZLSCRA9TVsSAnZWagAA12IP/AjUmTMPp6Qvl5WRHPEd\nb3LnbRk1LzSK5Q4jyXy5tM2ra7q2xW/lfvbkxSasigAwMsR1+n1iVU+m3yeW\n9fpYuXmYAaESxKFTnmy/guC1gWJ0pplpMsQehYr6KpYfMge/Y/VGkdktcPjC\nEeDhpmjNCjJA+XWixObC0ivaz+GBbiUOl98wv2bn7B0G8HvAvnz1EjJDlmp2\ngQboH3HX2xf7Ncv9GBIeh5cPYTDfcTJiBE8uF9qbFK3pTkjbbEAlnbbeCSKZ\nr8Lfu7lynRj8ycYPCnOE32muCqPPaC/MncgyY+adFSlvhv958AgiGwSIdqoR\ni7ike0z9GSmIq8vu00iWLV26m6/TZkH1AW9x84oWJ/VH5C6CUfhgC+Tnn7fZ\nIOUtf/eCimjOWoS3VhDEY5rWPu4kLBscJkqGw9Eui+QKr+95RlF63uj/AzH8\nIHeCbVntpsHTifXaTG+u47PTq1mNgUUh8pP4wW945XqzTzDX0UlLsydmPgoo\nnLfP2n+E68yM48JBGAX1tpqkU7cViPP2Wms++6utHBf7GTliCwj7XdGjLK1k\nAgnkNcQRzZ9lmxmWK4DmmmwIgyLa9KeoIz5KQd3sZbB/ZbN3ETQsR6/qKeY+\n5NgTMqWNAgybmEVWErRYpn4XQAFguy7Px5Hn/DfUXOgC0Cnom7gJ1GanS6mH\n3maN\r\n=EBxz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"da6b2d2f08396173a917884472e076ce5f45ebae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"4.0.0-add-loop-field-ts-99b7965b07e7e5566b9f24aa9295da8928841c5d","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.20","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.80-test-loop-field-da6b2d2f08396173a917884472e076ce5f45ebae_1623298770688_0.512393131438436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.80-renovate-internal-patch-ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84":{"name":"@balena/jellyfish-test-harness","version":"3.0.80-renovate-internal-patch-ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.80-renovate-internal-patch-ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"792e6f313cd6963e9737a969c581ddf2db2b0e5d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.80-renovate-internal-patch-ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84.tgz","fileCount":24,"integrity":"sha512-nsaOTLPPhbqqk+U840czam/uG/LNPdhZheG6MU7bXLRGszMTYelADUymcYEW6h8v4gQ4pfjxvI6SBUrCdSLFhw==","signatures":[{"sig":"MEUCIQC7v/XDH3wXcgVy1ZmVrkV7zi5XZfjYywYEQ5VXKsbHIwIgGSppFbEITeIBanZNpNEhh4+1Cph1slIzTCEr3BjZVKg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114729,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwc4ZCRA9TVsSAnZWagAAFlcP/iF80s7zLrOXcoK+l4ue\nBeazbxsQMlsztq3hrIl/gGa/hGacyC/TRA5eavdU6sHqnGet1egxXdh/rLlB\nstKHOGct3ah0vMxfE3J0AphsfXNy5/hTcMe3g87+pPLU9ZutviQtiKS0osB+\n7I9lBHmLEpFlrJYiXs/M607KKkHsal8p2YsxUP1Q4u/+GGy3hbjlvfcdc2q2\ngxfyq74XFgD0vKUTkYW2gQepr4fvfQUGK1Bhnn58TNt+XH+yHFwPjAixSqmR\nJeU2TqK7RRxnHlrtV1dKn9ynBNJTEoG+PXwH3nE6sAUBfp12jfBYis40ZkkA\nYMcPcvfadZBUK+JDN4orWrd2WJZImCAEoJlgO8MhIsKyWsoDZ4Yja5giCZwV\n4/CPVAK/iySZczh6OGAWcHyCj9VWh4su0C3Ri0maSHwu6Gvx0tqpWw/a0uri\np7R3wfBmIDSE+BuqT68Wldy0lq9AU0NBENUk3yjzCy5WzvNU3TboNitkUjou\nueJBA9zI96PDDEBvrnclAkJR3DAq/MKe/WdIO3dL8UAaqfP5UxjEfEL6qqoN\n4+xCP5YPmb/F9N0ro9QeuWOqeRjXDHlSLyfIB4sBV8RAinQNcfFGT4IRlEfn\nvE4zl750u7uE4hCeT7El+t3u6YAz/Z7YzXfuPhw5++tRD4A5C5fJTPjECCUC\nmLBU\r\n=Fq0t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.21","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.80-renovate-internal-patch-ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84_1623313945020_0.18830893050865094","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.80":{"name":"@balena/jellyfish-test-harness","version":"3.0.80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.80","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f513f599d4e0cd9466d5451c31c1de3ca6c41ba7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.80.tgz","fileCount":24,"integrity":"sha512-vRAXUEWIFu67sTXFiwSJaB/3SKgfB623r8GHrApUpTBC8tKuUCU7Aq47gL8Azcp6pogNdAEoAkrS/ScXbQAWYw==","signatures":[{"sig":"MEYCIQDIW2dwKga878ZBqr/sNW1KdiyVOHRM3c0KYAVHvjsJtQIhAKiL3vGr9Rbqd/AFFk2v5qLpkR/bZKsliC7lMlNkYGNE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114664,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwc7xCRA9TVsSAnZWagAA9wsQAJuA9yzDFj2VNxMtDuwv\n1/gqRSlXKqYExhdpXxNIjSPCds8Qn18x3SZiFSu0UJB7SYH+KUe/Q1KzkIDC\nshLp3ey/9JklL0Q9E6MXjyd2OUdFGm0qkTiVaGyT23JTBqlOhrzregUYZdlv\nY17KLP7DsnQrQtgsXGSMnC16bbPsNugpvN+fd03kFinDFWfyZA8UZLoHxISr\nCOYKx5D2KbGgyZbieLP7Kvmw5YM7xIn2tnrby4RA2XiKr5i5vh11cv73/PVb\n1MOCmPfKOsWIJZBRdP2d/hrBWpNJKb4h/iChwwhuqqozc96u/c14eeKlYsSM\nLABeYFCDrbf3seDb38RX8LkHhVWAXXy26nLCWPtMMFw9qGOVxdnl3z6erQLN\nDbSXODJ2ifjmKzWMGrVXO1S+aSHnHUfABuT+QsmDdQnXk+wOMDXZHdlVcce0\npRdjtm1Cc3Y2OBMUaS4FBRDqqTeXAOX2LJ08omKX0qTgap/PdxsUGpEee2+K\n9UG6C9SaDSXXRRetloL5stbBAv10wtZWX3+ROwnQfMgAHKjA6xKnPunTkLDm\ni6prSCIm3UKljGX7OgPIS/8w2GzAksM8kKPtDPbOtQlyxMsdhDky0Lu18ZPb\nt+WU8puvdcL864k/Z3cexwsF/3LQszmbLGa2gitTyikGCECE81Uuhfz9IZBd\nR24E\r\n=4tl5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f288a0133da2f20873d3592050fd6ec68ca47a2a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.21","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.80_1623314160894_0.36992361681287655","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.81-renovate-internal-patch-c2e7393bcafac1b06dfa2a3bc245b2baf6212b19":{"name":"@balena/jellyfish-test-harness","version":"3.0.81-renovate-internal-patch-c2e7393bcafac1b06dfa2a3bc245b2baf6212b19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.81-renovate-internal-patch-c2e7393bcafac1b06dfa2a3bc245b2baf6212b19","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9e29ac9a1d88ac97e363f150ac12c9886793716","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.81-renovate-internal-patch-c2e7393bcafac1b06dfa2a3bc245b2baf6212b19.tgz","fileCount":24,"integrity":"sha512-o2yA5xHheDxAF/uDRAq+GYhGHGoeZQY9goO65VO/m98UPebWIVsG30+zaoKKyjQPPc5oNl6XxezwNnJxbUX2QQ==","signatures":[{"sig":"MEUCIQDyTBMuHjz73OdCYZEQcJzHcc59Yd5qHhq+i0uBVhA4kQIgE63UyaiJbhqkh/Nns0QClWZZ4I0Z3LRH6Go3mlPMQM8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114835,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwd7ICRA9TVsSAnZWagAA3fsQAJWJmYSWs14BKxpE/YW2\nXF/iU7qGF0tgHAp2vBU1Zc7y8ckrnmizC7uGZTOsavD8Ax/VBB0A2kWar3Q2\nNrPsmA9f7AbEqMSNkm5L1u4mcsfRUqYgWgc7huU9I66mgFUGhk+hAfUuBs0H\nIv6w1/4oud+jNEoALuimSYK9e6zdiY4DzVku+QP7NtuxWfL2a3iczCcCMABH\n2dMOM6JWy1KrBkXuzyTM0u5dBXEsIua/ih9eZvCAxJcfZ4F/LLomRFyy5a1R\nX8xDJOhFymQZvh8G15DEGIGsEI48DACCvsl/2KjWMmiK/Jbzh70zTDIGkbDd\nl4Y4dvDFNmmaH9zRLHY5eI74mUE6XnVSaY7vQvZH9CofBlbDgw66FBAT4lRR\n11x5mOq5uCa8sMk/cdxAc9Y464HhC5m73ow4YgXv81U2SXJfOk02sY9BVwN5\nc+g+gbOqAAEfaKhBBUKOzwDCPV2ZQlr6WX/AarAF8pCVyjv5cqG6f9Ci2s+u\nomN/bh9xrgyl8ZTIsUVZSTdu05cYwf4qWMACREaLjoATI/B42lurwWflpkH5\njluDW6dM8JbK50kNmSDSFFqpqNrY/HN90dgsqoZr8CohX/zZ829+V5eTvNb8\ngAmlarEIoevrwQwgqRsQj0J/kPiAMDygWBVNuPfl7qsIZ3EP8+X/XqYBpyea\nXxvW\r\n=kuDw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c2e7393bcafac1b06dfa2a3bc245b2baf6212b19","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.22","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.81-renovate-internal-patch-c2e7393bcafac1b06dfa2a3bc245b2baf6212b19_1623318216313_0.06981652083794954","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.81":{"name":"@balena/jellyfish-test-harness","version":"3.0.81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.81","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d018df43b74a8f9a1c0351908efc18bcb8ef305a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.81.tgz","fileCount":24,"integrity":"sha512-xZCjQ5dRGqWcBqW4I0R6ut7hIGKvtOWej3u/wXmpayYj3O4KeujV1iRWTdQR9Uy0DKYTiblt4F9Nxt4cPpf1BQ==","signatures":[{"sig":"MEQCIBNZUL4WoMg1SzHgqtqGi8kko/lBZdxaLT/yB4E4+a4gAiARpssDMnlyIgdWpW1PZZP7hu9e1Ci5k/Uz8Cd9vBWkHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114770,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwd+aCRA9TVsSAnZWagAA1vIP/jBkycoZ3ScsZSqJW0DC\nFJVQsDNWzzTpG2lOZzkdGhG+OQWhFPcuzsiCMNwhg82TLbPkp8XTF/SWVj5j\n47crrGL48ywhOmVLaOk1nT+sW2VXA0pBbBHivFaK5HwGyAWevxWt+8cod0IP\n6fdGdhZtK6kZ6sflIhG0XtVJ2/OliYQnjkza6vINoB97lCHjRuNHOCxM7hQR\nGmOpv4+A3zcsYCRZKacMmDqShNykRUHwojnhPmCbdRrLQWwtgVqwPA4VKtQu\nR2tfAgd7oHycB9/aiEVjigfIHgx2dFBGL0cesNAQgyfa/qHHCsXW9pzv5RTj\nBI+XWus9tab2clxvbMAsikDfBeIkks4wia9hG2GYA/9pwu+3c4BAY6DYtT9B\nE6JiccHVNrbnrMCjvWNAFvkai9Cnkoz5vbLgEgDEUV0oH9sT65BdSPxXP3JU\nkRzkjcYbCIDO+v+Ez7C9IOSQAgAucU/WogbipW7J3Txbkt7vT1P2DrxjJvfp\nZ9gRdsY6w5U0CN4M2FS+sqksYmi988fMbj1xs4w8brjLNzObUgpaspgOZ8gj\nPwvZgA0fXCRkPGbY0DzZ21TOx1skvf89lNyKgU0wrnihjdWi7oEFmBNDnylP\nUZuMiDMWRnFPihVrj63P1/mXM3S9MJBoIsWcUi67FDhpUu9XIkTC1UJHO+OH\nkJQb\r\n=CP0B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"68b6b48cc52c2fb8f7f25e60e9bd4cda420822f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.22","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.81_1623318426758_0.6223144293501874","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.82-renovate-internal-patch-94a0dbfb7f3f1c4f8a420e2c481629f87a05e083":{"name":"@balena/jellyfish-test-harness","version":"3.0.82-renovate-internal-patch-94a0dbfb7f3f1c4f8a420e2c481629f87a05e083","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.82-renovate-internal-patch-94a0dbfb7f3f1c4f8a420e2c481629f87a05e083","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e082c3e280063557314b6e042406388187d86e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.82-renovate-internal-patch-94a0dbfb7f3f1c4f8a420e2c481629f87a05e083.tgz","fileCount":24,"integrity":"sha512-YktL7X7UD4IBk1FqSA1u6Sf6eZOcVymObGcLj1AYaeaM6M3cunOn/TSgYcxnkn6jdKQQ6pAr+hOIseXNelSbbg==","signatures":[{"sig":"MEQCIBttrvozuhiX2gCkbc3wR/ywMZCiJIYJyaZu/L8zM2kiAiBLNXk5CzbWYSkIHl7So9awxE4L2r1lF6NZqHTAmAJLoQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgweJQCRA9TVsSAnZWagAAj+4P/1J5jRexPdtGN+rQfA06\nTXLtiHxlMQ5q23tQb56cJ1URcDHsuW+qp2tQPAjkaTly/JOrROBY6RsM6huj\ndtQ5VYjmKyWwag1dZ/Onb2seuQf2KYbwZz3F0q7D6GXGTnzc3r7sJDJxhCv9\nSSGjjjlX6nRvfECL1nP13aJSXENbSoOTtao9af82OL6bT4onrwqyl8Emsfpm\n1zPGW68+mVPttKsNCPCru1GCyK0WUSmTuThTP3RrrstbrGkmVp8eQK+wlXKa\nRaVnQ5WQAx4NW5/CK4XjRqLkbu8n+ybdrH8u40RsXLZuRF9xKfjsez3VrpVO\n5oFxdYA2IfTAliEo6o5oEaH+urMiou0/zEFi1wbs35nNw9pXwgDljlcJKTJs\nxteDZh5Dr5FH4Yj0TG7OMtjSVoBnWD/FRP8qbr+uFOJqo3V2XYQP/Cz6AEaq\nM4+hDuZusUMtDiM7lIbIdD3QrLWkTKhLjUAfpII+R5E22e18aQrb72Cw7bI2\n9wQuOolKyuY9JffZi09eF+DjnbIu1tbTCch+jpJVv1V86d6l/Vsaw0yNe0vl\nyNeScT6TnC5/VRcybHec2M0kVvR3+7QPrS5Y5mvbXmiOFjNWHPbtUo4KDs8D\nEEcXTpvBBqOwhW3qXJyeQRPzU5w40t5Kvo+pIjAskNsBC/QjbbCTbW8PGkh9\nYAnG\r\n=15SE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"94a0dbfb7f3f1c4f8a420e2c481629f87a05e083","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.23","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.82-renovate-internal-patch-94a0dbfb7f3f1c4f8a420e2c481629f87a05e083_1623319120152_0.041327314644311386","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.82":{"name":"@balena/jellyfish-test-harness","version":"3.0.82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.82","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98d0031a47782b91a99fa4020a4bf45c0ec88144","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.82.tgz","fileCount":24,"integrity":"sha512-T+KmmrXw9lDyykkeUSD8zcrI6Y8RAUbZAoioe7nUaSUWzDO+h7qAj2w0k3ymfXu1TV5VGLlmQW618KBkY1+bWg==","signatures":[{"sig":"MEUCIQDpHtg9KQ0TVMjUeX+MpOT8n6x2nkF5nHO4QiacktR+NQIgEKEgpdJpFN/DMoboAqY+6jtzwi4IOoRCa7sHS58yX3k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgweOwCRA9TVsSAnZWagAAY38P+QGs/D4/TtAJU3nmsz2/\nORy1UvJFs7Cjfwempq4FKrh1/P5JCVoqMFjED3vZYSOcwKLYqMlMAMyQ7SBG\ngYIn2NAxbSrCKjuV7qcugShwyNKfXmy7cpdamd5KKrTF/Qz6D3aYcISFd4bx\niFuD1HmHUux2zFUbSq6kp2ivXZBlnoCMUKBqDHxrkUdhwZtSumfdYvcP8d5t\nAI0q62vzRhfKRg5p1JVQf4mNSXq9TLbwmN01suXMjqzMGQXTMsCvYnOUYd6z\ndMZXl478vUUyLVHdtmmSPzPRE7/RioFZo6k+R40KQJ5/ghJiGBm1/4Tv1ePy\n7kTp6MeU7ghA3vwwKyO79RYD/23KQMX66N5YRZwwrqFGh+Xgf0wNPCJ5rJhu\n/LnX+j0sGAnJncZQ4C7umE6FNgqmSwb0oUsgjA0gWkHhk0fAi+1MQGTtxwVR\nlWayLTWNJZyaDaXgUDs3IVNxsLGYtLQKH4xK3iyUAsCx0kegXOyCbf3L85SZ\nclohGm/91V4dZK+s+pu2PpHVs5cXpeoYwaMiE4eUpu5DtIqEy5SQpuufGFGe\n0VGCRQhQYX1FJtBiGhpJaRfIAwtuTZMeT+aXbCk6TDRpFBv5JlajOXwKoz1G\n3ACWmHiQyOAJP0qAFuN2KvQm3zXIP/IV8sgXe1clLD4/x5rvrh1vDfdcRgba\nL5+E\r\n=XXJC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4b755b9363d0e2ceee1ba315fb7524708ca7f0b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.5","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.23","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.82_1623319472396_0.523057439555578","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.83-renovate-internal-patch-8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3":{"name":"@balena/jellyfish-test-harness","version":"3.0.83-renovate-internal-patch-8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.83-renovate-internal-patch-8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe187940e32d7f1f032a369f17a99a89e86ba7d7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.83-renovate-internal-patch-8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3.tgz","fileCount":24,"integrity":"sha512-A+bXZ2TdeIuqrkZd3vh/pu6xz0bPruar7TpFVKBjFjzCe15pO6wCRY6qKhO6avo3C2upWNROhuipT/NQ2VLp4A==","signatures":[{"sig":"MEQCIFgdZqn7LnOr61U7eGsAqPmmJahkym8l8/f/ECvvtvrNAiBY/G+djwYyWf+Zmv3gc/IWuzwtlN2/Lt+ajD2xR4OqUA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwtJCCRA9TVsSAnZWagAA+ioP/iI4XC7CDEWuu6koAIvu\nsLykwMflWGSwfVoeiubKsmzMLxyYCq4Zu9P2sL+TQmKhBMxkxcTfGqxetgrD\ncW3dte9CHEUaOCbrlXPsiIwAEqy6UG18gC24PZwrkfnA0slDoVN2I4rfU0n+\nF4Ctfb6+NLCCl1ZGUXeTFt8qz+ruI3l3ic4Lj9lyYbsKhuzAU/FKWq76XceD\nTt5P7H+V7d9aQSoatkEFswfaBcbxmxXWbAsANgzZ3E3MVcpmcc1PKCT/uye0\nJiurxpo4fybu96vkq43Yd3UCwJmIfYq98pzLe9KPERgHnJ1NPaCyW2AFsONO\nBaD8s+nfSfxP2ASnhuN/fOJQDWM2mAFRtkxFrt+bZYbev3HCAq9cievvGB3r\nkfkhwYEAxYo+QW40IevZ0xUgqjHx7KBmHfHnRDp/zEton1kqf2r0tNuF8TuA\noRCgEmwyWC3bCbUUJreoLcb8hsTk+kGUCVffuXOOTD5qt4827C/yIKaieXGT\nMsujJwGZ/8XQb6yDRMb9iRpLyw1Rn+aY1ldrBuzEKhAfD2T2B8Nc/E3jO9k4\nNxNDVsREUmVr2wTORfEwXdFTDqdV/BFC9CHkfpzRmwFutqA1ic9gWyYhn9Zc\nwoRyZR0cq0oaIipIo/kwpgBOZ5a2C1vqEAe0WEf7Fme/bQji0nyKywkghXzE\n20qL\r\n=GPyZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.6","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.23","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.83-renovate-internal-patch-8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3_1623380546257_0.34634049719050286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.83":{"name":"@balena/jellyfish-test-harness","version":"3.0.83","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.83","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"284fbbfa3cd707c12fcaf35c9acb6510df6ee0df","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.83.tgz","fileCount":24,"integrity":"sha512-dWBTSja1KG/yqJTJzNR5vLxcCXS9hQbSHDp63g1PLDYKcwJIlYErNSWCNjr16RB4iKZUu1P9x5goQH1jBTNPwA==","signatures":[{"sig":"MEUCICu1C59GdaePKoFiOkd0Zy4gw1cyDJE9mshp1pbuHhf7AiEAktVwK1hqGUEervJRDECjYBZBXUevubtH//q7qTVGoqE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":114979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwtMTCRA9TVsSAnZWagAAzo8QAJDxXOKUMyNeHc9C/2PO\nZEkc8AL2G9opPGyQy9eC32yf3NlnGOSRGoPjZksZSPcOLYdcs2YFpMj2PNQs\nopmexFtHUF+kNuGXACtzeHmhJ9tJ1yex6A3i7E3m93q27CAX3axBglcsfdfU\n4Av2wQn1sUkVy+2Vh8CtuiL3bSzKBejoMVaURq6UJPFogW8f68uG0LMuR4Ig\nD3m0jhmXDU0dmzQTtTkRtno2E8XUmLPfUYjbieyfL2gQeNmHhXfttekCnoFB\n1QtpxFxrXdQMx9i646DuBD0s+Jgs7Z5DIrmEM/H0kuE6KlUZOTrNdgwsoRaS\ntg0fZGt4Sxhs7AxQV6VqkyA/WugKXda7JpIRv0KnhGVGQBRPFhnqDb2twO73\n0jh0oOO2sO5r07Z2d88hO4nonBLahcb/m7oAfYhfHFNze0ngvwfVMDMH4Ifg\nEpdN+Tsp9Jlxnq4y1ru6NOSsgQFBQ2RxDmVPrEkGMyjzU5Ccx6d4v6T9J4by\nI5PiQj742nsX5xT8SIZ1QTx391Psyy7fz5UEAOkOxUyjMW3mKOsr/+sdinpJ\njFYFe77NXkmWfqeQdTaMTBHUUjQ8uXEuLbC0So5c2TgvFQivH68CnSsiBIrR\nlrBbbYRMJ0ABFo7DtH/qjlVx4A5dSGcAeJZA6ONERtWfRpu0izDMedwsG2CQ\nJHw3\r\n=4ydC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6a953e935378345780d6a8065094256c302c5596","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.6","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.23","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.83_1623380755391_0.04717433612644917","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.84-repo-sync-jellyfish-config-default-03fbb8c60e78126e0b42b101d6fcde97d3ee67e7":{"name":"@balena/jellyfish-test-harness","version":"3.0.84-repo-sync-jellyfish-config-default-03fbb8c60e78126e0b42b101d6fcde97d3ee67e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.84-repo-sync-jellyfish-config-default-03fbb8c60e78126e0b42b101d6fcde97d3ee67e7","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"615f021e77219fb83bbb55d999d592435e2d3249","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.84-repo-sync-jellyfish-config-default-03fbb8c60e78126e0b42b101d6fcde97d3ee67e7.tgz","fileCount":24,"integrity":"sha512-ELsOBFn1PVoamiZ2g8RCqe4ypgSfrpm1CGhrbE4A+Fy4wBpgPkVWPBEd5H1wVQhhNvkWnIa+zr4VYvSbnLbjXA==","signatures":[{"sig":"MEQCIAal9hMkPXxPwgBkEntlyDSTjSs2E7ODRYmISrFTXz6VAiAOdWwumfRK4m1+xXdaQMXN5l/FnsH0LXiiova5EZQdkw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115154,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwu32CRA9TVsSAnZWagAAmucP/iPjXSCTV3/twHhMOrz0\nnG1qGaw5GtfW9IGnfbTspajck1eVTjLr7oOfTOzGAbMKzYdOfRF7C1dBizwq\nhv5/1fJFwlnrQQDrfJlSr7ukEOLQU1FVQU82XhqXJwAimG0AJuCL3TFTglAp\nr+XHUkJBiGW56IPRIPTD+Pl8/p/6xrWXrm1kLnw8UUbyAI1AnzScHLybrF6p\nsFAbcVVmsw9WF0viq2nXIxg5c9bWkNewwt6LT1nipnjUKuvigserD/agbWiA\naThh06NlPJq6EqRKzPjbqRrtYIbgjMA3ZnzKJrzCwt7I+yc51M4eoNKf2ENe\nPfvA3/iKqQKgqmA6WMXKNhOcOqqI+UbcFy7dfw95j23RNTFZoDXaidw5ANaW\nrqRSF4mcTnHzWNuXl/phtBPIjeIZlN/+SdUq78sJD3iLxGFqh4+UUfghMeBM\n9LiuIG7fJ0kKV4EVk+lSsySFdBqND/G6x/LoclfJLbmU9Mwmc4V2niOaMSnZ\n5CO6Lg73m294IzMsw8uUg7+uJwmMuGNCsrDpNX6qOWLjqerPYNlz1+wrekfm\nIgnOQtwcgUyw8QLH5mn7DiBh+ZqYbDOPpA5wmVEf2BbHZROwVY7XVkazwHsc\nayw02K2pVAvvDQn6eaANL852fWrIAUKl3UR/Z3d3YemtW1J1y+NRLEPYc5Qs\nJdjU\r\n=ujL9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"03fbb8c60e78126e0b42b101d6fcde97d3ee67e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.6","@balena/jellyfish-sync":"^6.0.229","@balena/jellyfish-queue":"^1.0.147","@balena/jellyfish-worker":"^5.0.23","@balena/jellyfish-environment":"^4.2.2","@balena/jellyfish-plugin-base":"^2.1.146"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.84-repo-sync-jellyfish-config-default-03fbb8c60e78126e0b42b101d6fcde97d3ee67e7_1623387638577_0.11207381420365436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.84-renovate-internal-patch-3245bb41e4735687fac36b56ba6b365101dad723":{"name":"@balena/jellyfish-test-harness","version":"3.0.84-renovate-internal-patch-3245bb41e4735687fac36b56ba6b365101dad723","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.84-renovate-internal-patch-3245bb41e4735687fac36b56ba6b365101dad723","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9d81742e6c9804a34a3fb0a01412cbdf7f6e7980","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.84-renovate-internal-patch-3245bb41e4735687fac36b56ba6b365101dad723.tgz","fileCount":24,"integrity":"sha512-paDYoNWl7qLWWfz977yscFfzNmVDLmt8hwYlN0hLUfL+iVl2jlYAWcCvL7OsjFYl294TEh2r/LSfM7/sZKjd/A==","signatures":[{"sig":"MEQCIHy3cZ/DF3Byen5zkDdEe8LQ1NDz78is1yK/6yAkHlO4AiA7O6PResLMfyaHCigIWKAeiBM5wIkFLu4WUtgNF+g5YQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115118,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwwxtCRA9TVsSAnZWagAAz9YQAJBx068DU+Ro4eZeUNgC\n0HSY/hp7lc6Xo05nM0BySezD04zreMACYUR2Hdu73Kk1i6t7Hk9+8lhVttfA\nMuBxeXjT18hfNSIyNWLXju/H7UnukWSqc12SSUPenS9Pmajd6uqbi4YGDtZW\ny7PKl+ZBx6kn++O5aL7n5K2wZb6aC+9ursfaqTBfJO5u4OEDfFKV2v7wVhZG\nf5Vg2gozjY3on+RkPSZyVVyz40BkqmyK9OTMsRJvB18Xk5bGE+KYYjN2qyZC\nXobdn4gXOiazFj15Fu1y2DirYa8p6rXWkh4y0PxNe3c8F6rdYMjemX/sL/4/\ntrSnFv7sgdRb8r7Ii7AmuvGOfiI2uzr/O+XABgisSbcE0AX6CYamM9Y54PKV\nTC1gLYUKQYxWJQof+xKKKgA1RrKQwhFFQ3Ml7vtT8L6OSEz7QzPoxYi2LVl6\nT9xjoAoKUK80JIJ/rqjj2OgjYHKOIHqoea0EyKv4cqXfRPQH3MGJzN2fw33l\nFhBqLpq3JwjO2C0EHjR2hYdF41b9wQvFf3IOIoMKYtvwBDyD4j+jtqMOU2Rg\nsMC+w8A+bPdS/4y6mmKUgyF5pbnN0vigWvXqUUpBeMrS/pgD9cMtnxhwcyrD\nWxmcXCsBBfgqSIBUbKdMLjcWPY6cGm52sh7q3GVf7Cx76fubSHnDDMlDa02T\nB7w3\r\n=Ckse\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3245bb41e4735687fac36b56ba6b365101dad723","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.7","@balena/jellyfish-sync":"^6.0.230","@balena/jellyfish-queue":"^1.0.148","@balena/jellyfish-worker":"^5.0.24","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.147"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.84-renovate-internal-patch-3245bb41e4735687fac36b56ba6b365101dad723_1623395437122_0.90649232973975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.84":{"name":"@balena/jellyfish-test-harness","version":"3.0.84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.84","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f6953b766012fbaf222e6f9092ee5e2c5c041ea3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.84.tgz","fileCount":24,"integrity":"sha512-EQMEVrd2aK6zybF8X4jP/NwZrVbciKIWjHXIX3yizF92y6cBV1S1JWGO0PGACqKQLVEhUnb7w+Vrh91sueg30Q==","signatures":[{"sig":"MEUCIFzkYykqJBSVbpIE5X6py/e+2oH832Q8ycV195kmTyM5AiEAuBhSS2O29eNSOgJ4C8aNKMZyoJvyShV3pxUTHbdOcy0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115053,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgww03CRA9TVsSAnZWagAAsL8P/2aA0mcKJkJaEtsjPUkt\nx2cFnlMC1UCaOR//0aXOPl7dHAILf1mvng+bDVhS3zQRwaOsy14KCjaJZ/i1\nVMcRCZ7lwk/TNFK/BbkBnQJum2qNznOb9hjO2JQB5V4nWXThZ1wXrAmTnpv6\ni9rZO6B7RQs0oIPLFSQPD7CqAhOaq6BeRCil2KVA2m4Z/yrXyONhuN0k22//\n38NiSamUF+EZjaCC7XKwWDczyC6BPLCcxRWn1zSxejCYGSLPs3RtvVEEZJqe\n3W7WiWl1wiBkE3OjM7L42WDjte9Xb7/NtytjXUnjtYZr69eT3OLx3+uivfq/\nEEQqzHeNX7k0+FWAwYtHiIU5V7qLX/4MlSXWZlvugZJDFajP4bJavTqMDr81\nPT33DMx3zK7cVN8C83xc953pTCZLMJs3yc4rMrfzOkBCfflBdu9h4neklaBw\nSDm+RDzM5ohN6X9f+hWY5bY1JK9+3VQgMsOQa29EDma6CzaXsfDwIMGoPUM7\nKo18B6lqArGTwWpO3+W7fHh9+ggQLEUdwe8MbL4TSJ1IZNE5l+NeDcny/Us4\nLUIVNjLw98d8odf3QpkjjhXc7KfnDgyXF8qfW9BseIVwYusBdIN3gVDic6zf\nNxuBq6Wo27pCMWWW2PDvLaKpH1rCXROWe+7QGLREORZt15sCg33z8T2qhMg3\n8H9r\r\n=wLPc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a6b108d0554d04fb8df87c1e2883380e780d160e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.7","@balena/jellyfish-sync":"^6.0.230","@balena/jellyfish-queue":"^1.0.148","@balena/jellyfish-worker":"^5.0.24","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.147"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.6","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.84_1623395639667_0.7362508727679511","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.85-renovate-internal-patch-48bb20227a47fb3eb5eaf976da4335a28a21c8a9":{"name":"@balena/jellyfish-test-harness","version":"3.0.85-renovate-internal-patch-48bb20227a47fb3eb5eaf976da4335a28a21c8a9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.85-renovate-internal-patch-48bb20227a47fb3eb5eaf976da4335a28a21c8a9","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"77d11ef7004c4894bb8b74749e41b50312ec9740","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.85-renovate-internal-patch-48bb20227a47fb3eb5eaf976da4335a28a21c8a9.tgz","fileCount":24,"integrity":"sha512-4BBlreIOlyxWdawRIEtqotmIv9SdhYgtnS2YAqFNhxgCfCoMvoJNIc0Ql5uI7x+a9GKbjHxDLHe6D5TyTScYBQ==","signatures":[{"sig":"MEYCIQDiya+UZH+uq3klYlx3ygOdQpl5IgKcmT/ima/gGekagQIhAKzFgbz4UfwVQDqHR5BsyBsvefNpQtFv49ReJNfA6Mji","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwyA6CRA9TVsSAnZWagAABqcP/0abqlJSXJr73kff3khk\ndUKbpOBTqXTxYuxpeZXIhn3ZYo/r/KxEpT2+XY+14DCr8V5hhDjYYVIhtzG8\ndVry3THzFWMSOPGfzOscZeHYPoD10wCHW4ZeWTeKnA0HxDopYsyH6f74AHYU\nzMqXs0Z7nYGuZci9dBoa4vixORFxkC0w/rXl1SHdYag5nbcNJ2GGL3dco/LA\nB5UJ8N21wQLJITs47T1r+ZDGZQ+z0Dn+aF4jnRQse6fVR9hW3PNU/+16Aqw9\n9ZDhHhFGBxqX63BZs+ZPnOWmpTuyRjw8+CWqwyqeGMr03dzcXbQ2/cZ3eODH\noDEJ9kre201BB6h9IjfwNbK2w7cZSPusijud+49BI3p/xSSD71N8sWlvHMd5\nDTME+PVwYgFzxyRiycypVqHq9alK5+myoBD1tF4QdBJg/m75bN0G7iHWPpbh\nrweYkfL/eQ5y/ZuBKfvn/JN4iMoFSBF26D8ojMI56dZfNzQkcua/XQ7GLoyy\nI9aCLvIu1ToWU+Aqv5K/ay2y0ITR/RgEwlaFdtW11l9I2EU+FiMQAkQY6DEn\nnH5hSGpzG+prGIbBLuVwgsKbo67AAgOLrX6PizPmL0u4M85oviZ+35hA4/tP\ncYS7jURi2auB3tWVgOoSux9Gl2GuQDN8S5LxH55/uk4Ex6XbEIotnVBimjPq\nnJSE\r\n=i8Og\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"48bb20227a47fb3eb5eaf976da4335a28a21c8a9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.7","@balena/jellyfish-sync":"^6.0.231","@balena/jellyfish-queue":"^1.0.149","@balena/jellyfish-worker":"^5.0.26","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.85-renovate-internal-patch-48bb20227a47fb3eb5eaf976da4335a28a21c8a9_1623400506410_0.370429980060633","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.85":{"name":"@balena/jellyfish-test-harness","version":"3.0.85","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.85","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"829b96a09a193515004a16f575f4b6d686247fa9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.85.tgz","fileCount":24,"integrity":"sha512-/M2Nvrpih+59W2Jmar/JnYwxH8bal+XBLs2gTKltAfGbOYrI2ruj1CTRKfuItMrDR18R94CwYArakftWqdmAnw==","signatures":[{"sig":"MEQCIEzLebW0fMHBjt3klINxnGms4NZSX89XyiOAOrYKZ43QAiAk7w1SbavHsyXFZg+oFYmCIqFc5pKyB4/uWmhckEezgQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115127,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwyD5CRA9TVsSAnZWagAAeAcQAIvfN9d2EMkAxVTri1iP\nmg2gogjIDMKKm//aY+/HfK2+H1xUzpHx5MhCw7dhSyDidwJg+3S90KXNhdao\n9UPDs4LfLcWn0s/zXXjgjhOHjLdjM5q6YUDww5ecBz1yaCRIgs45F1Efc/g1\nYUn9nWfRBJWzcdeta1u1zTRhDVpIWFcvITkIKeJEWMhYDFwxiNy2DYUkDTo1\nJzGOsbw8JT2RtWTvEwWo1Kqu8lb41lzOnps5zhvlAKftdey9sjPD8zqb/TzE\noxJyfm3CR90Ln0PCZILiAsoARYVtfKtZ/kSCc7p+JD9gRTCSyhbeNI0Pok1h\n3L2srMHDh2yFACoWggIwFkhQEOagZcztW2x+e37XO1yj5cNxvuL072UYz6+N\nEM0DWgZAQX46x8VVT16yoMOF9UE6pJ+q+klegRBmIHnJiC8LRelolSXCyVi4\nCm2PovlKPdrae7W/yOELxALvMeJ9RUy5nEiWWe7hU2dmzGa9PY+IS+5LqdkD\nsHUNMcR27HTgliNW6wsJjBFXEFt48zlUlmW5JvPOUOrTTWsZH5JsMsp3QsOS\n+y0q4+WtY3GxegVWsHBerHeWY085JU2e0sa5+++NXmibGj+ZBBuyHcmaNTGx\nBf9j5Wl5QCKoHGEKjvCL1gcFBfC9bd0ncMslfxyGjpmbvx4SKLslqlju0rWS\nEz2X\r\n=efZ3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7d6b768a257bfd406b3755faa6ff2e28ccca5d2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.7","@balena/jellyfish-sync":"^6.0.231","@balena/jellyfish-queue":"^1.0.149","@balena/jellyfish-worker":"^5.0.26","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.85_1623400697793_0.4103971002546625","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.86-renovate-internal-patch-3fb94eb3d341c18de8d12423a91d63485a730fa2":{"name":"@balena/jellyfish-test-harness","version":"3.0.86-renovate-internal-patch-3fb94eb3d341c18de8d12423a91d63485a730fa2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.86-renovate-internal-patch-3fb94eb3d341c18de8d12423a91d63485a730fa2","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17c5269d12d6f886bcb775bcce0b16d0b09cf1d7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.86-renovate-internal-patch-3fb94eb3d341c18de8d12423a91d63485a730fa2.tgz","fileCount":24,"integrity":"sha512-nhEnKZqa3As1XCyduHyGSy3tfSYpb8hB4m/PorhkHUho3eFlQyWzNrIyZs8Zur54Ay+SwfyOzOhWyEFEkHJFVA==","signatures":[{"sig":"MEUCIQD7BoKSzlxlpgReR13VyJVhXjhU+bAtnm8/2BasDzje7wIgbaCQoILYirD1/qkPDBd5HcmiagNlEmR1ltL61aIm+Tk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115266,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwzW2CRA9TVsSAnZWagAAJrEQAJ1FbYnw07zQgMf0s+GU\nZcBp1aSJhmKgzAcDGBgKqBKlhADRs/QqtyMJBKgHNvhUrXgF67Tm69HLchG/\n3xs3ROmfBkHUH1BJipwKIAruliQKOBJ8OlSKznVPba0SIw8mj4MEDzFAGiN3\n775vuCC8dKSZUgYo4mUu9cpgkuTIP/ddKkcAOQbjgG1CsIoWqfMmFWL9epig\ni8YPvbT8lD8CwjsmjMZj/qTC6jOSMMtv3pS6Eu0HIIYdmVq/pqBF+oBbJ4Pr\nYcgDUBT1CpWO2MiGDPzFKygSsoGU/nzROkd8ux0YJs2s7y9Y+JqmOxbC/X1p\nKLuzkLBwojHz9QmLuwQEJkpMenm0G1kZfJN9YZlVb4rs3mtIeGtZQxANGZpa\nFhyEmmBBEUDBw+I32dIwFNWmNE11q0RADl39v5sOrVCTQKWhD/KwRl6UmHxf\n7EMaOB0XptLjvuJof5aPj4q173LpMtMSBMMhnyRA7vm6/PnzJDLdh+Nkd4Ce\nPDSXNkvU3wukJI5y8ODZl8ge5QFDF2dnR8uDd/FrlEiCco9cKd1AT9fKHrkO\nwLEjEPm5GGLwnCw62q6t48uzQhEcywmG8HAreD8sG9Igqas5q7jjcdhFgRto\na11vfbf1xoJoDD1jeAoPtwEkh6ydDdWTUEvj3eI8hIKdwtupkgu25+3EJjKf\ny5YF\r\n=QQuB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3fb94eb3d341c18de8d12423a91d63485a730fa2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.232","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.26","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.86-renovate-internal-patch-3fb94eb3d341c18de8d12423a91d63485a730fa2_1623406006311_0.2600365176351007","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.86":{"name":"@balena/jellyfish-test-harness","version":"3.0.86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.86","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db2b2a53b3bee746249a859ce3873a254aa7e846","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.86.tgz","fileCount":24,"integrity":"sha512-Y2j2ntFUI7nC82BE4i6lxx27uXkrcODhWHddtu6rHQCq+MLbtmR9zP8kBzYA1xZJEpNWWmuVlPIzbUIYbrMBtw==","signatures":[{"sig":"MEUCIQC86qsZutSLQQ9vWaSoC4DvjO/PZ3GQF42hRYE1hU4AxQIgfvQdAW8NrPMwg+bRUQVjxnD/adXE+5x2byVb7PJQbEQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115201,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgwzZ2CRA9TVsSAnZWagAAiHIP/3O36gPiR41Phrs05R8t\nznLw0CB6RzUBNnGs+P4QRKNFTShjBEFCb6ZiA7jV+TAgBTCA/RBR93utjG+W\nE53j1WtKkAV5YHvlV2NeKQ6dE/jDawsBBnQCQGtF1q2ivCDUWcoXslPRghAv\nZV16gmMQOUKgouDfJXsc5OFCWd1lPr5wcwiknD1e1+R2RgUhfrZUmMazP8IU\nzziH2j/TfMjVA09g5vNC/KiTl+yx8CwTrK1DqU5+uQ1JmNZNZv7IaNnGrWxC\n2+jfORiVopM9eZe29yIKzBk1CYPlOADb5V2hjKoLPT9cY4lAkY/C5umtohrA\naka/6oapRwWSOS6no5JL6byMWAH43N6eeL2Qa9a6bIW6M4OsOJJlLnHixjy4\nuZtpeg4A+gwm6+R7CIoYVlmtNw7zLRQMP/akqqx6CO2v3EFGxcLayk07yaQE\nB+KpNYwoEwCTVGNW2AtCLYB+/ViLOYT2Vs7Xb3zwf/ZQwMbBpQksJi/9MpvF\nowgADMKUFuv2IfT0xizhB4hdD0qHJxdvNFjGGnj5Zg32l4ctqYFKMMU7ZVNI\nG8LLVxT9qeTqzCStVt1L86Y+bHRdto0Ggq9V+xyUV/fqC7x8EBYpykSDltWq\nh2J2UoDNUjI8i2V0kOjo54FdHdDMQ5TB1rrFb+hpRoVejel86ZwdEQ20v4tG\nXoR6\r\n=3O1d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cfc1901287b2397dfa1a129250d6ef579416f552","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.232","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.26","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.86_1623406198177_0.6069640143670392","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.87-renovate-internal-patch-b48c45d834531870f96eadcd874a99c035dc2dda":{"name":"@balena/jellyfish-test-harness","version":"3.0.87-renovate-internal-patch-b48c45d834531870f96eadcd874a99c035dc2dda","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.87-renovate-internal-patch-b48c45d834531870f96eadcd874a99c035dc2dda","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"259db2764c2917f66ff20009b1dabdf42d089004","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.87-renovate-internal-patch-b48c45d834531870f96eadcd874a99c035dc2dda.tgz","fileCount":24,"integrity":"sha512-Q3zKT4654CNxHeEIWCW9uiTEmyZynyLMcgkCCBBbiO1ViAT9wXrvJr6yXlhtqVfaY6wyw9rFH1KJmivQHhE/vA==","signatures":[{"sig":"MEQCIGf0HpKY7AZDk+6M0ri3DYsv3gmi4IzWSFUQ3ACnddbDAiAhkydRQCSzZXFHT7STuvwg/1wpyBCI9rCQTrohRMJ0Zg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115372,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw1m3CRA9TVsSAnZWagAA2/IP/iobgsCvsahzyWTk09fZ\ni35ZpgB+lAOfzdTEDiwf58ElY0l8thzfPCTjBv3R8uGMg7AZ+QG3M3l8lm/h\nvs4ckfw6TBTx+NzPI/GYHfX2rIzcrAEXl/0sYAlUHvIZyqWDnLJT8wexJQNM\nnvYovH1HXSDwRxdlViTFcig9lrbz1lIeh15uDvvK+yFdCfBNvlMe/qM0VWdR\n0RG5GKDo5RigSsiDC1tJpBe86pKpMr0f+WyxQYLgHds6lLyAv369cbO7Y0+K\neF6lLSIlkfHTuTbDwQ7rLfaMy02QV4ZlJi8IBdQOwLCEazlDUXbkh8N1KrLW\nEBEIYVfnkByG3cuYE3LySDchRe3VEsHz0NRRI/arVMZ0dBvNF0oRJq6ZM4LE\nTdAZzP5jE+zUQi2aYL7k18qx9v/PU+5TpP61Wp3rUvvVzdV2i72XC5FEfPHl\nf0U2veWRrT5aq1UH0G00rMM7tdp5McNKlan8PYXeuceENCNhkkfgbyZluv1n\nH4XzRT2s94sWwEQPUnfs6jtx3tEB9G28+HpIMxvdEktJn6caZ9AU19jNusrZ\nFuLCSoy73VK2369Vyw8BXTmNH7w3gl2mQkHpOUIsTJ0lbly4wLhDYCSPr4FD\nKfj5Hinp2ooXYxu7U5HRfjMRKBB/N0niAgzT2IFuOBhhuXI2WtMYCYyscyoL\n0OwL\r\n=Qcpc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b48c45d834531870f96eadcd874a99c035dc2dda","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.232","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.27","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.87-renovate-internal-patch-b48c45d834531870f96eadcd874a99c035dc2dda_1623415223169_0.9569415651586513","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.87":{"name":"@balena/jellyfish-test-harness","version":"3.0.87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.87","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e18950ecd65b9881e6ba1668334e769246164e8b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.87.tgz","fileCount":24,"integrity":"sha512-7UaHsAZfKbKkX4oHAtDHsKza53RRwLMYocZio28tTi57WLYTl4jGpW+Ic1XFewV71+Q8XZrZcZCCrWLwqHKhnA==","signatures":[{"sig":"MEQCICkw/6DVXQdw0VF4bnM7PHQf61dToX08LpaC/OADfF44AiB2gIXHUotJsNNHOGV3k5DnqBzyeF8ag5qb1sfaLgTsiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115307,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw1qJCRA9TVsSAnZWagAAQwMP/AtCAnR1+19Mi/lgVQha\n4JxVVbD1oBg8/9aHAljSexksryiuEQF0BeXR7buNv8BpEsi2Fwwq99V8Ziw9\n7ey13+k7YFTirSBuR1yk/6sjVMHdaDnAhQndc7T1Fdb8+R2YkOctmrXMiuOg\nzeZQJYJk365RLDjvb8ryHNqbUIrIIpDBuS9H0FL22zvkfBXo8E276WY6z8vR\nj5WN1HKOe3x5LFnn5qe/ZrsYNJiRhIYXG/t4V7TKMHSdWlF+jADbjRWA7WHI\nwjrtZL/w1T3bll05EonI3QuMNjZ9IiLM4vY8oVhcQYG9ZsLQBcDX18c/Uy4f\n5mqMXnLawdUD9JMpA4XZ8TTA6dngb3kKEmHqFXamFK9LK3dFoR6lYN/b+dl7\nqMcEvzR5F9/RrJ8odTpd47d3cP5Y9eaeVNJnpkxNIdbNSgSxJYTVZlkQTLQB\n43JwSKvjv8uc49F5yLNoV5oX0TjyvL5KdJv9AwuXG84vF8bqjsdm+NnMCz1n\nUhb7/viROsw6PVlGNAeFHSNxcVsyx8si3Y6KKyrvTyMFEzaE+63UG6KQ+iQX\nYjAA+3gnolAj58v1mi//gPSNYDbLAZJ5fA4EO0zULlNuiNoanbo/xYVeTSpS\ntC9gNCnGayejuAFrzcrHZ8xOvINQRZHt/F+WCugjSOCmbJ7ARO/U5CY/x8Mw\ngCPZ\r\n=R9em\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"631b58734d97c8228808f17bfc66f6c5d71b37d1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.232","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.27","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.2","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.87_1623415433295_0.6740004209165336","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.88-renovate-external-non-major-0abb9ede14ad7a723b56f3749fab7d42ab05b2a2":{"name":"@balena/jellyfish-test-harness","version":"3.0.88-renovate-external-non-major-0abb9ede14ad7a723b56f3749fab7d42ab05b2a2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.88-renovate-external-non-major-0abb9ede14ad7a723b56f3749fab7d42ab05b2a2","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00cb3e14070e8b80b8e72b77e9ae363db2fd9fc6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.88-renovate-external-non-major-0abb9ede14ad7a723b56f3749fab7d42ab05b2a2.tgz","fileCount":24,"integrity":"sha512-Mm8RLYDIxu62kWGBzBr19vexUR1bNcp8rncmkv3wzus7bTyX6wjspeZFKLzWHNz3AZtdTqYyrBBlpVkgQhrmgQ==","signatures":[{"sig":"MEUCIQDwknCryj5RoPG6lWaCRCPjxBmHD0bWMXCMtbmRbMhB8gIgOva1KvhTbjYsk83rSlb2mgwnmJEjrKPodB7iI7HE/fU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115470,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw/uECRA9TVsSAnZWagAA4X0P/3gULxbu0xpNXnkaRrXX\nl1G8nNhoNg3tDEUYYbk1dv+KUraxMyS35TOVZBVprvnRa4nkX/sEXPreFvaV\n4YtogGvJOd87YvAFPlFrqi+12tB8EbfioxWwxutmvRdNCSZNZv/ShnsylPpa\nTpeGckhvcW1ZDk5KIynA9aLwdF3k6+WhxCCfP/XtXEeRCD9ZILrPs+TyyMwQ\nuHSrK9WlPOZrQuG4gbYzPH2lZkm7rBpk1D9ImtyD1pqFt5uoEP+I+pfVJEop\nqT7i24PhBGEXYAKTUyXdympYwsI9WclwiLAmM5dbthKKgltSFEp49uZ5V/v1\nL1brIRFfUP//XVQ+JpjsQOTTv5UNdEfrUk75DbGt4Kd+EULaS5GtYDH8nXAI\nL26WhYpNaiy4OMuwl4XwWqzfbmpk//HhMrfaQAo+9CXgv8L6NMzTXZXf4bT6\nTGB267P1jr3zimMEmSux/N1B7LqnEamnTJ+xAuWnsmnAilxFjplHL9PUbdiV\nFxgKBI/CiyWBoek8HqnXxTkXPE6AugFVTyhrZLBoEmUDxOih/Ji3DrfHbRAA\nRmTDwy0rTl/8gwIrGV7XGMIDW8jeY29WyEdmCn5UUU1IxeqXGT3fr2cdBnAq\nOS6TdeY8NIbvrWSB3F1NW1t3uCm81bqwkFyBOj7ZoQggjDhkS1WnRX0unuuV\nfZpJ\r\n=PT4+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0abb9ede14ad7a723b56f3749fab7d42ab05b2a2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.232","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.27","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.88-renovate-external-non-major-0abb9ede14ad7a723b56f3749fab7d42ab05b2a2_1623456644694_0.5954964545969312","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.88":{"name":"@balena/jellyfish-test-harness","version":"3.0.88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.88","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e1613a2bb8d1277e79ab74de7d8f6da51428bdd6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.88.tgz","fileCount":24,"integrity":"sha512-uo8Dd6XDJnH7TzZPkjxTxB348sONl+yea7B3WXxPEcH4DxBgS/nVDslVVcm9NTXHXHFVUrfEKxyqeojsDKy/Bg==","signatures":[{"sig":"MEUCIQDXppMzIgq+hJS88hsNpJaNB48lRMeYWEKuDelCcoVukgIgRiFPl9ap3kkJzhH4unJIK/TB7nfLv4XBlJ+k2fRweT0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115401,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgw/xKCRA9TVsSAnZWagAAGyAP/3uiodfaG9MjjSYyWesc\nPJJbtDeYWNJPE12rlNuir8xqnKUsZWu1/dhEXzC4Y0Gl29nc6YBw1V1cRGDt\ns3xiVoUfqEDt10zdEjv4cS+XgdR1hYuM1TUJ2aE5I3bbqcVqYNj0e5FvncVu\nzgjM8bQiSJQjtBkABsEbCjVRI/mwReq0v9Ucsd0Q2nmia9LZw7tgwWJMPYRV\nmp+bVambHlCbEnZnYxPOHnVyrjcWTcopzNDYn4x9sTdRwvyncT/ETCC5DfTd\nGZeWceUDQhi50ZgcpF+jKUhOn9BqlfgCfcmjirxWl+zB4MlXwPy9bQuzP8lB\n+SW4hgyuMahvQZqKqV6tHMCh5JKx+0latLfHj9geN+hLA6KovQS4UKXGdFS3\nvghWEvCYAN7H9j7eipKjYRbSR+H4mc6TIbAk7eUq9UHpM7wZw+1qIwW2PkJL\nHbX6CcEqMzHlnHjrnnmuQ7P7FbxnUzJ3YWEm85gpi6TDOgIeyxBUAnfygZ5M\nKfAh6dwSNg8XwrU2nfBhHFRdm9CNrUuodjw+67jCTCE3hKRk9wsWDpR1pfMg\nA7mkzVi8jk74FYCuhrmcyV4CMV4MBLL6ltEqi87XeUqeKMyzCbEoMYz8KqPS\nO1g4nLuJ/Za3QD+0IxH/bgUOA1Rh7qtFgbYdzbMkrvmq4J+SV/r8v+ly4qNU\n2Rwu\r\n=MK2y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d95e0d50cdd512cbed5b07d9390f86a3084d6a83","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.232","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.27","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.149"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.88_1623456842338_0.4162993164950479","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.89-renovate-internal-patch-06078ce69d4ce327d4c1374c18b803689491e641":{"name":"@balena/jellyfish-test-harness","version":"3.0.89-renovate-internal-patch-06078ce69d4ce327d4c1374c18b803689491e641","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.89-renovate-internal-patch-06078ce69d4ce327d4c1374c18b803689491e641","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"33f6b0881c2c7056baa8990259ef20a8cf8221ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.89-renovate-internal-patch-06078ce69d4ce327d4c1374c18b803689491e641.tgz","fileCount":24,"integrity":"sha512-MlJqblWMx2M63i8kRkhvzI+e/GvWVRpxd6WqmgmTSNJsb6VoN3ooWHk5LTMLRn0z0dN0qgZdhC3ZmSTTPFBB1Q==","signatures":[{"sig":"MEUCIQDUNu3ViZi5Jk9UNxxo5ZJqswIZQqZImWfC3LTfnJnMLQIgVFO4PT+Xpms2KipKtoD9eBy3u/Wqc+GkSICQ9MAq8iM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115540,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxBU3CRA9TVsSAnZWagAAdHoQAJv3T9mV8ad4wKKh18Vt\nwN0wg5BC8/BBVH+O04fgxOU4XVchmH2xVu24AojxVEkDCV9YMrTkBW6faDNy\n3ZWbRrUmD7EI+3w9gz5/EsedHzF08tbHIJNN9GeXrpjgDuL1hxKIxJ8nB0Bi\n1IJ0rnZwBBr/C2UQGeoZjTGgOlqLylsPJfqCruMrwQjx5TDL6zbtUO+vYH3z\nVK/fAQw2/AG5OArbntKzNIZo8CrJS8QPDZJo26AmYxFVBBZNcQqDT5smP94c\nstOX0+fqvGSJJydMtU3xZleWkQAaOQvGwnb/L4vr0MBXrIrxkvDvCSbUiAv9\n+XOD5NmM3lZbPaqy03FOxafe/YlUDsOfe3PzAEk0jlLPhoRvVSm7mJpoRlGz\nqXrTEQ6bspoM8kvjLuNH7GUMsmgWf2TlWwmHiOdKYoUwaPB7KWoM9lPykmQR\ncswxxfM+y625c0TGJDdS/hOyQpwApW0/zN+pL7s8lUUk67QvIDQJbGKcCSWy\nL6TU+MTg9/GTz/fmwo6fMY6YIx79fpjJC0fAO+TSMJnWr01+KkC8jXzi3037\nKGuX8yqpor2IkhUvQSCIRjLtwZk2SciG6uWttnIld2KL0de/KcmunKQoHh+i\n/UI2DvrIFp84WxEWC6Cx0Mw+EwyvKJbS+sXLbrGpJviuRbGClzfeKxPGTS8H\nQ0bn\r\n=8xmp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"06078ce69d4ce327d4c1374c18b803689491e641","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.234","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.27","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.150"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.89-renovate-internal-patch-06078ce69d4ce327d4c1374c18b803689491e641_1623463223752_0.25350418291766985","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.89":{"name":"@balena/jellyfish-test-harness","version":"3.0.89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.89","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6eb4de56397903c107d857f5e42134ec5c3006a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.89.tgz","fileCount":24,"integrity":"sha512-PcQ3DajrTMT06tpd879ODpl0vxMXoBFWWlu1S9rwoIddLNWfnAfXYkaddyvlxBZKdS5dlwxsaYJoSVKRSPJn4w==","signatures":[{"sig":"MEYCIQDVxOwnZOOonl87BBKb9HE1IyzzGOcP3OaQvYO5TQwDkgIhANcieIstAKYHAiQZeA+i/SaJgYHn9Vnh86JX4oyO93sQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxBYVCRA9TVsSAnZWagAAnR0P/20oQIpBByuxPVP7GmvS\ngn55i6L35Adgu/KCVTTxbKUAz9jT63/rK283bHLcFOnOFYxfmsC0OB1xz7wx\nWt+E8AyUOE7ngUtb4sQ5a7IbILGOXaVJty2vp+uRKkSqElBBBWF0ju6Ec2Dj\nbUkWN3a4xQwJCH0g9RWuWZ5qJe1HNedMwY8K2GsE+eCmY9CRYmY7Brgey8uS\nruc6a52+CX23E/mAYFPj/wf9yDySHhsorc3gqbn8mnNTKifkeBqSIyeORTrZ\nScqie8I2fqUVYI3qPodUg511FbWhHJk0cmNlw/6FNtJnBSNHA3zmsGZitReV\nVnEISmfhRoNyKbX/qROloqbGlXUltVnhp6qp9DociKo3muh2Zj7s8YJKvYBu\nkys8xnWD1xNkN7GJGa1rA7oBDBtkdrolD53dErDM+qcU3+JODIzFwnONJFlz\ntlNragPgsq4o9VXUcJ5MBaTurtNikev39fwt5sXNsS14vvrfZrK7ndKxpjff\nrM/HyirE9kQSoc8sWqJuw2YASL91/kexssDxr23QTw7U54if5sMongFLl0n7\nrhpS4OUd37X3KZEwTMmYN/pcCjqttRG7/zsdkTwC+e9eW5E2/m1qWIRiJ+2R\njTDTU3IwjiJxRISmEfUE06YW2CVgb+Y7hEIrxWI6WhMJhgWp3odu00X5a851\nCijd\r\n=bNtZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"10753c026d7481fa9701943265350f96bb582c33","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.8","@balena/jellyfish-sync":"^6.0.234","@balena/jellyfish-queue":"^1.0.150","@balena/jellyfish-worker":"^5.0.27","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.150"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.7","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.89_1623463445161_0.6157540767998169","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.90-renovate-internal-patch-9d8e85c1164aa853a3707796e05ff0526ce5e8b5":{"name":"@balena/jellyfish-test-harness","version":"3.0.90-renovate-internal-patch-9d8e85c1164aa853a3707796e05ff0526ce5e8b5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.90-renovate-internal-patch-9d8e85c1164aa853a3707796e05ff0526ce5e8b5","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"366b422351c5cc1cc9b114a2986bc8af8a1ee64d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.90-renovate-internal-patch-9d8e85c1164aa853a3707796e05ff0526ce5e8b5.tgz","fileCount":24,"integrity":"sha512-UZc2Ck4O0VJPrOvlvsm/5HskJPhoDFcbLXzPqPuMuG59hp7Rw0dj+3zIQ1Hagj68Egccn36e1OZqOKcTqhD8Yw==","signatures":[{"sig":"MEQCIGbqhiOduUEC5zzpMa0q+jSyFNaP9sRpqGESuArmy1YuAiBL2Eg5itVPimbQiqQWLePoVR5lnqepIphCWWtex8754w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxETWCRA9TVsSAnZWagAA5FcP/3DQbftB2VkwQUtb11TV\nbP0vfTj5cayTYvKqTqY6wAydf9gYcy7K1698koByZUu6k6UkaiFu5f5Ds4rD\nbOANDLmqBvOk1hEqFLl/r1vxTkIKe2cdCosZgqGp0EOe+MU1leJAayYYlBg6\nmS6H/sfn7UuIZhH+IcEcRrpxZg4cBHftGuuFDeslzS0RHIgOaLJk3tVMzkHI\nZJWzASRyZnDslwESuDQpzCl1NyaJKSShrg6sS5+s0H4u+MisJhuDzF6pHEfu\nGknaD8vufe6ucwnzf9i05p4UCnDZwGj7UepP/Xn95FxIB7Zkm9dU9gD+DCHg\ngnFRprEiHLO0jqy/NReg2PjcuUQH3i4D9zFpNAPx/i7oMfISNF8zpqQheDib\nBFLrXyJci+42AZZIZ+7P3eGq93PDkWtcyNet/23CmDTBzPZ5v0dp3SEKebND\nMdQv9mCXHt1eHQGPw1kWJCgGIH/zr0dBMJbyms3dmz9O6gd6bOIbks+PC4ba\nB/fgQ3OBhImYuoV4TcaoZelb1funhQiorsOwpeGAWsmWttOTyxMyYJv8IhQQ\nn0OjPIO69+id95+VP2JPqIlYq2cRRdTz75txeI5JudY+m92ykkHunKg0qoW4\nbEjbnuvDEbuiJL4y1gEen50Y+qSv8pkas2fmahk3IfRazs0kYjQK4zbX56j4\ngl/6\r\n=hD9e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9d8e85c1164aa853a3707796e05ff0526ce5e8b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.9","@balena/jellyfish-sync":"^6.0.235","@balena/jellyfish-queue":"^1.0.151","@balena/jellyfish-worker":"^5.0.30","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.90-renovate-internal-patch-9d8e85c1164aa853a3707796e05ff0526ce5e8b5_1623475414420_0.8122008193570782","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.90":{"name":"@balena/jellyfish-test-harness","version":"3.0.90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.90","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"367bea5cc2be15db5d1f0b8b09ba7277d007718e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.90.tgz","fileCount":24,"integrity":"sha512-gvfmqKE/FPuiqseRpkneDbcYeaxguf/vRU5XzUwliME82qKMLe83PeOJKxHQ7bYUCNJs8SlMo3StSgTbfKH2YQ==","signatures":[{"sig":"MEUCIQCt3dM2Pg0bBTGE+mXOQGz0QUKNyhvK8/Y2u76qM902jgIgDJxLX/Kd7zq03mKYsotZdccvM9vM073ix+FXyKooUWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115549,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxEXJCRA9TVsSAnZWagAAvF0P+wSV+A300NtEKSYtpNYJ\nIDdcxXcdSRpVJ/Vm+CxrYqK9zFLWEnX0BbRm9bs2Xz1/ngqNe3Urnsy3Wz9/\nE/kSBR+ON0iwqB/7m0uZ4tVVKIehBALXE6f74Gj20jGrK6rSyO8ZAgvhveG4\nZKpCZdDwPv1hB7aRQdeH4NUyGOhbcjNtim1eRHfJ7TbaRmKxny/fGupQy01O\nq0jEcMrMbge/kIwAcc/b02Hkb1DP5GCb0oOplswwSvU8kHO4brBJWRLOoOL4\n8a3j7FLhwgUm1hEmIIFF7OqRdwD8Q25cE/A4l1T2K2/DpDRTSnafu26CKuRj\nzVKdKQKbtHjAkilRBY+oBDrWw7+9RsxU87BvIMy9oKOU/+zrW7NFBw7Ao6Xa\nAuyJqXQN/1uECKGJ3F7aym+nRv/wQQxuMjAdeymzAoIFRwZ1KAVvWqHw1XLx\nGE4Ozw3vbaB3pxfj+Rw606/eDdqWOb6N1EAMTpRUx+QpwxdABeAoNOJV2VqJ\naNjrBw6FaW8Kl4wv1Zmu4NTUR2O9OECiDiuaHh862PGQpQsnAkbzwmStUjxw\nTRQ+QJT9aazFqU2x7LyebXU6jS5K7jA96P+iTL6PvTbUucK0K7FNRJwmYpnc\nlS+zc+CXsJep2XVTvhBv7FOMW6zVIdtAIFH3y5XlJ8kcOGUnAmECLp/0IjIU\n1va+\r\n=h8iD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"26f95f211a36cd2c3bf525cafcc5f6d3fe0e941c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.9","@balena/jellyfish-sync":"^6.0.235","@balena/jellyfish-queue":"^1.0.151","@balena/jellyfish-worker":"^5.0.30","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.90_1623475657805_0.15046542813057306","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.91-renovate-internal-patch-9df792d27b2b95f616fb60f1dbeaa62bcd03831c":{"name":"@balena/jellyfish-test-harness","version":"3.0.91-renovate-internal-patch-9df792d27b2b95f616fb60f1dbeaa62bcd03831c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.91-renovate-internal-patch-9df792d27b2b95f616fb60f1dbeaa62bcd03831c","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da56226f966480d240dda7dfab709788e9f4d991","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.91-renovate-internal-patch-9df792d27b2b95f616fb60f1dbeaa62bcd03831c.tgz","fileCount":24,"integrity":"sha512-A2MaMVeU6UFIC5Ybz1ckpdWjr1ImNQmcgeUUULP9M6OFCvUcASydiO/gjIXc0vJNCGoDtBZP6LA2RPpY300eFg==","signatures":[{"sig":"MEUCIGxWIdY/gvwh/info07J4R2zenTn+9ICwy/Gfj3Ryd42AiEAgq3DOEkWb8jOt1JUO+PVy3ZLSD2MIAxnffXQQp3y9dI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115688,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxH9UCRA9TVsSAnZWagAAzDQP/1BoaINWxgAGUiy5W/KD\nAP64EEsMI/Si0vI/tsJeoWuVoFbmiZqmhR4XodPgaYqa7ENRmPPfDjGdwNlb\nnPnYW1e8a73ruL0aC6c+yZJn4s0O25T39Jt1XWegPLG/Xb91TU9jy5sSrI3s\nT9ti78N9eMOnhN/LDryeSiLRSZm+EWA6EkliE/Mb+r40uMty/pjSy45Wlpu5\nnBmzRnMUF00ZlLjPriZGIvIAkF+dA5R727skqDfJz9/ZuQkVuDTpBmIJnGIB\nIAZ0gntNab7td/tessIF/D4UGudcccdGnC7owoXXhRNjFTPBD1K1seXsSsZY\nWFv8voLSog9bNHKbqFofex7lqjU0oHry0Il/CFDwBsCe5awoPiMNBBpzeChv\ngWiwhoiS1fvYBDjcFZtWVQkd8oyRJuVJVnhCAfSDYjWaO4+WaCQ9zMybCm3T\nC8godq+Ou+80qPTAObVtA70JF1GuS0Iu3xxRrvY+Lh6+Qkz+wwayP6fDekXQ\nlTOmd8OxUWDMCsZxcLVMJXZhsHAzGlck9xHU2WhXraYNT9zamuNwHmUV6atk\n4xpm9dM92r/Kvpuu0c7wEOj7kXx0Ev3gNERKMSv6MZm0yc+6cMlelaYzssQs\nGUJ2Yah7gk/C+bNuIm8sSNCjDKjF48eiBvcIZNA6YNATEdvumYaDwdIHkEDt\nkiSJ\r\n=5wB0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9df792d27b2b95f616fb60f1dbeaa62bcd03831c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.9","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.151","@balena/jellyfish-worker":"^5.0.31","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.91-renovate-internal-patch-9df792d27b2b95f616fb60f1dbeaa62bcd03831c_1623490388571_0.23841475410229207","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.91":{"name":"@balena/jellyfish-test-harness","version":"3.0.91","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.91","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6a9580b3bebfaf30023eb4337322d0e1d416604c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.91.tgz","fileCount":24,"integrity":"sha512-yEEAe07CDpeNpZqECVpLTWJXiv8n02c+PUruCZVIwz5KvU/TSMi4DF/BDLP7qms07AyrHU3OWkmTr2cGOkQ1kA==","signatures":[{"sig":"MEQCIBX6Kc+yE4y+JMME5e7K5s9W3fQ/VyWlShY8S+zfh+6DAiAGxDrbpuATKDF7Dndu8zvC07YeQNJGprQiw1o6VMMlmQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxIAkCRA9TVsSAnZWagAATb8P/jbuiMC39nTmAJ2ywJzm\nd66tOf06V3zdGeGRuUl1hASa2iFVXw0MwNwMCPwuF3yJV01kmpw2DzTP1mBo\nJOcxJ6WIh6k9RP7R/uN+oeTu0LJiAI64vUaRgzx3UPG0KbyFsq3WdmPg+n5R\n7lFLBhVUUnIY1LuKfZX00RXOcFK54u9BBYUyrMSwP6S3vl3jHtFo0vdJsebG\nxkJsL0Fd/9+uJhTIEeXqZkuOVuAZd56OYcgS0KAdmlDgxKT6mQ/Ie2pPyKEQ\nsbDky8vvVDyD5YcSQcvNHZC9qG2ztKaG+ZtD4HKuI/OQhY74NpPVdKLpAB+2\nSfld7xP8WPUmdr2YScQEXox9yC/vhqeYhWU56EOZU2ykM3bCoCksU1hpUCNl\n52Lx6TA960ERitCv7QegYNWPvb/HBhkgzUBz+wSndI4+tfsTqKG+Dx9YMy4k\nETcTkFsKF69EtvrBCNeu+Dg+3kxXvXfdLtmSDQrNjGJtLDrD0pvDPhLGCU9f\nPV9AFQEG46EMiatke3N2v5Q2jCnw5G4lmJXu+n11q+RKlw/CoWiWSpIi31HQ\n21oCCtQUheA5nPoglPm3w7uWv4t+tOFj741Q+i1gB8CzKlNReEznz/8eA8t1\nyWLHK6LYUyseHzjsc6Su9Ta4kpxKm5WlfgKhv9sbGDL6G1jhGFAskCUndU7U\nnZ5e\r\n=VchN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"05dd3a3494349dc0fceafd245b8b63b55b992e46","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.9","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.151","@balena/jellyfish-worker":"^5.0.31","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.91_1623490596231_0.9402896693657918","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.92-renovate-internal-patch-c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1":{"name":"@balena/jellyfish-test-harness","version":"3.0.92-renovate-internal-patch-c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.92-renovate-internal-patch-c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"84a53d5e19994b493aa502fd0aac37296453464b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.92-renovate-internal-patch-c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1.tgz","fileCount":24,"integrity":"sha512-OFGSw5oVmKn/jqxWfSl9FicLIZg1xcuG+lDSrX2Cb3NxJF6wvGrwpiHuu0yoaoyhSD8GnjEc/jMOqwGY2ixbhQ==","signatures":[{"sig":"MEUCIEhEFUpHqgQQZNFNAF8NYQSPlkw6pQvkkwiuZu76LEHnAiEAze3gsRaqgxrIt06RaEQm6pyeeZta+dwII7XKrfGEuOQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115763,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxIzzCRA9TVsSAnZWagAA4asQAJ4K2koARjs6JQI//4w/\nClnlybRG+mIfZCGqRuii9yVayeN1MNFhaeo+o8LO3HNp+fj/m19M088uXVUd\nmbkD4CmVHzSUic24pZ32G/J8pMFjdpKYOstaaRM+hcfRkjJE3+MZEyozY9Al\nGayOACNOumybQhtCcb+UBmOzqRheRBOYfSxt8DEBQWOlFKy8m5tNlAZjDHU+\nNRKkR/ba6Zrla5XxPrCX0AwiZrBeDvvJ3Z6/5Ijt3bid34GLeB1MWE7xFLdB\nGaVkBZYfJZoG/1rt7iGlWWG2XJpwAtoz9HCWqeabpFxEjemv8pxcjf+Q2idN\n3wJkEAqRKUAh3h4WAkOnft6oba+iY1rea4N/zIdLKluwpzP8a+KMZhn847Ke\ngvTocu2w2aLMXvVWHOOV7iU/dXYZTZO6fHIz3UEOSEwBJeMBhVrdcWCEsPRp\ngOjs01pT9xoR7YFq52o+MREpOAUb0ymYFYHlO9z6blhPd8LzTgT8rNnFGp0q\nYtozbRd5b0FrWdvzDDtCA7Xt3LP0EP8620yMlgnQYxyrGsB12vHa9eRm7wYE\nHfsPCqwaY+Pax11C4lndAiMMB0H/arE5UEGz+S7iI8X2yU69xdbbNntPtDKa\nJyxotyfDsrnvB20UPexDzgSu4ZT4dTyvllxLz7NRHRbv3gcWMQuVykkxP9v/\nW4Ft\r\n=gbI4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.10","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.152","@balena/jellyfish-worker":"^5.0.31","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.92-renovate-internal-patch-c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1_1623493875303_0.9197572444846476","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.92":{"name":"@balena/jellyfish-test-harness","version":"3.0.92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.92","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0821e0671a69bb1bd98105634531906b3a1f04e3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.92.tgz","fileCount":24,"integrity":"sha512-EurlUuSY5Jz+VSLL1N2nEBp2isPr+7mhuh2ISwL7i1v9UzzPWYf9mz64/tWq/N//oAhQmL2cP5r8cc8z3rZxMg==","signatures":[{"sig":"MEQCID8J1Gn5LbU0h9GuJz0RUzWVDk6xFZv7nsI8K/TeExRbAiArkYOYOuiPOuHSm3GkIo5wYPwB3pWsSjpQPZQWDi/nYQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxI4MCRA9TVsSAnZWagAAusEP/jjBE1hykSu7OgE1ovnI\nUuyoonUiICrtIIm5koU2DZNxJquLZ6/II16+Z+NLSUiUuTaaFfz7BimeIMnk\nSW7BpOZvAjKd94V+O0rQX9eKc80lMMycB5JwvRmKST4S6kFtJHb0u6Q4EbxC\ni91x6CP7VUgnEXeNmxTcF35IIXPiNo6UsPFk/Qdg/9t6pn33VC+y8NLMPGjo\n06K+g+ikRvv0TVysbcf9C6/5pIaY/sthYjzGIws4BEDetWoc619A8CeC2j3z\nUGHmCRmTqaFDAFeZ97IXFLgksjYhwv82lFy7Eh2hxWXLXkvCNbmt+s1CXE9E\nXwlcQlbGaXFhHnKFXUGrkFTmtRzPszHdMUI03h7MHkwFRWd4IYXYfRGjcmBp\nKjmqEoSIRaOFn2I7NYRGfBfNsCbZrCFxAmZ2EYHkHbT2iy0cEAfQJmM5+rji\nQtV0frZJlBG+srxA6Ou4wuUu/QXgsNoDkbKmx2wrYCAJxX2fCtobGEtLp0no\nzLUsN2ma1KqwrKXsjNXlFKPM2Cos1/iOlY20dkZMIG37+yfc7uwkmcQzuqEB\nN1cq9qGM2jG/1wIMXy2CJq3PLXYMMVmHxUrhX88SxnAvuiLkYLsTBU8p3R7Q\nbYPPk0O8ChL46sWCZlNDnqnGHp6gf6S4DNrP8yfeE64oGSbvcsFTZcaUU5a8\nUn24\r\n=6zUR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d1c5814c65cf7996a9500334cc25711bc3e35f7e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.10","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.152","@balena/jellyfish-worker":"^5.0.31","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.92_1623494156013_0.2199576398084655","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.93-renovate-internal-patch-59634db0912753d8429d373337e05df03300651d":{"name":"@balena/jellyfish-test-harness","version":"3.0.93-renovate-internal-patch-59634db0912753d8429d373337e05df03300651d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.93-renovate-internal-patch-59634db0912753d8429d373337e05df03300651d","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a6a94143ac6f95b7f41a6291760a3dbc928fe280","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.93-renovate-internal-patch-59634db0912753d8429d373337e05df03300651d.tgz","fileCount":24,"integrity":"sha512-r/jxNp5yzyDO06Yf09f+JPr80d1OqyGdQh6z4vVLchK1RRGcTVaAy1XvnPZGB+l8b+9R8QICOMrgxt2R5+2sbQ==","signatures":[{"sig":"MEQCIDUqCTDXJyflLY8rZTFHp5qUw1fmv+YH+x653A92nFqfAiBZ1rOkGiGAWsp48MSajg3k94RJ2PxKovzX+x7WOLMwcQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115837,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxOJcCRA9TVsSAnZWagAANOgP/jFUcLMoILFY7EgGCuJr\nQMoa+RZvWHTpimukn34A2CqRS8gDcqHjOXptz9MnIYoMZ3ituYYmwGJsbUXX\nHXMXPS9tpjgGtZ4CDS1HBgpDOo6CmwS3zJiS3Nob8a6fSGyyumKjUThPv+J9\nKaOcTv8TERvQ+AupXFNIZWZ9BiTYTnjbSV+i//UbRj9DQren0guaDNgiyp3i\npdSrq7cZJC7v4A6GBgeAuU+Ne3slpyped97uWPL4b+4xbbFddFdV9aX3ceHF\nWQB6kEZXSfpTjzJIo4FIwhsx1bEzIeW6GThCuKAALmlI3lDu2avMRTJo9fX6\n8a6VSPQLRcxoIYMYQK5ca/693sca710NrQ90k9NOlyUmTW9HkxdjaqIdiPk2\n+yqFc5BLGxahLcm3Fn/5rxBcC2fC4QXHSCClKxA9m37SfmqAGtVOGdG8ZVYu\nJv6GOM8lfCZSXIkhL0eLRN8QXqSqM70mjnKSK/ZSZ9n1TJD1CQGGqgYPYA8d\nI8tixj3V3XG78Z8B3qMooTi5Vqd5twXwq9GA3pZ45/ubExeSw5Z878f029g9\n+e3nrfBhXPTX5zb/SlKCeHmaFvWJ/ouoAPJ9mJFPqGzn53VDSGa/+3mIA9Ry\n7q8UKBjEATGld1GB6vCRJxL7QHCKoA9Eq+NoqPo7GV7QmOBxj+duK0O2X02H\nkrtB\r\n=Xcbc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"59634db0912753d8429d373337e05df03300651d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.10","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.32","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.93-renovate-internal-patch-59634db0912753d8429d373337e05df03300651d_1623515739901_0.8827801599462786","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.93":{"name":"@balena/jellyfish-test-harness","version":"3.0.93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.93","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"409628c0b2b1f2e0eaa18abdb47dd5f640b64f97","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.93.tgz","fileCount":24,"integrity":"sha512-gXJfhlKJs6uPz/kwoqYtlnRPrUdVVDm2nbj50a2yOKddgA55zfM3NNgyTWAqqxLokPT5DJpMpw4F0Zu0hSUtlQ==","signatures":[{"sig":"MEYCIQCDhmJVULO2ZWvN90gHt9nwzw+Iu524ZwkrxQxqYGXpmwIhANvFXqt8FxyXqFxHx+PDxLzsQv0+48lJ1WDdj6+6m3vs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxOMrCRA9TVsSAnZWagAAFk4P/10FJVC956L6BBnQdFIH\nnfRxdx4lVaRSCuc+eFi+Ue2lHGWsN/S+aUucW8eIRMCcWdoUtPgr4CFxgYZe\nV02aHh0kaSUge63lLCxV5u5VjCptEUtBME3waR/ZfLL4WsLBC9Rz1mT5Szth\ncarKP5Gg2ZBDRt7KbkMobZ7HyUyUN1Ihjxl3fRXtFqUvOM7Ec9KeyRw5pusQ\nKyxBHPjQJwboFw3I7hpkskS9VndfOkU16grjO+t+0TEtYCG/pgA8qInNgB98\nNRpWAVWzyKM+5KP+eODfB0pSjI8rQPAc1g7zzTpRtDSlmfatPXgAuC0gjpom\nScXSfAjz48matr4LP3ijVs6z64BzLPpeEuqaMUQnZ9UgrEPaPN9Fg53xOSFj\nM3l65OwxfoPVX8gJWz9CgNwdiXhd9q+aX9shib6PyLAOLWAGYl2VfW6vvK+k\nRP7C+M/6yburSE9/M93AlyIlwLWC+EyHfaHcwGo06VZNv+EiIhmGsFyS4ekm\n5htYHzedrMjOMD1iQyuv28g2k77H7asMR23Sptee3gN1+Ufna9EiGB6jtGkN\nMEHmAdHoG7dCqsOgISOapmBwXzboBx7y0jWhmB0SG3OmEZ8qwOsvMyYV40Fz\nh0hhfPZtsnsEZy7J87i9iy56npa5zvIYLT86vliO5oDTl8rA8038SiTIyC0/\nMKd0\r\n=QE7I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0664e13039ea045afb541341d13795071c2b20b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.10","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.32","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.93_1623515947562_0.4030746317352918","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.94-renovate-internal-patch-528167b5fa1e91b8bf273c083f87849d575e1b35":{"name":"@balena/jellyfish-test-harness","version":"3.0.94-renovate-internal-patch-528167b5fa1e91b8bf273c083f87849d575e1b35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.94-renovate-internal-patch-528167b5fa1e91b8bf273c083f87849d575e1b35","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"afeb4196bb27f9eeae37f12f0f1cf724f67f53fe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.94-renovate-internal-patch-528167b5fa1e91b8bf273c083f87849d575e1b35.tgz","fileCount":24,"integrity":"sha512-okWSgsiG61qE6FWb4YS78151VZpb9I27aHPdFlnhLpApqPLCqaf5HBdc2zKjF9ozdRcsdXxZi1hXmNaTMQbluw==","signatures":[{"sig":"MEUCIQC9eZi0SPLrQUWXbBj9+7DyvzLqu3DoUJra4l5q7EF34AIgOvRabVl1n74zZfimEPgy6ZhladOwJfFReFRckHdx3mY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxOw7CRA9TVsSAnZWagAA/wkP/3dflZBjskENmbJP7t/O\n2a3Y1xZUfKpCBZ9iy1HmqWh2p/heZiWVBbl6A5ButGDxOuieH+0/jHk2qdc0\nYKn2aGkpUBve8RcUkMjviKYrpe5R2GdEpjwjMXnrLS1HDiGtALN0Rd2UoAq8\neyCeO2+qWmHhzsKKFx+ZW1eJVayifhbq9JPiG6SnpuGB7gYM6AHHD5fGVFKz\nP9lCG+cfTh3/Tpj5GoUavSSsxKwwhYgGV1vRN0Q8A+vVQvNzJIQNtlqoaK8F\nyz6FGPo+lab+BSmXOk+Mz1UUaZBOp2I2ZLk9jw4H+v8o8QBRJ2Aq2zyZ6/F8\nLlriZBYmM68LrtaLly1Gjv+M70CIlOMFTpgQaNcl+iWXrrhBNakHCSEFcLBQ\ntnYZFvOyED0D17khUdSYegjqeZhgcs42STQMUhLfoNgY4H9mOXwK9F9j5cY9\nC3/g0//TUN0oESbtsN49y1mPpo6gRSTw0Y+kMbYeSB6h6yhI0NqIktoIrGsm\nA3TFdm22dE7IYMFVaxc7x/h7QMPEHMEbuVZ4I9AWfHOQBWpJ6vuit8dbm69s\nW9Y3O/qp5IvHqEv153JuLmeqiNMZoT19S7uxK4NG1vxFScj0E8xolPEYd7FX\nWOM+mRwwHD5iBXz/d3olQqJpvV6skgnrgfdjGL/NSCNQfiqgNr9f29R7+Rcn\nnhkQ\r\n=6Rz+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"528167b5fa1e91b8bf273c083f87849d575e1b35","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.11","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.32","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.94-renovate-internal-patch-528167b5fa1e91b8bf273c083f87849d575e1b35_1623518267656_0.9355704689248008","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.94":{"name":"@balena/jellyfish-test-harness","version":"3.0.94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.94","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c02a8e446adbe3af79abbdcae506a3e40226d97c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.94.tgz","fileCount":24,"integrity":"sha512-WgdQNUKRYQv4i+U5tIrPfwnhjsYzUlRgN7PUOqYBcso3BittVDxvVZORJl7JyjSLmrV0WoRIbhLI/moMnyH2FA==","signatures":[{"sig":"MEQCIE3pHbX7VXj8yWpPrgFCnUA54k7Tnqx8G6PGM77PmQYTAiABVqYNvz3am4lS3+LT3QKF72LecdyS8PMoY/jUpJHTtg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxOz3CRA9TVsSAnZWagAAUN4QAKF6Oj+IuoSjWJf1VTii\nZTByb2ysF/XKOwTeyvitbiypUEFZ77xj34PsXSnE9t+zxXeDsSGbxEFEa32d\neO69+DvX5wWgLH5ZhPxwHP+jfpqgN8cBGzks4EnTxz5GCt5B4A52YAm63pwM\nQCt+uGgZPH/FpZ+5vox3x1ZHpFUJkVl+KVGgEZ8lb2WR7XrCh2dexWCNZlUQ\nAaSQDU6k2N6y9pe5QCieDYH11O/wxhNC60ucaVIi8CGY66VFsvH16xjKxzXt\np0azJaNkyNA5C2UGApqMhOjlbH4CVsmauiFqIJD2+xUVx71LbA4gyalZ16p7\nAjrap8ktV4iTDeP8wY7Ll/ZSJaV9ijclOdVE5X2ll/GSjH8+0wLBvez6IxJ+\n5w/O3cvCspxbhGG6VWESiCCds3srKCRTXSCSZVCShTsV5FLqMkw9qw+VZNro\nTNDpopfnXnJwaZ02eB9ugVhT5Jiukt/njBZ1bS6vljImFX2MXJ5CjrdvdwWJ\n+jKsZdZySFsjvDApygBDdUUV1IMN3BTAjHb/R/geoTq37lZH5DqccZKz+IvD\nwJ5DhCef+rr5GEb/tYc5lSIlBT3chkCYzLz9h1Ye8EukoUk35yWGa9Kg9OaE\nQtHBZb03AOLdPNDGAGvH3knGte0vOHPTPYM27eG4nxasK6Vd5JahTdioT9eN\nUxX1\r\n=xURH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1483c7043f44c4010bf8b6d47c0aafc7d6d7e6f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.11","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.32","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.94_1623518455051_0.520228310952807","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.95-renovate-internal-patch-99c9f0ea1fc8daae23b225a58816f7522fbdac2a":{"name":"@balena/jellyfish-test-harness","version":"3.0.95-renovate-internal-patch-99c9f0ea1fc8daae23b225a58816f7522fbdac2a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.95-renovate-internal-patch-99c9f0ea1fc8daae23b225a58816f7522fbdac2a","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04646ca533141ea91dfca88b01d7e79d4df91d0c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.95-renovate-internal-patch-99c9f0ea1fc8daae23b225a58816f7522fbdac2a.tgz","fileCount":24,"integrity":"sha512-31eREAPARTvCBQqB3fCOJ1YZ0LJbNVXnlK8V4XdNGD4WFnufnEHyTIJseaVSHX1zjZG3K7YtDfdRC/Z2JV79Xw==","signatures":[{"sig":"MEUCIBevwclDg+VjcIcnxuRdErFksxnw/tA8WeXXqgsdZpBaAiEAmLjLtHGFMqPphtxdM41DtpAugk5YLHhwz0m3vr7/y5k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116045,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxYFvCRA9TVsSAnZWagAA6HAP/RdbfG9MTLduGP9bz7NF\nq7tkMkCFJ6uVFlm3zTD9EEbdXLt1MkXfrgTHR9uCefQSgiQj3nQhn07sC/So\n+rRXq+octj90sZ6rqYf0OT57MS5tsCC0w+sWrVAsWK+6IhxJh0VsxZ2TzFHN\nRG0eZNvBujgH/gS7slOyiH+v64+3E5oIzKuoak9/Ay4BjAnN3UgIqF6fhlWW\n8w6PfpIaDhclba/2FoeZURDABv1v7CfIR1OEBWllvVuO0o6prvJTuheNSvVR\n99nkNlLedsC4+kH6yT6IjFu0NZJ+aukZnzhPB3MoJLYU1dTZdWojwDo1/ttS\nRs5xZix6E1RkLuciaNRbtreuLX+5j0ngpCp6sLW+nr2uSknIjsdx6KoTNyd8\nXeNEhzIWCJZE165SkwrTk1rAetE9VN7b5CGs9zoyCXitXlEg6PsAsjqwWvRs\nsOxuw7TH1w5eoaSl3CBKFTUICiFnQc9KrLdh8TCwv8E3PDLxxwn1tQ13xbCN\n0FkL8wbrhd/AMsk6/UQiEEVlNbxIVAYrrpkSH1KF1M6pMZMMXerxwseEloq6\nRLYo7u3HFnyOD7YoQ4cUd3s2Q9wp7HfPv8ukwjy6dqriogB+FbWsfwWvK+V3\nYBJoyjVWWA1VvewSvrh6MrV+lGL5EEZLvcunZMUiiy4pSp9TkFLwvi1yES2u\n78XP\r\n=aUhz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"99c9f0ea1fc8daae23b225a58816f7522fbdac2a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.32","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.95-renovate-internal-patch-99c9f0ea1fc8daae23b225a58816f7522fbdac2a_1623556462947_0.9881747075163163","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.95":{"name":"@balena/jellyfish-test-harness","version":"3.0.95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.95","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49e1d03d36fa4dc45a4c490c644c1ae20e33bed4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.95.tgz","fileCount":24,"integrity":"sha512-BXTQdwiYWp/qavzwP//p2cairSu1cTqFaZ6L5k4L6SDFdvio/Fvm3seW0PBngo4p/qaW7qosgO6oGuuJPn4Znw==","signatures":[{"sig":"MEYCIQCTnqQWvtuzSTtQ116O7Y9b8S+P2Aed5bpDWt0EJoMWWgIhAIFuD3E6wgkn4kLXPBY9dWSc2hzqqxI3qGFcCDorRSOf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":115980,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxYI3CRA9TVsSAnZWagAA8QIQAJP9B+j/IWM0EXa9qWVj\nc42u0zCeciRLROl8NIDZy+FkQsdaXvVi+wX2BFCeSk0NjfAnAJhqNihLJA6b\njC0hncO/pQ3oQ/+4jVXgBvuRe2oWxI5Yh/QhvVvRbgMSHh3l7TujzapBZtai\nBD6vZEIOCqxMN/Cgy8L65x4Gk8D5NPJ83Ub0F8VmwV2CRqGT9RrEz00hNHpY\nVdPopLWJ9G2O5cQr/glN7rWP43BMY9q62zrXaKfHj2MrouU9PYwrINV8GUva\nNldDC20Ss8JqtQ9jPfMaOK0JSNARJ4pBIkRibjSty4AzXzgUgeeW/JzisoR2\no7bZnk9SqXB8/L36vzj8MiCK1/xGzGyGi1CBXBozYbzd8Hbe6mE7j9/3bG/e\nwDmjlVQ58cr39WnGEzwy80QozpC9ghVGazJJGzaVXPC7y0JqKAylru/kPVbV\nFFMAmkEHkynCBgMF8vT4jYuQEyTB1WgQio7ziOlCdw1ZHeu2dJEkp1iBH6ir\nhcnLdHLumdHwhCncpH6lArSWuycpkKQfizEqGW4ewJ0cOYRq5gnd77z7Czx1\nGq5pOT+ZtvtQsHpjxjr1EXr83lv/erBSfKATekUUKAaSQawBrLGjewBOEhAI\nosIwxnmoPSzHo9wtDGhNF1wy7dC+ogN8zv92YuWpQXUYiZpfU513BKW26FyF\nT/c4\r\n=GqR7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"daa747f0408710119c7dd16899b3391647ab1305","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.32","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.95_1623556663652_0.4233743245277781","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.96-renovate-internal-patch-d63074f23b23d00e10ce127e74c120718d8d24b9":{"name":"@balena/jellyfish-test-harness","version":"3.0.96-renovate-internal-patch-d63074f23b23d00e10ce127e74c120718d8d24b9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.96-renovate-internal-patch-d63074f23b23d00e10ce127e74c120718d8d24b9","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cd95324b51bf3bf611cdeb8aaaddc3a0a3036656","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.96-renovate-internal-patch-d63074f23b23d00e10ce127e74c120718d8d24b9.tgz","fileCount":24,"integrity":"sha512-E4e1raEBrxxP39ocFqzI6NM3trOszmuwmjkLhuR5lrxn/UPU9HaoFDi0HbmGVtPoSo0CJXr1db4jFhUM7LRXBA==","signatures":[{"sig":"MEQCIFgMPWbHJkTI6qbPuYjoyGSORtwKAP1g6OCwJfzaid3bAiByR57J2ay+shir3pOAM83+6AZDJTpOV+9kaLAPgi/f7w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116151,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxYo6CRA9TVsSAnZWagAAfH4P/Ar1hNqNnGTGHJsHPph6\nfGerjzy7VivLJoHUUm9mqUgEdubOsL+Gq8ysw1jIDjp3xzE9JZfogT6878BA\nhn1wgokFVjNn6+1XuGDCBPhgMpyhieARsIMoBQiV8x49sSJl9vnF0hukSdIa\nn6yKSfpa0Lp6AkKFoCSIWWS1k4BnbVcZmWfyOlYaNbhz0jORmoZS7ofi2N8Y\nDNA3XisfJPfVuTao3EeoKHVyEILKI8K3iGIPpn+jFFmBm0jH6txR7Czq270i\nzAOm7gZOWJh49EiHcsJ7rvzc6N23CJuZVGIfZEFHZoh8XUbroY5zAwKUkwRz\n09iJZCo36T5jVxH3OrccGX3Qx3Q2BoFvbOibD8rJ1tv7hnXoTHul9tK7SKq7\n96IVNPXZVoGbw8qO8WR8+arByfER88HM0wUvZgeGiKYrmSM2MdRE3t6d7pGY\n1YzoCbXYQqqXpnWPrv6N58EVHMoCqkRKBdnRxH29i5Ql4mh+EKCT+fmywS0I\nM3Glohln76BTYuQo9y108BjekZxBv1Z9AiehNKzTSeXMyGFg4U1hHaPhdnci\nY653ZK3AF4HY4iR0t/+1+CvxPFSHM0nm7yHmhqvrH7CmTPRiKD0hnl3piLDK\nqJePN/JMg2FrEVVNjNvdmMdHFOz09wozEwR20W60+WukLfsQRR+cVrkcxRUK\nvhCD\r\n=vLqj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d63074f23b23d00e10ce127e74c120718d8d24b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.96-renovate-internal-patch-d63074f23b23d00e10ce127e74c120718d8d24b9_1623558714401_0.7348868937396593","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.96":{"name":"@balena/jellyfish-test-harness","version":"3.0.96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.96","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"166ed6f4379508f2e7fdf4b74a66f086163b804f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.96.tgz","fileCount":24,"integrity":"sha512-zGNqBg0n0qJkLgDQSTbbPhbQLSvYYW32Q35kd1q4d1G7Tu8Fje/PVtodqt2ty3N17BRUgI1hgz5b+zJfMa5JXg==","signatures":[{"sig":"MEUCIQDB/5AulyF4X9uw5Cd7xQPne9Q9HApP39jUQXr37eUL5wIganGTYdMGN8ewfcqT8aZL6Xfzu9A45vzmbkvAWksV8IU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116086,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxYshCRA9TVsSAnZWagAAey8QAIpgsGfQgl1oOYWrFNjJ\ntbje6MlEO656rNTsoGwjFNtq69lhaw74IWbdfXlMm88P67HBjeWlaAhXEA00\nAS2a2PamtWFkBs5yQKCZQcOvXaHoJbdfrckxbnR/CisqRDY5u8QjDQFZQX6Q\n9Es5zkKkkt5n2dbPgJWYLX2YQBfZqnnp8QMADn84F0edqQl8xHhW2ZbsZXUc\nPdbMKDe7ZtxQaGnfgLz0Ksia97OO2QTWm1pbSoaZ01ogqaHGpMqMT+z17nh/\nzSljAQX8OQazBEKbN2ezxr76RX/tk3L3u2CMoKQPTWCPQmaF4IOeXjezuDrb\ngTGHRKyi4Fg09EwFytr9UzpoHqvNNSfjdOA5GMFCrhb8Fjd8cbuiNC5vnaCH\nn5ezmrdZTJkcUahXfdpE3Nt+O1v3Ap1ociiJfsCEnG9ZZQahvdYrl4ayXnp5\n7vLCvncAgl45sSBN0+SW7P7pBjoH8MB4NDiWX0XA2fFoASumSaHi+3N5xYGe\nJW437BGedD4GmZUSF8V3I1+q45sMR2q9JLFdSize7inlJRwNwe6THN5w7n5q\nISGtTGx1tZ0LM6LgLYIb+gfIZ0L8EhzRn8wInd9aXxjkmYt0IWyxc/UgEZZ9\nQExwNVXm0aSfEWey2vVs8FX+hKl13Tb13YgO0CUMD52QYtTnzi0jg0yl0cPb\nKU/w\r\n=4yp2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"696f8a1f10bd934812981397a840eaea71ba2378","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.153","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.96_1623558945587_0.9106201552212345","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.97-renovate-internal-patch-a83f59dc3ebf23c6154396e9aedf6006c4ff82c6":{"name":"@balena/jellyfish-test-harness","version":"3.0.97-renovate-internal-patch-a83f59dc3ebf23c6154396e9aedf6006c4ff82c6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.97-renovate-internal-patch-a83f59dc3ebf23c6154396e9aedf6006c4ff82c6","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dde8b6cb20fe985b6bfc1ecd9107ec6f8d0a30a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.97-renovate-internal-patch-a83f59dc3ebf23c6154396e9aedf6006c4ff82c6.tgz","fileCount":24,"integrity":"sha512-XPQcdtrA3uPmLT0FNW02o3yniiPayoq/EtOyDzwg741LoxlGHcrGtZx1PeCacNHIKrcBG30BrN0EDxph/e3dQQ==","signatures":[{"sig":"MEYCIQDqb4F7q5iBGfikdx5hyIvJv9QsHFEXeMGdca/t7XxWMgIhAMAhyn8YuRTZo1oB5r/lYoTEm0Tw82BJExsGNsBGuVad","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxo/pCRA9TVsSAnZWagAA3ewP/0vbzWZeGaetNxvDCJSN\nLB8vVyKOd0b6nXXhgyyTjZec8toaoBa9QpedkV3RmeJi3CWFxPVAnrg5OCJP\nM7S4Z3aAzzaVkinQ5qniEMgdWqcUEbfYvMC7QTa/dvFcikgjTCYl2CfQgrbp\nC/BSp8guzEWurjogUpfIbcFY95uAYPmsU2sQipQ1Hs3oiSWdKhv0+sjniOQr\naIGgiWaaDZPf1by9kTs6lcG8rYt8FiiwsTiBMpcMNP8NBs7WyJYjRGVLLQ0k\nJqMe16XpCdj33PYDkrhWHdDWKElShCBYFySjFeLNyhDqV6B2Cdv/Zi5v5nwO\nQtQycEVRTbJ4mzCYd04ibeo9aSj9wFZnnwGPeZA+ERytIuHL48sdJhiRPA5/\nUWPtqE5anhQ9f0meZBUUnnlzts8P7eukwZcNGkf6IPztiVPjmqMhqP4BoJed\nLbcDvyywOYg5eShP1StLTh5twwDJ82kdX04c6MXNE++fSDCbf4Rau6YtOuOk\nvfKQTHYNOzbPvYBeCDvtNo/kaOQYE2F8S7LbqClp4qdXhaAdq8+a141b+SNV\ntk1OXsBdbI16OZzpZKZFR+e3e4zbGzXhuWL6gjTx1rrgKTJJ+yWmQg6Mkiir\nKcNhm/QhGTFyxAdabXa3MSwgYkpfq/VptmJj37F1mW9SNtvdzYypqO492GKl\n2hOO\r\n=38R3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a83f59dc3ebf23c6154396e9aedf6006c4ff82c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.154","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.97-renovate-internal-patch-a83f59dc3ebf23c6154396e9aedf6006c4ff82c6_1623625705688_0.9676271073922122","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.97":{"name":"@balena/jellyfish-test-harness","version":"3.0.97","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.97","maintainers":[{"name":"nucleardreamer","email":"nucleardreamer@gmail.com"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8105180f7c455c5a6fbc92e0878b5654200df98d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.97.tgz","fileCount":24,"integrity":"sha512-LT28FlEXfmu2FrrZD/cykTiaKq47MIj9AhMts0iWYJosIDtKWqBJhMxH3p+5jSJ/1XFjLReNcDbCFQoKMyqEeA==","signatures":[{"sig":"MEUCIQCmwPi9V1VlTFfzVbcjpPOcM7v0NZpEd5yU6VevV+vaHwIgA+Rhrc5ZU7BfkwCDtDCr2X5sAc9xTErdvBDTNR375ME=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116192,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgxpCqCRA9TVsSAnZWagAAss4P/3+1u5jlLpV6tytqL186\n1hxeKmyiCHkWJcP6lOZp+/8I5macVL2uGwCRLRxhKwaOoEJV4Uo6G3P/Q0fb\nbG9/0JD3UnwFZS0eJCKfiGxdNMV16BcJfpBWeRuHo57FgkXMRK0lr3p2ZXS2\njV8kViOqL6E/IrmVYZftvK+b0jV2WiYseYRLTMRaN3QHfZNnigygZAE5VpKs\nFCydjWjhhYam4NudpFGqMsUQzkA8L8L5wfzsdrccBEIZ6SZHzUEUG6B67Jrc\n5aeP/YFJUW1ngYZWxBfAfGCUUlxGG8gzHRfEcb5bPVuDY732sPTWPzy1rmHW\nRU9aNLqAfTgLs57k+oViCPkI4CCEGXdLsxhDk8AQTUkwjvtTMbW9viN+wytY\nrDsLkteUyipHg0r4Iw0bKK28Dtys7O9HUp0kDyRzJhMt/ELK/PNQwr+DPJVt\ntvjczcVYPrZ9wzRViTJXOLNGomcCQv9XJIZpQCv5XizF+l7cg5evlRLORJQD\n8eUwdBifFZV+tUQeh++z2Dpp7akzVGOV1FU4mmNw1XA7szCPWwuISrZ7HGfn\nllAz/Pc89+PDTHsn+UI3L0vT4RWqFEpJn1q9tOMbAalvvYc+SA1oyZh9vJyF\n2lCEPcIr6a12T6/H3LA9f1q40PWNSrQ4VrHOpxSf6R/EXROc27ZPkN27eWBf\nhidR\r\n=s3Ai\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"addd935591bc253a7b78937292fab4074084bd0a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.154","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.97_1623625898239_0.2128258500655007","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-renovate-internal-patch-3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-renovate-internal-patch-3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-renovate-internal-patch-3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3366399b52d5eae179a0251c0061e3f0ef1a5fc8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-renovate-internal-patch-3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2.tgz","fileCount":24,"integrity":"sha512-UKhwdk/Yah4VuLm3XUtTGbVETI+yhhoTd+60HSMHxuD7HFe5XZs4VchRUIEppBZNfK3rniy4o1HFcpg4admYIQ==","signatures":[{"sig":"MEUCIQC5zTnIPpFe8Af4v4cKuuMZO/+Vp8qj7tdl23LkDudJYAIgSzvCkf6m/DWY5K/5dFP9umk+UY8zYOGIGaCXOBoYE2M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx/yhCRA9TVsSAnZWagAAKeoP/0pbZAJGf64r9qtmF1Y9\naqv3L0I++di1c9y4dIMMLPG68INEkZ5u5AMHY9hdJOMYzVgxV1Y5Co/5U9ck\n6mdOyP4hW7PQmXqstR5N5gAraLCn9lZz0LdtUi//nw4hZ6i/43bIsxGtrzOS\nmwULMzTPiKclsEX9Ay3mm7g4iJEt6ZVDqvA7A/clcHjHBJnqe+OZ0wW0tfSc\noPha0Uqbdc2UW0GPCRZGLT1tNvMGJPdfr07pIUUFZcqPSF9WsChYB6JA+2+o\n4pyYzGSN68selZ9blIYRAJ355AZgqdre+m6s/ncTRvaOe/CQNbiMLFIfnl53\nqJlq9E7GGrRsEmkEZGyI6IThjaQXtjpSG0aQdn0IA7isJLN4wLT5HB0Q3Rlx\nuuPcUXtyiDtdEFuTUiom6D0m4c9qR3aOJCeRVvZvDNnHfhtTwJN9rZaGgScM\nAKWz5S/j6D0WplrimoYG+FLiiQTNs2l6gbJ7vOr/mpZkSUadZdSeYqeYYwd8\nSrtIIxfDUe/KaBlgQlaBDT5jORlJMjoQ/QLbzL9GlG0xHwRrcUcdhdL7t8H6\nbsioIwimefQhEBnpz0fJfluRc0F7tWFnry5rjVmG2TaAA9St1tDgnFhQYxPh\nT5Y6W1JMhhkIzYFrZ+sGnaGxwg5QoZEKeujy4tJ03uACy+MUnlKWRv/jz8vx\nabES\r\n=nolm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.157","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.4","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-renovate-internal-patch-3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2_1623719073722_0.03262918761452038","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-renovate-internal-patch-43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-renovate-internal-patch-43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-renovate-internal-patch-43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d4c431243eba5045f623c64937f2335ba19a04c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-renovate-internal-patch-43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1.tgz","fileCount":24,"integrity":"sha512-XgteZiqyQt0UQD4sANbCEx9pH6dcgcfy1adFC0VvkC2k613NajfqX2xG0L9v5oJDR9nWhWXdysPZHkX+dQ2iqw==","signatures":[{"sig":"MEUCIQDPLaRsLfuGyRFFI6xH0Hj1866CRrEfTxVo5gqpk2Ve6AIgB8n6YCNvXZujRirfFkhXbKjmkuKbmS4uzTPMg8YFzzM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx/4sCRA9TVsSAnZWagAAiDcP/3ngnvlcSgZsnUFICzct\nuyL+OFodbkGCy/dSr+3nEPh87h/sSHMHTVe5HMWbOtOB3+yRVCYnh2AU2m2h\nNVdyYPCjgcprdq3OHcObN9EFvzej3Z+yTTR3mj8Fx5osqd2UzrhK3eM2LxLN\nvOIJ8RmR6C6BDSJQwiBjwkHHR7b7crBiricbagMplUATDRt/t/KspooKUSkZ\nqSMvSj9XObq+ICJrDn+WMovYaHz/5pLOiwksjX72IHliO9xKqF3S2qA7sLtD\n+MYJssOXN6KOvO0bpH87EYN/5JHmfWw5IMAODFKsA/olh3tE5iJ4/FIhZxMK\n800O8mLY8kHfbSEsPyc08j4wW8hpYmjHq0ADAiSbvEQhn/XVgwdriiTkgoID\nWqbbbM+n6KfKBxyZkHI79NBW5iPV5JFvNxRFrGGBnlejkMSSBqAuMyz3AvX7\nyduYI43+hxsa0GKEXfnMaFfpjQIOGSHJbZ5DbyHfhVx91PzhQ17hoiVu+g0S\nRwxu2xeR1T3OrNxEWgPs0DfS5nWGc2w2XPBFJtPODHRV27rlGj4xxlHib2GE\nkUyUElbCJVr3ttgAVv11tgaBEm0pdXBUQC/pgsGhJ9pkdN/RXeaZkPzGRNNm\n81KBFZE8fn0DgZ+BJpghRpUY2gIDh4EL4KE2TYK5UNgCVcgDDKcAv+hXJgYr\nTdjN\r\n=QyUG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.237","@balena/jellyfish-queue":"^1.0.157","@balena/jellyfish-worker":"^5.0.34","@balena/jellyfish-environment":"^4.2.4","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-renovate-internal-patch-43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1_1623719468207_0.2665723579022017","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-renovate-internal-patch-f51ad568a5f1fbbbd3310a361d7c6ee850f01420":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-renovate-internal-patch-f51ad568a5f1fbbbd3310a361d7c6ee850f01420","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-renovate-internal-patch-f51ad568a5f1fbbbd3310a361d7c6ee850f01420","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"854d253518b06b71f8028bb679f671f5fec56801","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-renovate-internal-patch-f51ad568a5f1fbbbd3310a361d7c6ee850f01420.tgz","fileCount":24,"integrity":"sha512-CvFIEpy5FNeI9Mh31SU16iICnyjYD+NKeM7SFbY+bI4ebgeEAo5Z8q3CtDWdOFkLlRu4ZpsYcONJ+/19pd/PqQ==","signatures":[{"sig":"MEYCIQCy10xpOU1XMwIt4kCUSezPs2EcovMHsgwTf0HZhNMPwgIhAKvqW1/oTICgc4SUiJQMGdreajylGBOc8EyAGzVmHwf1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgx//ICRA9TVsSAnZWagAAh14QAIKovbD70Eolm6ij9a9m\nrtorxWrBerNHWqESDVowAp0VnZP6aoj5Aw1+UCdZk+evS/f87UduqEHpiQ7L\n4KzwmNY0xETqxLc1AFjX1Q675BXlTWGwXaO096hzgra8W81i1WysinMIbVtj\nJlZ4yMphFJjqz4Q4tssRkWiO0XFIKPq+JvLd+wbvb0ovCvSiqB2G+a5IYa5q\nIB4u+05SZXzsqRkuFlvHTLehzTQGIKNuGi35yADhaCkuXSp+2HCFXGNCsZ4g\nmmYxQpazD/8vgNsw/rknWq946OB2zfmsnGO17+iXlCzdE9lSR44BDZC+rRfw\nninA93jetMTs5ZLE7MYmFZAHWGivA7Or1cnROKHHfXsP+3IAVInKNEcOfDqN\nPAHXBgSIBRQfFx1mX/F85/sbra/gvCcIT2q5J/iEvDG8qrIQioQndsvE0ahO\n8bsnaVZppMoYOXZoYreXX/mjSkOdfUUrvV/F0RASsKa1WA9yjBRjP/R0kYnH\nouMfcUoww5qqQ9olOFrQH31y/mbC9iZch4VIQ55M09usLwmoPJw229tqIKCB\nXhny2M4yCzDWrRU01YLZL6eX2aC4Kgh90D3pBaEupgfiWjn4Uhv24j7scElx\n4ZNvQxO/adb2aGalzpo14ZKx9NHipDip13Ry4OYYlQmV7spsHephvaS5Wf4N\nxXbA\r\n=Bh+N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f51ad568a5f1fbbbd3310a361d7c6ee850f01420","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.13","@balena/jellyfish-sync":"^6.0.237","@balena/jellyfish-queue":"^1.0.157","@balena/jellyfish-worker":"^5.0.34","@balena/jellyfish-environment":"^4.2.4","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-renovate-internal-patch-f51ad568a5f1fbbbd3310a361d7c6ee850f01420_1623719880741_0.9019424403688086","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-renovate-internal-patch-baa5cea3e985cd7784871b8b9921130b63131f2b":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-renovate-internal-patch-baa5cea3e985cd7784871b8b9921130b63131f2b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-renovate-internal-patch-baa5cea3e985cd7784871b8b9921130b63131f2b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9d19c439312704f072cc47e6d8a197000201e6d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-renovate-internal-patch-baa5cea3e985cd7784871b8b9921130b63131f2b.tgz","fileCount":24,"integrity":"sha512-pEz2SkudhBVvoC9MiJFTKjTn9SAUydZVTMMBWUY+HpED/T8Q3aDbltEY/SkBcPGdzr/EQsRxDz0rFDUDfO41KQ==","signatures":[{"sig":"MEUCIQDmuMVp4aKJ3vG2wCZwViJqYtVBEMb5aazKesHYUERXaAIgcVUpNrau0urVFrkN12nGVaYJ0wsVXTIaub9OohkwX1M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyAEACRA9TVsSAnZWagAAWfkP/2oUzpC8W5ly2LpoCsNC\nTPLo0IyC8ksReGYar54TzObNcN9S4jI8t+d0gG3M9e9UDuHe8hEvlOLHX9+a\nqzjTGoDbC0VJW7cZaBkh/FFD1a1a34ryr7o2uasG2GLJgohu+bvtclJzMkW9\nzfQZnOP3Gt3l5mUCoqT6rz+jkV8F82RN0h0muZWVRtDqKulzbke4fkMV1PRe\nFIwzQNbxO62lJvE2mEndW0UyvbJ41KTzs6S4LUfgbtgl0GZmTuct+gcDksvP\nG7hMedlL+SuR09qehJbw8+6z6ovvwFML7RRi4hDEyawBV7B7dZ3QK22umZ10\nXIxcXpbMDpYMkZZtWWTQ4eAIOavXkZjzdCtmAGGr+eGtgkl6uTQ+9OQka9jd\nO7rOHp0/AnhjqMXBEK13v/isUcTBZlIUvCmcO2ST7Oa2Xh8+NOTcWRR5FqEO\nevn/1CCQi2cFcC0y5F/8ZSL/v6G0/L5a2tyzCM5yO7BeH5irqtngDagWNNiQ\nPsuJ3YTGV5X4ewxI/dCpsJzQ02+e2s305Yg+Zq7cP7SKKIc9tSYP7bcsXlJV\nYeaWnnTgzugXYMuBsyu/0v5aDIyZdkuIGZj6HU15rESPuwRAzFennQfU33rR\n8AYI+rykVleYcOt73XeuUtIE2NgDYr6DNuNoEo6TFzM0LyO448QJGTbwMsZj\nt+7y\r\n=5LoZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"baa5cea3e985cd7784871b8b9921130b63131f2b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.13","@balena/jellyfish-sync":"^6.0.238","@balena/jellyfish-queue":"^1.0.157","@balena/jellyfish-worker":"^5.0.34","@balena/jellyfish-environment":"^4.2.4","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-renovate-internal-patch-baa5cea3e985cd7784871b8b9921130b63131f2b_1623720192094_0.6684671284943953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-repo-sync-jellyfish-config-default-7b499aa2e8673f79784f47b67efa0ec0dde7bfa9":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-repo-sync-jellyfish-config-default-7b499aa2e8673f79784f47b67efa0ec0dde7bfa9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-repo-sync-jellyfish-config-default-7b499aa2e8673f79784f47b67efa0ec0dde7bfa9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"efe0d15373540b9092c61c1f5da5994c6e6889e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-repo-sync-jellyfish-config-default-7b499aa2e8673f79784f47b67efa0ec0dde7bfa9.tgz","fileCount":24,"integrity":"sha512-AskEGJJGJzrCcw0AJBrpKdj1ZKG0ax/66oxjOsMlfQxxU0Jl0e6t0VdzEAkBFaQF3nr6b/GOqn5OQ456kpJe7w==","signatures":[{"sig":"MEUCIQCcPfeg8ftkTGPtBNsHHIhFbIeFa254yDCqcXCrcdtjjgIgLNLta8ah13b6O9jpj/p84VUIPnBeoyNGRLQCJpWHJ1U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyAKACRA9TVsSAnZWagAAa0sP/0moEKRtdb8R04C8Iwjf\nQQDb02SJs6SRzJNwNefzBlDdhPuQd3ABxZKYdlGCRYlOc55WCFUgV45WC1U+\n8BkYTSSllhKXQyz+kKH9hEReK3WNRa7Hz4Eeo6/vKi+X+5O1EsdID7yIGjc5\nub/AoFI+XElfXY4Gi2SzJiOrq/N6cPYNycYT4mnAhqoUeTP70cxznJaXpYA6\nz33mfYYb9qOhriTom0vdnY1hcVdZrhXwVq1H9zd5DRT0N/44pHHr9y2JQCMZ\niBl//mldxb/p6rrolwFtbU66SZOFcuRFAAb3/6YJXpYFoBnHOPp4Pa+X04We\nTjreeM/dfTeoqvAzp7uYOKpoDbL/KJTxSs+rbih+/cNnj4cj85Ue4Fsv5wDU\nZJYnx/QHHoXaIEzpryh6enTVhm6TeNqpEFPMvQFKcSHBozMSlIuU1xbsrgJh\nSNI6GwMEXhLuGGvUy3ISC6d2G7dyEmQaA+BaPvOI5mPsTdI45ejbCpuXVJT5\n3Hl9SWq8tyn9nvsUp6KNLzO3CMMhR9wc+JZ4Thu59lFsuIYjj0inhLMSXRid\n8qXqxS22NnGa5HrITraX174PNVIU0T1er+g/N2CJjDAOmEpbuBTJZoJSTAXh\n9BMKvnX1Ay6XsUmi++UI+aotqZXdd6f1ppmVISTKhEe7epy4aOuUj+ztbzRN\nRe4A\r\n=Sabj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7b499aa2e8673f79784f47b67efa0ec0dde7bfa9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.12","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.154","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-repo-sync-jellyfish-config-default-7b499aa2e8673f79784f47b67efa0ec0dde7bfa9_1623720575893_0.19005082491824754","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-test-versioned-slug-24f741a30eb516b5d11cfbf5e88220fcf31cbaba":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-test-versioned-slug-24f741a30eb516b5d11cfbf5e88220fcf31cbaba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-test-versioned-slug-24f741a30eb516b5d11cfbf5e88220fcf31cbaba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"664bbcf1535cba4abdac8ae36349df45f594cdd6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-test-versioned-slug-24f741a30eb516b5d11cfbf5e88220fcf31cbaba.tgz","fileCount":24,"integrity":"sha512-pP8mUsXVqwn/Q7LzF3ko/BoPtI7vtnM3KzWuLr7HO+JEdsEdO+9ZHMQU4FqN8r9cN6neBXfR0s3gu3lj8h2pbQ==","signatures":[{"sig":"MEYCIQDuBwEHpDgdEiotl4t3PlWzECS+YSzbU1V3aPauGseargIhAJX3w+weZC3S07AgRNMhmmyxjaBIsSE14x0SYZfYlisZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116396,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyAh/CRA9TVsSAnZWagAAQAwP/3iiLsfyOYBedMu/wVyS\nGYsZTzGBvGgt41WbODrXgl91b4ziZbYS+43hdp0NEl+XGtFYwa6HtrYPEUvY\nGZkmVETRn8f/LePi/x2fmRfHUpDFGXkhANvwKZ1pi+8XKvRDf/hE37C+/1/K\nva+E4MQrvYseNxPCX4L5ccm+r7KptkbRCFxQEgpdz6pSVomzV0dc59T+O8Fd\nnxPeUaYU12GQjNHBJwn0wFrBAGWGmOJ5YT8u9ipcorAoaHx57RFMcvs390wJ\n93tQltMU7GlSr2jLiTpvGmb+ydmliMM0Cxk9nSCyOz30f3UzzqiJKxvYMHrj\ne8mmp7s6xIeRHQUdIRxOklGRyAyW+SGW0/WPx7Vm7Uxjx+6Ytk0lBosPKezj\nuxGOG0l1vd2M6LpBNbKSNYDT95YbyzqTkQT+MhdI4hjRWuf7WmU6y6HT5ZuA\nZN0nhvtoATJW0SZlaWjVgKyx7ZTYt1hDnGaQ8vTHMpdS5anCbjKYbngG2sHd\ns5a4G1R7m96yFHFiHaRoG0Mhg81R+HIcRW6to4hWAXJfWoQpz6SZ+7ZDFFcl\nJT3m6zunNL5lzJhcaXc8Rt0UUNPAfHb083LQSUhGhlOItsRwfni0H/T3aR+G\no77uWV7q4nVIv0YlM/qA2pt0ebRW7snG5U+4wE9fnpUQJr0wVAdpUTILTN8T\nAdB1\r\n=Rt/S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"24f741a30eb516b5d11cfbf5e88220fcf31cbaba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"3.2.0-versioned-slug-1853e77437a405b711221e662737eaeaa4be6850","@balena/jellyfish-sync":"^6.0.236","@balena/jellyfish-queue":"^1.0.154","@balena/jellyfish-worker":"^5.0.33","@balena/jellyfish-environment":"^4.2.3","@balena/jellyfish-plugin-base":"^2.1.151"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.8","@balena/jellyfish-config":"^1.3.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-test-versioned-slug-24f741a30eb516b5d11cfbf5e88220fcf31cbaba_1623722110886_0.9693791896244079","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98-renovate-internal-patch-6bfba01329df30164f290a5e45a442b7678cbe77":{"name":"@balena/jellyfish-test-harness","version":"3.0.98-renovate-internal-patch-6bfba01329df30164f290a5e45a442b7678cbe77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98-renovate-internal-patch-6bfba01329df30164f290a5e45a442b7678cbe77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"738e654efc5493ea5ffc969413ae40f7de2d7019","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98-renovate-internal-patch-6bfba01329df30164f290a5e45a442b7678cbe77.tgz","fileCount":24,"integrity":"sha512-LCqxhpUVvW12dUqkWALj48lzJqG8X2P+dMDvDPWLh4BfzAdR02Q4JeJQ7Wu5HUWlZimGa5KCB2HXly98rKqlgQ==","signatures":[{"sig":"MEUCIQCcHPOxP2VtAyA59nNabLchqWzT2lT6MEasXtc44MMBaQIgQA7F2xBDnbgDa9DlikFpcBYSEjPk3McRki/qW7l6ccE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116331,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyBUaCRA9TVsSAnZWagAA3cgQAKBa/aWmqlJnj3tu4tXe\nNB8d+pma9zvyVrwN6QEE1/tPhVxj/658heM/WfJS61WLMj/cnPGYhLa80Yr6\n3coTC+EykO9SY/pwevysZSpWBpNoYNe5ZMUKrhVlmHKExFmmFdTrQG+irI/d\nTg9++M31ySm4kT6tdTo+sHtHqo5VKpamUH8s/Aochv4UCbLhpehw/XpOEWtp\nwfjHWSPtCQoflMWkjSPaJrShhT1UmFUETnTHRrsryZmmQyz3Hm5lQwHXJCpX\nvfK0+5esIEJnVyOBG/3XCo0g1rXfYtbuP1cPDgwE0euZDDUam/+JRQF4EMo2\ndGdrxtiapteewwmC5aA5fizwN/q6Hk1ga1NicEkt+BNXCoKgjrSM9fi21HPM\na+kCgocz9zGadHxw1q7PKcXMjkUeWzt6CMTh4jpB8htHgWbEDwGHzHjwehl3\nKh6uZAfWpInAYs0n744SaA/54o5tQqgP8E+4w1W/KU77GWWQfuBpY/ypgUVM\naO08BWZX1zce7SVtkWP36eWWVypqYMQID7GayWBjWHcIkvkhQ+euChADl1vl\ndgq8+BWwUI+XFlCF7lN0VdOfxY+DfH1q4i4CVXCjA2eqpy1Xa753zwvoa5Oh\n7wZ9Rc+gKaaKHpwjUJrN8l5GLLqZEYl6EchA54GmdHVSnI4jpz2Q9GuDOTXW\ns9Lt\r\n=W5Jg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6bfba01329df30164f290a5e45a442b7678cbe77","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.15","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.152"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98-renovate-internal-patch-6bfba01329df30164f290a5e45a442b7678cbe77_1623725338649_0.4190396975273454","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.98":{"name":"@balena/jellyfish-test-harness","version":"3.0.98","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.98","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b425a2d4ce83404fbc4911e4d7adf6ecddf82fd8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.98.tgz","fileCount":24,"integrity":"sha512-FYbHpRU8esCH6Wa9lcj+b51tPuCp3cEOw4foYooopR/MOB3MPL1RunGF+CUWNtLluZViNjwdrvb+qvUJgINVMw==","signatures":[{"sig":"MEQCIAa0i/C+edvFmcXzake6PikPhDsUfkIIwqqoJPU3xDZIAiB32DJ61M7QSLuGUquKinUgPg1w7jEkf9oZHazkXJgq1w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116266,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyBXzCRA9TVsSAnZWagAAgqYP/18H66udPguYk/p4CIZA\njtpZX9L3aX809ay35xD41o/sn1HGyQaiTsSqat4d7bzBrcEQq6bCghjfevBS\n1ooUDE4cJKzPypMs8Jh2TXkH15HMC7PTovfTnmXAnKi+G4OnGU3HbvixA34N\nNHi4pnpwt0zq0T6BtgmCZTKrpnvcXjynf+IOZRgOAIcRV7akJp+T45o7JeUC\nHiWV7HR78PHgJxHdZgxgyKnOMWT559H+FyANNc/WpiumTMS/+DJgmfbNCzSl\najQTVnx67Ud7oxRsbpNTvBT+M1pkrCD8MvP+fBo6/nO0hHT5olPpYQlwz2m4\nq8vVN7cIKOFAA/tawIdk0dwYAO67SW/Sq5gnUsM/rJuZHpu5QnV2kHWzYahH\n3TaVVMj+xJDC0vH28ZMVjzInScsUn9nvzsUmNrPnv5snhaPucJG9UQG54oji\n04zRKlhGEd664hZxez7WnYJvxDNhkyYTCUsBhHyxFMgMJOkjzPEY8fTu04Kn\nSWELFkLNK9lhStVVsPgQx4HBaQo8O2cCVhoUfjnP5LgbHYi/vGYgRgVpGcoN\nDUoQCaJ8ExJhBfHQTZn57IyECeQvYmNSzTrfhtWzYJTR7XvGXbK1qZxJuyeC\nFGR0vy/gaJ3/2rvtpquTNGD40r3cFz3sAoymmVeKBqK7awi+ZBu1gcEW9JvU\nXEpg\r\n=Lp7V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f8187618584ea5e5e2ba286bc3df53e87cd16475","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.15","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.152"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.98_1623725554854_0.7191400502139489","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.99-renovate-internal-patch-030080ac5186d074fb94c4ee540d03ad26017683":{"name":"@balena/jellyfish-test-harness","version":"3.0.99-renovate-internal-patch-030080ac5186d074fb94c4ee540d03ad26017683","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.99-renovate-internal-patch-030080ac5186d074fb94c4ee540d03ad26017683","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"46b9d94a39261d5502f042503bbcbd91f5d9b003","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.99-renovate-internal-patch-030080ac5186d074fb94c4ee540d03ad26017683.tgz","fileCount":24,"integrity":"sha512-NjVYgQHEOGDzsGZNi4P4Nv9OYpLoQmqpuUNmKdkQRD9NP8W+JT/WWQygHmMnoP9ENnhq84k0uITCvNB6BRKRcg==","signatures":[{"sig":"MEQCIHWFGIUH5lQo8hGK3B/2mV/yXljCcRP5j6dotX89uW0LAiBJi21VEvKhV5Fqqz2MG5InKB7nJYIKxZUsS7HtPTbXFQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116435,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyBcBCRA9TVsSAnZWagAAe80P/iHpngdUNDmQTwh1pBje\nlCGgMXOfH1JOYgYXw7DTLZUJsGjI18IkiwGC0LZ9HANwspY6srBN1KdqT/gc\nMrYH9kUT+nVND1rCgKRTAztnTYgEuHM7RCa9nY2wxbxfd2r3JYuBnsTcp3AT\n5TSR+c6hgAFz7wRQ/XONdYVlxfSAtQ4SHBpt4l179mYzAV61awdgEZ0WABNe\n0YTrY9PqVTqzi0C+PYBrzfZXy4y9xTt/pibN5CItdp9j9aWIPdrXvV16Ma0/\ntrFbHTGz9Dj6NspR8SJpCAW0n8MT7bJzGvg6SNETJXmu+yDs6UuInrErGKVr\nzDD67r76d3fKo84qH4ezBX889kidZ0ev8I0UsWILCdP+fcKJGgW/24cp/9jv\newl0QfFNI1ZYLvDs0UgpbjW0XPd2v9NQ31WBebrNz+/g+WpLV6R+wvSmJgaV\nYO3p32+khmbCleQhm7n7Sw39vao8pRxg34UM5U5xR94xfN1aZ+StyUcqNrCc\nnBhAJRYZp88zAFunHiWqdmFHunaJ36Nq4oZiPWkYaG4u/Lb42DsR3MRXnWUk\nlHaOdZ0Bea5nM890eEr15xFwEGSSW0N/yeFCRlWQCQWNA+ny6kPvvqh3qhE2\n5J6VzayVJMO+Au9sWunNzQJPO6iESd76LSMfqK1bSxRLzMBBQLTfCRC8hMnX\nxjtW\r\n=7rwk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"030080ac5186d074fb94c4ee540d03ad26017683","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.16","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.152"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.99-renovate-internal-patch-030080ac5186d074fb94c4ee540d03ad26017683_1623725824946_0.24106029871607149","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.99":{"name":"@balena/jellyfish-test-harness","version":"3.0.99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddefbbd7ebb65b1743248e3eb54d6ae07bf39630","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.99.tgz","fileCount":24,"integrity":"sha512-hTprtdEu6nZoJ/eqK01WTGPyK/NB4OnJD4m1uOsR+h+op4rmZ0ZqaPGnCx+SneWTyrB6NoKiSTqZEJ2wcNXO+g==","signatures":[{"sig":"MEQCIE9qzGZe4yjFjMZmOyJ4alpNdU63zjJd2GJGsNyPOHxYAiB13QGM+u0/t7m3cpa5y7VIkpgak2xrxfzbPDx2x117+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyBhbCRA9TVsSAnZWagAA56IP/1YPyMQjim6rNnNl5UWH\n6gRSSjJUCvyhBN2dlrKUNh7nZmNVei5DTOaztNMsTWGewgsRTLROBFeRLUNf\nqtPxxnMvT9n2WPdU8XNyfLlbup4pSiBOQDALLzKnORCOagXbh5sl+IAbdUyj\nLP04z/iidEWuY5oJGogp9u2mhz2eE7RxzbhvIzoYJAsryXJs8FdoIaFM78Ij\nBNzl2WQEX/fETLH/NwdsrMn5z7+9I1vQOkO3hG/P8yhvsflR12Khj88SsKE3\nH9cw9nwgXHIRDEO+0NFN0eiLuNOyGq8uBejKf9B0GmWV+dh8lB3mOMPjP3bA\nCINJkxgWQSM8EGNscwvlyfVr+1GNfwGCn+a4EO7NsarvxgG547hZND+qs73p\nCENnIfspkHTsBWnhkgsmhRqrCySV0JKP2eCwOq30a9kGFCBAoIIs5W85Hwyt\nnCsK3hzN6QI0t1kyWauA6kI15BogkWtInu/zvlklXdNQc+OBNxiNshzMGFm5\nL8ZynM9g63gntM01Pr5p0KhGrOF5iIIMdp8JY3wX/qj5fs9LvA3MK2srzcAT\ndgRE/t/zpPxhRh/nm/v5oTrjX6h13hzs5rbHLqs+XxDva5T8TItY8iFZF7t3\nLoTLrsuNvYv9zae73Af70K4GpxL7H5tO+/890/uDDxjAAjDcWJdQqYr4JZpI\nMuUp\r\n=NqFy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a06b1bd066e50e372d960c6178772ff9469a9d27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.16","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.152"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.99_1623726171115_0.1413385519602286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.100-test-versioned-slug-71ccf5d3a72c94da7b0f04becb2162c251b0d122":{"name":"@balena/jellyfish-test-harness","version":"3.0.100-test-versioned-slug-71ccf5d3a72c94da7b0f04becb2162c251b0d122","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.100-test-versioned-slug-71ccf5d3a72c94da7b0f04becb2162c251b0d122","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3ada3c05926bd335b9652c5664b953a89882cf6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.100-test-versioned-slug-71ccf5d3a72c94da7b0f04becb2162c251b0d122.tgz","fileCount":24,"integrity":"sha512-5JQXIysPw9ZIuFd2/jKg6QT+mpYuiuXy+oNJyYWhTbbpXoOCECAfZrxSuTTRPePWHwyVyuNc5xAuJQQzP8rRkg==","signatures":[{"sig":"MEUCIQCVUQ6utLFU4B5Kh3gB2q5FrHFf2dZwnJaNTvTE6Lu0twIgT2z0wnRUqL3SEBMgdgvK5eajUqSopxD72YknwT35TpM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyB8LCRA9TVsSAnZWagAARrEP/i9avGmj1cuB2Z5vsdKF\nZg7JP3db0wVd9ai9h1jkVo+uIBvQMtOnpVSAp05oqtmv1v+gxNfRUjiWVHA7\nlij7U8jN/WqAwTxfCUcwDwij7X1Nl/ZIhjQl15ffrKVUxD2iIVr+R/re7vB3\nNbLL+3tl0lkjOozEmfuDNAloYaaT2Krc0g1gqHqRxsqtJ2vVFOma153c3HiV\nwNUiZ6/fXnUCdxicDrhZVT8EwmpiHfVclNvmoqS6LMHzbJUaHN2ClmHgK/eZ\nKIx1Qo8IR8M1wp0OM8Ytxci1dcTBP4fep6+TdM2a2jLGuxlRyOpocLwrwHOO\n3snYyMxeD5rD/XqO0Sm+sTH99kN/1nqDUaRpvGUKRNANkEgHIXepsdaeDErv\n9z3/TsvMPlrH6rNztxdNQXm8PY4z1ruqEvO5LdDyP63aVMkJp5gHCvn4m8fh\nLMHOSu1HAOusDHGasgmayipFYtMMzw//65WSOkyY5kMlHPPTpAdAwq5uk3Tf\nhUDhhDnrKmXLFqEtPl5HAmJw4Oj4f2FlJIMNxv2wQ8AHUgHodS/zzxnIQO3/\nLaI+bpjBP7oJ3fwLakmUs0t6wQQgrwJrGOJkRjUSGfNx5l5r6DOYSjXfkoUx\nnZNgi0nfiJL+Aqfp9SOHk0hWFiYKzLzGHSC93j5JTWByo9jVRkUcQMHRahgC\n1iYQ\r\n=RDJJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"71ccf5d3a72c94da7b0f04becb2162c251b0d122","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"3.2.0-versioned-slug-1853e77437a405b711221e662737eaeaa4be6850","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.152"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.100-test-versioned-slug-71ccf5d3a72c94da7b0f04becb2162c251b0d122_1623727883487_0.13625607141022456","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.100-renovate-internal-patch-b00325c42b19b5711115103fcc938711d4917470":{"name":"@balena/jellyfish-test-harness","version":"3.0.100-renovate-internal-patch-b00325c42b19b5711115103fcc938711d4917470","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.100-renovate-internal-patch-b00325c42b19b5711115103fcc938711d4917470","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6695905a18a258692e142d91fa9e771858ecbfbe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.100-renovate-internal-patch-b00325c42b19b5711115103fcc938711d4917470.tgz","fileCount":24,"integrity":"sha512-owX/6co+HGfxK+TNTL4OGZoQvXGyHBTz+j4W297/k11ZLeCW+xBXTPdFb9EPfL3bTVi7RAylM/ZdZogzJ9o7EA==","signatures":[{"sig":"MEQCIEa/bTYrNdzD84UQFJ/dJ9au2UiIXTTN6ZXrNIibW9rcAiBgtg907qFKaX7WiiugTvVrCwRMWfZZ9BOsZxCj+FaYmw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116549,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyCJ/CRA9TVsSAnZWagAAti4QAJxxbO6xZeYfZqmBY9Lu\nL+TKSt/+xsPBeB+x7kaAOZC/ppdaMuwGbu/KVy6y6ftwNz/BMQ+ucEkMoctk\nui+9AS4Ssjk4HD/3gBpZ/got1Ojvhy2SjKq1emfFHLwP8O6uI6jSs5IYFokc\npY9NZWQpxo7/l2oEoQ4FIsJ52GyYUtwZcBLeWfxGRwhMwiPLtK0OItIw9/FP\nsyOIcaCUVGt9/B85oyF573ZQr2UjbS0F/Qw18OmdBuOXo5dH5B9ZOYUoHBGp\nGoUPE0crFuG+F7/qswJd6eELWB9S+IZDOGOUNgiBtJSMkIJ09NitU+mQnv9k\nx5K+A9lDDcAhrPTM5CxvyItcdiXZINpoW4Zi3RZXZWv4lSf0dQM2RWV1dmWZ\ndBIGXxN5rKNZS1gqRsT0EX6hpMU+SMJGK8Ay3QI+kp/V8jNFAmEaj1Uy1RZw\nzw/vd5T/KzvGtSslT/xeEE04NlIxxCABcCp8U3YUW6fxPF3y7eWpK9g5C2iI\nQr65iYVKR3pA4LOfPEecjQIIZ2ow+y8Qxgl1HnZsW6VU3EDC889mxa49hVqr\nH2JUHtdjrSAr1oP61k5rWbFd4aO+bbSEzGyPGcltkABCsnI9apr+kF9mrT07\nGkvv49fsE65nrj862lo1fA6cdheP2We5bC1fB+PAQURS9nPHaELPYfzCm6ls\nDC4R\r\n=clg1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b00325c42b19b5711115103fcc938711d4917470","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.16","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.153"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.100-renovate-internal-patch-b00325c42b19b5711115103fcc938711d4917470_1623728766860_0.7569247738477589","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.100":{"name":"@balena/jellyfish-test-harness","version":"3.0.100","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.100","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb8707209a39485408e67c0b770e0f7197733ea7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.100.tgz","fileCount":24,"integrity":"sha512-ZwEKcNXt1VU4H0sX+w8Uzhiq1iPN/w8rC3sfptOO4Tw8vEi84uqzDkoTSvYPIRDk1Wkl4if6b3gOFS9N+gc3kQ==","signatures":[{"sig":"MEUCIQDVZJ72BqkaoJ+K5wjaZwyB3QLOEvbDqnsvh785xE1woAIgYl7EDTz6t499gHjsVi97vDoh/Mugln+VcbJ5vrU9Gfk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116484,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyCNdCRA9TVsSAnZWagAA3tsP/1RaDFkusYGr52Az4X5u\nX/7/cPGqGnha2319pspAEd0KdkD6NbzLyai1sx0D+TqbnUb4uMai7Lfp5mBg\nRGpuFMkPh/UiKkUs17dJlg5E+NvwkX+V2gOYOMgDVjMrFD5kef4aPHc4JQ8R\n44ktV9CyWFgAWABt8hSfPNdMiOSG29p2YxGhTxLv40Pfk0c8e6/qXe9GNIY6\nn4ofDsCSTgoT466dZMG6daVD+GR+0dhzvj6BTWG1sWlSrDNgRExyTFGATgAE\nL2+kDnZ9s+0xwuIo7HFRlMyCkh1H6+mA7mTt/iHfaVeDBLVjUUc++dG/XS1w\nRYw60hxC79/LLlLJs/MY9wC/C10KVQ/FZ/Vn2fwopNw9p34DxxCSP29D3fOu\nHlNi8DScAQSHqARmailLuddGQAUERtF8gs4ww2OsuBOmkpJi1f7fdjvMsqGs\nwjT/Wa+mblRYJ+d5HViB/OV0oZDJhU0HnL6AmHT3KzbUtYfm1phb+kZwhbY2\nI6piwgFIH5eqGraETjZmZFzU5IsdbAb6ZcPaBNjqrwweGytJX+X8VUl1uIA2\nefcAphFgvz/6Z2yOQEFB9ehZx28oRY+gj9UfoaRCDQ/mt1hNG61w9E3bNoIQ\nZEWpFM9Sfw2Wv7V0j2s8udFLKHDPemym/Xeqj1soCnsGrAv5kutMirHX0kfr\nVy7+\r\n=OfBt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9448df0641d998a7cccafa6d91fd7dc00fa5932b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.16","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.35","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.153"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.100_1623728989089_0.8748797123980467","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.101-renovate-internal-patch-33dde08b2fd8b176d2199e2844f3ee427afc66d2":{"name":"@balena/jellyfish-test-harness","version":"3.0.101-renovate-internal-patch-33dde08b2fd8b176d2199e2844f3ee427afc66d2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.101-renovate-internal-patch-33dde08b2fd8b176d2199e2844f3ee427afc66d2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74e29df31810d224e00bfbbd481a53b09e69512c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.101-renovate-internal-patch-33dde08b2fd8b176d2199e2844f3ee427afc66d2.tgz","fileCount":24,"integrity":"sha512-pkH+m8W9j6eWhS0D7QVZjXHDzvr8gu+TdLckCcdWRKn5iMgwZUGycqpDKvPAoIJLg+tQ/+bQQvJ5TYT3Hk3kKQ==","signatures":[{"sig":"MEUCIQCVVyuW86AIOnkTaf3L9RY38gM0RLkmG+fIVbAVxrkAWAIgTeMp9ew8NA0pnaezwitfjGqQlX+GlDrWNBisPNLDJ40=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyEpKCRA9TVsSAnZWagAAXlAP/RT2DyTpGYTdKJ26exBm\nBqxH7ZKWfXq77QxR6tXEI3e4dNo2/kR6GLABhjGFJKrNZ6B7AbhSiMzyiAdf\nimsoNYWKJBbncozfBQDWQPVdzOWNQOxE6k2q4F3WGoIhWHkUElSLP+zsUZxq\nMQ3OIOGINjUusywY5Fo87vRJmdmbx5aXzHR72HJXUM1k9Aqt2k502SLj1/dX\nFZoarFwEnfPxxRrELraOIPvXKHJrWKcFen0Fj8mPfkfr3AruzOGns1Bd3+Kp\nitQCJv+I65V3tpm1nihV2OAhjjPOUYrwQUW/qOST4BYW9nU28rQXx3J6IUBI\noRRpYUx6bfIC1P32EcGKNI9ZlcZ3zll36tGW+jfsLguliD934sMCXGoitJxR\nXYLQznuiX9GaWHDHFCTY+Bv2nNFGBp4gWZCPUKZ2uMQ4BdKPEOkuqNHXH7Ik\nERF9fgwJohVE+r0BOsmhgZvwT2x6pnjF5/qbY5gxsH6K89Ncu6cfSWZ99nin\nxbsqKZsFyq5DtYnjGMTBfVzSj9y1p20ulB2me++iAeVGlBLt7PKtpk9oZDWy\nPpvGvawYCit8lqD9/+ejUIRCmeKYOjJk7H2EyR3JWkzOla+UuOzIsXorrlgj\niNlUWWJ3Gp9gi3ZfA1NDmTnfrjyyL3qf+NfcCR3MW9bco++Eb25MuTUNMhVg\n8EDg\r\n=DZtF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"33dde08b2fd8b176d2199e2844f3ee427afc66d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.36","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.101-renovate-internal-patch-33dde08b2fd8b176d2199e2844f3ee427afc66d2_1623738954426_0.2171550695264408","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.101":{"name":"@balena/jellyfish-test-harness","version":"3.0.101","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.101","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"200f9f4b1542efda12e48d687b148371d311af0b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.101.tgz","fileCount":24,"integrity":"sha512-aNK3EqWyS42qeOYe7Ug/cHa6LCk42HRE236GgHhbNxOR4xeW/OiBtNeu0/o+CNEIeKfOw8DyQ0ajpNvs+EHP0g==","signatures":[{"sig":"MEQCIBkJlTqi4lkRv98QwZB5+sE3+ZTWZZfw4jz5u93Yj5aiAiB+ipfutD6SIl6baWClkUCGfd0S7I5AB4sVzskkafrPeQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116559,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyEsXCRA9TVsSAnZWagAAHHsP/0OhvvFAPtwVIdXjs1EL\noWibrYKw9Lg0x1AZ0Rg5L54FBU7FBvAW0qjr9GfYiX1kSw7FqvTwx3z/fO46\n99hnGNX1Tpc8JAmpoZgsEbxzvghuLat4B/pRFxVHV5NWzO/MLxS8toUmIhMZ\n8gKmpBM+rW6HwLSUTIaQmgDqGnx8WgdxbtZe8/gOlsVHxgIew//d/7uUNLm7\nPSC2PzuUcfOFJR9nGWgcGqxYWtcu6c+vE9Mecr/wbIAdeCQx9Zeee8hgC0m/\nlsQ2yf9E/pqnV6ao7YGDS6PhKWlyTu8omJnkf+rbuvEzJ2A20yqtM2QH0GON\nuGrLY9okIkPwLL3VKSR6I3Qi9ltpVkQYqcMMrhrekQQO9NZDNV6n3Q2H5vZH\nmJECrxI/yBebNMhZgYZUb5FaCm2ZMkCePbk7ZtNisfzzCAdv5N1Q6FUtyQnO\n9GQFFCsbiiGtFr6KHB02LP1QdIdZeO09G6OgRDjHutL+QvRILXwO2Vcw+jy6\nh68Lkv1dc3U8c6XsgHUieTaIkXVwq/M7UFMe2l4VXLE300a7t1jiuJAKq+Mo\nT9FIkV9dq71oDv3tPqK1N34KwnF61hyE3qQLZgOXySg2hVvMkgtipLMz6ynx\nwnz09pJXe7wKtv4e3Le3+GfgjYeO71pjni15+I0DqrY6UPDd3I41FIzBLP+o\nkcVa\r\n=Ys0d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"621c22fc312184e2463fce448b1838cea023415c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.159","@balena/jellyfish-worker":"^5.0.36","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.101_1623739159460_0.3189800298730838","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.102-renovate-internal-patch-100c881da81a81e946829ac4a45809967203807d":{"name":"@balena/jellyfish-test-harness","version":"3.0.102-renovate-internal-patch-100c881da81a81e946829ac4a45809967203807d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.102-renovate-internal-patch-100c881da81a81e946829ac4a45809967203807d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9298af55b1d28fe7eb3e34d836d2829adc500357","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.102-renovate-internal-patch-100c881da81a81e946829ac4a45809967203807d.tgz","fileCount":24,"integrity":"sha512-iMsT0SHdGORsPoDh8r3pbVc8D9+nKyQ7CEGr0tJAWgs7cEfzuhSNs6jDhHGvZ5bcLf6i+2RGZ6vFilbabi0Adg==","signatures":[{"sig":"MEUCID82htQahqReYzNuutCxFNDZqEnUzQNi8n+hyhcClKwcAiEArzYnzrhI/t0wMmctntMQMBepb1GUjtCZZUvl0iD6AuI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116731,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyEwOCRA9TVsSAnZWagAAqLEQAIttw3Q7qwCy7VaNU6S6\n72vqV+4O7ZBzyS6Sd96EcXsl6RR2rgHzIAMuC4Q4Bb+vVBcKKT2NjmvZCIrh\nyzfIZGYh7ct76U8lCl9PfFsTBqmiHZRIDX4F/NQzG8dVxioOPfDr+qhRr2k9\nP8QHjLtPRfuORNkquSeZW3aSK6vheA68zsTW/Bboiw9mBGBet+g2j4xMBC6/\n329c6Wr4WnJJapE40R0ZQuI/RtSB8fF5lAuS1Y4lomrhNntfOM/wH+jfOE4k\ntCRe3fZyWxn/h76RivJ1juZx+dZm5k6ZXwvI5awcBqhCg7tcp871caWACNKO\n4lgEYugPQ+fxRmAxUkDpne/++nxzv/borjJu0EBhpOnLXlvB/kUdaNMc7SYi\nJyTFg89iFCgmFI9uCfPxVboEenTBaXsg24xa0XEeeoovUpmkP/sMRCq69of9\nWXkfmcMajp+mj5scs234eejcoZ4APEbtFDjnH/Lh4/xFeyVdo0slUAnUD+cU\nklE7UNxl5JARiTil1O4/6waIrp3tIXEBgb5lac0BL4EmT3O6x6yI3VVn1BO7\n0/wuM6+KoFc3b9k6IVE0ra3nfi729QfN5tjRccaPGPoBKQVbee2rBHmPYJt5\nIw3Kss3Sqz0+1TAwtLZ8sKUSlGdT4CLfo8viP1snrA0yQTDDmrtHBCWZLF2a\nfRIB\r\n=lJmB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"100c881da81a81e946829ac4a45809967203807d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.239","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.36","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.102-renovate-internal-patch-100c881da81a81e946829ac4a45809967203807d_1623739406046_0.6853097950483571","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.102-renovate-internal-patch-9437aadc70573eb9c4ae7c80a823bcb14183fbdf":{"name":"@balena/jellyfish-test-harness","version":"3.0.102-renovate-internal-patch-9437aadc70573eb9c4ae7c80a823bcb14183fbdf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.102-renovate-internal-patch-9437aadc70573eb9c4ae7c80a823bcb14183fbdf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1af67d088f0ceeda29de5909d4dbddda888328ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.102-renovate-internal-patch-9437aadc70573eb9c4ae7c80a823bcb14183fbdf.tgz","fileCount":24,"integrity":"sha512-FvS/sX/mDkFAkrFbRp66DL77avJkKYP/y+z2SG66EQ1zT1lEg6dtpD3gDA6q1XifHU+H/QCQRbDFruYqnaRk4Q==","signatures":[{"sig":"MEUCIQCigJeIs3PxLnNTHdDI2/pdCCvkyiI4SHPtYA8v8X5JkwIgG+6OxjTTYre5YPHgUhCAWHZaScqyNJL4U10hkvxX3hE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyEyqCRA9TVsSAnZWagAAOVYP/RfmqGSpEbUQpjuHeRCV\nycKy/tJs7Nrd4+XZVFs0HghDmRDqMpB4yugtHB1AQZUoI4zCl2acQa3kMp11\nlMZnhwu9Xtbbvz/u3yg04+UY3w04Wf2+pTCFjX8Kh7Tk+00MV2X66sAXHq1u\n9eTFcvfz7WegbBZuWbuRMHg5nxlOSprFLBdaBUtfsdGXCAkZRWn/ZN/MP+HO\nUbhUoVMHmIGiwUNvbA7+fGMph6+4Qwg1fouVgwVV0Od02SPP2naYxPYid/za\npMELUV7RcoVOJ7pL9KSRhVB+ADE5wvLxdPZNrIMUDYZ4h/ev3wakPjBewvaJ\nrvXOS/ZiqqEUV25nVX6uVYTkFTTt5pSkmUC9yQQGgNvrDHligib9Qpiif6c5\nbSpFNCXVouwK4l3ShtvkzTXvv7PqWCyvslOpuREKigy/NGrhqa9cYpfbXo3x\neNCDtKJ//eb9VMvFijFIiJF31B1rPVuv0HBcfKrSXqZHFsuXw9xfFOZMl+Fs\nHtYUjyTUB7zK3UbhKgJHOiZ1uhDuArcm2Y+GhqPBT4c//UJXOqKCR8F7vIAj\nGenPmEj3Aabz6SwBjkjXBcrz9F/AmNxKjfwhQj3wvFsHnjQbCFg8qb0UVm1H\ndV7jyR/+bneRgbkJV2bazMHlz15BPljLwUsOmk4ZOonJpusNQdgVTn3yfQOa\nJRYM\r\n=swm/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9437aadc70573eb9c4ae7c80a823bcb14183fbdf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.36","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.102-renovate-internal-patch-9437aadc70573eb9c4ae7c80a823bcb14183fbdf_1623739561901_0.42497334127215525","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.102":{"name":"@balena/jellyfish-test-harness","version":"3.0.102","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.102","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a287dc9db4235e7effd3133817080043b46be615","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.102.tgz","fileCount":24,"integrity":"sha512-KMv+LYU/gJ4YH4pcNSYiJ8RGF/qDVwmg0T/Ot5+MaqC6bGhT/2kHv0dqvfiZv1SpdIBLnYCQZgDa6Rdea7CGag==","signatures":[{"sig":"MEQCIGjcU2/1gKwNYIjS1pvPMxC5AiD6ho7VAp1Gp5o7L+lcAiAl7cFd/GH0uwd0dP63WAQ6l/UFozhAUJCOEIVPkbQ90A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyE4ECRA9TVsSAnZWagAAq5UP/j5JP4YkKA1SFhNaQQX2\n6lfGBy/+p3Jgs3Yw4bshlW757/sAwUVeYnhLsuWCWvpH854bNQEc4QcUi8vm\nHaeIIMdnm7IcbcjHcq/uu82ssm5e27WENdOXE0uFN5cI255UFEUg5w2i/264\ngKUwfn7Ubgx7zh398uexXPSVrMO2oyGGTrMi32xrNJc+JjOibOzlXu/mY9bO\nb4V23wJUxygjuOMW+aWqgN9UyUj9r1nadORJC3r0T1592bU0HNvx08pYTG/I\niWh7gPr6NQj7MO+Mdww8gOSEacY7rJGA8icLCVsnj7ioC6FkwdUYJGBUs9OH\nxspxadlpxZsY78SnOm3/EGF3H017KCo6FlAXI7MD03wGhp6rbPBKh4dXpeLv\n7zoxzlFZsVfRS6JUgc+m33Z8YESWo8N8mZ5sIbJR3ksM3jIlqvyqsbZuS3kq\nUz6xbB4T3ikG9nqL6yoqXrLVLxImq8shHsP8OpLF+GI7qREHmTxOlJvolBBe\ng9owSbyCfxMOb6+guJ+CKQTo6rXKQmP/1rsMA/S+RScjrpOF3YgjCbe5t7Sh\nmSV19wKypzBiLmJWupxf2Y/7jdedCc8rF57on9s4NTIMvWUCyVD664byHWrP\nTAjDZD1C4CYQX6tVWzJQg37obd1eHWvhSZgeF4re2O3A2iQ2WZseb596040w\n0/Xi\r\n=dY3A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e64dcc5fe72b112e44d9ab1683c55f55ca291b30","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.36","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.102_1623739907813_0.7420650946163712","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.103-renovate-internal-patch-8706542e463738dff8320edb450731d7e0e2f6ed":{"name":"@balena/jellyfish-test-harness","version":"3.0.103-renovate-internal-patch-8706542e463738dff8320edb450731d7e0e2f6ed","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.103-renovate-internal-patch-8706542e463738dff8320edb450731d7e0e2f6ed","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74f23b50a34da968f84b8deb53be4211f0510a56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.103-renovate-internal-patch-8706542e463738dff8320edb450731d7e0e2f6ed.tgz","fileCount":24,"integrity":"sha512-9P/J/aglUXwGWsMrp3Jqq9f4APj8fFhZ/A/Y2jbM3R5fMoKacIz9N8nienfI/u/2FQEnEI5+3gWpmTgA7TmViA==","signatures":[{"sig":"MEYCIQDAPEETWFzeiWyLRB4O9VP5QPoXCuxoIjZvADeQEAj5dgIhAO6hC+8UzmytJhHOlWzdIBUe4hJwXX7L1RSf1qMLxa9p","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116806,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyJbcCRA9TVsSAnZWagAAsIUQAIbDwxY5vHSQvbF9WQtM\n3UFm9PP6ys6u6PBpBxO5MKCkEU3TF/oeTEbXOpJg8AzYqbkXmdxG57va4jA7\nNfxiqUhrRrEJc3jXwHOPA02vwAWwU95cftdzssTloyH9po4CCRLVmtZYkyNb\nqbI7nMGBizPH2s2LaqWgOhtwN55ze761rA6J5UsSehKrEvEDJYI64fjG/V/h\nKUy+gDb1ErOV8ochEy288hOesW7v4r/eczHRgb+HD5tkIIKaftXfo2potTwT\nz8zhIkAbRPJj3VZkGRLvIi+wIpq9+sg/tgPdMOOLiymTxzNJUdfBcY5fcdvI\ndHF3XI9OjhT6SvqYTp14mRpfMJVdgKY+115rNc1qRa01auY4ok6tGjM1RJ/N\nrgk8ODKKsRCi5vABYnRjXJ93W9w9B7i0zdaR3sKbEG3q7yTqNfPSmIxpfVTF\nQbuXnJpscAWPfHycjV8r4Mp7Yt0i6b+al+Jyk9Mk5D+zlbbF2VNruTb9lBlQ\nqjIfEPMPJMboeiWbucSOjuugtWYwDP+05g3Z8WXSlIEPsoip/dRh5SqZBzyC\nECS3ZaYI8x/QEEL54Z+GvAXue6jFI/IGjdtGkHEPybnwUGkvWdsZ0emxaf+b\ngGUNg2k7ctmrU2y1WL2nF9ctfjx/l12gJaDclEuflqzIFu+KJham0TfkmeNS\nPK4h\r\n=7dJ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8706542e463738dff8320edb450731d7e0e2f6ed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.38","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.103-renovate-internal-patch-8706542e463738dff8320edb450731d7e0e2f6ed_1623758556117_0.35948769605221575","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.103":{"name":"@balena/jellyfish-test-harness","version":"3.0.103","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.103","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"930be80c7f6c5f346d92a400dde415e40e54b9f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.103.tgz","fileCount":24,"integrity":"sha512-ZkR9FHIMDF8P74mSC8q04+LAA7kMN8Fr35XTfTt3tO/62AXUJiaQoamMDzUAc5EgNtVAi7fWb5uBM2gJhXHGbg==","signatures":[{"sig":"MEYCIQCP9eDU4uUG+VQmS5OGiiIlDlYeez6wiooVvpKiMhlRzQIhAMVYihoYTDtd/THC4bagcNPPFlawWzKRI6DIihVttaEN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116741,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyJeMCRA9TVsSAnZWagAAl9oP+gMFd+XsKBfE3/1QnEuY\npyBd//SIIjxK07E0hPq0MxozMBnfvNRKcWEhHKsRHbGyWwZcBIXevrd6nkRx\nCaRC5istib7oZWPjXK+IX34ekM275emzWcDffoqDzlEiMYf+ZsUiU+VJpeEC\ngdcZJyoJzCrJaATN5D39MiUlGsy+5Rbg7irZ1y36fjisUmcQ4Hqs3zN6BGYV\nWpeSHCp2x8wIdGMWTZpiOxJmob4pgzTDSJJf+wyzX0S4LmDpyulXVGmKj1Gi\nckOG8dnpG8pfDejYLwgfx+ay3zlCiSrSdaX87Sr/bxYHVhCBnPh4gLEd2EBw\nlQkeyESpeYUf4kmhhTU3Znng3XooTOwr5/Da9WXMMguIlMx1Lj+yknPdngnX\nce21XHDZguW7aZSK52CcWcS8NvuLvA87dsCZVKawHTl8TDy+ajxq6Q9JYUBz\nNT96USuyE/YfAOQI89k9R1IlgiAFBWmvtLQgC1+pyVQmSK1S3YiliYMK4RkB\nOFs/m3tcwkxl5z/ArhiUtb8wgIlo6VqvHBf8AQdcVrI4oA3U4c6bLUVCSyzA\nJwK1NlcWLovh+zky3PawGoMxwqM7dBcoN+gyVLlt0NrCVZTcc3JAlkiNY0ec\nVNuPxtaick1yUmE84cXiJBdq25rwKcGSQCl9XF7TUO74Yb8yFjoooIIIiv6V\nxVFo\r\n=yEtf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b924478761ff39031af8057ffc3bc58f747836d7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.38","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.103_1623758732152_0.37983627483454585","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.104-renovate-internal-patch-805888008e3e23b22c70ffbb3bb897e2fb004e86":{"name":"@balena/jellyfish-test-harness","version":"3.0.104-renovate-internal-patch-805888008e3e23b22c70ffbb3bb897e2fb004e86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.104-renovate-internal-patch-805888008e3e23b22c70ffbb3bb897e2fb004e86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b9a86e882424e42754d0f589f5adee2b1ecf4e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.104-renovate-internal-patch-805888008e3e23b22c70ffbb3bb897e2fb004e86.tgz","fileCount":24,"integrity":"sha512-BvlIrcOUL0jehblwxkD1dfkdEcB9jfOvgBpIjYIjKouYuxwakSuq/BwX4eewRd47beZ7miISw+QmNPlMVXyNWA==","signatures":[{"sig":"MEQCIHWZQSkMsRGdIsqAPXqfTOfWE86EAexzLFoh1yuLlZ6uAiAsZ3MseY7q1JfqKtLWqAoWYQKmPYNUJdpQgcQjez0obA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyT/nCRA9TVsSAnZWagAAjIcP/iAFoW9rkm098jKVIne2\nSmqn2NqV23FQ4GQvIXYfIXfeK2CiODlSV5nbn8NFk0bPCvKPEabN2Awtsqd7\n4ggQi/vsB/RhJWITip36WKYdnIv75lZuwZplVr1NIVqDVoPguftlcu7s4096\nzrFO1yaL54AcYGLCkwTq8Jnd624YRgPbMkbMd2FDX8rmyCA+6BlsQhXu4giu\nB21KSeJooY1Zx48eMALd2sTALiUa6H+5EjZxkvk06SQHZ3dGi+YD+sTnwLfU\np//m2dtg8cx8aDpKWS596CahYxSeRf1T2m8DvqP4IZtMb3wCo/f+Y2WCeUCg\nVZCIHuTTKVHWJM3m1EbLx8D7/FdRXzURWFF6WnRhX66w9jqXWe5MVSyWKWlR\nrBBlo2u/527YKE3kOo1UO6fgxXScaKLqGnvUAlp+y/1/avFipTl9D2nPDAcg\nvFohPrSfsYRW37Sp0VWAPiLVyla8l7ZJZ99FsgtKaels3scD2w3sMBNFokoE\n/vPIMhZAH05AuhcBbbRLsfdKSvCmEJGLndZl0J/U3/hudcywrFTofhsWWiHZ\nvs4sBYzS6PV0f6XmuA75ZRxZh+B6tueeGPzHVa7jF18/bmTywd6hTxB0V7X2\ni4mYMC2u2/XOp6KwgHwvqRLohYq9/hfBIf6bux7jrOxBI58nNpDeWconLuCS\n1JI2\r\n=9Lsr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"805888008e3e23b22c70ffbb3bb897e2fb004e86","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.39","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.104-renovate-internal-patch-805888008e3e23b22c70ffbb3bb897e2fb004e86_1623801830937_0.6026987116513196","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.104":{"name":"@balena/jellyfish-test-harness","version":"3.0.104","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.104","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56fe88bd090ee7a34a61f5a7356c2dce54872f51","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.104.tgz","fileCount":24,"integrity":"sha512-5xzSX+KsKho2Oz5W5iyFIW0G6R7Asvg8nb+0yexccRZJyhD0mPIIVJFRkWhkjMeO18mpbHTnKLTuhNfSkxPKXg==","signatures":[{"sig":"MEQCICdRsYnVMUql76EwcJu5IQcvG0QPzFhQr4ZXsKbGC0uGAiBs27S9XXS8u32W2ZdMVpt8W8Ws1xjKZWIJG+mEbUCIxA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgyUFYCRA9TVsSAnZWagAAWGEP/2htV2qfU3nWRw0txP66\nVNx225RQn0jUFgpPrCDwDXUCkKVJtelqtAmfWebJV0zoBRbujaDZN6fYPy1G\nvbNTSn6dgU0/0Wbn8at6YTsNOV4p+q4+oNGB0k88PWO2OeUn/aYVIb5EBucn\nNJLflYcPk2bTuEJx4Yupzs5K+LulX1YKq8h3eZzxehyV6RIT7GTlFcrCVr19\nqBRbtWmsXLIIm5BMhOTfZCtFiaaIm3DghTv18FmwXlvn5TJ3x+3nr96ect+n\nL3ya2oHge8TwelrEUbrDc3xixlcLCO9oqgmrmTXFF3358DT0K6HR0I68iVxD\nM06tmz7PD7NQD62wqGFJiYe+RxCIQOswoFY2xFVUQZPqSn9mx+AJPMqXiXWQ\nHJSl9u70WQHgcAuNqW0CxONu1ngajgw5gsOFjPgQvW7EYX41vCASaKV3PGfF\nAi/bikChUdXDEU3NzCLzANTrZatnxoO5egsegW6osG8v9HrW3oWpAiqLfZIG\nFRYh8+7gj+KSX0U8XSaW5YctzDAVDUQ4vx5yjJLmrWen/psLOLAxmALAm9Y0\ni+1/K/CN2EOvC30yO88o0hoTHuLzvromqY8LqleAJNowFDUbkJGz4MZmm1xt\nuFmpOIEhlPvWqXp+d58FI9EGmeGz/rjXxXZZpHZQivL5HUkXML7yEsB4xLps\nTnj7\r\n=rK6Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"90aaddbe9260cbdd18691d5744a1322378bfedf9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.39","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.104_1623802200577_0.6486235564852885","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.105-update-plugin-base-b85a99f565514aa08322e07bcb5e388af3510bfe":{"name":"@balena/jellyfish-test-harness","version":"3.0.105-update-plugin-base-b85a99f565514aa08322e07bcb5e388af3510bfe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.105-update-plugin-base-b85a99f565514aa08322e07bcb5e388af3510bfe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5cc71fc46b09c8e2d2b26368de3c8302eea6f6cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.105-update-plugin-base-b85a99f565514aa08322e07bcb5e388af3510bfe.tgz","fileCount":24,"integrity":"sha512-MzlK94xajGESusX2wZjNmbYEpZC3lCqDjj0svzRrRWJWUZy8ZIfYe7OxbbzhhirNSCaWpuXIHjMOXj8e+h/fZQ==","signatures":[{"sig":"MEUCIQDu0FJMzI929+2lXiVF8V82ofb0unbN/tVnKLejnwkvNwIgMM8Zk6H/NEhuG9sWmyQuOfK9EsCXUSiC/0n5OlSVNB4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgy/4CCRA9TVsSAnZWagAA1QoP/jV0bv1csJZ1fkgG+VEt\nUyeJzvI2IxnLodEkFps3PkZ3/jj9zVl++BmUtXMUGYEgNnVIPU0Jlyi5wJwU\n2o+k8wIJJU8LIkGMjZqrUOA6HHwGRNKj9WA5HH1+q3sQHbtTWHZl4dpJoSms\nma/xq5uREpp1d6VuerL/HEQcASPA35fbalqQJyAhwiE9Mi1nK4PhX4FO9qp/\nwpoG3lGpOz97MP4zXo2qjwH4vJVtvE69AFn3Y7FIFVcV5OCR2YhGWSzQNUbZ\nB4kDxnJ4DIUKvaUzOCJzOu7aSBsJ6IWzVxGR4GAjqbkXCYB2Clrd17j9oYO/\ndidRQIll38RnU4qnKMUDe7KWj9ktCmyGNKc32arpfTer8a2kUKe+whb6QX4m\nrxJ7VzAAohPB5Q+c7OLIsXX825w340HKlh96RGjxpOqXDLlkjkfVugF17kay\nmr3LT9T98/K6lqsl2fvKCUkcSkOhGbicDZQlCm3z+4yvTx5dtkO1IwFeCNKg\nkSypjonVfgB37Yj+ZP/yQm4IUPakuHw8aQvV7tzPnaN/m+EwrC8YZqwHmh1T\nB8nNmBrVmqJQ5H7D31xOHUE3QUd4hsEQubVraSRNMv2AxFaZ4svihXUhuwWH\nPxmQDrKyZqFZqMCIACbvgxnEulztYZNjkhnPefJCfFODQqc0hDpgF5eDBZhy\nJCHM\r\n=ymtx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b85a99f565514aa08322e07bcb5e388af3510bfe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.17","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.39","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"3.0.0-integration-types-badeb7294b8ef0853790c4cc9cb9c88d8764df86"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.105-update-plugin-base-b85a99f565514aa08322e07bcb5e388af3510bfe_1623981569778_0.6233306880102931","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.105-renovate-internal-patch-eb9228e6ef145b07731a1c3661ee6713a187851a":{"name":"@balena/jellyfish-test-harness","version":"3.0.105-renovate-internal-patch-eb9228e6ef145b07731a1c3661ee6713a187851a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.105-renovate-internal-patch-eb9228e6ef145b07731a1c3661ee6713a187851a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7ba63900ede0829b3dfe3cdffe8e53acac72baa4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.105-renovate-internal-patch-eb9228e6ef145b07731a1c3661ee6713a187851a.tgz","fileCount":24,"integrity":"sha512-cxwWYd/RKW/kkXHsrHXxQy4BhHCyCVGb6zCadppY/sxuRqBgNYRSbqjA9glszi8Y29t7LO/REH0xbZEq829Upg==","signatures":[{"sig":"MEYCIQCTaSUMPjvVFmUIvxW2xcBQM5jKaCGxeAJBrZpde4kUogIhAIW9RM4pSWidmRyQAzjfm6WxCGkOx+vCFRrPXfTEtZrt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116988,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzBBACRA9TVsSAnZWagAAWAUQAJgVoD/Z9pblBWm+fl1V\nZ7jQnE2JM6vQwbjVwHR8Oz06TNeXvbVU43eE7U9EvrKMU8lH7dY60wR4XwRl\nPZzJlPDLnaWTOl4e++6IPgZ5wSYwXHuT8+Ckf3ChYhFPFvmZnRhIjqvH9Wgg\nUtd8glqIQ6BEN9mfGV7q3hh+aAz9hOXCanzumELhDSmzGjUUdfyLkvVPhJ1E\nzQnWPmdFEdj278h188yKvvtDfdnRW35Rhn1EUmHnFKqFxmTojZMWv42rfZbM\nx2T6m+nJ4Dgx2DZ8MoO39wY/xCM32RBq6BDODdw0QD8Th7sPplQvvfoXdHgr\nxeccBW2bBBT/G6QsVKZAiu4B9EBLn+NHK0SLmf+yR85+6IaYh6+nErzCThPF\n0uqp7YGvunnXtGRPXvHW76he8WuGu02mTB/x9U9jUn++Xr5aUFgQYHpHhj/i\nJ9NeWwuC+RePY2Gp/bUM+66spiDlOl97E6AykzS75SaoEnZMMpv1zMcXXezs\nGF0T/mJ3MKOvlLX4BShVx4JbrZvJZyNjlDm6XGbkw/gXV70j8iKBEYxz/AWP\ni+Yxfa3zmLy5sAD2Ky6pVxCb2Vfm16xV7O4NjlbwI94zQRfXLXd2EEe+4H1b\nTKie2fcqgbsmnlxfaNqnhZGTRpv4iaxFq422aPwYOyjnTc45hs5a1uWKV7U9\nbOlJ\r\n=TmFj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eb9228e6ef145b07731a1c3661ee6713a187851a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.19","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.40","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.105-renovate-internal-patch-eb9228e6ef145b07731a1c3661ee6713a187851a_1623986240396_0.20506907828874388","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.105":{"name":"@balena/jellyfish-test-harness","version":"3.0.105","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.105","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4ffd5ab489a1eb2f1019bf2832c36c3cd5ee6f39","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.105.tgz","fileCount":24,"integrity":"sha512-v6UtmyMFO0H5CNQrBnqhhOFECX/7AtDpIXJmvHWmJue0OS1lKgiLea/t2+3vgPRlYi6uL4axvSu/hOosRoq5yQ==","signatures":[{"sig":"MEYCIQDggTwQPe2lO7k6KgjYARqapSaS6vQLjeqfvnvq+mKlBwIhAKEh02LkrH+6I+bnwMfGBjB2YNSIVWK4HsCISVmt/7yY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":116923,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzBEICRA9TVsSAnZWagAAesAP/2O56UjOmw25aKOt2lzj\nf2baTVfCCUjn7tKiUaUKp9Hj32L37Qehkv5eiYtxpyClgwbUKikHq4HsdTzr\nGmha9G5/KxGg+0cCL7/BzwUIELPHLrrqFwkDCdvzeFz++Zx4M3okmPnKIMBV\n+/+Am6/j+4CZITreK25YkuK5pi0ylJEmY3ya/LmU/H4Qzo7HME3chp0ZD8Aw\nfHHsYboJ6KTy9hgEL732lz4GnsAQPzq3khf5i93bR5CnU++Lo1KI+VLtddDK\noJRqIc02DjtQk/RkWAZoCNz5ddIf28nl7YCQB7WCMKWMcjq/1mraA7C4BHC6\ndbHkVcExL9tW/uUgG05PyN5SsmBpwfU7nyg5KWe9TwIRrrFfHKbQtNHPpYNx\nNC+ZQ0/fgm9mDh1Hpb4yhDn+Ly0nDDUt1va/qu5JMUvhQDGZtfG2Ipx4vrzw\nrMUHgtrHc0r7KYUG1E5z9fQ3escOKcBSPhwc95z0Fi8r/2fxj7LFupOiIJfj\np+yfgdkMaBdZjl8yDTP1jwEDrwk5AYWPVYGlgCnlBh6q4h9VBhdqAJPq2XvR\n2viuNv8MKqnRRB6rhBjJUFnhWpeUDTYxBFNMQvBiFeiEgykgZpj3nhrXQV1r\nm/kKavJl9wV/vdG8FhYEKdrN+mQI7ckKlqIogaGi8CoBTvUz68G4uvt6JMZH\nrbZS\r\n=aM2q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bcc1d63896bcbc63a4b10635c5bc5b20936d62bd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.1.19","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.40","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.105_1623986440314_0.7730948566509073","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.106-renovate-balena-jellyfish-core-3-x-892622d062fe1bda8fbb34c84c51fb592cb49f5a":{"name":"@balena/jellyfish-test-harness","version":"3.0.106-renovate-balena-jellyfish-core-3-x-892622d062fe1bda8fbb34c84c51fb592cb49f5a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.106-renovate-balena-jellyfish-core-3-x-892622d062fe1bda8fbb34c84c51fb592cb49f5a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e206c2724ba0bb0dcc6aaac14294a5c1c68c070b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.106-renovate-balena-jellyfish-core-3-x-892622d062fe1bda8fbb34c84c51fb592cb49f5a.tgz","fileCount":24,"integrity":"sha512-0t27Ykd0GiQQKWpcbX/F4h5pBBTZHXF+9LQfJTPdrXqh46rQGIG3ML/BWShCAD1HjUH1dRoxrSK5+4q92fpEOg==","signatures":[{"sig":"MEQCIEHGK2Ykdje5aR2iA28NeWeNuL310jZFzZCIq3AAyHRVAiBRxiKuRDhDOGjfxXv786CnSD/eAoolc/Yjtlswd6AI5A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzNy6CRA9TVsSAnZWagAAEB8QAJHEqsJXO3mn3/gpgD3c\nb1p8RchLVEhEqILA7Ijmo0ICsuJ1KdnGK/ViWj+lUk3pwzRorA/1VqPFXzJz\nWEl+hByfIJUw/Ea5TE83r3A60O1WtQw7A7eGQKYLOq6ExOb6XJE8JWYB7YsH\nGgpOJN8uCmKSGwfpLZq8PDr4L2A4caqCQ/HFKthwh2mvBu6dTFLJo06cn3+G\nO0pg44PtctGx5Otm1kVo9RftwBlGUGnDnVQLCuutDz+T2SNX5JHQ9uR1nKjM\nxpfCCW3KFQZA6jkPf89FrtMd3MrTOa3E91BzMtbGQqQ9pOL7kDNhZkTeNK56\njHnC4AnXLKygmBSx2oMz1reMshVa1exCZ1vdPySZOBRYgrijWfqalhrv8Zc0\nkn1OEIsFk3RdtOoF7ROi2nUqtKk5Zc2dTvgzvWZuVDTK6+JVtTPrY5+YmshC\nVs7918Zi44r/rartITtOzMCmULw4nAh7P/n1FBBD+9OZBzAeJltEeDoh+JyT\nONg3911M9Hdp+V7P31Kc9RXIlEfRH6YkO97a2WaT/73HBM9d+mn9j2iGAk8f\nGrGz9BEbiMP2GYw3Oqhkp0i9/GqrctMPzYEGDL56jE0y5uL0VvnAMLMc6Q8O\n+7ElTru8LzsfDs9Ea0khKMi5YPe8OyUzoMCAY0CW4jqUkIvutGuYCEjnlY2P\nSq+d\r\n=hsmY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"892622d062fe1bda8fbb34c84c51fb592cb49f5a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.40","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.106-renovate-balena-jellyfish-core-3-x-892622d062fe1bda8fbb34c84c51fb592cb49f5a_1624038586135_0.209248238317294","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.106":{"name":"@balena/jellyfish-test-harness","version":"3.0.106","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.106","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"af34b3aa2341a53fbb7d36df147fe749f86e27ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.106.tgz","fileCount":24,"integrity":"sha512-KH16RuowISuVkwO0OPwk5tdPQnSHjqPvclxwK14tt2bY9/O7ZHoM4geW6zRgM7Bu88HcgBi/sdnCTqEajV/y7w==","signatures":[{"sig":"MEUCIQCXH63bXXnniH6fcVvRqT1XBEe1To/D2RsdQdcZuepTWgIgCe4qqKA4sRBVWjwaFLafyXumWTdkTjlM1mToSN0hxvU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117026,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzN1wCRA9TVsSAnZWagAAu7gP/RRO8dfoUCRYkZp08QFa\nyxd1UaIjD03/y5DtCSES6fb1E/X1wdt+dihSAXbn9bvE12d1ZMiGEMnCQB5H\n1TY2ARgBtQkqFcSTeTbPMoYpGH1cJKr5LM/Dm5PUSVySjNc5wVLjTfB86hJg\nHvXF/OOkKUEPwuZb3TALLaP2/hbhZmRSdrst/Niu5cgc6Su+WNxYmF6psjrJ\nq7/4jbd2cgOxKIbax0bpuBHM1bsCSy/6Yw4JDSbNunXFwyuu90XP6+GJxh1N\n2usspBjxSdrvGMILFSrXQiMj5S4qewS0tUWuljYrXKPOhSxwDbGiQD67/YO9\n8AkE7SzAGzIy78b87WRf2xy7fkcvRmGm1z2+VmTmgtnaBDmJ0mVfpr6kQAJI\ndMHDejFGeV2TLthUlDbxJmzisspxrp9TMAtFJlBPP2vBYHNuR1xpHHnyXFmx\nfy/1dwWMQSHeLWSvtDhPWnUiohRa6Z/IKb9GtI7FsnrrxOxn4HxCiO0gqnyc\neRbjax0BEkCyq11hOWc4gI1DN9vtv2ONJn4d/chAjCGvwlsiXA5UAiAvlLRz\nMiBnQbIkn0KJw0RH1uZAXgidA6CPAfNQ1MkIra1ijrffnTZ6pSCfej9ohBHg\n/JTVyc9aopgjPTHEAI7tJBgacgpek+cv+lEZ1+8xZmDvzjyGYE/VuTgCQSLU\nGii5\r\n=DdE+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"11c22e3ef449cd61ca659312732851e690b516a5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.40","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.154"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.9","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.106_1624038767868_0.8073803071142132","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.107-renovate-internal-patch-bcc7ac5095978734bb64744230ef41df61a2c30e":{"name":"@balena/jellyfish-test-harness","version":"3.0.107-renovate-internal-patch-bcc7ac5095978734bb64744230ef41df61a2c30e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.107-renovate-internal-patch-bcc7ac5095978734bb64744230ef41df61a2c30e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5fc3332cd7b9764c4d672751ab194d85b6b8d1e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.107-renovate-internal-patch-bcc7ac5095978734bb64744230ef41df61a2c30e.tgz","fileCount":24,"integrity":"sha512-vP/IzLFE6w967EIrXbw/ptuMg2ENwAx3WBfKr5iJhpz4mzMBcH6bpZbKl46MLCT48KcA5H+TBYxRmvkp87/Ksg==","signatures":[{"sig":"MEUCIQCFekfxzJCcPv4NiFCMwePis84KbeCiMpq0m8iNT/phIQIgSMdFxI5C9UvWOw2OIy3pTzRC+sznJm4Fjid/U/pwNM0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzT3lCRA9TVsSAnZWagAA6HoP/jjuzfcFYvOBJK3jI76m\n2G0Atg19Gkl981K9i4UGqVEDViZI9Y+mRk6sLDFfWxmIGfdVDuVL+a601Usl\nGvKfQ1fbaAYqZ0eYhkgm9hX2eGIzrSsmPe+r7pbdRG0BnKX5svoa6UPt5z7O\nqvyWeq/jT88IeNBqXy2bS7xrz8uX8XKwn++UJIAjEkqoIjFwI+brtc29PipI\nv6m1wpOeWu62rg1ns+ftMQUZF5/C/hSZ6qK7XaFxxsL6e2aTs7HB5+b0zQLu\nQWWHn8Y92qdlUBFi4bvx6lNoy5WBcDDhjIlqkC4z62BK2dEJYgzWCaLDddA2\nqrL8PVIdmYB9jY+rWrKo8re1PS1Xg+fMbcecHY/dzxM3M6cSruKqjiuyryVE\nJdiNTA+HEidY2coYZsjkuQSBvC/dSPrgYarwicleO0DAWzzoQ7EVMHVrAxGx\nidOobgeRmZi0L3WpnsJwrFW2lngVekc3aavq7nD0K1osuCQ6nvFsLLW70OHE\nqAOCzgtn/0a2N4wxRTAcYLYu4Q1p9wfLmCIsc4oD9KMjQ/H1RFyCHo9JoVog\nMXiVcFJQiCyx+zDHq0le23KawJ/JhO9emn8e/8hgAzrJ5mKgJdLlwIBmnbXa\nPS7EIbmp+9eGsZIvZG1HnZO2ZI3mvapYaxaNdqwzGJ35z63hiPldH5D9euDr\nj/+C\r\n=fqfk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bcc7ac5095978734bb64744230ef41df61a2c30e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.107-renovate-internal-patch-bcc7ac5095978734bb64744230ef41df61a2c30e_1624063460596_0.004666663834189233","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.107":{"name":"@balena/jellyfish-test-harness","version":"3.0.107","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.107","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e7de570b863c8832d26c124a9fcc7747eeca53b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.107.tgz","fileCount":24,"integrity":"sha512-coA4RNNMY7Yht1+75LMxEzeZ+WZOwd+FL116GRi4aCLTq47HdgPSWwGaSJCAMRsfkj7hMDT1m1PFQ22sFQVWCg==","signatures":[{"sig":"MEUCIQCcnAB035C+AfUPm+VhxBwKERb6pUIgrDqGuFV61/nXXwIgA6irk6WvhZJnFB6rwkux7bKTkzDK1xPjIg+RUWUtDC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzT7CCRA9TVsSAnZWagAAxlsP/iSl2bzZzH4vPm2Juvpu\nV/wwCGXeMdhSCGiyiZjKc585+iX17SuJH2Xib6U/iN2YhqLj/54QIVRLYuA9\n1UCiFjcT070SMTR3VGxyOCqIWFz+stVxBuGelZpl2itVeelRT1omAh+OY7Ns\nUA4ODcq8e8mJHh5663waAmT4OlJVItbNn2xR56yDi+x4TsKm2lvxg9sIpBpo\nxJp8RJdS0vVAeITcfSRmfMW6BU7DJWFfZtTnLfepfTEqGZvOrw/FDS7tb0Du\n9Bxo99BErAKK+LusJXGa8YeenUtW4udKdm/87jNrq06UwR++jLeFbdU08T9D\n/WWWf7s3P1Lm876ghzwvHqaCz3MdFNwRoR926Iq9Io7Hy8KvW1OHeM+tzAPv\nWAi495qEjtRCWBkbNxFRJnTeeUWTQy0lpJQaFWEFns4XexW695rKzYxAPsLy\ndnJQYl/c14tkUiyifyYmotsB+b1VbwsHxn7i9hHQ2iVB67p2c2uXl4xNibjy\nXsGYXHrdttXGWTVMkZ2W3rRosYLc5Xkd3NCee4PYRoldev8lmIj5dNAW7WAF\nZDQJrEVkvpPAMbL6mmkH3uJTOx0+eL/zLRgWtKWB11JxuqsqaJJ7y/w9WefH\ngX+Z5FgXKTharE85xKmS9Eb1knRG1tBXPcYeTcTiCwV9s9Aq8TwR/sf5lpNQ\nPTuV\r\n=JVYr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"45fa2db60b6be6511990a9e1fd7e38be9b387d38","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.107_1624063682039_0.193125113982209","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.108-renovate-external-non-major-10dac633d41d68733ce6ff5df0dcd97e403fbf3d":{"name":"@balena/jellyfish-test-harness","version":"3.0.108-renovate-external-non-major-10dac633d41d68733ce6ff5df0dcd97e403fbf3d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.108-renovate-external-non-major-10dac633d41d68733ce6ff5df0dcd97e403fbf3d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e09eb3b751a531c869febf8a2010d48b9525af85","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.108-renovate-external-non-major-10dac633d41d68733ce6ff5df0dcd97e403fbf3d.tgz","fileCount":24,"integrity":"sha512-mkYI9j1BwEpq2xT5UO6fh1nXL/kTrOHH06nJR93+sQNRx11UqE6bM2PgYHHCjs96zMzJZRwkkkJ7CZ6zouQ8ug==","signatures":[{"sig":"MEUCIAcQq2LZLM9B2x10FtSZZvrYLABPuMHwtK56+4iqvfMZAiEA6s4q0+5mt9PgvVYtwQX3+9E2fdBmNbI09Da7VaavIPI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117249,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzT+uCRA9TVsSAnZWagAANJEP+gKeIqNOLC/K2EeLbwmA\n7qE4pmH/CYyz+H+NGkjtaiK18vJ+wR/j0OfT9ywUqkz/MFYEo7JFT7SGhq1p\nqpXOWn6zNOiABzIbfXtTh24+XU9JPRQCfAaE+/PvG92sL9Uv35l+ZROzL6TF\naiR7P9yo8j59JR4+xxEJi5gghO3b8TKziZufQBk6njNXXM7b9nJs0rVVzoZJ\n6ZGrChMGA28QWhOVU4hoCbep8S+julkG0fpddwidRWx6jyd1aZL9oQAvfyCs\njludqxVcsBoc0noqU3giRR3bhWaw3kK2EzSqp1j6krqFVuvu4sdVz8Dx4wkA\nDps6t0sdK2J2nDwuwYcie6vYTj1lLE54/KJ7bb17h1UrnNAfQ/nVuCL8Xs7J\nC5jRmlC4GEbalXxrGUtTRwENzINwcAGx1Lkx6rSrkmCPKSrDhyf3Heo3xidn\nHWFqC7lOm5+7OrRJyesjJvVrS1tKvOEVZACaesSdHDw8uHIc5M0awc1minVS\nBJtfqvWj6Yb7qKBaEo/7A27axvQ2wNNl7ELr86ac3Gcu2jQfKBsKnChdX2b9\nUslzAkKOH4qqP2Cg/VxBJTS52DaadGc1cEkrQxDAasHd9UuJg1Y6C6laVI5J\nm9WJg53iMUaU93U1uIfRw8WQDCYGoc/Btj/c1gnDfYahkb4ZxvdypNrLLCGR\n3Dbb\r\n=K5Dp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"10dac633d41d68733ce6ff5df0dcd97e403fbf3d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.108-renovate-external-non-major-10dac633d41d68733ce6ff5df0dcd97e403fbf3d_1624063918419_0.6487425842534218","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.108-renovate-internal-patch-af03d2880a412032d1c41b255d6ad0576f18ce86":{"name":"@balena/jellyfish-test-harness","version":"3.0.108-renovate-internal-patch-af03d2880a412032d1c41b255d6ad0576f18ce86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.108-renovate-internal-patch-af03d2880a412032d1c41b255d6ad0576f18ce86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dd6d27c05b31b3e37dbe61bc495bc91d74fed167","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.108-renovate-internal-patch-af03d2880a412032d1c41b255d6ad0576f18ce86.tgz","fileCount":24,"integrity":"sha512-1+Lkr1W9h/odH038/+jVwU/TOfZ+/TjNb9GVRpnXyFLAFdRGgSXlxNNxBmEeANpoyeDiQCVMwz/Z37T+XaMOSg==","signatures":[{"sig":"MEUCIDMjbW6kHfnGKwqEMGz45w4DMtGbl5PYwfYuov2t7Tu6AiEApXvoI3uZGZZFa49D2AfELeZ+Phlfr1HLWyjldvZT6rA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzUEGCRA9TVsSAnZWagAAPJsQAJ3CUzQEBt+DYNQRCKvJ\nY5hpJanlUdNEQH0bYuIcNyw95TmBIw4tBOP6/yMWdvGSMUtTciQFSUtpLiXU\np2n3QO9JcwNCI5CXxt9su8pKsaTMg0ZEQHxDMrqRjV7bTHXw3z9qZYnoenCl\n0z0HkT/s96IgExHQFmm80XC4unzs9HY6V7VECekiqPkauryf1jnVkh4tyukc\nImMjS0SSnez8isI+GKABi06NzHmc9olcNX8PKVpFtNN8wkJd4Zu18d1WQBL3\n6zAmiAg0NY9eRh7UHtMGNYB2B9oOSlH1KSsMb/bOr8XsEZ0e0jwikK4lxOuU\n2NahhZqpc5y18OXmc+d6xLFv19bt8NPGEnC3BD1n/TZVYRT6kdMLOGs+fG8v\nRkf8ik1/fdlKXYOOOGHsAWaIh/J0j74l5TAoQ7YX5rLE2HFzsTxR7LxT+igE\nc3qHM4HkK/dXdgXlaiDf/KlqRsRkAUNqfwF1TiJDDG1aVOFCQVlEd68dp7rb\nzfsLOGYMests02gXod6GEdSek94AeRcoVEhnWKZIGVcxIOOXULZQUqO3JKTx\nE7V+GHqvSYbREq7jzCzxXEg2LFSLsyfM4L+xajO01H9r/ab6EkzR+uH8iIpR\nUEEtH5DbMWiDtX1dJUH141ZAvbhqwNPixItHurdwEOUm3KNkG4weqDUCOla+\nsMOZ\r\n=Fp5W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"af03d2880a412032d1c41b255d6ad0576f18ce86","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.161","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.20.36","depcheck":"^1.4.1","typescript":"^4.3.2","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.108-renovate-internal-patch-af03d2880a412032d1c41b255d6ad0576f18ce86_1624064261340_0.6800425833819244","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.108":{"name":"@balena/jellyfish-test-harness","version":"3.0.108","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.108","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"55f462301fce8033e9137ed0871cadff81544044","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.108.tgz","fileCount":24,"integrity":"sha512-D6NOUdnF+dyi4Q8nStbWW8wMwwtefnisEj9phDza8CDRg9nOxNW2pchcxDzI9LrOFUpoXUly6QXMHPqdJuggjA==","signatures":[{"sig":"MEUCIQC8Hy4c5E3xULcSUQnhu7EphBBO9ptNSQYK2M4vKAvZlgIgbSxh9YOLxfrnZqEKKPQzNwWcVgU78BhWm0N8aqm18X4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117180,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzUGKCRA9TVsSAnZWagAAtK8P/3MpmyX5Q8skCTbHAOL4\nxefHpH0AdGzTq3nnmAQa9mmDK3SmMAbkts/SAwBCSoPxOmaFSWmmOkFKE7gw\n/lGrMlCJ7Ox5IkPt3ZktUaPs52N1pVn7b+2nr3naz8N9BykoaPEKJDKnB95J\nJPRK7gE/FeOu/qlfn2skGUYphQFhT3B/IeVhRiSxlAouQID4GoAbBf/g6Rf/\nltTLwSDraLUGA1/YGqVSwxRR0uBI/4FDzPYRwL2LnCXESROMflCQSxNIZddb\nQQ6c3TZFNnydG4usCcXRZlnqH5tCtx/7kIRA40TFYuVsAgX+BrSvKXyeHHVg\nfoUdYwQM4/gaOfgrX5jdvoUyaLj0apVe1o3crWdPJIHLv8CwdjWjkrJOgKiu\ngo55iuStTWm3vo/SumyrYzHYfapjvUpB1HPwbWc4pmuV1r0IDTjjkUn5QUeW\n63KaheXrSJv2N6ysN0DdU6ZRhh5rG3GxtWopnzB9Buq0AXtuNhrtKL1p291V\n7ZuPAjTGzWh5ojnRkK06LZMdlyYVKeIgiWtuUgjf9f2TZipCAakLr4PfaJpz\nCbCmoyoAt6kCv/G+X2d7bxOAkN2w6glzf1V9I9gNHbZ6qrSJSIv99EGDgTaA\n9Pfm+xFI9UY6VeGT1dPAFapIQwvUFJc7K2twz9jZLkL69fJGKUQ/UfaULX1E\nP978\r\n=8zkK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"39dc4ea694f398085f6f43d2014d78bf0e5b8c22","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.0","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.160","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.108_1624064393948_0.8596220546727307","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.109-renovate-internal-patch-7a42a8474610227bbad1498d5151b8941fd4c89b":{"name":"@balena/jellyfish-test-harness","version":"3.0.109-renovate-internal-patch-7a42a8474610227bbad1498d5151b8941fd4c89b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.109-renovate-internal-patch-7a42a8474610227bbad1498d5151b8941fd4c89b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b8b52701249d642540a40e80daae71413d24d253","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.109-renovate-internal-patch-7a42a8474610227bbad1498d5151b8941fd4c89b.tgz","fileCount":24,"integrity":"sha512-yhOL7GpmJ5Qh41vkSHT5u5/ieRmaMT24UXUBwbu26KQ3PiQSTP4LC4MMqywX6B9uZTbjqDAhtgbF91jIPfTzhQ==","signatures":[{"sig":"MEUCICzdI/hPpyw3gBOu99gPEI33+CwsCUbpxTV00H8092BUAiEA0FdLKJizy3o/3NoNYXoskzXsqRKn3uczXq0iOm/whcc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117320,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzUQuCRA9TVsSAnZWagAAFBwP/io8/VVPr23bXSKdlM2s\nY8h+U/SldeluJyHZb4MhGoHZxS08/mI651n0SV9F4JIz/TD5OPyhm+2bBS1j\ncjboWk++xBRNfS16f1d5iv1NQX/drYMF1HETYlE6Fab31qtRuNf0LOvtVC3h\n514lHc48vOXtJzzy9xaWI1pYYqYQWUmEJZ4jGmI8kpxFhRLQ9pw+Kmu0bDrU\ngSPMykpO2KF0YxnvLDOeJgQzUOFJzgpxjYZBRQqASlsKXZbVWMV3Q+xK4AWD\nkOtszw/nxpsWsiGLxrk7Iy8R/W4vwEpYN2GuoM71m3RakxGVdXdUDAWD2Z6K\nm4nPeImTc7qzgelUVk3v4l7nJeknIB2mXEAVzu3QznuCI0F4q/2GHvquiLEc\nW2VQNMaoBiT5H1fZ5PPsVBnxxaa6hDKE67qVYBNzZp5CnBwctx/ZVXxcgb8v\nTkIY916yOVasujTfu7CS1n8RNpV28ovqOmHQ6UAO4a++p6McWytvDTP3yxj+\nEYa1QlTRU5hQms7LHv34QCCzcCwtM5ij8MlFNGUAj2hFu1DXSXpE9Zk4HIsf\nY8fCw2pqPuHCurHaykNh+vkobGK/ORnvQkg1cwMwbXdGG+sFpkS/BDwbnwJX\nB2YWa0iyRhIBjBDyCBbI7M5zDoFE0zXqhGkolvUCLk4SPuahPiM/ISXsyoRY\nYqto\r\n=SpvL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7a42a8474610227bbad1498d5151b8941fd4c89b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.1","@balena/jellyfish-sync":"^6.0.240","@balena/jellyfish-queue":"^1.0.161","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.109-renovate-internal-patch-7a42a8474610227bbad1498d5151b8941fd4c89b_1624065069556_0.5160014519054126","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.109-renovate-internal-patch-29962aec20e0191cc0854092643d484c5da3ae25":{"name":"@balena/jellyfish-test-harness","version":"3.0.109-renovate-internal-patch-29962aec20e0191cc0854092643d484c5da3ae25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.109-renovate-internal-patch-29962aec20e0191cc0854092643d484c5da3ae25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1fb7fb70f59f93d41ad2d4f91536bc8cd12c4170","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.109-renovate-internal-patch-29962aec20e0191cc0854092643d484c5da3ae25.tgz","fileCount":24,"integrity":"sha512-VN2Pg/aBIXVx8xzCQDzkmhzmzFodT/yqy0NUzDo8jQd075QD2hiprFwfZjL7DPzvo6V1IEMc4sLtNrYmt7NU2g==","signatures":[{"sig":"MEUCIQCEgZuvd0OCkrP1YIZ0sm9CfOhg5y+jmDVFtjFI/v9mGwIgFqeNt94tjfaYUgVtiqzMrRuKeGGMs2jIQzNUAUacSw0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117320,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzUWoCRA9TVsSAnZWagAA9HMP/2eGIFGq7kjRT3Gk0e+l\nifh7V74uYsuhcW+d0s/noKUw7FGD45b7TwocJ0HqzDfXq5GtoftgufdAm/TJ\nYd3N2GPLnKGgYrp9ZlFC3Oo4biyos3ziSlV0sv+C/v5/jBSqLXoJIyeKwhzH\nTv84iF/50WzIlMZqVU8vp+5N9IZBfm5AWyzZhC/2/vAbhcCuC77wXnZI5zSN\nQOSKn7tohmSYgmllhld2YuunqMf7yr0lkAF5ZnnTZy/DRzmmOiy7dpri3uZc\nPxnU4QGJrM2htP+OO4WT3n2XbHJ6Uk06lNrlPf79egx5MGtvUgD/T+PVavCW\nYqzl+hOUwyqrOpLRhkreexuLgRg2g1/Qde6tljLQg59IB3oCyRXXZRHuQpPt\nQf0tD53JJjp9rvKNNaSNExHuQLGwM9oTkrcea01N/lkfgLCQWHrjgmdePSBW\nmLPjdIU1CJ6dKmeC6x6opeh81WMBVMEz4PLRlpC8Wsk1Tu2uHKz6hXV0SMxu\nNNADX/mSblmJT/GlbmocVK3hNgd9IPYXzC81SVvHZJdCrXSaqt+DtCMTUdVV\nyErG8pbSh4CjcH8YmVaFr9i60MXGx1qObqSR3iVOPVX2USo2slEnRhfSC2rG\nDCiwxxFClWYXoTtLrycVb2m1g3HeFpNWNg0/hup5EYcvNkM0wqK+6xvrJ3Rr\n4HGJ\r\n=xGM3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"29962aec20e0191cc0854092643d484c5da3ae25","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.1","@balena/jellyfish-sync":"^6.0.241","@balena/jellyfish-queue":"^1.0.162","@balena/jellyfish-worker":"^5.0.41","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.155"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.109-renovate-internal-patch-29962aec20e0191cc0854092643d484c5da3ae25_1624065447711_0.30646544021816013","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.109-renovate-internal-patch-ea6529669375ff518447ea46eafaa14ec086827a":{"name":"@balena/jellyfish-test-harness","version":"3.0.109-renovate-internal-patch-ea6529669375ff518447ea46eafaa14ec086827a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.109-renovate-internal-patch-ea6529669375ff518447ea46eafaa14ec086827a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f9b8e69e3735aa4616b9e118b30832cb80f9a886","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.109-renovate-internal-patch-ea6529669375ff518447ea46eafaa14ec086827a.tgz","fileCount":24,"integrity":"sha512-D7KSdjGPm4/SRYesDrNBLB5QvntnTadQ7hCcl9FPfVW1JJhNH0pSEZ9UPvFHBUQFb+Lcq5TwCahwFY0h31vd+w==","signatures":[{"sig":"MEQCIHG9WGzRvajhNvhbnH/M255/h/I5CAmphpdCgqQgcWE1AiB6WchT2Undg7FpSN6ojo5f3o9c9Vjh8AU7xtj5F3I4pw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117320,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzVr0CRA9TVsSAnZWagAAc6MP/0bJfkHFXD1qseq9B7gj\nhTdr3fFODawU84QNr9Gogm0Bw7sRtqh3QLcT+ftbiRJy40chXbHr9j9haCFC\nQ5VzqlYIbo2krOBrLn7Ag/MHeuIr/U0iGGPbHmn+foJtOmID81ZFjWUQdPgL\n4hoJHEcWP34brsAWjMyXda9dz2TKQ12BFsGBlMUJWk3xItufxYTmrpRZ5mbH\nzPC94l2BrhU/Whkfs+rGjvJOE4L+SDHHEJ0UQkN4ZxKbFefHnxoAPeLIVXWu\nDQltPlMS8OrEdZWUBUGPYcMxcsuaIDYlqzdbnnZtmb47qpf0ZljiYohLLIDt\nLClUG6+Wv0VCI8IZzSgy1SpvPVPZ2+cfYvIyzhTsdIphNPabmqbU2vJZADh8\nwucSv/TK6FGhTqs/WrmVFLhIny7rgzMb2RDP/yd/4fgayfniwqGe425XBO+d\nFLyHKqbAEJrisUR+pZJwb6Z2Xm5NlyCvMMxQFrd4XrH1fl+QOgwqibcvpeWe\nymAkNbR0bZnmoeTIa/lOGTfdBLwgBnwCkSNeTZKCei/tGfUADRh1zSorLMKU\nJqAnAuHDgboVg9NPFrkk4/jcVuhwNY13S8mIAOwgE1ufT4sZeQzuQqJ0txvR\niB4NC/IWhnHWF2bHpvzvj8+NgBs35KAboZSQViO82/A6uHi+OtXkLVNvtrEq\nUcSz\r\n=dnGB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ea6529669375ff518447ea46eafaa14ec086827a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.2","@balena/jellyfish-sync":"^6.0.241","@balena/jellyfish-queue":"^1.0.163","@balena/jellyfish-worker":"^5.0.42","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.109-renovate-internal-patch-ea6529669375ff518447ea46eafaa14ec086827a_1624070899733_0.08079354924993387","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.109":{"name":"@balena/jellyfish-test-harness","version":"3.0.109","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.109","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0650345ee1074c74de75babb7cdead53d78430b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.109.tgz","fileCount":24,"integrity":"sha512-kU5nFvWOEYZQjw0IkNoWDClGIy/PHxnL/8XMd6J4PKzYh5GdUM3mbO6JidcKU18yYKmcArBtkTf5myx6tzl8GQ==","signatures":[{"sig":"MEQCIEpVbRbiq86PX0HR9P64aKckaxK5q6OjycUo6BiQeAcQAiBGCOBLn04nllDMuiE0D2FjH/cwepRSX7yztgeHqpCrtA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117255,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzVvaCRA9TVsSAnZWagAAHTcP/1fxm8YkNdr0dNtQ3V6v\nUPVLh34vRRPiObotLRhx1W4MJRO0sVhdhbZIPdrYhh0Ket8KXsw5rtb77HQZ\nGHEOmGeQ1cLdv6j8iWdyVKfzEvWvvK8M/2kHrSKIXG8LFlCbxnAdJ+CgyT0v\n4zLf7HnafQ5QuOHBiOd2BFfabmrnR0OFoOhf5Wz5r6d91vAk5a4jPiFTLjhr\nXMIt8QJYTfr1aoZ2t55TWiOkFAhUaRXy3jDdPhreRtcmRyq6Exuu/JIdGOSb\ni9K2TiHdqYQI/MX4oPdTx4thACmyDZ8bDlK45cfu6M+hYYIix5vPEzmEROl+\nP8KSI1qOXI7otp406eUO8y87nGRhqGFVjqyya+n3lJXyHujrdWmKfpXT3IDh\nxgyKt/rM8dxuHW2qLZjUPksZ2WM4ysOgNemD0lPiIAMjPC6wzMVpkoonoIOz\nX9/o8gqT7pww5Jmu/JMDJNBiBvnxHKHfCMF200oywU4dy/mBaiDylwSASdy1\nu62M7kFRRn3BCCnhgtO8iYTxQDziHQyQBVkjZcl4ibgxLajdddRd2hHXc4Lr\neApXCX37AY4bVRLlYjfD9QR83r/ngcGjmt+YQAnXON16Vs2GUhesPOGwY8NN\np4OegCvf0jZvanQ2lWZU9mu74guRMEuGBLeIadDCNaRUDYrAIrv3iIIiUDo8\n0uQN\r\n=52mn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3d71655c0d068037495127949e1c4d35076ad07a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.2","@balena/jellyfish-sync":"^6.0.241","@balena/jellyfish-queue":"^1.0.163","@balena/jellyfish-worker":"^5.0.42","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.109_1624071129819_0.15217526245857793","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.110-renovate-internal-patch-fb907b494f4c26b900cd4abb39171f711c273665":{"name":"@balena/jellyfish-test-harness","version":"3.0.110-renovate-internal-patch-fb907b494f4c26b900cd4abb39171f711c273665","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.110-renovate-internal-patch-fb907b494f4c26b900cd4abb39171f711c273665","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad33530fccfcb3cf863058f8c824aae1a9643f57","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.110-renovate-internal-patch-fb907b494f4c26b900cd4abb39171f711c273665.tgz","fileCount":24,"integrity":"sha512-3SWSZ8IcJyUxJmpd54dev16WMO6aIPt5AnVpbRZVpXFmL30lexGCuRZao5MxRjc2+CIwhhDYlB7y1V7dPxuWVQ==","signatures":[{"sig":"MEYCIQDeagG2J+rkKuPcwmAHv2590ngr6b7RmzZlqYIVcPcLNgIhAJuVB81O3LHCDO/OEBuR5AusEe8zrEzy0J7FoHI+d8Fo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117395,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzWjxCRA9TVsSAnZWagAAYCAP/3NMgRoWWa+3BVSHtZzC\ntLpCz8U7zFl8mRq5az6XhNtA4B/qBYBPUtP+eIA7E36QRjAIKPdqNKZ88E1v\nzDFZD/ELyCTbWScu5Pju/KBF49ox9jJxBAnuMP5srTsuJLha03ryhNc/KG1s\nMH+Y3yIjBtLX9zKNf4o8OqjrE1spDu6CdCNzdblnhmL/gEF25RSEd69CoA2V\nWyX8GNAgn9Z0CG/QbDM26JrXYlxZAra7BEwYt4wsjFPU9eNQL8xzDf/sd0db\nClLtX5XUyneSLutImkBt1nHkGJExSeG4fr3lWPxOnAEpPrRYxlAPHOMkXcB9\n1DKyVcrkhL47gNMJ2GJUmYTY9Dr7omBuVMSMUHGCRLXWTLYfHdoJsINMVGxH\n1LcrcXJHba8UynKKYk1NnS+4/hpXI+OUqWip7iqo4S15KPywIwVN1n9IMDxI\nE8U7FohTEtrVXSAhLFaoM4vLpa4Bx8lkfE0oWAZaFg7nMG6ulAV/eVPqARAI\nGi4zdE22VHlkdX5kVsyKhvsAe2XXOZXPBpI549aQAryeRW2PGiTM2im9taQh\nu2npAu6INaW2LDz3JFa0l2j05UwQSo+PFrKFrC4TSl62x32lkk1w3pcyrIjA\nIoJRYJdrzdvQt1Z059ZgaQavud+RPzPhXt6WB3d+hc0j3a6crUB/b7Ka9ivo\nIVbb\r\n=sxDv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fb907b494f4c26b900cd4abb39171f711c273665","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.3","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.163","@balena/jellyfish-worker":"^5.0.42","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.110-renovate-internal-patch-fb907b494f4c26b900cd4abb39171f711c273665_1624074480967_0.8912319872033911","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.110":{"name":"@balena/jellyfish-test-harness","version":"3.0.110","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.110","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b88d1210b9c108a554171f54909d946bb619d3b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.110.tgz","fileCount":24,"integrity":"sha512-qfZUEFdBURWZzMPX7G7JbYSCz4FlKH5uOcjfKAS9Ce6ywsaw2CNQkO75HhYhZlt4c7NkL6062dvo2E70Jd23GQ==","signatures":[{"sig":"MEUCIAICKFXf9705ypUx8Cotu+OAypZW6X0dBLzjc/wVM3dcAiEAvpsvy2Dd6pVA0GSKJRu3BADyrcht8BQsATfgidcZn08=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117330,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzWm1CRA9TVsSAnZWagAAAfoQAIgk2g6eyfoNihNxMjXb\nbNPrucKZXTDpFaLhaTaUtGG8BL1rMnduc+s00MCu1+DUvEnGaXOc4oB1OQCg\nmIHDN5OawnnHVpBJxbS9k79PSINpmiD4CWGmMfEcJZKoiIRhs3QRn/Y6bTiC\nWl3IEa7WtuRwHhFgPZeI8ADpsX6mYEITQW35MNPCc+o/YbU0b79gdnboGYF8\nEPLMCkpq0/LGekRcUsoS7Bc0uCmGj3ckrYmo1unQd/dpXVDsazoXRjr6GO7y\nXacr46aSaR2JnPgu1Pffl6FhQMgUCmNV3knpK4YI8CQwijbfMWcFgoYcGtPv\nTWTupQ+fTbAz+75fmNAbSZ1VtlZDNv5wCdKoMXboJoRK4oD53QUP9iMwRLBA\nKVJEcnTZA0AN7QrHj518msWdCV5ABWaf8ptlZ01ARN6CO+5wlHvoAIiCC4Ic\nP3s/4xzBrqQDDkVv6wDOXS1w4t2e2iAlBkVdXpJTAvEm1LMccBAUI+caCU4L\nslWjr03OKYA8OhbdC3KBWzqzgSMF93unr9RN0VsvPiiYsig5Y4QtlqTtQNGF\n5bxY+OZZzKQHgd5ekqO5dSubhwNAYUzJsjmhbd/15xFHEk9yXfL0/x2ZJnOP\nm0m38tHncuSLbK+ISd/rPiuZGaiXzBUh1EQjbilQPnUeJ+6kad3vP9i9Prgi\n3UFD\r\n=apZM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8407898e86869c2ea9be7d484e45e6017a802d89","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.3","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.163","@balena/jellyfish-worker":"^5.0.42","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.110_1624074676715_0.5640068229294961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.111-renovate-internal-patch-97dec795827aad49077354444ac43d88dd87b54c":{"name":"@balena/jellyfish-test-harness","version":"3.0.111-renovate-internal-patch-97dec795827aad49077354444ac43d88dd87b54c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.111-renovate-internal-patch-97dec795827aad49077354444ac43d88dd87b54c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0ec8d37020aaae2c8535cc795cb550ccc4970460","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.111-renovate-internal-patch-97dec795827aad49077354444ac43d88dd87b54c.tgz","fileCount":24,"integrity":"sha512-2RYDewzvJksGT5j2n88wXK33vTVdSmp8+M4AWeVABC0QKc3Hfp2JQxFGyNMnj3QJubiyhBfz7IUJdcy+FuPvEA==","signatures":[{"sig":"MEQCIAP0bTvQ9sHmHtHo4zQOGjtR8IPHcAUOTXJ84KsRrBu/AiBXlEFEE/sHlR76hVdE7s1ehx/psWJZqboqImyvvmAD+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117502,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzXcMCRA9TVsSAnZWagAAGIkP/jDVPMpttsLYGeLbMLK/\nYPiK5Q1IVv3l7MWY5FCgjjDVuz3KuRjVEybUQ4TdCf5b3JekyG1EEBkz7g3s\n04pEEY700IxHVIpj96ZUkvXdTuKlOk+7dh6GzlmFAeCbgNejfkXCYheBsdYy\nOGeJsu8wkDq6oT6IwW3Cu/geWxqU4n/Vgoo1exWHoqLa0fHkuuGKFRUXrXHb\ndl1qInjzNEtUlt+f77HKFD7ETNGeB+sXyWZJNDwK752W8FGTXB1pHFm/kgmR\ndyv8eHto4I2SKeI+zROK+IaVF8ZeZLSO8Wweb3cw5EECOUw2mjxhE9WdB1hd\nUk2TzEj+Dogwwsbnsuawdv5i+5gGOGbRC88Y2Njg7l1IlgZuUZUX6zzhjaJJ\n3C1xoI/kSvzacoS/kYa0W3nf9V9VuT7dpbd2++f9iCHlFdutxrhYFvVssjmR\n7tk9K2/upuuhPjF/WWiSCsTpun+drMZtTJmk/0YNCNczq2rOKQjD75AUZnkV\nRxZunFDBSG3BUTwChtd5lCCOhu019AtrWqqwcZIFSpoOByigx21fjjR8McYz\n1K0KX2/3IgYWPEBh9X5Q3G8q8nGOePY60WYz+wuofgnzE1cm5a72aJOzNOF3\ns366AVvvKuAqvIi/VGpZ/6aSP6QvQv9icg1WV3Mtwny/JS6zjSqEn3jBLoAa\np9GF\r\n=UD7v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"97dec795827aad49077354444ac43d88dd87b54c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.3","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.163","@balena/jellyfish-worker":"^5.0.44","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.111-renovate-internal-patch-97dec795827aad49077354444ac43d88dd87b54c_1624078092184_0.2976760875322575","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.111":{"name":"@balena/jellyfish-test-harness","version":"3.0.111","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.111","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cde4b6a0df691b8db7c4ec20e4d84fc4146e6a2e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.111.tgz","fileCount":24,"integrity":"sha512-4s181ULePIOznmSOU27YUGIPnaIaSS/oWNUAIjaNhNryZMQQEdni0PIqLFE7vFwvC/FY5RxAOs2soeeEkWiSRw==","signatures":[{"sig":"MEQCIBi2tPDs+FzPrkYIQXux1lEocQxGpaW/dmV3hGQ5UKHWAiA6oOPQw3VxVjzA/lLaHXhEhzlqAH74P366A04D0yyaFQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzXfZCRA9TVsSAnZWagAAydgP/AqhS+f36GQXGNThSmqp\n9l0JdeqXW5lBKmDWWXMx6MN1xXvoReSTJI0Pbg9OykJZ+eJ+YQuNKIxPCAxI\no2XAOMWp2ud35o2zAm3+jfKTmbp14zz2BIsfOcoL20dEbLo5jtkm+nr3XlgB\ngH4C9sx63TXVHCsLR2e9prh6amZiyVZN1ILFqSUINeJCCnhT2LU8PhF5VHXt\nXVRlZXWlI7NE1ZzGCyfE7uzZj1HG+iBA+vNTrsqS9Xw7dNxFVnfWDAiRAkpC\nz58u7XDRYHcE16q9qEso7qlWgIYittoN9H82K17mXtH8DbooEq48PqqcZR3B\n5sVf/1q9Lmo2UpkfwumrUMWawR5bYjYaGF2wdLVnKe2byB4hZY310pX0Zt6i\nRJVNfJxFQAEgZlREfEw/a52vK5wxgzEv8ScV/RsWUQY0E18Vl/uyRRYXHnUa\na+YbERTJPXIIoyglN5bn7SNF2sH2C0hVUKSqIW09NEWwAbL/F+hE0ULUCAX3\nVRs0lhy8ytvHZ4XYgdsz9deVpzGSHWXZwwpFbg7xbjC5Q9NGPaT5dDzBftD9\nqTgFvBkZnOFxD96j4kbPpyLXquaWA7WUba5vxasyQENfU808/H5qIsQ36tyh\nqnLk5w7ij9jCsQxUtpgc5DmG58C+K80ps4YCulPp/4f71zSw3OYpG1/BG2Iq\nHHv4\r\n=L00S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9ca1874a4e14b7fb4bff83d86c7b8c5cf4174d88","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.3","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.163","@balena/jellyfish-worker":"^5.0.44","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.111_1624078297150_0.9681472812169705","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.112-renovate-internal-patch-a5027ec206811e2ef706deb9e26d160a6e118b51":{"name":"@balena/jellyfish-test-harness","version":"3.0.112-renovate-internal-patch-a5027ec206811e2ef706deb9e26d160a6e118b51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.112-renovate-internal-patch-a5027ec206811e2ef706deb9e26d160a6e118b51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"40d4bee2f2211f617376404dcfed8759a5439f74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.112-renovate-internal-patch-a5027ec206811e2ef706deb9e26d160a6e118b51.tgz","fileCount":24,"integrity":"sha512-o8ndL2/k+B3gl6ETVZ2NaBN8NFlP+uutublAyQ/VHxXiDuJUwxiaY2ZJWRLGqeok3UUOu75T12H3dk33mgJlQg==","signatures":[{"sig":"MEUCIQDpnA0m28ITx3+XzLWpI7vXM6jtt62+H6+xY1JcsOq2ZQIgCcggheBgu/ozih9vwXlWHoBb4ow9sq5+Ult6XVDs8dg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117577,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzaYGCRA9TVsSAnZWagAA9q4P/1eo/cViuPwm48Eplv0o\n3pId/N0BPVz4kxQsXgQa1Au5mfSccFrRU/qxwEvKyN2+yDGcCjxX0+jmSFvL\nU6Qxv7fxiBTR5AmPnqSc1+CmSiHHxSYU2vtYHoXKzs1TvYdQATozw6Kc5VVa\nx0WDBY4yibmdXNQOonucC8g1zSRP4sefOVq2XA7ENluIipqX7vxPRfBPN1Y7\nScwUg8SUjNK0lW7Yzvy/vQxrIEr3k7A663QKeJSOG39PYYVhc/hM3dow7nLb\nvp4HzGfZ9zJjuGGc3xbBVVYhMzZJ0Eiw9VIidet2txUCAGhAWyiMxCv57Uub\ntjkg/LXJ92JuohOE9moiylDBhR0ly4ZRTUBgmyAiqkKLKucX65aAU9/w5BAj\nEWRVIUMvAgHezfaTomp5WTP1g2/Mh4gj9FZUtiVNrqdR464Kff0EWb4g92yZ\nQyaS2RTsNcjd2fTdJ7ycE/SbRqZ6Rn3rv8ZmnzcemXdR5poDTb0iVQ8RIlwE\n15IMgZK4+rd23yf1RcMMR/I6dpvvI99w+P+PjLuyXnraL+FYykPuLKGTnXlB\nojBT8w0qpBUod00VNniiquVYlc2SlxMg8qSwxuA0OnzfOybleaePs4eJp+AM\nc8ihIQH8GXzV2Dz5+HlpkEyoPgGz6JZEExnSAvWnfI52ZPiWuilMAFQ59tS4\nh+4f\r\n=GVvG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a5027ec206811e2ef706deb9e26d160a6e118b51","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.165","@balena/jellyfish-worker":"^5.0.45","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.112-renovate-internal-patch-a5027ec206811e2ef706deb9e26d160a6e118b51_1624090117760_0.3912953260436305","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.112":{"name":"@balena/jellyfish-test-harness","version":"3.0.112","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.112","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"990da2c4f041383e16f338613c677d0830f348a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.112.tgz","fileCount":24,"integrity":"sha512-WQ1omsYZYw3G+QceI96NUEpiIIFw7FzFvcdi7sClv4YB+wB0baI74ebhFFW3cpkRo7qHoZnxV289dQ0WiKn4SQ==","signatures":[{"sig":"MEUCIQDdaEGh3NXdr2J9iZH8JrdLTGvqVKcGO3XalNeGaKXSRAIgIol4Wr0dNUzsobK8ospEnvlen5EGAV4daL53rvVaZWA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzabhCRA9TVsSAnZWagAAYh4P+QAn4vMY3cjWtAXPweys\n+Iydzc0ZYbAt/I7hbUUZAh80brWq5b8g4QJfwo0gghkkB05CckzqWgs+QQAh\nYDwHOf3+JKEyWNuAdAvL02FKsiCF2iJlRrGt3Pildvg4bHVG6kER4EGMfEAR\nrGO4PmmTBQvqwXdVNnXpzsuWaeiWUDDWEB8DGX6fJYfE33av4CmGibno9oX7\nRXU/9qWn1GUQ2yOYOuPbvC0QHjB+EWaQFjKZxVJpplLM6X72YV3YRMeu0c+I\noPeH2kUj5Z2Lrw8w1TpatYjA6aqAhReYq7k6R+KeQjNGS2E1n+TDbZRQMBLJ\nTcxULZ6q1N26RJvu45GC52DGzZ+3puiWp+4d9u8X8A820HiDmSkESZwYK0Rs\nNgVMla9q2IEHMMG9iEomyFaHQ+urs0PTXR57xMf+eU06DVmsJXb/HZZkbpvQ\n4PujVLSpB4nRkjNdGdvZGmmawz9vdHwdWrPlwHZCJ/YRMpLJ5ov6saA9QpD/\nzGWxhSaNMDZ3/HN7JR7HO8rYDyooQy3mBeZTXU2sEfCKjvmBcvMUdWMRW5WS\n4AZV3Oq9jrVHTklI2PLagH93AsLrTlJVWQVD1BaWNbPehWWthyjMpeuEAH7b\nelgJ/dZ5vV4dwzlnjRGoNd+oy3000+8F10O54LFOXIWoHsRvez6CFPXMTq2J\nppQE\r\n=iyHt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"0cb131dbc113a8c623ba5e862b24c8d23a6e1e8e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.165","@balena/jellyfish-worker":"^5.0.45","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.112_1624090336703_0.944661316135966","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.113-renovate-internal-patch-9aa754bc0cf9797e5b36330ebc7839cf54050e56":{"name":"@balena/jellyfish-test-harness","version":"3.0.113-renovate-internal-patch-9aa754bc0cf9797e5b36330ebc7839cf54050e56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.113-renovate-internal-patch-9aa754bc0cf9797e5b36330ebc7839cf54050e56","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b1de562a3b51e3aa9be6d64861c365c5406f561b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.113-renovate-internal-patch-9aa754bc0cf9797e5b36330ebc7839cf54050e56.tgz","fileCount":24,"integrity":"sha512-PpO5NVRpgSKLDY2jBbFjitD/lyTt8clCqitsmhw6kMoXml0eEbvmW92+KzmyhU5kHvgfXw+z8bDGLipJPH79Qw==","signatures":[{"sig":"MEQCICqmMCiV2LpX6qv50g+DkXAXXzz2LM8qqurkg5ew5qZaAiBm9mu1ZH3jg2STgNnKLsoJmNY6GDTZ5860+bKzaxdgWQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzbp4CRA9TVsSAnZWagAAwq4P/Ra4N7rF8+Yf00IwqEsA\nAmMm262YwpxoRV7Knu6UyWOA6QibIvP028RDFCruj76LiQGrRuvHQemjYuqi\nD0ym8xmdhKgw2945f4BfMGFlHVHPcZhSSzMYOLy74W12rnMQmyhKj+C4F6rG\nAsnhbWQ/KZMcSGSAuv2z2v13SJmino0dkLiUJUcn8wETLddhPTx1l0ZDF9eO\nG8OjJhW3h0ExxlkijkAE9JvLDPYx7XGFHUsG0dBjrTr9ova6rlnemblaP2eF\nTyl5UjiiffOUuJz2gl3mIAsdOtv7lOFhZIkxe1LAjGMoWRbnrunNTsdLb0bE\nhXtMQcT7auj4M5tmLMstQwes9wDt4GJlNXxNG4T4Oa331kD7++RJzRse6nNr\nWTBwDpS2bWlPN8cx7oNiqTS8G2KYFbBfLjMAMhSB41XDMquV3urFtVoftxYn\nji3nPvRJ9LPGQdi2WN09R5RlGpfWk+fjCduRLQVLhPbxe0Uj/wbFFfeqBqPv\nWReRYUjOh9gjJfAV1+2ItSp8gmBjRs4BpIHTh96QJLDS5LihoS0Y5OX66FYH\n20a0gyM4p+Ez60v5c1eMLME09usxp/vYOk6Aq+V/stkBkwrCKifjGRZsnRhf\n9OTIlUY7QUrQExyf/bw0sCSSdSOzOR/zlTdaHNnfSvC3dMLUeKEhdNFMejpe\nEVl0\r\n=nGLa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9aa754bc0cf9797e5b36330ebc7839cf54050e56","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.165","@balena/jellyfish-worker":"^5.0.46","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.113-renovate-internal-patch-9aa754bc0cf9797e5b36330ebc7839cf54050e56_1624095352378_0.8522376401612368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.113-renovate-internal-patch-66491acac102ea6baeacd9515fed3309718bafd0":{"name":"@balena/jellyfish-test-harness","version":"3.0.113-renovate-internal-patch-66491acac102ea6baeacd9515fed3309718bafd0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.113-renovate-internal-patch-66491acac102ea6baeacd9515fed3309718bafd0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3384dd176728ead7823d4b5a359f658b605e14b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.113-renovate-internal-patch-66491acac102ea6baeacd9515fed3309718bafd0.tgz","fileCount":24,"integrity":"sha512-7kLX4JByfMumwjzDBgCMn4JrUIxJUz8gUNvVXzY9JUj+gCWAoci3icqSqk1cVMSSvLhQtBvh+zaXKuDrqtEPnw==","signatures":[{"sig":"MEYCIQDB6L/NWwTwK4lrjrsIYASIJOkeApNAj/c2NGR0yaX/sAIhAO3LnWoCVbE009CkPiAypf1qGJtSnJ2hDtBwo2l4lfQb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzbu4CRA9TVsSAnZWagAA6ScP/i6mGN2dA1ObpWClulQg\nNJdyKqxuWMGVj7DSF/Rdc4Z7nNKnHOtS5t6W3zw56pZ1y0B8Ff51BAF3zRIv\nI/HypFy7SelzsVbtklbwtvODaAOTAbUR/ALw9oOtqfoLcNTu2Iz3F8G/Ljgk\nv8xtINDz8JSoRzquMJlJBmoJMdAy1H9B5zNkum3Ldw7LcnAoXOOUreorfofh\nHJexWH0mK9BV89B1ZqEYTENnGHKjiOGCSLL2EQqiwG+y6FTiNSoQ1rqyfsL0\nP7lvqY+YyvUULZRlpop3eTRJ5d3l1CfDiML/62BVn57pr+VFM5kcvo2PXvLK\nNdOLsfxdoewI7574aiw0BtlmD9P+69BCEM3oLw2usybxbt/PGfYwHCmd4xDr\nEY0X/JcuNEidXvfcEcTl7+alY3binRPnzi934lD+5uNxXsnwwzsRixtXFyN4\nbzTPaHe2+8I/1p9QJNF4iPr3vpRSw+Tm16B6x5/wHSWF74SrD4x91PDr05PV\nHWGfHZ5Makfx6cmdNAz5SAEBExPSjx5QwjF5mLmtaNt0fkPALxJNkz+9jKxB\n6wXGUGt1viqqKPO4CIlFmUUdY2PwKDsumnXmloCSlhcbyqLForASaFcvStYx\nCd7aj2rY9D/joeK4iNUWl7eNwWvSjyzHfbxn3P2ldjXkQAZ6ifGm2jngbhh/\ndsMx\r\n=qO0I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"66491acac102ea6baeacd9515fed3309718bafd0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.242","@balena/jellyfish-queue":"^1.0.166","@balena/jellyfish-worker":"^5.0.46","@balena/jellyfish-environment":"^4.2.5","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.113-renovate-internal-patch-66491acac102ea6baeacd9515fed3309718bafd0_1624095672350_0.03828665126277642","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.113-renovate-internal-patch-5af3a3da88f529afc9bed751da7b627eda38abff":{"name":"@balena/jellyfish-test-harness","version":"3.0.113-renovate-internal-patch-5af3a3da88f529afc9bed751da7b627eda38abff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.113-renovate-internal-patch-5af3a3da88f529afc9bed751da7b627eda38abff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cb9050af0b5cf691f78c9c0239036ab9c3e91cd9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.113-renovate-internal-patch-5af3a3da88f529afc9bed751da7b627eda38abff.tgz","fileCount":24,"integrity":"sha512-SaLRkbxbCKYeQ3CCmllNQCsD9OtVzT6TrZaqeQoeL3K/vS5M5s2c9MPjYv2aWKSBIUf3/3g+/zx8dkEr32D3kg==","signatures":[{"sig":"MEYCIQCQ5nk9VV6cX7OA3jLDq6qTYef9FMzOHpR7hd7uqiJ8gwIhAJ4+Kc7fVh5lpIKus2jub/bcBE3xgpxw0UcBuezvWujO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzb0PCRA9TVsSAnZWagAAa5UQAKBzAVeYulc/a/7AWUeD\niVlSgqIXoWALng21gYZjOssS0A0r2ViTxPtqtN/m9jmRKvbtrUJLSTLpBtUm\nlAo0z33CvGw8BDz6kFpFAGSzCTH2LRt7c+pmky5yHhHdWiuijTtGnXWrT8+3\nfeVdauwJiw+wOTpa5dQ1bG81xOAD3u62Yw0oD/fRczYWcvplv/e2bN7WNUxq\n16oWH7HqSKa9iT6smov/tXOTKAqqTCJTy0FBW0ljEiiBZiSzNoTDUH+3PcuR\nWdY9gfD1ZIsfQAu1QjDzF8xxYaffc/pxUmvmDBoduS5chUkE46nuEWLcvn2u\n2gJuHUjo2Uz9Yts6R4tv8Lmap3gZKa+1e/HC+gdpxmykwpHU3+tk/w6aVTLA\ndW5u5Xp4rL++hM5t90cYNDYRG4Q18XIgODwssuEXJ/fYY1N2IqQKul6D4Dms\n1rV2m1nTUA0EpATEo3O4TfY6S/GvUtuzxPp1Cc+nQ+I/WNkd9K5dT3QAywrB\n/hS/6v+sc5a3K9E3aj4igMBHCWYb99Nl5dAGCdhz6erbdvz47Ve/15AkBJVL\nj7EMca1kjS7y1RbdsIEddL7qAmvLbUfUqe5+Ej1h0hl1f9TqNZV+i7toNLeS\nEuvwIg9kyMLP2tJnGxCZ7ia2rvT1iG9oAEGPd8yg/ek3ryXsH+UXgtkYp1Qb\nMkEC\r\n=ZiuE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5af3a3da88f529afc9bed751da7b627eda38abff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.243","@balena/jellyfish-queue":"^1.0.166","@balena/jellyfish-worker":"^5.0.46","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.113-renovate-internal-patch-5af3a3da88f529afc9bed751da7b627eda38abff_1624096014527_0.05205037209092778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.113-renovate-internal-patch-d38629f16a4dae0fc23d01aa3adc6c14617d339f":{"name":"@balena/jellyfish-test-harness","version":"3.0.113-renovate-internal-patch-d38629f16a4dae0fc23d01aa3adc6c14617d339f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.113-renovate-internal-patch-d38629f16a4dae0fc23d01aa3adc6c14617d339f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5bb1d301ed4d0bba525be84c355b0799c6fdc100","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.113-renovate-internal-patch-d38629f16a4dae0fc23d01aa3adc6c14617d339f.tgz","fileCount":24,"integrity":"sha512-E+Rf16h1I5HrKgmav/FoUAenAdAHBFYeZ1UnGjpKpPhNqyV6yAXU0SMergYD1v4WzCFR/KIAk4ks8Y+7CE8xXw==","signatures":[{"sig":"MEUCIDq7oOiWb7NAi8h8fQMurXM5BzVRZRoQ8TiedBceVzK8AiEAyCc6uiWhiR2Qf130HCfUsXdwIMFXLlm+VkbKGGO0GPU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzb5hCRA9TVsSAnZWagAA9R4P/3uTIoeXMITWWZ53/mjz\nTNFRX3SgFVFcvQTI24pkTA5qKfvYRxdTalvxB8gte1wT125iirvac5KJmzML\nnumJSqqV0v3DoHAtajUUOLCaLJ/IPWM0vJwMtPzFCTc8145V9fWBJep1xmoy\nDupfNmDbdkuPf+9Rwn6ko4UmzWGXiTKo7lK/ffzfxmiRm722krFAMdiKfudX\nBUNEneRO6DEW6Pd+dYbMwp+4ciaPFvxgA59ZyXTfdcn4Ii/qGYdRjOso4KgP\nUgp8h5GbCkW4Xq3iYxHTok6t/KkATkNlfEuTlAHmsL+XJ3/LrriSFg2Cye7m\ngIl9Z/BB6LKIXU4hnqdcIFFTeTXb9kyBORnJhJ4g5TUsnE81zKqvW5OYHXcr\nOmN9sKdxyzkW9nHj4jRVYHg78Ot938LK07cPItMOuRdDIM7ROP6wEjye4HTg\nswFt9KzoRroqZV2mZ4i+CRDtxKh6x1i4eATsj3b7pmdCsGoxyRpzrdoLh9u2\n0F5umogl0jh+73cgoFyYKLgA5B+9vT5ThP/XBfVC/oVj2x6H/2xJNSmhb1y3\nSAfy/DSF2A3qkYJdoUzIvAEgw6uEFtFUEnhyCL/InV5NdX6VtuIUiBx7epM5\nb5asfFUolh+acDnCnXnkgfCBSjNaTVjWHgZo85cGUi0WA9iGyqB0+dTPUIvg\nhLic\r\n=QdKq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d38629f16a4dae0fc23d01aa3adc6c14617d339f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.243","@balena/jellyfish-queue":"^1.0.166","@balena/jellyfish-worker":"^5.0.47","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.113-renovate-internal-patch-d38629f16a4dae0fc23d01aa3adc6c14617d339f_1624096353516_0.4821010692926446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.113":{"name":"@balena/jellyfish-test-harness","version":"3.0.113","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.113","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41e284d49f43520822e3265724ea4d46e03ebe47","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.113.tgz","fileCount":24,"integrity":"sha512-oZ769Y7A7C+VnJq7wY3RZH5L/5XBIzMAgJlWp7fodcM6cI5LNgAx6L4EHZw9o898TaB0sY9FWrz9i9nZ0R4JEg==","signatures":[{"sig":"MEQCICz0n13SV8//jEEE1pA/qtB/59ShpyiQj5eIzWMyEgnEAiAE57/iQjDEkT27qKuZywLAuP/2QqY/KoaFUQPtuoyNpA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzb8WCRA9TVsSAnZWagAAtFcP/Rw6aHzcsd9o2Ny3IIlU\nbvNVzyVce1V7Oyza3woUCTCv3jZTBrLAWMH1R+J1z2L5GI6mkM55vwZjYnL7\n1/YrmL4uf8N7bmVfEjNeaTDLuWxkAA42SYv0urvmYER+y1hgn9NLqPdMAtPF\ndsteM7uA7agJdCFxgl+Z+sFBU+e4jkPa/vG25u3FOkKC6u6P2ToUprtozFjd\nAutjMcBFrmZI6VGJv54XdkrT2RC5bRyplp29nH32qzp/S+tsqgtxrNtuhGXz\nHSKzqWuKnZAaKSASEDCjNAoIwMOniGJeIlAzjEcljm27HExAr0cuJKvcbNl3\nkKIxzH+E7XRx6VQTnCoHTtzD68frjOEiGFk3kF8D5N+xdT2vgh3lnQueqhLA\nxUl8yRP001KhPcEw+WVUzhAlWazaGJx5Sfuo2uUoAgpNmtgeoVZJAxhtxss8\nvkhSZhw533lGymwOWTbB3gOpyz+c5v2gg3UFdfusk0rmuEW99Uz4mGK8U0sN\nVIGrtimqVMQ0Thnglp4cADIHXc0k0USITuUAd8EXzEtoVMnEqeN32TiGfAQc\nwf42iI6EjCK8Oz4sRW7nXlpu/KyxPyTcnoaVs8O+J7WF4bJ7XzjRmFE7oRm5\nVdkR6OZeKVSYu6JZP2Vx1efJuz2QLTCgiHuoGAZAt3jZdt9ePkxidFjKDrnH\n9yKD\r\n=IGoW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f6a9eeae7385373a299ac8bee1f871fb06fb46e0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.5","@balena/jellyfish-sync":"^6.0.243","@balena/jellyfish-queue":"^1.0.166","@balena/jellyfish-worker":"^5.0.47","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.156"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.113_1624096533572_0.30419282988285645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.114-renovate-internal-patch-47002a6745ab84d780eef6af602eb302cd02ae5e":{"name":"@balena/jellyfish-test-harness","version":"3.0.114-renovate-internal-patch-47002a6745ab84d780eef6af602eb302cd02ae5e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.114-renovate-internal-patch-47002a6745ab84d780eef6af602eb302cd02ae5e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"12ab5945c655e64f160f8a9b5d25347b3bf87c7d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.114-renovate-internal-patch-47002a6745ab84d780eef6af602eb302cd02ae5e.tgz","fileCount":24,"integrity":"sha512-4IXnRxJEudLNyuzbcXmvbcqIhA3AQmD4QXU905mY6ZwLecBG8DL/8fwz+jH55Wv6C+3YmFdE9zI3VkCuq7kWvg==","signatures":[{"sig":"MEYCIQC9aDuXSLziR46Gr9LD2ub/UTCjFFGr4HBZHf05pMpEGwIhAMtZxn7ru5k/EMGNUWyuv4VG7w+ueS83eH+qFS/TP+bO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117727,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzdJiCRA9TVsSAnZWagAAMn0QAJK7k2kVlDlhFa1s9vNn\nEuaUJ+Jv1eJcuaWVXvvr7gZ+S+6jfq3mwuqtas+mPNzX/L4xRgC87JM03fez\nZoCoTxh3H0nGVPjFgGprJG4o6imVVLvW4qmwrGyYH9R28nQZ4CNJDki6FeYW\nyoLMuReABugZzubm+d8y+kiBNDL0DZl50lgEMKqaSfWU25tdhTUqtKC9mKgj\nRnNdzIbcIjOR5c6BQoBCWM2meVMVclb/0JoITkDVRfD9p++90Nl2IAmPbOiZ\nVqo3maCfgboLgX8j3+0mCARhFCowlPOaAQV38euN7pmNkWhhYcOcH0Yv8mPj\naPLQOZuyNbqV54L/u+a9Q0XVROA9lhsFBIfRn2nGW+Eq+LVtw23OJZEyCGdT\nkXEnAeWzPGJEUkNTcMn6ZMm+Qr2rZv+B5LyLzmaoRsCXa/D22xWUpiv8hnHx\n+8W9htP7eCpitweIjBkBvHiVbemirucW34z+5yAYO4O9OQ1iny1c1vnokZfx\nYU1FgONGhyEmjPeWkkP0MsytU/7Bmfv18zUpznoQ9/bmfad7eI2Hyr2MGkoh\nZfaluvEz3GkUBxkF+3w8XUaE58KoSlaXW0ipq0Oqoqm1DGP3B1gJvA5xiEgF\nYzC3lFqVeDxz3wX5iTc3yq4/S++xe2oJB5THgu5tHg7U2f8BR+vZ7Pn4HgxC\nfW/Q\r\n=jjcI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"47002a6745ab84d780eef6af602eb302cd02ae5e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.6","@balena/jellyfish-sync":"^6.0.243","@balena/jellyfish-queue":"^1.0.167","@balena/jellyfish-worker":"^5.0.47","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.114-renovate-internal-patch-47002a6745ab84d780eef6af602eb302cd02ae5e_1624101474183_0.7366250518910253","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.114":{"name":"@balena/jellyfish-test-harness","version":"3.0.114","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.114","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7a9c5e31c2904827bba815a7fa17566666a81b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.114.tgz","fileCount":24,"integrity":"sha512-UudpwE1+Lwf/cc2HcobqVtr3OFtr4LArnZbgcBhqWexD6iWRNtUaTbnNQ0s8mHCWnry1TNY3VxAx12MudAFaWw==","signatures":[{"sig":"MEQCIEI77D2vf66d6xB5xT3xNRCq5l4WNpf87L447zonqDGhAiBHmONdmZT1nwWca2LyE+g07/JPlzc283PV0qNuovTfNA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117662,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzdMBCRA9TVsSAnZWagAAHXwP/3FbBG9KfhX0AP4ouTIi\n3UbfZVktkBigPoYE1FNFNZtkkgJBoWrJGMg14uPTbgT0PHAoZWRDo4Qh79ka\n1QbCl62EtGodq6EyRCBDXsKjRn6hCCfnLfrCK7Jyz9qH+9gAQC/Kkvc/EXLY\nmKVVnBvjSGZLdDsQJMtQxZp+5Ch3KVl1RClsT8UXluHW3U84n76Q4Wy8DFz+\nmLH8rw3ysdI0gB3xIoaVpeLgy5m/OgFFDph5F/MEC7t0fNGOCaLM3EU78djn\nRmfi+zodRSxJM+ZCocJR4QMbfYIJHqBIZH73jzLM5vwvHy5ZzvYnzOMnEDK9\nYd8k8J/GR3QwhNJgcmS/xp+SgHlSKmMtYMpu/N/zi+9PS9B1Sjg7JQTFUG5Z\n5vrVB+7Mb46wRjJsNTABUiqE7NSz91nB/oXfQ8ZLMhASWas+zCwCbdjFk00o\nK830brcbvWggu0i/lsM55+J3c6XQH4h69fFy1sB9vDIOhKSXYqKmIYssfB1X\nfSCK/NTVw0XT5r2Bi0te6B4xaAYLi02eClljIl/AG0WYbCcPeYgIN/cfkVB2\nNeggQ3KcltQh5rXCibLcoa7X32a/EVO5+oNA9VhzGHVD9rxrwkhY6CnbafXV\n5sKMZj82jGsCgk4v0+w65J+gjXEZnNXgrN6DwgJ8XJ1xcsNnlBOpsdSb0idh\ndFxx\r\n=VbTU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b275ab078e0a99948b2b606f269290f282f319e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.6","@balena/jellyfish-sync":"^6.0.243","@balena/jellyfish-queue":"^1.0.167","@balena/jellyfish-worker":"^5.0.47","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.114_1624101632641_0.901915407404897","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.115-renovate-internal-patch-21b59241ec5fdf430592ba2d458999b5a01a7db5":{"name":"@balena/jellyfish-test-harness","version":"3.0.115-renovate-internal-patch-21b59241ec5fdf430592ba2d458999b5a01a7db5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.115-renovate-internal-patch-21b59241ec5fdf430592ba2d458999b5a01a7db5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a730ebc6b13d7a3e47d484339466ab7dc7f09c28","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.115-renovate-internal-patch-21b59241ec5fdf430592ba2d458999b5a01a7db5.tgz","fileCount":24,"integrity":"sha512-niK1F/udIPXtPy9IsIOcA/75FlEVjsxuxqrDTkmBg4yjk0Dm4Qch8lzUzE3MS5nPlXbCL790bCMUydA33kK5fA==","signatures":[{"sig":"MEUCIEXvr+Th7TvcRW2Enb22lGFIN8i0al+89DHOjMkYqAW0AiEA43omrp8BDkFH+ynkHAlNrEvk1FVxHzku+QajirWnsZ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117802,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzeH+CRA9TVsSAnZWagAA+igQAJ2EHfDQkg6S/pYULB+f\nTLI0MQnlrtKi0jKAQOOPru2OpkKwxhuGuUpOvK08sBLo5mHs9wCtDSFmGKym\n46ryrxEauHI4ivdqq495InygoYsGgKIfCUXnnvOwOXsk2nZ0nT9xawRKhXVc\nrRz+lfMGlHpI7e8Ff5TKwBKIoRk9nJi9CzqUl4EPN14uecH1xe+lFPHz+IJn\nAHn0KRrF6grRuxOb2uY4rVkaQgHYZqKXBmffVUX46syOxKR2ulenfqZc1TiU\nqtoIOnxM47Xj+9ZWrxXvVYaTC88rB4DPjeq0k09OxQHL3Q2voS7r4D1psHk9\nz2ayNZd1jYooVrPH1hhVkvmnHtc0VLmppwAJ7DpcaTbpP0i5frnnpBujZg2/\nPJ/3lHH4f1FVVtgfkd9n0yIpV08wCYHyzgiPS0NVa6CdhCQ2b15KAh4kRBi7\nsCJo1QAhaqi+L0Q8gqSCBhqSJFodhHjO0QdmHWKjr2JSmKd0/Xagncw3AmKU\n9LHpXNNhmBJOJtJUO3n5MpDSs2+U/et05W0bksI4sk5q5B+l5DlfMFKbLOq8\nKuqHUyb1puN+yUsW5DFi2iIQ9HgAZJBJh/vClXoNE98WPUDX0sAeyMMOEhU0\n1SCznZEEVWL7veWrjzn4+duZ3vU4xrCuvaFY1Y38rTakSP8b6doKqN3feOmK\nesrB\r\n=N2Og\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"21b59241ec5fdf430592ba2d458999b5a01a7db5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.6","@balena/jellyfish-sync":"^6.0.245","@balena/jellyfish-queue":"^1.0.168","@balena/jellyfish-worker":"^5.0.48","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.115-renovate-internal-patch-21b59241ec5fdf430592ba2d458999b5a01a7db5_1624105470105_0.8412814691909729","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.115":{"name":"@balena/jellyfish-test-harness","version":"3.0.115","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.115","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5535afe4bfe6b0140f5788927f833e71f04b008","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.115.tgz","fileCount":24,"integrity":"sha512-Lul5aV4uisRERrWtNcZKiW18s+kqXV1nsQZ+Ak1l5w7mUCSybzcGlUMzNFyH9LWchJSAgam8KAHJjHFtoVVdlA==","signatures":[{"sig":"MEUCIGTEIcnF+t9AbmxfkiEypM/qOdlcT1SuGBJemXkBL+5zAiEA74lXydX+kPFXvO84OeSkQq89rNfdvpObi9P4xCKEvtQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzeK8CRA9TVsSAnZWagAA1FwP/2x8Dk7mUIqyk2iyIEcT\neLORacMWfmDmmpQ50EIGUBrZLJf6xuPlz3mRg9ddujqtGTlWOu5ZBas/Vq0E\ny4w4FYrp+TuVvpXkiSme9CoH/lwzDSPgrzwLi67sDyt+4O1PdrpxygB4zamx\niGjgnhUqbYtymzhzQlpMnJ0BeEzsxM3Xr9M3+oRgGFvavMfBnG1U2VJM7j/Q\nLaqx/sjkHeE15uLst2usuAFXPJbQhFS43i9AS1HDJt9YV+F5zfWlkNEpBGG4\nE6zHKh1e+wC7ZVFSUonhCFWdXYuJUu48KuWmLBt9y8Ecx1PJ84DzMUd/GJDr\n+J+/zlT8+3zO4vqpzfWzm+HYRq+REyDW7TI2HV65eVBY0N8szakGE+Iuiz3B\nll64T1MXFMTN/hrXdxUuB4RRaJRhtKRianEG2z0+PP7fLA7RCnzkgfyzBp9j\nnVbWuSKxFICfWwI8Q6XRGM/gFHA/tcodrSCboTageekSDc5NNFwqDOtj8euC\nY5x2jkMySfobaRZHNFdd2va3xk+JMJoVSVJtw3CFUS6T6iTWja6592CLkTIP\n8pdD/ebD0L+EIOrIiqyQzwAfVLfl00IhewKnYgbtIDLGNPBFDc5jWQFlxhFx\ndTIfqonseb04MweSYXGLTdwjlKERIUzKFLQcBDCueYv02umfMDSgn7J8aoea\nSRBu\r\n=ZhKs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9174c4e9bc6ed6785ba1c860987731d939000329","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.6","@balena/jellyfish-sync":"^6.0.245","@balena/jellyfish-queue":"^1.0.168","@balena/jellyfish-worker":"^5.0.48","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.115_1624105659672_0.28557733659065154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.116-renovate-internal-patch-f4f665c7044d71856da576bceea90071c6063f24":{"name":"@balena/jellyfish-test-harness","version":"3.0.116-renovate-internal-patch-f4f665c7044d71856da576bceea90071c6063f24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.116-renovate-internal-patch-f4f665c7044d71856da576bceea90071c6063f24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b04bcf2011fd29ab958340d1688c2b5edd2cbf67","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.116-renovate-internal-patch-f4f665c7044d71856da576bceea90071c6063f24.tgz","fileCount":24,"integrity":"sha512-cp5/bArnEKbWeBFFkY//mNofYVb7FeFwpbOtLogkSqLyrfZxH1mjwGzIYXbiX2neN0jDYgwNVneB6PWR6GU81A==","signatures":[{"sig":"MEUCIQC35a2+ieaDL7/+0jjN1Xdnq5HIr4McRzPcKaiNZZzRVgIgdENBOTP0jC5k/JvnBlN1zROrchsqNkx9wxaRN5eIhls=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117908,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzfNNCRA9TVsSAnZWagAADTIQAIjRSunYn8m7+xk4Kxt7\nFJ5ah8WfYnrW/9v/HlwdfQtPtJWscGhmlXhqwLiNUPBRRCLrt/frAwhS3dNb\n6QZpXIZp/NzlwaHoZGutWh3z48qNkTnmPhcDJlwNcPoR71ueQMnD0ViCmjcH\nyxgrY177gol2BaTI9xl44UyzjeuB4IMzf9bVKue6AAMHacpFApj2PM0J+S4L\nhtrtUx1I7PvDkYwpTPhBytBcSDxXS9AkW9MMcOByzPH5NvBQhgjZkfMbtRiZ\nr+cWcFIVLQlmlx2LDwbJZXVlXNQFf8obtKXu7eqBxOll7Atsfj6apJ6VFFNe\nYrowG97LRn8IMp45plqW8hdnznG8LNtOFaqul3/WnOPfQ5fCRxJ/4ux1YrM4\nbQg14+tRXGF0l6g8E957OYsutw2EA4NYlwuOhNVQRG1EKujT22kCJAJSVG0s\nWgJl9CogdX/Yb/I5r/akWUy8xN0derexZB+g6VBeE+kFlFp1SGCce2snqJKL\nV8KRXzTOnug+fBJiYpV+i1OAdr/zalCQWwCBkVq9hfK0TtI6ByEOmvTgUjTZ\ni07SZnp1CkcAfxhH/HUVjJz0Co1t+b8ZOXeMdYU1ZdoBlJjM7FUMjXKHRKH/\ncJE+Wqmv6aW7Alg/XawBSTwmMCRwRKCaAtig4GkArsMRPj5JXif8vC8OzeN0\nXFeS\r\n=Pkwh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f4f665c7044d71856da576bceea90071c6063f24","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.6","@balena/jellyfish-sync":"^6.0.246","@balena/jellyfish-queue":"^1.0.168","@balena/jellyfish-worker":"^5.0.48","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.116-renovate-internal-patch-f4f665c7044d71856da576bceea90071c6063f24_1624109901459_0.9076963653268892","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.116":{"name":"@balena/jellyfish-test-harness","version":"3.0.116","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.116","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba1d9de8a4550ff83ebafcf7fac57abfa764aa77","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.116.tgz","fileCount":24,"integrity":"sha512-m3eIDqtQuyzYIclbfnIPOFpRhp4xaVBV8LmD3W0hyndXoNpIGbe2nNZMZamAXfAliW8jfpOy+xAtp2XjRMw14Q==","signatures":[{"sig":"MEUCIC/wdovmHEm9a2pvbDNhafoLl58MUSFwPjJ3An2FGONFAiEA8DFf/8HjM7SjF91PXDagMAZgsqgW8nmQX2QcOoQp1G4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzfQJCRA9TVsSAnZWagAAV94P/RZEociJfxKUbn/swrGb\nRjQ1RXXuN5YAazxq5n1TXNDAcJ3z6lfDVQ/lWKoAlqXFnE+783AxubeWhzIq\nEXTCIHMIniJttIRyEZx42V/EkYortMhlAlUU9X3rWyRspMy9C5iFsGCZTfgr\nsBwXEppsv3dQTFRJ78MxGriswEPydmTXEgucV+HihtLlZuNHaXKBYY/ujNiw\n552mNZaLqblEq6h+Rt3L4t9ZnBxoSp1WEd6jBTtVLtKT+AgwfwoWbxDZpqlO\nWeSzn8mf77tHtVILigVaGvh2t3J0lSoE4fPNTSaRdHPHNRUSog6TqzcEYYg1\nwW4VWJ0/HyKwTgSzCjvlo0bAZOtFCqYI2nsnOD5UO6Gf+1OCEjRTouawhAuc\nfRX8fDtQfpW9pinfXYT4dH2FVae92x6ebj8dTJ5TJHt0W79qNGmsa8PMPLoF\nQLniZURMOzXCiWWDKEI1jj3fREawMYzduIsdCXijlp4OSuTuRDoAWw+4PcTP\n+6SKg9yZICZTdjsDJp/xMBao3glbQ6QEqv1Vipe4bf5xu9/n9tS8uLRhLDZV\n3aXJIN3iEg/pAsSFQJXIXyq2TNr103+zdVzLOpNLfXBjDB4S3bh2DnjQ3NTZ\nIADpcvqgP3UjCE+lgQSV9CjtQQEUuIHJTmLF/wor7gUFkTbFCafrKIChW8UQ\n8EEs\r\n=rJwE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f9b096d603a4580c591c3bc10b03f23e76cfb96b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.6","@balena/jellyfish-sync":"^6.0.246","@balena/jellyfish-queue":"^1.0.168","@balena/jellyfish-worker":"^5.0.48","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.116_1624110088630_0.9493185763761451","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.117-renovate-internal-patch-d8b2ecad420a177ba3818d8376acaf9b1483b421":{"name":"@balena/jellyfish-test-harness","version":"3.0.117-renovate-internal-patch-d8b2ecad420a177ba3818d8376acaf9b1483b421","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.117-renovate-internal-patch-d8b2ecad420a177ba3818d8376acaf9b1483b421","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f8998f7ba703b341eb976ed8b9e8f5440d5e926","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.117-renovate-internal-patch-d8b2ecad420a177ba3818d8376acaf9b1483b421.tgz","fileCount":24,"integrity":"sha512-s7yCoXafo7CFJrbwqDTCZ4TtT5Bw+ISZZLQq+nlmJFOjKTcR6NyCP/C+D3Pv+jICc5OeWOQzecBkDoPdWgCmtA==","signatures":[{"sig":"MEQCIBDxv14YQc5rQq/xpWckNLXdQHYXd67VeoEKI6fwR2nBAiA+RKMq47H48d1kfBlNwF4KUbSLSdVPZqF3TXhojUfINg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzgFjCRA9TVsSAnZWagAA5JoQAJOGF9UKVt4D+zgNdKLl\n7Wc1djhDbHBqCiX/iu+aNuJESaf8ICfJb872K6ZI5+2KEDnMldfBJ8UKRVTL\n5KWeKA1L95dIhuK1GEmb8XQMUOdSbEAD8XZmvMC3cZTc40WsC4isj/5zCaVl\n624Icc+8v7Q9n/HsS0/BscUaC6HJK5X9cFha3VyxgX0LZqNb4BMEfLjwJNTU\nHO5IbDdPHc8x7T5nRAYjQe9zVzl45LeQcEGi2AJqW89NCocu/x4Evat0Wnbi\nOIM2T1NJeYKOnGflPVGS8p++sa3AvBH8CaXaD90i2l2vwv8Yr3yNQ8GoLIpk\n0sN7BXdp/yZSY9TYUrBklDlaL8VrNzOd+j0L0SmbpD7gFXUbJxTygsq55Jxf\n5l986FQGlQi+90ZW37EUDtM67an6jFiYDn5GWnh6y2xCwSLAWKgym//RQ0tG\ncETL9YsV2KMGS7PyrEUtmh8b0kJcbMq1AaNNtNTiR2cq5fNgPC9F6TKGshxP\nvJ2gsI6wdlsylrJGB0SEhb3YOPo1fnN+KFgKDSonQ6QcjAthvGXc7goPyqu7\n6UXq8c0JJJbOxvbRCTd99uJ6enVJACxhMYUXBmge+39TC8wQ6egTmH7/1MGT\neoUHgWgEZjdehJWURf/qKBmi9D9TxAhufyfMWTS7OoUfcEamzdxEcYRg8jO0\nHIAW\r\n=AJkh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d8b2ecad420a177ba3818d8376acaf9b1483b421","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.7","@balena/jellyfish-sync":"^6.0.246","@balena/jellyfish-queue":"^1.0.169","@balena/jellyfish-worker":"^5.0.49","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.117-renovate-internal-patch-d8b2ecad420a177ba3818d8376acaf9b1483b421_1624113507232_0.7661195639163827","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.117":{"name":"@balena/jellyfish-test-harness","version":"3.0.117","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.117","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b295a9118788d78c234e61ceda87cd4ed3708ed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.117.tgz","fileCount":24,"integrity":"sha512-vcxfkNCiMhqID1NhileEc7DHdWN2ACM8JKQGB81m7vwCl5Q8sEzMCM0ATimPMhs2Muso15i4DUiiJoDPNEj3zg==","signatures":[{"sig":"MEQCIFmxWR05R7AbEQ8zMv120qKP+pJa/R80Unml2bpVHMF9AiAfI4wLMbj12y84cv2mEahnIC3FA6cRNIPD5553kpuf0g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":117918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzgIsCRA9TVsSAnZWagAADUAQAJ1hg+wEhrVYaKF4bSTP\nCsbFaumEhDzE5WpngbO3rkwwF1YY+fxxKQPP+xuQcsdJiUZr9pGIDt3jOofo\nTQ4TWVcYplN9JcWF4jgXMZlH39NEkVKoO1F5yeRpamWZZ0FqvLNanshueiDR\ncwL1g81aGW1shZakMM/pssWcmMYfENiqm67SMhYUqPEsW1d61NwppmMayfsu\np/pHkLA3DqGykeGjW1+aP1vZna9wpM5+N5juGZPe9hBCwKLfdNljfeYomVEO\nIKtNDPa/ANVo0R23efX/P2SAhNU/9UFJ11Mio3VGksiHdUhiabxVkTvRIY3+\nUQPtUfoRsMCNTfSNXytdCcRPyPh5PuwKHdzgfg6mGsxDSuCp+hsSoB7KZOf4\nXdW4EMjiaRe73pw5ZCZKKM8fzlphnC3JKGQ4Pp0i3ki3rClQ6yqM+cecWobO\nde2npcSYUXuSWHqlfkrOgz19QPEZLQ7W/s7OPUDgZTxsnAqqowE3GIE4wXEC\n0j/JIKnTvxP3WOtxR3WvievJ3rmyLUYh0OsZ8WWe9SDIp+cUXenQQxdbrZ9N\nw8Qg3h3i4zY/lohu8JpqLUU2wlXmsPUw9xqXBDU2vwmvm/+tJ2AWkRhFG6Pl\nvMq7TyqcOfWSh3IL2SKzQmCdYkHgDejWUGb3s+IA4AnCV9XPU5dfQ0bzzcrc\nWCt2\r\n=2sVy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e1038318d885ff0858b569194e0d95cef53f413e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.7","@balena/jellyfish-sync":"^6.0.246","@balena/jellyfish-queue":"^1.0.169","@balena/jellyfish-worker":"^5.0.49","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.117_1624113708137_0.1556648948587005","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.118-renovate-internal-patch-5d681a517321e44dd7f8275364ec768f5a68a23f":{"name":"@balena/jellyfish-test-harness","version":"3.0.118-renovate-internal-patch-5d681a517321e44dd7f8275364ec768f5a68a23f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.118-renovate-internal-patch-5d681a517321e44dd7f8275364ec768f5a68a23f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"418ae12b6fa0a03f6bf3101ff1f5d78d9328534c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.118-renovate-internal-patch-5d681a517321e44dd7f8275364ec768f5a68a23f.tgz","fileCount":24,"integrity":"sha512-K8Kv9U7rzNauCdTw0BHICuAExgTmWILUA7UCuQoLUPvE+82aOBQqmmvYJctsmlOamGL4OtvAUC3ZqDgl1DnRFg==","signatures":[{"sig":"MEUCIQD3n4DIo6qZwXKRtM1bEMRPdWGm2yTOuremrM5BfPZRfwIgMuFicUeQK61DFcfGoUFP5cYJwHkvaI++ku/98L4Ckvk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzg8NCRA9TVsSAnZWagAAyEwP/06AkXU3IXDgBZJClrd7\n3lmqy/M0Hq5W+d0fGF9FcAEmbJGrUYLrAde5FwrAVkWPhHeMz+hqp1ZQXvwn\nQzGBYm3O4gIiHpHhWEA5FA3pa2fJJDZBrtBOQ8WxFMt+nTLxb599LU6IR0Mh\n4wf4vhdt9uuvrYrZkuM+fJENh5ZisdXGCI6XfcIa8eYwJK8lmslT218ertXj\nV+aOESPGSHkuKPobjb74wJmg2NxdNu4kYywYvjB3oKr4h73oJWGTgzT/QFrH\n0FMwJpPphtEANgYCPFQuN3wM8CRE68jJlHNuXsMddV7ImvHHrHaMHJsYIsWR\nSS/7aJL2fKWo5B27MnkBTvQFd4rDuMnnNFeplzT/SuqBaqmeKcvGYokTIHix\nG8zCFpkDdiYQDvUbnNyE1Be2StMI2eBGT84GAVP/ACorNbt1j1ghJ1N/sdx6\nNOaiTybF0sYGCR3VS/iZ6qiNj80gWp1KO+Ky7OFIyESRRKE0ngRmbSj+w47p\ncbKCJr193Bum9E+s18J/ooKalFsNx4S1+kE81Uqj4d1WVn/gRLJRqGrnKYXY\nLCBG/i1bQjwSI6aiPyinpyyqE044Faraqf/FFEKCtA8RZRkU3wEHokAC18+Y\nn0WHHZaaZ+QmBzhROuRbU+0TwKR0qt3udVHBg9vibjbb8+i/2+GVcS93y+eL\nKBv0\r\n=Lnm2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5d681a517321e44dd7f8275364ec768f5a68a23f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.7","@balena/jellyfish-sync":"^6.0.247","@balena/jellyfish-queue":"^1.0.169","@balena/jellyfish-worker":"^5.0.49","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.118-renovate-internal-patch-5d681a517321e44dd7f8275364ec768f5a68a23f_1624117005285_0.1659687986770626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.118":{"name":"@balena/jellyfish-test-harness","version":"3.0.118","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.118","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb9e64acdf6e8d510cd014effbd6a76a8a92c94c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.118.tgz","fileCount":24,"integrity":"sha512-Mlwu/I/xCE4rcfLoyF3ubzl8wTt9MYb9RCu2R8Zw8y9OReLgbqX1tql/OFq6G2/Zvj13Xaho7RDerXZVYfYHBA==","signatures":[{"sig":"MEQCICpGwIOTP80YksGN8Le31krZXxFYLHT8ZDYUqI11L+IJAiAu2cAlZDQLvnl+p7fbWX/DY5EmoCPfXxq4SDI6c7u6qw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118024,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzg/jCRA9TVsSAnZWagAAdHIQAJ3/KppY0P2J+rBeulgE\nPN/bCeJ+XiwjZQsrMTcuOPTQsKRzJqKZEKqd5a4B+JEzeZfC7B2+Zep9KHjS\nnfv6avAH26vQEigM1jhKtGOX4KqB6Hk0zA3xQ/cW3W1nNPhAkA9OjkVBOcIp\ncsWNN8gh964M7keRrlBrV62dl/u6lWDw7pAgsifkUIVVl+v/3KtOn5GqnQBn\nxuEncPHiYKjIqLDUC5wuGX/AoMUKF20m0lM/NbN7kdyNqSi6VHjypwgx6LcP\nSwSSKp68QNZOAyhF00ng9mJ/5lq5HfIfU71t94sNwXssnoZGVG2OVyMX8XDX\ncJ3Un4WABb7s/bN+LfdrON4D9avAaEepHHaynn6gphutb+e0on7ndq+o1nYM\nYhADD4gqUShEdsOqsaHd95fW2Pi/r/aUbEVz5zZCKedozmqkqMmCfNQJJac2\ncn8QzYh9QSDfD7TZtTDtlPw8KIbxdRLlgRM5Xx0pJP6XmVv6uH3Ip54oU4C+\n8Ot7+E4yp01Yc9EuY84tKSLUb7ZqqgVPaLfDzUCOE52AAUlDuTGoMlOACOBK\nL5ilm5pLRbPq/Yvw8KJIscMKtQdT6iJCCRk4bPkiUYms5SDmRxau1B4dtWDf\nqIQUrspg5wZ0anlYKIYhIwY7X9IgSN9t7PSPzJToNogLhgylEf6aB3Rw3voS\ngzmm\r\n=PXMv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5752599ca32fe6aa4205f8ee6421060cc6423190","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.7","@balena/jellyfish-sync":"^6.0.247","@balena/jellyfish-queue":"^1.0.169","@balena/jellyfish-worker":"^5.0.49","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.157"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.118_1624117218844_0.4447772736130411","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.119-renovate-internal-patch-e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505":{"name":"@balena/jellyfish-test-harness","version":"3.0.119-renovate-internal-patch-e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.119-renovate-internal-patch-e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"57035b13cb7ba09de4f94484ba1010576900d631","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.119-renovate-internal-patch-e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505.tgz","fileCount":24,"integrity":"sha512-dsDpgumtpNL6La/pcPikou9lqRcmLbqbAKrCp68hdcONTN5xGRkLLAdyOwi0nQyWkH7udpuxqc2h9w9Fe3mBxg==","signatures":[{"sig":"MEUCIQCVaA1vjinD9BfeMxDNlpt62XgfOg9Ty3ug1cq+EcktqwIge0FPcK92G2/ToZQdVShpw0I9qWMMK2n6l+zpAgq4dl0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgz2rlCRA9TVsSAnZWagAAt0QP/2OFaYplF9cJjBCyZ4MI\npghjqSxHEf/Yqu5tD46tDKUGInszrwEZaTSpi8nqy5YMRgme9hL8mWeQFNHo\nhVLiswjA2dINJwvP32OT3uVDvWfN24D5X5Ygy/CNzjs4blqRyAnT6+1U+Fgl\npfnoqDlQkRaltILLVbecy9gOUWSuwMc0f1wvaOYltCPcdgOegMvHBHk8wqO9\nS9UMXyCB85r9hM1IpmlVBiQ+jnTpYyTG/0H8GAxdHXxvCTi2wehN2WrFP1Oj\n1dcZ/ICTWxuLfSIK8BIPADx/BsdWyBRMyXPJ451A65IDDwqBZ04slfrVO2E6\n7U3o4lPEg2/TZRVwxjfR9xjX10g8Y0cFNKK6/n01SWTTpKSwYt66qHAPKNtL\nKhEr+0OejFUpFC3hmvUvV/Xjx3Ktk8Nl9ZYbaMLaBV4UOtSB9sOwprt8rAgD\nxDUT01Jo6KtqciGg7e/q93EI5368AmGwfhAT4+VvVBOFfm81zSNC29afo1hr\ncYr3tLQJBfdpOpeHXFmJe/+ez0SbFEtGdkBivH4xXU8mmMwlsv6hlxJQELGO\nLTRRcnj8P+bCQGEDj5dkXFAXGEXDfNHmYPfa0ayJTfo5Ste8JauD1z6/fJLD\npb9Tg5VQbOssMGEOsPLytkUXe4WAJzLwIUG1ZtWTnIZIviSqipwgQo3d5h8K\n0Iy9\r\n=gEyg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.8","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.170","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.158"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.119-renovate-internal-patch-e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505_1624206053330_0.6527433543958254","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.119":{"name":"@balena/jellyfish-test-harness","version":"3.0.119","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.119","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"564a72abd047f1557f9d769a7a902d98964fbd3b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.119.tgz","fileCount":24,"integrity":"sha512-JAtE9OX6XkPK3BXLf0iYC9dB1FXmm9EMAZgEXvdQNtiAVxXcME4j+qpeEHQWY149ucyK/GVBga+79HYilIE0/w==","signatures":[{"sig":"MEQCIFxhB9otcHhS70C3V+VS/tNswJRJHxe0KzvGWQLlwtJ0AiBgOndhB4lJ641PofhYoKbdn+U9V7ly2Xc7Qn2jhLIvCA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgz2ueCRA9TVsSAnZWagAAD5cP/AuE4C8oEQejGoKk2LAw\nsTFefK+xukNorsexHe3NWCTfvIo+lchilmH48sJKBmhbW2M6CmO5pr9f54fJ\nexcNbuD2rVU+nOT4/MXe9b9H8oGpvjSNgnVhqOEm11RIid/ZbeOgB0D5kN8z\nko/KtlP9jTufWrl2/gQdU0+182/xTVYOlxceNPVwV0HvufgF2ec7dPmzC6YR\nM4Nyih+VgmweOo4UUZP8msvDHzb7U+VgE0XV9GJ+Xgq8OtZ1ZQh117z3kRlp\nQz3i/jkecNTzCzoGVuJnEwyZPVYgrM2G+XKO7mJlxodVsIagNdDYWvzSbTCy\nZXbZ+b2Krs5yBk1KdOT6mTTWulDdFHaJcDBjBB8wOeOBQnUSHX14qODvbypX\npt2EflyentOSHjYgLj+jeapH91C6OZhTNcFCE0faU+Ae7WfnYEdvRBZomai3\nOlS8YQKvNYVUCGAQXsgF4plsPV6IrYUvEBwk862TGcNyzX1YILXGOqNMfta7\n0PHCtVTp/r7djNN8ApxOI43w094IL6UpyaznJqwAppsZzNI7OrF3aFRApqR8\n5UGHQzX9MTIuD7tDJo1Y03bVSc7MiyGgQjSV15b2jsFoOLmqWgcB/995Srmt\nl8BVsD2TnOxbVQ++9W6o0jjUlUZ04M9874DA0QJqTOfbHf34HSb6CW61LrpG\nhj7w\r\n=0Ivd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e93d3177ba813b9b0b604b3908e3719c72f9dd95","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.8","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.170","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.158"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.119_1624206238103_0.5912003194584021","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.120-test-loop-field-a828e3fdc05959e40c97f00a11640ec8b7c883ce":{"name":"@balena/jellyfish-test-harness","version":"3.0.120-test-loop-field-a828e3fdc05959e40c97f00a11640ec8b7c883ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.120-test-loop-field-a828e3fdc05959e40c97f00a11640ec8b7c883ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"54af6232067c5e6574c326d39618e2f09ba4f792","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.120-test-loop-field-a828e3fdc05959e40c97f00a11640ec8b7c883ce.tgz","fileCount":24,"integrity":"sha512-b3t2fU4mlk53B3Teiz+ObHjg+t4irQ7Mn3Ql3NIAZUhsXj+PzJvzXUvaihoLrtfPVgWb1WHMv13lDwk4G9HEjQ==","signatures":[{"sig":"MEUCIQDbPsod2El4G5Ww783CBLuKhDTj5AjqJGWNS0SwDXPjRwIgcR0BFs0cDC3VGE2ircb/OjB/rzV4dqUP5cDv/WdU8Uc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118295,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0XMdCRA9TVsSAnZWagAAqQAP/jC5SjtpUiOx8uXZgb1V\nhEGqfrx9hG28MZ3QSUgQioMx6LpwujiLrmocSM+eO+FQ2jxYRdatDfAVFubt\np1fjo09AVPqEI49B3fx5Ie3TriBdzUQOPbdrt9GNhTEqAgnrusw1Y8pWbU6x\nbiEQXes3v/KuMjh1Ve1TGVmnI3TE+/wopltFZf+CPW2CEKFtF4Fitty7sEhZ\nVn4Qxk0YGakXAeH3hnVoO+OgXsw9OJfN8GF/+zh+fTjKthrFLdRKPdwbS3X9\nkRTBfMKbMg1ZufA9eZKpYV60DFbVcWNCW2XRpA0kotdbDFZSKv7KIb7uAwrZ\nyhPWb1mfr0Q6YSv0yHZk6xHmjGEwYI2hCHAPx8QTyFQaRMSnDJHh7U2gKJWa\nsv9NRiGeQQFouajJoavsVP4v+4JUyn4z2fKQ6Tp859Eo6EY29Y7eIHmcITYA\n953wsUXxOBudipkfrDtJ3gLQOqnUNGvvczSntR4sHIVii+yosjZRK85zjxTP\nA0d6I6JfGF9dFYpI5oHoiWs848+ePRl02y9FhNPh8efz3OouAqK4oiuA0HaN\nRGSNuNqGS9olQxXSLFpOS0QihlmmwHZB2Om7ytAD5Bp9ypY2IsLgmA/ref4q\n27hGJr65lESWN4CYRx+S17R7bgWjWpCszLV8ocqLXOv50ZtRUmSj9/SFujqf\n1yBH\r\n=llWP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"a828e3fdc05959e40c97f00a11640ec8b7c883ce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"4.0.0-add-loop-field-ts-47d940022a5408f9ce9614f0f72206f7d64e806a","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.170","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.158"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.120-test-loop-field-a828e3fdc05959e40c97f00a11640ec8b7c883ce_1624339229285_0.6225052078620583","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.120-renovate-internal-patch-ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe":{"name":"@balena/jellyfish-test-harness","version":"3.0.120-renovate-internal-patch-ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.120-renovate-internal-patch-ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"63c722acebea2c6f3e0f12f0734fa5b297fd0256","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.120-renovate-internal-patch-ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe.tgz","fileCount":24,"integrity":"sha512-MC8ssaK7194MCCk8eufWYsqqM+Snuu6ophFkRsjCxt85ptm1vqVepTqaJdDZ7bx6yTgOSLKgG05u/C0eWozdVA==","signatures":[{"sig":"MEYCIQDpKf0dV0POe9cQDltAiTdw/LTEw2UlIuCpV4HYtpRqqgIhANs47Wq7ABfXbb5GFCitUTFQV552uWfqozqYoPjVWcwk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118239,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0ZDMCRA9TVsSAnZWagAAIskQAJRIhdx34MgGYWPH+yA6\ndACSf6Ix//1NUgs++1Bdc2/yFwKxVIOysUZXd5yRHbI9zYtZ1vKaVsyCZPX3\nqCFVFgk2TmYkDTzJ+zNTvgUIvkRO7OcaYBGEib3qvKRBAaCwyxbRARQlfM8e\n/wd4UFzQpbqD9hHzcBmzyAAwZkUP5xEZdhR8XghcSDg6xtzomKUVf4tN0VVU\nz3hMvmabHRWp7jRNiF5/HbmAMccORiQWYcUiIaQhWcVhMyWh/djLsj9pFZMk\nfswS/jcMAYWnTssIir8+IHWsoPpz5R1w6bvPe1M54eaSFFQfktsVtMACdUBu\n9yPwMjbbNgc/oprHBkQolWahHnQWQBZQH+Q5T5T1bBsaoOPEQSaIjgFz2tyW\nYVsKQtMu4QuAOSuwyvgB+yP9c1OxUdvEmoTEBFIiU+8GX61QAfRVxnvVhjah\nMh1ucL+aiBX6Njxj3FyblHWcvYnSOOVM/4tKpvPlVHNdrpDY4krGwyRbTV6e\nbrzGw2ojHjID/SuydZwHxrE6Ac0W2mwMH1UZ+UHH3aIRH18LHOMyqR6BdVMh\n/GHDyY+Oi9lWrbrs35fx/PXG952osI+AtwtDNhot2DFlot56ZH4lNhBoFIGc\neU9WNOEHzbKoOIz5qSvqIb6kBttM4IFSOD8gwJKsAMIUJxI6EQrFfwB2JszG\nk1bJ\r\n=ro8w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.8","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.170","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.159"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.120-renovate-internal-patch-ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe_1624346828151_0.2984242246144553","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.120":{"name":"@balena/jellyfish-test-harness","version":"3.0.120","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.120","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"77decbffa6d12cc598ca123efd7bba21c21c1d70","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.120.tgz","fileCount":24,"integrity":"sha512-wCyRdAPt2hsC5zqnJUxtzusmM3DBeZiF7WNBkafLU3kAGyXUmgJNNQeroXhuDz50TmKxCwkH1W54SqtX8ElW6A==","signatures":[{"sig":"MEYCIQDfoegjfKoZAeTZnGSP0F8Z277KBXQneejBiAlCRZmX8gIhAK2NwDjNIFpwbZVpJNhQCG/hP/HgUQQA+r3mnCK3eVc4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0ZHzCRA9TVsSAnZWagAA7fEP+QHyvxBC0oMblKGHAU3p\n2Amkn318EdCzZMDCiBNX9/coPm0g+Fx2g1XLH4kuuxPfXR2pnT4MwzZsdMTi\nbhdC4iBlh1ibW5izr4EuY497yQ9+DrF7SyDSRz679/ENsZ6yLnWDh8W3Fdcz\nvEDU/7BjjUZfbKgcNusCnZ3kEQcQEuDX0sdciRla2bv6gp1vSeVC/PQP0QgV\nTk1d+/c1P/bLSTihHGBMgc4trbops5DWigl5l+lS985UvgmyPLatERvRo9qC\nYSC5qwq4COxbiu2hiYb7s0y8YQRac4NJHMGiddOa4wjffH7u+twDHEGu3tIo\nCCBZv8MBXzEEvgP4mdYCXh7DgK0Kmju3q2AMujphkqqcvSIsLg3rO3C+gjYj\nuhDVdHcDrievQ7L7rYg2y4hh9/tb65DWwR34D+NAHfXUl32i7Cgp5fI///4g\n3yFOvFejEFrHN5O/OrJnHVY6fYZuBRRghwAJBa8pz0CpVyGvsCG47kZIBauV\nrT1HdFZHCCqCtvSGR+YQbo/xOCxpbKe5iDcSBUfl/5a5dh8Iwklp+XBUHh1F\nKRBpIeBEQS0RZlAddHneDF/ocyYAykpAMO+ASSKTzSsl0V0PWn09ecFMT0QG\nTr3MiTW0mbD0XsjtJuYyT4MQRJwCA4biM3Dedu0RmeXFLGIc+kOMHc6ugu21\n9phU\r\n=d1qq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fe435f5247bc9cb24b48bd7c5b4d6eb27cb2d6fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.8","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.170","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.159"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.120_1624347122616_0.6769194518639499","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.121-renovate-internal-patch-ec6ba0e956400fa0d4133615d29844cc0a86f371":{"name":"@balena/jellyfish-test-harness","version":"3.0.121-renovate-internal-patch-ec6ba0e956400fa0d4133615d29844cc0a86f371","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.121-renovate-internal-patch-ec6ba0e956400fa0d4133615d29844cc0a86f371","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"03f805d95880d170aa8be8a4da899438fcbd4ac6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.121-renovate-internal-patch-ec6ba0e956400fa0d4133615d29844cc0a86f371.tgz","fileCount":24,"integrity":"sha512-jupDDMnjh2yCp87vJiqVIec8GzoOGgT7eAAdwGpgjXDhrPNeKrKjqjpdJWsjUKG9DzBiwIIGr/nG28IdC+NKPw==","signatures":[{"sig":"MEUCIQDVzFhQLXL7DsMHih4/4RHF8wdeVtKPjn7/AwBzxKoUWAIgIjakwiRjix5dTVXQyDsv8fOg/r3oyERQMorPNi5rnFo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118346,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0ZM1CRA9TVsSAnZWagAAq3MP/2nF35QgJOQWWM9v72DG\nfVKvYoGWO7T4CnLQp0oYHlvRPE5rdu3KR6ywl+vV6Lue70KgVZnmoN4Wj8Ww\nGi0CVjv2tude7AlKlz/xaiUK3F1LChJZ+GUyaqQrY26T68Jug6IyzbxSSBAY\nL8wXImA5XS1nOEljQ26YlNsgKH6ac+Ic5UpCZIX12ObDCtmptZz2wyRqDhdC\nn0LX+ukAONWqyskQ6VvUNj7Wd/AjZgI6o+Zyx2DuRuGiM5NxtbDalLtj8Wfq\nZECDF9mEiYPfBBQTfmlJk2nzznW2cGBa/0AyZtolL3hmm42QWCqeT/3rIGfX\nm2t0XOtd50CdAemFFtmB/ZAURkRSqbsWLQZeN1Zrnie7IAXqDEG2JfbIvD0+\nQFURaGW+05Rx/V+6e6K2RO063v/yRivKm7MUNgX6e5o9tnWcct+zW+Mn4QOI\nCWtk2uUEnwQsjhnyvsTx+RbJrK/YROyc1n9A5ozYGSPy3UNYEu+mTjRezNuP\nycIUTHo0e+GXZmm7Geui8BjULXDEkW2qW23Q9cU2hTzfM+04Ix9VaQZLC7c0\n4AYemJW/RxOixWjMhbSQnC343o0SAD1db8BmycCHO2R5LYNp////5pXQ/zgb\nR2GZPpFFzFc4+WVYLq8Be+kOhjd76yFNcrdB9iOxkgp284srhJsnZCLqz8LW\nLGEB\r\n=Xefq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ec6ba0e956400fa0d4133615d29844cc0a86f371","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.8","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.171","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.159"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.121-renovate-internal-patch-ec6ba0e956400fa0d4133615d29844cc0a86f371_1624347444604_0.8323343826708889","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.121":{"name":"@balena/jellyfish-test-harness","version":"3.0.121","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.121","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d73b8f856f811f704754a693d2d0cf80d71a6429","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.121.tgz","fileCount":24,"integrity":"sha512-sm2OaUulHlIIAWuWW8SCop7QODeno6wv5Wd0B+w5O3ulpLRmpLZ16C3MxLcu6z7Rt2BQOMHszZdCshAnadXfgg==","signatures":[{"sig":"MEYCIQCLMBl4S9YbQI91vTfidIzEmeQAyeAa1u7XtuorD4j0jgIhAOcunPupDLVQ8qwzTiLfNpiRwGYu1SWxGA73BazkllhH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118281,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0ZULCRA9TVsSAnZWagAAlkEP/21nsfQscLiSF/DuQKCy\nrIyqskhISfCeYSq2vRSqzCCnlhQqOUgafs5EfZEcSqqzZR1Y/grdBONQzSpM\nz6J82dFL/sBxMl8he9GcLZsoOXybPpsyoiyLT1hmZx+e1Vff0fSaH4qrWqqP\nv9yjifx4MqXRuWiLTlKPYhgbhGoKX6BE18FPAuYhaAQ2bvj3RyMx3+dI9Bz4\nc620V20tvXzQS4JTXQE3pkvlw5zIDOePEIv8tY7BP6Tf0vFCyMVJxw4X9+mK\nGhAflwNxJ52gFf6R/qaLeZO70E3lh0PsDha0FAgHP5yDobJNUYvWxobIxVCo\ndLaekROnW1GW8sgA7XMx02rqirGdt1ESOHBESoDlyIuSTkxnNDTsmoeaS5r2\nQ2T3Kf0CWfDMH3dwfaCGjN0HVrA69vMpqTen/idJcdHgI7QrSoyVI2wRF46F\nhTxmWmkTbMnlK69KS3Rz70Xg0w8WVTQVO/M3Jv7vRkt+JyJjUhqwvc7DXRYp\n7g9pvyf4UeG4OXHfZO9HGMeBo02L0T690Bf6yl0uEuPlQ2qd6DSOUd0mAJ+P\n8466Pq8CBAOZmD8TGyIosSjZR9mh9yFu6c/qzKcHvmEWDkvuT97s0u565CzS\nilY9ryhxKFpeWVRDerKs6QI2P6MmLVhEWKqstlO7ErJIJ/grGZ+2nWYMq46I\naOBl\r\n=aBdX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"09f7472fab6e636e2b9e405c373e1a72a69005cf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.8","@balena/jellyfish-sync":"^6.0.248","@balena/jellyfish-queue":"^1.0.171","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.159"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.10","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.121_1624347915116_0.4277327497273926","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.122-renovate-internal-patch-711e4a097a47e8d8a8236a600cbc775b9a3963c5":{"name":"@balena/jellyfish-test-harness","version":"3.0.122-renovate-internal-patch-711e4a097a47e8d8a8236a600cbc775b9a3963c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.122-renovate-internal-patch-711e4a097a47e8d8a8236a600cbc775b9a3963c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"800979d92cc081bda34f775c995ab7f6b7d27fee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.122-renovate-internal-patch-711e4a097a47e8d8a8236a600cbc775b9a3963c5.tgz","fileCount":24,"integrity":"sha512-92ww3YOQDJ18HgU6vYb98gib1S9ybtr/NE5PGdGsTqEQOqsOw9qQZp7kKJK+NuFXp85QYj0KpUSpkxZkMGILCQ==","signatures":[{"sig":"MEYCIQDQavIYS9Eze0KGzGLzCcNWEBDn7XqfRUHttSAR3zotyQIhAMFcTTTIqnNbgEoATlrfue79AESlBs5jEZobtCifTbQu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118422,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0aGbCRA9TVsSAnZWagAAHmAP/0IyMzx19vIPnvI4PpaW\nGG9D5Ym1It5qJVzthajA2Lgt9oAEaiwbM9z5/aB/5vcYmayTMgy7BmEBQ/xb\nMUJnwAWJP0Ftp6pQ/LgEu1PPdXr6PRQOUPFcRn6hRnF54OVvDhSfJgmYP/Oq\nCE2o/wuB+f4u0ljBOC/wEAvRkEGL9WaBGclBHKHbuYKbrWY83VQ2z15H7yc4\ncroI2wxJrZjQJP465ivAbqbsrm4cXbJNdZL+JyfRTdUe88MuqtNLEBFI3bcM\n+D9QXRwLHO35MA77Y44rHiLeiczTuLMRc1nKQdaWpXUVSTqZFPUrFXE17fRw\nPl/PJK1YIcRtwVfFdWGhf5Pz0nnv1H0uW9cl5wBTV3phK+jy1bE3WZyyXa4G\nBwRDzBCnlc71qDymPGtZyo+voHg9k2UZvfEaPQ6bM0853ulSfoucnw1SBHI/\n+/sPOV2Vqb3A0oJAI1oZwTmmkV7OqKGK6ESys9uZuIybBGusUvGAxvbF6aZN\noa7vIxpa+D3Ke9rPrItL4a1+5gijBF8NWYLdK/fByyq1xC13gf3+NRCGmjvB\nXDwkucHlGP45xEyp/Kiu+zyujB1y1Ck+YeJstdoS85XM6lkRmz2xY4Tx24Op\n7p7GMhqcLLGcR7JLBWyQwljLCYhe9B4O7hxyVEnE0F585cInp5tIwrNSBFZN\nFDR0\r\n=y5PS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"711e4a097a47e8d8a8236a600cbc775b9a3963c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.172","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.160"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.11","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.122-renovate-internal-patch-711e4a097a47e8d8a8236a600cbc775b9a3963c5_1624351130374_0.13800608307578632","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.122":{"name":"@balena/jellyfish-test-harness","version":"3.0.122","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.122","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56280bc1c3878d70a206c03dc88199e3e9666124","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.122.tgz","fileCount":24,"integrity":"sha512-8eZMuuPRWlNCbHNqY2sT/voXh6jfNfgxta2uNdaS+brafWYQvkQJo/7NWD6fpYqypTFWl87ZjpBzYWCw2Tgviw==","signatures":[{"sig":"MEYCIQCZdHIQtE6YAL53086CUxxc1jYvoo+xxur+kAv0thLvzgIhAP2Aa2dD/eouEpNsoAW74GGY4oOGcz/DkzqnQdz1YtDo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118357,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0aKMCRA9TVsSAnZWagAAcWcP/3x9lWCj968QSi5hIdSK\n4bobK2xydXuCC6XBaqkdtjwSFQGFh34QZo9d7D3NZEQYz1bhNsMbKd7LZjWj\nfAOEx+s1fVwlOKzmhI7x5nkXmrK9rb24fIFbJwy82tg8lcpVzauwCLlxTOMg\n4453X7Si4mSzSTL07bxbaW/0zOxVyd2RYKkemZw+O5VDA9UTJDH6X252Yx2o\niN0G73ymu48i9+bYXa2OpNXrLq6VRIJWr0QRnoUB89Tyu0ihpu4cdwBSHXFQ\nD7PW/k3fEkIc42as9XyvTJVaE9ahR6Mtal3Ck67tCr7yeKJ/WG6/oeBHGhgt\nkGJc495ascDHhc4sGgNPaOQzppzojCPZbYseRP9xyBQVZUDLqREFq8wvFY0S\nxThRcOcwKeu6c8AB8K9n4S41Y6YLbvkDz/tYuuikui6vItPLdsMqIwbV4LP0\nZFELAGeOadUpqd8ycBEHToy7ZjkZf9z5i3rFPoiFnWuW0EK67fmDcl7i4ZFX\nrpMlL+FZZXgxPRJuJliMBZZxoVZF+VrjJ7kj6uKXtJM0mDcqU6JTPUmAYEe+\n05eMrZMhf3CWl7YlgTb2oizKir61jhDj5wtu3WjbgHOR8N+5vgzlqEHaqxwp\nTD74riGaPC0UJA5quOs8WHo/9aBhqp49i3QceTGI1WwDvWgCq+vy94WJtKyL\n40fK\r\n=5pXz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"eb82179b776c3088c016a672d305bc94c7732db7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.172","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.160"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.6.11","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.122_1624351372446_0.5146758818206214","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.123-renovate-balena-jellyfish-types-0-x-e483e6b1bf7aedb07839223e97e7d32b083a56d4":{"name":"@balena/jellyfish-test-harness","version":"3.0.123-renovate-balena-jellyfish-types-0-x-e483e6b1bf7aedb07839223e97e7d32b083a56d4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.123-renovate-balena-jellyfish-types-0-x-e483e6b1bf7aedb07839223e97e7d32b083a56d4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6eaa91f3f921321c10719647af43f01e22c65fd0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.123-renovate-balena-jellyfish-types-0-x-e483e6b1bf7aedb07839223e97e7d32b083a56d4.tgz","fileCount":24,"integrity":"sha512-0JCMk4f53ZNw912otFNt3kZvFrS/uWKBUFLOtbM57mdost7VXBihLgF1tjAEpWEEnyhC0i20WXe3O1PkjdUNgg==","signatures":[{"sig":"MEYCIQDep2lZGkAmx3dEYN6T7M5DGzpi08aILXFSG5++5e1aXgIhAJioj18CGVhPdI/5kiAON/LJYX8yi4bHoXWE7h0vJN1r","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0cC8CRA9TVsSAnZWagAADpkP/0S6UXQhzOmj/5IdXJ8A\nfxV0ZKD3DihSDz5XQhusWVfNVqjYu729w9FKkBLDqjk5h+PAR71vmAeCnW3n\nfcXynnbIZYH4yRUjbiWjudnVcAi2d1/HjAlo3LUS2ycem6Gub6giqlWVlQVX\nwbzbSSTomPS8hhfTK6Y7ynl5RM4MCmT3GE/Eb3ZKx+r71zK2SP+J7UwAIb7+\nx8UM6H41wve1BoQndU1Aq3MnkrpcVFpLrLS1t+xkej24ODQOXUdTIIAhVnPf\nY2cbMSkZEwDf+HAgnf8EYAUniFIo0JTcnoYDDUcE4fvybJIV4ErgbHrCKfJT\nmtWUbgd4iTmR4NAEoKIPedqe3LDnLN+uknjmCQNee3mIPtapWlZkKDHvq7RM\n44ZqWvVlpuZptVY5NIiqM292c/xew0faUHwVx0PrIqsB8ujZtsODiPVYbNI+\nWezPty2KKC7/RxtPqz4//zjc2zu7ShozN1l0r8KQKl7BuphU7PXqunICxO4C\nNEW8wxXaUQRLX8otdT7vYObWx3OYBAvcYu+EH1a2gwsY38kW3MN4qnkCvdLF\nKq7ucqJJWxaW6k2a0xdrOHO3mxnrVKH6xKeAFfnf3EmJMwY94F+DwRB21oVJ\nDwAYJxvKW77aVycBs1yp4iYLtLt9P+3F041I36denVGSjaUL656+4GkCWY7w\n8vJX\r\n=w+vm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e483e6b1bf7aedb07839223e97e7d32b083a56d4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.172","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.160"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.123-renovate-balena-jellyfish-types-0-x-e483e6b1bf7aedb07839223e97e7d32b083a56d4_1624359099672_0.08357501359605202","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.123":{"name":"@balena/jellyfish-test-harness","version":"3.0.123","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.123","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"29bfb149cca60be1196b176beaa7c38006a8a8a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.123.tgz","fileCount":24,"integrity":"sha512-SCFZ1/97xqhqdSQ6ZjUww4tRzLi3w9K8oYINj7s7hxOta9bHqnafSP/Kz3CFjVGyIX1SZvYFj8+om1HEFw9LQA==","signatures":[{"sig":"MEUCIFRKSG0ExJJGkPO6BEkuz1b3xKiCuhW7kY/oC6mb3KHHAiEAq2vl/0lzfMS+a//SpTzFaDnqivLV6ikdW0/yIW5OVl8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118461,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0cGjCRA9TVsSAnZWagAABEQQAJMsz7FWLlaUy7qKMoiI\n0+y8S9VfQ7A4M9gp7r0KWWkaeDzA4cH6iy0w+cgMPMA337s7kB6yyvIzrFTP\nL+mbZdzZ+xUSemS9qAMUlPcD/6U9b9CVRw0wXqUdhUrPbiY/RrNHchSljEaL\nZjor98tqu0O0Ok22z21VzLy3bnux5KE9htB3ggTSfbZsVVFGEA2837zztNEd\nRAGAWOubSlGf127PjArENlC1SDzzJT0HsHwAXvrF8+aNjCGpTlpd2Wh2yWRt\nlO1SO6RkipP+l1hAWkJbWdLs1qbOFjDxpQQXAq+v69AUT0y21nYPI/xMcQjp\npkNKgVuAUsq92hEdOHeZiLmUDoJ6+RW1W6HssJu7sJNrPEi7IXAmgyS1J8zi\n4x8k4yuvQSZdapHeYMMNnjlMGd333fZ2KLRCfWPfknQxVw7n070QOO+CiHNp\nDXIPkH1EGoudFcz7ODolxTqQYDWt/y45bqjixIEOe3nVg1t4hcMkIDIN88PN\nbvRF8dnk3uq6/ua4s0O9hzw1laLsnqEmO4UcLyN0/8x4UpicGnG0f1MPYw9j\nw5YnLK4a16xlL7Pan0Cb6W5Hsiv+U8YThm4n59KTftW3KlipRoYbQhzJmSef\nR+bqBAt5oDcTDNQeJHm0WmosixuW8150URwz2hj/Yka64Wg+r3WeH31bG7WY\ntc+S\r\n=Gq6E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"05e734b878ae6d324faaa0b6530069bb0f9fdb85","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.172","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.160"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.123_1624359330515_0.825114073807538","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.124-renovate-internal-patch-cdc5fe3d38ffa6a624181164776c196cc8d681ed":{"name":"@balena/jellyfish-test-harness","version":"3.0.124-renovate-internal-patch-cdc5fe3d38ffa6a624181164776c196cc8d681ed","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.124-renovate-internal-patch-cdc5fe3d38ffa6a624181164776c196cc8d681ed","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf02ab7413eacb4636eb3d3599661a015516f4d8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.124-renovate-internal-patch-cdc5fe3d38ffa6a624181164776c196cc8d681ed.tgz","fileCount":24,"integrity":"sha512-vhQV02jvy1T5751kgSEeFDBR0829xWd/Iu3c0kfrdz6w/O29l3W4j3Yrxy9gWk6SV3YDCFMEYtdND7dMOkvg1w==","signatures":[{"sig":"MEUCIBIkvIdtkh5OTdDwVP6v05CA5kEmlFymViaLcFNfQeIoAiEAmfcSNxHnSN7NciCbb6hm6QxWTd8YrF7hKos6xQmYBZE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118633,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0cLZCRA9TVsSAnZWagAAXeoP+wfk6SkJF5dd0edtzLKM\nlCba5jD+OeqnU/uTrieg69P35ELiN8Vkj5XtY5IjLYZa7oS097G+3cx8D4NY\nMk1YkP/FO2U26dgz1p0zt+4ZsnkWoONBgwZ0GBJPsZ/zU66ZaVh0F3kTQC+B\nagRsyktqVAv9A06pqdTBVA5KTknmMKXWgVJqDApOXTo/LFNSSw/15u+eNqdG\n+z9kb4g+5KYMAQOQ/6ybncognwbGDBz7u295NSPNw6Eh6a6wnWR+UvW7QtLU\nz3JAJSjdtRcxsCVbYXxh919y1Jm5ZvDaTdS9uDwv5QSn4qKSxi31jcy/Zk/A\nBambj2NyBShjPMXw0MbfzIw1UdH1ubmS1aY0bVVhnwIEq5S8RcwJlrhuLoB6\nmVIZSx5GmoBLdH/TNQYmhtCCDjtASSRCUCxzErlrsTF809hxWE7dAl3eTXz3\nuxlN59PU+nUPa3wj7JqRF1v5KON2ffAnb/OIMEBSILlAoD4Abbk9lx7DqXnJ\nWzM1PM8DtBDsVZsMDSahjCYaF6QJJi/zW5bsLadScahgEZ0Ekk/FUT+1l84E\nnImMx5efAWowFBlKyvNzYJLRnNbF57dwfiOqgX49dsaGVczaJvYZWlvesbn2\nAB5MmhmvR2Pv05h4j+jFhfzOL0EzmLqvdMJ1O0+k5i7M7V2vn/6uILImnOqE\n3Df6\r\n=+snH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cdc5fe3d38ffa6a624181164776c196cc8d681ed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.160"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.124-renovate-internal-patch-cdc5fe3d38ffa6a624181164776c196cc8d681ed_1624359640850_0.2569727840388567","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.124":{"name":"@balena/jellyfish-test-harness","version":"3.0.124","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.124","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88451f8809ddd198b63242ae340e86f14734082b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.124.tgz","fileCount":24,"integrity":"sha512-hpd1hhdt7HoRgtRF8VWSypj3LmMkMmSj7iB5dJ3HwsHpZ8cSuVI8fWMqYiBZGaQdvp6jYc+IcpSSr2E7HYS2FA==","signatures":[{"sig":"MEUCICtnwrG9wV4xmXeMXtNqsNrs8hvGoy8eyN1lhMyYoGUbAiEA6A+MD2nO6BInwxR2pX9dUFSMf+upa94bDBpIZ1oIhiI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118568,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0cQkCRA9TVsSAnZWagAAceoP/RIYZAqwE4I0+0COFv8k\nxGClwzNt1b/X82FvF2hf+RuHIQjffXht3zUvdKKEy/L9YPamZlopSl5h18SM\nlg4NaG1Np28SerDuNb2u/JYq1AwdnmSXZ+Jp4SHJ/fu5od9Yxn8wjf9Ae0N5\nCMusU+9TregsfvIL6ytBB1LXStf/TtifxC7Zmg4jcDthjCqNpq+PHVFkmmB+\nmpMX/xngnZYU3ijPZqARvimNgdKscps4AyOjyewIKv6tcPaEycYOVcv6gBNm\ntozhMRycMMF06RTIT1bWbVNbxhAqAqCD+QGw+2hzCWiQqFCq6g78iu6Wws+c\nejqq2fRa0w4UQMJVL+uBjPsMzkdbDCqRxUM9kiUTBg43tIfygIdX48Yf8Lql\nY+jED1Xr3Sd4OQjGLiRCPaf0CYiuX3PXmoi6rgX/3cUbmCnJh7mTG/1UZs3x\nlI4pH3UFCfaoX+FzrUNZ7RD1+TgAkKYRRKwGyYFNA2ovtxNsMbq1N1RQjNYs\nSCfD8w8zYHXLpEy1fPkuIauQ5RqUKU0i8/yfpF9u9hz9luLyt9h1HIVWKrea\nRkGM1pZWZzxK//P7u48kgqsK7KBiiZ/E5HolYlRJM0lkjF5L4nm0G8mEh/X5\nORr+5mA57anCgeGmISTjKMt44ph6h5n0QITW+XB7sn3iO4MrqLFRhPpnX47z\nR/b9\r\n=XMy6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e3baf3faf1e071f088b264c4b8a8c39b3741aa41","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.160"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.124_1624359972471_0.16049169949824016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.125-renovate-internal-patch-f05eb9319bbec545a3e1c8c3b5cae50bd3728760":{"name":"@balena/jellyfish-test-harness","version":"3.0.125-renovate-internal-patch-f05eb9319bbec545a3e1c8c3b5cae50bd3728760","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.125-renovate-internal-patch-f05eb9319bbec545a3e1c8c3b5cae50bd3728760","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9c5f012b476e5b7de29c1d928e093b83c98dc56d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.125-renovate-internal-patch-f05eb9319bbec545a3e1c8c3b5cae50bd3728760.tgz","fileCount":24,"integrity":"sha512-b62WixcJErKYeYEVSrGxzLOhfJooUm1fbL/wlrPvnSLc02G1dGKwFW6mBlrxCexiVXIySo8gp7IttXz5AghmLA==","signatures":[{"sig":"MEUCIEN9q62Er/T/6WLgAVMAkE2jnmB7UQevd3j4NcOITGZOAiEAiHfpkrrDjRzBrQb3RGW0VfBZy83Z1B/bZeoLynbpicU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0diHCRA9TVsSAnZWagAAD44P/0vkmj9w7Hsvr6GJmXwb\n9AUw5xjynADiy4n2biqXjrgbquW1c+OJ7ii/FerCupjo9Ofzi2SZN34ekflQ\ndt7zG2e1gB/Ri38ojGiK7YufpfsS6XxHH2YP04ImUDr9/uVfAbQq0AJ7RvxM\n/Oc54seMELzVz3+ZAt3n/mkW2pKzdez+QXbOlCdGe0+f8FuadqT/RWEhAaoG\n9ZhUoqdmubn/ngBi12LWkx15fOMsjlwK6x7saf1wlxqH3v+RRTmWjMUVtFE0\nfI07kLmkqKeKf5Jpluu2e7+DvWrMzTDDPXBGgGLZhB40tDZW3liPYGO6Ccqh\nwZE+jYjJFJO0O+arveA8ziSsMS8GM1iFTtyoJQB2vvYfrttA/fttzmgD4HxP\nPT03AfbVD/ueA46M5J6+ns0f09vxwj0PnqfT4IyLtKp/CxvO/G+B3jhvUh7M\nWcJ6x5+OrvbRUylks3ec/HQpn/qEvqkNvWHGBXA37FWE7meUligwhy8hdYe3\nDXvYDmZNsnIQhoksQwnGrUOaTYB+dqN4PcGjHInWAdn8sK0Use9m4bQMn7A7\n6gftzoDTztDJ/V7U1d/AoUC+RaSc0d9ApnQBl/MABfMl1RBR1jmoDQo5RnXr\noDNPDvBrZEj3SDjia6OiDyak+LLXAdBoUivHPTnIAdIUwQLFBTKeZOB0M0Cs\nBREi\r\n=9ulQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f05eb9319bbec545a3e1c8c3b5cae50bd3728760","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.125-renovate-internal-patch-f05eb9319bbec545a3e1c8c3b5cae50bd3728760_1624365191294_0.08297202855162045","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.125":{"name":"@balena/jellyfish-test-harness","version":"3.0.125","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.125","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"47be251f626239a5d6555b6be6a3eea071d23036","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.125.tgz","fileCount":24,"integrity":"sha512-/ewj8Sly0KDEy96ROMVknWFZcqsjuIZ0I9AHzS2Ug0xFO6KkHXORkiNlySxhuEvNJ5ppUWUZBm6E808AlOZ33g==","signatures":[{"sig":"MEUCIQCaTd1JifGolDue1Dr/G19xkQ0M+o7SW5iyn5B7FqoaowIgQqw55NzdCqR05SruoVt+Pa7v2tys1S+5G8FuWSt9Nss=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118681,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0dlyCRA9TVsSAnZWagAANOAP/3Ioe45mWruf+DXU2VXE\nO4NiZybSTxFZLArbtfZ0QOYJdUeUhsT6dl4NhSB3O5zIonV9zKPmzRw1Nj6R\nnYB+6R1rdgaZ3qA+HGS+RLlWMUbKqXfXwe1YHwjkBsX0xn8GIG/ckm3AxJM2\nMw0+X6EJgcZEAqeTpIc+mYORYeVXpItdC0IWelRIjsvMJTUv4slyC14powMb\n54HiHeW/nulMqqziyXTojDsYjWO+B9QoD4wOzoMxaf95XTO5N7oG50GnEGHg\n4AgfCni9vvwI4kRmbWBTbhu9YT4vN/i/CMBSst1tXSipD6+4aTNfuyngmGsl\nIeZelXii7AewXkRJW/BpvN45WXl1Eru7VxvQkRKge8HjXy5Mi/mbLq94lr5B\nRUQceK2muHBGSB/76rxBgbWXtSgPT9u/qlR3dZH4mZUaHOWnqLLWiySzlZl3\n35o4VGSGOSsy4JnbEJQUwSGzfaDnj41+1QCz0LtuX1HWCRmw+RVzNBLAhUx6\nWaUywe0PP43R+RghuytO8Yh6yzq4vN+cW8J4X5M5tF7cIWgH2iwNuAxC20Tv\n1ox7eJRdVNdM1bRTVaCIbvkiaQhvaz38X+jXGhBQe5FunENAgLNSYnjIib+W\nt6yfIjWtjuVvwgdaDJnY1hYdor32xBGVkCtD7UDWqp6IxN6R7UrVRyqTQ80t\nIXcb\r\n=ZtMa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"7edb708e1779bc656a36550a606e56f8caef0337","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.10","@balena/jellyfish-sync":"^6.0.249","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.125_1624365426032_0.7701595013474727","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.126-renovate-internal-patch-37ec9a593d14fa4aad6c1174fcac265a3487b427":{"name":"@balena/jellyfish-test-harness","version":"3.0.126-renovate-internal-patch-37ec9a593d14fa4aad6c1174fcac265a3487b427","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.126-renovate-internal-patch-37ec9a593d14fa4aad6c1174fcac265a3487b427","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ef458cb0bb222f24cddc329458e4d03b717c47e4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.126-renovate-internal-patch-37ec9a593d14fa4aad6c1174fcac265a3487b427.tgz","fileCount":24,"integrity":"sha512-ZFL6tEgsNgYIRXOkayB21cZlvlFgbqcb6rqaNvi+wg8z9umTLpB2QdmVH50sfsJhAQ8HZH4zRC8/lrwADx/mkw==","signatures":[{"sig":"MEYCIQCp6K7wfJNlS9VROxFBJDY6dakYIag8yrlAMI7A/5JTlQIhAPxcUMrrwzJymfhG9qhrVDuwT3E9wIgyw5Qfi9j5xxYE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0nSXCRA9TVsSAnZWagAAkGEP/jT5Ym1ZZTBBLei89j5U\nbv8I/ttAbsF6M1QT9IUDBElb3H0/pL6pVGwnXX7porkWfuV6Y1rFS3hSCZ5G\nbV0/ZPMDCkU5IllYITwMS+p5pqmSuMvULvzZbesm1D5U6vbdwY46BtfbJsWq\nOh1jDNmGCGMAmLLfJyFugyGX7lOcDY9Mk+ngtNWvDRVU0yOGDbk59wkGvysP\npL6XRc8dbvO85wQhl2B/8wha+B879D2KlUIiUb1HybeseY3m8GpCERzu8xi6\nL9RYFTqZL5Swy7EioAVjqO+7nusdsl09kypm3OAajO3pHhifhNKT+8fTRzsj\nlKpc6kPJp75dFFAKyRu2UFfEWwkG1F4o+8PczSCyPUq/PqZXGSSJSv1aUdri\nN5usFKjnf9DpMMIho5crGyRqQZe3/qnvvsM52n8Wr1c5WM+UIAW9MQMhsK5q\nAj0WKMNpgHVQXmiIhJTzkYL1lwTF5Nn7HruD5CB8e6sA/43rMrZzqSDCGRo0\nbaM7p3eldYr4qx/+iCMXHx/AY9y5I+KuuJnkdUaC2MuaLf2XO4VBGmELP5ZS\npIaehZaPUFjMtGpavXSk3NsedKWsKXyBGEDVmjSGSDo1DX7j4amt1DnQ21LN\npYNH2r3KAYCelPK+MZL+Ko7NJokW37Vlg0pDVhhxOqPOqGzL2FGV5F2a8qzN\ng9Qg\r\n=yjI9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"37ec9a593d14fa4aad6c1174fcac265a3487b427","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.12","@balena/jellyfish-sync":"^6.0.250","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.6","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.126-renovate-internal-patch-37ec9a593d14fa4aad6c1174fcac265a3487b427_1624405142815_0.6720815164101153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.126-renovate-internal-patch-e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4":{"name":"@balena/jellyfish-test-harness","version":"3.0.126-renovate-internal-patch-e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.126-renovate-internal-patch-e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2e7a0ea3d2c1207092248c9d6efa236839cedbde","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.126-renovate-internal-patch-e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4.tgz","fileCount":24,"integrity":"sha512-2bIZCrkL3kOyycdyFx3Ybt1zBsLiivZkK1xaDbE1Mg0M3hJYa/XCnfwUTp+N9X01TJZYNATG7aAOoWRgCjXSbQ==","signatures":[{"sig":"MEUCIQCtOETTYc/drKsr9f9+YTKdFm1HxcGLSrFF1rGr0rX6eQIgeG6oRLakEj24tP4reUg7gRWjAIWZIci0PlmhkOkeoKY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0nXcCRA9TVsSAnZWagAAi2EP/2jm143Bpqw5LrLz2/7j\nbwdR/e/+5s2WK0BtJg1zJ2VSrp5UkkOUDju8UaczjtxczzfsNGhSF/yHy2/J\nxDizBIZaEJoGpa7fT8CFGDhBwG42ITAQrlNmw3v9mlOtB0LBGg80lFdYCx8g\n7TcAw4JJUxolVTptOadrgp5J+y+nqkaQq9bdhcSwJQh9IygxibaHtrrPurCD\nducgZvCT8XEHlPmPehVmXX+U70beDB5dxFSuraxE6HVoPXZeaI+0eSzLRV8G\nEXlQinQItR1Dn5b1W9tVzCeiPA3H1Y+BgCi2VvZXwb5YIkz3ckWa0OUdsNyC\nIBhCG70pc97zs2edm6RW7M0LGBUPi+YCbZ2tSt39Krtryja7QNtejzPOCwdj\n0qsYkDY1KDhbohHBEFYzAzSH7lJLn6zyGNrh/jspRFbUDCnRr0kIZToXf6sO\n1yyIqY7SqVewGfQRbfDZo27oZsNczRaywgGKtMis+st8MQfgdAmN09TedL9+\niAOGc2rwBzz5xQSQLUctKhh7xtx9yuoYof5SvU+YO6vwF0P9kwwokvqC1ce+\nhzF0lUBeUao4S7Oqtdi/A1IFkMoZSPh1NEIAubiBzPmJdfs+eTlt5YAsOwnq\nRsyFa6gcdwntynPu1epih03yvJIJsCbGJ+GDEztJsVh9XMB6DxoBnbctHI1c\nV5xb\r\n=oQ0Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.12","@balena/jellyfish-sync":"^6.0.250","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.126-renovate-internal-patch-e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4_1624405467540_0.5309281604069405","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.126":{"name":"@balena/jellyfish-test-harness","version":"3.0.126","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.126","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1d7177c136cc7b1e646a4ff2bf629830ea9c45c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.126.tgz","fileCount":24,"integrity":"sha512-2Kf1C13MKoiRD4nIzIDQZeVnT0k5N7wZGtBmvYAHA3lMXq6X5ITHe3H1lDiSAPCcFtOdLKpOzkpEgS0elkL8wg==","signatures":[{"sig":"MEUCICtP3ldWoce94WdtO6649vcWNFhk1IlYIgQmyCWdB/jnAiEAs3mqh5qhsNkYT1cp/VhKXLZRa+xbJ8mZD5kY7sbEMzY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118756,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0ncZCRA9TVsSAnZWagAAzL0P/0L/xJIp5OUdQgQdkqaR\ngLlfGVib4RBX1+K9UXypWWn7IBtcc67dT9ntzYMyH3mIh0QsIlYYcvOMOYDL\nHNMq74HK9ZCcGDRjyULY0x6BVevcgVNtxE52ciqR6AW2QYxr9Vcv9iIFk87V\nsuGNCO67GJKKpczetjxoFsXSe27qQUDc2NiaU8gRs8Oll93AH+itL539/qZP\npRONI1lS+oSByROYmMyFT/h15HJRRRZHWu5sW8CefPYn9jqCyncLxEH1hawP\naW5OLB6Lspj+vGzGWXsH5l5OpaS2E8TxJxKVNOjY72/5e6DLisRFTsPVoapt\n2wCY79Ejz/N8KiePS9v3p4ybcym1bPB/P7qDD92geZ56CQzHV1k+qRUOTY4q\n8NMM/4/pDEtOvdYKqht93KG+k0DD2UGnPoiZBDx9Ws68K2c2c7ACJegaPwft\nFWV6xsw2UbEltv1JjasILSpsusOOj2zdL+XLLFY3A7a94rUBlFCu5ZSsqzQT\nHA3KkFSVotzoHLL1XOnGEld/EwsW7YB7YOTsU3gYeaCHFnCqXk06lAmYyirj\n6ld6WrcLTAL5EfAFwKVtMJinVe0d4FY+AO/YjuF87zXarpfPVROH10O9f+pi\nDweQ9gRqqoeSrwNkdAhmAejhOe5qquML09bFw6oYJ120/S034M99ElpibELH\nD9iZ\r\n=JZ6M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b95632580b07aab14e3d7ffc50327e60f3b6439d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.12","@balena/jellyfish-sync":"^6.0.250","@balena/jellyfish-queue":"^1.0.174","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.126_1624405785539_0.35016832151392996","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.127-renovate-internal-patch-2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad":{"name":"@balena/jellyfish-test-harness","version":"3.0.127-renovate-internal-patch-2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.127-renovate-internal-patch-2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"232c2189b853ebd5e40a8a548b481d77d9b50791","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.127-renovate-internal-patch-2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad.tgz","fileCount":24,"integrity":"sha512-61o2lP5vC0tyqiANmh8YpIsKUoDjd6gkD8S2Ipy2nvAGNMh3meepz1ynuuMVMWjCxCc1Rg7re2OJXst1WBf0Eg==","signatures":[{"sig":"MEUCIQCHORILm2r3brZOv2P8U7MXG0OFfuuDg0HD9LOaL72E1AIgf71whWpzro9UwLFxCwkRs31GUrGwYBil9VJ0ZzVOfgM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118896,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0pICCRA9TVsSAnZWagAAsboQAJ/FuWw8raR4lSQlCStA\nqpxcKEN3s1g/c0YEHh79kzPiecDjPVqFI4GSmh3rUN3yt+hZcW6y0G+KWfKt\nomk/PUxE8Ib6MYWDWJYnqc6fQBMWMdoIBnD5BHBCd32gdS+kn5e6I5icGU44\nyBzxCDJ5KbyM9OHIBNAk0XMNy40GVsBG00smxyjO4Pjiwu2KXjpYvYFJnLVs\nTXaoP01A0q+cSa9kOF8Ko4MylZJ8t+QHYtz4Hc/acgwPhc0YctILEHyOBjCs\ne9lfHO7tTsFiXD8Xq7JPiqfcDNykUZGZMDrnG/yKDJP8SMusg8+USHv8+eGn\nEofOn6IIb6y+WRqJNKGMfELU4+On/0Spclt1iVtdi9TXxUKpgx7S4nv6g8s5\nGHG9/wEVqMqET1ubszg/uwbTcMtD46bQS8d7+5i1g9hxUw8Tdp//MB5aixt9\ntL8h2xXE6xc/iM9VXrx4ib8THQrQOkz8z4ntET5QH1Ga22QIb1ETOu+AANSr\nEKkHCxGpuN3P0LfByOC12pxdHHRdN6kScJ8qHL0v4Hp3C38pKOGaRo+3dvxt\nxq8yl6bcotUZHBrw2vKZiTBxggyYhYHarxG4JwN2tG2dV1j2N4E2dlZxoZBe\nGCgFrdQwW7kNz5ggrrFlGu54BP71zYIIdRwIlsDLk3laH2qhoBfCsNvihgsV\nmA8g\r\n=7qUt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.13","@balena/jellyfish-sync":"^6.0.251","@balena/jellyfish-queue":"^1.0.175","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.127-renovate-internal-patch-2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad_1624412673521_0.31775983544778486","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.127":{"name":"@balena/jellyfish-test-harness","version":"3.0.127","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.127","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2db53c5efebaf5dc5471668cf40bd2dcc735d4f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.127.tgz","fileCount":24,"integrity":"sha512-8hcZ13Z7nGS4SY/BsrIyOUokieKQQftjHxK1MZMVYA0IbMDfOLpes/YuYxhVdoIzxnt4vajpS103SuJC0V1Z3Q==","signatures":[{"sig":"MEUCIHEnQ9fUl0QKiE9FZlK/xwwmtnr885l4+fQDYSctDvHiAiEAth8hSty0x2kWW03WpDHGUue/8Gi10iH+V/fIQKYtTX0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118831,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0pLpCRA9TVsSAnZWagAAhgMP/3jhlwTa5G70bMLbVT/5\nh/RXnHlG5bTQW/Zszc7X2xtfv3QYke2zwBMCuxdeUx2IS5dODKrNTZQILr/G\n0S4X6W+R4RNGLq4+qkzZ0dtDq8AueKeM/u7EuAWZuOZoB5X21DWw34gMXUrZ\nvYkCJFbKUnYJjVttMdN0XEUn8ZeTpzS+rA8Zuw14ZYKSJxgrEvBnDMpIMG+N\n4rdmQJ9Ukg4mlcPeq7mUBRN9mWYbOpssCCtUdCbsjZZ4oR6Kwx+G3zaATFVH\nprHjtHIQihktg7xbYQPHEwYjnesTFqOJ4+TPjKTrNeoVcOhPS+EPY8/Gbd9W\nwWz4Sknv8WMwiRe4DBrRjPsv5Y06LjDUPQKL9KUkYNEmow/TT62EhBJYV+SQ\nAjDAU20A0clONHn3eXduSIvu+GGN2d1ecyrgt2pQvUlUeZI1IA2XXrIYawgN\nH2jwci5MTIlR7GEZnVQRiUk9oTSbGczCfuCrcBX0NhIowWoQSGJ9TPkTXhSc\n5UZDnSOYuOY5bQYZT3j0h/Ow2P50pO3ACSvLKKqL0FEZuSkMrGtZkZaEla4W\nAooJElLubneO3nXfR+kkInjFucbPFfxXTT7ogY7J+b9Hsq7ZpvtcfdY9wLnC\n3P6bYF3Ke4KELf0846vfOMuyDOPRGFn6BgxKNhr7YFrEnW0dp/fy3ocy+s5o\n9th+\r\n=9nc7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b110bce0833c38f6ad6d389e0fc2bf606c869435","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.13","@balena/jellyfish-sync":"^6.0.251","@balena/jellyfish-queue":"^1.0.175","@balena/jellyfish-worker":"^5.0.50","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.127_1624412904983_0.7244696341540124","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.128-renovate-internal-patch-6ed370fd241b1bfb1ca4df0a249765be8b325232":{"name":"@balena/jellyfish-test-harness","version":"3.0.128-renovate-internal-patch-6ed370fd241b1bfb1ca4df0a249765be8b325232","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.128-renovate-internal-patch-6ed370fd241b1bfb1ca4df0a249765be8b325232","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d7a5e8c98896b933d59591a61c02f6b86b718d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.128-renovate-internal-patch-6ed370fd241b1bfb1ca4df0a249765be8b325232.tgz","fileCount":24,"integrity":"sha512-Lo8G/UUyZlbE8XJfO8Y4eYsIC4CgO+IKJaj9QQ8Zvvy1dT7ZysB1ekt+TWe86iw2+XmW7YaGSkvm30LsfokQgQ==","signatures":[{"sig":"MEQCIHBBOHW3T8wGba9aA1wWCwavTFh5fzs/wYHdi3MP3LSoAiBoYdpN189hImeWumWzaGuGJJ33hz8mYDewhdDKwQvmDw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118971,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0u0DCRA9TVsSAnZWagAAoMMP/32Y0Fl7Ur0N16YEmWlD\nsdwsRKN6XQDHYIRbaxk3hEyfer+jl/sTHc4HkxZaYmoAZYWPyTQIlHzCW3vC\n/k9FSDIgDTwnFFTSI4G9Pqg/HAfIErwnuBeibUVxuOV9EiaTJNL8e24npvj3\n+46I2wGfV362k6NP2WCO9lM5h3scKvVrxJ8XL5+KKXw7OwEw0tFBs/aLwOqP\nvP2LXLf80B+i0Xw/PqRpio7rpPcOuTwtd4sfyZOKzwndYs4CHIIUEwWC72Bn\niGGdWkO1VRsHHuLCn0U/do+mRQYBlWjX3b9MOgVn2LRKzcSds223BpQkWhq2\ntupr1v5kjY+/0CT5YAqpCVHTJpowxsNXaUoeEVkyLAUG7M3RxXsDsNXBrFYU\neecillZ1f+f1TX6oaswYKZy6s0EF5PMiJsaIz+Fd6Hqt2bpJYUHLo+9tm65E\ngkTFKsAeouKZyMpcEcv80su0XdSzU5NDwu3qbbwEqRbjCcbcJTIHsPUsKThH\nbYRTfEMjVlLpzF6gzHMomfBeQaTlhj3QzVfUNB4oHEa6cbk5tdkbLi9Mm6t4\nejAufkxluiw4xd5AhSFrLX9QgmRDXxCNwXrfqzmzQu5EmaOqK+lK/hJvZ1kk\nF8gieiJrRGJfDOxCT/L/ZFfyLptUQFBHeDtImZ49/jb4FfX09DrrVuxzrgl4\nQuNJ\r\n=I5xI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6ed370fd241b1bfb1ca4df0a249765be8b325232","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.14","@balena/jellyfish-sync":"^6.0.252","@balena/jellyfish-queue":"^1.0.175","@balena/jellyfish-worker":"^5.0.53","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.128-renovate-internal-patch-6ed370fd241b1bfb1ca4df0a249765be8b325232_1624435970822_0.5699759661968435","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.128-renovate-internal-patch-fb0604ae493b0a2ed0f7d8fc91211771c957e4aa":{"name":"@balena/jellyfish-test-harness","version":"3.0.128-renovate-internal-patch-fb0604ae493b0a2ed0f7d8fc91211771c957e4aa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.128-renovate-internal-patch-fb0604ae493b0a2ed0f7d8fc91211771c957e4aa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6662fb0a086f64048daf31802182f415c974be1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.128-renovate-internal-patch-fb0604ae493b0a2ed0f7d8fc91211771c957e4aa.tgz","fileCount":24,"integrity":"sha512-jsHLBAKij6UsOCbW7nGdN6o1uNrkB1WWbNgnn0eghRTk6aSSyvH8bxGDoY1brvkuQ8DUKz6OBLT2XJoGvgGWiw==","signatures":[{"sig":"MEUCIFrWKgT5EkZuntMcgvRFejwDPURFa5+3t3ad6/HAWXJRAiEAhyDm87z/i2Luy9YVqswWONMOZNawtEF4TqtZtWlbXxI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118971,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0u6ECRA9TVsSAnZWagAAb2wP/iuaC7gVCHyxJq1WIS3J\n7+CUuNdYgMwgr9B2f6nJM13dPREB7NNr3JKTEZrneU7kXWmYw0ZHGaqUiGO7\nd4I08rX2bAhWk0ikKQn+3YwVyTBi2oeQt2ovyed3sgyrMNBuKuVgBPA9vVAp\n3ZYW2Kxef0x9SDuFT5mapBXg4tAKzP8+zuXWxYdPbuzHhISmiT1kuWQVsamh\n5JCkgiNiE+ZQnkm4IjeP4fBvOdy1mpzrbU8fkxU5+j4OPL29hR5mtxsXpabX\nGv4g53yJpybgM8NMxl6W+wKm5uvyjlD4FvmmLYzX6owa+R3OYp3bYVZ9KOL9\n7TmNS6b/AmqVQyv9AQ7IPtMpc1DlvSGGTKsyhCGi93f1wV64S2v8+Qicisq5\nh9cXvVImpbacRi7jM4waUJ7f2aS4z1+9KA+Edj7Z6IdNHnaAOAvG2iAkGx+q\ntzHcTFjczEBp42xevIeK63g3zh2D4g99nssH6Ycc6fs2YoxdRunXXl8AAEnI\nCMzcYAIZ6O7wghxfyof64ZSCDkceV7s/dRXMftPAgrHa3f+bzvpnrjnp8GVA\nrR1vcQCGSxUfUUnhJVN17dm73EesFE80JbKvrmStty6++gM4+SpmS4YGMeLV\nSzgzOH/hvBKdT+VgpeGtcuM5MSFPxAWgsTFu9HqDY41Bm4SmF4FDAbKcBXn9\nkQ8V\r\n=/wco\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fb0604ae493b0a2ed0f7d8fc91211771c957e4aa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.14","@balena/jellyfish-sync":"^6.0.253","@balena/jellyfish-queue":"^1.0.175","@balena/jellyfish-worker":"^5.0.53","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.128-renovate-internal-patch-fb0604ae493b0a2ed0f7d8fc91211771c957e4aa_1624436355922_0.417453654868823","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.128-renovate-internal-patch-8c8080f721132f02c270e2ab92418fb4330f6066":{"name":"@balena/jellyfish-test-harness","version":"3.0.128-renovate-internal-patch-8c8080f721132f02c270e2ab92418fb4330f6066","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.128-renovate-internal-patch-8c8080f721132f02c270e2ab92418fb4330f6066","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c13a44f54f96084ed2f14eaf23a66ef155f72e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.128-renovate-internal-patch-8c8080f721132f02c270e2ab92418fb4330f6066.tgz","fileCount":24,"integrity":"sha512-Wb/3OMAI0BC8mA/hTNibPkGUDF2SsslcJXirk6Y8TTGHuJaHNdAUIM7yFgQe6VuVAefauOZtPrl1UZH4I9cdIg==","signatures":[{"sig":"MEUCIQCfoOiTyVDidzpJSciHe79zEnQvy/UoxzmKbqpvJJPgvQIgSa3JeUH+Sb5lr1Z4ITeBtG/RXn7/Aq2+v+iDerAfzqc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118971,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0vAeCRA9TVsSAnZWagAAn1wP/izJBohquoHU4/GpeLqh\nORz/QIJtHpw/DLeu7TpfuqQrWFCXlWYLoU6SFp6roJCac/uWWh1m9OGqMtYL\nzN0hCnnd+o5CgHmZsq7f4amx9cJ91GCcgGwiYKoyrjvit6V/t7QsFUxcrGnu\nHhoZ2tPn+XwZ8vvoU4VWhQxNZsNU/9s4y7ARLTXLCpFyNqkOCZor0u1dD3yH\nWF704wNo48rb5UaLJBHxUTGbLllr9Bv0gAvyOYvCzv1eBbTqX4VJZIeIWqAc\nFTZRxj1/usqm416ZdgvyCqy4vbAhDQweD8MZsyuA9EfjmGUGRbsOJX84as+u\nBR2ovPAQVGBScTYdpkzHHCmV/ZbhCNrU6Q7jqiL1vyA2vKbHesoeksPMSH+w\nRaoKnJZ+hz+UpT5RGGRy6uENG3B2jml1f8bBKWEwYyXA4QUVaAuLCbi4LGEs\n3Nw5Kru65ikcIVGldgbjQY003vCdroaxZAe0VGDBBsgxZ6r/HWgoRyrMY2Ow\nQzVgzFHfMHDEwd5OQPK6k8hBo4imm2G0s4JP6v/yF0YtzimXFi16mQZtb98U\nZ6+enurXW67qVkJUhJhYwDdAsVKU8Q3uovzsfcUeMXPccigtHr/qj1Hy97dR\nmmJouGiHY+fmvtuzfY9FcX34KZgg5vqP0U322UJWBtflMM6bjxkVbA4FYUHx\nicEH\r\n=gBbP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8c8080f721132f02c270e2ab92418fb4330f6066","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.14","@balena/jellyfish-sync":"^6.0.253","@balena/jellyfish-queue":"^1.0.176","@balena/jellyfish-worker":"^5.0.53","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.128-renovate-internal-patch-8c8080f721132f02c270e2ab92418fb4330f6066_1624436765824_0.2773232469671736","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.128":{"name":"@balena/jellyfish-test-harness","version":"3.0.128","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.128","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb9b75f3e562cdc4855cd93fe1e1c9af7913f7e4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.128.tgz","fileCount":24,"integrity":"sha512-mojy+MISIAlxj4clCAG+ZyLvJ8VNqA72W3BlOt8SGRejdeG9z63ZwXrLcN1vztd+0sw4YnWQhaOafNsAxAigZA==","signatures":[{"sig":"MEQCIG/oVBj6V+FjcAmrwq8UtFlPDwFz199T/VcaJho4Qb4QAiAFTqNqdd3uSEw3Dgnvqk7SbnUqhZI2CqKUrZp4jipCFQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118906,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0vDwCRA9TVsSAnZWagAALKMP/jLaaICPbLhbnHmvsoWZ\nsPiqtf2kmyihqI0SYaMTXXyIuaImK2CrD1ESsobJVVfc+JSiGsHaue1kzcS6\n+PGtBeIphbsiFFk0+S8dpaxrd5wO/SYqKPQ0JackQLHVNOwDsXkfQML4Cjii\nQPDOpo/9JYJd97AfEsx/p7eRWinxLpqNDkluaTzbrSbuSglspsWmC6EA2NvN\nAEYhUaaz8dfsE025UJKAo+Ji0QqLzbmDqYkoTwCj373t5H7do0BBnSuYg93+\n2p24SeJ75nWeyGyDcPCalVLTEvCbwZaqn4qraA44jRwDdiS/uk9P+YbuqSw5\n4NgzGo7K7SekZccoetqYuw29nSJK09neW9dWtHHMWdbEzbSQYe4hQHZV4dud\nppt7r/CLNhotYgIX071ry4F0ERhv5KTXxJEQbw15lBBWJWyy1Ll1mj23qRXo\nQCA2HChfjypSNjKbrGviAb9veO+7e2BGW7aoDEaE/4EjJvXy6+IIg4jMSMIZ\n/sF9k6RbIudcuT5zQ3WdDOVSj7TsQsayPkjFpRIz/uukjMN/id4PgpwkIiSS\nTbWI34suGkaiSzjTfj0Zey+EQWp5Y9qqSIz56ssvPuLF7Gq3cmL1rvlig7BH\nqDC8pcGLk9IEk6oeoEOWWNTZtP8Bjzw73Aa8s/LRu2CIYGAVqdnveDt5qm3+\nwS2k\r\n=OMOw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"02f9cde9af81c1776168e3d6501fae487203ecfd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.14","@balena/jellyfish-sync":"^6.0.253","@balena/jellyfish-queue":"^1.0.176","@balena/jellyfish-worker":"^5.0.53","@balena/jellyfish-environment":"^4.2.7","@balena/jellyfish-plugin-base":"^2.1.161"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.128_1624436976437_0.6555735882122993","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.129-renovate-internal-patch-6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47":{"name":"@balena/jellyfish-test-harness","version":"3.0.129-renovate-internal-patch-6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.129-renovate-internal-patch-6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e168e7cae3d56eac3c128e9c381d587f1694251","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.129-renovate-internal-patch-6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47.tgz","fileCount":24,"integrity":"sha512-hIrQS/XZFxfxHi70f75xdFTr2Fv5/mkXGLrzusK4sEovAELTNevk2tYmHJJqYIF2dX+eNgPXMRgD/s69QnX3hw==","signatures":[{"sig":"MEUCIQCeg5BKTxNEowDsTJW6oF2Ts2trKcsWqqlbdbHfItz2fgIgXTp0TTDeh8Q9Z6TYzNAnLoji3GAcKoklg7wQH/mwG/U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119046,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg09WjCRA9TVsSAnZWagAAWoUP/ilxDQe3qAtIbATW/w9l\nX7pOiLgIztXqVbHM8W58qwn60g/PYYCzTPSM2sgs/AB7GkHvIutlSv3CK4VI\nvVv0TCTq08mj3rirBfF4J7twMp6Lc5N9fNaEMS+zlixOhJGX3PJ0Yi1XfFoX\nUnwzTub+QP/vwZ4lE0sB1uYXlsso1nkcDEBjuEUE058NIzJFuvZfrEMEN85V\nYs5OPnEYMEaD5Xpyz51I6ztd8YmsD2PUmJ/tg0ADOhy9WBlEyya+oj6NF4CP\nBqQmkOx+/l1euAfuY2UhpqPe2pezkpI1v/oqp2jV/XJ6YNmoAkdM+lopjkgR\nOAU7nM9Eln1OO/AA5KS7h5wHbshzVeMw0fd4BB9mH8CeDFvDatWbS6mrnLM0\nRzI7XgOMSbaJtWztErXJFU+36egVMRHKVcmAWJFyA5um8tMrLZWSml2FFvL4\nf28E6NmliLQ63VxfYSnfB42frc0o1eJrq4KkTG8uYDULK4mtcrQByjMrOrQI\nBpdFr3MLxhbhtgNVIhu5EvCTgNGfjuXjtICEpFaWZaDsjjhEXuOGYCl6JNbv\nSrYUjj5HVm7c6A7q5l7CzljmvTqRhxj4W2UD7c7SlJHsFPrDtv8sVt82XdMw\nUK44cK8AxV3gQjrZbkN1ffe4ZTfVqs/yEQ6Kg7eAa9c1Ntbr0YXXiif8spWa\n3vxL\r\n=2q6W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.55","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.162"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.129-renovate-internal-patch-6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47_1624495522953_0.034220336314534805","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.129":{"name":"@balena/jellyfish-test-harness","version":"3.0.129","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.129","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d27585e9270ea2f058f4e4b237cc2c2893eec67","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.129.tgz","fileCount":24,"integrity":"sha512-fidZTe4XtYCxFAqCskAccC2jaKV9dbepdmmFxxIDUi3IKQKNCmi2qUZVx4k9JIPdsMfwXaVRTS9O6A8KaHCG3A==","signatures":[{"sig":"MEQCIGNbPz+0oOXn1C9z3SiymjU3Qsr7krxZbun2zaVgXqjyAiAShXNgBSqkYiSWzGClnTqL9aku205ZQxbAOZXwEBY1Jw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":118981,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg09aSCRA9TVsSAnZWagAA8U4P/iXoOFv0AJ1YN1ZD0owM\n2S9E6nq1AvvgFBmTRnWcr+M7dWlqcmIbBTrrSt25eVZ8OfkMsVYPOnX3+WAH\nl2MRmhUmbs+VWph0TmfUr57pGS3vmjtCLRtT9dJndCd2AbrKt+2btyYjWfAT\nE+oz3sCksxOcjjXWBm6ZQBM1qWzp0ehGfjJqXdVRFLzoyzJqTMihQ2gZcyiR\nJdcLICznaaWLZDNelmj/Oy7rGF6E1AtL2lPbZR+VN98XTCSExWgknQNfJY/0\n8r3WRATpNX376S/JjZNaHI94M1kton2Uj0oF2bpVCrzEB6N2oKUF24X6EL8H\nlDuRLOb+Yb9+Z+csb1iQULplyqtfDBSttAuGoDrhmztkR16Ncx3Nq3pjkgI4\nhlfp2li6nkiWwl/SRDuvpvs6N253AKGFw5RLXcCj1AQVH2xAE3eoJDHhl08S\noySq78RSAdCRdFFPULoF6L/kaCRN4HZbnjAeD4cdQEmsjj4sJ8vC+fMCXJDJ\nmzjpQnkJKaRVJU8lM5pfr/5935PaV3fqB6ShJmvYmHG7Uc2KJXG2YbKSfZ8q\n6WkTBaV3Px2fpZRoN8OuWTc9GrK/oiYn1+SjDxJhBrvdMzdjzW98U6TV0fxC\nO5+Y442kJgOQNHEUT9BpNcr3LSrGvasYAnFwobigFWT02JOsdeTQ17qN7P06\nM2Pv\r\n=NHOT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6708afc1153fd86b55968391a551d568fc88100d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.55","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.162"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.129_1624495761893_0.48714684812211617","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.0-fix-integration-parameter-07e18ddfdb6b10c553bfdd227207322335492210":{"name":"@balena/jellyfish-test-harness","version":"4.0.0-fix-integration-parameter-07e18ddfdb6b10c553bfdd227207322335492210","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.0-fix-integration-parameter-07e18ddfdb6b10c553bfdd227207322335492210","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ed75b5a0846c8140aeab599000a3c88c77610e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.0-fix-integration-parameter-07e18ddfdb6b10c553bfdd227207322335492210.tgz","fileCount":24,"integrity":"sha512-Ruvr0PQ7mk5I24NdQoeJSO3KJPrikgAFHmooSovn81Aih2Y9UXvDRYig57xOX50pFyu7nSSMNF9ssNB4kNK6Fg==","signatures":[{"sig":"MEYCIQC3WTkEtVtiulhwaav88ZWpQZPeCfg0cNNbpP+NIokcWwIhAI3jbUOZLoHn3eScssTtsb5svzu4YaPwJ5Fv1AvAuoUc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119036,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg09kFCRA9TVsSAnZWagAATfkP/1LVjTaxnmdx75hz07Px\nx+hUxSL/RayTInZAC9irJRic6ivs3/cD7NuzAxxg2qy1n++YJ+vzhdK84mGM\nLJ6/m9mGtzYxMWv7/QLs/Ty3hJ25oDOAA8pxivzNg1HDKz3sgT8PKMYJ61Sr\n2E2NjRld9AgE/3mBbdMD+SgKALBxJZsqpLoksJY0Fnnplyzwu+HeyeXsTXex\nxaC4YKNnwejiUyXqKkNJsKaUr3q0edLIjz/advsZOUq6ex34liYB31IbLxFL\nl8HfhRElRRa9MWKDhWMWceSVDY+tKohrbhja+4URTDuwQQCzYSD5bhVP2BLH\nIwKB2SAbfqp6m7WxX2opoT8IUBxq/qnlnoAI+2rksgW7gbKoYfy8FJcH+RX2\nuXDlGDTfiER3Ki4gD+jpagxM5S9rUn12w7eImq56TPav8x9xZdxGNzZCuwR4\n5WJ1z5tlDHPuPlDVLfapXMB+7bJKeoyYgL+HWZ8FYBCzU+8BG+dI5Wx6NxFj\nIBG6k/po+m7pIoCew/amxxuw7WUx1Pz6F0+PSVewBRTBa1Q6SS1LaNwPkBR1\nfWLLqdR7rKd4BSnjNLwCqF2XnPw+5Xwi33K042r+vec0y1dDoXqmOFbb7Axv\nb3yCJ8Dm8CjyKThW40xYJEYZ+50Prt5wgKhkRS3mB7i/5i+fyom59PKqtbR2\n6dOz\r\n=+djY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"07e18ddfdb6b10c553bfdd227207322335492210","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.55","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.162"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.0-fix-integration-parameter-07e18ddfdb6b10c553bfdd227207322335492210_1624496388750_0.4945244328816427","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.130-renovate-internal-patch-504fe271a3f7d4f83300841cf59037b086da7b1c":{"name":"@balena/jellyfish-test-harness","version":"3.0.130-renovate-internal-patch-504fe271a3f7d4f83300841cf59037b086da7b1c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.130-renovate-internal-patch-504fe271a3f7d4f83300841cf59037b086da7b1c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b956711fb66866024637e4fd87f4c8bca0428743","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.130-renovate-internal-patch-504fe271a3f7d4f83300841cf59037b086da7b1c.tgz","fileCount":24,"integrity":"sha512-49qucRReGXe/DZ3SDeQJLihO+o2sqnnB+fO43vFhYfRygqAnjIjQuZH0YRVzN9uFEt3CVZhVQpyX4Gyt8O+smw==","signatures":[{"sig":"MEUCIQD4+O87Bmvg5CcUl34MbX0QJzAik4PyYnuCHLjLvnF/PAIgNaVlEZMnIpeLw6JxTOl2RGJRGRFd3g4c9Yml5wsS4Q0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0+L6CRA9TVsSAnZWagAAlDQP/0D5X1k8XqUwegbsDOAV\na9jJptuKOaOVavsyJwMuuosv2zDGBDn7U7EF4OfJ/OiVWqO3O48LMnDBh+Tt\ntrGymDY7tU+6lPqmmqdBdWtQ0RWEhETbbmMeLj6JVoVgrl/Pub8eEAL9NbG4\n6vWxJsorQL6Fm+K71K4OB+ZjZXSrAyiSuPpEQXE+fsDh+g+G4YHY1bl9rgx1\nhnkQqLW/7P+w9TBCNSzGGKqxh2BUEg98IovkKpqa5Fye79ox5AXzVYtLoXHw\nmlAvfjCGyoe0JYhT6yCLYTtA9ZneTMUODcDOsbOR7rHb28Bex5mcZj0q5Va8\n8jy/fGb2aAxX+POQ9nkhqCsFVrvgFLG7CHzTJiiNJT5Z40RYhoU+K9Ht6GyR\n8p9EwSRNLkdrUaLbiRJxYnktk++RPhzLf9upvjiMfK26jMcI6jtKF6An/erz\nqcpLRluoAEeB/Qep/fcCvwe6UAqmTwrax6szHjTOWVvZ9WsEWv48esdu+0l5\npxGAeLepHf1svhcIQWA4VtHhUBenyAnsjXV1p6FsOQxgJMTlM3jy6VdXKz6M\n86kXlEyuPAFb5h6DeVBB5LpF9uFt/dSgBWAdKSgQCQOsprpTIVLrM5iAJOsx\nyCr29EAKRxxeIxr/VJF6qrdWKUx1DQGBM26oLgz8njD9vU5Hm8lDKm52Cu43\n4v1z\r\n=D+TS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"504fe271a3f7d4f83300841cf59037b086da7b1c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.55","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.130-renovate-internal-patch-504fe271a3f7d4f83300841cf59037b086da7b1c_1624498938092_0.16939126268265237","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.130-renovate-internal-patch-45de9bc220b742118e76226c82c6f9445ce32a76":{"name":"@balena/jellyfish-test-harness","version":"3.0.130-renovate-internal-patch-45de9bc220b742118e76226c82c6f9445ce32a76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.130-renovate-internal-patch-45de9bc220b742118e76226c82c6f9445ce32a76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00fb19077bf661807fc8e3b1ee1057e188c4268d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.130-renovate-internal-patch-45de9bc220b742118e76226c82c6f9445ce32a76.tgz","fileCount":24,"integrity":"sha512-L0t4OM+p66p1vjxQ2i+4YELxCJEJY27cORCmwtfnJ6zcVJf1+n0G2XmAIJpkm2oDGEjU8oFe6Czh8UcFZfXt2w==","signatures":[{"sig":"MEUCIFBB2diKBIoj0dOhkGXkxMeeBeJg7Y8kKynFYucH8AsHAiEA17HNGNziGipBtH1ta4YUr02P43wYONDAynNWJqBTsRA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119121,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0+RwCRA9TVsSAnZWagAAe6EP/2VLe2jUj+h6Sbf8APXj\nVmmmp0jIOFo2UGqvQ2sCBCvcIThFvnNXMS4VDf/Kc7CICu/Ed44zPlsN6Zi3\nE+F6u+q3/3pgY3/Ra+1YHcdGk0qqNEPlLB6iNKvgHptOChFzpsfI/KA2VDoT\n16aTGXxaf2JuR02cPP7+981OE8bZIU0NMyZz6n2pcTETp9RVK1MbUB0pFWG0\nRoPymLHj9ME8lOKAchXqW61Xrfv43ko2x5EQFRSy781IYB4wQCtGdYYEZibJ\nQxoQ+JZ+Vbe0+4SIvGZYnATy/oBTnXjFhqv/chLsnwqu/hAEkaDvoZph4/MR\naT/FnKbL2wyDdKZBbm5bbZHHgWEpXH1EwVhI+niRPIF9WbDZNHy3j/Dy2WtF\nrTZ2+0h99QEn9tjvM3EMfDKDYNjeYG0eQAp+6TQv2wMuP2iZ8iUY8Wa2sb6X\nyNM617JvpMPk2z4I4mmVpjNPyJ5bMDKhIqeEoat1Zz3HaRKcyyrCI6yP7kyA\n9upG7b4FhQh7h3TZxYC8yECHhSdqjHoT2m54noJrrwA1QbvVj2/5Vkr08Zqz\nQ5sdsmKFvdJDQbekHGhTQFKaG1/vtizN0lGhCNRag27zdcCKkLWkrYEMWcvi\nUE2ISJWtalXV31dVwxzQTWmxVCBCpg0PVEeX7LSSFQo+uyH9pA0QHk874/x9\n9AOx\r\n=q1nY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"45de9bc220b742118e76226c82c6f9445ce32a76","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.56","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.130-renovate-internal-patch-45de9bc220b742118e76226c82c6f9445ce32a76_1624499312278_0.8378493000832032","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"3.0.130":{"name":"@balena/jellyfish-test-harness","version":"3.0.130","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@3.0.130","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4f02d0973ae3cdfbfd78585f049b71ab791182c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-3.0.130.tgz","fileCount":24,"integrity":"sha512-ZBEGOWAy69gACW7OJF4SsYxa0Gmb9DhQyTnhkPpVHXm6airG3ocXY0Gxjkj5FL9zx6we2rj6oX5B9R/a4VjuBQ==","signatures":[{"sig":"MEUCIEOY3PEOYx/UVnORwZK1RdD/U9PrlVki4OUPvAq19HdIAiEAtfqZqt/T0gVJxVfVwN++zMk49JdA+CPhiEKwBWsqKPI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0+VSCRA9TVsSAnZWagAAh3wQAJ1yT9IfoDxDkOKl8Rq3\np/Z4FhRbXgX9X1Vekt8276Prt4tXR52xxfuNb8she82BZ4nctJVVXh7b5V91\na1MvkZmeMiHwJFWTxClfVPh+XkMId90WbCwBulv10M9htAy3hv9t9b/PGG1S\n3Xo4ZCE35vBN9vQmvcNp6PSkZmMrOIFPgtSiIxJnXgrIzAg+S8yDCAxFv83A\ndLghT91lwB5ChHgFxQse9g7rGjOwOGkAceH0fcGTkWzIGolXGDdccD7fzfgu\nm4Jiq8P9kXBAQFm19uOJRlk6L4CsDQlLX2yx+SUvC5nCzjRtqINRZo08EQf6\nvqQUoH1NNSxL7OrFOy9rNxR9FB3RK5uQoHO+NgN0BXpkaQtS9N2QpS8cuDJ4\nGmLT0TPW5zy1PXcdx54Go8qrTnf4/nhNjOzggYDYwC3oru0EWzSe/JmNPfrY\nHhhjo58ZKbjjRvRBmheq1uSSaVEzVWIHXgxvaSbOSBofmbIFJ7UceSChIAjv\nODZaDbmt+o2oA8p4dM7kOw/MPXdWAZW0H29/LFPIbcVaUWoBTtXxX9I4cT4u\nQcflm+A7aSOnxNGbEeN0axY5s0uAVc7K1rKZx87uBkuTgwgZPri92srTRz5a\nIVhFaDIvh2e/Zlnp5uLNequlwtRjiKsuh8tcm3PTFM0EWewg2XtfWa4jDcm4\n5mK7\r\n=2DcS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1d8fa258c791ecc27c06360a9fc16dfe3eb5868f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.56","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_3.0.130_1624499538130_0.9493913506205462","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.0-fix-integration-parameter-2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a":{"name":"@balena/jellyfish-test-harness","version":"4.0.0-fix-integration-parameter-2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.0-fix-integration-parameter-2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"784f62327c1927bcd55d92165a61c3e589bae93c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.0-fix-integration-parameter-2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a.tgz","fileCount":24,"integrity":"sha512-QM8PkRcOeCCrP1s8xcUlH+N5HmXsQiw7vUWHJAC4MX4jBRTFkJW6Gqg6Wq9MAcyDRw8izxI/1mmrNTnlkHbb9Q==","signatures":[{"sig":"MEUCIG7moX6zgrVUKpnJyCTEidp/mgW3Q2YwYspbgyZm7TS6AiEArYIuVYuIZ1yLRw6LiFxlrSv6rIGPGz3INwaDvD2Mv5U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119111,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0+pyCRA9TVsSAnZWagAA5voP/jiRnfMFpbczT4gyTXy/\nVxXoQwgJ94kUl5LUNPVX2LxwoOEmRyfa+lFSmLtlAaSwSA9lkd6KJMtAMdMt\nqxLnrJlAoHvBs1xNZbZpnlnQiGrZoS6Vnx+6ie7AvyntT5V1SeL1BBY/y2By\nMaTrqdTVq5vwnIKI9xbowKCa3+8Kwzk9X/H0U7qjzyB/7QSfEs64oMv8m4d+\nkn1+Oa4al/0dMFx5Dw1mk4fqUcs0+uSeuSIQwb+en39lCk10FqKF3UKs+Dgz\nrDl8Uk2Trwz50wlcUvwjtY1YxF9BQ8A+4qrKeIC1zYWzzQ3+ETeESaWcwoak\nHQNhxldPmjHv0Yc5hfnvMg2nCDC/p2JKr/8uHznD5/LcyerRG3qzX6cIXBYw\nmSqlZEATK5JzCIvRYZBcNqLf1aRoHI9F6fgX0/VIjPZyjF7ZXgmvySuMFFF/\nuV2Pyu93OGSGf1DJGkYlMgiiIzUL20WSTtbVoDBfKBLlRiP/WTWvqhe8b9KK\n7fINJb6kbnFdyMyLKbskzirBcs/m+cwKA4xa69nju7/DqLy3tpPdrZFjgPGt\nXGc8YJSQ4A04ZF1md+BPceGeieQpim/Z/x1OZuMtqJ/Qjp4aDscMzTJ30QWj\n3GIgWdqeh5MTvv+jF1eejCag4ELGEMw2m5hzbn5nyYhvDMcFOzVaAT+syqDu\nGF9T\r\n=I0Ge\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.56","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.0-fix-integration-parameter-2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a_1624500850271_0.7117350633997188","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.0":{"name":"@balena/jellyfish-test-harness","version":"4.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c55abe3a782fed5834a2f83e42674b32b150ca97","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.0.tgz","fileCount":24,"integrity":"sha512-dmz+prPkVh9XmgNMzX7NaJ58azqBDOfPm54SgL6B0o+WXPkjus3qJNJ8y7czhM9vn0C5nVxS/adlDMdhTcYJLg==","signatures":[{"sig":"MEYCIQDEIrYy/bS4XXeoL4TtZ1dGxEWg/C0wWtspU9K94Qiu2wIhAMO4LKI8zmiWKebZ6bHG7zvY9eiEIR1FHOy4M2oi5Tnh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0+1ECRA9TVsSAnZWagAArP8P/3u2cKJjVpC/AjEkES29\nZxm5YDy3ju7i+zOJ4fAk8PonrQJkNP0dUYmIkn/OPMNA16dJJZHkS25QG99N\n1RTKgtR718vMOHErtAYJdwJqVw3UDzR6BvNJwhSoIS9wqBBNSjNl4+KD9mxO\n43i5XjodHi0m0bZ6QPkCIsKNXjg3CMJk3cfumynLO+ASBajJDivsRTdX/OOp\nHQep/pZObGuzhlvqaitMor36iDIbRSph3+RvVaOZ8mLRqC3/avN+9V/zjxQm\nz9pz3Ar3/FkWjqAS8tf3eDLw0iEtMogfO+H0UoBzR5O2MUEuTHAFPw9s79/P\nFUhkIBh+Jyki553zJvNey9FRu/x76arv/92e7dm9fGYlLignjH5pIBUgY8Y+\ntEoZn27lx9V8ihExFq8KqOX0KtgHNpX0GzhPy0TbvWqmS5xp1hJZA2FAEtyG\n3LPvgx6XtbBaKSVHtLlrxwuBFbZ0DbI7QXfWFpq4aBPh+G/qCcEmZR9C98NL\n/xzCbBmSWLdkecBF/zkjMsnlDt3A9tP3BsArxpQCDLjeO5MAU/ANRP1WtewM\nyc9Dq6G6uxxTlDNhRArXKw6Auj/bdbu/jnZu1OVgCWRx3BAykN3LzBzzefO7\nje02ZARgNRViJ05xAeq07ruCFbxk3QvIrJkwA1sytQbKf0jFOOT5nM/HDDCd\nL1ui\r\n=VmYp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b95cf5af94f6ba6396c8ef6e74254740fbf1293a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^3.2.15","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.56","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.0_1624501571601_0.17448988131376741","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.1-test-loop-field-3ed69685d508efa16bc5f554bf3021b5beffe8c3":{"name":"@balena/jellyfish-test-harness","version":"4.0.1-test-loop-field-3ed69685d508efa16bc5f554bf3021b5beffe8c3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.1-test-loop-field-3ed69685d508efa16bc5f554bf3021b5beffe8c3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7112adbe6351052e8b0e00a2abe256add6c5d2f6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.1-test-loop-field-3ed69685d508efa16bc5f554bf3021b5beffe8c3.tgz","fileCount":24,"integrity":"sha512-HYctFFZ+5YzzVLFHdm164hiqcqF0hatt+gzXAdApzxEY7tkiYeIgZ70MYAuNTmEupY6jPYijDUS8kABS7JQWCg==","signatures":[{"sig":"MEQCIGURkKbdkOm7HSsmNdZ40Y1yOzFwDpcQ6wbdDNZWPt4dAiAc8whb0gjwq5ug6bfI4fVXANpGUPaDZkEUdtroyMiVDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0/obCRA9TVsSAnZWagAAdn4P/2ToMA74+7/n2S3WnGlJ\nljwo2dJro+cV7d8WK11RNbBTCs+x32ikBQHsXD39OPndCj4BvpbtdI8lR28y\nCTySWcfKLG25LjtPjaWOxborXTFQt89lYTSew8c8myaHPhaOKjLdvHgBIq72\nw5k1hA9Thn3DmZFyewxSSw/QXHncYGhhVwp9X6k+xFwSkkUwx6UzqvcIRK72\nRGR8+N8fRFDVNg1hh7IQ+qa57/h5SISaGWyzf4Dwv3Dq8tOIFLRR+kg5a105\nzl1m+BrZr9DUGMf2bFRZ1Sqji4HJD7E1TD+9ynPQUtaeh6AKQGJRYzdgdk5D\n/9zB9cmQYcB1yzyGx5X3jECBqBsl6NVP9dplkzImv8yxsrTmcLZufgG2RKsa\n5jTeIc2MqLRg9I/h+UcUqDN/G1R5nmcbhJJA7AUMap7OAGsZ83611T1Eki8z\nme3cXJz7tCc/oxb7RSbzalst/ltyJm2mJpEJ/I6+otNfRto+uvHmaD3Htmsk\nVb1HZD2+dmmgyYlP9Ue4rechHepynU7oqpvBYiJSpLUMJnEjFk0rXMqA4S88\nMaHYUlkVkFH128n9S5wjQ+65GmSgSj4ucksZOm5+JwK1V9MleedweDmxytRo\nnpeaJiQrJiicuRmABzrKw+RXh7ngBooBLwselWWqimWAY3BqSfPsxGY1eiot\nnZNq\r\n=rLtv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3ed69685d508efa16bc5f554bf3021b5beffe8c3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.56","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.1-test-loop-field-3ed69685d508efa16bc5f554bf3021b5beffe8c3_1624504858939_0.43686038436031027","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.1":{"name":"@balena/jellyfish-test-harness","version":"4.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"18b82306609c7bbebda39f3f2968142a5b8a68e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.1.tgz","fileCount":24,"integrity":"sha512-YhzEXagqJAilV7pSo5/BvtvuAUPha7yG/npSUwMj1DS8btKrqpoT8ooPcm3PxWDOZVAovG7sHvBU10wjbm/e8Q==","signatures":[{"sig":"MEUCIDaVlNu3EKcYfGnFvIq1O3xgLGz7Aq8NVo8Lv1U6O70dAiEAoAiRbwTOqhtvwqHfBeEVM0IhwX+hx6SCkQrqjK06YyY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg0/tTCRA9TVsSAnZWagAAD7wP/38cUhFfaGK99hyx7PZ1\nfAFn7SnOu7D+jcTZ54QtNhA70Y9T4/hVWdNTWWhUL7oggaQ9c6hlzdhMQfM5\nnEnzQiEYV2NTqtYzeGNEi1Ch17SmBD9ltfPhv/pyRmuQQPWlyVVEdDyT8LDK\n9XhCfH7h+1GsJu8FK3ZnECNBx9b4xfnMMNz58pCo6hOhdOWglnrqNiM3V7UP\nobmgtTaId740H9ONYIm45N03XMdycJw5P52Vfs8ZlPcgtjmeyGlD08SEUNHR\n1BxAqeE1iJ0jajXW1gmDXUAPpotegvXOS9ENsu/qDRNfBG/Nmy21lgSfBvbQ\nKYnLApsqBTrbamse30KQ8QYqejuabhSgjnDKcUbXrQwctw+LKhHfOKWTNQc8\ns7SLiDMmlnQHTc+gJ9/oo1/UshpKi9T1UtKi9QlYadpWJKzsWc1nXCemrfQO\nKjkYXxkNdjr4iryyyQf/K6Ress8uIVRhDEQbB2vM3w4vk0iuF8qB6peoLV6+\n5i9e2x8TXmyWarXRYAoWThmH2gd9kjNz1s7nDrD0vTm+jpi3YYE5HhObEVfA\nD+MAWE9gd4KQCWD+ffnCrGvDV4PtSwo66aEQ5rNhef2xI5W3XVNNU9WNdc+q\nC8yaaynx0/STjBtlqB7y2NORVLFm6t+vQwtiJf5/vzf9f7M52T8lciYMpwwJ\n8C+J\r\n=4UYp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"19d7d9b1785fe6a396d59240b293c97c92516f90","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.177","@balena/jellyfish-worker":"^5.0.56","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.1_1624505170753_0.6891715572550512","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.2-renovate-internal-patch-d499a47a1b9e02bf05547ebb4f224a5d79f774c6":{"name":"@balena/jellyfish-test-harness","version":"4.0.2-renovate-internal-patch-d499a47a1b9e02bf05547ebb4f224a5d79f774c6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.2-renovate-internal-patch-d499a47a1b9e02bf05547ebb4f224a5d79f774c6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65568f4ff3e5080ea9b35c59d08d0de47812cff3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.2-renovate-internal-patch-d499a47a1b9e02bf05547ebb4f224a5d79f774c6.tgz","fileCount":24,"integrity":"sha512-5cNSN18MAeWfZjZ2NeT+gBXvx7zgrGyPpRHGJ9VzmcKies4AXEUCgqb+k/1Y7xnyu5lWeC7parpLBbkMoaDUFg==","signatures":[{"sig":"MEUCICr1VJ+ZE5FSy20vgv3GgUbwKo6kiIcM1ihKqkM3yZBFAiEA+9nmxMo1gvCctR9WuL79hVbM58KKXC35U70AVIoHB4E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119260,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1FE9CRA9TVsSAnZWagAAPlYP/jE6x8M7Nr+GS1tM7N/7\n2cmlujNVRFNkwbY499/ykti5L2WvGnoV+Q+BPaskTREt09XCArLc2kMWeQCS\nDpE9na/b8ds0/aF1w2apV3E9mP5FNhXIHozOOVdJzdFuDkG/Kg/WB8PJh+fN\nv1UQQ1gRFkE2z1HFyD6SMJ54275b7nNRtkrK03OO0pN2gMioIavN4KYR5RP7\nQIcCfQtP1sUoKCm0V1CvnQ6QPzwmAU2i9g27+GupT7osZHBnSZo5Uat54O9B\n5LDf5sG8mJCkN4uyRp2pXFKIMHDHNe3ef1PnIbODPCuvOLEkciMHBOXlcGoa\npkqlyrC4e3Jxp6LNqBmMFTXn9iVb/ynJgOv1C1bjjQQGy8x2YjJ08ySsoovx\nmA9mJrLdv8Dq/2YnxssXNnayl7yjFTUCSl/FiyPb7M8SJMBhYLVHWYYr/VeO\n/FECje4Phlr66H5PwWW3mmMLQ2E9w21t/GeC0gUoKiMPx+VgYcXkGQyt3rJH\ndS4DEq5rz8BDM4NOi/fs0E3uEB7XfAy1ZqzoZut16yKRHwHj51m6/M1/v1Up\nFL1wanndgS8iOUICLF+RGaP5b9z3JnWvzEeeNMRXiPatOFaQbCffsouOIOvF\nd1XbFALWo/jpnghElek819e2oPUZFSmf7H4+W7jaZb74OWWhSXlvHcKtew0c\nj/a6\r\n=/7g1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d499a47a1b9e02bf05547ebb4f224a5d79f774c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.57","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.2-renovate-internal-patch-d499a47a1b9e02bf05547ebb4f224a5d79f774c6_1624527164584_0.5273224124184601","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.2":{"name":"@balena/jellyfish-test-harness","version":"4.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c13003424a384370a73dd76f53dc26bafc29af45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.2.tgz","fileCount":24,"integrity":"sha512-uO424bNsZXJnBRWDCpxQAGplhEmRaawbMjzZ1eK9ZX81zZ2yuLP4fP9sVzwkaJ2899ExuGJpDyHY23pDYxKtsw==","signatures":[{"sig":"MEUCIAFuzHmafkxom1VDVgyxp58ivT68w+Jl3cE5EegrsfVrAiEAni1SAokNUJMWxubgY8/d9KGv/Dsyg+gVodbRKPQbmgg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1FIbCRA9TVsSAnZWagAA1wMP/0/w1R91nWAJlq0lG3ry\n5EAmJoRnBPK8HPq4pvCW9++LHP9jy53eBQEXs5o2/AlaO2D56fpVJuTnoiAp\nymDMppmfLbWtR3/kcH+Ug49xEguMUGPPf8XGpOcmPGj2b6Rklef9UOQEAgGF\ngLH1kmJ/Ib9ZVBvQAg/lDLBcJ0xwCq6MLCxNo4usuDWBFeSCGYn5ZqEdp/vA\nE86Ien7BL54fAsalHJXZoy3u3FpHVYM8EKyp9oVGPNoHHDWz01D6bzqSAslR\nID587qCcc5c7jFbDBxpVxT+Y5Y7Qu9sxLf/rY5bZyKxhgzrPys/SCqOg+7gQ\ngCupgu5ogGLWgpn1k0Y5COfqruFUVDZvpOl1Zhg0qxZQdR7DmUD3sGQqmMo1\nIUv/tsgsRk5Y+In2O0lKEHXezPpVRKy6OYIZ77cO8nhT50zhySeDtPDZ+Pep\nwvaNZkVOxJTOwfVVoWjV98mrnawfbZnL69fSL0UinCSaDwyNvldGibyVF09R\ns/ilRe28DpxKHY9swjln+8yRnVGnZjxU2/Y0oKtZQ5ghzc3Z2BdHrvzcEUEb\nyWUWxoWrZqLJW6JfFq4BX2QfUnOnjVA+mpc10Tri7l366GA3xDj+KExKYzel\n4DUE4gX7K7VzpIS1HNSLMNVBpxEfwuTqVYK+FObh+uwo3gjRXhvLTuNm5b7v\nhPmJ\r\n=Nb5l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4606a2977d3f6550c9dde98b19265b6d01a077f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.57","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.2_1624527387401_0.0872119882514264","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.3-renovate-internal-patch-19889cc153f022344b4014a3526c24efb01ea0dd":{"name":"@balena/jellyfish-test-harness","version":"4.0.3-renovate-internal-patch-19889cc153f022344b4014a3526c24efb01ea0dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.3-renovate-internal-patch-19889cc153f022344b4014a3526c24efb01ea0dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"28db2e44456baebe1dff84c6847ce87537bc8d2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.3-renovate-internal-patch-19889cc153f022344b4014a3526c24efb01ea0dd.tgz","fileCount":24,"integrity":"sha512-VVY/a8U/v4dlz7tgYCrCvN+PbbLhcykOOrG7YzN/NUBNCMXwSpADvntuLpiWZONP2s2vcVs4Ym/m7RFbQ82wUA==","signatures":[{"sig":"MEQCIFsDmqRGifCgNZni6I4sejai3fNl0TQ5i68lbpHWfzeyAiBbzSbEz1AKjKpbRrlsWJmd7O/BUKORgO731GOP2kKYOQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119333,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KCFCRA9TVsSAnZWagAAwQ8QAI0DV9jYQ7NSKOWhsALU\nx3G2tiW2wiRTUYTZI4NHCRZqhJfTbF0lhrvv7gv5SNz3BjsxhggsmRJU0szj\nlpSjBCjv++Gl/Bkn/D0tqeRze66dg1T4OcJXjQNCS5ii8WKuW0HzqwViidRj\ndSB23/hOUzzHF4xwpTbe+gVJWOZt5PUxLRyE72cccK5U2nKq5zHqODmTVh76\nLM8qjWHu+jbB0Ou0R8ETja1SqDWzFvHhTMgW9EBf3XIocuT9WsUF6isM0z4M\n+K8KQec4ErhqRy7le/scQMsmex89VqybkPoyyfZsbS9vuHd/yZYLqQ+GZxfk\nwlL8Oo4HCOmNVSRr3HBbVMYTeWpBzdkH9uaQ/1/5wx7U0pIYvNyMtgff6FKE\nT9zCk50dZ2xSeOLmO4xrXs27l57X+g6gKmThv1mZkyts5KfW8xnO0YDgbaFx\n1gwLFmsFyHA2Ry9ETv5totgPIdIy+otNxKQy/hucNenOv8frrBTQxIS6oeF+\nKAWEYTl93f7dTOxXfdKzTmnTNrLVN41+pTSapgo2L+Jw1zDRpXw02Qie66c1\nlmOSPJ8cKkpJn613wRr2dRcAVJqnXBH5+Mck50XoH/LO43RT2eqQU+Y+W45x\np/Hn4et+hz/aavrbkzkRJBwN2PrP+/EmSd2053oYdHNnVUtJSoKEv0Mi+ek1\nJZPB\r\n=NP6R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"19889cc153f022344b4014a3526c24efb01ea0dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.3-renovate-internal-patch-19889cc153f022344b4014a3526c24efb01ea0dd_1624547461063_0.8193725840155941","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.3-renovate-balena-jellyfish-environment-4-x-99cf2a4876b7f55ab4660ed55e901cbf5b593e4d":{"name":"@balena/jellyfish-test-harness","version":"4.0.3-renovate-balena-jellyfish-environment-4-x-99cf2a4876b7f55ab4660ed55e901cbf5b593e4d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.3-renovate-balena-jellyfish-environment-4-x-99cf2a4876b7f55ab4660ed55e901cbf5b593e4d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d52274efb24a29bfe35c243033a5e5348558a35d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.3-renovate-balena-jellyfish-environment-4-x-99cf2a4876b7f55ab4660ed55e901cbf5b593e4d.tgz","fileCount":24,"integrity":"sha512-MG+qcu4wIX75RIajhkDtQvzG0g47OUhND6u5G5YttRiCVyoNu97dEC4UW9x21zQJOvPpHryb5mvI90x8vTgMQg==","signatures":[{"sig":"MEUCIQC6avgwAczTvU9iunCdvdl0c0OBjgQz0aUOI+U730GIlwIgTGYD12+5qXaP1OH8wKgPF4lCN7xxypswcghO+H//k+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119387,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KDcCRA9TVsSAnZWagAAVLMP/iednG19x1vTVl5YD3ee\nrUssobZPEzrcRvpv15QGnLAwdv31Oyopsxjk2RbG9gDbiFQpcRAXKFX851pN\nYB+jALfMskbSpJfGBctnugxLUBVs/F9Bp+wQ+hePwzTk7nA0GY4wJpUJRuMY\nGpoYPQoWsH1Tx7/nZsC3cxmjCgKAsjM1g58r/htsawMa2gn+XnecEh9Rk5T2\nZw9e9kmj+pndiurwzhyGKIvMiVeXuGLXCTPifVPal4mz0WS+mfbNgGNgCH4d\nVkom4IvY/tfIzr7UgTaVpwSehpN/0nT9Yp2OXbvXrBbY68y5ew9TbVw21CbU\nhaeEwLl4WLAtjkoW0NmCEpRihbyqzHhBOiK+KVJx4sbvbZjQ5qndraEZCci2\n64clAPVCudpfs2kguxDQwMzblicrmFd8h0KNtn6qGhppWw6uUqZFv74gnFTx\nZvo/Lza4XWtTLpun/iMS0N9LktGfpBB/LnC5DcfklWPSMDQBFVN7PMVe3mX+\nK7+KXh7cCJvBjPQh8B5fxK5CCHcHFqL44hRmuck482fFOQTx+8JCGVoXrYn1\nl2Q3hI+Vg0Tc2LTsr6T+TPJoB47P8L4D4F7i1YHSucCOHOiRe+Kjtz6v4Y/+\nUH5brf8cSFhSuA+nvKnzyiLHuy+uhztOdDURAPusqiY6PdZZ1GOuaLBwHcb4\nQrmi\r\n=2jib\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"99cf2a4876b7f55ab4660ed55e901cbf5b593e4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.57","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.163"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.3-renovate-balena-jellyfish-environment-4-x-99cf2a4876b7f55ab4660ed55e901cbf5b593e4d_1624547548285_0.8103407733892587","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.3":{"name":"@balena/jellyfish-test-harness","version":"4.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5dc534732092b89cd70f67ec57781edb01bb286a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.3.tgz","fileCount":24,"integrity":"sha512-/PTw9fq0eAwrLEEc9f3Vub+bu4UI1HYAU1WqeWh6EvQxe8FmjGpsyI6NQ4Shgt0aumpYNe6zmvtJXX/UzxX2AA==","signatures":[{"sig":"MEUCIQDe7Cvs1yST38BSnVXteh/SmYgr/w3BvPbRTrBGV/HKaAIgdBgXqDxN+GD1sn69M2+yE0K27hTd3a7ZaQ4mAD4hR4U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119268,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KGQCRA9TVsSAnZWagAAE3wP/1zdQSwGSMsG15PoDUkA\nnTr+Goq3WRQTckX5VwWxdiMtZTTEBMyk9L6dQfvtDOjicdP5Qrwhld3rveBm\nbuz44FhQ8uwjHYQolv+0xwoAzTXPL5bIfLKGpR+v9S8q82D48g2TXyXLbbGz\nx/34I56wf9AmUMVyOLrgn2z5fbkG1tUqA27Go0189v9nA5rUkNvz1Innttjm\nfycOGz2jvAPXZpaW2Hk1mqempql5C0pAUeAZ/8eBA/+0UMfzAuKwHoKV1oiy\nOF0cxR5Zkjc8jw8Ek9FqcgJhkxmM7mGHEb9bEanWBUgLdAlicSrjkQp4QKey\nV+bvld77TLKsCayOpJ1q4qCM/ruymoyuGVRrJld7pEpb7s//Wpi8d37AnSTg\nYn/lZ9v196S7d1qpJDDen1RJNeekLDJZlwZC7fNMd6pUAZWjwUhGNzDM7nuH\nyo6fUREnY+898SAWbUNeOyqHf5D+aJbFCi/eZeXFasRU7+Ar7vIsTu/yQ+P7\n/zVdHG4dNNjFrYm8v8CFKj9LIjdL9vz3h6X2+shjsSgKCMfZo2uoXbJ1Hq4+\n0eKQLlH5fi6WtkiHeokmftCSX7jZNyboKSzpQVa+Z//SMs693y/cx7xBdfci\nyrS9YnL4Zz94sHUxQwgpQ6iJtmp4WvJtBKGzwrixMW4Z5xb8d3/RzYc2JGEZ\nKC3m\r\n=MkZQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4a57b7f743f1b990aeef8e61ed772b56672b021f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.3_1624547728193_0.5418838222760589","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.3-renovate-balena-jellyfish-environment-4-x-da0451e4aecbb5e2f3eeeb2896e5a74a096b575c":{"name":"@balena/jellyfish-test-harness","version":"4.0.3-renovate-balena-jellyfish-environment-4-x-da0451e4aecbb5e2f3eeeb2896e5a74a096b575c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.3-renovate-balena-jellyfish-environment-4-x-da0451e4aecbb5e2f3eeeb2896e5a74a096b575c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"630c10d0267a583fd84e2afd996eaa7dfdb69dc0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.3-renovate-balena-jellyfish-environment-4-x-da0451e4aecbb5e2f3eeeb2896e5a74a096b575c.tgz","fileCount":24,"integrity":"sha512-/VJ+MxCheqMph4FwS1uVBOagXnA3PTj0VOFNjPUIcbiOfdAgu2TqL6NBXxLI/IIxfCujcTt0r886A3cVWyBuZg==","signatures":[{"sig":"MEUCIQDj4sqnpvKsprAVNpcNCmTNWWN0SM+1IeccZaCztyA2FwIgVSVIuLIRMJQVFk+A593Lu8FRy4j4IoCPBX52pXKbDj8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119433,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KK7CRA9TVsSAnZWagAA8hcP/12Ni/1ovs1r4FLlsjhc\nxbGrNkb6l5DtsbFWa70PElEWL47WOL9JpNOUF9uoJwcuqeFPy3JhwdtuzOEe\nrv52rrVi7CmvQmr3haqRJmcfcTBWqFnR8k4gRYtQys3Rr738aioOnukwizm3\n3fIkbW1kkdWgo5eH7AWXDY9o/PBN6cAWkqXRcBwVc1YFSNfDGbOVFe8lrtt4\nbgGj9Od2lzY2v62Mh5Kh/CLyL4PUoSDkilqw8GoDSDd6AGSxp7lYODQSHVxU\niKfiwvfxn5LVkdwndvMbfiznzSj2olnXU7HtBvFni7qxHwviHywu3THNW0tU\n7NEj4YMeykZr03n06DKP0EXz7sNI26V+T+nMxRy5I2eAYTt9KtRv+wGFaF3j\nXXNLNedQ+5wBOP+h5V9xO+WUBi0ZWYbAiuGL8SfTyvWzb2luAt82b4F6i/9s\nimPsZKKhBedpigvpV+nKk9hXuoR+dxonWx9hwtBNSJx9LGfLKMmnS1BZje9i\nFh19caBchCaOvjrP1OcCVlf2xpJrOg6mcTbqwnSr5Y5Y4xP+PHgUj6j+x8Nu\n9ux+0ox1YGtbgTAjDHjN+EtYt2S0amGZ8r83hLSnf8x/bi51JxRGWLV379o2\nqKUaonWwGPGcrr98fGbCRG5UACxfYJU+VydzXWLAgytyFKZ3+Tv+1Yi0ZUKu\ni/xR\r\n=SfQv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"da0451e4aecbb5e2f3eeeb2896e5a74a096b575c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.3-renovate-balena-jellyfish-environment-4-x-da0451e4aecbb5e2f3eeeb2896e5a74a096b575c_1624548026941_0.8510761882172098","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.4-renovate-internal-patch-d64efde12dfd5905e41359a08546d0e6b9bce33c":{"name":"@balena/jellyfish-test-harness","version":"4.0.4-renovate-internal-patch-d64efde12dfd5905e41359a08546d0e6b9bce33c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.4-renovate-internal-patch-d64efde12dfd5905e41359a08546d0e6b9bce33c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"83a25361cc0a16a878df81d6831d714dac63a005","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.4-renovate-internal-patch-d64efde12dfd5905e41359a08546d0e6b9bce33c.tgz","fileCount":24,"integrity":"sha512-WRkF+8vhY4s+xs3TrAAtE0IhIGiFad1CeeAt3Dw/DWS1yH2A+Dceeu6QZXo1y3zTSg/Yu/EtjtNwXjBh4zetjA==","signatures":[{"sig":"MEUCIQCO7XsWuTZ9nAoK4UYJu9kucCx6bLd/WAYku6lXpcukNQIgMZJYAx9DO/nYVOcmrJptzgTtOEh44K7mIJXYPERb038=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119406,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KNiCRA9TVsSAnZWagAAbmUQAJmcUO8QM8XHeTwI5lDj\ny14+R61HxHDNy7Usr4qVWNVYPFh4jRP+DbaEH62VV83EYc7Q5Lzf3tVqTCNL\nNtev2jnSfygtNlLNeI9FexoO288FpZMKCLQjRccmnm6kvGeBoNBnaq1fHV3A\nmSXamU87C62Y6Ks+nZchPok8XIBm75YlebliKoXj784rRRF3CJBGgKLVdDTM\nWVTp/SLOX4KaiLIo3wFlfb+6tT1CA1pICHmvkSAFk2NKS3dEmS7UVwo/L0HF\nB7jdL/cEHMXG9Lp4AxHZ+0QJKRFbrFU/tbueOWuBBQb7rA9fpEV4z/yZ8E+N\njOgD7NFW9UakjPmVuuPCkgcevGkuCHfJ2blGRmLcHFu3j+U2inLYivYLIXcR\nvMTSmQtAFisVOW4JeXi3w9kbXjd/dlUDY/ECvZW9FbuIfUWOneAbuvfZL/gT\nG2Ry1qHyY/3ffacIOSVnFU1QfduIC5xBD4zy64w/u6scnptjXdrFW3SbKtVr\nz2O0bwhzXYwNqKbInT9Cbci0xwxgK8tU9aPpbRjBj5SBK6DV3QStdhI3zNzL\nuwDPaO6IVjieSCEWCGv5Fk6sZs92lA8iWxHcpyUJtamrMEqVRJLgfnBzFOa6\nSyPeIVf3LINcocGn1Ncu0ATGfvaljacvMl/tVljefTcvVk2qC2t3jEcmhGrO\nMTyL\r\n=CEWW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d64efde12dfd5905e41359a08546d0e6b9bce33c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.2.8","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.4-renovate-internal-patch-d64efde12dfd5905e41359a08546d0e6b9bce33c_1624548194255_0.7395713908699257","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.4-renovate-balena-jellyfish-environment-4-x-3ae25bf3c0d85203eed2266b7de37abc51e2562a":{"name":"@balena/jellyfish-test-harness","version":"4.0.4-renovate-balena-jellyfish-environment-4-x-3ae25bf3c0d85203eed2266b7de37abc51e2562a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.4-renovate-balena-jellyfish-environment-4-x-3ae25bf3c0d85203eed2266b7de37abc51e2562a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e1deb351191e507c3f35c7b39478ae12fa429b9e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.4-renovate-balena-jellyfish-environment-4-x-3ae25bf3c0d85203eed2266b7de37abc51e2562a.tgz","fileCount":24,"integrity":"sha512-f8H1azvR8pfbwZw2FvXdOthju2LH9ypP35WERU6gPTQeoLdN6enxD0GjvAGIapgeSxPgWCotjL4tJv+lviCPVQ==","signatures":[{"sig":"MEQCIBtQRUH6Wp+/bLep8VbzrU0upxAoqdxrTxl95oAWWzG9AiAzx6uv+JCBTXJaBMrH+qQxmjh17VdrLRwwULetkSzbsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KN9CRA9TVsSAnZWagAAE48P/i6fwjaYH/m1yIwJ5OL3\nPcxtN2DrFB2CABvuj+iR/XcAlRjr6kipbM+zGPjhJ4irXlKxfOvrOr6P286w\nh8LHOUNYsBS7vEfuTGN24ca/IQRRJ2Kl41nu0WrXNkOXUD9nzU6U+EAt5mc6\no2TSrzqaL04Nk4dQQykcSPlC9leJBJAnRDQtuwN0QCABGcqcnePxBYl15/sB\net+Y3tvrULqpX3EHrEiaVIop4ivlFaALzWqaVxjfI7jFj91bL7uWOzMWWUaW\n41XU7WBijS04oTTqchF6plf3CUu/Px0v7SDyRO5/1kmJrBIHDiuoKGDl1J5w\nwt/BKe5TlOAuy4Rn0kPkB/vlttQwpZcdmSZRXg3ojW61TmQ8oqrx8l8A/rEw\nrHu6/qnxy1Ma4FC4xOhEMc/58ZyzTzIRYVP6tC66WtkgawMxMeNYi9I90nGJ\nR3O7DwKiW1BGNB3ZdPvjbRUmhyEMfGTqm0XZJ8rWoVNYudt43WS6GjjG8sHS\n4/nrEQTNqXpvvx/3UH6+/0hSmIyrEFSuav0zpK63JuIXIsUd4BrykSbXhpWd\nnH0hWDyAg6c/V1E5GwYO9fPmduNbqeiwq6fekI9/RumG+5dMjvzMhkKfFYNg\ncYBTgE/bYHazP8eDZ/inE+UVNq574UWR6Gma5BlQHeY6yh3PD1sdzMPSh6CK\n1ZZ0\r\n=pz6u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"3ae25bf3c0d85203eed2266b7de37abc51e2562a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.4-renovate-balena-jellyfish-environment-4-x-3ae25bf3c0d85203eed2266b7de37abc51e2562a_1624548221193_0.9383312052475481","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.4":{"name":"@balena/jellyfish-test-harness","version":"4.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"313f239828b482eb32a612190bc79735d1eb4fea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.4.tgz","fileCount":24,"integrity":"sha512-k5mqcwQcNiNqTPywLuUfwWtqSoxUmLtBTwhrP1fUo3sdcVzqkX0wUYPU0XUDER/GcskJMQELiRexkb1P/Pg2ag==","signatures":[{"sig":"MEUCIQCavsu5JnSI8khMR8W5ITKG/zO9VKIK4aVf45c/BLyMNwIgedQ/zEjka0+YLTJBpLnrDL/rbgLUXrXUefkUpt0g+Z4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119377,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KR2CRA9TVsSAnZWagAAmAIP/01S22N9jEKOsAqUiGYQ\n8bnVRNgVzHEaYE1CK13mT8VUCYmHjAXQyDzhDNWi52pv23Fwg5MpH8H2QRQG\nM2qkmVGvS1jUvCosTXHbl3Dw4voIatmRAW4LyV99unfiA1Xo4Eo/yEVLTJI+\njZ2Y7lrycyL65thQJE8yk0H5JjMOkb+eddcASbpxaqQhYGAP27cgN4qg4+gI\nM+itZgqg2fPbQgMZ1fyRV+A2On25O6XMk5PpBDJaXELq/FuWfU3W521svcV7\ni6DEUL+0teS8UY0KpB46UN/evKpRrXd+oJehyN3vc72mlyTgR+VvThouz526\nu5akm8rj/tagXmhq21oFfV/Evfxe2lch4KUY+iANCp8s7ZOR/6RggN0JSwuT\nbFy/X8eZh0A3tyL6M64Mps8jIJSCAJc366+6TOQDXpPwGQe6hChtGkA+FeF5\nSI362eMy9PoZIVaO2x8v+kEGa5U5jZn4MTvidrrBEknbHh0OoLdElGQdfK9p\ngqF+R5rcyJxwHHsgcDQT/mENxXBKq1pAvSpnS57x/6IwoDAXVDQPNNWq/E0+\nfBL5s6TdAI2KxrE3Btj7ZhLvFJ9pS4Ss1bRzcjgMy0GJmuZSTMctkrGX0FNq\nAvdFaWOLNP3gddhx45kUAZW8d385GUfsbkald237ddZ3GDPP5/8CvZnIga7g\n/oGu\r\n=zqHd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"921ac4d073c53d5043a5ccf2bb11f20d0ef09bd8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.256","@balena/jellyfish-queue":"^1.0.178","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.4_1624548470095_0.0025462982244182086","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.5-renovate-internal-patch-e962c52a4979551855cf9baad0b6bd014c841078":{"name":"@balena/jellyfish-test-harness","version":"4.0.5-renovate-internal-patch-e962c52a4979551855cf9baad0b6bd014c841078","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.5-renovate-internal-patch-e962c52a4979551855cf9baad0b6bd014c841078","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"549f42cd49a860565f5d9871e4875b507de29e86","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.5-renovate-internal-patch-e962c52a4979551855cf9baad0b6bd014c841078.tgz","fileCount":24,"integrity":"sha512-tNhO8kC8Bv6mum5XJgXhrugdHNiuRW9WzWSwOrzdXPyzTFTQHdydKC+HiIqB1Ui3ylGJDVuvoWv/L5hZZW+AEQ==","signatures":[{"sig":"MEYCIQDqwW7cb7fNxfusAJ6Cs4wUMVreNRlFWCMyEokY6ihK3wIhAKHSyGX5/363AOsJxM6jd8I8tiHhjK2s02y0GCjcitb5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KWgCRA9TVsSAnZWagAAn9YP/3GGYA1pMoTwtfyiOiqi\nwtMWkr33KzFRGi3zq7LWcIZmdcNAr39huvVHAaEdsLH+fjRp0lJ8Wm2EeQ+r\nVq9t08AarDEK/ZZehxIYX61SHUbacY1JSgFZZGqaetZADzpw5AcQDvemcFk7\nrtfQYg45vUVnJN6bHoLWXcsWpXezlOSweAz9B5bX7UYaPSQo4txTPzdYhA1p\n91XhWNkW0dqtTuqbWcQjIR1zY+Eeh2JqUZSq+TH79l5tdoV0aXVgi4mc+m/8\neLpmcaYs6ukCHhSsHXShPPcSEn4snzHTWoTeoijc4VybIEriQtFNFLgi2kAC\nJ8zQmvNB+qHDKeuxLyUKpT/5m0udVxc4opqH4IcB2VhrGH8V0A7ttu1JZNMC\nlUxhov6G5/KmlKCbHoL5dYlbXKQoatye8Y6+gnA/CpabWfcaC/AplPMfZSCX\nuTVSrSS3Qbjw7wH299qY768DkcDIXmjAdXMTGSFiQpuZ05fjgcca1+J+1eD6\nTFmogtVKdqEj2TpDiFeT9lN8H68nxdZPHYT2VkLn9cbZInHjsEQFufjbjSGW\n4+pdDlAXdrXVpTVVBKicTABk5goEa8UgRUVLr7KUnHHAwaPTpt9xgK8vCSBG\n6KR69xTzS1LSoh4qR6nMuF7v+FAGk8siB9+6SOrjP31q9l6GDPSCm+mavlBr\n5euo\r\n=yBbE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e962c52a4979551855cf9baad0b6bd014c841078","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.5-renovate-internal-patch-e962c52a4979551855cf9baad0b6bd014c841078_1624548767495_0.4120291418243942","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.5":{"name":"@balena/jellyfish-test-harness","version":"4.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8abb0ae144bce69f54b40fc699b9d2958240938d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.5.tgz","fileCount":24,"integrity":"sha512-mSYmwJgBgqJRrxEpW0yZ3iARcOFAWnebqDjTBHuMz3fXNkorTM4hUyHfqWzJvAnkePttcosppmA6F3TuB2lq9A==","signatures":[{"sig":"MEUCIHdgrCRksAnsWxeVyxXbg9nPu43qMWwfkdnuZENrZahZAiEAtSmQ+/kfUUG0cfGYf5HcsUc3uy9PtdrfcyH+DRHjyCo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119450,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1KbICRA9TVsSAnZWagAABfkP/0ScO5Cyac4IdRzada4b\npILZBRJ3cmDBA+3wjAaxmIwSLgVLhZjX77HsICbWApqBroN6Hs4Bv+ZRga0f\nlVVJiDE7JXdLAa0VxaOPPCyI4PMA3NB4bBrU1HTp2FtbzpP/rrVtrcBOWG02\nl0oyOBastw271S35E8uaVTZAe+4Vfjk1wli8SRND2kVXoaLsZrQdYAbioh0o\nGGnBdyvP9bremhMeA5VqNVgwzdJYY8yDysL3wOO3Ci653gnLcFsth7R8RTa3\nT+7mogvhiuTV8kBklSuupM+J/dNSkNteCaY5XlM3/hG5m1ukay1eMtUUj8uC\nsd/yMOC/voGbMRVwCtc2h5GggKCS+ox4I00lxBnNVvYkZwS81sWTTrxKBAMz\nOHyOdKHt2Fgw8T782/TAh5+UvUV/1KGhpkg+89mO7gAdLUJaOAT8aSWCP68R\n67ykUP28XesDRvQh4XCrMUGWYEd2FeYB1yR87yGh4ddTHpHSjvRlmfzcf0uI\nvWMmTW+wnf/U3Qyyo2qKT6JYKjtBgpAiywG1lpkzselBmt/k4ATxft+uorbo\nTalZ4Nb1ewvvKzIpu1dgLR9RARHayXohfXTc/ZXiRgjuP3CoA39rvej9sgSH\nHhvdYUvPL43udDVwmZ64Rk+EW1UNr8nPE7UVnGESVvRrcodgUnjO+/t6UoXj\nUs1+\r\n=2l9l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"01a735b723d81228f126add5205069740f966f12","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.0","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.5_1624549064291_0.048702422710970694","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.6-renovate-internal-patch-c525af752ade1f165303c97c910c6f89fcf85ee9":{"name":"@balena/jellyfish-test-harness","version":"4.0.6-renovate-internal-patch-c525af752ade1f165303c97c910c6f89fcf85ee9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.6-renovate-internal-patch-c525af752ade1f165303c97c910c6f89fcf85ee9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a288d20dce3d36686dd6a32a2f0cfd323db5fce8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.6-renovate-internal-patch-c525af752ade1f165303c97c910c6f89fcf85ee9.tgz","fileCount":24,"integrity":"sha512-CKNk8H537GJD+h9SoER53jonD6wwyM7iZexFusAz6+iizimHw8MXRUxgj/DrjRIF92ntNlkLF21vjkUAhMQLFw==","signatures":[{"sig":"MEYCIQCyZIXwYXeFLWCEiCcIIMSGsymIdbKuFPLMQQl1uvxjrwIhAJ5FJGERnB2cj0XVd26P84RhisPCkXarB3SUG8/0Akz9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119617,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1LjJCRA9TVsSAnZWagAAShgP/2MKoQj7KgBaCENS0krv\n2MVmQ1a22DmetK1sS4RzH5WpCeLLdoCxRS6YsVkPVKJTG7ko+wAzKfX4DVOt\nGnd74FBYcvCzcvBpmTUmEOLO8WqGgsmjty3fe254Y63FMPTJ89YW3Az1fspU\nOInumB2Y6bdml6Q5A8gUk9OsoViw7eWTC8kOpwEkLDQ9hBwcUb0Br3WCuz6s\nxzza8bZFcO4E8vGxeyZB6F+kOsx6gIKzR+w1Zoxc9XlS8gayJdIURxJ4+H7j\nWY8cYfyyOo7NP6TwEj2Vc2eP/nBpi35okH9XEjq1SPBiF/kS+RIUWlqATIyq\nwdK/02cznUnw1fgh1LAD/KbnfJji9nRKTp6jBEuqn7+pWfFP9fW0Yt5v20n9\nm80R6vZNdJsGprEgqF4Elz7vVgZtwab7Y2bJRDtH0Lu8McDKwuJJZZ4A0gYw\n1vQPC8/F2JTvXFw0haIuSrgVz3c7NpIBXeerD9gUHkNLusLqtozfDJA1zesx\nKl40+lQSl1rh3r9JT7b4SapZAiQpR38X+MEGQIAcVJ1tztw3hVa++9zPc44/\nRHQcFckvS0itDVR/K6IAFyF32xynZOw2N/IgvsKpeNvnmBEVD0mTiFtha6eB\nDzP9/apFczdr1+eMX+zPfykesp3WydrclpiiJjnIumAeVyDSZzgAWQOHUFrv\nccW8\r\n=AIy/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c525af752ade1f165303c97c910c6f89fcf85ee9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.2","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.6-renovate-internal-patch-c525af752ade1f165303c97c910c6f89fcf85ee9_1624553672936_0.6820132362756943","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.6":{"name":"@balena/jellyfish-test-harness","version":"4.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"206108ee1fec3a08a8731892b1b6e9e914b50f81","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.6.tgz","fileCount":24,"integrity":"sha512-de2oe7CvXgOHyPoLCLykAa3HT81FGpVkFm8aNGnNmZjGobzxdYZ4kz4GtW4hPTwXF/RJV0mCCkP9UL+7TGLbog==","signatures":[{"sig":"MEYCIQCqaWwdJ6iJ6owbvCIv2whTNMjauU5GeQwNcXkid/4SKwIhAJZ87WDMtB5lm0NbNgp1TCCoDAgCLdLt1amiyq4IJ6uu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1LneCRA9TVsSAnZWagAAjeYQAJTeaHzx5glQ0iA60mUv\nUhbH9leWDZ11WbNu2+noZBR9sKdpkqVMR5/U7092mIylJAt/1m6YoW4coqlD\n6rfedOdBKunmyJo4+yl5qYvHingzIzZI89P2WMMWYX6hM+zeqG1sBoJD1leP\nFuGFlLwThXnueDjHZ/xv3Q+Jye/DRaNU0mUVp0YXdaKQuGLZCActvc244Jh1\nY5IgYPwxXRHO/KB/HWaEwEaApnwWeqBBmej/54dpi7cXCv3WEfwR8ngHGk9I\n/ThPlXG8uBpntoJT+yImaLf2NWDNeqi4Ylgn3+aTrmT4ldvbkobbTigdul5+\ngAM7kyWZzve1VDhUnKTL3esTdealvdHLrsBeplkkWQDjbjhT1JIJa7YVUYdU\nzgCspQk4JaiU6ymfIP+heV8l4g5GNmnKfGX3X0VOfIUkafuzth7nXDphet3z\nTASGaXpDATvSSPKTU/73GEmRbSlgxIjPKkqrrYOPEnmhshswrz35Z58Yr9Ah\nvETJNvBdbf5r+ZMswRAA37COhw+MZDvtrzIPaaqKYbDtETli/0qHUJQ8bxJl\na43LzcyLdhIkpo/z78iAj0DyE3LNhiNQqpWh7hQdDyUOoEXcwd5U6uiP2NlI\n1TBkmBtd7D3K9ots52Z/hg53oZB64xKkrUvY5AuZcH0Y3JK5eVuIH71Xwpcg\n7XIZ\r\n=SPJC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"cc35642cabcac945c22d153d43512494f3e91dec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.2","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.58","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.6_1624553949790_0.06429697565077852","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.7-renovate-internal-patch-e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0":{"name":"@balena/jellyfish-test-harness","version":"4.0.7-renovate-internal-patch-e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.7-renovate-internal-patch-e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d2c15a35356326cc124a135a8009355c2907ccb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.7-renovate-internal-patch-e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0.tgz","fileCount":24,"integrity":"sha512-8Oomi6YTa50z7K4BaU+pueWAdaUV361lmRO1PQqcG6fe4G1SuY1XLwMsW+OFsq23lUy4CAioioXlOtbdPmDsuA==","signatures":[{"sig":"MEUCIQC5xEKhJkZloPg14bNet0vLK3VflRY7knc407T0ixSyHAIgEy0xSEYkq4Z4MxDIKwkekqHmdbWXMzOe/WkAnBPTf4E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119722,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1MQUCRA9TVsSAnZWagAA1OgP/1yUSntCy9Ew9+TGpV+o\nDBacHUjXODalCDUVdEqDESeEhQhPGKUk6dFlx3xOT858vZWWNd6v5cI+kWGK\nuCmN9XYK3B4lGb3SqRwQWV6vsdcMDXTfJ/ihC7b1/KLAPFl4eTz0QKjzefS5\naw0F2OQN1aI9DqvxPTT/cq/noHABMyBiAofN1lAOvU34wMSIu9PG1NVhK1dc\nOLj5wrpqt8LBo+u+S8Z2jVQgvRO1JiMQbRbFUZHerYxkqdcv8iwRQvuWGrkn\nmoOL/LXXQBI51x20oOQq5E9bVYagt0o0TP/4v8A3rWjwEK5H/wb94LLaPHWB\nCigr30DjPnszlKWsJx4aNpWSCjGZis0I0gHv8IvQzWQDR44AcHpmozz6t1z5\nSMGKHFbQ1F67xzAGn4nTPgbz9Z30JvTLWz0vm38r8hSPnoc1srTeuVCfzX41\nWplOLuBUpIZ2fBkmnBnCIHJS9/Jk1NToyVKbhn3NDTi2wXygf/YGmpXtkJwd\nnIFf4sWiPIf9DVVCYAgQE8yxCvrDWqS8T/7fjAunC7rG9gQC1UVovuVZZnPo\nau/+KHqlD+O91gSf+wkBxC96wR0sPkBaJoypwpRO+ufEWLFgP1dU+j+NiuZn\nYva2SJzOHTDg+Su8yrgiFq5hXsReVIHmRL7h1ArVgKbScTLffIh2eqjdKpBv\nfwuX\r\n=V5xg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.2","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.59","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.7-renovate-internal-patch-e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0_1624556563851_0.2114173590978754","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.7":{"name":"@balena/jellyfish-test-harness","version":"4.0.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bbd8321d67d4086ee331edadfc011fac346af020","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.7.tgz","fileCount":24,"integrity":"sha512-vt3jXbqgAGzrXTvRlPwWg1M0IKa3ktF1aZrhjUNvkXNRxUwD/DRWJ7rZrRJ8mHFa3ZvfWz72a016QsV/TCvfkQ==","signatures":[{"sig":"MEYCIQDoC4ouE7jASaKbT7LFnbOMPTkMPkNe8SMh62QnbMt7RwIhAIk+tDFf9fEPoNoz7su72GMGENm7oIiOUmrg5aX1wCjN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119657,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1MTxCRA9TVsSAnZWagAAfjEQAImvrWustRumB43kS4/I\nOF2Vp41KT0bD5DCxD4LSZBVABtA/wYb+PnRHzsMmupx40Jv0+yND6UFNnbYE\nqlUDJyWnTYE+qFseZ3oekyqzKxloqejRnHb5JAEw3p48GdP9Xs4cvLAlr8Kx\n6u/hnzuMLWxfe4dgPs7ogYvQhjiJRHXPYc/tWJCWV6uFapv172sGQDwepVpI\nLbkd0bzmIQtPDN/by0XQ+5lrA8NnC+L2v/WjnLacj4+akGMTMuUmeUxJZSOb\nHtSPAd/HRF9ggbWKW5tn6Mpd5TeTMcILEhHN1haVZF77HvWbhRGcf+Gf6999\nbQEEiJDyhyMelJVY0ybdjctrnjbBzCkFebAEQ7bYXTssQOSwwRl4+o7D8T8K\nmUjOFeKwTxP3mZs4AQJrBv8LXF0FKEKPRJ8NFvGAtExXbne4LfiHD43fXTPf\nRP5LEEFO24MckD+N2ypboAN7yU4FdvwiKalhJUa09KXY9pDoLOXLasFoSaCm\n/HU6Lqj2DLLq2TMjrLmmnJLURE4nd4/IkeHUEoYtTYSSmLTGl+3JrvT41RUj\nmQH4DLOSFyaY9ZYE4q/sckG52xte9coLtbtgQcUUQ4ZQvY84SLC7d+/hXsbs\nqGKPPZyBhDPnvx2MiKem94p1ne6eUB0zi80yJpi+QyyMPEJYckKEpnadxr58\nKW3I\r\n=hduk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f1d87f3b0a31278b9c0fa8e97cb73eeb3592e7a8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.2","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.59","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.7_1624556785402_0.5746912094506695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.8-renovate-internal-patch-1d89f48a638a7dc77574d5968a8f6df3a704710f":{"name":"@balena/jellyfish-test-harness","version":"4.0.8-renovate-internal-patch-1d89f48a638a7dc77574d5968a8f6df3a704710f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.8-renovate-internal-patch-1d89f48a638a7dc77574d5968a8f6df3a704710f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98b757f8eb9305740827147f3f2c30668c857dd5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.8-renovate-internal-patch-1d89f48a638a7dc77574d5968a8f6df3a704710f.tgz","fileCount":24,"integrity":"sha512-cV7VYPqcdXZD1gOji74FkCXBh3gEq735aW+0JCHnoEiSlfRDTZqBRPbzomeifOZV00TZl83V+eqEbU/kbgVOcw==","signatures":[{"sig":"MEUCIQCbfOv6iT37a8iR6KgvdwyuoTZ5EVjRWSVOrmild3HpYgIgC/JiSTMsy3VoMbezWIIPTMExQ2hGSG1CZUrrgHXz6B4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1OJRCRA9TVsSAnZWagAA7+AP/R4LJybYuyhaUVu2qB6x\nx+eVuCjQwIBql0foI1lwci5CQpY/eoRxkZvRuAjcjEFSLnF5Enj1H7wj5XrC\ndFkzy+4npC6Gx4SwIeXA1I5uUc0MhnfMJGYmtQaOjD6E6MgLrEYqewyK37Bv\nV7leLeT/eXBv917fSyVnkjZUuTFhH3cav9umC+tspPlyS6EjD268lsSCz+G2\nGaF4hSoCY0SbsFfC1Z8z9aR9CKvmk6kYySj8y7NJTXO+uJVZU4AQid2qsEsR\nW6DUtMS+TPOHl8GwNk7bfFNXYwWjtUxoeiVuodPwY3M9DGJCRAJmqrHZ8KVS\ny4YZkxsQrU+xFxcMjSPh2P4ChDsAoiWjvkNgxdXOVfh40feJovkT6wojHPBP\nKFYMI68nmXBLWS+oL08KeIghOL0FiDoW0Wna4GXKKrLqx0h2kwC/EhoKoxDh\nbymHsrxMmHCzu8xFVcrP2eMvxTgiV7DHbmdWUemVQMGHd7Iti84CV3Cn11+i\nhBcxJrfiSN9WPUT9w1IxwtHIa5EPOWhhIxHTWcrfBfPSm1QGRa698iuIPwfH\nIgdNuYBC9FLZykA3CDUvLxuXblcz93FFZO0mZWZDacW8m2wRIThJlCPz6zSA\nsVxZ3/DZW8WlvXDEFRb2kOq8trjg7/SQwPJWC1Q4Jl714vx/l3GWOPsDoyik\nQoGf\r\n=95HX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1d89f48a638a7dc77574d5968a8f6df3a704710f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.3","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^5.0.59","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.8-renovate-internal-patch-1d89f48a638a7dc77574d5968a8f6df3a704710f_1624564305316_0.76620831936863","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.8-renovate-balena-jellyfish-worker-6-x-d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869":{"name":"@balena/jellyfish-test-harness","version":"4.0.8-renovate-balena-jellyfish-worker-6-x-d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.8-renovate-balena-jellyfish-worker-6-x-d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"48302eaa6aacbcec00774c807505a2a9347e04a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.8-renovate-balena-jellyfish-worker-6-x-d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869.tgz","fileCount":24,"integrity":"sha512-I5jcGzXWkhn3jMek8FyllOgaUP4imXrjMcy2Kc2z2fhqzs48Ui3X8XLcQUywYaJFwnTxp4Jbf0tCQTi7tY5ckA==","signatures":[{"sig":"MEUCICBv/PvRjEZJUxZYyz+y6U7YpNhxDRgVqaQapFBpHZ5XAiEAlxAd33ogHeyOro0zGMxQUAVTu7chq9DDjNzuomN117o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1OJzCRA9TVsSAnZWagAAJeYP/2wwpJHb6U1KiyjiQKb1\nj3g10xgHht+yBC8W8CDjT5/BjRWq+N6lTKiJliAEPjCBLj08wAZyfZZ7vA6e\n8nneOxnNwiC+3MYUn2S7h9L4c+fAh0nm/wANykjTZ83Wx8faAUlsiEAHAT9O\npStloy96ZTtzFYu0U0dxUuSgPehy4vPYiaIla/KgT7SOFDR6nZz2QFu5zXUy\n4E7oYbvifkYSWQuZqFAoH0deRqOekvAAEC9V28CJSSiyBZglVuKRSqxFfUUE\nWOuiuvbH6rMEDNM7jJNQ9oww0cwE5e+3X5mmxo5GaszYmFBpl32DUcVcyfh+\nSrNvLsI8yHZrhL7OjFYno4DyeU1rOQjEV4YAvCTOs96it2QtC2JJ1A3eDlty\n4T1heEhy65O/ciDGYbw5O6GA16OXwBIk/WCNJabdzIFbEQE2IbSti2GgRCNJ\n0U7xTpCYXR+UBRCdt54dza7P2tusHOMgTnNEnOBsl+953Yam4+yS3GAeJVoB\niNYmgZDTCKUoWk4QcW7N8PwtlEQVJmRNTL6Aow25qFn/QfN1+5wYLD+N2N5P\n5wrspmnlXdWmkFr1sdTzmJ4p3E66WAOZHKU5I8kFH4tp+N74JGlXOYrDQpZk\niqJ8PVe8JFmI5iI3cLOWpK7GgiKlM9wTk1F5rs8s74vEjiRXyhfoQgP0Kqut\nnSrz\r\n=YoMD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.2","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.8-renovate-balena-jellyfish-worker-6-x-d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869_1624564339294_0.11597437565210389","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.8":{"name":"@balena/jellyfish-test-harness","version":"4.0.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ae9f9125c9c933d92de59fd9089507ebf8b450a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.8.tgz","fileCount":24,"integrity":"sha512-hp8386+6JlxzCMh4xTfL30E3Q+dtq5Wyku1rJOwtxaaWVhSyafIrmptCcHQavzUCGRx2S2/Zoil9hWKG8sRu+Q==","signatures":[{"sig":"MEQCIHHzDMFLoUiUKXQq4+pXSx05rhpqPeYd/0VCEaPslwjVAiBU4cWPa+Hnp3ydS36tMWCVQx4B+SuA6dovQXqXx9hS5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119756,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1Q8pCRA9TVsSAnZWagAAkcQP+QG7rXTHklgjfXZXo1ba\na9qJDQm1UGWYL1sumWn6J/HhprvioYSm7eAyFtm3Lf6FKQrgZ+iVfXe+OGGO\n628yffnKKnW6ydlN7yAXcfXhsAu3TGKqdvNnP4HJUf443ygWi/mChoLcYxAR\nEHRVXoBnJCXvVxSr3Lh1uAqgSSO5+efvijbUCMv/qm+pTl9tE3pyaOw2o3OH\nI2fLmYXYM1TSW83fULsH4lyKpxC5B0E/GF8f69qqxd2uoC4o1rRi35WymOpc\nvgwnR0bOTMGlglgzOMlrxnsdDG+9hzwWHa1yccYGgsOJUCILtFBeobS6OwsL\nP7w6vAZWjzmf1ZcnWrKN3mhEirDiBnJb5xhNxxnonPOJN7E48GbNNa4YaOMq\nDYR1AkFgyhUhGhYuionZlKBOhpOkHc8aHBMMOGgZx0HJaCrwydbcQYTyuXQ1\nvDSdrS7Kkcx5pOyJfU/U9yDiskhhcqIlxhodBC0B5JBAb+7U2kWYlRa6wdJW\nrjfyHZUrIGA3V2eqsqbH6S4H1JWKOCzK0vHmQRsmBtfn/oBEtuHYMsWJ6DuC\nbZaxxnuf8OAv81vbQ0i/1dx005ZwWP74yUfD6fp5dhDeUFX6CWwtNSIN7U25\npdRhL9bGr44bX3UgqeoIYlvSEMeYGFWvzYa8yBIQwUDdLEvPI26qNAeaJruC\nBZUS\r\n=Ytm2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"42e170ed6a44b562aef8132cf7fc9271ab7fce1e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.2","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.8_1624575785341_0.4503639775271797","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.9-renovate-internal-patch-e1c3fa4b07388cf4c48772d58a169bc78ae29cb2":{"name":"@balena/jellyfish-test-harness","version":"4.0.9-renovate-internal-patch-e1c3fa4b07388cf4c48772d58a169bc78ae29cb2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.9-renovate-internal-patch-e1c3fa4b07388cf4c48772d58a169bc78ae29cb2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f682512fb2827dba6229bcc8fa4c1fd39cbd6cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.9-renovate-internal-patch-e1c3fa4b07388cf4c48772d58a169bc78ae29cb2.tgz","fileCount":24,"integrity":"sha512-dCZ2loz7Ck+JGRQ8q/j/hMEk6PsaXKdO5udpnQl3iiv2rxxXpVAT2k2eMaFXYMxTXVYZDUB7jHvRXh/DkMjGxw==","signatures":[{"sig":"MEYCIQCAN+Xzxe7W6XrNLLcwE+4PccyhLc23y1lysgVpxxg73wIhANwXMP3tpCxS/RcHCZSMBuWTX27weDUOz7Fi8TspvYD/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119923,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1RCKCRA9TVsSAnZWagAArCQP/jtNQ9sEadYsguAcQW3j\nILGyd1CgtQ9GS5rYeVIfW+w2yCsw43ZNhWRNxx8iTckb0HEq1pck89UywL4o\nTQChP7gel+fVDRLsj0Egs6AJFTA6oHQpgy5aZuTavdj+AZq/c6gqspkeHzFi\nkJhbV3W5mU4kdbhbKpOVjWTD4304RPULquTKlvfvSTYTGCkh8e63VMZtgia3\nO3+ROIoUtQ5pt+rheoC67HA7MlFHFQUBYhqjHT+nb1UJGQnK6ZLr8R8qvCNF\nDVGUMDpJ0NBuA5aURTILzVrJ/Ex0CzHjWbEftmWch6p5yDUXdzpT0b5rV2ur\ngZS+KlveqpqEFSwMVutDijKxaywMp+oGm3dOwYk7ldoWMLKncoZUbe3K0rDy\n3jFxFwQMhhiyIIm6cZrbHXJx/dSZ3YRjwCXITCZEReiNjRy2s8A1cxLFmy0n\nKGS6Ts8JLzIUmXIoyepcGDBmKIDcBn976v8QqCDG1by84fkhF9xuEgSnMyxu\nFEmKpZ4swr4/NPM02/+57LczQS4hJKAiF896qElWCRgrCCC2EWYFxIYSvcID\nOsFbmUM61PZLYX4+fcJIRhNqczhfEWOCu965FUa7uw9kRgpTlNpxWauxjxXv\neLt5GbGO6i7uw5rt2HZ5jH7rk7VgKO2+NOXqzq9lsRQOzyUIUjVro5krjTlD\n3XGA\r\n=1COU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e1c3fa4b07388cf4c48772d58a169bc78ae29cb2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.4","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.179","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.9-renovate-internal-patch-e1c3fa4b07388cf4c48772d58a169bc78ae29cb2_1624576137707_0.7658214465627124","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.9-renovate-internal-patch-ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6":{"name":"@balena/jellyfish-test-harness","version":"4.0.9-renovate-internal-patch-ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.9-renovate-internal-patch-ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b1e08614d26f0378361f454127f049986f75219b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.9-renovate-internal-patch-ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6.tgz","fileCount":24,"integrity":"sha512-2Ijwo/WpizaY7SJmJbzOLUlK2wdV4BHY1Kgn5NQVmXffbLfmDQsABBrxtAb1oRoOMlXcp1KTV9EpW3loGBnTmg==","signatures":[{"sig":"MEUCIQDI4PgHLnu7Z+UfLYR1mo/8TbJEQcfSydZ7wTx4EWogRgIgD3TBzKCioCW1nPf1VGl+p4nag/K/S3Fkvnf2ORSkJJs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1RKjCRA9TVsSAnZWagAAEucP/3mR5rWECZ9p6eT0Wrt1\nkgeUmgDlPJPmOK91DgtkHa6LxjtaMRO8+7+zj8aq17FTcnbSVC92XOLmjMHS\nMtpZlvJ6aPcpJE3o/MxVal7tl/tOUJCV5/zdFc6eDvG/jIF20gYtU0fJeu47\nts+g122b2l3dPtidAwpna1i+ssEfxqFehPuqiTjs18GQZtna77VJhfs2opu/\nr3Vzkb6HsUoqHjb0aKV2KQUJ2lx8hEV7Za0/k6ageybCCCtAD3CM+eBnGpIQ\n12KHATCjipHqRwzjz92qdwU2k+BcrKKtPrdrH9gOh0U5BD1/emeBNGkV4ObA\nj+/NJLjPIfaF+WD/QqhkLnEnq7I8B/vPK6HmASJcc7Bw3KhKfQ4x6DNrTZww\nbf4vLUxwp7468IncdxHNvZRIOBYm44zrWj9IzjHCPswy8kbeEGSlzO2Swpqa\nDgibKCNlAb7a4b1bQGvQ16L2b/H3ZRjY177P5c6tAKpGLPZRQvvLK03CrGKk\nKyRcZl+M4dutLVkNjKp59xJHNuayDr+A1OEKwWfnQs135FXpd3hlfTcmUZmq\n2Fy8I4hYujIACRPwz7zKbwIBnwVN5qKFk5UOmgTmdUvp/967cYg0zxOmn2EK\nVEvGnUWj5QoSN0Ljg5rBA5d7NB4yONv9MfeOypxvX+N0fd2NLmQ03bumPQ27\nYyhY\r\n=6xcM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.4","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.180","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.9-renovate-internal-patch-ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6_1624576675110_0.5086220369307697","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.9":{"name":"@balena/jellyfish-test-harness","version":"4.0.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d160b73150b3b5352103359a9866b0a4b2ca4f6f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.9.tgz","fileCount":24,"integrity":"sha512-yH3GMvz+AxK3z8+EqhPGsLNDi8zG2/+WRWqJlx2YRjbbcxAsR0Virh7S/in+LQyNkh+EWo3Z0+8oJkWdXxn+FA==","signatures":[{"sig":"MEUCIQDPyybrqER+Z8eEGmIZctNbrLEa0JuwHpmh7TCAEef0iQIgRlOrgxv3ajqdPPOVIHJzGV5iqXWtCigEGuoRk26bPKE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119829,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1RN3CRA9TVsSAnZWagAAXwkP/27hQ3Omn5gkbPX4eyjn\nxJ9+CjdMK20PyVA0XBs6PtobqyuKlRYLihSN5cQqyZczXNv+pb33kz6To17Z\ntt46uigrcSHBrb2NkgUsPMnrA6j9VqmxTVHuHH9pXCfmN+kXn0a9KOg/gdNp\nKdBk94fcHyMFdRlbgb9CDtXbFDI6xEc94Wc3aeeLWPHQiYSvKEvOwIfO/DT2\nqQQnWUbaLKgeP+G8I6pXjerEAlbQ+2mxRxjiJCP9TdS21QVvx5ZXauzkmlXC\n8jGbvdM8cBHLCAnQOiVAb4kyQgSN4a4D3P0CYVl4jMjHje7u1wVmXe0D39zv\nLS+KGvUD0tPBISZTPvvfRB92rYXxLMy+LnmuBwTTf8HsRaCzqkACFsDTtOt+\nnBgY4ZRdtGrOs0Fr9VO+vasOYAX8ak8ZBG7gDCT0ksjh4IxQ/9Itw2zdFL1L\nLYBEq32fm+azuYFsc+8ExsSnswu/mWewy2rBKcYi65yHayPDjPgTfnPsaHKG\niVNe8Xj4bGPcHMzOtU+IGDswNqS8kcQHNSb1faPyDbzQzCm+UZh8QKlpT0o/\nkjOZaSpM6Rb1ds848xl4pyOCUgPDHnteqHsZZMLlqUrfRdvoThNBUjVSXlta\n8x9KZBhtCkkAyNhYbu5IUm5C7SFA7cuCBUVVeDUgzmw4goQ8dwu5Gpic6yMJ\nU440\r\n=ODVD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"bd8bc77b7845c5f1f87a1294d3f11d7ed1903f3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.4","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.180","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.0","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.9_1624576887434_0.7716885067467925","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.10-renovate-internal-patch-e43b9762e065ad1d94c052b2472cba985b2c6589":{"name":"@balena/jellyfish-test-harness","version":"4.0.10-renovate-internal-patch-e43b9762e065ad1d94c052b2472cba985b2c6589","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.10-renovate-internal-patch-e43b9762e065ad1d94c052b2472cba985b2c6589","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"499a5f6c02165c99c8288d00594ebdbd46b63599","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.10-renovate-internal-patch-e43b9762e065ad1d94c052b2472cba985b2c6589.tgz","fileCount":24,"integrity":"sha512-vtvdGxicMlDWzZ4djqLc4ij7jJAGOjInO70IXOJy6GkwU/8dbo/TRmYoCvWzQUAQ1IXIphgwtIVO8PIWOStFTQ==","signatures":[{"sig":"MEUCIDYnmQuz2Slz5P3xp37gU8iqYBYqu/TRK/j/sHMpdHg1AiEA9y9tIZt8QL5Tmmk7/AJzgYM0Nr4wSo6pzLjwcw/+c6Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119969,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1TEFCRA9TVsSAnZWagAAmNwP/3PKLEimK9hOodPBeWBw\no4ooscrkfDVbdzZvGlw9iy77X+Rc33a3P9na6+P/KQsPa3SlArlSWgjwRFR+\nwqxaA2CEPp/0kEXHsB9O4vvXH0MTFMel24Jno8HblNqrHrVfHe/Zz7p1OBib\nrve7gatmj2gMFPgsFZSvtbTeJxFBGpCn3zeUjxaYaQEmAvkZHsYaG/blYizZ\nSpTR87Xm7oh/L4AQ6h0sgGviH6zGu+vix5kpiRxbBA1kQWHAy0UtnbZsTIdX\nA+IxbdKf37xxkfXLUonSHRPQHv9/LS1mujVzU/PGKco0tS1JBRlo/jAXMz4Z\neA9dMTSohampeMiSsFzpu9XRnxsR+oNoccHVEkVYtvg406BRMY3O5oCB2OvE\nn8JcQFdhy7/m/XytcPF3P5C/1bn3jo7I4ZQN6Lq3u/vFmMjDUQ+Ga8aacdHL\nMtLZQE2R0rQRUF7c7jClMipUaHd9wiEqTK82G5GKwaK3ScPFEswbAzpZ3y9V\nvEEJPKqGPdEINjnJbvOHkiSN8GWuHI4oNUulc5Hb1IialTPh1FJzki73wrmC\nftui4Rk6CUpw2ylYUa46Gp699elan3kAeAYfFalTLdc+VXZZF1KCaZxHKgQr\nhJaSSemLj1Clb7HuK7tkU4W01mBMiDTlB9rPMptZ70BwMUpwaosW57OlOszs\n6iys\r\n=Eyb7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e43b9762e065ad1d94c052b2472cba985b2c6589","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.4","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.10-renovate-internal-patch-e43b9762e065ad1d94c052b2472cba985b2c6589_1624584452627_0.5487706961144863","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.10":{"name":"@balena/jellyfish-test-harness","version":"4.0.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b74c5b2aff335fcf1a91f79079857def8d34f2c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.10.tgz","fileCount":24,"integrity":"sha512-7msHGcGU/NSRXYn7l6D4NRa7VTTnitZ1rQVsy7CkVItRdr6wXRmA2rozOSWA+Oa3+svqtpD+QD/9Ekpp5Lm0Fw==","signatures":[{"sig":"MEYCIQDgShW/oi9YmfD/zXOLrslowCfXeSnl8m2Drr5Id0CPKAIhAN1Lq7snKNitxoQ700zfGrSQC6MFBn+wkb4hJuZy0BRv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119904,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1TIQCRA9TVsSAnZWagAAxmMP/ju9KkyatMrkqA24B2CL\nnC9bZ6KI4PXHhGHz+yCKcMNJRLgz7/JNVIjU2WwSCgarxUJ9PlhkkL4X02Iv\n5slp/OU2dSaXh2+x2S4RU72PO5OEpQFINFNyDS14K5wniB/XMI0vztG/dr+y\n6cslJPvo9ZYltUL/qjGox9U2SW5EmbBPAt3L5Bn7JdUN0nUfmyyMuVBl18oo\nmbiANUhKvxFd60wrxyWOER5kanxKfEytSk9za/XfWjzTq5NcLh4vZvObE8FI\nONm/zdl70Ou0gb97yVgQ717GFxJX1rvp3F6V5gSWH0WyRtAltJJyVkEcIKGt\n2Wq97WHit0Eu0idsD7QgYZvtdiFl/KGiuE4kDf5ERg6XJ4amlXbdnlS+mdCj\nXaIrzU+YHnsAYsIHnXmesYIbiKlscDmFh4Ydygib5VT/BUiOZyIy75Lr9upu\nDmoguf0Y1Es3ufG+DcvDeLqbdbvD/XWZneLMQ7TMa8FIMP0ZBEXHcj2T/3uI\nX3vmFUmmIgiPwn/u4YsyYvlFvzTdKSquwHfbpoGtrZ+I8kwa+jmWl4NpNCYW\ntKsYMS1Ny5KMUy4Ll69hJn5smw8vDCtOOIkNvX51noCVKmXXA9BAJS2gBDZc\n6QTW4ECdA81EqzpS4tBwvYW/L7wnd1jknUj18fz3wG8x6Zjd3xLCikTtm7v4\n0O6i\r\n=7712\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"1b718c4e3c03061c00e89c039a8e9661461916bb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.4","@balena/jellyfish-sync":"^6.0.257","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.164"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.10_1624584719751_0.49760195578211164","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.11-renovate-internal-patch-b73709bb397bc9135e1e6b14cbcf8043013377bc":{"name":"@balena/jellyfish-test-harness","version":"4.0.11-renovate-internal-patch-b73709bb397bc9135e1e6b14cbcf8043013377bc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.11-renovate-internal-patch-b73709bb397bc9135e1e6b14cbcf8043013377bc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09ae3a6ec4f140ce24f9d3c8e9b06bbd13310b56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.11-renovate-internal-patch-b73709bb397bc9135e1e6b14cbcf8043013377bc.tgz","fileCount":24,"integrity":"sha512-mRdybe0HFUPBxJlf5ETIZlawulQqXlHxCjlO4if3odSsBHMPkRy2CAmGtcIrtOdlId8t5b0kbQ9A5kn50SGOxw==","signatures":[{"sig":"MEUCIG4RdTdiy/MRxr8YAzyMjHurkYvLcq7UlDgxfgAMhTvzAiEA5VFkOg+8UjgfJ7s+7nr5L0AqNYOjYpKoVYBsYVZHQj4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120043,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1UO5CRA9TVsSAnZWagAAf6MP/AqC/nSa1JoWZSoXlY36\nJ5lf3f+ZcxrdxAakj1dch4mFSfuph9R1mthRzQPvLH6ad1/oqcnZG/CRtWnk\npy8zfzlXu8KQTahd2nE9+ZuG4KmrtRKN0LZfC3F29f99z0Qu2PHHYDUKgZ4Q\nPcfUwXcdgs8o+k+pkzkWypn1SSaJzBVgBW4BFEj2UVoDB4c2eq62Zle26/EX\nTzPPAy9RtwrKczryxYMUjm16sfsXsdMvOY3xfmuJJqsDz3k1UhzQOr8RfKJi\nNM7PaJSXzGZ6cKL1KGfGqUFGdxk/CiWLhNhNPe5dDq6hry1rX3efJsXMAHcS\ntE7qcI4i5cTLzc3R0/M05TFKLKzbYa9axtYcKvlR8ooN9TOqK58teB8zB6BR\nh24EaHIF/LaFTox2fa4z/1Dqk1gveMgD/n2o9oKDivYhdKZJxg5w3DZnaVXE\nDP48w1mij1Ny1QBZ5ZdmPNL7Hh8MedZMeztsyQUv7QMo+k9YONpQ9PoPc7Qb\nyHEgYEi+FfNuSdzYN6Y9a6HhWK9Uj6MB0XUaBhycOYH3duM2qfQcdnCOYqu6\nPqX2VgdUA7zjTj/T7rstjD4UkKd3QeanVpPSCbm7gMIJlI/glw/o+OGmXUei\n+7mv7wzxITu7cM/2vo+Iby6s9AQ9Z55nPNLMakNJsSzvmvWrELXp8I+Mx31Z\n4jBu\r\n=FdYh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b73709bb397bc9135e1e6b14cbcf8043013377bc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.5","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.11-renovate-internal-patch-b73709bb397bc9135e1e6b14cbcf8043013377bc_1624589240911_0.19064027541218964","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.11":{"name":"@balena/jellyfish-test-harness","version":"4.0.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4567b847de07d6a7305e8d63b36d466c096d6a38","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.11.tgz","fileCount":24,"integrity":"sha512-4UM0s+3iZgVKuS9/zL+7UwKHxclyYhi/HQ1o/SdLf/VkgqCsRAbwuVtYMlwJOHPgqNSUotgyBMwK9s13zM2HfA==","signatures":[{"sig":"MEYCIQC6rPgYjBpBeB71zqVOxKAej/pZYZiyC2M0K/XyA+oXFwIhAOff0oztyGeTiPdkQ4mAGWxyWye9llgtd97VTtqoff0o","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":119978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1UUZCRA9TVsSAnZWagAAL2cP/21o5Kqv5GgpSEvqrdXZ\nfwghKd8waVndqeuEfdAnB+TC3jjmIcFoWOlu30a61+8f9RRclgM35LPacu5o\n7Rq5YjjT+ct7tKV8FuFBN7H3ZC86QuLawfNUAZ86r6qTbmD8smdfTQEkL2Q/\n7GiuE0r4P4I+ChYUSUNEV6wxRNOBres2Z1wzoX7kZ0R7Yy+hnMK9z+kW5tx0\nsyhY369talGvL2dlIF0E15qsYlSeoOOp8UL+niJvt5MoAnxX+z0m8zXIgMUS\nNPZsSPo6Rmd7o8sawyV6eC8fbFk3n7CKNealE1K8k+dTaQc6Ns1pEvL6esnv\n8EsYFLNcccvAfGS3QzPWjxssNW6xpRcL7wHyPGLZ61s31W39P0id8nVA1V7U\nXahZT/xUBka15HWcDueZ63yAIUK4KKaet5SYsR1GlZ9TtCrbMLS5p9oqrR+t\nrTa0ksLhkVWaw0Z8F9rPKL6cDm9waJoZaJ6/WOYHLNKq+p5DuHr/OdoxLUDL\nlNtTkUXa20slmkV+ktLD2iT9+9vbqNTWHnchL/WKFQeZsacDmE++0uFdWpx8\nCB5pG9qZ2269Ljotf4Q9OA7bXYVI4i4U41vNPjdpfC9UgvjVy1sjBko895DV\nKuPWJwcFapgkYmymCgGN/qXcapLxRW4+mtuVUuL9v8SGEtdjKQpxIYpUA1al\nN1zb\r\n=qoKx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"818983f85b9f55848b1b4c6ed946ed900abc1ddc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.5","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.11_1624589593508_0.2840740289560999","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.12-renovate-internal-patch-63f22fa0517e772d1d4aa2a3c71632152d327858":{"name":"@balena/jellyfish-test-harness","version":"4.0.12-renovate-internal-patch-63f22fa0517e772d1d4aa2a3c71632152d327858","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.12-renovate-internal-patch-63f22fa0517e772d1d4aa2a3c71632152d327858","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3a07808fb63bad8410d49b31bdcbd74d3df2ba71","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.12-renovate-internal-patch-63f22fa0517e772d1d4aa2a3c71632152d327858.tgz","fileCount":24,"integrity":"sha512-BaxEPrGAAFaJ5qMhcQVJjQ9NK6NUfqKK4RAAdvO7IK49kA1NxuzeOxZMtLjMhTtblNP74F5mqvZ5+d8d3ss5Uw==","signatures":[{"sig":"MEUCIDalnT5RzybsAAxI6BUQbOgBx/T6J29nvxCySEp6j9g+AiEA7wfuKVRMKL8hOdGfBESLtxgEizrftVGspuUfoNmxWWI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120146,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1UY1CRA9TVsSAnZWagAA7HkP/R7s5VJY7jX9O09tdnPe\n3ucxJghyvJmIma8XxnZpk+hzyYfkNb6BIuQonRTtuXr4yZdAmSE5OQM3NmWe\nkp4hSdOOaZwUOzOEVeUf2eKUzYOcGqyW0HFkpGse9EhRMzcGoIO2ZzWalcDL\nOqzzzIJGjF/rQFq2Pfzpy/5WUXKzsLE1glMdcEtC6BePd7GbT6dZTEr5uc5i\nfI9xIESdm1UgNhX0UfLD2DR3vwSFJMq79FJ4HRcTgkdsa7KkbauwUNFmDWxh\no5PZSGh/Sa2dNn1SADU2utnBmM/MnZiN/BNC/tWK1ZebTFHbkRqZmckt0M/l\n8oa/Ed3FcElKfFxJRE+4emKKiGZsmnAldKtnkSHgd6elZfmoCpP/EZx592JH\nGkXrsjFBgmJOOVgUNErFc49nB0AjnDNqcH3MgbkWCNtcBviZWyHjz5XTs3l7\n6nxBej11w6Z5pcXoD6bhZ55QuF265qthrg4qjKRuNBcQ+zCXAs3uAd+2phTz\nWUPEkkQppkzrF4CIKdTqV76gftd5dw4Qe9sOKkXTBDnGB6pW0ABReMzjLxmC\nNyIMW2rzPtK29mEvtdcwIPnVZPRse065N6sMkIDIYX24RaCgDOVPgRZkged5\nBY/5wYlUwmh9akKDriCKY4FKpT8VBxATD0Ilpdo/caXjLqy3eHG553cGV3+v\nBJIo\r\n=J5Tn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"63f22fa0517e772d1d4aa2a3c71632152d327858","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.6","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.0","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.12-renovate-internal-patch-63f22fa0517e772d1d4aa2a3c71632152d327858_1624589876610_0.2969227601523208","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.12-renovate-internal-patch-9cbf00f7e3bdf823d3470cb02dc44775c5288065":{"name":"@balena/jellyfish-test-harness","version":"4.0.12-renovate-internal-patch-9cbf00f7e3bdf823d3470cb02dc44775c5288065","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.12-renovate-internal-patch-9cbf00f7e3bdf823d3470cb02dc44775c5288065","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c3977ce31ca1b9aae65b97fad4fcb83f486b32a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.12-renovate-internal-patch-9cbf00f7e3bdf823d3470cb02dc44775c5288065.tgz","fileCount":24,"integrity":"sha512-yfS8QpYFlBTnKWI7vU+o+UAAqZFRDK6sifOW2bjA8fRMrHrNWp+YZfUzmsYf9tE3e1jit1nU1QQJDB4+vEdlXg==","signatures":[{"sig":"MEUCIQD/ZBqKnWD1Ki9P9ZwM3JcnU1PMDMISkjV6qxfsYWpyqQIgRjV8G8YStKR855HxtSkN52c9i/K5PDMaBIu9n/0V+oQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1UgCCRA9TVsSAnZWagAAtZ8P/0ZdOGB1xZob9FmmOxwO\nOgzQ4PSjRucRTx1hYaYZQkccIITxX4PrqTnujGpjhY2n7pp2Od7ULJzgec+T\nt8ZJT8I/oWq34kNG0WL7qQZ0vpEgAA218MzhGJGaHc61wH2X1Y8jRF7ZUSHJ\nI/BdIKRk697vRMDIYMp1q7AWT+h2ThoT/GViXcYq+ok48UY+mqQjX7FSh+2d\nj3OuNEo/o4L/em90cjHtXd5TMzVb18TQs6a71derjS7i2DPw07p6SYTZOT1X\n3YULqSp1HS3Z/NgYRFp7/uZLvP8J/A9bUwEblFScdFI/Qp1Jb8DbKbUXWXx7\n9hxSZdazGnx460VPA2POtxnOom5VPqo+Ky7+pSB2iNcGk7YDcjNqNJoKPfJQ\nT+joVLU88YCXXkLcqnVOZ/QUKWpZxmsGxjX1dOVuWk77Ws+oYgLKF61QeRrb\n1M7D5U3ZcxcY1xt5IRzAfV5Vvlz8QDwcSUpG9y+YPDZdLirEOyKBOEHKsz7O\nxmfBuViOratpiK3cwMrs9BVYP519Nq87cng7Ub7nZ4WYxri/Qos+CXiw43cU\nL/QD4QwCd9S8WyZj4uZJSkYP09IoVeQ4BC9pI1CpAG3CaV5OQ708hxLhTy24\nfUaL5iIre35LVgjVnZZVlKKtHMRIES37gPRWYyuwcCPsXRbRXy9IWtkN2j6q\n4P95\r\n=1Th/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"9cbf00f7e3bdf823d3470cb02dc44775c5288065","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.6","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.1","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.12-renovate-internal-patch-9cbf00f7e3bdf823d3470cb02dc44775c5288065_1624590338295_0.18672398116821998","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.12":{"name":"@balena/jellyfish-test-harness","version":"4.0.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"065a9b6ce05306cb88131ee20d29d6cec6786f40","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.12.tgz","fileCount":24,"integrity":"sha512-5bgtpY2BMvR5NZKARq5jfKFgT7kTM3mqHk3g+5uKJquM7vxFLRMy8gyjWFf0rbiM+A2wUXUWQE23fd4m6c/i6g==","signatures":[{"sig":"MEUCIQC1lqJ9VIkhh7bjl7fFmDgGK42V3ZeZeQBPkYLrSTorPgIgO5+YHgBVJxhXxZlB+a4i+zVxr+0gyXnqycQxBD5VumQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120052,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1UkwCRA9TVsSAnZWagAAYjIQAIW9tbeY6jeKX/xs19UV\nEwvSjMfvkEmHgsC5twxFZlZZ6EgQt/IW2Qpnd/SDc2buMnJNMHbE6pzW+ykc\nTe8d8hKs5Nf5hOEVGv4t9oIAT4NgyoUfmvuTD8nmPvRUe2TGGyHnLmsRNL31\nP/OWdH4M2FXGX/qPnu8CT6kAO+MW8JKkAK3uM0UEL8B2xq/2nQrwcYvh0BDF\nVFPmpyLaKWZEXTQYjv7jiYDEp42x3Lu0kVDXTZGEqz1JyPwTkzVgAMwCRnJq\ntyVGHQ0QUMkt2Me1omiLQ3WAR3wV+VfMsng+Q6ITbf4bWL8p4uOp6CT9s1o/\nWQnjDzVxik4LiC1rCVYFfu3gZ0ZAcdhr/DCR/T1ls4vgHQ7BwHnSyTYM3q+s\nxu6tQafZuRMdHv15za9xrECk3aL/2DPz9Lr5HoWx8leVTq0ddUsu+WdwtA4Q\nXg+Kzx1sNvx0XfZkTPH3NvCT32BSX2qSCYAfquwGLtNZJifkDwSgiTkTXSQN\nt3EiWfBqiQ1QDkZAnu57dFa4DKvERl0xm55JP+NVwfQAdiy33+J0qgIwpUUh\n6gqNqxOMxjTPExU8Ye8XIxht3TV/URb9P/cT6A6H/Mw136chSHkENYM0v9rD\nGSjOdBV3GaEr9NR5ex37jpxN/UVmNRZN5t5iT8It7sl1+I9qN0Ieg0CrIw4B\nP384\r\n=5if7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"458c13caf407f2504efcd7c64566ea0ef5a31463","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.6","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.1","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.12_1624590640366_0.9852926453562347","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.13-renovate-internal-patch-6f641569b99d4177167b73e60c04966b7fafad13":{"name":"@balena/jellyfish-test-harness","version":"4.0.13-renovate-internal-patch-6f641569b99d4177167b73e60c04966b7fafad13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.13-renovate-internal-patch-6f641569b99d4177167b73e60c04966b7fafad13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ac48aa1227b190cb5e306b4796bb5969546e1c41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.13-renovate-internal-patch-6f641569b99d4177167b73e60c04966b7fafad13.tgz","fileCount":24,"integrity":"sha512-qho5RT9Ic9faEZ0VU62T5jI4R9G7rJYwH6WwyD+C/5xMAUz1F5m+HHKWHrQD7fHghNbM5LtSGlLDseR8RV2ubw==","signatures":[{"sig":"MEUCIErXciKBebqGoauKXEORRLru+0JSbEWkTbcpaxWPgK1nAiEA5YM4ilpPk9AaVRBWpVhH3r7I8NyK9/A5H2UL3POXCNs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120222,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1ZSECRA9TVsSAnZWagAA7CQP/ih+FLTL0MJIVKLzKTlw\njr+zizmmlwDrzhHbS2X60b8uGaIOgD6gUihIClB3ZxyHcvXOAlMr2boJMO//\nxmrFVQTl/SKhl1lPUL8PTFnAK674vRR8j1pW65iq8qDHZZlSLwpf63sFQtUv\n/+mSNLWal8WUbOYYQAg68xzRMFg/dXhXoxipuaqV97XUIEC7L2nXMvjH5+zW\nI1Q1Ttb0iKEvrsJo7SYZE9IvHO7h7LVfMs1fnE/DT7k9nG10t1mkmVBWVYAI\nLKNbbt33IhVRZJaM33KPNCMf90mc75ld5hNNgsKDbW4x89SMmtp7Ux+Grw82\n7BUF66rphg649ciPrZpqngSsj/cNBWJxgcU3gkTK3SAcdmJFvUEuI5zUrFjD\nYcYKSNYl3X5fjbegY0JCuF6krp9r1BiRDhDsysU/f3zaZEni5UQe8biTDA1X\nOxn7i+2kLRsgzCJr86hFv5MPvqbbaIqIFrxLEz8XFb+dNG7ltgdnJltuty9u\numnxy4QKjA58Isx1KJnHsYmWCNgtlByNtzLI/AvtLf6T3En5/cz52nbq+itr\nEexap5V1V5DW/+2ibc25I8y6C/8KsQOyS97TNs38Sl1QFOXnbjt/8jb9GfxM\n2mJPCNlMi4oKHvMgBiaMPO5ZKRorHZNYddbenRSLPW/MSfX3TGaFG/HJiDpK\nhZ+n\r\n=JsZ7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6f641569b99d4177167b73e60c04966b7fafad13","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.6","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.2","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.13-renovate-internal-patch-6f641569b99d4177167b73e60c04966b7fafad13_1624609924165_0.4939667756383588","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.13":{"name":"@balena/jellyfish-test-harness","version":"4.0.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9157cf9c02985c76e8d9c8152644d6f7074feb65","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.13.tgz","fileCount":24,"integrity":"sha512-oUXP7cditNoz/s0KQaoCts5ome4dEVpjjeUdqbD736ry1itSuOGzqupmHEuKbFpWQkdYJkWsbwwiHGq4azNQ4w==","signatures":[{"sig":"MEYCIQCNf0uS+No7xLujK8RZ7t246kuKul5ZdOR5yzoDWCACIQIhAJYRATJ97AsfRdkw5Mp3fm4BJhjKttlEym71FoUtd9CT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1ZU9CRA9TVsSAnZWagAA068QAJ77N/rJsitCvU0GVnRg\nsd1XAYll17GTyhYkR+nkFy8bZgCp4srAsDkT7g9wf0QlY0/Luo1zAKCR7bZy\nqfiNrk7QfusjhbaT2XaqLLU3zEi1IIwREgdIEF7YOUCYXw/a1Tt/Yq3FzxMy\nAHh/8eIqnUrFxXgrsOvNvTexPpq2Ql/GHEA3B65oseKM6LiHJ4Wgp3O6trLi\nMBCnp5ExOuikhR0oatsKesjIVOPPsMfZ1Y7MkjOfd0LgyVgcQ+xAFRNfOFE7\n4tuYvHuO6OoXJtwaakSbTS1Ab1qx5qRHx228sIHyVwUe1mNDXko07s7Hvk27\nPK5nTn30g5olfhLZKrN/9TnFm3BtWM9gjqqRmSeyUlEdCfLU9w8+fND8fUSP\n9h4RmKrAXyoBYwa/ry10mPd8VUxNJcO+KUU5CEUkcVBl7dedui+1SKZxkLqH\nw+2275UMEXfjY9BY5SGaUYWV1rrE+UGSb4exatO6FnXQxItX9D9A+vscmcJ3\nYaITmrBj57/M2OrAiJc5Lu7yfV8T/SUa/8GNueaFyS0jLDt6jnG+mTq/4WJJ\nkHyqSzP2+rqbmQ3x40pa5Yjs5F2h/k5uXs1lsWbM53ri0J/nHDi1d3k+39NO\nwYD8Gd5uOmmmg5lbuwTws9CrMNortvEJISY4rVmFdpFRYGlfPmivf9QntgfC\n44OS\r\n=veE3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"77f27e480d425bb079440d1511278b118dc725bb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.6","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.2","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.13_1624610108980_0.5126622709101123","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.14-renovate-internal-patch-938f03d33c29bd06f3724e8a273d1a50c7619378":{"name":"@balena/jellyfish-test-harness","version":"4.0.14-renovate-internal-patch-938f03d33c29bd06f3724e8a273d1a50c7619378","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.14-renovate-internal-patch-938f03d33c29bd06f3724e8a273d1a50c7619378","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"321af439091009b839c41b1a90eb712e67f616ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.14-renovate-internal-patch-938f03d33c29bd06f3724e8a273d1a50c7619378.tgz","fileCount":24,"integrity":"sha512-uTwwrgstbr5ouD0bpHo3Ze4Q3joNI+SAEsQhs21qYkE6a42luD2R/dXPnynbiJyLwIGS9QhfhOyVim2yya/msQ==","signatures":[{"sig":"MEUCIGxsGtPWgUo5XYf78mDfH/GAdliRKwX/5Efs4i5WU4NRAiEA00KHzuBtGh4dedr6hMG76O83YCiEcWjRN5dbqt2H3/o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120325,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1aSgCRA9TVsSAnZWagAADXkP/1o9XsxigpnXaZxYypWI\nvpNCRcd/rRLCh8JkOvrgB3bBd5xmdwtJYHuO5nUrY3qXCxUahXiFDYWb+9Ul\nKPlPmxl21DAvKIBiFMq6IwHoiHC/FD2eVtUphvJ4wsnq4hQZ4TNK766U0n4k\nn8VewCdKS5cjBtm2HX4LC2gjPAD9WQQxylKtj1X9MwouxS5xZgEMgMUYAUzB\n2dGu2jlryszJWY8L8gIu/kxdH4omvk9O+dau1L9QNjZe9IFinBidLhbvrCR2\nw++3Ljjy2WeBcpTlMAgF8TrihOjuHs605o9atX6nRgyu90hNqLwmt6dzPmRY\n32Q234kDA4tvjc2vNBV6YkIiNDbeMw16s95AvFZQbsjF9FfEaH7JJmmQ26gy\njLTgaC/zvwfVzGVvZEBJOIXzJP5vn09fAWKRX+09nlVoqIRIM8gYJMID2rms\n8L/rZU1OkFen3GarGqCGzoU7MaxCwcqrOPhQKjNYS1yiROAe/gufvBdbUXQd\nV1F/6lO/AvrQdiLLTNl9eJDFvFu5jV+t0/9j0xe+sVELuCC5OWDk9oIT7o6Y\nXazqBWxR+Iz51slL7qtXhiYLNqq1BHRwislVnM93OUf31XSYVE/pqIuPFAQP\npM4F+VePwup6Gl2bbYrX3ZTAhZPWtMfunQuaG4n4hfLmXFbfDyMBdjRBLka3\nL+Px\r\n=QC0H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"938f03d33c29bd06f3724e8a273d1a50c7619378","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.7","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.2","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.14-renovate-internal-patch-938f03d33c29bd06f3724e8a273d1a50c7619378_1624614048034_0.837977760214071","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.14":{"name":"@balena/jellyfish-test-harness","version":"4.0.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dd6b3b8e617c8543930be8523c0ad801a3d9cfe3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.14.tgz","fileCount":24,"integrity":"sha512-m49OLN+3S/cFjfy9IKAvp0sl1SFLndLvJNURzn3c3pFEk8N0Oj6BpaONynmBgxco2CwpcoTf7VZnQkLgmm3Uzw==","signatures":[{"sig":"MEQCIBXIf+cD4NE0ed03MqQNfmY8jmSE0BAavEUgZbKEWXTkAiA2QYQXGxypimYKgZfItHhJheujMldASA6+xuumuRU8Tg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120260,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1aVvCRA9TVsSAnZWagAAcNIP/A6GXPDjpD/DD/xFKQKv\nTHeDG9A0wkKdoB6wPEB+Vc1QAbUsEWwv64meR5u/uRRnSB+E2P9pSk/1w/0D\nguR41GP84vOiFssukqSLapbNKoZXSxMZCB2LiEqQTyQMbldp075rqkf9d0WC\nzQWhPVf282DV0O4Q+m1SAePQZrsPwEIjL9U7P+sXqYDEYqwHzMMnfY99i1NF\nd15BqGdRlwOWoGkD6Q3Fo6rsvBO+6lgBGNYeoNrItg5UUc9Ut4XaCVDBTJEi\n316hMJ4kXX2zEeLAVmJ3xtdaueG44T/EtYywDaCpRRcOloH7F0Ou2mPVQ9nG\nJjjUgvd2C50+Z8G5sfBVsvGo0tjFvt/ozY1nN3QxSXyQ9fDXU985C+eUnb54\nQp5u59em3CfsvIZ5rpM0o+RBOICk6SvxOWj8GL6BtSaoKY3geoYoLhfhpN5b\nA8roA0FqOQxWZ4Ypdsu7aYh6yJ1m5tmmAn3mSQcSiPIZQwlVgT36H4QFSujK\nkgAa8v/iHpQ7gDS2G3Ud64E0fX2hoIBMhZKY9gKls0qYkS1yTTnXUnq3MYOb\nITRvneWodO6TDvAeAgwqoukYuwFwDfDK72EPovWZI96ye0oYqzOh4mnQ1qvO\nE0OTgsq9+NHdj3LZSUag3PkY7WEELMITQq6Hgd2rAk9G8z04NLHwlkpndb4z\nIv01\r\n=mghA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"387401af279787f6a04195d003bb4729764107b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.7","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.2","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.14_1624614254603_0.9423389703590082","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.15-renovate-internal-patch-af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c":{"name":"@balena/jellyfish-test-harness","version":"4.0.15-renovate-internal-patch-af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.15-renovate-internal-patch-af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"558ea770632d22d18d98023589bf7e95d97eff02","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.15-renovate-internal-patch-af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c.tgz","fileCount":24,"integrity":"sha512-PkYeor6M2cpntepbxb2wkBH8NYaj9VrHFaAExmCeyZUTfVY89NZ7K5Ze4/PWchmWk4A20fvm4KYwhAgrg+gdTA==","signatures":[{"sig":"MEYCIQCqWpQhbs7jP/n/qywe0fttTud0OVbSbG7jTT0XMltsWAIhAI79JDyO8bYYZKnO9Ol3S+kEYnK9Ww/fBX8Xfuup+0XD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120430,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1c/JCRA9TVsSAnZWagAA5fYP/1BGJW1kykqQINQsaqsV\npn/Nw/UMPA3umfQi7RlEJfXiGmUErJzG6tOym8MmXxGSgL52NT4Pl/a5b91E\n4TngeUmLxMGFcjkQPUMIcRzAicJwentMy5TDa8vDr68Yf7phuVKlHSQVWzyc\nuJhIYdBzaLYM3HoGUTKlYWfYyRPOmyF3YwoSdHqqANxQiYIb9L0xvqfCoqI3\nquP3NuVokw/yVL0cg1aQ0fIIHBctDQpm6X3mEqJT6w6asfGfVix0jXjgNNdd\n2CaiqWvDSfJohd/jFjtzpC7XkBOT/EUt/oQJMN2Lzcb0hYIdWG60xti6UIqK\n+Io6e+z/L3SBupizrkibIwnVSbQ145YR7L8/Q/hRJgLZAI2OdoZhG/XW/swt\n75H9phHk9yy2uOe5egSMP0moLaWuahqECTG/GcNSvo7yVzXZk3/qj1NxHfNl\nORxjvm9jwg/W7Au8iBG+8bW3tVEA0AHjxLDYyTwsBF54oot1dmjlsA0cSHfp\nsbFoPPzuEA1bVMipOityqaQiBOFhVbg+bF/V3T/q1XfjGii0B9vkHQB8eF/f\nW5ozq2qjzsSdf/5bsZILI+arqiq1po56q/yCItIk0CVSoWAUVILXSpGet0QI\nbRRLh6+LmOd3it8cJowxIb/e1zk8nPFEbItZFDp3Yg0VwrTuU2B68/84pw70\nqms4\r\n=00M3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.7","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.3","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.15-renovate-internal-patch-af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c_1624625097477_0.5261549881317731","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.15":{"name":"@balena/jellyfish-test-harness","version":"4.0.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c27627dd5c22d7aaa1d6fab517d92c65f7dba80","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.15.tgz","fileCount":24,"integrity":"sha512-R4TnFG50BS23PgVJUuYulrKvhHJ4UP3v7kaVBXUrSbICMsuvcSWLgRcE3EydAMnugZ+fuxpg5VIymObBT6QEsA==","signatures":[{"sig":"MEUCIQCA+9mhHEfRW1C1yROPIjck0QuYUnKg1CZgOFerMQIR5wIgDyj9dAHmqU9ucg1xGILuXK/dizq0CvWReGpHgoveb8o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120365,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1dENCRA9TVsSAnZWagAAUEYP/1IbjtVzjMPGX0ogRV8e\nBj8HAenbsAmk+mr2+fLUo/yqGsxUyjI4PtCUy8zcsGI+I5m24mNnChXoc4y4\n72IUrIHRAv+CIuwn6cMVcoN0cdnieO+Efb7qQ8C5ZVE1nUusawxLZoKxZykw\nPTVy5+ks0dGq+f63/kjVQZgvFAT0XHc2bqdQQcvzpsnJYZVlGV8p70fZmC5E\n2oVCkk9p5+qi2KsS4Y4CCEKboOxF6M6fRF3D0cU84vPyIcpxXIok+KWldyRe\nYagks8ce8L+nCVFDO1xz9PVoatr/H48e1zdHPns7XUDRnzZJpF8VatrcUkwY\nRQFBuO/xE2NeJ3imQ2VWBfVxWimw/e6z2jZgHW8vsaamSDYsPrvKVWDYLp8d\nF3U6DdPpeUD0WpJQwwTQf/bJoR3Ns0wEWGrMgcznLuSdef+GOFUxgaq+Tple\nnFjjDHuP+C8m8W9ea5fGFLfHUX5JF/zuqayWL+spGbla5z/GRD+dxia1pXh9\nXU5gv7H/JdyS12faBKjNyrGWecHc2y1+DQqWOrpqk4xJcivPSBvlp2cax2NS\nGquknzMZ90SzCu9kkuA1IE1Y3bGSlcjR+AU21InhWHgxMfMv3CGUhGc6iAz0\nXWEaAtOWYHRlQT9DwSkCEMYRZJhryt7wWkifyDuFchqR3SwqyX3gZPtVuX02\nrWdD\r\n=SoXJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c5190cacf485a5483d2b00ec03c50de5651398db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.7","@balena/jellyfish-sync":"^6.0.258","@balena/jellyfish-queue":"^1.0.181","@balena/jellyfish-worker":"^6.0.3","@balena/jellyfish-environment":"^4.3.1","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.15_1624625421424_0.37006473972529297","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.16-renovate-internal-patch-e48dbb7250a08ff5a5f0646ad8522eb2ba28985e":{"name":"@balena/jellyfish-test-harness","version":"4.0.16-renovate-internal-patch-e48dbb7250a08ff5a5f0646ad8522eb2ba28985e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.16-renovate-internal-patch-e48dbb7250a08ff5a5f0646ad8522eb2ba28985e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"29224350f13d4a06770f7ea3be3a7810fbc26b06","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.16-renovate-internal-patch-e48dbb7250a08ff5a5f0646ad8522eb2ba28985e.tgz","fileCount":24,"integrity":"sha512-E37t0QCwSfRn4QKkKXaCNSzLSoq5+S7dfRxiJ+HvDhQrApetI6meIF3wee+F8q11Q4zP+cpSc+sv+8ScxIt8rg==","signatures":[{"sig":"MEUCIQCQ3e0uFYIbJqv+XSDtnH08zKtRI0FfJX5fJGQ5AIeDqQIgRtwB1VHcyJxom78xL1n2rcLvhSBcAxxyMqq83rBQpsI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120504,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1mfYCRA9TVsSAnZWagAAH+AP/2t6wXylzrxN55puDo3w\nWe22ghlouGhKS9r2L1/YQA3tPYKjaEurqsEtDcZ6BVSj3XZVTN75CGscRdhH\ntx7t0LWeUNpAZnEGARb62orskKZQSb9a/OhVwENUgdyYg2CW+SViiA2Ws2u0\nxnMlgqIHGTpnlqfQ0jTZxI1au1QKNJv7UEyHBuHe40/cnO0WI8ChaCUbyVa2\nt79+ZH3wdXADj4+sGZTi9wDPvCjnWUgdlU6V21FQq46G22+CiVtWVmay4yd9\nuX/Q6MH0atcLyWfw1fnRgaFWvUcSLrCQcSu07ggABhWORMMkFit6XwFCtYVG\nnVHY5P4z4MfCY3I5vs+CS1uAogHqZl1NTAPpqCly1Xbsdq6v6sq+22GUz/5Z\nUWLitq1FjyOzuIbowRBEFLvsJJQsy+D0ZEnJg4Y+PZgLU+UE5leli4Ze/t4a\n7+w6PaIYg1rITTo7sob0LhQh7mum6dxbHpacVQnl9cbPw03qA+/AEKXhrxM+\nYRh82FnhvdSKu2LzMX0RXhJuUjuTesEnjNvimqwRL8NvKUWRRFNaObTlyC3r\n1RKKm6oz8cb5xnT+AFmFpEbzNDwVsUGB6p+Ok5T1tUwHd+hW3OGn7e7truEs\nYI/BI6AplWXermAPbYIlFPl70l8sR17RyWsv3tVddt8N3P6M5PGy1K8mFw/U\nE0Lp\r\n=MmIT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e48dbb7250a08ff5a5f0646ad8522eb2ba28985e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.8","@balena/jellyfish-sync":"^6.0.260","@balena/jellyfish-queue":"^1.0.182","@balena/jellyfish-worker":"^6.0.4","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.16-renovate-internal-patch-e48dbb7250a08ff5a5f0646ad8522eb2ba28985e_1624664023517_0.5989321869655806","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.16":{"name":"@balena/jellyfish-test-harness","version":"4.0.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b7df2af8afcce271727624f5238c0351c678921","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.16.tgz","fileCount":24,"integrity":"sha512-rgF3zMSL29NYaryw2YxgVW5IYL+KpxzQwNHEs7xAp3jcyfAX81SKwUxIqDg2fmczkH5INGnt6ix6NR+3A4n0lw==","signatures":[{"sig":"MEUCIHYYjaiKmFeWv+FPpUpgrxPcofS4JRQd+VIH4I+j6QiUAiEA9T7bCrtYs3LkAeRIKe0Dtp93dguWoyslSxeINHq0byw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120439,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1midCRA9TVsSAnZWagAAjXYP/RAYL9UeHGN3Cfv3Z9kC\nrdUqDaR7sJ8DOiEHDcfQ6VPw30iJX08SqFtGOdM0bUuUgZ/+7PegAQqrtIGM\nL5KXnvXT3jtSP4XbmLt9XOKgTVoYl/G3iy9+s5sVVe0/HDXB2ydQAiNV0UCI\nUlqY5MsVGXhrLV1w5PjHmRdxIDxoshcixChJeNIk8yUIF6Qx5Kq3TGHddovB\n6uMYj15UGk2lM253ammtTd4jnlmbMqg80jal1wiiyTtmJU9Ec/++2I08Y7Ht\nAA1TM1Kqfcf2F/JR6LC8y5zpadZ574UTjMjEFl1/9kNwOWrIIozpJre50tP6\nIBQTOJf0rFG449XsyrnFOICSeTE8jEPFzRMsm5h9XDRHyn769D4T53+5eRPi\nIi11xIce9tlG6nlxuKOJrMI+QJjNihtgrEThQHnA1X0DA2jh7KSzURXILhqL\n5zXXinMX2MTyVQvDglUtRg2f07C2gHI3PfA+WN6asG4PlI0OL+UMyuk9/WwK\nIr1ls01r0IS/HPCzLO/PWNvcHIoitbqVAj5bebX7telOXgpzTXAvkov0OoDl\n0PuL5zzJBh/uYu86XTiYznxPq2dhAvwv+94oNSpbgDp+EzqEgoTVvGjVTe6C\nV/ySI+8zphdwpVPl0Lcsl+dvhdMNQBvO78DT+F6NQl50bvqq20s1aouhj4BT\nBMCz\r\n=Q0zZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"b9993de3d9aa1b9c793f2ce27b58606fbbb8fd87","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.8","@balena/jellyfish-sync":"^6.0.260","@balena/jellyfish-queue":"^1.0.182","@balena/jellyfish-worker":"^6.0.4","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.165"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.16_1624664220715_0.17772346110069503","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.17-renovate-internal-patch-02d23aa8a536cd2468d322e36fd01c5959efcdce":{"name":"@balena/jellyfish-test-harness","version":"4.0.17-renovate-internal-patch-02d23aa8a536cd2468d322e36fd01c5959efcdce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.17-renovate-internal-patch-02d23aa8a536cd2468d322e36fd01c5959efcdce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d5be7648337bb3461f4b78e8654d98c4891bf1e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.17-renovate-internal-patch-02d23aa8a536cd2468d322e36fd01c5959efcdce.tgz","fileCount":24,"integrity":"sha512-4scPgiqdS4Q1H4mfHK8SLJ+CyYzUgP3SKzIU0O49JuBvurQddNb1xIAzUriC2V2JwbH/qxgwmixDydybHC1RsA==","signatures":[{"sig":"MEUCIQDGZhMuq8VSHktE6oVKbs4yfsXCRkk4Hn9ioOGyP1M7ogIgMF6J6viJTipgU48ExsCHDLAAQXP21oOF6+n9KLr4Rks=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1mo4CRA9TVsSAnZWagAA8/EQAIOAiaZHel192ucl9ehk\nhIxRAz2qTIO0qohluw0Xqs3anwPDNhJvP4wxaZ28Ih32yDNw/2zImEgVQHBN\nLXdyn0TeDVTIp3IdxGxJazgU7rMr83dWHlHT6UtUvDkf+MqJdAbB7J6C+EWH\nQcDxSknfhk1+l56MOF7Uu/S0i/202w0WJy0z29v/lidLUvFZHnaQpDd+4OHW\n5fWPVLKTBmHuhU6qMTyP5VH9SqT/7hxJCcUHxH3gA83rMImyKDxORVlSuBIo\nsT+KWHDnjFeDlViUSPVOs/Qh6HQc7+YXHw/O6yEIinKpWTRJZXLae/X5mtA3\nZwDuoLL+MoP24EYZZoZGNLaN9RS4fLGJAHAXHhnZPkYONNY+m/7C+Cmk972J\nY+v1Dh0JAE8gvtOUpvcmbkvs4bsBQvkvR04Pdi1MorQkdYRQRiG0d28+7aa3\n4GDCjl2bwmbNjXedjgdZAEsqp0bQa3Gldvxpv7btmqdKweZcbD4oE6w9pTPp\nuQGnqQPKCSsu5cM6tazrusTGapUEkjtknDD78s0z3ZjHVJLEJnmQERLY3jB9\nsjOlPEB00Knv68ffMPy7Dz/BuGxOQB5OnzIShi46Z5AmvcRthJHzvJuoHA4t\nUVdyUZvjMM2uF8Qh9wdViFZjcapzgdDcPAtlzqVDpnUa/De6/TjK7364D/Ng\ntkt3\r\n=hS4R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"02d23aa8a536cd2468d322e36fd01c5959efcdce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.8","@balena/jellyfish-sync":"^6.0.260","@balena/jellyfish-queue":"^1.0.182","@balena/jellyfish-worker":"^6.0.4","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.166"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.17-renovate-internal-patch-02d23aa8a536cd2468d322e36fd01c5959efcdce_1624664632460_0.24266882588700933","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.17":{"name":"@balena/jellyfish-test-harness","version":"4.0.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db20297d1626bce176f9b0b78e26498dde7e6052","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.17.tgz","fileCount":24,"integrity":"sha512-v4YVkS3l701VJTy2tlHhSJ8VvJV0wNe1XMjoD7dZ7XMr7cLuyrk0lQGY5LfcoIx2R9XSzx2sMLgvnsi3N/f30Q==","signatures":[{"sig":"MEUCICGotEKaYdks2vYVZI+VE255y0czqqNbYi3bNrE9igI/AiEAv74JoLAer04bbPUfpmQF2x1WCDMcTlkv2yoO54+f/U8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1mslCRA9TVsSAnZWagAAvg8QAIiRAHq8K62xgE5oFFpD\ni9IicPJK8a0wK8zA5d6IB+8IvKnrt8cFuXgVczNuxVnakMmfxn+NbW2Tzpai\nEEUM7ckwS7QyXbdZfarksL8K58oYC/qd2Hh3dvUT6FNCDvQ2pym1Cg9oCNXs\ndZHxjy3eU1CTNT97N+d0oO2ZSXyn/qSQG7HmC019q6j9zvOJZG5juo+bGtsF\nbis2JN5bY/1t0K7aTGFW9AMNSTDnWqag+vv9JTmGBAViWlVHlIgSxjG7zwPh\nMLbUXwboFT5gER2Tz+OEfxX0RQwtt5wR77b4ozN+dr4HA+w3CM8AQvw+0unR\nI9Noddi8zSH4xyPUidsqmyr1rSYA9cd0DLrpO7M+oazHd94/GDzFQsJZPO9U\n2393M027AE2ixpyhGBGIVLERRpUifE9v+H8+H/7NY/o2ytcsI5/Y8AI4F8nR\nxVSCEB1Crt2n8K2e2tRpdnxQlcyg7BW9ARLYRb+jSJmjxqrSiWZtZI9U7TBx\nA/h76DzatJmQNOLwQFbbLYnFikskVXAqBMyp1l04OW8ug6iX5zSwaGy5J8Iv\nXOz4Yc0nF5rci1ulEVEq34MKA7DlAwTdJIixOFLVHQdnoXSAGssl5jOfvQMs\nOwtE8T69qVoLHykJCFXff++yQ16exeExz+bwYAdllJTvIRuLmr5e+w1xNL4r\nQxbB\r\n=weMe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4404dfe647a38e373335a3a0bd67e55cf7683ac6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.8","@balena/jellyfish-sync":"^6.0.260","@balena/jellyfish-queue":"^1.0.182","@balena/jellyfish-worker":"^6.0.4","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.166"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.0","depcheck":"^1.4.1","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.3","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.17_1624664869399_0.731948302249265","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.18-renovate-external-non-major-22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9":{"name":"@balena/jellyfish-test-harness","version":"4.0.18-renovate-external-non-major-22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.18-renovate-external-non-major-22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dbaaea7f6075a5f582ebbc9b4d4378dd829ae14c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.18-renovate-external-non-major-22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9.tgz","fileCount":24,"integrity":"sha512-LDsf7K5ceNygRP0mfQJXZBibXPsgTR36TPDwJUtrvMXMWg+heCkqRmGMoUz3btzfa4SQMD/WwhFtbsI/N5FP9Q==","signatures":[{"sig":"MEYCIQC5PQQLojoOqqvAXcaUj6mDwZmPtJghpGGM6PDNfaQOBAIhAKqS4SvcRd0MRTrUfUl0NkaLYk87H0oWolVDJ050i9Wz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1n0OCRA9TVsSAnZWagAA8UMQAJPkfBlj3nxKWDGPYLGD\n2Zql/QxURZy3NiTpUeo8qBBKsDlIjnt5Zo3+d1S59wfaA2Go+vrFY2l913hv\n2EgIXtVm0d6cdAuBw8MZPirwiwtIMMmzlO/YlQ6FtOi30074HzCsVnjLOvxb\nQb3gge62KcH69aPq4TB8dNfy9hgKmBS5d6Buoj05kpHQa4D6cRJ5XF4PhnqG\nSAJP6ihTAhej12vpf0XnmgIOzChD+rbqKv6F0VpQAGRMKyYzRUaOCm7l3eYI\nS4CSSd6JQk1rhoJsTGAIUmX1yswY7hSIDYsQbLnVHxDBLdmogV1F5J+mx82B\n8ErQDyPVkPuMSR76gJ+3qPXUIIeQ7PfC9pyQeiIkei3xKVMaajOGxMJnopaJ\nOAgQl9BqI/kClPgCMjvxnf/OkbK58to51blmN4B2qyeMl4FdrWwtiELbFlNp\np/GvgjO/20DaA/kYlsi8KSXX0wKEab5k5I4A42YxuviT7blbA1MLY0ZGyGeQ\nywoSWeT00lpc5cmoL1KIH43IoDJXkIOBf6AA2uLs/fi0uOYG2QdSkhNBJydZ\nSGE4fVxNCES+qEmF10uZo7z7A7y/hE3DnByTNoKyw+dDMyZAS9H+5utZ5aF0\n+FHKbvswy2lMR89hsDo7R5cRz99Cu74OSjizNInqrEG0bRdIvSq+GfygBSt5\nW7F1\r\n=sTlW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.8","@balena/jellyfish-sync":"^6.0.260","@balena/jellyfish-queue":"^1.0.182","@balena/jellyfish-worker":"^6.0.4","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.166"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.18-renovate-external-non-major-22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9_1624669454080_0.029077830256080572","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.18":{"name":"@balena/jellyfish-test-harness","version":"4.0.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0636130c7a2afd02a2db503a8af0af0c1329cb63","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.18.tgz","fileCount":24,"integrity":"sha512-B7WLhW17RKYrhcVWSy5l0xSlquf/itAj9C8Xh7+NB0AloLPUk0cZsAZ95BKnYpA+7cCiZoIKjhx70b3DTClI0A==","signatures":[{"sig":"MEQCIAwezQcYx4805RrMJgI8IDdFd05mxckty7wpKRS9r2jsAiBm3obvycCaYjnFLUcKpYpYeSA8nsfD+Z9FXK5WbAZCIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1n3wCRA9TVsSAnZWagAAJCkP/1X7mE9ZswE61Mtq4DGx\nLp2pnuyAdTRYcxD35yckux0oZzDbZrCwMJow2PAzKlPz33DCGidkqvMYvWXK\nq0GcIHqVCthRYtyI4PRjq/JjBVgdMVmJ8BoSb/WhtAZgpm33k7TOcuSBgIPL\nBLfxonwP4WqqEgWtwr7kfKzZawfB3QB4qfU/NDRCw1oaPKBwa0MDD+2A7djy\nrjH6ip4mDroLF4PDo6CdJZ0WACe6QsKywRWvIubmG7TrkQD3uzonl5mKig1n\nK9rFcAS/jmOqfb1fnYp+FskKcLC8K/Q1scUALFuic/6dc0z9ci507v/WyZjK\nRdAsbbQkCCKn1wSkqzXRiWzdbTQRFiTpSb4BXBD0RpcVcF4yJq6XorX3x7//\nTP7GUjKfHQWxUwUeVytUB8JNtDo9ZKgTpzH3Jg96OLZep+oU4IhYNq2cj29z\nueo2ZMTdnm9HKcwUOFYPrzMbqCqYqJ9t9KuOPccchCJrpDSW6EtPx08G+Q8z\nvZPOQ4L9CYMJvQsNmZ9X/2MlCxL1RiN49b++xnlzoicxOX6g8v5kqv/neivV\nZValD6YtBI2wVUbrpXo0dk1lhGnTRrohaHlf4Wp13v2tBgyfXM1+8hf91hPy\n+HOnHoBSMV5GIRAbBhf/VtCvc5pqlu9uYiyCFmeORbajdywI8GnhWoCdeF0W\nUfaV\r\n=KR8x\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"f6aab1215520ede8b062c7fea41db93e6aa8fd4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.8","@balena/jellyfish-sync":"^6.0.260","@balena/jellyfish-queue":"^1.0.182","@balena/jellyfish-worker":"^6.0.4","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.166"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.18_1624669680388_0.9901174016657894","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.18-renovate-internal-patch-408bdae9d6f39d699e5eb9f696f001de55a16749":{"name":"@balena/jellyfish-test-harness","version":"4.0.18-renovate-internal-patch-408bdae9d6f39d699e5eb9f696f001de55a16749","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.18-renovate-internal-patch-408bdae9d6f39d699e5eb9f696f001de55a16749","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"029027c01c7ee1291159b9ba91baef56c4955087","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.18-renovate-internal-patch-408bdae9d6f39d699e5eb9f696f001de55a16749.tgz","fileCount":24,"integrity":"sha512-PueFE3IkthoOhdnP7KwMYCmy3TnJUHw9lIvgqYAIROrD/g0T/UJoDIaAAADeBSdas7DE0Yk6DL15oY+dMvMqbw==","signatures":[{"sig":"MEUCIQCkLZ/z5Il2rmpZ9KK4WJ+4HuOMv18FuI3Nf5cZuv+DrAIgXLMD5nYNoIyBd8IpRzPxiGF5ZEmoSpgU8rGu10nwk9E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1n6JCRA9TVsSAnZWagAARrQQAIt951BWWw7zy7+MfzBL\nW5GmqbHnU3D8GeVyiQy9e3f2VZqKw6hcxAheAc6hO3I6sZvB1gXoYTLaqUO4\nxdVrEIvoZ9HSQMiXC1bcXoZYD3xiBKUmROKKQZNHOHQwciLqyNk+vDX2USEJ\nqLIs5OutniSOunNeoP9JBfUFhsaatbn5Yovq0FYUOgzt4ViAG5Y+rvqbpkfh\nh66opOmNfoA1/5KYF8OqyM4tIw9/L9KTgaK2OIRal2V+m4MZJXkTdZIfa9yO\nHRkUYgFPQrU5Hvd0UP9qjfQFAHSKOLRLci6bjygADQto+5KjLUaBlblUNZqi\nC0WfOrpaewqNLSSCa/uLIioavEgtkIcMPgIckQK5Gr9d1cxykbQFXNqkEw3a\nr5+yf25/ifCKpuD2rhU6zVf5wzK0Bia8A7jItiZYzkkhTprtdI62K9UXmMZF\n8J1uKKnhy1hnNaY5V097HSnoaFUKx07Fw/uRO4Z0oV6qsEYtDpnWwrOIFxi3\nnPHEJqsLsJqkN+3h4OXll4jGuU+f8td8+UG5l0K5YtN1eo9YXYhSdk4qzSJa\npk2qSJmeTSxyPq1sfSUbO7xAORl87qnI6X075IUFVSGrXaVhBHmu2DzpyfLw\n5IysWI+xPM0jamTVEEJDgPuUk766ue3kSrr2hqEG/3ALLGCXZkfkIK2M8tT4\n7fo3\r\n=fJXc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"408bdae9d6f39d699e5eb9f696f001de55a16749","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.9","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.5","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.18-renovate-internal-patch-408bdae9d6f39d699e5eb9f696f001de55a16749_1624669833351_0.9252553152309437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.19-renovate-internal-patch-12fb1198ca2f045ff6658c278c6f4f8b6e0957ec":{"name":"@balena/jellyfish-test-harness","version":"4.0.19-renovate-internal-patch-12fb1198ca2f045ff6658c278c6f4f8b6e0957ec","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.19-renovate-internal-patch-12fb1198ca2f045ff6658c278c6f4f8b6e0957ec","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3154f8885373d6a27aece7949a0802d6e25dd49e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.19-renovate-internal-patch-12fb1198ca2f045ff6658c278c6f4f8b6e0957ec.tgz","fileCount":24,"integrity":"sha512-UDHSapI1klgikBCHYRflksBoTEuZcCRMG51RDqxfUFAfwepbvhh48YsEkEli+pdz82xaU7IiuP520vmy2suf+w==","signatures":[{"sig":"MEUCIAQw2gkeJjOCVX2F/CFl/23RKFEBK8A5nzN1UbHUBo34AiEA8IBAJPhbWcotWliM9LtNazkXu+luuItWQe+KmuCnDmc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1n+YCRA9TVsSAnZWagAAEEcP/AmpgI/PI4xkVyPItPN2\nE2EE/f+VSgmwNrYdnHkLvFkY674/yGss9RIVY+C51o72wKxfi3u0VSQmJ9Zb\nTUZu1aj74LdxjMTNOHirfa3JkyWN5ScTbLqgecy78Bh3Yk/De7x3qZNKbSu5\ni3E14GzITzlu1KAX9BVRABI8CVo9uZWOOQcrrrjRh7jBBjnOsamDXlRJEu3i\n6gFzLUiYpwUqT9MgsZ4V4onmQ3qjFptS8lPYhMxDP5boj6n9Qxc2qUq4Yn8B\np5f8aKbqB31pHtdFLVX6pZ6qAmEcFvZ9CqJLHxPBXPbx1w4PAEUm1cpMFT6j\n0thAurDZhp9y0b+XhZgU5ht6pDg22iTJVx+A6ewaqczcpfYcEubP1e50TcFX\njRIC8Rj5lDgKiCXipGclJwGoVWK0Fqs4tUldmFiMV71d9/biYUJOATg2oMlt\nNz+s4ShexgAUOmyrf0jjRBORHVe82hzw8ldVnCcayZeclyRg+NG5ohFzIzNs\nC6W54Ts9/RCMFCIsNaNRzpnj0Ecn8JX2ZfpMGS5MA6XO9CMAlvsrsgHwC0cR\nzCRdpEt37s//pNQ7jv5gB4JRS9m/GnPw5a4pTyDdWdWok9LrY39nv9aFTfeE\nh9slth+Vjv0L3mkkDRUbzEgcciufpj7FTkpyR77uNMjqrTwfo6y+GNslwcHD\nvDei\r\n=A+DN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"12fb1198ca2f045ff6658c278c6f4f8b6e0957ec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.9","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.5","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.19-renovate-internal-patch-12fb1198ca2f045ff6658c278c6f4f8b6e0957ec_1624670104193_0.19686806705511262","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.19":{"name":"@balena/jellyfish-test-harness","version":"4.0.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.19","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"584be5cbdc8eba02c5408bd0c48145d59a25bb59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.19.tgz","fileCount":24,"integrity":"sha512-2hERmLFZKFULfPAZnxJDaHVXn5hEEwwfuOXOKih88D922YrNdf/aNhGhAW3kZN5srnt/y7vhIEYiIiCU8baxSw==","signatures":[{"sig":"MEUCIQDHX9BkA9j/v6NNNJdkze5iy2TjLT6l/0xtghddIJUXQwIgOsO1K6ZcOYAq9ReJVl73e8ecHffA3aO5NYxJ5LOueIg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120703,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1oCACRA9TVsSAnZWagAAIsgQAIuvhX3ej6qeWOEdRsgb\nwlFnILbvPsjOGT6qzm+nLapKOlwmWckJFGMQFlJe8cJw2w1azfISpDkArz2R\nqNW7Glv3w9t6J0hEPXtTSCaYNvCQ55MUzDeTTqkiO7X9Wtglb2apxACZLaEJ\n4KF5QG9lu3PobfBzI6FGkx9B6A9tArDDuTo/v7J2HOe2BCmEHr/1ZR2JifZN\nWlOtnohPnNByLAlbeuGcaaRVSnt6raHMIu2VeIX3eznbVTJU22/6W+6JzUDj\nGuGxARvrXziXHAWDXYSgFzTasj496WdRqxHGcN5nTc/mys9sTI6uoFoIqckE\n9wjfkuSAEqTKTzpxn2N5e72Q4ET/bKlfCS9XCkwVUw6q+8ek+5dIkl+FtyX2\ncQxVHUxZMEemqZMtNbkZSdUeBeEYpNCKehDOMEZgAZQlwE/VqfwBqOQFK/X1\n8PuC4+adxZTl6xgjCtuUgJx19SaRowmhJ4q0Gj04W1zURDFvo5aq5ZiVfpWj\nRfCfck9SpSOs0/INi2o3am2kTV+4NBLETMBvLACfMNQkN6xXf0HUfp3t6VKD\nfgjXj0ZEmO/YYHSOOu/mTd49DkrN2PrKXltEmTOWmT/8lroqKdBG4jI+k/9V\niecv5nep+MRZKhnAfuZ/WYr3sp8yoVG5+3kroYfO17ztLygg/7qpVG0fHsSZ\n1ZKZ\r\n=j8Xz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"fdeafe8891b435169411dc73e0cb1b79b7f8fb95","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.9","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.5","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.19_1624670336094_0.34804456721929156","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.20-renovate-internal-patch-35550090cc955f92c4c58ccd56a9db2bef44422d":{"name":"@balena/jellyfish-test-harness","version":"4.0.20-renovate-internal-patch-35550090cc955f92c4c58ccd56a9db2bef44422d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.20-renovate-internal-patch-35550090cc955f92c4c58ccd56a9db2bef44422d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f485e082e125a8f3aa4267428ad1846fb7ac774b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.20-renovate-internal-patch-35550090cc955f92c4c58ccd56a9db2bef44422d.tgz","fileCount":24,"integrity":"sha512-9ahop/1+5XtmazjvNVfuzTXXRG+kbHPCWktArGGfFKIswvHwzDXqro8yTUuby7d4JSbDAPUo0aOG6PVjXZOv3Q==","signatures":[{"sig":"MEUCIEJ2kTcGVKTYCI6xHHA/KfVu6+WqFzic5+TDMzu6MKTyAiEA6clqHG8/OW4TxTRmiQNTTEOBbg6BY7CPTHdj8eXHjW0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120873,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1oJACRA9TVsSAnZWagAA1ugP+wdrMV0x1+dTleTDEX1Q\n2u5c+BUQCuB+04m9lgLNuYwezAE7JGFW8QMYB2U2NhMK9aj1QzJfB37Jo3IC\nb9iXLrYcJ5rZMgKv8H66TXfaT6dMsnLTzsR6BneP5YGQZCMRsX8D7ir6cLV+\nV3Ow+3VdrHqm7nTBKmS9amQdf89YdnxskDd47X6f8TIYLuPGxqc27+dY9QvC\nwmlK+pHdfVXKsXixPcViZRizYQrOIXudawl/xd7uRy4jfeE4AQKNL4zzTC+K\nkr043cZJg9m9hivJqNMT+GufF3r3L0fL0fHWEteJNk2Xg63SFAOz+WH6Nsdu\n3Z6P/1HxcUZgpdqbHx6KqzN8vfkYJfQbxikxS2paibPuN4I5nZIuxDLEurPW\nZU6E42HwOjx4c4at56iRRpVzNUcHE9SmD+CHHbGzhNdYiRKMcAJIwP5C629n\npKwOHf6StVtdfRhKh19TTfdEgNVWtBFsf4kI1SsK6zb+/YYwHC7goRLZCNjY\nouO/FD04mg7L66BJq4XNCubuSREoilRzQ90KD9AoQReVWPm5JYHiXC1YZ/Ly\ndygvb9TO8XtdhJyAC71bvVGfx/xwVJAkpcP1o+hnWydS5BKYl44jTOAdRdcG\nlJ2FTCEEKIuWzvWVAJwvJK+JC5nFNTfnXrWQvt7fqRjZ+0r91X1LUbfX6Gjn\nqBOA\r\n=UxAK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"35550090cc955f92c4c58ccd56a9db2bef44422d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.5","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.20-renovate-internal-patch-35550090cc955f92c4c58ccd56a9db2bef44422d_1624670784199_0.4362564180646775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.20":{"name":"@balena/jellyfish-test-harness","version":"4.0.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.20","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b1a9f3aa88f2e46907c440de86c302040f6a08b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.20.tgz","fileCount":24,"integrity":"sha512-z3JlXFC0SGdAqvCJcJJzdyFez++ZDULXFmK1TDL5YBh61oEQqkgR/Toh9P4KH8pEsNpo2pB5Ts1D31sidake0g==","signatures":[{"sig":"MEUCIQDyvpZC1QRPy6shNQJs6OsZGC1il8BfpxV7I/7WEnYDrQIgEtSpH0t/6v8Q+/QM166QneGHUx25A+OYVdx+SkpK9r8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120808,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1oMgCRA9TVsSAnZWagAAzJMP/1oMGwWQUm0wrSd0/CuS\nT8IzLTrFIebC5ptHxjxlUzv52bbdrbxbgxO45tjtDKF5tHTB03UHOKHhCpkD\nhGdNGkK+z/lZ/xZFKvEzQqQSF5C9pfQUlrNUMpw12t48pX82E7E0hSYFyU36\nNHDG5tr/w8Vng2kSyfT7CYHRIicZ4J8DZRvtMbktypAtCzLfj66EdxO8y2Xj\nLtuKYd8XDc3Vdm5/cOswbTPG0ha9s8MWAi56x8oJT6eHxyywt7Ny3lYZmDS+\ncuoVgTCUy910XjedBa5fCopUgj9mVVjx0ygfozI1aBXheuybrQMwU4dkOKRD\niOXGN3znqyKbvOBipk/HOH9KyEqpJh5q9EAuuvkW6rvHKRAUvEuyeEYULajD\nfw3rLvFKUzH+OgTXeS47J5XKdl6r8xkTehm86pYF0ryIO3Psc+bNqi/oSvqU\n1MFOokX8BpwqYgMBinAEGT2ohk7kLJHRY03HP7tdUld6HjrCB9SxWlLwhH30\nGGhWb/ZO3pL1pxh9QFbISsRQEieqOkesub45fm92qeExyPY5dZmBaJOOBAJ0\nWi+ZpG+lIDNj6hNRMPslQy83vgy4SusNGeLdufoTPzDsa3gswGfnqIH/pfg7\nGWBOM99ujxT7HG3fTVNjdA5y8jr1TaWizAWKKoivSb5n+4sc/jj0RGhrt9Zi\n9I8H\r\n=sF3b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"5db61e5a2d84efada29eac2d70d0f4f4f4e2086e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.5","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.20_1624671007773_0.6505395597453738","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.21-renovate-internal-patch-2c5ac4ff1d71d24d671fac9596b22999c4c88b98":{"name":"@balena/jellyfish-test-harness","version":"4.0.21-renovate-internal-patch-2c5ac4ff1d71d24d671fac9596b22999c4c88b98","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.21-renovate-internal-patch-2c5ac4ff1d71d24d671fac9596b22999c4c88b98","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c211ad54699d90d85dc01c0ff0592aa16cf1f8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.21-renovate-internal-patch-2c5ac4ff1d71d24d671fac9596b22999c4c88b98.tgz","fileCount":24,"integrity":"sha512-ogqIlW5SmnYiuCpL30JtLBk9DS7g7FzvRwQYp9L/CrLPjBPfbESGUa4Nf2FInDUPp5xIXjWMsxAoiuc9aluUwQ==","signatures":[{"sig":"MEYCIQCV3PNh8Sqe9iXnIinC8EJpWBksnYSEFnndyxjHl04PCAIhALXqgFKXKDdBzWsIGs6jNQ4g2vRcBr8ruoniyYamoHi3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120978,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1s1MCRA9TVsSAnZWagAAai8P/1PAsjRfsFHzo6a3mbj3\ntPYrofj1PqmQMTbKLSmY68prxZ1jZjqGuJ3/pWY9ZRGN5m36ZiKwniRf8/oZ\n1WJ/fuEtqfU0/7Cgafi0Mj6kdxVlJfxEJbKSpDhroJn0Nf69Su/uvTomICbJ\nidis1Prclwxt1J0QF/cfzzw7tD1F+mPJwcYHFXHd6frVHggzQi6ElqMu8ymN\nvFDTNfYvX1OCkjQq7mlc8QNd+eLdswFoG0snhY9Adj02j0SIvMeiGMgzN6+e\nfyQSS8mrfVv46A584QxslDY+U1krG2ZoV4dI0LWqpNMV9TOefCUrKwriCrIF\n9dRf6U5NE6i44I23WqAkbj148ZAMRUMAiPL1W3s0jlQI1EuuWw5/oc/Wiswd\nE+5gK0ZO/1WRwffe4PXyUMe+zXfmn44WjKflBQitqYJQEqIF/+zU+Soe+wyc\ntO5QmVxyGIRY82vTHstRjGcfLSM9V8tmhWngA3Ephl2QhMxrlSuSykl1kTgf\n3EHMO8lqksozjkYPXUYLnAadYA7bIn3qnsCDC+JNQpxsKRnQuMpSFFUvilGx\nhSZAM9GGZSTL9KCuR9NS7P4Ftk5toAo8gDbq3MEB+oJGhnJuJr5Hasj3jU3V\nBRVbq4LwtE3zkuak6q+H6XeO3pwzd3BJvCl34eOCHgdRkmuGJqB5yXMLLQtW\nRoiz\r\n=rXe/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"2c5ac4ff1d71d24d671fac9596b22999c4c88b98","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.21-renovate-internal-patch-2c5ac4ff1d71d24d671fac9596b22999c4c88b98_1624689995934_0.4389853711138807","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.21":{"name":"@balena/jellyfish-test-harness","version":"4.0.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bfad02f0cde2879672c4f559d6c56e7d015d4e7d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.21.tgz","fileCount":24,"integrity":"sha512-wanebxMY6QeWOcwnTaB2DsYySpKoGFeaDyqpXXPrjqmdi7IbXxJnJxr1kRhr7v9FhBCnKym8gmSlXr0+fYF5SQ==","signatures":[{"sig":"MEUCIDzqOUlC7UP+EvdVzicc3/xu35CsAPHrFY1Dhni5QTEdAiEAnYTvlsGp+bLZX/ShoS0Uhnh7uyCIghO7cFTUQH8R3gc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":120913,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1s4DCRA9TVsSAnZWagAAi9EQAIYvpPfUBbu3abR5mkQj\nGGfMTPkshi8UcAWNqhsr9t10n/a9yHz8DOZQLL2l2iWqr8qGdQVJIkr3ziTw\nEPUB95cQFnqWdoxhGfSRTw25jFYOx42SMqFKvWUC07vkkKaDtUH9R5srUK3L\n/eD9Gg2Pv2par8wgjHb+vpjTKgx09OqKPWT65Z7zOAldoAa/88wm5zzfjfZ2\nSVvKOdOXhWJqheZQId5J2AuE/Jc43XN5swbv273ueoTazXitWb7C3RXxsqIn\ndok3/pyHG0nmw1yU14QdZAZThRcMn9KWme2bJAuybdFcQqlN1gwZ/Q1r82Xk\ncbG2gZwuvkj+zaeYPfOw8sKI99VqmVSRrVFtgtZv4tEzCdXfMDF3ig8l2emE\nY1ml9ov5mEaMTVxPKsN0Nfczygd2joY88CsCA4qToOQoEZdrxpeCq+BmqSQ1\n4iF891PpofeLf69s9Wi719RUsmzJPs6A3U1nhTJnyelo0Z7rXpNqBcXXYnTI\n4soypy30aRWVqx04skSw330mZJSGhY49SQztQL2lYICeWN1oUZ6oMnk8PuOP\nAc/h82+zxNDsBN1zl7lcUbGazyGMCQzEmBqMLRNuS64dZj8zhZdtksiWsYxf\nLDubtnoUzQGu+5i7fQZqhHYKu8hIyoRzjp3KUeBCnYBA6F1bqhyAmO1/SRxN\njVPD\r\n=G4S8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"4c6e3d645e992fb313d902d28563e045ecf15c9a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.5","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"12.18.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.1","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.21_1624690178910_0.7061160317579971","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.22-renovate-external-non-major-6308a1b63e1a339e72fb2f81a921c1cc1de1ef59":{"name":"@balena/jellyfish-test-harness","version":"4.0.22-renovate-external-non-major-6308a1b63e1a339e72fb2f81a921c1cc1de1ef59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.22-renovate-external-non-major-6308a1b63e1a339e72fb2f81a921c1cc1de1ef59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cba6f9a0fa577f794eb4f1db203be0e4a14defa6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.22-renovate-external-non-major-6308a1b63e1a339e72fb2f81a921c1cc1de1ef59.tgz","fileCount":24,"integrity":"sha512-V8vXr3EZynYswgwW7elHOO1iOZuBbsbHKDuTldWunvYCG5uC2CIJMgtPyCPfyDYkAe+orkHi5+ajfWtCJorO7A==","signatures":[{"sig":"MEQCIGj2UX6awWzJUnH6B4wKV0R5H281rtQs1LPmPEIcFSnDAiA7y7hMqtu7jp1YZf7CgHzid/wtwJRuSAlESeayScdFMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121071,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg1/cYCRA9TVsSAnZWagAAKi0P/0kI0uU746ovu0AWaQD9\nYWV+WvYvBZcZ0AtX6RIsUjwD+iu6WQplfy+6qSjfPP6jw44G/U+wQSgPKnH0\nVPGvdJ4gTfWLBDP3A9juQDtFnIwPyBimLVnCh8NbIxxKVQkY5EP5hwS8mbnv\nfU5ihSrOc48dL+svg9OYTtR1Pb2YdM7ObgpBIHtXZ88wSPu1I5GwXUFjlQGQ\nJLZm+FyiItxeMEbnznu7r9t6AqpsDBuy78DJhjZMRDYS9/ENm/vUE9c423//\nUNFvsNE8Z0EWL+LdxOimOiu0EaQf67oO0hml64uRSWTMT+eCjgzQP6f6JHJl\ntOoSvQFCeR3jAq07jkov90iy5itN7Msf4Bmowh+yJoz7pWobpd33eN7i71++\nJmCJc0At3bU/SuePw61XQzPAini1sz8beCotzR0yaOj4K7ATI+5ACVkwuMIm\nvTmrZw9vx75wRpFBUoDwOR0lJiqRkljI5dtFcJkqigZbQIVdW0lEm/ZTy0N4\nWzn1bOdG1EOM7nIhwVtO8XG8sYFqtFQx6aVX/vR71L19vILzUG6GjRhy1bBo\nsIpQLJ9h86fkfAFf5LkVBZgwSmg80U8KklGc+mUui78AT3DO2k0hFt3lNyuZ\n8OkDehCSnez87Tu8s8NASPvYZMq9morP8BCXbLNtwJLkZMUX+23Z5mjzaBz/\nHYDk\r\n=2qkZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"6308a1b63e1a339e72fb2f81a921c1cc1de1ef59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.2.0","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.4.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.22-renovate-external-non-major-6308a1b63e1a339e72fb2f81a921c1cc1de1ef59_1624766231604_0.12660694071405953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.23-renovate-external-non-major-c1690995233e4b8b3a6402e39d0c984def3725c5":{"name":"@balena/jellyfish-test-harness","version":"4.0.23-renovate-external-non-major-c1690995233e4b8b3a6402e39d0c984def3725c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.23-renovate-external-non-major-c1690995233e4b8b3a6402e39d0c984def3725c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7762c802ef0de831158ca5227c45082a6f9e965e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.23-renovate-external-non-major-c1690995233e4b8b3a6402e39d0c984def3725c5.tgz","fileCount":24,"integrity":"sha512-gPupF8kdS/VEaSvnmXsniUyIQea71sboxkNRQT0mwTegd5AfdScs31sF5wDhu2d/CUUXdrZp93DWiqBwhX05og==","signatures":[{"sig":"MEYCIQDgMj+qWr1VsKXB6LkQ2C2hOMa5/9sZIwPp/nYIaWNZoAIhANKzsFk2Pe9xMpYqTeBKVTSBunuJ4AGLD65QDfI45xrf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121168,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2OZwCRA9TVsSAnZWagAAsGcP/iu/OP3syA427DySLAOb\nLSQBuyArezI+QjLKKayIUjxXm+2honA+QHJE2Glx9aX/jRiXRhlMW54NGJSx\n2O4SjQJhAxWScJlXd5a5wKEaw2OdXDM4hyV9v8XzUn9B+zNj27x6edGYm8jG\nAmab2pvdxRiocasI24FVf4LtK4CMVhGuvnvDjXpP3S7xT4I+HX+WKEpkmgoH\ntxJnSOGHHuNyQnCjLLz/p67DNGRce544vbQxHm5KiikMaBh6YWyc7JT1HmJa\nEzjbVbg8/HSXdOnMSH2quhFIVdPIyfFEpjg/tiCPKW5R7HQa2X/aQA3lPbDl\nVYHBwTSNrH8m2ojI5qyN/aLISQzE4TTg9O2p4Hrx3i/s9rpYDeO83c20H+fx\n97u2gQIrhGZtoSUzcxqbqEe/+gSDmu6Y8VB2+uoGC6o+MJlb/2+RKozhlses\nk45XkfjS3YItyWb3cbM6uu02/zw/GBjBq+W0WcaCWHc5izsFVdKQZ2YfGiPA\nTslHHHOu6lmcFLEu57tH96O5YY/oYVkeRdNudwTACRqHCsJViOsMqw+T/i3J\nxxI08/UbfD4M8kciHmA7xnmUswpTM+QFNBHXjcQGcaY/pspwDR5VIXyzXyaP\nw7AvxIyiL0Ok+336awKPNyPWwKpQfWqH/srzc37NSj7yweFfDDoigEpb0UB0\nkeho\r\n=UH0J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"c1690995233e4b8b3a6402e39d0c984def3725c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.2.0","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.23-renovate-external-non-major-c1690995233e4b8b3a6402e39d0c984def3725c5_1624827504487_0.26059511141042746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.0-triggered-action-schedule-8975f5ca842b5280474acf92ca75b26b91c4aa9c":{"name":"@balena/jellyfish-test-harness","version":"5.0.0-triggered-action-schedule-8975f5ca842b5280474acf92ca75b26b91c4aa9c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.0-triggered-action-schedule-8975f5ca842b5280474acf92ca75b26b91c4aa9c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"13fb4ab42f3647c012651c660ed283d73d46a14d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.0-triggered-action-schedule-8975f5ca842b5280474acf92ca75b26b91c4aa9c.tgz","fileCount":24,"integrity":"sha512-xN3vVGZE8sLAnj7KTf2WSnsP/iPHUo776bL/kjzQfWxA+Z0q9AwcU7wFcCJqVuPq/NXGPP7IfZ566QlnAn7K7g==","signatures":[{"sig":"MEUCIQDNOBSDkIS5bwKVjBqmODdX6DY1v+qRQvddJH5XhHz6PQIgBcCDUgRfrwHS+bUm2Jv0YefUaniE6kRqUMUr+ONGHeQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121357,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2XgOCRA9TVsSAnZWagAAowMQAJ87j0MB6hLJxPWNqFYV\nPngwpEs0hlIFq2yeDTx/bOn1HEEqZohM3ZB1GoL+spp7PkN1FscVu1fJRMxd\nXAkpgBZ36plzjtz8oyEHJrXIQ3AKyVlND26Tgxet7qmOT8hMZwIucdE2Ys9H\nOnncIo0uzoIFSs5RESpXvDv/FSdAOes5kgyOQSQA2AjvlLcp2Ar3ezpxewEg\nJeprr+B/Yorhsm373/zeXD8BJ20Qkcam+oDIyLZXb3RgxxewB0rvnrlmbSEL\n6W5CI9jjOwe0/FDvZQ0Nxz0MMF2NgZxDCEYZUkbrzAhqIm7zdJ1qkrU09Gs1\nKv6r2PQiE6s6ZIaXcrVyuMEq86e6VHlCWU53H/YCsbRDapqVZ8JTWZThNL9X\no/9m27yr5hyhZyBfgm9K3aB7KmaolWzwqOo8161neoAZJEGjpE6z4NYHmxfU\n4huZ1J7h+e2VkO9Qm5sjlVYbb4PpyY6xqMGDSxRTelPaxntA6TJPV/roJgQ2\noGIzgB3Qhav+RwHcn5gVO17HD3k16PukFrc0BBVIplJjN58LkoaRLR1tEF2K\nbYEty5bwJoe8UEXVLl7jbiChz5Fh897/VJodjuAN6g0jiQumNBXB8fPxe1/4\nrwris4xnATqUS/1To1vGwm1bymBdd9hPu3ffVhFIjhwo8rYmosp4oqaXi0Hy\n6/K1\r\n=c84/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"8975f5ca842b5280474acf92ca75b26b91c4aa9c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.2.0","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"7.0.0-re-enqueue-triggered-action-requests-c083c5c783fd277e775fec488bb25805fcf79f01","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.0-triggered-action-schedule-8975f5ca842b5280474acf92ca75b26b91c4aa9c_1624864781820_0.4072226456594328","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.24-update-base-url-type-e35e66531df089ff269b3da285fccffb06a9d2d1":{"name":"@balena/jellyfish-test-harness","version":"4.0.24-update-base-url-type-e35e66531df089ff269b3da285fccffb06a9d2d1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.24-update-base-url-type-e35e66531df089ff269b3da285fccffb06a9d2d1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0adf469f72937ade314515e0bfdf296c3a3cb3e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.24-update-base-url-type-e35e66531df089ff269b3da285fccffb06a9d2d1.tgz","fileCount":24,"integrity":"sha512-vwy/6nUa588Ed6g+JeXrBRk29muzJF/lpcA1oXn24hWsiGDBQo6VCyBWmki4/Ws9DN/s5LSjhjJlkuLxrwyTXQ==","signatures":[{"sig":"MEQCIAyhTJM1sZQzvWTusdV668rolKPWb6eG60Yoxzbxw3e2AiBFffHVQ7WXwFa/1tgmKgYvev8p97FVGW6302vQhjUe6A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121244,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2rQsCRA9TVsSAnZWagAAk9cQAI0KydHImgXi+93gXPDX\nmyxQfpik7xhOEs0EiKGXqUxJb/rhERuhdjXImM2bGwk3Y14h75LlMJ+qEp0c\n+MTQm3GYv4AM53ZwfYyCvG8IbQ3dwx51E8w8NcGPBfIYFnm9RJxw/vHUdbmZ\nMzW+xrLNH0/JFOont/tHiTft4QF4SqViMObPZYy9mhwkdLhNatSBsouH1mmM\nZBrh1KYLb3jgTsAbX9ofjIYpKl9n7v41dXPU8UVrEryFawH9oY2f85S2OBoK\nfvXAUf3AqnUn69J+Fu+z2BJCcpkiq7nH05kdIRrY9HGpVCpQKC2rbvZtUWlo\n5sFxuaYWFeWH5djqdBkYnMAb18jsS117L9rJfyV3+++5iJDJOXaBJj9QFpcY\nbxZ+h6u0mz4/IOsvj6pNsOwJIenw9mc5AoHCVyYa2o2U3GE80pbaBYkQw+N+\n0ltsF12kilJlNY2px6rCm7TTE4ofASC/0HV68438GthffuOmtTsRWcQmXYXk\n0cld8BTnJLNCvg7Y89KdqafVKq6LeG/NKju39kAwofdKI4WgtmZLlG6Us9Co\n1GAXWjJCW0B8/l0PqJicn09lyclCqRiURPBr/NTGuIx2SPWA3jkJ5pJaGmG/\nUs6af+10nKpRqvaV/JNlaNzOUhaFrBqgAgS498RsPJr8uwcXSYNe9HKw9Qhk\n9G0O\r\n=Hx2F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=12.15.0"},"gitHead":"e35e66531df089ff269b3da285fccffb06a9d2d1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.24-update-base-url-type-e35e66531df089ff269b3da285fccffb06a9d2d1_1624945708222_0.9120594962366995","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.25-remove-package-lock-ab2a733cafe37be77415bf781f0199dff6a18e7d":{"name":"@balena/jellyfish-test-harness","version":"4.0.25-remove-package-lock-ab2a733cafe37be77415bf781f0199dff6a18e7d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.25-remove-package-lock-ab2a733cafe37be77415bf781f0199dff6a18e7d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"814d62769d77bb712b7328b942b0a74ee307cdb9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.25-remove-package-lock-ab2a733cafe37be77415bf781f0199dff6a18e7d.tgz","fileCount":24,"integrity":"sha512-+gLE5GtzPd/JSE2vG+lBQOZkl5avL9w5X/Npcz3OiZVG6s15tAoKluztB6o/VZMzB6L6Z9Uip04f2usC4erdcQ==","signatures":[{"sig":"MEYCIQC1TfpvmzgklXtuUUzFBkgptKvrqs7BS3zz5FumHMs37QIhAK0YbaxdPsl8SADV2tchY6ezCIUsSBeHI5pOzmYSg+Ww","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121361,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2tf5CRA9TVsSAnZWagAAG6cP/1o61FPlFWby5H6Rx/yy\nIskde2o1MwBPPa0b85fQsiu3KmtjE6vsqlHYDlsdsk4cjdE8WCy9r7MShG3/\ncBu7MX4J0l1lJsjI8IUDU0xEpovIzQa6pyNlxZmMLfCXUywNCFkTb+APi8iV\nTqwDRCqVZ+AlPkazUFE39RDyuwHy5CGenCWiaXiIMu0uOfGsU6s5ak+dz0eP\n4osDphAQgCCJgkWy1/Da+e3SOWrmktzqigPNtgLM3myfctAiFEA+0ooQ8eY9\nn42/+6D48SJ1b4WlWhgaLygiGtVrrYnKKfOJAeOLO54L2MHRRGAC+vRuj/jC\nEQZhyosG0Ls9OY2qRp4V1BiAmqfIwG/jNbvVNDW9kMUgGTo+7tL8ZtH+370P\n15doiq4K8tFYBcv7DO5rWGmQKXX950Y90t9Jm8NS3hTsIMOR7xSWCaNomW13\nnZ8tDN3X9bOG+7RvEkVpS2Q6TL2MRm6Vkzyb8Y3Z4Dak8cRDKkuy+HjXRnMl\nKC8XL+EK33s64w3ac3TxXinAPkCfm/rD1vlYySLfLq/di6+GlI4l6OYD/R3q\n6IlhmVraavCZwDxqt7a8WCsPKzJyNI+g2/p5yn95sTluFndOIdO/7hAnaMry\nuoMgJlHiR0m4Srk1Z2NIgo7YgqNCp1q9yl2gwNJNBNSathpkM3DIeWRVCbBJ\nRQ5l\r\n=xdyh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab2a733cafe37be77415bf781f0199dff6a18e7d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.25-remove-package-lock-ab2a733cafe37be77415bf781f0199dff6a18e7d_1624954873282_0.051288253548542606","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.26-repo-sync-jellyfish-config-default-ad7e336453680624ada1557b6618eb6350447121":{"name":"@balena/jellyfish-test-harness","version":"4.0.26-repo-sync-jellyfish-config-default-ad7e336453680624ada1557b6618eb6350447121","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.26-repo-sync-jellyfish-config-default-ad7e336453680624ada1557b6618eb6350447121","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aeb80b6c586d06a4acfb2c4f10c2322bfbd9cbfa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.26-repo-sync-jellyfish-config-default-ad7e336453680624ada1557b6618eb6350447121.tgz","fileCount":24,"integrity":"sha512-l+jROBHSjhlHh+Y5OXUXFEDiY3ZRa9R/gd+7QBNRtzBb94lq7uc7F1RggbqTQEu2uv5CZgpGEMmSayoEJRbA1A==","signatures":[{"sig":"MEYCIQDPqGR0rgfhl/RTp7EK331UaiQCs1H709wKONkUwy5vmgIhAKwx+BXUB/Z+1g0uiAnVU28Byrmw0p/eKQ/uJYKf0QX3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2u+uCRA9TVsSAnZWagAAWR4P/RyL2uYlaNeKFfixkIOy\noqZAYGo9Np/e3eCCs17xXLeaCEa0cUU9SyFGmt30G3zljJoeylYfwKByeTW3\n1yihocXz7nfNvQVyz4dB3B4C37CikDSxR0UHnuCW3auW9L7nCTKWJU4lcKMP\nOGeYq13nvuCsA9eRcrmwe6Ybr4eei6s6om0cBiCqR/gAHanrTZDq6XBCcaIv\ncdaIVLQ5JRI3d0uCT03PT+Z+IGLgRc3BwHoSmHfZKu1+7q/RyfVbyIsPDZh2\nCqEEFuli2CFvdJQXeOV9A7C4gA1Q8Nnhl0QCwfwTudadHIHxFp32Rw3nTrde\nsPwobd4V78lhqUB11twsmx/oCTxDdwD/U83a9dfrL3X1RWRVlh1WilTFMGXY\nh6t5KkjRb8JsmAoJlamt8Wz5xX6vPM2pIYZvqSRjiat1BfzUQFVsN1Z+CNyJ\nF1WDVOwo7dN53rSBe+RiF/KGEkGxC4xaBdDi9UVT398RrZ1Gzv/WZFVSupbi\nyBFR/dpZNVG1pqDBi5JsrS7h1myQPkn+oD4MHLURTl74ual4olujpibZdT36\nW/LbDBcp4WKY5KyXG2djvSaw5RobO/fZLzg+Zcj/Ynk2QPJdl7MBgLNjH7Nl\nYto8CzkSE9o7+CaQoVS4rqtgXE685kH34TGv8Oyilngrw3ErYDes7ciTlDPT\nap4r\r\n=0zl8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ad7e336453680624ada1557b6618eb6350447121","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.26-repo-sync-jellyfish-config-default-ad7e336453680624ada1557b6618eb6350447121_1624960942443_0.9256070321780028","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.26":{"name":"@balena/jellyfish-test-harness","version":"4.0.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"08896b2eeb8622c6fb9b830a2497984e8c8486bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.26.tgz","fileCount":24,"integrity":"sha512-Slq/ed9BCiyoFPvxA62Uk9EaP4SU5g2UfKm19c3DX+s6f//cdDooYawPLHlRSX6yMgWI1SiwBfsFZu9beh1xLw==","signatures":[{"sig":"MEYCIQDb9empcaH6dSzs0FhQeDvQ/EkplHk0+njl9KGtpLm1pQIhAJMRM/Pg4X2+HA2Vr1vgFAOwB604XDIQke6MNgd0azjM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2vH/CRA9TVsSAnZWagAAAAsP/0jyyyyAkeu7FqdSkmTv\nVhhTFrUlx+9eBBTP9x3D+ydon0UC4W512mam0jgWhdkPNgSI/Nin4blLcoXi\ntxup1EWPnJr4/EfKHtl94ytYwDPa3XPSyS6qxMroLDPEhAmE++sRO1LWMtYL\n4Ehi13PE6EYQAyrK03rsoY0SIMbxKwAs5gQtH7eWKzegt96Rs3+ocF0MZiCb\nctE8nbI1qwhrj8awsZYaCiNMMhirTxdTy/BSSJ58GyCWxLmiQUCsJ0tKZavL\nhDeM+tQrQ9Zqncdh1qHDnfK1YCVsR+W1qpgOIhvy2BAiqKk2mc36oE/pXCFj\npki5HnX8hZ0UIHOx302pCa1edqkg+D5gHkRCbzUgMDqN5fyV1Z0x4IWZXeLU\n79ZmL0j/6xOqFWM26zc1IBbolLBiTa+8RRSj/1JM/92nSExDYhB4DXnp5Vwx\nqKfFVTGHon5xa07HLRID0t37G6DAUURwBVK8grer1uo/vWc+XFuFtUfn5i+F\npO53EFbocyYLfn68kPCQx0WB0MJ0AkAaFgCMbwp2mJDeqvflWZhxN5r1+Zlo\nj3CXbJv+37v6l1O4z8DNktooZAN5vI6TH43nB068dikufpxPN5flmOMYWamD\nb/TlUYzR7pbed/7QIpswoYkFa+bTlowQSu7bNmKbJihqlGVp33YTf6XbxNmz\nX8sq\r\n=lCE4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5dcbc2b490d6249d1ff69b19a108289bdc763cf2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^6.0.7","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.26_1624961534819_0.613259177616909","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"4.0.27-renovate-balena-jellyfish-worker-7-x-cf23a419e5c74dc792319b75bd895490dd0ca1ff":{"name":"@balena/jellyfish-test-harness","version":"4.0.27-renovate-balena-jellyfish-worker-7-x-cf23a419e5c74dc792319b75bd895490dd0ca1ff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@4.0.27-renovate-balena-jellyfish-worker-7-x-cf23a419e5c74dc792319b75bd895490dd0ca1ff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9bbd0affa58490978c883d47e5c5fed35beaec1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-4.0.27-renovate-balena-jellyfish-worker-7-x-cf23a419e5c74dc792319b75bd895490dd0ca1ff.tgz","fileCount":24,"integrity":"sha512-Imnl3WE+yiIHvRfoyPyb+zKFbgEvZzLJQY5GHu1KMOST4W79pDTcdzh0OymB6fny/Ejh7dFIT/lAKb39H5UxVA==","signatures":[{"sig":"MEQCIHCiK/EZ6f4P/0xF297p2Zq/wRMAhduY/caV6oDBw4YwAiAPV563NVyZVa0d3YJctYWaAoSXxP1CNjFPnVKhIGrxgQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2w4GCRA9TVsSAnZWagAAbngP/iIyzjNKjv9QV9EZKAXJ\nubOpqknB27GButV7FdDcpxBDtIHpYWHhbv7M+CPLMkLvwGBn2XKxHb2mXXPr\nakZrjqLM1i89MqoEe+/tzNLHvhfVnAYS+G/2G/hHRxxFHRiziPokHfrvxrIi\nxn9DFDAzJpkaXeSp+t9cVPEdWy9mBuNo2ireF6SUfQ3x8qlmPO19dGnKZ6vH\nVo7O5k/518Pl6ACmGPl1kKTZ3DmZv0Z6j9CwVD23ftzZc7jX6Q9IHVYTYwd3\nCtpEGEl+/v/XGW/kHhGUmhpW5/QSTmKwwZ9bJFZhPuhgWITaPrK4wLT4WkR7\nCwGZwL6VqQAtk5HTZTAudnOhe5PeA+p+s9vGoOmiKZSg09ihKRgRE63u3Fj0\n6o4lUmR0JVvq9OuxeV5mNRDOsXgJHNQdbzFlsmt6xUmqJtYs4ue4snCL3jE8\nGucpqMWE1IbokQhXGYAn8jaIL9u6O93kNAI5u5dtGy3ZQkNni5ZitC6R04Mn\nXU26YLC8YSJISLhiXqaqn4AQkUlRaEm/NrcVcd/N5SUW4KK3rqfJdP0KbLQ5\n8WEQLhw4wQlNQkWtdoKzoH7g6F2tBGQakaWoZguZU6rsg/Id/eTSZgjxFuz3\nPeNkww6QOxPQxgl0VA2vcul0YcOJST6+x6V0YVlGVlogwPwE+FMfmK2v2rf/\n9Iw6\r\n=PH4A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cf23a419e5c74dc792319b75bd895490dd0ca1ff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^7.0.1","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_4.0.27-renovate-balena-jellyfish-worker-7-x-cf23a419e5c74dc792319b75bd895490dd0ca1ff_1624968709609_0.031166805220443017","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.0-triggered-action-schedule-3ed0b3325e36837182988e643497b96a73147e00":{"name":"@balena/jellyfish-test-harness","version":"5.0.0-triggered-action-schedule-3ed0b3325e36837182988e643497b96a73147e00","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.0-triggered-action-schedule-3ed0b3325e36837182988e643497b96a73147e00","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a0ae3e40434f27a6b7d140fdd9e0361802ea4f99","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.0-triggered-action-schedule-3ed0b3325e36837182988e643497b96a73147e00.tgz","fileCount":24,"integrity":"sha512-jUrqMVIVyFnzIW+PHt6lVFYG3H95hEMlOuyJG6erS7t8qf1HsJjZ/mkbuMsQjQZBspJaP9RimThvflLZFsfG7Q==","signatures":[{"sig":"MEQCIF9BOaiHvXYEqCaE7TVMMjI5HgWilwNZNLfTKV1gFpd0AiAdr+PgdtPoG0Gy/2lua1e1biw+LOyH+HqLXx8E+sciSA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121580,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2xXICRA9TVsSAnZWagAAi6MP/i6ZvdPx8I0dUc1A9lXi\nquHZWysSVtGWUB7jtGl16vqLPLYVWck3eJqpBfQsa9I5rF+WU7TWeBfvBvUN\nquJxa+glPCprbxN6pWEiqkVxTHTE4DGly9oPtr5bGw5k1rEH/NbigDPXx1my\nj9ndEU7WED5Ansstc8YT4nihnm2E7pPyr4MIKvT9fYLT+RsFC33ilkEfmDsD\n8eYHCh1j0fGCFKFv/StrbCWwTbxVdZ1tRFuTuw1k17SO3rN4PdrcfPA3h+Cm\n8eD8zKK4dNaDyNvTmr0eB+ohf88SGs/BRXHxdlo5Oim40pNNkaIuwCE2SEo7\n9J8ALV0ItYR9vg0CUIGJykUZF6dNdujEVXGHrmHcgQggZ5EHF/FltVRQw7lx\nFRqdm++TUrMvIKOaCWTev0VLXm1njHCBZGAayJz8NSAQiMWhSkwlVmomlDz+\n84dGDXTtGw9NNdEZ5waSls7g/uHMLVJRvgjHsTgm2u4xJ6QEncNU4nKMwTaY\nynRm3PyrqrmiZk6QGUVYp/XeoYz1byq+tw17TLLvZU8Trze0I8z2EpaM6NE9\nZQx29wL4MXRZikndwxGHSpn3XVbkaKweI1NxNlXfsJB5E96F4MjfkcyG6Kva\n/UadTBydfuOaDg+IgikQR9/L7FNqT93UFs2fEyFj316rTC/ivdyBka7aKUwg\nKBPi\r\n=WFdg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3ed0b3325e36837182988e643497b96a73147e00","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^7.0.0","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.0-triggered-action-schedule-3ed0b3325e36837182988e643497b96a73147e00_1624970696023_0.2855076080124368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.0":{"name":"@balena/jellyfish-test-harness","version":"5.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"240c75eba115d3d13860ae1511f60babdc497fa0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.0.tgz","fileCount":24,"integrity":"sha512-oA+9HddQUcaLKDdXuSqlDiMK5aGMcId8/O6QNjCrRCZMN2gj0k4s/k2r6vVg+UF+XPgZcZUhNqN4fbGNkmUvSA==","signatures":[{"sig":"MEQCIH0GiJ+Ymh1ArypDOZK65q7Cxc05G8qXjvzAxI8QHQdwAiBcWdWeoEbwI3QBZy0AiOFP4kxTbxA5/VH/kq3v/qotvA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2xgcCRA9TVsSAnZWagAAS3AP/13hcxeTc1eRR94Cx0+K\nQ2Ez96x08NdFD1wCs5fkBIgeddRBXBB7QfWnf7pxeu7635O8GASwUvQjjKV0\nYzqEgOz0m43LfdWYJMSQ/cVzVpVWCQCZKalFyUs9jnhLi6Q8lwMDwijPYWkf\n6+kKf/9z7NLFuO9dHCdEFZTmOcNRjuq4D6jhvjMvnAEqg3HzRldGu9glJx9T\nvxGBl9PLnAXsLky6HuWXNKASPsn9VBYpVS2gnr8h5TtVhbJrnaAwDsY8gDT4\nhrU3F0pRhH5+FCnS042KJaXJ3yK8ohOgPKDc7g6BdE5wMSJtD6ptFMlpvomE\nr8Wa4WqLxdUaJLQ9lTiflsmv+UG0TgXUb2j/dF9t+UQDOMKIYMNmX5aQORxr\nBYlrP5p7oP5fWVgnyW7L31ddfYjNeSNFdd0hPn4wLidjpoZe4a9wOKM/kHhO\nye6yWN/qHIqejzNVL8zfiJe8KrkBaVvZk+r5q8oL/rlXfbonVDrY20Vu5mG6\ngKfl4TYanzEgEpjcAM02j53gOmde97CkyVkw5rV9YuIRmvnqYm6DZMY5wLSz\n5IyTAV+coJCJ2MpBa3m+jEtdYIPFzZOd1Fucdjel4/3XphRy7OaFi7CxAouc\nvUX6gTc30CWiOk3iJ32XzfY59sCCGLVlgEbNybC8lbmab2rZQDVD7hPrt0uE\nupFc\r\n=4Yhr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"131fc18aec5ecc59ace5c3b6e58d13c45cd95773","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.10","@balena/jellyfish-sync":"^6.0.261","@balena/jellyfish-queue":"^1.0.184","@balena/jellyfish-worker":"^7.0.0","@balena/jellyfish-environment":"^4.3.2","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.0","@balena/jellyfish-config":"^1.3.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.0_1624971292180_0.5854562136357961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.1-renovate-internal-patch-e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c":{"name":"@balena/jellyfish-test-harness","version":"5.0.1-renovate-internal-patch-e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.1-renovate-internal-patch-e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c86503143c64626edd6d5e3112566615d4bddbdd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.1-renovate-internal-patch-e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c.tgz","fileCount":24,"integrity":"sha512-d/v2ckLxwT9N04s8Uu2cofyOY6jJxdY7q4v/00mOIgaZ3uuj6WObXD+dOpTMBTuw5JBxHBnbK4ZrDFAkNTxYHA==","signatures":[{"sig":"MEUCIQD0ApHN3wOlype7mgdF+cvTIf0zkHh4IHRw4yLjGVdlpgIgJK6388Gs3QuxYMnZkjOxMsfpXxMgy14ZcKhOkoTCKFc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121651,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2xm3CRA9TVsSAnZWagAAydwP/R1cea90iVehOqfERy5t\nRVULq6FOC6XDd9QTMfpiPuCAzg+yOXKVWW2AQx8qycqk+xnXFHQwdaIpohBr\npPryNTjyS5iHysutADIETy7eZPVFWEUxf2oQv1J3EdVfrgghqSwLdODfkhJk\nn77jLbnbq5XWmw8aoF2MAAaR4U7PV/xQMrWcytERUuDJRFf/nbc6zK/1qwcD\nwpK2GR/w9D8bImLQJX1JE7+4zQ9drTa44gnhN/XmQJAQP7Aq6uFzqEXE8UQH\n3CNymL6uxMJUZ8Q3AlkYQw1jBz4YHa/la/JtH9DpHrmdOMfZ3P030DD9me7k\nYtJunBCDvUp3t6806wp4Vn2lP/MpntRCEzuTIbBBuybGGOj55aRgAx6ejGZW\nNMihuOZi4uQ6pf6dV8BI5Ww2EB+p+xjsLhuFuP2SMdfEctG4dH08okRZTPpe\nqrvwGx+swRXO6ECZ2Ca2O5XUD0HYJNkOJwoJF1DYB8rQ7JxVMJTNjv+QlTq7\nsep0L513kTKdJR49zT7iJiXbY4OImBEDVIAKsW5JIqZWHwWWHgC5YVeeJgFk\nvm+3k3MAv83jSCD2evqLs07ZvbZvazBt/S4J015w269ErP/wzTHPDhBqzgoU\nlvDyGKg/UeGst+rMrwHBz+b+O0mAIZRaN5RRicvI535R4GLmoN3Kd0Wtfgjq\nfpq2\r\n=Fc9b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.16","@balena/jellyfish-sync":"^6.0.263","@balena/jellyfish-queue":"^1.0.188","@balena/jellyfish-worker":"^7.0.0","@balena/jellyfish-environment":"^4.3.4","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.1-renovate-internal-patch-e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c_1624971702894_0.19310843060673433","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.1":{"name":"@balena/jellyfish-test-harness","version":"5.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b1e021219ea9e5d0c4ca07c9003b60d4e763c061","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.1.tgz","fileCount":24,"integrity":"sha512-qaNoTpknB1B9wLDuJIt9YE3wTmWCjvZDvG06zbeUUkKdaS3fA90cTWjmlLpNXKAkywESHc3LR+mMfjO7qeWpUg==","signatures":[{"sig":"MEUCIEiIv8HzKSFgj7G08WjC3bvL1UAeroLAtn+D9s/9CXaeAiEA+jdg2ehxrcFfPhVx11sRsyICfIkq585m52kWeryAHrg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121586,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2xrMCRA9TVsSAnZWagAAqnoP/RhJb6LrylHrOC/xNvLM\njH+qoLRNjsfONrNZgxZyNJ1malWB1PRv+6wTqtHgIRG8ERkYBLO1QBEOiz14\nB7rsnb7ophzV3sGgwAQl1XNAmB0B8LVvbl3hCWmxrvVPlkrnLdyr4Wsc7Tb5\nZ2ZDxuTO7GKDSFO0oBMdymOgtT5SIKSCOFd9cwmNIOjMa0FizLtWTa7e78M5\nhU1k+KHdnr7SgUlt6P+hqFy+NxW0xgkSyyhgD3gDyCLlccoDy6USHr3btAOs\nmaJmCnHL43I/jopNk+76WiJ1yODrGIzAWB4tYUj9j22TOk7qAlKICAOUU+cH\nVzuGUDrWzGf90hEtIwK9X1Jcj4oZJe3NLECZJl4n4sX7PFa8qps+oBs9YkvJ\nE8UGsFscQM5P+3iX2BARzj/Le7aEzCCiUuxLGTSXVP709pmeHwdifDAyzn4L\nmJC2y+1c093NrkvOO9/s4eIFUCk8XtJKIjXw64i+eAR+rPztR/AOj5mnfNf2\nnZjFTisR4tzspV2HmgqUYZmjMRstYLFLft9Whit4sxd4zXDoVH8ucCWS6zvA\nN4DgWHcQL6qkCs89xmIjArUU/YlACabmTrHkqUKCZCalkRXKa/yOIdAVacO6\n30La8IaDN0cLthqWdkjAX8AQDb7LBh2O5RwCVvrZ26laPh/W+sQQVxYAyRQ1\nivd1\r\n=jsMh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47b5ec8ef7e11c0515624462aa636366e8e6a5d6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.16","@balena/jellyfish-sync":"^6.0.263","@balena/jellyfish-queue":"^1.0.188","@balena/jellyfish-worker":"^7.0.0","@balena/jellyfish-environment":"^4.3.4","@balena/jellyfish-plugin-base":"^2.1.168"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.1_1624971980073_0.9797342241433737","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.2-renovate-internal-patch-064b8c6867ac51a41c8f00f7fce044ec4589ebe5":{"name":"@balena/jellyfish-test-harness","version":"5.0.2-renovate-internal-patch-064b8c6867ac51a41c8f00f7fce044ec4589ebe5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.2-renovate-internal-patch-064b8c6867ac51a41c8f00f7fce044ec4589ebe5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f44a1b18721296fb18f2aa514e66d1294511e0d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.2-renovate-internal-patch-064b8c6867ac51a41c8f00f7fce044ec4589ebe5.tgz","fileCount":24,"integrity":"sha512-DILSpzykPHM4VFhlE4PvTdwnYYRDdlWO7mdz/eGuGP6XGE9uvaipx2DXTMz+ezUWd+2lUFfVbIQ7m+AK2VzalA==","signatures":[{"sig":"MEUCIQCWVigFDQ8waocc6zjceyGPirsdS1xxUsbqsdvaFFtW4wIgLnpDjyowvd9gvFM8dEVNLB/JPmFwxJJP183Gl+M/1Nw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121724,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2yp6CRA9TVsSAnZWagAAeOUQAIXiSSiByWSFOqX28PJf\n2XJUJkwtGfOnkgSxvncdSx8wB0DkkCpgx9KTxeQ6e/4Yd7zbYWyBpktrWjR2\nMJxTWJY7GaFKrTCPDozusyAM3xmQ4gvUQOg7iQycDHdqfsu0RxAmMuOdXc3l\nAT7/EAyJ7W8SRrEh2hEL/tMSloYcezfvJALpMK8GvwaH5dILvxI3yiCNw/61\n37jzzr0zuHqyHxBOIaxfqduTsQc/rM7+nzd32FOmWpgTPD23NasXmATWIygs\neIb9hlc0PGybSUElKtTvpRhS6XvCIXud3vSAgNCQvsZNv+iCDdSit2PPxq9u\nwa4HHpQpiWvUoojK7KJRobd/3cOSFH2p2a1rYdOisHIT1/b11ujo4tbDAIvc\nQjOfzlPPy++iaSlSptsS2Zsu0kPvqy/DkUfMOdGynAtoqaZQ+CvLDGS2mNNp\ntv8gbRYvVRJnKy/m4sW7EWhZ5i/jURsk/+3OphSYOKYZvCRDZbLoabJAWPV5\nU7ErlKUe3T4hDtnKQoWQf/PZwVAMUiSOvWRgJE3hcK3b30bG8Y4ziKkCWI6D\nt+YExbeUvnHQedm9eHtH21RFl+h+5+tKVSLaaIwu3HwImW+t9je4rb6Zc/l/\ndoS4AqJuk3Nv5qcvlHP3aDAAIhhKXYuj6nYORBwXe8PndAEYaK/gP4rOwC7q\n6+pm\r\n=kic7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"064b8c6867ac51a41c8f00f7fce044ec4589ebe5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.16","@balena/jellyfish-sync":"^6.0.264","@balena/jellyfish-queue":"^1.0.189","@balena/jellyfish-worker":"^7.0.2","@balena/jellyfish-environment":"^4.3.4","@balena/jellyfish-plugin-base":"^2.1.171"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.2-renovate-internal-patch-064b8c6867ac51a41c8f00f7fce044ec4589ebe5_1624975993661_0.30351667254052495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.2":{"name":"@balena/jellyfish-test-harness","version":"5.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0cb0152025666fc11139da06d4a1ebbfee5d663e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.2.tgz","fileCount":24,"integrity":"sha512-iceE/Tz4D1gAu8UkyXGU9Oj79yhIfOKVUQd7j2E7vDL65ADzOTwzhUIkXqOL7o3eaYP6vXQcNOexPqc5eLnJow==","signatures":[{"sig":"MEQCIFidbipYzt+MMEpYZKJxo9SxPAQfW5KGQOBbvQmNdfR1AiBV9P1jPKbWgXR7kVjUqnaZbSWwONEtNqsO1ibiYwPWnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121659,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2yuACRA9TVsSAnZWagAA5D8P/3EjdL0+tE4C3dEyAFwP\nLP65QjGvq15xuqt+cemf99i8GvT4T+u/PT/A1pkrW+5BAMRVGLgyE5jVqNzS\nRUefqg95qz//MFX8FXD250YgFG0bIDcvmZr2gYrzp20cUIwlcRtUsvBeH65O\nU464XGvkH5xr3tzrq1T+mzyKhFwo4RRGr5aDETFLI7wX2fuztJpB2yKB1sMN\nD3P40rso1EYRNxZUnGrMxuk6ZTR6H0IDIvZAuJdarhL/VnXNOfCG4M8Uf1yk\nxApSr1wPoC+zUArsUB45Utx9LJ3S9UQsXksCBug13hvjgTjri1ceBDaeryC1\nKS5PKeuJyd/QAxSotNscXd+74CqkcC2WNVO6sk91fqnCOJzyLFk6x2cDFY8w\nyxq6bHRL5Bdchayd4vnl5yF9Gxm5zj6E/usDbjWOQmRajXgYMfdI0UB/dtTU\n/v/HYZ0XiEb63+hGEbKa/Mufal9cZLHZGLfSaZVwY3cSAMdX+WZS0OC6OT75\n/n/TKfNFc+xDQqLia7hA1Q1Gkc7ouYglD4fUWq3jBSXH2iKz+vO7/skLNz93\n5M5b8sdLddmcb3FaaaceOGKIDY0MSdNjlG4uCyIL4AUwqbzxfCgXGO2xg2Bu\n8EvBXA4jxNjiG29+0MUY80BWydOIW+1f6rXTkPt7206J8g7qMLFz+BV3MTus\nyFhL\r\n=UARB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0dffad752449021a979bffc666f94d27ad473d76","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.16","@balena/jellyfish-sync":"^6.0.264","@balena/jellyfish-queue":"^1.0.189","@balena/jellyfish-worker":"^7.0.2","@balena/jellyfish-environment":"^4.3.4","@balena/jellyfish-plugin-base":"^2.1.171"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.2_1624976255924_0.5820489975054994","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.3-remove-package-lock-f6d56ee8149c1938f6bd362ecdecc3091c625ad0":{"name":"@balena/jellyfish-test-harness","version":"5.0.3-remove-package-lock-f6d56ee8149c1938f6bd362ecdecc3091c625ad0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.3-remove-package-lock-f6d56ee8149c1938f6bd362ecdecc3091c625ad0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cebd11d3a919eb646568812a762acf39271a99aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.3-remove-package-lock-f6d56ee8149c1938f6bd362ecdecc3091c625ad0.tgz","fileCount":24,"integrity":"sha512-Gdt4HyRRvtYs2P00KLWOaQ+lSBRVXRpaFSKnpbrMQLrxVGRI6S4oW7xbel4X4Ne5QMrVvfypyj6rZmvxI24q2A==","signatures":[{"sig":"MEUCIQDzspt09JilFGsgdpYiBNnmx4JuYTJIMkmGZItJB/tIDAIgZIYDZL9BQVJ3GWz+/PGQV4u8zEVU/JPeN8UrA5oAHkU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121789,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg27DNCRA9TVsSAnZWagAAJ6YP/1JquwsrBE02BSXK2pva\nzhGDJfuGBQ21l7w2vb1TfgVUQGt5tQCZnMfF4dDH3T/AddLll5tU0bYfbJK0\naiYiV0tCXoK14zsYE0dqb6e0Dq/FFn/zqtLdNacKPDsTKzWkMFE9+BTSZf3Z\nNc30RJTxjSGpN+LPnurjZKgLk4OMy4v2gLl2RsMzsCg6WvI5L8/eQfsnmsr6\nWxvAggwrzu/5yM1IXc2XluGCVu/KlsQ6X/4C85an4DOgD+o4I5hFFaat2Lj+\nlLAgsLgOk1ffnLJWFpoI9HQQRaqnY0aoNq3IIe1AMDHWKyaS8Nt1jjmUah66\nNnDbsVsOPeXk1LN2Mbraq6HeKtapxkIBClVx1fbT7ukYLba38f6ljWWAEAIV\nl440MSK50dFQQ4Axp9X+0KPCvLR9i/mdWLG0BTMRaoRe+eO+SHX5MAbnIeUU\n5olxEf9G/IAKjhaTd0Qf2lgJFr85LzGCGbZCe2X15WUtrsfi0JUFVkPbND04\ntYVHR5LRI12Zv72XSeNMQhVSF7NsnFvqGOEoRz+WIR5bg+TWAkXlYhKbpu0A\nJfQoIARCpdLdMJOFv3i1VuwOXGc/QVvVwsnAv0+kEfcMIej+UGz1H/qBksXN\nijGc9IaqPuuhpo41Rmm4j4wlAnH9uM/G7kxaXKAdxcZoFpKoqrHxu1PBajVz\n4rSs\r\n=UCO6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f6d56ee8149c1938f6bd362ecdecc3091c625ad0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.16","@balena/jellyfish-sync":"^6.0.264","@balena/jellyfish-queue":"^1.0.189","@balena/jellyfish-worker":"^7.0.2","@balena/jellyfish-environment":"^4.3.4","@balena/jellyfish-plugin-base":"^2.1.171"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.3-remove-package-lock-f6d56ee8149c1938f6bd362ecdecc3091c625ad0_1625010380678_0.8046814266718025","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.3":{"name":"@balena/jellyfish-test-harness","version":"5.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15b27d30383bdee5fa7e458ead31142182be4e99","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.3.tgz","fileCount":24,"integrity":"sha512-h8I3e2KndW32kszw4744R6aOKswzImtZc2p0l15soTanREkygfrlo7KM8h7s/MzhCrWgqGeXVK9qlvQi7HxRzw==","signatures":[{"sig":"MEUCIQCesYXvQ5tr9Lh5Svnmwzm0f4foF/7RGgmZR94v37EfUgIgSQm011cFouVnU15h2Sx6GVZER1QhDdKh6RzsJnf+Yfo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121728,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg27IZCRA9TVsSAnZWagAAu0QQAJyzcaYbC1kAhbIAyTHc\n9KbhynPhyHCm8Wo6BWVosCW8e2zP1bFBIUzQEK9hcSEmjQ5OFMZSaEN/wKFr\n4PdofuKha9SgpnQMRt3S7gcK26Tm9CMEPKcE8kOTGdr/P+1k4nXnWEc3zYVi\nhKkkqPLGB91YHv/hX6f8XyzqlY6/8+6IwLrQ6A3mGhKWYuSRN8DYFNM0WaKG\nEhjuBgf5hccrU98eQRwuG2Dxw5e5xhhu0XVD6FpgGwTWKLFSIhdmMlmTfYHB\nEknBDcKVeCwzAUNqNuVfWyUC0XDbqz/ZF6KGEiRUxf1ctQKEd3WXHp9v+aU6\nvAjhTHHb+TlfMH44DebCOWUSSci9YEe1eSsHcNWTmWxXafbO1tJSG514OD0z\nU5ypZ1DMHqudtvZ75SljTMa2um7dOW8pBeyljaOj6lbaVR5nxnlaS0gsl334\ncfMqXILCNRT2wy0SwdJqmQM6o+HrBw4xwP/ur7E0TdvFLL2Y2VQv0akkEx9z\ndepalx5ssbTW5JPnsskzi+bJGOGURNBT4EfezT8VcMD3mr1eTtLT7KmrXOtM\nEPGZlTh61TAyTt+6siRdlYUYD/L+o/wrkD6meaH6JhppU1AOyiMcKL5Rcsba\nE7iEZG1PpVEQKqjcmI270DgZt7BnFUByD1GZZOrYXTLmUA14LxhFv+gu0rvZ\nW1Ty\r\n=uxOY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fe5e39fe3d8f6a4846b1e8906e48edf503350bf8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.16","@balena/jellyfish-sync":"^6.0.264","@balena/jellyfish-queue":"^1.0.189","@balena/jellyfish-worker":"^7.0.2","@balena/jellyfish-environment":"^4.3.4","@balena/jellyfish-plugin-base":"^2.1.171"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.3_1625010712630_0.738982949751205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.4-renovate-internal-patch-aeee01c69c77d775cd2d8aa981c9cb573767251d":{"name":"@balena/jellyfish-test-harness","version":"5.0.4-renovate-internal-patch-aeee01c69c77d775cd2d8aa981c9cb573767251d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.4-renovate-internal-patch-aeee01c69c77d775cd2d8aa981c9cb573767251d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ec60225969ba6f46002fb4623c58320a300ec22","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.4-renovate-internal-patch-aeee01c69c77d775cd2d8aa981c9cb573767251d.tgz","fileCount":24,"integrity":"sha512-nGvfnuqot2aRolQjQfW16Wn1TmhEvxIE0LAaNY1qB+wEMipqM4sxxXhwkBQtrPXsJGTi/Odf9MI/cDGlus2k4g==","signatures":[{"sig":"MEQCIByLYmagqHXO9lMAiz1bw9z+S7RdWTLkFm/VhnhArLjiAiBAMlJs53xltq9AUxM1kWPM87i+nDaOV5zTgH1rlDT+rA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121866,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg28WvCRA9TVsSAnZWagAA8yAP/j9CYIIQsrbIPYkD8pZZ\nIcAcc8ZBPgE+HGlmbq0uGas0uLrPK6yJujg6t/OKABVP3jJpGC5fHDi0MDn7\n3fSvZqz0hXNUYeS1Abx18/RQ3EQZU55TcLlpPZdAEwSzp3xZeHy6YrN7xs7a\nZuUErozniFcYNC8UIThHRR5YVzwvwmToeaWDvckaL39g103zcb97Vl471X1f\n8A7ssKloXim0DLtEDMvacy8kRa2eTOK1QABBLAPhXYlfREM8J2ePxM3Vj1vm\nbZs81mBnLURfIUSnH4qW/1tOjr6fwaFWuYATEsc1A44/IMG9cOV+G7+zxYNn\nqmHjuEFu9+7JONWzlMiehSRwvjVw27N00IGWuE1ED0iDaDo8JdJlo0IBnOpv\nlCWvLRoEutfxSH/Xpz/Ik8ptcH8M417lLC3hSoWSo39JvFlioUnuvnsLN9p2\nu19TfSvylFpTv/LmMwNFsBU1L6OI2qmYwdiC+N7P+iQurd+M4sxxYpp8Nct1\nfwLiSb+nXceoHvpbOWagxIMDhX5vRDM9p9Im0yTRBY9ggnV/F+jZefcm22pk\n2tIW/aI/vSXn6GcMth6svxzHaF4VnEKEUXnuV0KFBfObux8zYh+CvyIHfdjT\n7ioobwrEbBDBkN9okrbUs9Ti+DmqZVs71c0BGyD3rSUaOjaqVuRksgOI8z11\nPHug\r\n=KAdA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aeee01c69c77d775cd2d8aa981c9cb573767251d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.17","@balena/jellyfish-sync":"^6.0.265","@balena/jellyfish-queue":"^1.0.190","@balena/jellyfish-worker":"^7.0.4","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.171"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.4-renovate-internal-patch-aeee01c69c77d775cd2d8aa981c9cb573767251d_1625015727384_0.03299692718241842","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.4":{"name":"@balena/jellyfish-test-harness","version":"5.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc511f3b1db7fa24d16dda688cf84b86fd83a13b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.4.tgz","fileCount":24,"integrity":"sha512-2qsE/1wJDtbQDL8tXYv3dvlD0q0BtM6Cy6aKipmytL/OcWsDG3l8OIn/MI04eYt7bBwAoqmnGmvx082hHWF04w==","signatures":[{"sig":"MEUCIQClRrk6SMGRfKPuxRr6Wg+D4BO2LyTV1fMt0I4Jrz0yKQIgbqxSsWaprJI2IR2YFK8iuik/cAxn+n0erPOt7k2aSYs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121801,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg28bcCRA9TVsSAnZWagAA+SgP/0cTgcCfrITDPp+Hreau\n3dXRxL9j5qhgg6tR3Tex2vB22MJZzriFDkN8XZ1k+EMl3mWHBRxsSwE9Wzc5\nWjgT/K/14wd1QqX6En6+BCpY7hKwgJg7TcyqJtynMpWchsg81XVqzkPQ7dAy\nIgQhHiiJ76j+PxZ2j2ekCQanpecwQMtrHEQ8yw/+G5DQY3O7CIe4iRRzBFcx\nVCxdCeugPswVASehbszWTBIySWdwvsNn+oBFy5+zQ2et5rcGPR1fiw1HQoT2\nNwJly3VIjcPaNc2hoeNJHyWj56KwbUy7Wgfzvu6PaDnjNKVrt5CVTG43cj1A\nAMV9fKXKjN5Hkj4iI99HduwatPpNjtvqZC+EVoymHDOQG25bHdM6VfmDQHn7\niucEzUn7mfOovJmlz2H88F1DQklHqKqVb14I5sEiUBZHiecX+ZPsgtPCmEPi\nUnDE9mc/29LPArb+WJEi7y/Ju3yVHIJn9GfiiBHaitlufgD2Au7wHH+tTIvb\nTF1Ook1YgMSg0DoPp01Q6q0huulREKTM5QhfPOmzzrvOr2siCD3ztxjXs2z7\n1P5fLGSxrP9oUgXT8PXaJPDsO8QDI1/whfIrJ2wdfvpF57VQccniDH7638Oe\nvaRx3YLyW9z6P+AaasVo7sFVJs5esVvHBP7LaGRuaF1lp/Z6eHeT4d2n3uNE\nvfEP\r\n=AEdt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"625680e416b2b8f0005984f2ed21bfca6ff0c822","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.17","@balena/jellyfish-sync":"^6.0.265","@balena/jellyfish-queue":"^1.0.190","@balena/jellyfish-worker":"^7.0.4","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.171"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.4_1625016028047_0.0865469051604233","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.5-renovate-internal-patch-e1b7ebb91624f4e820132d9f21a91cd21f4e0029":{"name":"@balena/jellyfish-test-harness","version":"5.0.5-renovate-internal-patch-e1b7ebb91624f4e820132d9f21a91cd21f4e0029","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.5-renovate-internal-patch-e1b7ebb91624f4e820132d9f21a91cd21f4e0029","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4926ff0c22dc076865cfc8cbe1a12427651708c1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.5-renovate-internal-patch-e1b7ebb91624f4e820132d9f21a91cd21f4e0029.tgz","fileCount":24,"integrity":"sha512-Wbx4v9Mpa7hfd4qCcdwEfuh35Z/xoD1OUSJu5MoCJP9LSXHNL4hb0MuMpyRfhPOtg9l5X9nJotfXk4jYbp2crg==","signatures":[{"sig":"MEQCIH7OMV5fHJwxzKa80YvmQ3W49MggXtFeOCFDDppsYuqtAiBZbUcbEsghSaROkYLqHY005GHKBE9usQMvVtJhxg8r8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121939,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2+AFCRA9TVsSAnZWagAAzqYP/0+neMyKwdV4K7/gg5Ch\nEaZjxOE0ML3Qo0MPfKxJwW0Ljy68kdEWrFJZyONm7BgsdcBGcF61QfxBJFkc\nRXyLGdcqPSmpHDEM1+9kUHT2GM4/2ebzIO8GDyEcwRPYDdD7GZV1DpgWs2+j\nW4w179JmTKcKFLLtC3l87BbKqMUiEiv+v9p7QrofYzGvjcqGVXpwvekqytgV\nKu+IUqIbdtIOiTMo95KBMX5OZBjuS2hpZ5OmlGQIwXkuNw5luVBgfv2nQb/d\nLwR9ElXc4wAH+vV716eeIIS3dOLUZrXWhMjeJFfsym4XYE6rxw8hkFTrX1KS\nOZPWTvX43alfYIF9jnswYSUOZCVhi7BAXRp0BAOVpf0Q1z6UPixMjSm3q1FJ\nKhtgaMXvwdmYei9SCK7PhW6HR31pTyhWuZBN+M/UCPvNGMvl8cMOn38PcZR6\nFbLg+vQoDkrtHRoD6ByzU9qTocuhA8brsW9SdG6rpQ3V2yEWoKQ9VwfC42X/\nHsjXCqXEzuZm1MVo3rIEOBxpmXdsYdhTDNey+SmG+P4w+OBHot4LHfxZRNo8\nZ+4e4KeHuBPReFBk4JSxEhB6FdoWW5dD/3+v99vfiJUsVfe/mLt1/O84yQa9\nWL21L8lg0u79wIhwYbjLxe77L/OIC2BGNLNX35ug4Sr51jZAsarQtpH+J7mc\nz5n1\r\n=uWjJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e1b7ebb91624f4e820132d9f21a91cd21f4e0029","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.19","@balena/jellyfish-sync":"^6.0.266","@balena/jellyfish-queue":"^1.0.192","@balena/jellyfish-worker":"^7.0.4","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.173"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.5-renovate-internal-patch-e1b7ebb91624f4e820132d9f21a91cd21f4e0029_1625022468835_0.9447350835336836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.5":{"name":"@balena/jellyfish-test-harness","version":"5.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb2626a95f090bd2d8011e7a8e0ebbd98085d21c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.5.tgz","fileCount":24,"integrity":"sha512-8taB/1XRTPrUYTONtro3E04KdNmnO1wfTOcViy/0DKFIWbzkZoJ3bbMrVDg7qBPh2SPl/Y/1BVvmGCExJHponA==","signatures":[{"sig":"MEYCIQDsL9oylkVtxM9xcwihCaUsRqrKGNseQahIWmVstU74vwIhAP2+DIer1VbINaM0m8MuRZhpheRCwCVc2tb6AxozCxSc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121874,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2+DqCRA9TVsSAnZWagAAkeYP/AkmJHuE4nrY7XKv3oaT\nCVD44NzZJH8jnAv4WJYCSHN2UhslCkbmN/2+vkthdRJIDZmk/Tk3bjGzC/ky\n6vKiwO4+P+KOen7HCtft56b82BDtyEV6WfDN7twXdpshEIz7mkiKZ1/FuNmU\nsFGXtE+VUVMCOd0uFMMKNa5IMQScC16qvWK6ExXMo9eSFJDvEdlL8uneDNgt\nDr1W305rO8TUgXw11QWyhnhNjsQO1iNLsuxznJeG3CJEzGhz2v3mZ3Y7u3r5\n3WiP7TBaZ1p/zo2a5TVtji8y2NLkI3ZRA22GwiCKUMNc0OFXlDF/dGY9lKdG\nn72oB6KLMfmzqdZ8zfHAs/ryvkXBu1o/kAflno/UBICYP3PBkaDDrH317Exk\ncjKzIe6gUR2tGxx5zTqyI1d1zpcR53/DGbEtHstqD+Sz8G/jOqrr+wzpXbDV\nebsJGJLkeBvwwq33eEKSMh1eQezaK1LW5sfxzRF1USVpxhPyPHzM2tIRk1R3\nNfpzvC2DxsCIdsQ1rtro+/1YzfR+BGQcDQr9cwM1w8ccjzFxA1exzMyf0qtN\nMoPjK/EsQAU/ptMBe4lqXPsvc/R15iCSh+7Yq5EYpvoALshS2pCqbWen+iKE\nnVdTsnnGHGB8punU3bbdC9zSzh1pofkgHASDG0ulZV/iokrSlCTt9k1mcqm7\nKP6Q\r\n=MOoL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"229c7244f164d71fed27d7cdc30754a5c88a403d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.19","@balena/jellyfish-sync":"^6.0.266","@balena/jellyfish-queue":"^1.0.192","@balena/jellyfish-worker":"^7.0.4","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.173"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.5_1625022697589_0.029040131586148377","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.6-renovate-internal-patch-f9f62d25554a92d6aeb65756bee1db6f2b32b8af":{"name":"@balena/jellyfish-test-harness","version":"5.0.6-renovate-internal-patch-f9f62d25554a92d6aeb65756bee1db6f2b32b8af","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.6-renovate-internal-patch-f9f62d25554a92d6aeb65756bee1db6f2b32b8af","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65c874b90febd68c38e33c623fcec4d339250c25","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.6-renovate-internal-patch-f9f62d25554a92d6aeb65756bee1db6f2b32b8af.tgz","fileCount":24,"integrity":"sha512-qR3td25WyTpbvmntU9Jez5ngga3IUlz+d9u0oEF284rnimAS2nxuugi/Jo654Ah51J20/AqfAL9j0YYf0oPiYg==","signatures":[{"sig":"MEQCIFSKyqJ8VaRKOAQi9kFq37eKSGxc3oRTKjgACSuSLIraAiBbx9q5QzV+ZMJgDwX5oguEhGSFXbFZ78TaEk8zFyMp/A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122012,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2/uRCRA9TVsSAnZWagAAdZMP/1aISHhu/sLT6vcud3Ix\nivY7Qufdl73YSRAWYIW2Rw8t45htiMxIzR2NE7iIo8nbL/lRWiU5ajrmN0v8\n1tVcN87L9/RZXI/UujBmogaxLO/bPLaXAVo+yr24ufd6NxJNZM+Tu2R6fH2V\nTohiMsk44LUle1+l+lsxg8hYWOlkXluRthwh66LTCvW9CE8+yqMF1Ky/okgX\nUK/sDruPdukT+WzD+zEAS6vrjaeJVkn7jWw7cxELcj1Lwf8nRrsHe1yd2bLD\nHweRf3qgi3weSh4ZOlAeSMnjNqCfkTfLcVkmGzArQ23YADd4k/xzLLkVzAMZ\n5FrcmVBRC+Xa+5pBsqG9+24m+VXVwcf0VkfSGx+d1PgYt5LL1REG9nUgpCfD\nzUy5CNFTMv62LrjloiHPV62uNXCb73M8rdh+ioLCK90W15f/fBAdevYl3uIg\nYBKWkIhsTitVnwCU1fBpfJUuSuVXl1inkaBK4IKQt51Tz1h0sjPe13MNzW9w\n908M8Ifj1CbWfDJvQm3zypfbET4OVUzey+zRJy8YWXRkAEI4EGlOg89dZzWT\nbTNYn9Qbv2A0wzx+/NAm3vP2mJJXe2OErm/mPzVc5VrvChwJH0J0ZT84lkqV\njSsgJLMOrvEUlge3QQywEblgR5bwtg/hvvB56i6XP0tbJDxMQTVMtZJj/WOW\nuAc+\r\n=D6DV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f9f62d25554a92d6aeb65756bee1db6f2b32b8af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.19","@balena/jellyfish-sync":"^6.0.266","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.5","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.6-renovate-internal-patch-f9f62d25554a92d6aeb65756bee1db6f2b32b8af_1625029521267_0.6778475294634985","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.6":{"name":"@balena/jellyfish-test-harness","version":"5.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2c2ea801e80db1688b0d946e06d9ba9836a413a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.6.tgz","fileCount":24,"integrity":"sha512-7tVCvM2eHv5IIJAhKov0RoNT/LVJSGd/PJrxNvderoE+RY8cHgjnQUyji/n1O+kMuDONXshjLyWAoYkBuAjZyA==","signatures":[{"sig":"MEYCIQDfElebastvrMzkZ2NANknlgK5jPuz4chAmcW4+DNdTrgIhAK3NBpIazN/JA/3A7Y3IyrxAyqYE/69EuABwZ2k7zBTz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":121947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2/xJCRA9TVsSAnZWagAA/1EP/RHdAtIgOcdTy2MmGpiL\nvtpc04tiEWacz0TnLs8J6lxch0zlLmOsxnye2MghFTW4+uMqzYJA93oOB/TL\nPUoIGtxlUo998QYPsnS+bEcMjzQKGYxzstYhIrZ1MvhJUcyd2qR+jl+axWVt\nOQaww2QNzkJcrrV7cQI6sXlSQf2Fz7gAagxyjPlAHpm/RGjwx5370U1CqJZm\nIkwdYQ0xkTJA5UgJmHCFzCH/wSsKTbivutys8fJBmk5kyT7kjQVJ12UfauA2\nXwY4/2d34xEbaM8Yamlls8ayMhJhUxv4PXTG51Fa/n5c7s8tF0VmacAtICqm\napbSwz+bJQIiawm0FrcsPXoCI3KgCe3aVW8xfb/PJ4/+gLsTPVzEQd/U68BL\nqv6wmtoqBbhh5RuxUn/3i+5OO29WFxjp9Y7v5muiR19prlAaP4kUASQzbKtk\ntHJNp6zpiliPtgTLEzXX+es3vRTiBufK2FiThMS/s5C/8X1sdgDGlvIS0Q8B\nTUTMCOg2T0HyYljm3aimWdaTZOAtWGYxIXqb5Y/w2tnf/eUXGxGxeHyXv8Ys\nDR+gEJv5fRCS1jOl5CfWOkZ8kVwXZydK2FVsPuy2tlZDoH013N79SriiXd2j\nHfeOsMpVYujaxkfbg4xgmfUHInTMIsi3L9nIgvThutYPVruoWBmCywCD6U63\n8j/1\r\n=VLGR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c9fd4d86dd7b30afb0b3fc32c0504692fea0351","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.19","@balena/jellyfish-sync":"^6.0.266","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.5","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.6_1625029704843_0.8994561176364606","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.7-renovate-internal-patch-a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb":{"name":"@balena/jellyfish-test-harness","version":"5.0.7-renovate-internal-patch-a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.7-renovate-internal-patch-a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f4e257a41eeda1c84fa2a46ba15822547039457","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.7-renovate-internal-patch-a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb.tgz","fileCount":24,"integrity":"sha512-rDNMbT1AilY1bIdyWVlhqaD/conDQj1/3MHofRnERb6RLEJtlUTM2DbJiXXbz6cjGlEISUOarsOGvqn79dwK7g==","signatures":[{"sig":"MEYCIQDQgf9XwWNPCD3oC72Q6tRBpbVuHvkNJ50GH8tEKFRgJAIhAP6KGh+9SCJ2ZL3yOZ9W5GzmtpiNXDs6pGTngW2jHMFS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122085,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3BPXCRA9TVsSAnZWagAAzXQQAJzOlTeTyjmA80O7JKIv\nTeowMtO06RO/klgcVugUnZhtvJqh/lTM8VKmcg/M7p0G2xY0mGTn3avuSiQ9\n+b+3mE+ivt6PSg4JlFK1hyDq/xn50Is26SGRoJI0omZENQ9vxtHDlXIu34Dj\nQiZfxISz66IeEpdmXIoMnP/kAS97wTmq975LzLfMqutjTTMzd0j0sfBKsvdH\nvRGbMqcJ2f3aNZl9SK3n2dXScFEQQEu4/lAEpNZJKrXkrtWxk88opG96rqhZ\nW9lv+hi/unuji9/sPmdG1bBj01Nqh9d+R0e0aLIVyQ98UNDwGVjpnDTT8wmn\n73ymsQdJgax4WE8z1s+bN6ZaPBXuYMlbv0QhyeLNbuTJ3JCUq71V7ZVI/4Mw\nX5kNPHwRTSsPWgtLQcNvd4E+0RyodJkH2XS1Sf2rlDxZEWDPPOToai5dVGtn\ndKdfPJ3O03kIKmaERmI2QEpiGBONvhnHYiRbDWikBp80WYHTwgwFM8nS26nQ\nfbal2DIjdncpy5aaJFOUTMerEBP9y3s7CAyNUvc0HOoRIDdXyZRIpFCvjRdr\nMzhiuxK3TmxMgBoCoDnFn7XCFD+F9aDElCu58JYRtvVDorhSS3OtPGNIf3s4\nheZBONIr1mjlai8rMEOneCO+uXUzLBFRhanuD1cMJ/Tq2w09WLHaQDbQ2Jjy\nbntT\r\n=llco\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.20","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.6","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.7-renovate-internal-patch-a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb_1625035735087_0.35048768529429153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.7":{"name":"@balena/jellyfish-test-harness","version":"5.0.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf4037b6eda84a9027377a99db6b9fffe992741f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.7.tgz","fileCount":24,"integrity":"sha512-aec2Mu7VBNF6wLySHEKiD6eLk7HpHR+vnxZdRcFHeyFsQKlMje7EczCeiDsb0VpfsqG/iJxwslZSofo7sFOB1A==","signatures":[{"sig":"MEUCIHwcgsI9dlFnIysHcgGuRRf23Hv9krQaaiQstikwsGIVAiEAqJXYUJdA/Ilfbfj6QgAd+vwTPSDT09uXaP+j+DhYtAk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122020,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3BSwCRA9TVsSAnZWagAAaz8P+QArShnCiHvh8Dw38Mem\nPS25dLiG6IDxarP62Y4wJV/sButPedIM30igXPLpRe1mI7g4C42igvHspEYW\nNw3FifMH1rC7KMfdfz5+c3IKuy6qY3p1mvBjT2Xf1hkjECunYzHeohdNxOoh\nLqsMOwO2+uSlfAWygiD03VN72fVxbeHcIz5wDcZNSdONsNtjVAnOgvS6SE2b\nzVNZFDBTxMEkk4mgozGadpiQtazfcSnyZBYTC8NwdV+9E+iUrbvQfG3kdWDG\n0wy22ieCVsfMgA80U8+VdMptVl6eDYyxtblNU6rvGbC5CMXk5H8Xnrthi43T\nLIGEdhafYW2qCPP+ZFyBj5Xr+YqdlqhqGh7zJSWTIan+7qyNnIQK9Fhmzvso\nNRav742bBbSKQkmu6t6TEVNFmDgY97tvbgq8G9P2p7HGAXhLLx2j9jAyLnNK\nB61S7WB0Ovqh5LQMpit+rim+T0uuWVICUOMPLdu8fwCF3DrIAXh+dC4XKmFn\ndJKvZ/Zcylpno7zKdv6tQaRJr1XgBiN0xEAtDvTR0q139HFTIunaNNCz4uT3\nOdb+KdLdOJOiLtTZ3P1PCxuOJcyOHPqpOsGuL26usmo7eWe/RbK6k0Y0kgpk\nWokWC8Ny7mHvRnko8XF0CXId694CF7mVlIl0IzsgJInsR+hFP1GLWgH6yNHG\nveuW\r\n=j8g6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06f071b3f0f7ed4489619f48bfeb89612a8b9674","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.20","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.6","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.7_1625035952089_0.5313628463736915","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.8-renovate-internal-patch-afd1bed9c04bb7d6169583f0c2c48822c1792235":{"name":"@balena/jellyfish-test-harness","version":"5.0.8-renovate-internal-patch-afd1bed9c04bb7d6169583f0c2c48822c1792235","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.8-renovate-internal-patch-afd1bed9c04bb7d6169583f0c2c48822c1792235","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7849529a334192188a367024108a8355a57a60c2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.8-renovate-internal-patch-afd1bed9c04bb7d6169583f0c2c48822c1792235.tgz","fileCount":24,"integrity":"sha512-w38uZv69xYa4ZYR4pSEPcGDbCek+yFaIPkoqZCwNr3NCMIErIda3qb1rRiqTV0YqW+Iu2k6MDHH7bYJATGNM5Q==","signatures":[{"sig":"MEYCIQCjFcPxMcIPK8zJVjmDH7/Fn7+VIKbwT1WDf9irxSKeeAIhAKSgdIRJWHeKUMviQMRC7ApXSaiG+mJWilLRr6CXObm5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122188,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3JnoCRA9TVsSAnZWagAAHuUP/iKe6nSeKSriiUSSgRbm\nqVCALHSKndW0IIPXGH0FtmFgyHWozFR+YxpckusmC3QYsKvPIUpoAjksymgv\nwmuh2DNUibhxPdGN0+jjHpDnug3W1Msnt1oVmS1EcDon/e4u2gnU2XUS7iht\n0p0XsjPVUJn7oNtQa690K4kXmhrbSeru7EEoqlUus1rDdmE+Z3Y/EkAdr2gq\ndkLLkgXPSZsS1h+P4tIPaoB+oUpaBqzD5FTtUxUr3XpAuxRHNLMGHHpYAEXT\n961kPR02/arC+JsC1bF5Soz1Lep908Chqb43aneKoC2tULRfE0PtkngeewQR\nlcfwYwYxDrtUvffrA/caImY6pPqS3v/a/QCPigTATsktLXcitWTw9wkrIUlU\n/n6Rl5Mg8FUUrRiiViArto4yNI5+COJ9U5X40rrLAn5rRnf6nigfjTHRdotc\n5xxYCwFqpZx6OnuoNQeEwUCiwXJAyhofPYfK9+dIyBPi4ngaga1kRazE0uFx\nGh5MwnqlR6/lIrs19VWLtCwsKZ3ShKXXcc6zsLPPBZguUGHWlC9c9y/bs+hl\nKRocwWqLWJ6e3q7Hl7AI811c4L1Er4AGzyyoXbEDR9EpJhFnsU1OXpcBWiaL\ndiBSui6dV5z0fRYoaRzw3bxtUJoBJI54h/u8MkhmQyWpa2tBPJ/8Z2W5nVTv\n5zGx\r\n=OZEm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"afd1bed9c04bb7d6169583f0c2c48822c1792235","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.6","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.8-renovate-internal-patch-afd1bed9c04bb7d6169583f0c2c48822c1792235_1625070055942_0.6841356838204549","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.8":{"name":"@balena/jellyfish-test-harness","version":"5.0.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"944697eb6d00cbb81c9ce70be254b7b21ccc7bcc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.8.tgz","fileCount":24,"integrity":"sha512-WUzkeZkgkQjMBFcfCeyVZbkVF9As22JdMXheII79ewLPInCar/trMGBuxGXd8Ls4QOD2gsrTGIxlWJTUDq4cSA==","signatures":[{"sig":"MEUCIHxlNixCwhv9HWSTlR2Sa4CkK3sk7vpm0XWfRCgwQ/9TAiEAibo4O7TNc0ivCMz7qkEP9rgcBJ5khEHIH28Hi3fsmvM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122123,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3JsKCRA9TVsSAnZWagAAsigP/0T5ALoslJqp+6zyzEj6\nmlcsRQZszNm+UHlks6OQrpX07EfGSF5SgAHPH1ensKEd3qVd9A0MUmvMiEOE\noxt8kQZyw7Rja02PjoQPMQcZbVLsxVxY1NBqgE8nJsKEnCFyj/34I9HpQwuF\nzC7TeKC5gg1kc/NE5c3Qii0mjItJG9g+GyWxt7z8nbtTTbSM4dB7SWZdqueH\nHesCW8AFhKlGvZ0mW8sBIO2io0lgdmLyBxJq9Pc5bbTr3EHS2c+P9V7Ywgqx\nOBfrw+JQv7FEh6V6LfzBkMstGCXwoAjdxgIH+LuWQs2407RMcr3ZMB0a3hXu\ni7Q5eh3Zrp5uMJWoKvCoVGNHrnzWGYQUHgx8GSz0dvhGC5fuAMTdxooWe+zI\ndiw+w8iLJrDfHcuZPFL6dZ+Pcea136npNhjEE95huz5XlE2Sn+eTV6KoUWAu\noeZFvKhAfy+C4GIkQxmuIXkyX6wo2zjY9NHntgyRlu/QcJRHkv1RwHUYLI8I\n5G18Vg1agisVRbwucghcUSFR1ZXDr1+lpjQBL4nJ19eYANpkx4YEPt2Ms/V/\nIwCFTKVNw0e4/BNh9i9q9W1B+64A9c+H7AvghC7eR/YYSguBrPm5N8HMpjiS\nLdS7euaoTpwnWopYHFo8brt6wyBqgmTfm/jud+5bLWbTubUAI/hFKqLGhJ7p\nGWlV\r\n=+17y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"97e7d1b6897c288d29a718f25ab2eaf0f56b92b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.6","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.8_1625070345895_0.6725576178848096","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.9-renovate-internal-patch-13791efdf3f5673f3aab6a28ca543b1f000e1806":{"name":"@balena/jellyfish-test-harness","version":"5.0.9-renovate-internal-patch-13791efdf3f5673f3aab6a28ca543b1f000e1806","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.9-renovate-internal-patch-13791efdf3f5673f3aab6a28ca543b1f000e1806","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da5785db8fb8165cc843122b33403cf09c008a60","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.9-renovate-internal-patch-13791efdf3f5673f3aab6a28ca543b1f000e1806.tgz","fileCount":24,"integrity":"sha512-Z66U57e2heWGRsE+ICV9hd3vEODz+/g7xPc4CF8PwS7QzE0QFquwG2C/lfq2Lnh4unUp3VAi0FNvtzQ+HhKICQ==","signatures":[{"sig":"MEUCIQCxkP8c+JLtdKPXoKso01tjsZqmGzD6iKaLiYAydLxJPAIgR11ew25Veaq9E/79gF5AGSIdiTVbzrQPwJ907DWZrM8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122292,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3R2XCRA9TVsSAnZWagAAP5kQAJ7x/rJx+WhM1T2e9Ozn\nDs/wh5A+5Zn5Sfknyy6bbeThR3qv/aqN7rjm7hhq2uC6lmsqUz/D80qCkuAx\n+z/omAzF09yUx4QNpiIME0gfHM9cRNRkqOeVptMd4tEoTfKbvfQahd+JjGFZ\nleeoTiqyNxwjUIRCGsWnB6WWbdxMnGjuVOUwHFUII+cxO0hNyGUcq31NAsQT\n71iXeyTsxj0MMCSJbxl0Wpj6MQtu7bhKwbiuhGRPpJoNUPgGhc0gNh6Sd4F+\nsTNe7vTIHXuWJjchIl7EA5RK8ar/mHBMc9VXqwWCgx9jnbLdvio4dEpvWyCX\nLhf15vapRTzHBPatn2ORXfeTAC29k1Ji7Cwre6GLNK/W+RQAFRCCEL80GukV\n8pKQFz5AN0qtotWPcWABGmFxRbUTHMOmM5JQxjcqviqvKwJva4AChatvaixl\nbxaSXx6DhN1KyLND9udmdDejnMw2tGepdJJzjAxAD+OwB97gNqF49tXTx7I/\ng0QVk/LLb3Ue+uQGx6wS1+DWGrQ3Own16zt8I2wi1nQdGq11VUYdfSCLXoya\nLZ3bn77EqWib844ixnVxJKo++acZ6iokSjJwTBrcCw9B2AAW2lWU3DYMImET\nINltKZTk9t3bdYrqkWO4l+SA+TYS7mkmoLVN58oOAJSEmlJ18sBpR9vvgmKv\ny0ES\r\n=wqfD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"13791efdf3f5673f3aab6a28ca543b1f000e1806","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.9-renovate-internal-patch-13791efdf3f5673f3aab6a28ca543b1f000e1806_1625103767046_0.6424958573866619","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.9":{"name":"@balena/jellyfish-test-harness","version":"5.0.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61e4e337d8769e29a127825c61650e05cb503556","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.9.tgz","fileCount":24,"integrity":"sha512-91HfX1HTG6hhMjcOqaGwj7m8S02k1IRSFmhk+fY0sMr/jTjlHCuMcY4c7mgJbqmdEDTJZ2sOkfgxOjzShm77eA==","signatures":[{"sig":"MEUCIQDyWXH9j8ERIp5sFx80+2QHZHd45iLvcDUG67kBHGF1/gIgcFctqEMOdkI76k2FyP6ErTdM2fzKIvTgcg0/Kx4xrCU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3R5jCRA9TVsSAnZWagAAapoP/i+Col/N/L7EEXosJhZE\n0V1WTR6eXdL+PqjSvvh40SA1mBCNCAfp0fBlMh69uxrXeC+eeiZ4l/ZAri8G\ncZ0txO1ZTZzRsGCOe/sDkROSOCWzIk14qookQ6DnzcJuo63sJ28JC/3o6QDm\nq+B3J79Gw0+DtsQHfsJwTipmuujzyrdXQH8REmp0W4hdyNShE9Qa9tbjALDn\nhmBKLwqKspIioc8SLIPbW9DBRrYhsiA4pOm63JvUpntbCImRPhraRSRjXPSl\n6XFASLeHsQzu/NVa5ua4sp1hH5hXaUJlK/I0eUL4JFQn/ApxzMXQDdt6gFQZ\nI2Y+XiWpnzhObAl6MxY9dSSOLrxKvSiWqog0ntIKkH0thlRVQYa+G7jSnGv1\nc60LS7b7jZfUnEuEI8I8C+UTaA2qrjTn5yENkdBGiBmmP6Nnuq7e8bvLSmrd\nk1sMeyEuWSYTXw/Q7QJiqVjf4w+z4QHEG5bkW82WBReGfymbnpBg73WV8ocL\noGAfxu5wZ1TBB16WPoqlJEdcJ3yCiHSFKhrQZ3HM3oHv6zSGaWqMysuQcVjR\nwJ2WW5sj3FTMCTu4A6FuZElbGytdsUkKPlLytue09TJ+ZiC5cmmT7Q5m92Se\nHdGnjZSoRwvlyJmqG5g6hBaiJPZUa9pMrui9iFFp3dgPh0oH7GASD/oCsmES\nCqKQ\r\n=53f8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c0383b73462f7de2dd8312ceece661a01e0f6c3f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.9_1625103970988_0.8078360246935967","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.10-add-testcase-log-4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7":{"name":"@balena/jellyfish-test-harness","version":"5.0.10-add-testcase-log-4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.10-add-testcase-log-4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"637b8fe76eed9d06e42996fe349d96c5710111bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.10-add-testcase-log-4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7.tgz","fileCount":24,"integrity":"sha512-O1vSDcGvp5rw78JXlwt+IijQ1SjHpfbYZWDoxgxUjEFsNcV2TBXvYbRF82kDnzzg/kPbSuKG17sWAbVRjH3Ibg==","signatures":[{"sig":"MEQCIHMx1ipjtAVC05CjwH6YJiJAF+Fp6jfozze2hP2ydfZeAiAWtoTuViTAvnqNitUVfoSToU8EBvzNMFV9ph43oLLToQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3VbpCRA9TVsSAnZWagAAcUUP/RBKkddDIRlneKvQFAGN\n/EkzDBkgmwEl1L2IT1bKUYo9Q+lzyQx9BRxPqp+wT2NKt6oWvI+w1s0cVsqj\nGAhsinhYQQLYpnRAUZOknBPp6u/QOpj7fi+MZXZixciwVDn1AVE41aG3zroH\nKBdmQW0H9OI11tSkI/6pqxr8cx45Mi2DlB1W/gSp0k7ZXRbgzgLUt9rX2eu2\nJmI2IK8YwiwG3sryOF6k0+VtbiPXElD4vb+ePbDn3xdoeqWhHtUUCVs27tCk\n9olQsa/74ZbTEoviBaP4cMiWz98TD8ichzFr68MEcr4cDhNiGZ4fdkHXG6Bx\nFZY4M0voWfR4u+3kWRz8twNpiybwkmD5JQ/Ghr956m9ED1RNqo0oZEKOUIUt\nCXAEKhOwr+THnsD4PS3wi+W3XqIHv6hHXDzwCP8FL3DMobMaTbLWlUVvSWDR\nrm77oPJeSC2ardylOI9gECnYu1PTb2+0u9RCTWXJo/P8gjaAeEV/Y7AyGeOc\nxIV2v3BqP6uO+O3Jy4HP5IC16kG1kCe/CsCuRQJybFBwhrjjOamCWAXCQEaH\nmTQk8k1gNMvusBXojyxC4iyLEXNnPgPcM8z3b18iBZ+WjxbvhiEBdTblmaSr\n371LoY3cnN+RRGGVIhzvmUw3luM4d7eWausWkNDeSxGMe58wYWfZ0UE3s7L+\nUGdl\r\n=NO+6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.10-add-testcase-log-4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7_1625118440683_0.1503072177349225","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.10-add-testcase-log-f7dfa4371287ad6d588f6ecee261634c6dd7061c":{"name":"@balena/jellyfish-test-harness","version":"5.0.10-add-testcase-log-f7dfa4371287ad6d588f6ecee261634c6dd7061c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.10-add-testcase-log-f7dfa4371287ad6d588f6ecee261634c6dd7061c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8ec2c89d513178e0d11a5bc0c48aade4414f3106","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.10-add-testcase-log-f7dfa4371287ad6d588f6ecee261634c6dd7061c.tgz","fileCount":24,"integrity":"sha512-fpwnPNAbV9v9vKOejNUSfpJPPKp5GzNrYK8Ndwfx6SgJqvDlb4uM7QZLtO6M3xdSPYHC1Bz4WB8Pbi4XBqlb8Q==","signatures":[{"sig":"MEUCIQC2nDBAizHu9OSgRSjRnyzH1n7tLFo0CfrKt2a9CsURZAIgDdlkAOSxQaoiB4xhE214Wd/YWLedD35xjz94TwsvDM0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122581,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3WNPCRA9TVsSAnZWagAAWyUP/34jJ6Z53SAi4YEOch1Y\npP1e2T3YcXuAvNz/7Uim1RDGDtb58AnABpQhAFJr8VEuoNqDfoS9CdHu+M8X\nDnyEtsQv9qKbphlhbhNhVraT3GIX8H7x/v/NtbfPOrfeI2Dhu0uHrU1sBSM2\nOcV+I0YSaqD1hrXSgMRkrtXWQzn1oBI9bIfKICXyTz6qhp805maWj0MZ+y39\nr0tTbyKbgnwccY79fTvYCbXr0ws+Baqb3+d+V0787gpsX2yBrqp8jqBGaGB9\nnLEnBmpyo9vNnU5KLLwAw1suGcIurvxRh4xZUQRX8il5DJ68i5f6NXzOhHhn\nLL2V56EyiFp6Ln3a9DT+E+gC9/1xBZOqVgVoDXagBxDF6S3swo/S6pJpISBe\nGPL8X5TX6ztkhkw80G17OiOEhKDW7jDr6SNfhB+qWi6r47gy9n2irmtbrVQQ\nADid6BlxV1w6+QK37ZrmtlqymG8CTh0/YXzvoqR5xk01gWWiWAPvqnAmdc/R\ndnwoKrdbt7G2ITrSXTycMZhh8NkxSQl4JRq+V75ZI4LbBCtuXFNCh9t0hqOf\ndVYa2h7DrVn6y2FzKDfco098OInhrakiClSf+GY9/1xZPDzYJA7ZqkXVtH+B\nhZhkd6xlQrQGCP8F4XlYwpFRqa+h/F+EUbpyhhlOjW7XH6Scw/kK7ei5iKYd\n7uLQ\r\n=rFyj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f7dfa4371287ad6d588f6ecee261634c6dd7061c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.10-add-testcase-log-f7dfa4371287ad6d588f6ecee261634c6dd7061c_1625121614854_0.09229221437345436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.0.10-add-flush-all-bf5e093fa9706674893006f8289131eefd421251":{"name":"@balena/jellyfish-test-harness","version":"5.0.10-add-flush-all-bf5e093fa9706674893006f8289131eefd421251","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.0.10-add-flush-all-bf5e093fa9706674893006f8289131eefd421251","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8054690c13608bfe7ed6c40864798995f0a6386","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.0.10-add-flush-all-bf5e093fa9706674893006f8289131eefd421251.tgz","fileCount":24,"integrity":"sha512-L8mJKNdb8MciG+Mf3lgvP5NqchU4nXdUvW4kZse0WOUcDMawbzex1aMgU0Y54vOlHvB5Mb6Fr/SM2MxV12K3og==","signatures":[{"sig":"MEUCIQDzvOMV4XyzBuoUExjJ7SekT5tVi1nn5HPagJR0HWcwcgIgKtAphD/Dssq3Td2NZoAcVEN6wk7wrQwo8KybDevHCQQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122878,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3lzwCRA9TVsSAnZWagAAlqoP/RacfRiQQIQYhpJuiibv\n3XY5UbniYiADobP5PRU+HYH/zAxSrv5rIW6HFe2SE/LyJ8MRQWqchFsU8mXn\nLDLTIPUuZ5S4RvUQ1eAimq0eLsiMg9AZ5zIRw8T58locNKSz4yAyjZilgkLv\njZRne2eIkeK0EJza3rBSnKXmQg+7yxs3pqv2pZIVlh3to11v4mdm7DONh45f\nRKG4lTJdec4jNhCt+X1q+ZnY9elqYF1/VPggOJtgZ3nsA3LQ1+qFdY1P6DVY\nhmYRSMY0Fy/qIPvkixH9iqCxnr6xW4RvfRFLso47rtJIBOr7EHDysQu8DWpG\n7TBJCnitwxsLneJ4m06ty6bn08rk81CzbM7J0rA9b2owRZRjDsGrz5TBohYI\nBBAO4UUrSaSnjfe9rPDis9PVq8yj5+sYwv0juIAq13iG3QQ8NNwf2YIuveJH\n21x5qvQXo8KuXDG5g+ToIsbrxODtd4iggz5tkiHl60MIZ7YUuxfhxkUreKOZ\ntvZop7d5ujykb+WKTm6A4WbqWBQzAtqOpWDcjeYTxnc+f5fUA8ANuXoNvsum\n+Mie9lGrRQ8Wce2sNBKuliOuAnNEhKs9jZPwHHbYneCXYgUE2FTZR/jbWFLY\n+ALPTjJFRcS0DqMGg2qMVPN9BwYXfpj6DJJpdgX2Rwk8qbY8OCh0DYY3trfX\nWgXe\r\n=ImT+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bf5e093fa9706674893006f8289131eefd421251","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.0.10-add-flush-all-bf5e093fa9706674893006f8289131eefd421251_1625185520174_0.9717136579956847","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.0-add-flush-all-86c4721192572955395bf29e78b9f7bf4a819bb6":{"name":"@balena/jellyfish-test-harness","version":"5.1.0-add-flush-all-86c4721192572955395bf29e78b9f7bf4a819bb6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.0-add-flush-all-86c4721192572955395bf29e78b9f7bf4a819bb6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d80499a83d7bd62dfa4a7ff568320ca69c04b296","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.0-add-flush-all-86c4721192572955395bf29e78b9f7bf4a819bb6.tgz","fileCount":24,"integrity":"sha512-w08O/uKlodMl5YjWQqvpXXQmtO9bwQdLDPSMvTzET7VXVEr+Q0XnFzTgZ2g/LS5xNrx3A5GLiANzFbRhFdS7dg==","signatures":[{"sig":"MEYCIQC1IGd7aJth3+AugvaKVfAmiuqgQ4jbf2oB1EvJzBONwAIhAIEdjUAwMhQohRzz7AO2WNgGudry8VL89u5nFd6x4cmG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3mHcCRA9TVsSAnZWagAAdg4P/3A7b2ukmUE7FCovC/dC\nepidvUZMEzkxtQ7PI142qlqn45BtQkrhc8PrjoQQ8OZa+j6zPgtBOwDWtRyb\nHtBepf+LmKjTvmOvQxSSBe3y1QwjCAOq1R0+mZoYP1txk4P2iJ0SS97X4MQL\njsYVGF/aOeEoyiStMfCD+o0Ikz5FvHF7woQhD/TCACS/Yv6xEG1Q6SSQG006\nIZcRGE6r+hvhOzjrMoLY05Q6tcAX/M8C3yVBvKjecT74dpwiFyC0rfj1wPCn\n66RZggcclsJLJp82KTM1oHKloP6jdYz1Nmbfl6KrYDc5YKyctM2B7pbqRaKk\nHygZk54nq71li9Ng8Ykd8xzaBTyXQYF+2emjTtDvcbpVz7/3rQ0ogn4uvyXh\neATE3TEy1xCMSYvZfLLs+w8pS8spEUatkQF4s18ultx9Dz3Ixodrm56XyxUa\nIeT5AAUpUDaL+z21c9YGHUTKtGqTJDmHrvsiNO8GTCVtFEXtjTvKdQc0A6w5\nVd9UVZQJAwliGhAHBUAJa82AZfXTgSgsPULMfCDpiOlDD0eDk2+TyPZE6ogB\n8uvpd3wpQcjRskxdR9nUlu7O+g1MQKRfGg+4ltYvQcOlsfd5PNajHpyEYFER\nfo5ydRDLejS+4fXjFwpvLUwhJHIBZehi2oXkM3TzjlBERcJ6mXgKvkyPWSqo\nkuY4\r\n=SKB5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"86c4721192572955395bf29e78b9f7bf4a819bb6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.0-add-flush-all-86c4721192572955395bf29e78b9f7bf4a819bb6_1625186779674_0.27598211444354415","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.0":{"name":"@balena/jellyfish-test-harness","version":"5.1.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1bbb2eacf2a5b21389e9686448bfb0280a17640b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.0.tgz","fileCount":24,"integrity":"sha512-vDk84yn+IQ73ajlCR6AGwXgn/7eaDUvt9vmP3d2orNP/mMvoFAKp8ewHTmpwPurOoNHr3/mSnWN6HW1W+bqgMw==","signatures":[{"sig":"MEUCIDFKlIcIT1W4Ea8REbD0/0eXg+tds4+9C2lM/NdHQ8xyAiEA3EZjjpPyd//ResJTiT4IPa9sots/6d7tmOlmlGXZkeo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3muRCRA9TVsSAnZWagAAX5gQAJ6+/PFKJsNcb2/ufqrs\nnoclLpAMtq+sxQxTh5HdK3eF+uVrjugpvtFJZ/wq/0PSU9Ve476UjXsl2Jts\n8dCR/xUjg/AuxxkpVNZcHG/CdQUeW3fbJhTZmZiLsE51rL2Fk7RTQS+a3Y/k\ndD6htO1COzShBjPcYv0unlHZMZbT87ACeor6VgucoRXSi6HHRVnoObAwgFyK\n1wJ35ByYlyRSBtcediB4Kr2CUx6twbSa3soNPywtXu7U0TtIMoAI0fb3vvJB\nIsRHR08P1Q3QYZQ0nHOa14Yo7uDttHaq1zvwzhc2mX9uyTbmTtqiFENchsUs\nkf0pRiR4o6/0HIwSNGLPAjOc2ZdwRThuRq7vh+nFNvxqJRN1tNjepPE+KcDc\n98+5dQO/D/t1BLiFfss4Alm2+K5gcjn3P8hDaastjDv2oRH64QGR7dtlZL/E\nSyGQB7SM5eerGDMGZxZ4lcXK3uaXme2ouGXqPYJOLRFHpibmwPvctp0dp0nc\nntAewSQDpDNFpmGiLcQ7wNY21ESWDAsvRzr70V2uD5hbJ4vD3JVf/7fH4qYn\njx+Bwn7vIoanXHx37NWYKXKJbn0MCDnyglLdW+5W71p2kXx6oSAcURBAIWa9\nvIDe3aKtOX8STVcYMvpltXkr4GrN7A2EAW7PXJ1d9H5/WgpgNKVkGFpEJ3pJ\n5AGm\r\n=2XYc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2890bd8ba84faf7dcfe3d60495ba29b22af6d543","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.0_1625189264581_0.38982815957283345","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.1-scenario-flush-all-ddc3814d9d1adafb763d23146933c36e0d548bd4":{"name":"@balena/jellyfish-test-harness","version":"5.1.1-scenario-flush-all-ddc3814d9d1adafb763d23146933c36e0d548bd4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.1-scenario-flush-all-ddc3814d9d1adafb763d23146933c36e0d548bd4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e7b1292ec555cef2e1e693ea18dd99586c10bace","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.1-scenario-flush-all-ddc3814d9d1adafb763d23146933c36e0d548bd4.tgz","fileCount":24,"integrity":"sha512-O0A4rnpJduEHhJbEaBN57OgrEYYpuchv18GnkpTwpkneaw9PdhhR5qULhx0VF0sVTVDIj8gov5nY/mDCuhZTVw==","signatures":[{"sig":"MEUCIQDbJPU6Glz+xhdWTAfTU4XPOkVeCzkY4PDUoBNLYV7mUgIgRBbXtEQqW9JsISxb5TkWnyG8wZ1ulgLkU7jAu0pinxU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122956,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3o2hCRA9TVsSAnZWagAAgMAP/AjiQGGuJBn/F/qiHtIJ\nHSHSWu0pfm8vWMsWaUQLv5j0YKRAYvt3nnp/lrcAFL9Wjl2R7n6yZz5GlD5Z\n0sPh0s1Z4R5B52Fyiu6zAhyRyBBiDVhKmslFhEpnTe4nShR2uDr3L3SXSl3a\n28CD/j+Jp3KmgAd8zY+DfcC8qNlhyjiDPMFnDox6CKiSDipn7Kbf7Rli9NmT\nja21jpDLESNUEzipL/WkGsiqxKr5EBPEgEfDbMiVYjB+8OTrbFidx6ZvPjAh\nwimhtUKjyPBj2kalOa20VqGYMQoOQU3nfMDaMRIdrR+f3LmMn6lwQ02riBkR\nTN8y1DoWjN98vMGOEVFs5v4QKmO6llVUNcCF1Yi35s4vWpUWdZNEjyotwvJi\nj3ujiOv1bsTNkx3ZhcM4Gs4ugNwx2sDs608ruKo6vX307y4HWiIyDmFji3aQ\nNW/IUpsmDCx+Hx8RL9yEmQS7Og8LyVdZoSY/BLvMfOUl6tbwpAnsD1VCrbvX\nARxzJHPYj6ZThq0BcGkx1q6u20EbkHRjru8unVpF+N82rzIXQ9Cl4zN2mKf3\nJ3P8d3HjP9SC7CsHiOqvNd3h/MpsNs5wWuWP/jVCI1aEsN82rmq+Qf6LNaE+\nikPtJYN96WshUnWnfk8+BNBjCeODJPSgq/Cw6532w1RVK4hx3Xm3ObkTIOc5\nieF1\r\n=iCXd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ddc3814d9d1adafb763d23146933c36e0d548bd4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.21","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.194","@balena/jellyfish-worker":"^7.0.7","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.1-scenario-flush-all-ddc3814d9d1adafb763d23146933c36e0d548bd4_1625197984948_0.3724354488859578","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.1-renovate-internal-patch-f0236c8ec319a8ffd705494b514ff055d15ea705":{"name":"@balena/jellyfish-test-harness","version":"5.1.1-renovate-internal-patch-f0236c8ec319a8ffd705494b514ff055d15ea705","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.1-renovate-internal-patch-f0236c8ec319a8ffd705494b514ff055d15ea705","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b892f4c337cc11c5ca18dd3f5ca9fff394d5b15","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.1-renovate-internal-patch-f0236c8ec319a8ffd705494b514ff055d15ea705.tgz","fileCount":24,"integrity":"sha512-lHDDWO85/z+Au8NnorpvF3p+VeBZigWorFpXfi54r2mSL0fjQi0hj7y05gbAVYzTxdvYlyaiDYVyh39SinDn3w==","signatures":[{"sig":"MEUCIBD9hWryxzhPv/S4Wd6VwvfGW5+yCQvFiBsWOI2Gl6XgAiEArs8Ykhdpdxt4am9VFakgXu7s4vvfiJXklh5jW/uJ2sk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3pkuCRA9TVsSAnZWagAAn7EP/j/xJz9yK6hNequNjaU1\n5mTw1dhvZQcjz9fYC7Y2HYCbajIeFdf6iZuLWj6tHetOcDuiq+xl5xzNj3bo\nCHZ9pfLmCoUPaOSd/LqcgGM/WWqRQFhXgs1A+wOAhuVnZqtPVw9ShcYaazWe\nsFap48of6MZw7EGNA8XeJkVTjp2CNVqP8wUPIr9RArQGjlnpL8UztQJqdSe2\n1vUjl1t9DklmQY4spvvdnOItpbNdImosOXHXLTSB+PzAe4aD5SieNvAK+od7\nTEZkfcjb3g0+nV9SsHt/xnO8lOqHgJYEycxqT2Pl4AqQX+XKTA36UuaTG3tE\n1/DbrOpKvswqG9ONWwxatHPAjYx2zDNbBA8jQG01lfXFAcTFRn2JjsIRVFlO\nPUct8DhEeRN1Al0fZsBb3oPSp5H/a6sKgSyJ973n1iqVp6RlmYrrx+xPErhl\nihFibWL9785GT2n9jM9pdoFKZPv+3D5s2QSyxW08o7k4IWL5+kjGXmKlEyCj\n1tuU3x9AUrkM55HaMsTR67gEKcMRfSOVBltP44rZQjwWpPRQi7tYTsL6B+HK\ns2J5mFsgqgMiJkyck1/W3RaMsS7zWMm41ygSD+5l/bIqpGqTd+7Mafk+H52K\nJCeMDhvjNaQrrrB1NdodXKFEV21l5zWXuHue/+hOCrYrqcZwfQdWUHC9M5Vk\noYUg\r\n=cV7a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f0236c8ec319a8ffd705494b514ff055d15ea705","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.1-renovate-internal-patch-f0236c8ec319a8ffd705494b514ff055d15ea705_1625200942203_0.03610585120630283","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.1":{"name":"@balena/jellyfish-test-harness","version":"5.1.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e4dbe360eb23473fb2e18d3a79532757c02c21f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.1.tgz","fileCount":24,"integrity":"sha512-Ru1pEc6goblFJJYky9T6bRHxDV++HlFj35BnvgNSBej4r3m3gcREdZ1+QhIDMaCYgEw4GGHjWsowbfnlV1XpDw==","signatures":[{"sig":"MEYCIQCiXGMyDvCnPpGP92BK5056m0gNfNSzdoH3O0wKWwGkfQIhAOIPAVzWrdgawv2oOy043xshX0zaEx94g1Id2RI7LD5J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3poPCRA9TVsSAnZWagAA/ZMP/2msqFHoSI783oHjMej6\nY0ofyVk9aYKl1Kx0omxU7qNluBLmZdgWex6F8kFwitXo8LJHkUpLwUnU0O1t\n2Vx3XeyjjRPPUf2md01yL4fFbwwQ78aIJijB3+0ddwY1CJPRdGkBne0I8iwt\nUC3CWqlKWfRKeCmSawSLzk0/O5Q8zY8Lr3oCwXAARvDA/jG4es/0nza80IDg\n5qTd7k7cd45zDirkgbvThYXjWBWcIv/9iQPVSd4yU/+1e74qvFxfCPPpTGaL\nMtCTRbxUa4O8U7qb5l2BLCxTuyzRmvDGLOy9d6MGa49r4A5CbBiB1PmSuEDt\n3+uPzNTVCcM7m8puG+ifjq3HTN4TKxnLeRcsVexoNYjrq3g3+PEo9ySBoeTQ\nby9taN4F3tQRoVI44x5tXDSVAfmz2yOeZFsLRCmwfZZTNYVimbl/CUh3CMSJ\nOg41heLzP3+KUy6FYE7+1PPJw8EbHdnyz6UTDOOiLPS/rjXbYEWmWcT5utvi\nglGEpQVk09xem2Bt0jWUKiLvT7vrjOYysM7FyuN5i1QXzhI9b4raRKmhxats\nBIKmcoOaLSH/v07ScCY7wAPG3zZ57CpTA76VRbs9/F2D7AYMYzgqLkvp2lKA\nPknVHgAaX2woWHhvJ3ab+jIEuuLXhLVrMiDBD3Y4XyILZHS8oCLSAUtYeyQr\nrm2o\r\n=ufom\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"64ad52517f932e3ed1f1273df8847c6bc81785e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.7.3","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.1_1625201166684_0.24716318711052598","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.2-renovate-balena-jellyfish-types-0-x-e5add1e0882c291f8a6e54d65d1e52c61a4f5868":{"name":"@balena/jellyfish-test-harness","version":"5.1.2-renovate-balena-jellyfish-types-0-x-e5add1e0882c291f8a6e54d65d1e52c61a4f5868","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.2-renovate-balena-jellyfish-types-0-x-e5add1e0882c291f8a6e54d65d1e52c61a4f5868","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f0cd49402686ad796e2cdbc44f1edf6e74eccbb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.2-renovate-balena-jellyfish-types-0-x-e5add1e0882c291f8a6e54d65d1e52c61a4f5868.tgz","fileCount":24,"integrity":"sha512-JKVFfH8MVtVTnMKa0pxpKc6l6gN9AmxRCyNZLVWyfeV9RWwr8nmv8R/17I+/rSb2Z612DJu/JUNgzugvyWoRHA==","signatures":[{"sig":"MEUCIBNkTN2UOULqVXvAxZYhvjs/QT4H6wt3i61uDo2SxncBAiEAm18Ugf2uvv1TvEIJZtGBkNUDVnunod9XN60IObmMx2A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3rhECRA9TVsSAnZWagAAsM0P/RCiauPSDYSC8f4nTO7N\nZhZjuDQFBLrP7oqrkqvyKipqgjnJNSF/FAWehSZsTCi9eFtfjisr35HNbmAG\n2qMUAFYsf2ZDZMiYDETFxFhcEyRyLRhn7jTpWS5v8vHKttEddEZFRDBcHcv3\nAsznyWbyVMLGnbbpZs5uq7WAeRQGUodHxrgODGdbCh6k6BqVXFPuOgKwlBnn\nsTjXbBUWI5iEV2TBjSxvEwOgxe6uskT+fafszhk70EWAH3obBwA/a2hbT8mx\nPGJDvE3d8+xZilQYLHPuFdTEOZ32XBYs+46maN+djHsyXfW3knzfnRSIoOxj\nSMFQ+UKrWOM4ZXer4ywdPtbL6e4+PWajvo+k3sXX4GzMmHkajnu72/UytMkg\nSKrka3OZ3trWkFm6NbCrs0N+LTVb/2qqKDLCnODnQfwHpkpH00gEcxk+hvsV\nbZ1CW+OZSfs5nJAVEfWRzsHbIiQsyN8K7EDF40D/mBYg2r0W74SM9PjF7JDk\nHMMt5jaGPnmWYGvGE8lZfFqkyOMNxK7/j3ZY11kSZePuVwNlt8qV0pnEiOBl\ny+UrmgRVAWuqUf4esCzfm37Tan4Dcl5H83F7ke12UZI3kVrARgYF/MkqK62l\np0T0FB1r3T5JSFXN7FFiuKdr8TDrEAP6ie7Dknn+6T443Np0M0UacWt1LxJj\ndAoF\r\n=iNIo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e5add1e0882c291f8a6e54d65d1e52c61a4f5868","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.2-renovate-balena-jellyfish-types-0-x-e5add1e0882c291f8a6e54d65d1e52c61a4f5868_1625208900500_0.7840209615001563","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.2":{"name":"@balena/jellyfish-test-harness","version":"5.1.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bfd4dfda09d52194e00ef3447e836285f34e4ddc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.2.tgz","fileCount":24,"integrity":"sha512-YlUeKEfFRCZzMo5z86x3uAKbT2vK21ZsiGw1pUzxljV4SkFNR4W7F4dHZDEAcpNYioUfaGolKnI3K2C0df81CQ==","signatures":[{"sig":"MEQCIBIuKq2DpSWPpdvxUrS6QVucQm9HqknDmoOw6AGiIPhAAiB3dYHY7iHGghgIhvH6PhCzNOM8dCSpYgyp0PsFbWNijw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":122997,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3rlKCRA9TVsSAnZWagAA/ngP/ij8P3u5s4EaavkRefKN\nBYWTsjFuedUWXmLPZcnw+xIIuH57lGzB5PJyi/6F/3t8xF+nLJd9Hw8mkKov\n1eJbPMam4p/XBsRPkjJXzVvDrGo5Hg3BAW47FuXi4IqBP6MAFDR0EqCwAo/S\nfllVGIz+ukPlVqTEh/BHz18WMtUCB3BcB0dEQGoCCO/5H4OfYfWjyrmO18Eu\nmM62oCJe7q/nu7l1+9nxVk8ASULQ9i11UAJ2S1Qxbbmr3PTMvEAd5mfkb7ri\napGpNKHnAlYNqiYFqa30s/R07/Fw2KE4kcP+EqPMZrlh3nwzY/bBhQMvsnLk\n8XWo2R6d60Qc69h7DGAKID1a1Z+P15qBRwqYb+ppY2BlejMFNoHVLUT8rxN8\nxUzQzPsVaZcmV/4s7xSyWL/EgMVAuEjgNhLPAJRwKbb6vcGluJTneJEcFzAl\nA51SrquZPYKOOwYG4CPFJrqd2TrD1rSDKy3tg6EDkYySrF6Uf7kvdxXtoAum\nw40npATmzU/9ANhACoZlPIMShWmqxlaX9iGvMDnKwhr+4C+v2Lmrv27AouNA\nJ/Mm3IUDHLsy8Z+8B/8pQl3GhFM1F1DNm4nK8nw50bqw/gp3ug2kN7Hkimlf\nebcc9uu5pw6qZjByrQB1RcxMtcLOTawJNomG/CdgAqryUk6yxvIVxVwlrZ5D\nBJnW\r\n=KAhM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"22bbcb3374f09e06260afac335af4b616bfab8a1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.3.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.2_1625209161955_0.7457667858982404","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.3-renovate-balena-jellyfish-config-1-x-39c61b764598caba96f902212b2b5a70326f8621":{"name":"@balena/jellyfish-test-harness","version":"5.1.3-renovate-balena-jellyfish-config-1-x-39c61b764598caba96f902212b2b5a70326f8621","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.3-renovate-balena-jellyfish-config-1-x-39c61b764598caba96f902212b2b5a70326f8621","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c86de2f756ce1fd277078edb8f1bf6eafa9e95c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.3-renovate-balena-jellyfish-config-1-x-39c61b764598caba96f902212b2b5a70326f8621.tgz","fileCount":24,"integrity":"sha512-tO1RzOH/6xt6hGnEHJcD4NUuaAZgSrlpnRHSa96LH59jY6xwxqYh4g4q5NBMmbx9hKhyZgJD4ROcnhGcczRivg==","signatures":[{"sig":"MEYCIQDze8HE7vd4Ryn5AuDr+xzHIoelgNYxXfJar+/Tu/iTZAIhAPlXdn70fN7AbwRJXgeaMLq3T8y+McrmcSMBEnUX4cYc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123179,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3rnxCRA9TVsSAnZWagAA4qkP/1ha6iuiU3044yIzz38m\nWiA3if9epobKdV4TK3wYdOM3jdO81+iDJQec/519gU7AYH/dnsvZhnjfK5WZ\n0Xz9ZDwVR0xUxaEtkANKReAWcLpzLbmpZboiejf33tYa722xV8vdro9cH0bq\nuw40TiG/YTmLOw4LwKokTq/HnO1M3qO3yC6lgNaHY+S1gunJG28H1CN3NydB\n+u0w10tkkuPytSyxpTmk0DfdKGdWzb41Dq6zESjYef37FgujWIlHB+VJwQrS\njKx9/n25gQd4lXgyog6VzYa/0YNPfIv/TqNXUK5zk7D9oNGLBl7re54lCoxn\nj5uVHvmvXfkckb0iM7iUww0O155mJP+VS0fVOXTeb05p0ozwsjqHMPq/V6P8\nkev3nKAIdv1I6ds5TnZSpXSqHOzmc2VMzYJ3lvJf3/ZOhFyOyIHDmujoL46A\n4/L0yDxuTCljTLY52FFHV7V6ay/isEssr598vWJrjeIwflHh5YUP2Pwe4Pfg\nC26lCp3gSoAv5bdr1+jWMXi/hpQsVZB3D0nJM0Y8EZwWl4nzvC7ubi0Gxi5I\nsTiV5xHBvqAy5v4HfJFgZ5+BzEvOEHDrvzBgUeHRXR9Xz5iU+YtbHUmZKLfY\nASpz1/kAORX2fBJx7U+LTVh4S1Lu8N7NcxkEVSddxZrL+I3BCiYZ7KQZ5IZt\nDkH/\r\n=QgKE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"39c61b764598caba96f902212b2b5a70326f8621","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.3-renovate-balena-jellyfish-config-1-x-39c61b764598caba96f902212b2b5a70326f8621_1625209328857_0.49663747701391614","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.3":{"name":"@balena/jellyfish-test-harness","version":"5.1.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"26034d2d88a9d00360995d775afd163316449cee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.3.tgz","fileCount":24,"integrity":"sha512-OkqakuFSVuHNPE+u6/GEOCnMQ+S9cr3lGPFDTot2X8rrVXZUy48bIb697fEFBJtIVDB4P9yRy0bb/zhdngtH/g==","signatures":[{"sig":"MEQCIHQbGofW2RM0ehUguL3o/q5gev9xJMiVH8uxRUMcn1I2AiBCkfDWRO/Wlq8FfzVJBTnKGCpmFswn1rwU+owu9x9zlA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123101,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3ruXCRA9TVsSAnZWagAA6kgP/0xM13C40fWHhN4QudJs\nX4lqKqwn9KfmX7kXxe73kmdk5rTm8T/8GxYXNFUxBSU9/8sVPGYxvgXZdHyw\np8RLjdheG6sjgDu2yht8W1KipVXq172kJMW6V/+jS6t9XWlYRRnGgPF8/PTd\nJPwPtuXLmTCghKdK8hu5OQsgnreK9E2hHdDzsYubaRHT8JKim0rAOf9eFjKq\n4lqR04MnHlIcytv1raCCZTqigJRHNQ4CRr6VTb6zKnFbsy6KSgqUyOpgEvEM\nJvfcERYkQWIqzmSMLSoiqInt2I5AcXSHpBXguh05eSmh7uulvwnDrkvC22cI\nx9JGunqYz8wwHsSVt0Dkq1a3or5naAq3KBC8kGV2iF/3oamqltzFGUFHBcL8\nxHKWcMy3L97ARAZIEe1OAWCvs88zOeHF9zHAhTeR7mQ8gOkTb5LpLLK1mmTf\n8Ihw/GbpkHzJU0vH+UsgbeNBmk2ZaLXG32Y4eGHwOqHOexEs0QevZoJSJQAY\nJ6gW29AoCEkp70FParcXr0fGDjsAP5scbeOKkrY9m33RN2dLXX73NixkikWo\nbjy/FvMqbe6ehAKkQm8gtL0LlUdmGJM2jPT/IWun9mTcfJ39FIXUkPquxJc4\nrZr57CREixf8wVYPem4iL9cKxDiH8w0sG33jBcGjMlpkCSYYlQoAQgSkCYxq\nDYlx\r\n=8NZ1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e2861adf71cbed48885bd600b1fd8c2b9a2c13fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.175"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.3_1625209750930_0.17054823390742513","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.4-renovate-internal-patch-5430aa8f138c8ae272990b8a91a767eaa1bd43f2":{"name":"@balena/jellyfish-test-harness","version":"5.1.4-renovate-internal-patch-5430aa8f138c8ae272990b8a91a767eaa1bd43f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.4-renovate-internal-patch-5430aa8f138c8ae272990b8a91a767eaa1bd43f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c9082532cf1a4f95e2a88230e2aa68007a5c127","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.4-renovate-internal-patch-5430aa8f138c8ae272990b8a91a767eaa1bd43f2.tgz","fileCount":24,"integrity":"sha512-4dyFV6a0HOnFSmGt26ruBD8dd2hYM6rcD508f8SRwXPtHz2hgQ+4rly8LDgwOKrfRKB8SORGGCIDVcS4vtr7yg==","signatures":[{"sig":"MEQCIAvd7CkvlWe1YKBIop1TAqTFF6sIUS8DEdhGG57BtC5JAiByliMtIPk3fms4Euw1MDtSgnpuTqjIRYGQbbV0VimSCw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123277,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3rxaCRA9TVsSAnZWagAAoKkP+QCFJq/27K5Ynw4uXG6M\npkzTIsffSYPHoFcGamj12o3n8hFxXiuQAqsLj9Se+BYsbto8pUzPDo2r7HCe\n3yfB1bdQYz2+2GPIX4d5/4ijZuiaBolSs+PAmaYsJMgXXJvl3u3i3Sctc5qQ\ndBfpCYuWfWtXuuaJIXSjiPoN/jijPzIcv6+lpb+zIaKG1WbhNVb9uQgrofn8\ndBU3ll0228KclZ7qfIYxSSheKk1iYkM0ECLNnu7zRs88CwgY1h5KRY8Wu6eO\nqCts9huwJDhoKnrpIbpuj/62/O6ZLsDXhUbc0yKfUd+M3yBWAyYV72BpNq4k\nXwJQnh/thsY5jlE73/m5VCqM6L/ZJxsHPZdDIXUEnFqWikOsQzT+TS5U7OJS\neo3NFpgsxHTspQ4T5mFEnZLfoHcqlBgkXiCv9QJ5uSdNL08/catNDz+zTUYG\nI89cyuOXrMV6LMn+LNb6yo5H2LtA/Z9A7RhQIIZl6LcV8jk/a5jP12nWQauJ\n8gfLx8eBcExdyRxaRioYB3d/XjrfTY+/EZoXSuyrZVDwsxHdcTYZYpgpZeX7\nLoKn7phICErtnDeHJE2oJKqs4L6y/XO3P21vMZmu4PSvJpB4JUVBD+FboTii\nw/Ng9T/+g+urEsdFP+eRnt/YUhbPfuovsT+dUN06trYNT+3XnDANTTUHAawm\nM/na\r\n=A+gn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5430aa8f138c8ae272990b8a91a767eaa1bd43f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.176"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.4-renovate-internal-patch-5430aa8f138c8ae272990b8a91a767eaa1bd43f2_1625209945665_0.9894063924439531","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.4":{"name":"@balena/jellyfish-test-harness","version":"5.1.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"38ca7f830e5a6efd93b370b6ee296b775ca37dab","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.4.tgz","fileCount":24,"integrity":"sha512-TDlJ3SIkNZSzeZAW+CT6/cn6s5uIDXi6LyWmYSS2IknYmCmZB0lbgPA1V9D/q3Vsn0NyKGPvIAMEboACNdllRQ==","signatures":[{"sig":"MEQCIBLSZcM5bMgpNX9K+4IeZYFECxz7xKqduq32DutCS/N5AiAeh6vp1VuUlHmTFeGbqR9BegXJdSpqQZ63A8fRu9ai+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123212,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3r5rCRA9TVsSAnZWagAAH70P/34BB6mQCEMVAnx91Ydt\nJlukj47gBar9HhOtvxLwMnh44IuamqpYEh/w25XtpCJaoDYnHJU9bMulTTXy\nU6RHywxZbylAxrSRwmYAvNw3ja7Q6bqi/sX5OjQg068+gt/Sk9dy/CYKJnbw\nG4WLkjmbarh33ma77rG41BmQZcR9BV1JuEUxcEByWgwB3XS/b9xQT6bZKC6N\nIQuoTspk/G2qMsjof+Niw1nZv5bLrEBbw1APQBcThMiEeJ5k22jOpAtqqJt7\nFvIb4M42uq33lmxUepcStJf37Tr//U5AMJP72MvB8Nk8Dr0m1asqlpK01jQH\naPOfOmkhzBMEquJI/1+enw6aUjrx0Ok3LvuNdm/LvpITRv773OnOqSrbosuF\n0Amjds27Lzr7Ez2EL35COKrxIo0tJ2fQYF3A/dyG+TDLfIhUk/ruIeNnKb8d\nGPAooj3mnFAUwh+hRYt6QEYhbdzdj6i1/YuQzuqObxlvda3e8baYk/Z7MIyx\nBlHAclgyki5f4r0iXC95Dgsw9JO0kIIn0cwf9QWup427j0NT8RFZRj7didNZ\n6haSFMh9YT2a+ZoTh59GuYEigZSfZyxyVGohv6JteJc7yUjh0D5z/KNqC8Ll\nV6cns1get1qFTfR9uPOrqT77emQ4nMofLpttI2sc9dS87bO9KO/CPCrrMQ/Z\nn2al\r\n=13+A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"70ef95c2814353a9e448876e720a1798fd7d798d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.195","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.176"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.4_1625210475404_0.2224175627301186","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.5-renovate-internal-patch-9785786c3f8e80c3523ed81ddaabc2aca1bc53c8":{"name":"@balena/jellyfish-test-harness","version":"5.1.5-renovate-internal-patch-9785786c3f8e80c3523ed81ddaabc2aca1bc53c8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.5-renovate-internal-patch-9785786c3f8e80c3523ed81ddaabc2aca1bc53c8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d529aed9a0687ddc3b1028cdacc65c13faf1c8b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.5-renovate-internal-patch-9785786c3f8e80c3523ed81ddaabc2aca1bc53c8.tgz","fileCount":24,"integrity":"sha512-KAKvwfqghw0pVf20YY61snLy5CaZe+tQ7k/LMfK7LSz+d/gYAM9SLE3rgNJDIao4Bn4D/qE0LwUHcMPOKrKkFg==","signatures":[{"sig":"MEUCIQDW1HAOWFnvreEENrk3THWfVgRQmlUrRDAjaq5yXsT3MQIgNEtJVRMA3PFDNxFN5lxjzy0cR558zeNH/AK6dm/bRHU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3r9ZCRA9TVsSAnZWagAAdJgP/RUdbJsBSoR6d3thByxo\noTffDfayPErAtjf0cSaXY4GmScyQUIF8sAM5uP7zBg31xLRO6EgiXg0a04xi\n/UZc7tS4ihIvSlM9AxhVO2yBkmvn1goegSYDyQDJaJ0CttPqQnt0cBXQwSLl\nyOGRyUC1X7++Scl6gYuviR1RO/sgJ1ObaHITXxUGgfyBGek0KRg83M7IRkh+\nfFsEeECLfjdcQgNKLuBOHJN9L1PYNzYZYFnNLVOcEwf+gSkeGJprPM1BKaF+\nAzrTXaBjvmgMAVou/pMzC/fHnQWpXRQYAnIqIqEXNyBjTyZ2JSuYaCkyEFVk\ntsX1iupZhh+rQj+8OXdKVHzJag9mnGxZ80Yf7dNY0TBYbybGV88vI82c4/LJ\n321FGIxXC6a2BfaF1LOFF3VYYB+Va5ctmJ7MR9M6ljOPKvIankqsMmTYaDVX\nUGpIYsj9LGeN2Gks52FFQhjtVC58lU33kMBAWJY4N/rRoTRrx8zIb5j4wOqO\nVWYN3KjX3gMbLAhucEtfJLn0tdbSBUFcLbm5T/PjLcTbbzbrgKSA0LskhNm7\nFwiGem+GqHaoWr1OPdF38PKAxZgNZ9OHp/MJwcq4Ve2WVEIo05VtJueGTXh/\n/o/Fb+hnY0NvWR4e893+1x7pP32r/eO58mAUnUKTwG7Yb36tQWc/G/HUSZbZ\nIla6\r\n=RQ7W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9785786c3f8e80c3523ed81ddaabc2aca1bc53c8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.22","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.196","@balena/jellyfish-worker":"^7.0.8","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.177"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.0","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.5-renovate-internal-patch-9785786c3f8e80c3523ed81ddaabc2aca1bc53c8_1625210713297_0.7374498971761059","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.5-renovate-internal-patch-fde7806f209673ad3902c8cb26626b26b1194dd4":{"name":"@balena/jellyfish-test-harness","version":"5.1.5-renovate-internal-patch-fde7806f209673ad3902c8cb26626b26b1194dd4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.5-renovate-internal-patch-fde7806f209673ad3902c8cb26626b26b1194dd4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ed06be93d4f36b161b6dae01f0a3b7b8433f57db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.5-renovate-internal-patch-fde7806f209673ad3902c8cb26626b26b1194dd4.tgz","fileCount":24,"integrity":"sha512-0nwNxiZfQmq9s3sDzOpoMRBOEBfdpZfX0bLDPJrxKPThzD3QQVUtcyVi7OrID2TsTmJp8yIpmP1B17gJ3aI9hw==","signatures":[{"sig":"MEUCIQDn/d33HJkYrkPok7T6byXOoM9a3FyDRGvu/P6s1Ii/kgIgf5a00TiTTxgFXcOvVHrPCWxQ8FtupfesneuWbk1AZkM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3s0oCRA9TVsSAnZWagAACIUQAJ7SZUDAH2ycdadYdQV7\nEG4SguE+cBDa/iV5KJTDy32JZuT5rGod/d7bSniEExxIBQHvNOu+ld8FMSiw\nTg025RubolgmnM3m5kG5QwPLcS8dtUqK3OpmyYQGdUnU8/DE0Sdzy+UNPs7n\nufdPKI56R1VzeIxbgScl8Q2cTHfsrWqPgkl2KFUTI503misBDJ+5UbDNI1x/\nu6HzRoxw1YazRs8Pvb3sxN5szIT4R9lx0obIUn6leonEZKBJ7fdFl7ilansD\nZ/IT9vsAXYr/Fk1ADn0Lcz60TqVtswZ8vvmYIX6GHDbZV1KLgvk/vOFZ6aJf\nCbnCU7V0gjwzc9o0UQmAzOLQpcd+sSTx0050lPQdqoyos8xwD9PbiElkUKJZ\nfSTIj05fD7ZrVwqeIuNnytuKyo3a/jUvVkGG2DzgTSTW3BFskvhm0lNrBxsV\nWw5H7x5gzbyLhL7aX/M58mi1WX/2sST1n66592utoUx8rnBZKZblyddgBKn2\noqfSoyl0m70VD819/tQdUOfURnJ64L/VFP1rtBb5pxTucnCB9UStotlNvOEb\nEPMt4fyND+h+Cw2C0bYrMXqv9cXHLxYt1rYxtO0Wnh5xbGi/8tDex1OsWnQ3\n4DhmKE2HRSj2aL9Tn68WdvTVw/GRGscsQig4z8SSPblcT800u5Aa30bzs9DU\nj4FS\r\n=u65H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fde7806f209673ad3902c8cb26626b26b1194dd4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.23","@balena/jellyfish-sync":"^6.0.267","@balena/jellyfish-queue":"^1.0.197","@balena/jellyfish-worker":"^7.0.9","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.179"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.5-renovate-internal-patch-fde7806f209673ad3902c8cb26626b26b1194dd4_1625214248276_0.7384936337006831","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.5-renovate-internal-patch-147998935f450bc211d167d39c5862e1154b8a79":{"name":"@balena/jellyfish-test-harness","version":"5.1.5-renovate-internal-patch-147998935f450bc211d167d39c5862e1154b8a79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.5-renovate-internal-patch-147998935f450bc211d167d39c5862e1154b8a79","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"096587445d687da016a141f5cee03eca48e434b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.5-renovate-internal-patch-147998935f450bc211d167d39c5862e1154b8a79.tgz","fileCount":24,"integrity":"sha512-kps/Ux4ADLTFMu3Lze6Az6oBfTs2f//VqUMXAbv27QEVHXy6QQsAQcdEHxHjMkuWI9uzprqwtr5fXmXeUv3tYQ==","signatures":[{"sig":"MEUCIGoojiNmaOSr0/L3iuM6nPzSZsf/zTXbPNSx+u4cxdyBAiEAykFqhb7jfYVEnft98aU1jVLJqVUDzJXT5DPrTRy/byo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3s45CRA9TVsSAnZWagAAf4oQAIIfVQhJ5YorDNP+drM4\nfzlyt/g2yODEmXVSWxdwTb/AvYlXEU/ZUIAx5RYg4cL5fnxK7NrmcQNOHmS2\ni1D2ZtZJseenc2Vcppe4KlvFTgFvS0ebH1snjr+79P3/zgPbD7CGFy1AxNoQ\no03uqBSndU592E5e2sLwlCBm/uwnJ936v55jEkiqo0kcf1wHNo2A40XMlhXz\nXloYaGsTxd9qtbPljqK2chDIYyILzQpX9suw7guHM5w0NVuQsAlo2QuYbzkv\n3/m+Y1yE4NQDLHOpIdjyJFKSxr6NeeXIQgK+wlH876rJCxRmBiTOhZQfONkp\nKHcZWpa9UWq69x0VQuJTBPVQulTmL0MAL0FbWj1rOTfianMrrNZ6pe4xKJ2A\nmQhLlUbuuNfEwipA6CXRFjz08KgxfixW88N+Wx19KAJ1/ZoivtEty2uk+I/i\nB6XS9j2Dcu7VDBirvj8FR1mvVyJLHTNKAwRUCL4WJ4zi6nDrqUqOl5orxnzu\nt/XoOLBHJp6x7MC+Jr19K8PuvYjYn2c1DnMNz/Gse550BfZMR+Sth00COkjT\nv3TPaBk3kGRkTsTVMOJQ8M5dMwEN4KaT0U/J1WpF4GlNcaaRQQh47aaOqU9n\n+yeaU9sLo39sE0e9f3Gg2T+sHEM9y0AImFDzr2mrjv4YUlB5X/+QMVGSDiAd\nm30S\r\n=fk81\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"147998935f450bc211d167d39c5862e1154b8a79","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.23","@balena/jellyfish-sync":"^6.0.268","@balena/jellyfish-queue":"^1.0.197","@balena/jellyfish-worker":"^7.0.9","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.179"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.5-renovate-internal-patch-147998935f450bc211d167d39c5862e1154b8a79_1625214521017_0.6178275498257062","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.5":{"name":"@balena/jellyfish-test-harness","version":"5.1.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b63f8db4c60846c3a576a3fa1c6ce50286b4e81b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.5.tgz","fileCount":24,"integrity":"sha512-lxDHp1bkhH2wzp83I/nCUQvjd4xuDc/NKRHrQ1QpvEpPM4qg0um7q6LpJD4wgtGaC2shyfUmZ/ME85Ov9oWg1w==","signatures":[{"sig":"MEUCIFQicjD9i13D66I2glG9H6cKmDx0umBxqjFFH19a4sNHAiEAw3Pet82wkitxkmZg9SV2DatYtZlJIiQ3YmcjNQw5L2M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123285,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3s8ICRA9TVsSAnZWagAAiakP/AiBTGQC47HT1iAwS+6D\n0i4fzQTqz4HHEN946tlS7FfXla2zplBltDQwbLhS/z9pnd1TjB8ZEd4XsKuR\nzheh0IPDuvg30iNs/+UePounKp5xdX+01vFi6Vo03eI6KhgD7va3+QQY1JZ0\nmWAb/HuQa2qdymaOJDrwNkg2GwEEnz7rccHhBC56q9DRplVG9jzRDmNxp+6M\nSmNkz7tczI+VKrMzUAjh2IxOFb7EY0OrZQnMisYZHX6wmGQAPKyFbbnpTVbR\nRvLLDDmaFVHJpxVYZd1iZkOqrJmNt/zLQl0115ViaN1gm649130Z7Jwud07N\nbAHxsip5Oq2ZzU//uNBngX4W63k4xbpUTkUu6aN5MvLqVD7Z74Tppn3dFRA7\nM21WM+B9+p95PZbEomZBDODnm/Aa+bzVRFGEdlj0N0zXQPEym3H4g5nufbv4\npyQmh8KvRYrIOyFOi6m4fZfUkejAjczJiPv78DkeSTwQi79WBKHYoila3C8e\njKLx2d4nex9NKU5vtN9V4AXTZSGYIPMpvRWD/CNk5tohonzFtT9fwON103A0\nmtz8TUlyLflg47lkqg9peGGqyPDEsMLvskknArWvz1tnI+6BR0S2YhxMXh/+\n3po+nUynI6nYF7fiao8ntuxFQz0ZmsgYiid134ilbTMJbUW77OL7EVDio6bz\n5tqj\r\n=/B6q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ce4318edf456249028ee49cf3cf28c14dc12d40c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.23","@balena/jellyfish-sync":"^6.0.268","@balena/jellyfish-queue":"^1.0.197","@balena/jellyfish-worker":"^7.0.9","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.179"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.5_1625214728201_0.0718961596840284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.6-renovate-internal-patch-1b52526edb7059916c0d4230e7a6f5804b06c12c":{"name":"@balena/jellyfish-test-harness","version":"5.1.6-renovate-internal-patch-1b52526edb7059916c0d4230e7a6f5804b06c12c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.6-renovate-internal-patch-1b52526edb7059916c0d4230e7a6f5804b06c12c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb712911a7fc66b09f9b5c6a3a96206143654b91","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.6-renovate-internal-patch-1b52526edb7059916c0d4230e7a6f5804b06c12c.tgz","fileCount":24,"integrity":"sha512-2BoOFgX6m3Mph2dH47il0A4OMLiFYbPPmvrXPtA3fTkVy23iH0y8jU0b9lFR8+XlWVDq2YE+28/8kd5iDS8uZg==","signatures":[{"sig":"MEUCIQCccTySNRpa42PdP7khUyEhionohR3ihkZix7QsIUd0cgIgHOqvZNvrwiA+Gv7AN2DK8eCe7YJWSjOvuEUMDdZzuGc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123424,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3uTmCRA9TVsSAnZWagAAJuIP/j42S0y4g4x8NP1/Eq8k\nBk8lasCqzSXCowuvVHp3ojFCSQ4mJK2YarvR9cNGp11rzUoxUHC01+cwZrJZ\nP1LjNFXbTX0KcRLgebLRYg1ypddKygmhK+Icy9bWEI8jdKp+Sx+0Rksj5zAc\n3dappZodDrrG0FaBy1BEYZNsSsGZSDwcDzRdKD1liXpocYBu1p6xAr6PW7c7\nCF3/uvjzydL/tcVL29fS9F6voewM2oZF2QrL9NF8HX8XH8Fri9LIDnAnJ/2O\nETqOpRLIR3Zl9uwJGOR/YENa4tmMRfC+1wmZT+d+4jG19+aTZBh/4+3neQLT\nkPZPVOE+hYKcyGFUq1dUvYnCCaQRYg4OZfD2mu2ecvYEHjbGJCUBvPYb1V1r\nVhB4crCXdh0V67ur7Tfn6MyudbzY9ubj9OfcnWDsLQIKheu7JRdCLOKB/Oge\nNorrHlosWPiBTUY3E8qLOU43bk8iyVEB7H5eCLF8jO24CMOHFhm5Br2Vg+Jo\nPZQbSS1/MPpO2NjjxKHcQzrW3NfwArNMUtfaGxo10CaUYv55UwgJN6rsu892\np8MSfBzAE1w279whKOIG2krq78McR/sJF9a3pcB7KoYoFTiRdVBd8kJLaWQg\nUyWPd79ttI8Mr8jJoxF12EQwb1yVvyXClnbb3ajrkLQa0fsi/OcS9uUp6TfP\nmQWW\r\n=gDCA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b52526edb7059916c0d4230e7a6f5804b06c12c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.24","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.10","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.6-renovate-internal-patch-1b52526edb7059916c0d4230e7a6f5804b06c12c_1625220325683_0.42504035868829293","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.6":{"name":"@balena/jellyfish-test-harness","version":"5.1.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3df8998f92adb5b2d8acecfd687da4acd4c26230","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.6.tgz","fileCount":24,"integrity":"sha512-BdV9zOWO4Q98NLCMpXcSzp0yJWuRK/Gee5WbHW/ExdGt9qu7wp8liu2ADWCHiyTMrwILhy1NBRZv5qbceK01Xw==","signatures":[{"sig":"MEUCIFV2lRDSJhFl82WxdZNqQ2gZf6AFwYFjC3Mqw3w8DUzUAiEAipfx+CC0+pofX/YkXhvgwGXWPtAfsDQh1dsy3i6Y8ww=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123359,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3uXNCRA9TVsSAnZWagAAuJ8P/RWdCt9OFdIIMaSPHXsQ\n4pfqMALWTrC3c8rfoFSUVNbf8ytS8x4K3gGLkZqqjfUDePNVIuvlEYRTHAu1\n4k8pLYkHaTwnsfbovSjX731igEi/YN5FDjxo1UMLkY236ra2nYwY5PJ2e7QR\n4OSioI6gADZdRUKb9CFp+m0hSXV2Tyn41WPNUz0CB0lSS2M5t8PH5bzswOX+\nzrFypeupvjyS/cqQGGmAyKiVjPmx4FLL3f6wLXua+jDahQNwR/0pQxvrPdW0\nV3Kb6XVL/XWCWAmr7dGd/jd5m+2QfNDsg55m/799YoIqqA5zMNO9WoW0q7L3\nU6/pueCmbEOxRy6vpjuFRPPzYbsSMIegEBwpoovpUSINcYme0PdsheM0QSnL\nb8Awknr5oQ0df1kQGajhFu4EraTXoV5CcpaVmHvR7zTIege8uJs3djDuYo3Q\nyYGZ3eobWOTSvEj0gIrizYEMo1DE7VFYxHb1CJA71fNv+cRduSajFYBS+mY+\nNwlL6GIxbJQteDFEnFIcRYlKErkEURqfGx6RcaPWDFPjQPjdZoB4kRVz5ZM4\nSD/XOuoxBHpyiFpRLJnux7TUVDbrJJuXVJo9l3O5fcxjyDAUN0fzkrCp49wT\nGoZWLlS/7POuJyLv6S6U/ZnXIOFYG6uSZPTdkkQ2/0vd3Y4/vknP1NfYtoJT\nOvg/\r\n=w4GP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e8ca16aeebb3e8fbdabd0db229392c012c308f91","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.24","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.10","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.6_1625220556911_0.7100177805359005","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.7-renovate-balena-jellyfish-core-5-x-9b84f1be6df59d6c93318d4fd06574b1d2b50539":{"name":"@balena/jellyfish-test-harness","version":"5.1.7-renovate-balena-jellyfish-core-5-x-9b84f1be6df59d6c93318d4fd06574b1d2b50539","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.7-renovate-balena-jellyfish-core-5-x-9b84f1be6df59d6c93318d4fd06574b1d2b50539","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a79d19f2fbc18d50a577cf4837aac8d7d00cfa31","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.7-renovate-balena-jellyfish-core-5-x-9b84f1be6df59d6c93318d4fd06574b1d2b50539.tgz","fileCount":24,"integrity":"sha512-lew63+VaWaPgFNUAVhP1Hvh45rj/Vi3mQVMox4gro1N+rAZ/3WXltXrqiMa4YEonERedgfFYpXHd5RugTu+YjQ==","signatures":[{"sig":"MEUCIFbFSl4SR67U06EZM25gBIsg+XGwHj9Ic6P5DfqTlK6VAiEA9289xkbpC/ElRjFFsDFE7/wi1tJJFnRCSzRw1M/JXd0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3zJUCRA9TVsSAnZWagAAy80QAJPcrJb5LuzHv//Jxh4s\nMDKLLIqu2Z2R+UeQbJAG9lSgLhIYXq+OM1FAKhIuFKqIKsvQGQFqVujo0isl\np+TlNkSWEyptsUHolMf8Bkp2zdG330TwseUgpK8f4sr+B9H7YWIHzti62NhK\nZcxBB4prcVFbrODs5cM2AjRdtpR0tM5bqtr0AZ1eEhBU61C6WRVT1bjOX45s\nTekZVg7y0QBO95ZT8FM829fomFYpmnvWkwrFCj24y0phJ3CgNv+RCy774thm\nNgsgPT4kpOcoqaEo39cHRBCC5Lit30hz06bMeMiso05fk7hGthjTDCAuQeKV\nTAKF5UifZv3+fqjHutynaABV00QoaJ64cLTNwTrYPPjf/uaRfX/2jSlzQgLq\nlZBzMK7WihP2QBRHkEPqSSJFajXh6mbpe9wy24Gjya37gNyApc7j67EtaKJH\n+bInTyvMM2K/1lYFVRDava2uKdalUQfrRoXzvg2tLUgMugZ2+evrYlOKIdhg\ns3twwyCIVNJ0w/npiM3QLj0lalY7QoEbZhI05uYOhKukxNQOtxPcuRiI/Rj8\nwiHw2TdIUBB2GtZ4qKpK0mKD5vdR2tRHtDMTg2AI48ycu68NDXyFz475Jn+5\nLo3Wi1uWxD+Q02a0kL67+EZZSrDuh03R7Wp8pW6k3uVdPWkw97U7G5gfvot+\nfcHz\r\n=EsNb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9b84f1be6df59d6c93318d4fd06574b1d2b50539","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.0","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.10","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.7-renovate-balena-jellyfish-core-5-x-9b84f1be6df59d6c93318d4fd06574b1d2b50539_1625240147866_0.7165136590072898","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.7-renovate-internal-patch-f18b2b23b2072907eb7b2f19612c73fd0ebd0f48":{"name":"@balena/jellyfish-test-harness","version":"5.1.7-renovate-internal-patch-f18b2b23b2072907eb7b2f19612c73fd0ebd0f48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.7-renovate-internal-patch-f18b2b23b2072907eb7b2f19612c73fd0ebd0f48","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34db9a9871ca219b8d62408e3284bd4b32f8caec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.7-renovate-internal-patch-f18b2b23b2072907eb7b2f19612c73fd0ebd0f48.tgz","fileCount":24,"integrity":"sha512-q4AFnSRRL6AaI2Vv19SEQSSZj5t7kCWfHIV9qTr2l68X7hNJGXh6kssc4O1pRWwSGBVLXMclQwrw4wRylTVBlg==","signatures":[{"sig":"MEYCIQDywreXF84/4jC02ovbbQxig/qZQr8e4DWUfbNEV0HjKAIhAPyebq/fEWKeSLQp8TEJah5ZOHnn5M+FvjUnb4LnlD35","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123529,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3z08CRA9TVsSAnZWagAAse4QAJOWzK9OT3+9wNcv78rg\naQO0RZ3uXSZYYQaGw7EUGT9LIPXPYEumL8qnnEVWhtu94wHJrSjIX917oHSz\nQ6LZEyHhcFtDxChzm009vnxxD3PDR1Nodg2xER5b0BzqSWGvp4/enH47wA0T\n/wd6a9WhXa82hJdF0+rmNzd63rn3BbEXnqzF0ac1qB447bSfMW7TjKTGb7Uq\nBoqMWd9ZSD90wzS3cV00A2vy6YkY4O3AaWMvkx57KprIBAu0mex/1P3T25IV\nFUisZjsfWxsm+mR1Xn35E2iP9ZFfA1XxMtaixO2QJjXPqdSbWDtjmFcPr6eh\nvTwdfheFo0d8zMc2rY0QYXIzeQ09gUHWP13LJzJf+IO7mj6Q/ABrSUyrb8kg\nUtYT4ArRx6VhRw+K5/8Pa0y5g7/i8GhamtTvbRKpcuKLqHsFx2gEsyf3eZie\n78E7gpniQNqe6srIdrJEVJeugrsRfiylrzyD5JRP+LMjrynFekLzBrfQLf8y\nrsQ7fwavCTsqbt5/T1zlc04wvHsvVHACezpcT6VZ9khcb1bKC0P3jgsUY+SJ\n7TYWhTm5RBPWHHbxIIWZPbIs6PCTqGirk+oLWniH+otTONWLzrni6D/4ijIr\nmo2rP3u4FvAdVWNIDYRgtwVrc3Sdqa5FHct83z08juuC7dSYR3cv/6m7r9LB\nkHQM\r\n=fuhb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f18b2b23b2072907eb7b2f19612c73fd0ebd0f48","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.24","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.11","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.7-renovate-internal-patch-f18b2b23b2072907eb7b2f19612c73fd0ebd0f48_1625242939854_0.19392100781443666","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.7":{"name":"@balena/jellyfish-test-harness","version":"5.1.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a17b2616a178bfefc2e763cb1afd26fabf33d8b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.7.tgz","fileCount":24,"integrity":"sha512-kMIJOutRYdRTmjaAkOD62bdQQ7SGQkPU0r8JKdlaX96CmjTZKsbyzDh5CbQa5LY5GaS4Gdfu/dQVErCJlvExJg==","signatures":[{"sig":"MEUCIEzhhKk74ts6BbjpsdSCWwMYs0ZoT1Rd9TfI6U/rH4vKAiEAvPi8n6qt6lrHisnjr3/baPX6JP/jKbShabfc7/K+XX4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123464,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3z4CCRA9TVsSAnZWagAA0SEP/2+2wArpKvQq9J2sdlzo\nChnGqcnoqAcLsN7XtNz1ve7OdqqJMSz88O3JpqI4S4fDYdHzEzV7BzbGKwiz\ntYtgIMu3hIMUCPZ8dbFcwk0LoZy64xTsa+tPJxittwbSjNTi1Xz1J+SfRnVf\nDgKNezj1ZU1bRoElhTVazGlhCZnB+HSOLpLenBZGKxQsWRCqi3BUtSnG8sfk\nJE3d6kXYT6FH4DGuknlcR+him2vPd3aFN51b/afG+HRpo3tMcAUBK7kiaP2P\nVQna1qcyCpoFBxuQIbIRZ74R3nEJuhPV7D45V1zxaDGw6b0GjDEpzxzcOgf4\nTAA4FyIg5GEY6gH5huM6Uiy+8B7TvN3KzNnkh7GZ14ioRGWv5eDk64/wZBBG\n1H+JhByeC7j8s7361mJqbUjwy/KjV+SPx9+S883RFmR3Q9P02TCDk20m4aHj\nxOXlaxWdDRoMPc7PyFfabSZqhXxCKmQ6fcRX1iWtcgbpKaOjKQ5vTmLP8aNw\nSA8sWH8FFSN2+6TtOzK7MUGbhRpIOUdh/ZbgRAKpgciA20kEjUpKUwHHdukV\nWlN7zQ69hajogxBfIArfH/evHZVRZoNH/XKVvTb2IoONogTfWfoI41nDCNTD\nviOULCl0uCcfQIxXu88MdHCePL6Ry3HeK1eWu6TGmuolazDesT6Y92mClMRv\n0s4m\r\n=9313\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e3476b44f932de57cc5039238e32c2d31205373e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^4.0.24","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.11","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.7_1625243137611_0.2121851070263039","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.8-renovate-balena-jellyfish-core-5-x-e9c5b143ed9f68b523263030f744381e107b7366":{"name":"@balena/jellyfish-test-harness","version":"5.1.8-renovate-balena-jellyfish-core-5-x-e9c5b143ed9f68b523263030f744381e107b7366","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.8-renovate-balena-jellyfish-core-5-x-e9c5b143ed9f68b523263030f744381e107b7366","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"21addfef316f2e64eaeb45a2730d9867aa8a4211","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.8-renovate-balena-jellyfish-core-5-x-e9c5b143ed9f68b523263030f744381e107b7366.tgz","fileCount":24,"integrity":"sha512-6WsNcBjeRymApC3m2749FqZ50y29q/sgtQEdSLS7jJuOptQRYUKbGKIIAxZY+FnWwxpr+YfAjKK7rZNjrwDHng==","signatures":[{"sig":"MEUCIQDE0DBNx7Ua8qZZugTizOa8DGBU1SuP0Updlv0NnzJGoQIgNVT2Obh7wZgbtP9HCAGn+5hfhoGUJEKkFG/7IQooaRY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123637,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3z7WCRA9TVsSAnZWagAA9O8P/21K5tACyLr0XFN7MjaZ\nFHw/cUaRNtX84/q3Y88nXeqBj9bHS7cGSpf75RdfBpUziucvfNr3HrNRuI5r\nCeugmT5dJAylhDLz8FpyB1QEBL1ci2z8ncogJiepbPiESEZj4By+iMrOuLHe\ndJ6Ke0NoyHRrQ+IYK2wkoRo89DggBUr714BthD+CUhgzoif3Fcm+tbHWL5CC\nRNII1efDOkUFHUoedUc8qz/whisTOFUe4lEx74piKoPxWOkfFAH+h9n9evhC\nA5yovq87LYzKb5ezIPZlr/dmeW1R18FJUt7mZEFdZr8alVc5PLplpUC+4JTc\nDYmND5SrHyhdH33VhqRUwD8fvGBmPcCshwMX3SuJdKzhGhzpEaunwHkQ9wbH\nbE7obpW0s/fYIDSUnSYUHJxUEQHGnUU6T1X3UyC2PYOjHmzaJpR4iD+bp7Rx\nTFixK0Kj9Jin6MyeJCmo20XhzKCQfNyIh6b2PWCA34VwaM9rcnT2N1VXDXg8\nAzeBwCwmb3i0F65cX2X6j494uVofeCcunVOBUDPrMOJkvbs8uUsrQ467oqAq\nFqLGfkIZA8ZU2EWaoUoGdmyFHiYx2CY0MkowelTTyBckxq1Pi3DXCxRLMji9\nVDGZxfDL2atq87IbYjnaLXFMM/l7POMJKuMAdD6Ij61dGAV5sRVz2tPPqR+g\nY6Y4\r\n=mDlH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e9c5b143ed9f68b523263030f744381e107b7366","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.0","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.11","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.8-renovate-balena-jellyfish-core-5-x-e9c5b143ed9f68b523263030f744381e107b7366_1625243350146_0.18298829299517072","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.8":{"name":"@balena/jellyfish-test-harness","version":"5.1.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"77f34c8729d6dd08287d4084866b5ed37751449c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.8.tgz","fileCount":24,"integrity":"sha512-Zxvr9mszDqS7rxNK89OiAKEXukPMeFaDCFBxTcQ5MErgktX82bmvvSrobUqyaRdA+mn0KicGM8YNFAgXbkBeyQ==","signatures":[{"sig":"MEUCIQCNEztwCmmzG0adY7yKRQDCCkIOORryzSPyEvF0bmWjTAIgSs2e8yzmecj3pxYUG3Dr0EJooLE2D60SKYOvSvQM4m4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg35PxCRA9TVsSAnZWagAAim8QAKN3BIv+v0pCHTP0cJhy\nomG2kM+7lJrmCpLv/Bux2jupO0m/4P48jygchmvjy0pD122RabThePynwN1u\nev/5LOs0EL36m8jky3jmd4ddyPH35LZNRUv+kXwG9pARruWanJaaM0eN4mYv\nzHqVE55EBVtZpz8MFu90RsEwelGLb7WwrY0dQs9LM97y5lfvVarRz37p5Jx2\nwnJBL3cJ3cjffG0Q+ydR8BmCuemtNuwfOXRAeJrl25dEGNWBRa2Wfp5KDK6d\n/3aBPgeBQwp66z1FlTr4lZvqONtwO6gfwumXrpTtcCpM8vLyG5yMsiuyH4Ei\nVXZ0nctu5uWNuiY0YJDAC9qG8PWWelgJzdYC+kFFomTSsp5/bMN3yzYr53Pc\nXFdjKYY17yDwl46yWDNH39sZWSUzbvewiLKMOsHsoJcXIh1ngfXoRvq2hvEl\neQV+y1tGZAI1NrayOgHhHnVOfqV8iKlQkxgzKmDvbrsgVNcmncOoE0C4YJD5\nNXi71DyWX7xebEgG0fCRlRecQZtcEJd4Cla7M8MOLfUPXma+ij3m/O3GFoF1\nXRRwCOgcAyM3Cz8dQ7jG6fUTuJOwiG9wmUp2QnDC/+Ju1LnJGq5Prkv3CBIo\ngdwC3xurQOIEuVxVSo3O9t0bY9FfrEGbyw1XqNrDBLOWiW+BDNQVAj82qTBc\nGjBY\r\n=YmPs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0686c10740ffe60f5b4dcf43bac0c4ec8f95ec57","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.0","@balena/jellyfish-sync":"^6.0.270","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.11","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.8_1625265136670_0.7441592316278836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.9-renovate-internal-patch-903f643eac3e452aa157bc01fe0c0dc5548123e4":{"name":"@balena/jellyfish-test-harness","version":"5.1.9-renovate-internal-patch-903f643eac3e452aa157bc01fe0c0dc5548123e4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.9-renovate-internal-patch-903f643eac3e452aa157bc01fe0c0dc5548123e4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b4561260b43b9d8466d0a093124ae31d019ffeb0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.9-renovate-internal-patch-903f643eac3e452aa157bc01fe0c0dc5548123e4.tgz","fileCount":24,"integrity":"sha512-NHMPvs1cEQzVg1w8InQYokHIYHiw7ssAMfqTbwKRk4wJQkG59nehBl4xd6IsNMxvcsPToDWfUyiklivT4IPGfw==","signatures":[{"sig":"MEUCIAqp1alQoyxwxi1dpN/JAuFpZ3BKQb34/YYfM6rPQf+ZAiEA9Pua5AbnjtOU4lvUqYKwaAz8KWVAwwYrG46xxWprEBc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg35WWCRA9TVsSAnZWagAAuZkP/0eJmptcg2ZS/Njk8434\nqRGHjCcFGg5AH8VgKd3/1i6lUFuc/g7pNhwjC7DVXlW7W1jECeCZAtzHVs25\ncTLYUlXJKx6ikeZuLGEI86HsURd6OQaojEPH7K9vVypo301plaSlMocvqbel\nDuAkMIveIjcmadT6hcdem4MU2XmpW71zC0MHwZh+9YlbZqAcrDGwqO79gjC0\nvAsp350D5xJQlb2tnDThALZJE2/ejEjz/HrpyfZrcLJm845n/OzubzZ88dHx\nNlkYAAvqdN+9m++a/jUSNfUqf06mbI/wwANnfyU4IurTvMvdq5iCGQtex6E9\n7hMXwCw/hHUl3lJbDF+Dl+aEvwmUGLyeDqLtUI7ZN8GW1KKirC0oUDdjMIEl\nNLur5+T5aoiUvcu4rfYWmpbF5NiuwJb1tGyK/P2Y2/D2HgsWSdg7pIwg5Po0\nspslU4GtvLRO9fKy79x4FwsX6Mxkjj/3qx1tuCfH9cB8k+f3I/A8imS2TIXM\nTP6dRdQ+VcWtUPf3jD7AjC3lHYujMFLgdeBRBTapTQnhuUykmR+TsziZkG3t\niTIBZds8q+Za/V09ODxIXuC6dgvZ6nLQLJlP1/Uxy3rrSGWij5LFpIgMdYJZ\nv9VIDwj8t5RhCZck6m+M/rVUCWbV+GW5w/+f2e1fK+6ELiteQA+ZRJdawgPb\n2HAb\r\n=DQQx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"903f643eac3e452aa157bc01fe0c0dc5548123e4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.0","@balena/jellyfish-sync":"^6.0.271","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.12","@balena/jellyfish-environment":"^4.3.5","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.9-renovate-internal-patch-903f643eac3e452aa157bc01fe0c0dc5548123e4_1625265557580_0.45550546011656046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.9-renovate-internal-patch-86510459600d084cf9fff3c07d5f5d1306571ca2":{"name":"@balena/jellyfish-test-harness","version":"5.1.9-renovate-internal-patch-86510459600d084cf9fff3c07d5f5d1306571ca2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.9-renovate-internal-patch-86510459600d084cf9fff3c07d5f5d1306571ca2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41c28dcce48b2b2ab763fac3edee61d0d97452ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.9-renovate-internal-patch-86510459600d084cf9fff3c07d5f5d1306571ca2.tgz","fileCount":24,"integrity":"sha512-DjeXrIddhwhX4/d1fLSc62EsiMRmaziScXoOl8Hj4wxVFUu1Xks+Xbv+Oj6CkYSUkRi0eW7x3mDFQRbp2RAjXw==","signatures":[{"sig":"MEYCIQDmRsQ2PLItz4wSSrFqJEnQb2obbfWezYF1nb/F3xeGeAIhAL3td3/3Kbc/XLHHS9IiSb8OvmgZu9YdynV5zOj5nxnu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg35bTCRA9TVsSAnZWagAAEuMP/1UshGicSoe19aB/VJqs\nB/PW9FXT/ojDODn+Htsy5J6mdgQcgMqcH7P0rMrpqV7rzeBWNFOIl+ZSjHIJ\nL5MfC7iTVntFWIOXFEVTbemwy8ZWt6NH3APsx90RmmzT43jWIJ7tH77iQ0cl\nVf6VcuPlhy73+lWokNV6WsRV/1v/fmRvfWMhE6uYw7XgbqYgIavSlTaH3/yS\nyn0jaoGjkRq1STVNRHChBn9PwC0tyIpOtxsC+smCmrgmOx42oxdGQteEa+F4\nuB9gOXH6vLpkzWNCIzveySmXlnrV3AR8W8GHLqSFo9T4vEEfo6owkBbPj8M5\ntMhpkVpSCYLarDvCEw5ZvCxqt8KWMNaJOh1TY2iNPX1OidxYL60U/aPw/34o\nGq3Lrx8s4CNmlvwo2Laphiw7sErq0JnC/Dhp3HoKRFofIQkFAmnUx/wkvqMT\nI8E5EoVJc+8MmVsgOJzhMnrI1dCbrXfLX0oHd2zIongWHhxx89TQivHnkES/\nfWmSIT6qEaiZ3CIW0m0BCl2DNaruO8sFSEUIBqYkSJNQCJlWlV+WR9r65t0+\noy8z6kM1vRNIIEffW65CazTTMIf+YMZMZSLX+tsUuuxkp1Wd87k6tgG7F7hp\nPblf5gZlS9UdF/3vMMIyg9qFM1DDDC3pWLq+u/Az6UYtINOPfFXyhxATpyZi\n1WBB\r\n=VipL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"86510459600d084cf9fff3c07d5f5d1306571ca2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.0","@balena/jellyfish-sync":"^6.0.271","@balena/jellyfish-queue":"^1.0.198","@balena/jellyfish-worker":"^7.0.12","@balena/jellyfish-environment":"^4.3.6","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.9-renovate-internal-patch-86510459600d084cf9fff3c07d5f5d1306571ca2_1625265874679_0.9717233817826658","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.9-renovate-internal-patch-52328ec537f42e729bebd0ff874cd96fe669afdd":{"name":"@balena/jellyfish-test-harness","version":"5.1.9-renovate-internal-patch-52328ec537f42e729bebd0ff874cd96fe669afdd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.9-renovate-internal-patch-52328ec537f42e729bebd0ff874cd96fe669afdd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5fb723cfc8f7b800f7fc414dccdce98f530b24f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.9-renovate-internal-patch-52328ec537f42e729bebd0ff874cd96fe669afdd.tgz","fileCount":24,"integrity":"sha512-Z2P+WwEIgj1AFRI39MufdJIQNnOvbYYSUkFtEh/S7KHr8GI2Pw/YbGAlWv96+SKLA4BU8vax1b+bsAgI/rcHEA==","signatures":[{"sig":"MEQCIFYcuYT2/E8bRL767qwVYqwuvY5K+pN5O2uPvbZva/94AiA3zkiLNTgNDTV4PMAX5fMkixJr1W/5AEAe0rdxKKuG8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg35h3CRA9TVsSAnZWagAA/WsP/jHv9+vxEU3/svtS7xp6\nmi2zxRTWsTC96TH7YW7vW3kCEVtLwYfVBcilBwbBslCXJYId43aWJtIodbR5\nMsB9A+VtRPsB0hBeQKBC0FvoCsL/Lz/Dg7Ar1HZN6zygQd1JIwDmjoHpowrh\niPe372dQf9JnIvlnhS0ICapAeBQlUo08OdyQ1AfjrpjG5s6wh3l3cX79SflT\nAw1YtnxFZK62auOSEtT+TzlXySlubZmFzdaqv/zY+6/AXKj+foMXU+zUsNle\nbn34Me+QD8a7rB+AhEQVCfrbXVnPGpWO9u8Y/5F9UczrhsY71Pi6/XhR1rSZ\nTGidIl4+DSZRbVMxxmZpg6ctQhBGcDg1jU+HzX63JCXEFN2vaCTTfMjC9yE5\nbtHtqgiulKd4/ExwdR8kwYXMHBA8bCsZeIvRQp0twCJUQm5+rrPziYApsf2t\nBYmMyT6YrUH85jKOGJFKdoTCS/P5erjhv40pJngmdlolc5Enj8vUNaZr2HAf\nqlWHshbf0kk2e+lI7SgrqSQHUxsd//7PXNpQ0pmXGUxAN4Bdp1mp6lvulu6F\n6UsnOHJhQpksRPv12Gejlh1z2qsq6+TGIQkRFVppOce+4eqHtlYfu7VCFM9X\nf0dkOY8/tWJyAVA2dSRXuAPfkGg5OTJt8XrzBAAP132/RbvQ2zS13sZdARxW\nv9iN\r\n=/LJ8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"52328ec537f42e729bebd0ff874cd96fe669afdd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.1","@balena/jellyfish-sync":"^6.0.271","@balena/jellyfish-queue":"^1.0.199","@balena/jellyfish-worker":"^7.0.12","@balena/jellyfish-environment":"^4.3.6","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.9-renovate-internal-patch-52328ec537f42e729bebd0ff874cd96fe669afdd_1625266295273_0.10516471856401255","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.9":{"name":"@balena/jellyfish-test-harness","version":"5.1.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e61ed35e3c7f9ef3672209c1a93ec095088fa33","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.9.tgz","fileCount":24,"integrity":"sha512-6QxbP9HGvmAzOwNH8ebG8Tq+6xAJ63rA+h3GTZg0U+yfWvaqwBbERVIDvt+AOMvVORfqkQQNdYnlsvoHJXVdxg==","signatures":[{"sig":"MEUCIQD8smFXNuwgfBaI6clDelPBRwsiyou5CG6IF75sFzxTEAIgbjvsGsMnCJrYVvFFo4PeQb1nqFA6FbE65PwhlaJIIns=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg35lRCRA9TVsSAnZWagAAYHcQAIetnYzFtCytMyVI/OhO\nWhJrTg2BP2QVD7smWqauYOcCX4e7vAsxCfbDtnBeZnSYCapkrCT26NDAX/d5\nAWE7gDHxWfx5vvz/saqZBw1z4DCAQQQKLDhvuta+5wtGiLQQhy4mIxhRM9w/\nyqgaqaxLBI1KqKs5OcA0n+aKu3dBrlNWN/0fJSVg6OW4ma8yb5pbH8uW7glS\n2PWozGafacprvGcBjXTKIHBJhxGPA7aeWBssUMcKkGTVZrz03K3d2Oq9DyCo\nfWqWPeXUx0+zdTKNaawnpl93EjRbrZtxau+B7bWNdeH6py99orqWwQxgl5TH\nd+81T9XuO2f9knyf9RAKFYdJ9i1nJ6ej0sf2JcWi4GLmhslTKOLV5n8Gjnra\n87Enqkvsx9dyYdPNJ7L0qLzHhCc/3K957wfa0VtU7cNGxJxTDvPB+KKhPXVi\nj/itcWUKGF+KdD1eQhjECGpsn51EbvwL4eH2scEIGTKa7FsRKtnczs0SsviZ\nTfeW4LKtgo2NaYEm1aNeLZTu+Vdg0voBswrYHmCQmRVNjjccjDTAPArkO4aQ\nPPo4Tx6oxfMP9BTOTd47gXcg2mHBSSyqPA3/KN8YMbfgTCoPAiuUfrQXmkiv\nshUn1BNNL0eOTy+22KKMqO8TuufXoWNOUF1BNi0iv12XLLFZTE03BLNBYddC\ndNqA\r\n=Y0Vz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bd81c07e98bea86e6282debfb0e4ecb020287e88","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.1","@balena/jellyfish-sync":"^6.0.271","@balena/jellyfish-queue":"^1.0.199","@balena/jellyfish-worker":"^7.0.12","@balena/jellyfish-environment":"^4.3.6","@balena/jellyfish-plugin-base":"^2.1.180"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.1","@balena/jellyfish-config":"^1.4.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.9_1625266513218_0.15042037562311017","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.10-renovate-internal-patch-e3147f5a092db65fe631bae269ed1afde3ebf406":{"name":"@balena/jellyfish-test-harness","version":"5.1.10-renovate-internal-patch-e3147f5a092db65fe631bae269ed1afde3ebf406","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.10-renovate-internal-patch-e3147f5a092db65fe631bae269ed1afde3ebf406","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15077ab2879f9a72c0f67d544fe425469061315d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.10-renovate-internal-patch-e3147f5a092db65fe631bae269ed1afde3ebf406.tgz","fileCount":24,"integrity":"sha512-feuPwAir6UJh5Jy2uwci7cB55euv6BDCKIJuC9iKvh1JGOtnEah4cfxcVreB8UXlVyP8S69zbSSEWzUAkCKtIg==","signatures":[{"sig":"MEQCIH5GgLhEu/FbbZPjb8u+jDyqV9B9HP915Vf4cvlG9atDAiAkreuFOyZiGZ96+aAg8V/y7kkXiSIvXOi7w7KPoT0hOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123774,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg37zCCRA9TVsSAnZWagAAiIgP/2t9e5jvMR4jlE1fncPQ\n8NGBZewT6ZUsXrtQzdoagZEXfMWzaNe4/k33JiclqRr60qG8u34Y5TwCyZFs\neRWDssnXVH/qyYXYQOAZ7lS+dNfRAEOfPoL146CY7V+GcYrl1lv21ynvXf9K\nv05JUifpMukvgqkbaAH+E2hS3+NOyo3/wscPWrIck03r2q5sI96rKi41Ehpw\nksQuYl1NLOMdNJ1SlSjVDC3ruptwtti3GSdXcGHPIXfoOnGmv5rjO2JcPbSH\n9qwl7wdDaKWHc5bl+DHwHZy176FI4qXGgrV0hRsUqe3sdGji7FMVErDI3U3w\nrMf/WcI7ZMIfbs46NUU24MHQXK+eLq/Ee6dphGdIeq1lD4h/CYZEok+QK3J0\nh40re9DXG0cdc3YVv0GsC21t5x0hMwS6cDWrMBr7aYuUMDm3HAy6wyvuKB9C\nIlzfZCl6GrtmQzkKp6f7fIX4yRjZqDDTXbYs/x/Cc0OOEP+C0t5i5LvtISVL\ntbhn11i8k7pN4Fv7BW+uWTb1YBvTG8le62yPLiJmzUoRAJECCr/eqbyCDToH\n0178omRp6r0FMaAmuDKTUMOBq1EkeTJIcV8xyljdbtzkw/9SNKKF0q4HGv5l\nUZNZGUZOo/nTzrXnGJXA/Fqk0fXrTvg3sEVwnXFkhKTv7ewS4B/Vp47mAWCq\nvEzI\r\n=QAzM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e3147f5a092db65fe631bae269ed1afde3ebf406","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.2","@balena/jellyfish-sync":"^6.0.271","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.14","@balena/jellyfish-environment":"^4.3.8","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.3","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.10-renovate-internal-patch-e3147f5a092db65fe631bae269ed1afde3ebf406_1625275585691_0.8792640800901261","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.10-renovate-internal-patch-1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8":{"name":"@balena/jellyfish-test-harness","version":"5.1.10-renovate-internal-patch-1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.10-renovate-internal-patch-1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ba76cb8d53630c8b7e34e07673a801eddcfea92","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.10-renovate-internal-patch-1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8.tgz","fileCount":24,"integrity":"sha512-EdJd2vXb7AnIC3j2267eLh9QpjKbF+XuquWfBEljp3BCmOQKLzjosYJKKKhIY0H/19FKf5F/RI3Xo1HX3QMjcQ==","signatures":[{"sig":"MEYCIQDxVFTFT22j6uaO0u7D6Kv8hAwebG4N+YNiCw2xpG/WGgIhAOhp7qnYvqrfbH7GOBDkCMRv/us8BTLCzhkrSMYCELNp","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123774,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg374BCRA9TVsSAnZWagAAYXEP/jrqg0JuQQzGa4UOkCFE\nUlDgB3Ge0C8b/dKWJn+7Pp1kPA3DMmGAeSwBdzND4M1LAk8YuWmcVCSGCqAb\nXfeWrZ5EjYvJ74CD8MjFf2axU23EcWohmG2Ie2BSsiPnyHQVC4QBAtCfeqiX\na2WeKEAtrFJrtqEsbbgFJTehGclYC9qQGz9nt47PbGw9bDZRKyjs98KlchDJ\nE6/PLJvGUeSz5U3sSp2W2B2dGE/ZV10HdFOltWoqNUU6mxrqbSIjQCfXVZ+z\n5eiEOoIDsd2AmKnwlXjQSBS0eA8xOckjnYwq3/9xiv8kRxxVSIgCXt9HJsXF\nE2tQM/mQJbVPceg/YxF2oBrMIigML0CKd4zYw5RJUpzM/u8tNF6ITF1dRRZx\n6XJr7vsZOxDo9R7p8Qso1WT8XUnzmKWNgldjCoDyqqheCBsrOtyo7AyF3i3k\nuD4OnTODX0Nd/YDBoV3VgeADVJxPipoDFxy+5AfQRQBoP51rcsKzwfnmHV7N\nceGk9VRiDpKZ0INJTAnTkW5CgXqdtBtrHO1ZgICfIOrxcWwIRxD302DdYUtO\nOuyD8q8J/Ho0tB6BUe5dvDbB2uw29fR5zGgK18Zx9hHDioNyPK1E2e7jRqHg\noRjRd2WxfZcXcx/O+hQCEH/4SAPty+7pWaQkS9CaWRUH/0kBhCCTcqKpn6b2\nvgOz\r\n=yhnf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.2","@balena/jellyfish-sync":"^6.0.272","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.14","@balena/jellyfish-environment":"^4.3.8","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.3","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.10-renovate-internal-patch-1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8_1625275904335_0.5491556530018602","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.10":{"name":"@balena/jellyfish-test-harness","version":"5.1.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85d1bf87f48a1fd259fad86e41590e0906de4289","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.10.tgz","fileCount":24,"integrity":"sha512-HmtliFGA/8xfQBRAJNytZ40LXD0BGMSYG48kMjBFWW4SkutXYcyd7ooJ7mXbrmajNO4Pinx+ig3HCtU/FNQrzA==","signatures":[{"sig":"MEUCIQDhf9oXJGO5L7uvP6zV8W1AioHMV1tHne947iOukjaGGwIgfbUvs9qwIes8MGZfGDnEwHFjW4mPMjGDyRYYXdjrL1s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg377qCRA9TVsSAnZWagAAWjIP/12Py4j0vcy3Ve3ibEro\njbjKi/+oDm+d57kSzMWNAZFHFtU1vRqhHEHOfcctDhhhZHiclHs86XoCd6LG\ni3TLI/Ip+YFKoQNS27vmd1a9Om/YarRWR7rZ3W1YmAcFTDBxv59W85LAd6h3\nnOT0bVYLt50xdL94cfXJy1uGT88wqBkorlI2XY/nOPOZNXUV/vb7kYIP+9ow\nVWxnIrLZumJrtid3PPb5Ziu4gOOa2IDkXzEz8UmnMZRYrnBBK9O8igOBM0LH\nQUyYn2RZ38NQR1PIyeydArbT4BsiqtCo5xtGrmjX8mDAvfRxXQeIWhau2ZMi\nCFT0tSbamXDmTFGjHnoDvqV7MtTmbJ7Pjjj2v3khZAwejeCGw34KK3zrc+2P\nc5yG8jotKZAT/kPZkV/gruZSUj2H1FUV6p9dpHg3l+yFC23PZDLRAy457K/q\naaJpxxmdHy8DvkXWJAv6sPXY5NccQ0Sk6JDNO3poucG1Y9OAMmHIdTEgUzTU\nVs2nMj35OQQQy0jBCVNnl2SMhMKW4lBkjdJ8FIMsGPYQS1OJxEBjsLRUseBM\no4nCL2V3SzLN5+y4Raun/YomeqGoHov3PQe+ha3DeNR3fn3PdU2CXd+uVzwX\nT1ev0gyWk2fmPf6Wzn+Or9lFR4269JqmTwkJTjRsAfMHM4xW6g5V8q1RmRFH\nEXml\r\n=OHmJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2423aa25ec4ccf7729cf91e3d469bf442fe87c0f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.2","@balena/jellyfish-sync":"^6.0.272","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.14","@balena/jellyfish-environment":"^4.3.8","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.3","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.10_1625276137699_0.6450465601831454","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.11-renovate-internal-patch-95db8a011a7dde2d5804c1212fe7ba2f1130347d":{"name":"@balena/jellyfish-test-harness","version":"5.1.11-renovate-internal-patch-95db8a011a7dde2d5804c1212fe7ba2f1130347d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.11-renovate-internal-patch-95db8a011a7dde2d5804c1212fe7ba2f1130347d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6dd56e5a8b957b5a671f11e2dadb75cc6f98664","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.11-renovate-internal-patch-95db8a011a7dde2d5804c1212fe7ba2f1130347d.tgz","fileCount":24,"integrity":"sha512-BJ9QgLOMkrRjPT5T3dWDmBJTLuWDTJJ7rZAZnME+v4/G3cqlO8f33m+96/UhtQVtTR5mqRHUcN2XKF+GxEjxYw==","signatures":[{"sig":"MEUCIHsDb4VIO+BrmZYerRWj+1h7ukikekwfl9ADkU6K2SiTAiEA88O0MI/ijO9/7LrRehXRmMdLNpTOj+wJLDa87/GZQrg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123848,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg37/4CRA9TVsSAnZWagAAFhMP/0yfABNLsIvwk0f3/dJs\nA7KWlRU2H2exxJA7Y5/WMLimxOefKhH055s/FVXXB57QGwKN9TbhrpegPcd7\nK/qOhpjC9zBk7NosOu6l3nWgqtZJbAvCKQn4XbK+DzqM+HwHSZRPw6Q1cYyZ\njOQRTzAJQxQO3AqAnllySHrxbbpaDSMiauHK1iFJtPPsHh3VYh72I9N8EY1e\n7GrPKWwEfjJmmZ7KcbA5+Dp3+pPCX/f923H/koII4B9/A2+VeOls4eS5BFgh\ncczPFZpH8BdTk4hsVADVlzvbB3njGZs0+DYVeMX+K82mg3r5C57oVStt6zUg\nA1DaMic9+5KqBrTnVEaazkUsur0QcaJA637aaXiyug5MCsWHUSX4Z9pyiFHz\n0BBe3BAxVjJJhdffgxHFgbW0p1NNa9yQkbNYsFNgfmRB1pj1wyqqwVxVi8BV\nl+PTCTu2ch4XmXE9qtm9/EsF45hZdL+/PDlFfK0YXfZJKLSQg5RYEN3AHs5O\n/n30Yt21qZmZNQprEEN9x4MC0ekkqrrIPgs/0q7gan+tauMsLZ2vIsiOsW2I\nSn4G2cwoCf0ZgfBs6rtnEZDjhR7eCdiXC2yxiXPGBppaBGUsi4LXEdtgIeT/\nVDJQn7zNIufYJu4Sy5xhUoM+/4u05HBU+sC8Zfacg04RPzbGs86xEW8Q5lPe\n/NLj\r\n=YKZA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"95db8a011a7dde2d5804c1212fe7ba2f1130347d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.2","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.14","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.3","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.11-renovate-internal-patch-95db8a011a7dde2d5804c1212fe7ba2f1130347d_1625276408468_0.03323624142487569","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.11":{"name":"@balena/jellyfish-test-harness","version":"5.1.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe870440abf5e0595145b88fe98e8204176eeefb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.11.tgz","fileCount":24,"integrity":"sha512-xNs95UJeFllpKiLAbV4rzpnq35+H2hbPZuDy7NUF3j7G/3I7g2rn4jGNJWfWBiaYK2uLKiwSdjzXx3aVSSLkCg==","signatures":[{"sig":"MEUCICW8oYtdtxl5DOLiWj0FH+hNDYr4FFDXTdIny/R+K8msAiEAk6QCmzuXqB4BpCPnDpiZUgCjnt8wibGtG0eXXJkzJ5M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123783,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg38FlCRA9TVsSAnZWagAAEU4QAKCKXYPWvi90YkcP5osE\nF5WMXcfbiJL3bB+DZNYIos3XlHsjPEQOuiLW+Jp2t5Kdtt5ZR650sn/UJdpx\n6vTX2O2KBFIha4ZzVbmt2uFuGIxnxcB3QsvuWZYsiYUQHDgRcKMz6AxAQgIP\nTaAcBAhcT/LBx+EnkGMflvSk2703Rk5ImVcIIIjJfSiV0+EJ0zOV9YicB5sr\nRJe/Ss2AlnGE6rO6OcfiGlikndVwClgx1E7+l8deHElWc/CE09RLG8Z6gQmb\nW24fasyrUYB3+2uyI7jaZqG94/dFsFzjjpVLKCw9H8FeQtq/Q67UqQlacFNK\nVakjXHAL826S2KuwQ1M0LPN9xwKmPeq+UQLjbHg6QlVOdu0GlGqaBQo4mb4z\nAFsaTTlplS+cKs4X9jTjTN0CQBiifEG9iyTT97kx1ACMKBcuZCKl5pWZj7Nx\n8SECtm2AmlTxBrl0TnfgvU8+YhtNcI8WCuJeqSwzIo+soXzzHCNNzsY3DCKs\nr99IAdjVu/f4g6oxPzp0my9ChQrNoRMfym56xVZBvIgPDdsGuUYXFiF7FMMQ\ncRUKlBwVxJxkgXdUjoIlaSjVEiBh+F30+FKb4br5hTURtR3Ee5+LijY1/HMS\nL2+7wKXQXGDZuCM0Czkz28myqQfTZzv0+qD1hVsi7dzltyjv4h9IYGNBMlD/\nL87B\r\n=j+hn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25c4e72000ccd1325da6808068bc27994296b89b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.2","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.14","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.3","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.11_1625276772903_0.5786576479580052","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.12-renovate-external-non-major-4411d0364d7d5c705eb576d39cd3aafc6c7b32d1":{"name":"@balena/jellyfish-test-harness","version":"5.1.12-renovate-external-non-major-4411d0364d7d5c705eb576d39cd3aafc6c7b32d1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.12-renovate-external-non-major-4411d0364d7d5c705eb576d39cd3aafc6c7b32d1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b6fcfd4af8d4ad65839acd850e9c7b076531260","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.12-renovate-external-non-major-4411d0364d7d5c705eb576d39cd3aafc6c7b32d1.tgz","fileCount":24,"integrity":"sha512-tB6y07N4r1raiU6uTrH6Q22AnHAQXHBwgCpY9MhVFU+Vq3n5jj820IWkQ2Z0KYVWDK7wxD8E1bhS5pu8y2Gi+g==","signatures":[{"sig":"MEUCIDVZw5FKRbDubR4WH92FwxFgxzGPQn729iE/pflfbidbAiEArwi8wRFJjeL1mVtCRb6ib5zvr8xg2Ha5gpIL6VmAGms=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123930,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg38IjCRA9TVsSAnZWagAAhOIP/11y+m2Or4t+u058jf+6\n0UP96hubx4NlZ1HOri3CuAayyJVSRw+Z4BlFZ1cVU0QO6jCyVa97JS3LZb3v\nfZxcVsK2baWWNlhU/6emmv4cVdHbfaR+ApNEvZVqqvobAy2QGOKKrZbF9g+l\np6Gj0Krau7MiqrQf+P8Tzfos31VhBkao5HnAmr128dx6GmLaJmMpox5AMNu+\nJ4tU/CJ2o5xKJHQnM95vPLS1eEcRUogBgzvUtVNRVMMaRqt1yi5TLQfk2ubu\nykmTeRz8eK6wCho4yJcq5JXFy15J9erflTGG01P4MQ8AVFpjwbQrH/IYHiml\nAkcSyxT5rw7644TayhVmb3eNjPe9iFvhM2rffP40qjJE0VR4v1+rDpAVonC+\n+N9HD/2CbmSqtOrq+0a8UZsAE7uFpN9lIIXJwrxDJS1N1s8hB2R0wtBRV0AQ\nE4F3s4MhhmySRpg/bcuCEJQQu++Hbt3XNzBG0jbOZetd0HOl4xwdvjPWN2o/\njZ7OmjW0sJ4y3DyXlzYP9ljplnDOUpeWym6a0l3Gp71w/xse1WKpB9Vy4eYn\nxhD0FQ2PeXn4O2xEej2tkSdbG4Ot/pyB3OAzGag9LqxCHf3n8ly59Wy5LJle\n1D/n6tEkOpMqUs8XVKdmlrV91+x7wjF6XZyS9EjI3PQk3+6fJbJ7dfY/ATK0\n2Tgl\r\n=4kjT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4411d0364d7d5c705eb576d39cd3aafc6c7b32d1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.2","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.14","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.3","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.12-renovate-external-non-major-4411d0364d7d5c705eb576d39cd3aafc6c7b32d1_1625276963001_0.4074335961318021","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.12-renovate-internal-patch-0e18dca8185f8cbb99dfeff7387621e0af7d0d13":{"name":"@balena/jellyfish-test-harness","version":"5.1.12-renovate-internal-patch-0e18dca8185f8cbb99dfeff7387621e0af7d0d13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.12-renovate-internal-patch-0e18dca8185f8cbb99dfeff7387621e0af7d0d13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e890381093c763bac7c6f9eae2e59ae67e8e4506","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.12-renovate-internal-patch-0e18dca8185f8cbb99dfeff7387621e0af7d0d13.tgz","fileCount":24,"integrity":"sha512-zRQr1vSv7DvC7oJBDaDccL/AKd7kqow+ddR0CMXA4rep+Jdy4zSEZy03n33hE8Q7+Ef335AN6gbhK4UxxNio+Q==","signatures":[{"sig":"MEUCIGb7+PhR7jEFBHYoPcJXqjzWauUATeW1OSxVfm/lYsThAiEA1xgbNNS2Tim/SBCLG01n1U1exJBhHzS+UIt2UJT7AL8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123922,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg387hCRA9TVsSAnZWagAAzTAP/37N+ZuEeDoHIoCCX2Sd\nNPih1WyVk5joSsmpYdK7L+nppjjS6jW40p4hPbfHW+HH3AoJM8xg5BobW3+F\nl+A8UZ0BSsg8LgyRQGQIM2RRjeuWlfQhlXzrdOmv9eJCQ+I4SUpesBOdv7It\nPMHBUcrL1spqlz+/tdLWipXlWFqzgu3USpdwvIZ4ge8AXw/pQ899GDuECVTZ\nT6X/XadHcqBqkr7pWW9eGTPmwnzyltsBTo2lwjOdAcuhCm4KB9PhhUm2e9XG\nG8CfpH1ykqXjKIGdniY0PC3Yf0/EJhcXxK1H0vy4KjxZOp0A2gj030fx6UpN\niPENB3RVITASaw/kKHsYvucg2OhH6ibafNTMv+3IeE7nCv3TtwUm+SmxEcY+\nILCdCnbhyAK87cuvjibLqnNIOZwByFGcoOvJBQJzXyvNYdTYfDekqK1Zd070\n93utq1TDUBv6Xunrw4Shp/GEIG8dN4rHLkB0/y2ZiUTr6UHMtkA93+VX7/79\nyWJtrjpwhdjsCczLfNHTx36nL2Vt0qJ5HB7eQnaKEYOHqR6TxdS5AokV/eb+\naidcbH/3JQQH6Z+GnxWpwIjGP/Yg9PTYB0FmRFox2AUYLiYrioRjYi/jV5Be\nfDJ4OLg1PeXOTLQ74/nZM6Dcncr1XPmUrjpOxpe2EddRt/nmGqGnZzlGssJT\nVCYB\r\n=phi8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0e18dca8185f8cbb99dfeff7387621e0af7d0d13","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.5","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.12-renovate-internal-patch-0e18dca8185f8cbb99dfeff7387621e0af7d0d13_1625280225204_0.8707487737006971","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.12":{"name":"@balena/jellyfish-test-harness","version":"5.1.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f15da5bbe359b4d2857386cf48dcfa91d3b47ee2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.12.tgz","fileCount":24,"integrity":"sha512-ghJ5U51JZ6ADWWdJ9m1PuHHMeqzLPRyBuvqMbzbgUokuTArOYcKOFqSQedpvX3Dy+ok91HLVHwU6VFY8Wy1xiA==","signatures":[{"sig":"MEUCIQCG04m/1mDZVmP9hKSUX4Xm5xlW7/0XxsNURn3Gyc0hhwIgTTP19j2BrfkFhRw9AwisdxFGVZIVeXRAkh457XV2yZ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123857,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg38/bCRA9TVsSAnZWagAAuWIQAIfDyvvQaoHs49NPq50r\n/gY/yVrbTqpZLY7b8txH64IOzs9fkY0jVbnj9DX8Po7nysg+t0CntziquC+T\nuJGYEqWBiMuUIsHfT4iAT26zyWAh2TRWNFL4QqtVttWp1X1My3zugaaDIsWa\n58SgkBD6wZCQhaHdWNei5A7fovmRJWNsQptRN/AhztkrcPIuEthkcsvNEIKw\nRFlZd0SOTadXhIkcccBW2LUR3I+XBcz2ZunTXNRhySBWquHdoUfhUthPK5DO\n87a7rbrAC0eydxPM30R+kdpq1biJpcTfTIMN/nws/rlK02gz7yrScZFhFwOz\nVELB2CNB/K1shKE7NxxpQKHNqPZF4LxW+CEaeZcwgbFujj8QbAaeDpznEQ9O\nbsJknDFGnw9B/oSv71lGojriaTkZbC7RluRyCcihI4ZvmoZRx0E9BQRaGRRB\nj57Hkoh6IrlWOlof1xUMGZrWdz5kbo8exb4ejrTbb2Cdw7B81TNrbJ2QXvBb\noM01zDyCT2J6QKp2aqpymM4dsnHKcsWX9FEp0KiMDAKImqh2OGGVcivnzLaV\nKA/3iAmDN3j8Eldv2IF8UWIJfyk6by6UHctDNQJLqqCZDn4ZxPmCR4xpGkpP\nlqHxQoUWuPhV1wX8Js2z6gG8IFRXxRX2oX9cnBVzMofU22kTL5u3mL6JmKxU\nRb/E\r\n=HMdm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7ae6bad4d73a0f2fff3dad94c76f8820097a828","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.5","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.12_1625280474651_0.42860135058394144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.13-renovate-internal-patch-959b8711eb62004bb622876a43b1221348a0d5d0":{"name":"@balena/jellyfish-test-harness","version":"5.1.13-renovate-internal-patch-959b8711eb62004bb622876a43b1221348a0d5d0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.13-renovate-internal-patch-959b8711eb62004bb622876a43b1221348a0d5d0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d77fbdc5bec2e65e082af80ccb648dbeed564194","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.13-renovate-internal-patch-959b8711eb62004bb622876a43b1221348a0d5d0.tgz","fileCount":24,"integrity":"sha512-pD4okejJ8ITgmf1me0eUwr+tDOh8iKa5mpZQTjsmgaCghkkTkC5BpDEwIhILN9FfUdBymDZ796FRAnSE79FaEQ==","signatures":[{"sig":"MEUCIDLgd5UKq+9v/SCnIm8g2YxmFi7cfoZHgVUa+w6Lzj31AiEA/Sd2A9BLaIHkxKlU/8ucH2D1wLiczHg99V2HTN/N8uk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123996,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg39DMCRA9TVsSAnZWagAAUMcP/1c9PFwnw2ftVaS/jiY8\nEMtFwzYZ1FCUJCLAnBWglXEoYGH85HpZjer0mLVaKexUSvGIGVhp2Czizyep\nAaKZltQCN63bb3L5xNU86F8Xu066oJdnkf/sRTVJKCWEvHPJpMtZkhloB+9g\nwFxqYXWKuoec9EneucjpqEyrAxHV6glK8RSrB2D9xJi5Q0K2F1oInu9ogoqx\nYnWOM6fCC2vDVgzRZoAu41I/gWoGIcOCSVkEbuhNRYT4K636YCA9iztF6Til\nQWRYJGG6a4kyEyOc6u8H5eveKCnsNnXSQHGtfL2aVGA5F3gV21zZtMJ73Q4z\nQbvRkrkXzdRAzbrZG4gpCuwDQKDsw5uajjJjncJS1Jy7twb1ejNFJ92u67CY\nM54Y+NAtb7yMCOXkF3vdOA5w1BmMp9yWXWfqZfKSNL9c22S2+aD5lAJsKm13\nn4egj+1eZGyDLL6uWh/0IPaU/ZM0PUiGtCks9o4MWj1B01AjCSdRLi0BuIhF\nqDcz8NERPv/AUd5yoizDHz5HeepHtshS6iWS/INTdwP783+AUUJyVGEJs7xV\nUCJ6Gm7OGwMYqqyrIQAjwgh2P3mFXUqcU1iEcUlOXz2NgntVdvuCndBajO+w\nk64YZLvGqf7zYZjvz0yytSLVJV3hfii2WNkjpToQbTAuJ7lPKtfB7xpJGEY6\nlXlZ\r\n=iLtW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"959b8711eb62004bb622876a43b1221348a0d5d0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.6","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.4","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.0","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.13-renovate-internal-patch-959b8711eb62004bb622876a43b1221348a0d5d0_1625280715584_0.892950812476285","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.13-renovate-external-non-major-8875402796b325e4bf8e37e1d653cc5301431087":{"name":"@balena/jellyfish-test-harness","version":"5.1.13-renovate-external-non-major-8875402796b325e4bf8e37e1d653cc5301431087","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.13-renovate-external-non-major-8875402796b325e4bf8e37e1d653cc5301431087","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"055eae0875ca17122dc1e168b311f4552babc556","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.13-renovate-external-non-major-8875402796b325e4bf8e37e1d653cc5301431087.tgz","fileCount":24,"integrity":"sha512-dQNABidVzDzKUwO4ZdC8WtbsJBRDsGrO71CnCAj5sw4ztBs+oPvJYyUaR8LV/7stcuTRGjIJqaoQvTC7WkC8wQ==","signatures":[{"sig":"MEQCIDo6B6u+FPGQXPoysMKkIxAZiLEAsRN/YKkJa6F/a1qHAiAXSPa75usRVieczKExs9lM5uTnS212TCrYGNkFY6Htbg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg39FtCRA9TVsSAnZWagAAR+8P/iGiPs6cowhYg+UVZFG6\niIgGzS/SbXRo9f4HnT43l5X6RFiHHbWasdEpTTT+C8odBJrCUYi3IJBti404\nRwXW4Qg6aj7JJ0Cx5VviqX1ja7jMgK5tz/yHLcPqZcOD/TDsZ/80g82KEzuh\n0tNZBqL0idiw0WYPijdHJO5UHbnT4oGtSTcwBN+PWudQf7iRoL/KjtvkFpbv\nCZ+yCa9CBat6D9aaYIQy01NSFU9keIBPtV+KMTtU2ggAeA29ZhPGbaCfKXr5\nQF4kS83JFlD6E1Psq50mwcgea+MqJ7UnC4WeLpFr9c82rqMEnQeQIdaILdl8\ncR2SprHnbn22pOBt/7ColUhooEoV55L0UcetDMHO6V7WiwVEdk8CBEAx4tQl\nEeLTDVdIxmWpgZJJO8+jmRhcG/zPYyPj7fdGJBPVQN7RlvVqjLAale0/m3yp\nTqtNXY+2IDuMRrAp4gl2FiGrwPK1zJKIz4fO0lxQb374yBuHmiLSgQth0o1w\nX9aMo3nUjBHtlCZY2JIbW/CA10Xn+OoZQmL0/9cx25ugNMcXzZbplE0oUU1N\n1iIEg2zpe+xEE2kZ37zOh8wl8330vFBxhSSfjdOrcnRddwCQeS1IynHaq066\nkYj+Hf+rqev0qe/SjZVFehdtKZC2lBJYjYxJYu/fmZTSdH6rJUKtco/Ugho2\n2W5B\r\n=7LJp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8875402796b325e4bf8e37e1d653cc5301431087","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.5","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.13-renovate-external-non-major-8875402796b325e4bf8e37e1d653cc5301431087_1625280876737_0.6326386926228493","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.13":{"name":"@balena/jellyfish-test-harness","version":"5.1.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"594095957fb7137cf7bea0e04aa4de76f0f05ff0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.13.tgz","fileCount":24,"integrity":"sha512-sIKgX8QdMnuI4feeOhmMa5DQaoN3dlwJELez5CJ7K/RcdpzktFpyAa6XROC6eNnWkVmjYwIO58FxpYY/lDwadA==","signatures":[{"sig":"MEYCIQCux6mFQAwj4atwqQUPQoiRf//riU9obiImwUriLut72AIhAK1hSzmTryG9UVeaRIR8ZJDK2VK9zoWts+Yiklz2xIxO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":123935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg39JWCRA9TVsSAnZWagAAkh0P/2LXrCJhzgw/OTCWFWwG\nbZUNMojxRLTH4ugwfRlYm5QVNtKHKymUndvWcpRVWBeSW46QRrdKKO6Amogo\nQmYR1+EVDoJ2yQnoPrmvORfU4Vq0OghUof7Rpqo8D6IjBzvrsbhAYW0wQmjO\nf4rH1F2znJxEkzhn5yv59oFeoZFh2lKykAWA36H5fZPlKBvohTRB3lhNaiVM\n0/zcff5dN8V6tPLgousFuROW2tpF69NAsQuBnIwM0avZLueqyxfSsumU5AvE\nL1oC74h45IH4z22VJDKZI0yZdRWEN1SYTxUd4SrmtuqRfBqKAlvCq45j2I6v\nCAl0hXZ0mKfxRdkduhy1qfRyUArJQBr5j6oMuRdvmLeKpr0h7oK65OJGMrUt\nc7ZJWNGI1WymJTOmk5FtWWa8WmtnzrIWVEXCbOval/MvT3yCGvcrrx3mnDXU\n2KGHDlL4m44vhnoEhwd80Brxdop29RCOPgpPBgUoa36FWZVZFJLwRoQbHyz7\nR5IyQOFp1T7OoW5XXgxSqfRLzR93LN8sGbbwmihXpGw4qzryFU8u0I+YQ2Yb\nz45p3IF63Ty0d4FGp86YpqYE2p4CUey/bnEFIdR8Cni+PEtoOHJ4D4c3O2jc\nkziYKVmaDOBf9CU3R2R8zWBmVKG2xEP7Hx7WZSSpyVe6XPAeDF790u9FcSVA\nw12s\r\n=n/6Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1a84281d626e8c4f0048b4daf60883b138afe4ad","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.5","@balena/jellyfish-sync":"^6.0.273","@balena/jellyfish-queue":"^1.0.201","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.182"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.13_1625281110415_0.5770946418282474","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.13-renovate-internal-patch-57e6719c35c001d75a0f69af00704574809d6b69":{"name":"@balena/jellyfish-test-harness","version":"5.1.13-renovate-internal-patch-57e6719c35c001d75a0f69af00704574809d6b69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.13-renovate-internal-patch-57e6719c35c001d75a0f69af00704574809d6b69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7fa880b3a08f9c4c3a3504597c239260d642e3e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.13-renovate-internal-patch-57e6719c35c001d75a0f69af00704574809d6b69.tgz","fileCount":24,"integrity":"sha512-A0ufsV0px7OdUC5KJ4cVqQfqApOcFNBnyv5DsAP9Tyx0tAYs7oAi/b5iUKJNqKUSXLps8eLGUOuRT27NOlCylw==","signatures":[{"sig":"MEQCIEMKTov9GUI9UNCNDHJZqbxB5WBfr8xZtigvCT/UY+LGAiBzB76OOaDGDg50kcCX8DoHhnyJjz7rbQWNOuk9Epq8Vw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124046,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg39J9CRA9TVsSAnZWagAANP8P/RQ3Rd1Y/LUi8ndHDI+u\ngFac+hIipAHX6QNsVVp9LSHiMSzR5X6KaHLQXOVyLxFtqGJyA+49MPSmXVyy\ni+IOPcr9CC++KLnNppURQtD9dUU35Wky7d7kLhhKUSPX2lbkQ74d8eG71j3c\nduiG4wfM0p08IbUxcrXzN+4P7pbUZ2H2aQV8GESllYATLmEZe+IP9Lf23YC3\nU3QiKbDtH4De4+VuMnQIDd+7AIgnIbwVrYzXfSJRRFAIxIUPmuPRRlfgS2qK\na9uIfPvUscv85XCTWb9n90SXV6/xsvTkUyMJehoaqSFvI5ZF5WMetWgXc1Ff\nEQLXFphr1Hkb0pLrGKffUBC63H1qlFhkdPHgjnzvt5Mh0BfteK5SS+5u9LyF\nCBZYs7aWBZtWh/doKeFd1ABKuI7SUFC3a0URpk10hEE572r8r13JebWvr/gL\n+ngJjlS75H4g0nwWEnkksmU523RUscp4s7ZM1au9axtn+HMfd0tQCvqorabM\neVLWdfihWeQbu3xDRQCcTaLzm/KLjyodpw0Bx2sBXuatuLurphLGZxPyfBdl\np/wIPg80dz4NOJaQdFlowZxdK3c9fjrYmYh7uzLctNgLtZsxVjnjtGtRRo4x\nnPmHlU6pnuQq18/VwcMyWhm5edQY/1j1GoT6fjchKH2YD9AkVGL5dmwwQCGJ\nmq19\r\n=N94S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"57e6719c35c001d75a0f69af00704574809d6b69","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.6","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.13-renovate-internal-patch-57e6719c35c001d75a0f69af00704574809d6b69_1625281149203_0.7190622420996933","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.14-renovate-internal-patch-d6cea6d4f94b461c2df36932c7b68ae330d57382":{"name":"@balena/jellyfish-test-harness","version":"5.1.14-renovate-internal-patch-d6cea6d4f94b461c2df36932c7b68ae330d57382","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.14-renovate-internal-patch-d6cea6d4f94b461c2df36932c7b68ae330d57382","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c209fbd6eeb6fc208349d1eec8f3e6ba021702c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.14-renovate-internal-patch-d6cea6d4f94b461c2df36932c7b68ae330d57382.tgz","fileCount":24,"integrity":"sha512-AEaxk/OH2J1FPAtguGG6CRoPsubfsmKHwUrS9P9qpJv4E8Qe5+5NE1CcQJOS8LwRLWsp0/R1q2eCXsQpVFaDyg==","signatures":[{"sig":"MEUCIQDY9WOQeCJVGKHpGXIPaCrxmbJa+x97Ti1a8/+wFeqdzQIgIEsm622oyvTGR1LmER8Hs086nQOA+CSkzD+W5+9evPc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg39MPCRA9TVsSAnZWagAAfBUP/1DIo9WjlOEI+CbBW0Dm\nQgAnH0wspw92r0xnnHCS/lYDVyinT8rl5q72r00wec/vaS+GXOu4iWGf1C85\n5Gdr2psDqWryx1iFd/WxLQYDP1uWZDQfSuBFpGdWGGv5suq1qR3pSlC+E1Lq\nrWQjVne5NaA35Sw3jKC9O5PK43mGpZ8YjJvLWi2adgLNX8qVBNNOwxOorz/V\n85i20Mj6Q7JKBILph5wJioD+9Sdgud+QBjxbypgjwfIT38yYa/m5ZUytMwZk\n+Xwv7ouQix+lGTyaJjc/MzaamiiO0JtEkiLZ0H5Y/Ewz5Vcoz/WmpZeuXE2e\nAIVGq7L4TjRevl0ltHCjiBcpEGJUX7/4uisctwZfWutAuNw6joI9YXfC56z3\nl4x637iC5xgmc9D9/YZa3bRl1zd1Lt7cl6lEpm9kaR5+nmG3lehIaes0x+yU\nkfk0TzV8b01t5MGbkCVO2+ZkNDzAMcmEBHzHbaAV7C8rXjJDJ+LqS7InT/vk\nFspTLnhDYujIiyZU6WHtP+AJ4gdXQtVtv8hW8E2HyYXeU0oSzSrYVK1PxPuF\nu1ByNrq+rp+8aKe+sWxJoIN7Z8TgXUQVX7I4U7VK69Ts65uyqYCiv4KB7vpv\nIN3nSPddQqSzw9BMWQU9dKY6jze3SEIRPNwHmTVHthQ/khiABlJFNPzl/MvV\nKZjy\r\n=aC+r\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d6cea6d4f94b461c2df36932c7b68ae330d57382","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.6","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.14-renovate-internal-patch-d6cea6d4f94b461c2df36932c7b68ae330d57382_1625281294881_0.4397908980111236","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.14":{"name":"@balena/jellyfish-test-harness","version":"5.1.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c0b1a15b4c41edc7332ab834c53d0781c5cc09fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.14.tgz","fileCount":24,"integrity":"sha512-EWMuhxdlT8NNWDik73kj7SsNy6WSq+a13P7AP6Fd5znZUNSUvXzQ63ShlZ04cBPWHUcIbY9fNVDo9WftdbLD3g==","signatures":[{"sig":"MEMCH2aA9LTPKGQ5dWKoDiVpfIXPS9lYdGy4WM/Qab/TM4cCIG6x3GxbeAH0ybvcy51J97Aq1jM0D1zkt/crC7Jca/7t","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124009,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg39SFCRA9TVsSAnZWagAAG1AP/RHAoAZ6DE5receAnjhf\nd/NY3+vutgk8hoiBkJsV1rkCG/o37thTIBDgTLSx0/UmlamWI5kMA2idmJY3\npYJ1UvPcLu1e8UD5m0qlvP7lqVlY1mgg3oroh2ce/83vR3nFyC5RDWEaGZlb\nLi/CeBaB5BU0XyXF+jjLocezuQhaB+hF/bDskAJGhXzgG2LCFHebvlVWopwk\nHKfBQ5TqjkEJ7eiqpdrEvWSI/oZvf19lkhffm4iaIGoAayoTkyS+I1hm3IZw\npIl5CgeVaRWhC/cIq9Wj0+IB4ljJGYqH2e1lzKpBuEJd5Q4Cs3fP19lt2L6A\n2CH91Fq+WMW8w2C8I6vO4RTfoMjLijN3hWc0mHr/AXpn+Jzmw9h5pGzuREVz\nAzSFonfE0mxoSlvegnw27YFWJwkxjRbmHUbh9ez7mb/m5wIet8cofy+oag+Y\n48OeWLmTdg7oRz/6h8P1+FyxGaGXSb9uF6oW6MyNQXrMfSv0gnF14bxRbrPD\nHj/K4c88w1bVuPk1engzOxlaUcoFYsrZoOCTmgiKuX6vhFuwk2FgvYa8wyWw\nKmPoQoBk68aFXFJxCTf2+tmIba2woV2ngbOvL3Qiugm68RSnPywuFGsMEijB\ngp/Tl2/sLkLR5msmqYmEnD56VKZWh7c4omY13SX9T8eoPAyxpSBzb5sAfmHR\nz0+K\r\n=gAi3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7370301643c2309552164f9621367a9027216d65","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.6","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.15","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.14_1625281669377_0.8300890053607204","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.15-renovate-internal-patch-6fc205b4e38be6baef8155d57aec6328f45e0b17":{"name":"@balena/jellyfish-test-harness","version":"5.1.15-renovate-internal-patch-6fc205b4e38be6baef8155d57aec6328f45e0b17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.15-renovate-internal-patch-6fc205b4e38be6baef8155d57aec6328f45e0b17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"355688286f9d6e05d1db0a9a08fad093b9d9b58e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.15-renovate-internal-patch-6fc205b4e38be6baef8155d57aec6328f45e0b17.tgz","fileCount":24,"integrity":"sha512-SIRR3GtPWjNhJI+ulmvd+xj7oI84Bfus9LjrrVkbMtqpsP5ECBQmxXczElAVUFxYhcTujwfZEApUZthyFIujQg==","signatures":[{"sig":"MEUCIQDjNa/45I2jPRplreJmr/Riu13i9D1FiLoFdOEkQ3U4MQIgP11BZ1wmKNPpkrgbmq3lgFaspbGn8sBYnE9LFMTkgpI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124180,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3+rQCRA9TVsSAnZWagAAtPIP/1GPF1N21SDVw7Xu2HtJ\nbdBhefWh1daduVwVs0hgpopbMyQ9BCRzYAJ3wJbIONRmb2ByzLevidPEeGBw\nPxJOJ6Gteok0M99b1NHlFE/ZoDwoGENmXGa+nT2SDNeq+f6SfOIX9nMmPtjn\nGtAfXLbEVrpPpRjksg054VnlJ+rjwUrecmHFU/vXXLuRTGuEpjSaJhho6Ob0\nWs0bAWrkC2vLRVdjvAUIooldprOwh0OETZyOBQ2rqenFN6QIwhhUoTxDPAJG\nmodVjJPqKHJloEchBncn8d9V0+Q0ySUUD+r7UjnADSZ2jxiEBwecgl04rkYs\nokxSPj64DRL5X1fg4Xyel1s2YmysvzcYf2RhCzhMBxsfvuUKhYj+LaaOE8X2\n1deFu57vlyf3PINeKLR78UxNiQrCeFerxS31cSStXReY0+KyuQ8CygupfO7E\n6mSFDFvfUl9wI4HaqSUq+0CbQLwC8NfFwcINb3FuI5aUZygX/lBvVMRbsMdu\ng5lZmJ1gaPsbGV6gXtVLnHJjyNZkYyMJCeg8hWGNqMZphnefgKG6CYoFbkOY\nnmdzSa+++2ZhhHxfuLqeP55EWd9Ln1CwI2pUYvFvFf8DPX1v4TIo/95jmbQn\nedo45HDqgDzCAQbajJyXfeW/eC2EeZ/uLRDACVpmMsF598nkACtjdZVpOKxe\nr+wM\r\n=bDLT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6fc205b4e38be6baef8155d57aec6328f45e0b17","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.6","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.15-renovate-internal-patch-6fc205b4e38be6baef8155d57aec6328f45e0b17_1625287375341_0.5685009718203062","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.15":{"name":"@balena/jellyfish-test-harness","version":"5.1.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7daa8f7e3732735ef00fc280866677cc5545fb01","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.15.tgz","fileCount":24,"integrity":"sha512-dlGpiFb7qOVLICCwmxrl7un/gYzvCXftqqayJp8lKmg5Se0ze+fxkYUCCIgD9DfUQNNWeRdafJPMJXJMuaxJ2g==","signatures":[{"sig":"MEQCIDyXaodc/r+frOAl9yM/2rKkBVvR9iY1V0yImFG67S6FAiAW6v+wSQMMz6I7EcvWcCz+ps3eIzWRl5y5pNFilkSx+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124115,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3+vtCRA9TVsSAnZWagAAp70QAJPLKRZetY9TQFSa7jU8\nDNXS7vFHGSSa64PtmQIMfXVRuiSLlWgmIUJbAMiINORSLzOVFtzXqCXbPita\n4Ixt5p6OhDSDSHbr6hPPR8jBQVW5jwfuwWUcDSe0gpTSqA1Ue0TCAB/TxKJX\nfOJOPByqMGxUn7cWv1eJDmCl6+6NwMOnSlQz9S4IkTjMaXSlbsU8p8wc44S3\nAFVtB8aLDrqvp27W2/U5c8p7cbMeeodessztzV+pYoNxNQ0E2fvydD9/0qDw\nXQ4W5YauAOkmNILNidngNyF/ZZwrBJuzts9EFMa3l6Pdfa92CAqcoVTapDwh\n/uiOW5T1rVWI3XZFo3K+oDrdAcMDaH/9KXRQwBp1jSSmrBqUPr5HvpJFyoay\n3uswy9EDPBkdHCgXV6f1VmKjqtH2AYwRL8hlI/dBOQHQWv+pcf94IT7mx7qp\nc9ZaJN7aM7IWmaqBaeygDhnQkSHY2hl91swD7Y1qdMJiwz63GSRNKsiXZPuD\nxSLcm5sdJOoKlPLD4b6nNxM/WWMpNRfsVkRwuvebRIry8gID5IdT1OqpTRMn\nRWU7A0VCwo3gOOuAMsDH8F3xL/t0ivSQc2wU16sjMwdPvgmrpAFFtu0NaUQg\nRqoumO8uP35hGhdLjEWNC86kgSfxgua8KyIJYOnRlLGWaMIfg+jK0bLHoF39\n7deW\r\n=h8p2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2312abf4b8f9bff8fda3ff48378923b2d75298c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.6","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.15_1625287661330_0.8256743648813905","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.16-renovate-internal-patch-4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f":{"name":"@balena/jellyfish-test-harness","version":"5.1.16-renovate-internal-patch-4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.16-renovate-internal-patch-4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ef9c21e5c350be5f67eee57103a85397bd4ded8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.16-renovate-internal-patch-4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f.tgz","fileCount":24,"integrity":"sha512-7S063sDUcLqhgUGufBGzfrDtcNtD4DK8Uz3GCAHztw9tfyR3LQDbb3xWX2xw3qW+HDNzCUuOcwn+jjzQGnwPzg==","signatures":[{"sig":"MEYCIQClqvlyFoKGvJ3qwsqNw8lNnPy7Zzbn6kOkMhyt9mC66QIhAOc6ekE/omOrznIudoq/E88ep3zn76bTDQOs7STPS6lG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4H+ICRA9TVsSAnZWagAAZkEP/3ljAl2iYqgF3EK3TxZ+\n7UTIuGGZwYq7fko1Mk1RPkew/xEwwlJQgyddECENeoe1VY//khrGH4lDcz/1\n65QL6Zk6l73JnOmBlAHz6aZrGWEyT1tWnHAnPkkymCK0/ylNbEZTxWMWxc2q\nzIkwEhXuVYY7wAlsSL/FAroLdNZ/jUncrmVfw44fO9MukyWR/hUwBK/UOv6Z\nzJkpSIsrZZRlvotg+Dxs7h3tj/nisAcFmJ75zuAFBk4XdmayxxZsGIwy+oaY\n74Zr9581ZwE4e2SnWB+HmW9lgzow+hzU96ZHpBTorZHZqvZacmkDp+Zy4TVD\nhIK4PHZjoX3MCgviYR1Ial9zVvbXUYazZkw5qSqbvPc4N0gi/xXarFWL60Ck\nPQfGPlRGzwnTky1Tlz8LAz+zqMhE71xPR3WrhzFad229SgLx6fQwHoBYHOrP\nsjA/nU+24euza8/oI9R6AMbqmyCyQPNHtofjjYAbkOtwjME/PNQTW5o6GLf5\nrSmUGdzni12GNZzke7L5QJWMfO7qXSImbB5TYhH66aXWVB+YU7Zpw1+F/4+L\nCU0empbW4j+WFpAMQQJRgJCgIPYT4REbpyLhr/gzKt5RIZIoFfXSuSdo6wnR\n5OtoKmVtW9Vc4r4AjFf4MYDQAT6OIlgOvgcCy+A5Bce6/SrzucxzzcBIM9as\nZcSz\r\n=kVp0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.16-renovate-internal-patch-4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f_1625325448103_0.47601200824376244","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.16":{"name":"@balena/jellyfish-test-harness","version":"5.1.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2ad0a468d3ecab6b764ede7ed0a41c9276051fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.16.tgz","fileCount":24,"integrity":"sha512-KKKzRQVGeEIpOXUZ7C6C0ghM4yZUs4NzOX1j7bitjznuZdGqZyg97DSgiR8UMuqc0TlloUEHgzjsSyuw3ofTGw==","signatures":[{"sig":"MEQCIEWqaTrqSjylDPcLv+1OW2KWmoTz+oycOOORLcSdzmf5AiBjaf85bVwA1VvBLAtTC6MmpvnFEExvGQXslZO8f7Jwlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4IBKCRA9TVsSAnZWagAAiYoP/1jf5cjdc2Y50n10U1t+\nxbedtU0oSx5Qcq8MiFpFDELV0SwchqzV38ZgKqFDKCey19Ow8zBW5SzgSznb\namNwJu75kVUhzT2kyc5EhmwsdvC3IjkOzcYXr2ppYhqREBZVEnVwy/VTr5DK\nEn+EcF03QXEsojTM7TVTI7md+OnGlYWV3EDg41UOMGuzZ0APOmcULs3O+TKF\nlrJdvTIEFB6uT6SBMTJOttPGglYlhlSwL13gDao2R9gs6y6y2YgWoQ8OUl2D\nPeHxTGG8vglq1ENO7WMtYtQFIfOJAaKfHtc4qqQL5LndsT6wp8/nGJeZ9nHS\nAK2M3yrJOpZ8+yT4yBUwtF8K4++hRr0gIBz5d5g38idom9TE8yp5jfmaFg29\ndcmSdgU82gNSHtc6fqNGcQCFDbS6JS4kE4+uMX8Ex92n+eatxNlXCA/alrYO\nmvKFEGrDPVEgZQYEDycAzHqflSyd+QoTduxHEm+nO+poEx++AZLbX6421gWu\nJ4b8yrhPPNzP8lktCXuhSfk+ZnBhQc8IJ8KscLiFZQVoCUJ/xd8QJ8Nfb5BP\n6qyXd2trS7vRR2rbA2xucCcIuVwse8wdPDI2/3x/2V43ySpSskvGGSEd2968\nXbau5Un96EBJkZbEBuDsazBe3zNYmprF4Rsen57jpPp0lMADyhuVkEOPv4Yd\nYXrw\r\n=nBna\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"95fca136e79265777f1501a938b4e5b9e1bbeb51","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.16_1625325642447_0.006696661060485942","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.17-improve-no-stub-message-63b45d62383457d33cbabb210aba198d43a03915":{"name":"@balena/jellyfish-test-harness","version":"5.1.17-improve-no-stub-message-63b45d62383457d33cbabb210aba198d43a03915","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.17-improve-no-stub-message-63b45d62383457d33cbabb210aba198d43a03915","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aad2877882b72a7ba661e224d15fd52347b57914","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.17-improve-no-stub-message-63b45d62383457d33cbabb210aba198d43a03915.tgz","fileCount":24,"integrity":"sha512-WlRIJDQEJNkP6GXHtHxKxisTMQMybqVmjAq2TqJxRdBgboO59r85f9C6uHylu8wzfQwVwMPA9ekQfXvBBSRYuQ==","signatures":[{"sig":"MEYCIQD4vgvWL+0o9XkpRmRmDndR3OaRCa9Es+7CI1hA21lnLwIhAIFhJ6eUh6JFlv41ddVw1Wd4ylPeDdpOnJ1WynXpnVys","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124473,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4OP9CRA9TVsSAnZWagAAMyoP/jMg45A1UcjIJRI2wOcI\ndX31m3XKvh5NXjTFepf2GoPRepzVCEkc848tpGP9G0GSynHJdPqnbFJjrlPi\nALZl6GE4N4MhTsvRCQ9R7vPWN/8DQx3p7r2ytckNwTmTGBOOZ4pECv95ypy/\nYvubbAovdrjOnnvYx5krRwZ3+LbUQ3ylbHdlvr4MW98o+VI/CIBiFSBV2t+0\nJfg3U79VErGYEwke2qxQvW5Yn+MPXPOUNts4SxyIVrijakUi0oGCLgupFjEi\nBYThpHQHc2pI+hWlQKzo8ODfj6ywPqiJim8pxB1/YFlk2JPgiXfs4JRlKieo\nKBLXSAg7s/nu3TvjlKacCojzz4DTmYyW9bNU7ybPWS/AKGrrvpiSPlb5tqY1\nQD3c8Q4F+tTPfqBbKMULX1Y7/Am3eKh/ziDn57oXj89rjaBJGLJ0nHep/gfS\nGU29EetpzolvuH6ODYcgXnCcK0KeIPXYphA/TudD8F39otvaUY8o5brNOnF5\nwvQBcftiwiDwSWHSqlkwFJABoQS7vaY9noRb9fZ+pLdg0uOpfA7x5uZCEYAq\nwK6kd72fnA78q0YzjxYPXBELIxjmKbi4cR4PZj1XTUbHFioOepj8tPAeWMDo\nxYs+P10FXQghbyUaRl/n8hDEx9gmTqlvLdPPMEqvKGAXzLjEOtWBjOIxEGKG\nJG54\r\n=R9lA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"63b45d62383457d33cbabb210aba198d43a03915","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.17-improve-no-stub-message-63b45d62383457d33cbabb210aba198d43a03915_1625351164588_0.5081610248180821","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.17":{"name":"@balena/jellyfish-test-harness","version":"5.1.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2625bef05607ceb91a1144d2128f61f0ebe341fe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.17.tgz","fileCount":24,"integrity":"sha512-uN6O/Ac8Z+TxY8i1AJs1R5kyZ9BIywn2+5TqSUEnsmxHZeNTclI6LkoE7ypqhDmHEsjnLXDH186f4xAQ36/Xhg==","signatures":[{"sig":"MEQCIBvTAX8FtAw2afBCoXNt5VDgkjDfCspXLXBRgBAANa08AiBBCiioCiVeyAOR5ZgINGAaDAav9sjyFeJY10mqFflmIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124408,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4OTcCRA9TVsSAnZWagAApoYP/0k3hOxAHD3rn2Xd1qoo\nU8WL14opFP7tKhJRXgJmyYFOICQ3Ha1FXO6PGKPKQgyP6z+xwhOi4pXm7YiT\n4xjeUz/o1d4eZEOe7gfYkArX7X5CU/WANThBobYKwiXuWOVEkhqdywWWxlQ/\n2p+lWz/gNLzjIh2271gowNS8Oen7jQLkiQxawEIXfHGlIQoLiGAjU69nT5Ds\n0/m8K8Erhs0PjDde5NnsA5vlILbdAk/0Si0OQZgui4TkT6gF1sMFi+W9F/gw\np5r1TqjDrvgWt9xNBedvx/HHu6acnfXy4tiSG3P1A9U0Xc7H0uhFNktc2EoS\nt6h110LSvyzw5oRRV5KQIFvlJChNZUnJF8+kYsaEJSedJM1V82ysgkQfQYBu\n6aC//dpl3ToRiu7lY6eU7I3Ln8NIfH9bpDRPs6WVyxZUer6IDM5nAQpZSZVl\nSEQaz2p/9yRwo2Zu15nhPKTJgGIZ0E7s7XpMGXXfZ5u0jnMmjsRtamCCFx+r\nkOV9jRBAM7Wf8hEWjWWVYq1aYmf8UMkRVn2Qo4wVkOFPhz3evH8iML9znEVA\nnUHtZXDBSFx980yS1WW869KefMgsbU6OyBQGTELVwhsGkSwMdD7e2vc1tii6\nlmJRXy57F7liUKVmgH/f3nlV7QHu+bGZ5aMcmm7iNdo/ahaiwY8G5toO1Gpb\nimku\r\n=Z28y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d9f3d1f76e72845e5c0fdedb64784e46d3ef859","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.4.5","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.17_1625351387612_0.7700900639641046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.18-renovate-external-non-major-4c589cf88e7a0a74a094ec3e20feefe0f9f59364":{"name":"@balena/jellyfish-test-harness","version":"5.1.18-renovate-external-non-major-4c589cf88e7a0a74a094ec3e20feefe0f9f59364","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.18-renovate-external-non-major-4c589cf88e7a0a74a094ec3e20feefe0f9f59364","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3a3c2bd0a7ae0536378e78285a54de180f81aa09","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.18-renovate-external-non-major-4c589cf88e7a0a74a094ec3e20feefe0f9f59364.tgz","fileCount":24,"integrity":"sha512-jZ8KxI+T68PXi2UEnvXqbPlF8ilb7qRxGBNpQbcIysX4qJ5UjBDBBupyYmNEwwkBcvYMNu4szJ03j6f1JWgxtQ==","signatures":[{"sig":"MEUCIEH5rA85vmbG8J+Lu5wIzEb+A4fi0r31u/b6sZkX6Fc4AiEA5SP2hy3B7cS9L2tAlOiUQvMVhS8dzk3JRDAvtlnY3Fg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124574,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4UEzCRA9TVsSAnZWagAAWtIP/2wcwButwtByjRDvUMM2\nq9crlw9JGRNJaqHQFgzen+AyCepEYwNN6WhHLBV2B7XA/VvvWPLren/pL9tc\nvjk6BgfbQPAanKaCJf6U2Ju3x1ZpaWuk8cvQlgCSgV6xX0yxRz6B911KZqzM\nRd6nvuWwQlUaynUpz1IBUTSX8GCfWJnECb/SqHGl29jmpkip8vMKYQ1Br3QS\nGdq1ppYBj5eU0avmSn9Ub/OJJNVd7CD2B+grmpR78sTsFKPY743JlYmjJXu+\nPXQHGJaBOYFi90r5ZIpZSs2mlSD80g3d7Km9IuQaP6/5PHibZ/wFhrSsa2/K\nTQo1gSH6Y5SIq9YmE/++wyKADZy9oWE3FGpkmBoGQD4tsDUwB2Bt5cjHuifB\nmL6EPaCJq0UjY22eM0lKybk7wDrInlyJOGL3uS2KkL6qIGifDyjhIwXVIJc/\nNwgQTXBs0gkmhmjNhm9AQ5x6duGILkMou55LwGF4IF0FvzQVAj7NQPkFi9zG\nzkdmYHBI9wvQmOshIlE3roxhUhm5EW9XDfEsiCIAt/jM63SM5Tt+ldzW0uJn\nPdNpNIoLuHDCwiEdqBhwQjxqxBQcyA4+gRlXXmZ0cl4rUVX69SLN1cm8BL9n\nRE48yrvgdLReMXYH2eKubSra7Sg/RbXA+HRRXWAEGrFr79kk1+/UIpFY6CpY\nF2/u\r\n=rU3V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4c589cf88e7a0a74a094ec3e20feefe0f9f59364","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.0","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.18-renovate-external-non-major-4c589cf88e7a0a74a094ec3e20feefe0f9f59364_1625375027014_0.7897428085217557","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.18":{"name":"@balena/jellyfish-test-harness","version":"5.1.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d7856d2267c57233b225913a5c7f435a019f022","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.18.tgz","fileCount":24,"integrity":"sha512-2VEYVAmErIk4eWbmYND/EEnG+q1d39JgRf4Hg4pdw1mLN4Kno0yd5qAejYDt2zUrMGFNW9ebKNuZoTKOdAytOg==","signatures":[{"sig":"MEUCIQCOgRGE7VaLgz6WI3YYSzUcQrWT5rdkSKmFC0yOESa13wIgdYfsWP+58UbSailRvUeN7ub15TLEtMzsUMNxuuyRPjs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4UH1CRA9TVsSAnZWagAApB4P/idH35rdbTxiOpkr2OGk\ngI7ds6YhdXGye4DZB+5GyHOgrf5X37ByEiYZYCKsnarWZUF+xaZkPyc00tkk\nqLiTCpw7ENW9lBnZVfcTI6l2nq7DcP3DWxKw09w8cDhZ+NbyOz24MzqzNPqG\npaIg5S5smwRtetTDOhOGMqsgdK7YbC41iprEMd/oQZ+QH6LeJyqaMieth56j\nXHcV9Q5aIiwdPzp/u18UsumbdiFwFjYpHZMIZB8P3GIA/cXfDfdo+uFGaTWP\nh+QNNhu0pxXypf60QxFISetxIvA+8H+LjdXOJs0nuo7dXLPKBCkQBESS5zvV\npPk5E/zPLy2TcAwkcJ59U9RKrU8CmThCBrHvIn7ItHzTgdzWwv7UteiLkxbg\n5nu0n/bx6GIGyMT3duobcjnQ+yj+6n3sDmlBJfHkjQHyUZu+hn7BRDZm+eMo\n0I2RHN1m3fuAM9h4cLLBMv4nI5pjloAPlvrHca/x+jHeTU0ri+46F0T1jg0f\nhlxeIgKKq8gxmXaTmQBMXTpjFTIyJubXoh/l9mqXJu47yAUYAO1hJljKhTFJ\nX8XijWY5z448yf/96QBFeA9omui66prNQalSFrk15TBPfQP4ccgmI4pPK0AZ\nAfvpiv/eIPsFFy0n6a8lYdra89uNz9cIqz0x0NWVFigbEGh/SMkWwseuQ+6/\nNY1S\r\n=rttB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b466212be80088811164aaaca5296b4470931259","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.0","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.18_1625375221430_0.25206267885267697","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.19-renovate-external-non-major-306d4eb4d13b08749fd5ad38d700377e68063bbb":{"name":"@balena/jellyfish-test-harness","version":"5.1.19-renovate-external-non-major-306d4eb4d13b08749fd5ad38d700377e68063bbb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.19-renovate-external-non-major-306d4eb4d13b08749fd5ad38d700377e68063bbb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b1e5a5c75f03f2f8747437346097b31cf85b7b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.19-renovate-external-non-major-306d4eb4d13b08749fd5ad38d700377e68063bbb.tgz","fileCount":24,"integrity":"sha512-AfhH7uf2e32snxzXGqSh64jYeD4tDSF1Ea7fDW09C8XOZmZ01PE8KoUJ1/jhQmPfrQydigPHG3bpUGbonn6dfQ==","signatures":[{"sig":"MEQCIHsD15H1GJv9McwvsFbmfjiAMafrJMR3/mcCMyJwvjHcAiBwDhpr3V6GFxt8Rb3NufV8KgpEStgHqa+lDivO7TlXUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4WIoCRA9TVsSAnZWagAAKQcP/2Juchkz6QKYuIgQk3tu\n8ntPkxl9qe0vRndebF+g5yaTPnsxk5sgQaleLAIqL3v+4n712ecoMbOHhVoG\n8iuf+NB1SYdzW+CtjKTLqtdj+nMZYM2/vUoD1s1/8QfP79MWGNJDknBgvaTR\n4xTC4O3SOujPO+Jd+t0h670rxHJHfTkkD2Y5/yxMCx/d7UCewt8AsqQYJmmw\ntD7KhE0fuy0Y18p/ojwgIku3VNBfgIZep3TlaZwsQs/7ugXYm5E4IcAFnMoj\nY6Pfi5apcxz9kwgItKwOLIWUeH5wu+XW3pvEmCyQkoWwx/UT0H/STwGMmeGe\nBLCkn/Ixq07JIVr3953vjwMvRd93vCShKQCURofqG/IkwytWwB16Ukl28cXm\nQvv/jWg5VdX705mNHDY2XyoAYeiBUlolz3cEKiEgkCYdcSWrsPnKYSh4XRRM\n/YvvuP+cZonYafhH5r5dlpDoQ+5ouuM5QF5lBtSQHfX1iVQmg99sQ6UjmzWr\n8vlTazU3dnAhmtZcyEgp9nCSmDS4ZZBFZPpFXliyYVsqtA6EM/nTFARxhxwF\nAY+cUTJvabHfNP9hgjxsDfIK7kBxNMxFzjzEb4Tif66bLMkb9LyCYb0Kc4N/\nb1PXYPB/EPgOOOjQ0Z/8opyYMkylePebBSagRJePMdS7ZesgA6iLMqEAJZzr\n6LhO\r\n=bX2V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"306d4eb4d13b08749fd5ad38d700377e68063bbb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.1","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.19-renovate-external-non-major-306d4eb4d13b08749fd5ad38d700377e68063bbb_1625383464173_0.22946287338951032","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.19":{"name":"@balena/jellyfish-test-harness","version":"5.1.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.19","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1affad740d9ff7bfdeb1bb699e637abac78c448b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.19.tgz","fileCount":24,"integrity":"sha512-aM+/w1gDjvfkyFzKZM1GeyQD9fpKI1CbB4nx0OwLrv2bfyy43hSkTVZPtyj4Oi/Ik+DDlo0JqNxSt99gkjemfA==","signatures":[{"sig":"MEYCIQCgeDsRVSFluXp9T2DlSK7Fuc9isZjjb0UgI42UCpj4LgIhAPE/HGeD7/Tlj+zQ6WtrXxoLuOR9AIqWNntjwLTflx2e","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4WMGCRA9TVsSAnZWagAAAwQQAJWMF5i8xo3a2R3us1A6\nzC4FWhowO2nWFcVbyi5DAlnQnVKQbPbOD4gt5chqAfYzrGcJrRat6w+i7bfq\ng/t/gXeqI+3YbGykgkYDLzTzCh6+2liuy8JXR9qMXhB2WX23LO8jWaTBvtcY\n2Wx7qhLRz92bxdc90yrneuj7h7X+F/91woc4eYAGGnXZtHOb0Gbyj3J8+vRE\n9nrG7VxgpgvQKFJidRja+NLLl/gcIiYYIjDl17BqNfEy/w4iQwOGzSmEpNTV\nsNUNOBdxx8MNG4LAZaK+f2TFOVW/fmRxrTD6OiUWYPjVCtYrOPBGQ8M38glk\nKHjLFPNRjIzJ/t+Z+2keBnSY2boveHRN2N65HnIg+ZAYc90JKUhKHOP/pWWd\nIdNXbekV907FtLIDHRMuf21h+GtXFsUOCgqwMDJzsGRBSlkXMxjdSrvXna2I\n6KqlC1B0mdgPiwI8ZwQvNPGfpctf7oYsBDOkLMogQs4cIZUYWV/vxOR7aHwf\nhjK8ZBPI5Aqiicm6JE+dmT4x5Zb7Hz0caMT7YvEzc65NO9p2baVoanGzjA1X\nUvc9tgvQKZB5xt5osCGfiYPCeIhJsswKO/FY8WXZEpwkOQt077r8Y2aijzWt\nfWfWQWP/hMQKTON9zWhqU/VTApe3tJl0l6KYmvoW5bsVp3jfaiYM8QJWw7hk\nFuHd\r\n=+Hfb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d13ce3b77a5a0dc7bde19fb12f02e5fa9363cadf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.1","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.19_1625383686421_0.7667855046288814","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.20-renovate-external-non-major-1c4065454086b3d3af4c2f021d2789b8f4a35f1e":{"name":"@balena/jellyfish-test-harness","version":"5.1.20-renovate-external-non-major-1c4065454086b3d3af4c2f021d2789b8f4a35f1e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.20-renovate-external-non-major-1c4065454086b3d3af4c2f021d2789b8f4a35f1e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de83a64b412ae73e8834af107d794237a01cf2b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.20-renovate-external-non-major-1c4065454086b3d3af4c2f021d2789b8f4a35f1e.tgz","fileCount":24,"integrity":"sha512-VRZopcbumdrslXJ8bjdA5Ho/9oXgOQmNlFEvjWVmU+w6beOX/mk3oWbtdAYmZEjeHUfSb6KIod4clBU1wfRY3Q==","signatures":[{"sig":"MEUCIQCPDikoTpTwjgyRc54b2UrSPvOHsegnIiStsFytx+VbaAIgQp9B87hISBwbrQKPsq5GqtXnt+qNQZkfFq7HhPhfF28=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4XBMCRA9TVsSAnZWagAAuikP/RQ6LU96gyj1f3tozfCG\nCFtaMeBDy8mAU6NQ1/pEBCbV+CeQk7HHkH5oF7Ja8NPaE+4kDFc80IrQSNaw\n03u9mzVvWj0UUJyFjd9hV/otVMrgqGg6B+hvTqkx926QKaeEQeAHwmUpfLZ5\nQWq8ZtyRmfBGcFzczohEPViwII8TtkaSwfgKXfu+sfI1wG5LYKURn8yZxCTl\nMrlzLX41PerdWaFNcfNCMTyfR6KHyN7JpB+N6edJZDCGAxcK179TVmv3256Z\nFFsIH2Nfz7xatKKamDWVUgO3Cqphnziw2D1LGqPpCX6IpFT+HXKdYhVy1Dm4\nFCg/6gRywIqsNXb2Nq+Oo3fOPoTMYdP3N6ihwolrqnkDshhL6Qoli0cy0EzO\n6+Bt4WpoF36LxZjt+7KJQWwvGCM0IlgnnNvZrFNMTfP3gzEYDpmg4wmdvmPB\nc+ZgHdyA4K1jN1k92Q5Km7JjWbPdc3ynHhHYNt/ttIAOsruCihau+AFHxH+M\nLshx2eVkmWK+bCtnONwKkXLE9QhHyvq2zBnRPTx15UbzjO2JA8ocBtCRWHM4\nYLAaw0pK2L0b4wYcX6a7I3snHneMw9SMEGIvuusFcQOntssanfjlc7POshKS\nfID7R1rN4iar2XIChXx/XN2tQvnbAqEiiGd15+rWZymmY/D73Bs1yjsGGs1T\n/G5r\r\n=F8Ch\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1c4065454086b3d3af4c2f021d2789b8f4a35f1e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.20-renovate-external-non-major-1c4065454086b3d3af4c2f021d2789b8f4a35f1e_1625387084265_0.6521587449483728","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.20":{"name":"@balena/jellyfish-test-harness","version":"5.1.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.20","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"52ce75ae53c8dfa10868d1a7425645fe9a2a5837","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.20.tgz","fileCount":24,"integrity":"sha512-AqN2VAhdu6vT3+5nNhz+es/SzhWHMXbJWRP0LPgqzCW89aUTDmD0r0zl40itxAx2R5Xim/hLUd0hvKi/Z/atYw==","signatures":[{"sig":"MEYCIQDlsCRLsJTUXjiYIZjYLG6uogQK6KL/S783LRKOxh9iKwIhAJDBoCom4ZK6SJ/u47rWwa514L5lz46r2ctcXJwmRT0q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4XEqCRA9TVsSAnZWagAAPH8P/iyODwgFIUWVHsBJNoap\nnRccWd2t1FX0qlmLqUXDQPO1aJuorCtHMCr7NJ7BBJf0W8QJ2uSnOp3y5aOE\nxxo2A9+f5Lwwl8WH4AaBhMutGIWuILPsilvMNt8oL9UiqPTdr6BoZPaaNT6a\nQn7BeQw+74i1eIHC3D4TABOvpinCT8TLox83pvFc/qNuWfwcQes22aUatzbo\nYJmECJl7aAoa/eBmEaBOJWqQRU2SAViL9QmmhH6xijfNOnY0m/uP7rBQlxOD\ne35ua0A1S93zMDDSwsr2EJZjLbANT58y1EcqWHqtkBiLmQGJ4gwDrmKc2cov\n8+IomSnclzyxeFlJfCnKhofXECPKCESWVzUZN91bSzHCAwJ6wDbyyOjNinMQ\nipb/PnsLXq75sMgIqu5XKfUVrYjTzCZsPAtDnNDq7HIPhq/sNswo8G1Fr/LS\nll67y4oa3/BcMm+1Wdh6UZow9eAoDUmoEUhOTK/c6FDtMzoiOj+aUEQ+KBf9\nD7+1BcZ8KO7jU2rL4PU3Qb1hyHRFysnV4vJ0pi+XpBZEcg6u/1lk7eXaFYvm\nU62j42eIRLY87saw4gz8zZhUYPM5cmmwiIQYZ67N9G8ccJzd2XgY7mwx48nS\nkoEEkDGnzXSefj8zSHP7DW/AwYZFuCXbAZJiWlITUIBkUu2ZQBv29vwf8ucO\nLwnP\r\n=N3WS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3f25d3bd88f4c849c3ebe408598e3a7dbd620705","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.0","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.20_1625387306383_0.0835789189299041","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.21-renovate-external-non-major-1d2953324e5717fead1504b221956b2b65e6ebe9":{"name":"@balena/jellyfish-test-harness","version":"5.1.21-renovate-external-non-major-1d2953324e5717fead1504b221956b2b65e6ebe9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.21-renovate-external-non-major-1d2953324e5717fead1504b221956b2b65e6ebe9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5cde78e52f019b240371f6bfdc2a4029f1721e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.21-renovate-external-non-major-1d2953324e5717fead1504b221956b2b65e6ebe9.tgz","fileCount":24,"integrity":"sha512-55+iV+GWD2IiIvv9mRTmi9zBOK458gAAdCWLc9cXQ2uNgeis3XZhPlmoqafN9xpFI33hxn3nlO4aki/k9V3uPA==","signatures":[{"sig":"MEYCIQDoX4kB5IDlAyCArRgPvMTA+9zcJYGV4KBmKJIOE0QuiQIhALOnlDnEWi5f8hN3pbvQ3ehzsIHEhG+CDxLboa8baDi7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4gTzCRA9TVsSAnZWagAAnfYP/iXAN4AGRY0Dn6OIX/Qw\np2TwY8iqTP/tybK2c+TxFrny0AhGzs70bjGSG2ink8/6uLe6BATvPsrs7PaV\niUr1VvApoiofFFRmr1UiOUJS4+Eve1EjsehPsgHm3hiUo7ronaAJS/gVMHJm\n8I2Lon35CAHNdZXSj2Qh1HBOLT6/puoKHhu/zy63ThCOdRPvcxe77GtrSmXU\n2Jb5spUEXHoxkXUcVHdV49h4d/1odYUzgfdbc3AGYsctxCFGU2riQYjhcTCe\na4OIa6XTHFK/Pqu9oMpZ10ck4Z2dC81Uj49JxaQPkXaku8Lsf+BtrDYiy+vQ\nOKN+2fuFF4/qaxPkWXQpqEIk1smG9YtJRaCsX0xtL4rzE/LX3yDwtpOKgDai\nFxbr4BtDZ6fxMN5NPrVTTDLJm/ovO/0xTVQWSKpnTt975iErc51NrMn8B1IK\nfc+waInM1Tkl2mojyJFUUC6QogiHHdhdzrOvmyNEW5UKo+lN3LpLn36KYd59\nGiNFrLbnEe6Hs3zluYSRr0XFC2oKe4dTnRCRKQM5eNP0P2xVdouGWXadWsY0\nyvhXfiX0PEaGBwa7FlIx5X9eX40jqmE2hn9fPNVYBKgSELWKYtsAc4uaT1NQ\nEgt10dcmIhlEuXBaluiAEUxAl53he0bau2g/PR9j7Tjh7ng1KLEOjf57N9np\nIGru\r\n=VzUC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1d2953324e5717fead1504b221956b2b65e6ebe9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.21-renovate-external-non-major-1d2953324e5717fead1504b221956b2b65e6ebe9_1625425138773_0.1134169669157239","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.21":{"name":"@balena/jellyfish-test-harness","version":"5.1.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b93ba07b654767bcf402bb755158f6fdd404354","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.21.tgz","fileCount":24,"integrity":"sha512-Rutm60QfzFv/QxPRytDgh/XP8PlR5ZQV2WG72c2LNOCQonb67/ILGbw2WLocxH7Kq3W/cnPCm/WkKHHRVmZvfw==","signatures":[{"sig":"MEUCIQC0o3L9e1r6NZXQnE2FwtnuGNzxy0UmxqY5W6LQGbZqYgIgW2bN27N1BwlEPiAlb+9Tw38vOLKxE3w5sNuie8EzuLw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4gXRCRA9TVsSAnZWagAA4r0QAKFmatjhzBOWudKSxZMK\n4jHzQ5o/TsS3VE72NDPhLs/MTxA3FAwUBNAy4chsSXKBoY7ynQ+haKq6kzPM\nm2XwUi1EqdIV/ctlLuw/ebilTGiYvBHz68FjwMcAA9zXYwjOjIXRSMwArKjI\nGK9F2PB9WG5FXdppPb8HQgdDHzEGaQOojV5h3gjFkQ2RCVAC7mA8zaVivQWC\npBu4Dl8D0wV1B0Ot87xnvYSE8JEMe1z4ZJhgzLBhGYZXQgBZ+2rF+URIwtzx\nw9AiRNQh8v3XF9daLMxnpFb7p1cdBIVHdD147lykgKyespiSX8axRlaQF4Qj\nZQegf9Il4vhbpcvUJ0tCrngpUI2V0YToOkJHLTvjb7x35ZBybr9BXQvW995W\nCtrG3o+jcjJJSnWg/syqvCHTqWDItN8mWrwLWze3n10v0Gb/rnjyGpHANGJM\naY782DpBB3/M6vG9MlDr5k+RLRyfC/Vakq6/N6ajoWVZf9F/CcVQ42AgLeMO\n+vuM6uxz7Ij8yqvu8SSQdQLG0PFs235dXSxDT0bvI4QnUC7EAQS1H6ZaYvcb\niZzyRdJDXxWT+6dX3A++cH3QE14QgM5MYFPia4YUcqyuqq9KtEq4kxmVLX/w\nWv6gVkzTZfOUynFCzlRoxdNx+eYepT/PAeOsWRhjdPzFqW8miZv94h81Oqag\nUJ0z\r\n=5eDi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9b65b686234f41f72b167f462100d5285827cd9c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.274","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.21_1625425360920_0.636795037270703","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.22-renovate-internal-patch-daeffc6bfa5db4a8d03350307f6419c1017df6f4":{"name":"@balena/jellyfish-test-harness","version":"5.1.22-renovate-internal-patch-daeffc6bfa5db4a8d03350307f6419c1017df6f4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.22-renovate-internal-patch-daeffc6bfa5db4a8d03350307f6419c1017df6f4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"996c5bb65326c235f42962ca63c9c876cf9d1112","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.22-renovate-internal-patch-daeffc6bfa5db4a8d03350307f6419c1017df6f4.tgz","fileCount":24,"integrity":"sha512-44e1KkiXya1yKnJ2COxDlzQ0xqoJMntgvdvOVKskiZxG2F90nsawvpiw8DU2FIuDEXp94ZDpihKbyVeAyHp10A==","signatures":[{"sig":"MEYCIQDUf+R0lGUnhD+jk9gAoW7YGRCqOQ9PAZInsS59mXOTDAIhAJ4vCpktFXG7jaDw7IkRYkSFuiHogDQi0vmQAxbzPQzm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124955,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4hguCRA9TVsSAnZWagAAtogP+gL8tNerM/IS2Ap8iUDH\nLpN7XltNLHKzz8Dn5C/MaKgKrFiB1mFTZtg877PFwpWtmZdgaFdz87EWLg37\ndb+BJn0S+uuAIIU1pBCV+Hc9TCSeVzH0s/xP8EalPCd9VNj1XnLL5xa6lUoQ\n9nltdL9ttX5c7DUtitX83xEt/tiP2CTbtP9AS+11FdNTsTyGshXvHgQfUdOb\nvxWmEFxQJbz64Tj3ezKd6MHUEJSbwYsSqBGRxYiJwv5lHqY2+IQRUx+e7IXi\ncL6T2uDr9gV3tx6S8eAivk5TCIQcCK6hC0PBv8+k5rcMH7I2Ke04aonXG/3L\nQgUD0rUAEB7OCg9fvItZ35IyfVv4B5vs0xGCQz2bBB3ts+6P44zfpGoaL1nD\naUFx6sgoJIHWob+eVaoPgNNycRJyK8GNosW2mhsMbcfW41bud9gMDRZ3+7cZ\n6LPX7Hf3v2lhMRp0eL4fDsevHWUm/0qf/kJjmUR+0+t7HzHfm6lQx9eFZ7sQ\nZocWIGyFFv7yaYF4JifjScMaVMu2rdQpsWn5/qqXzf20PM5NPPsA7Okr63Bw\nz/HXi3dMyAhVkKwq+n0QjnmXJQcw7PTEIRoMZQNftK8Y9mnmbJOYbZM1hd0m\n4S/pLJBrl8sDQ61Cq+KtfT48PHTlrFZitIq/NPySSdaxnmlFZEqd/79S19Ty\nw8d7\r\n=+L+8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"daeffc6bfa5db4a8d03350307f6419c1017df6f4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.275","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.22-renovate-internal-patch-daeffc6bfa5db4a8d03350307f6419c1017df6f4_1625430061455_0.29940721825015326","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.22":{"name":"@balena/jellyfish-test-harness","version":"5.1.22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b58e3add5b80ad6158ccaf058790dbf3ef64e20c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.22.tgz","fileCount":24,"integrity":"sha512-bYxCsP21iOtQCHxCTGnb0MNifPIoHl5W/ivqdPhecWVFUq6T84whIWfvNBVf8mie69/NGHfUbHrb+8nMbp3q+w==","signatures":[{"sig":"MEUCIQDgVWdyCakawSUpODliGyGBzSxMTAggVdL2gZHNwo/WxAIgFcK6O/XoLRkrdSHem4UQwFv9TD5KRmSiVCFm1m0iJ9k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124890,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4hj/CRA9TVsSAnZWagAAUbYP/0fCDARHh8rLvhFiQTWs\nPx07KGOoR7yLO3mQ4+RpRLyouy/QK788qJv9gHneDx8nJiKnMjFQsz0IkuAE\nx7t/WrOyOj6lx3qSQRZJocZv9voO43Miey0qbr6SlUuW7H3yAcXsB5uRd8T6\nhIB/XdF4J6pokTUXys9KCf57sg005QbkbCDziMRpAIubjopyCHpmW5a4r4rB\n7waVBPKDa/bur34dwwjmmEHHauF/Jf7mpTOFBmOydDFIrtOCDbpFgxRz+PXD\nNfNR4pL3jUS5KbEWk6Ug2zm4Bzza6L2XBxIjuja+bSpIUTWTHfzyVuqmTPx0\n0jzTLWnj7UJppwcDYJDIJfc5ce5OskYG+YzQ1Q2p90OhMmuUuH4dLuFnl4op\nGDv8/PxFcoqEsoWIlIvD06qNlEaRON/DuNIyNdR6fecwatPMextN0PKcLKTh\n+1fQhK15xi3dz5wNvHOIaG6ebZ+pLIwh5z2SoBpi6qLR6XV/tBlZzU5gc/wc\n3CeclcQRyzhx+pia/51J9yZTkEs7AS223NtHJCN2QVcI5YBad430f1+BXWZt\nynk1mMhiJmh12hSJ39B95AdgahydxFeMjClLhj4aoESQfZMkb35tZJC2wUb3\n/esn7jqjw9OshdYeC/elrZPqjLrc82SiINao414la/wdqcexj+SdP70dY4CO\nLw/W\r\n=JoMm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6968f273701f29568fbbfdeccdcd0c3238bb3529","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.275","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.16","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.22_1625430271148_0.26313090637906567","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.23-renovate-internal-patch-4899862b50848ecae40f7dbba481989196d57b8f":{"name":"@balena/jellyfish-test-harness","version":"5.1.23-renovate-internal-patch-4899862b50848ecae40f7dbba481989196d57b8f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.23-renovate-internal-patch-4899862b50848ecae40f7dbba481989196d57b8f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d42d9e929a7135f3b141f166723ce5697d5b39ff","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.23-renovate-internal-patch-4899862b50848ecae40f7dbba481989196d57b8f.tgz","fileCount":24,"integrity":"sha512-wIzjC3jGWQoH8hf22xoBRcfT1ZSVPIvK2TGJLbA3sRnAVEuevIDdln/YBVSBk/ktHBdteW94ErLaRsY/02n1sg==","signatures":[{"sig":"MEUCIQCR0cFw3bnpUEk739rMeNIlo4+ITc65IuCOt4eVcy/KvAIgF65FVH5Q227xaElL4e02xRXmI9YpL0akPmoeVFHWB6Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125061,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4j0VCRA9TVsSAnZWagAAgUoP/3hbGG/K3KijC3BHrRux\nrAizdkWX1q2jMevs6DtvPbADSCXEYAA+uGiJ5sHy2Mk2jVm/YVJI/sXgojvQ\nSzUGNHVzjZljCg9vcnjBv6QWRfQiYkZ10uz+fWVGyL4hFEYmqeY1xFt0SLDV\nNIubBp2Loej7zLBrncYzRvolGhsSWdSC9p/aIuweasDIJxB9tnHc1NsNFC7h\nLsKBM1xO8qfOrzM3/uu7Ml8NoIXzfNIideYdvwRZRbT3qtIiYs+QW3dk6HNJ\nMM/DjPWWMU0uGDRlAjKGjgVICQMjWP5objdfAyfYycVdKOGVAJzZ2OhOBfir\nnYk0ckCK1IguomGjJCZwT/WcgG3En//KId/KyhcqB2WgDE3I9OHZyLmKMXpJ\nzGcs1/yZmzAcyrlie3f2bBMT0DjaLgwbDgW/8v2qRM1V8bD3ZTExzaTnSh4J\n2VBOQwg98hOKMHGtgl6aYXCwRZt+9jwjf0bjAb5jQ/Gz1FOBqoilUSNDTTyB\nmNT4ACyvhzDcT89kTtzwTTNYTUs7V/bu8W6CRfJQXPHpp1PBpSURiISvFzc4\n7eurDOWFMWFIL5P1eGFbITpfDW4MGr2XfX7Ei0i5vYS3o9Jg1BONTwgJjUvk\njNnd3bkw0mKv+yXoqoiPUBWtFYKWNxgjqDYjZWYRZpHZW1u4OHCXB6xUY81G\nUfoA\r\n=4hmG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4899862b50848ecae40f7dbba481989196d57b8f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.275","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.17","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.23-renovate-internal-patch-4899862b50848ecae40f7dbba481989196d57b8f_1625439508977_0.4466926271961651","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.23":{"name":"@balena/jellyfish-test-harness","version":"5.1.23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a090c0d2687ec596e58b1c0302cd5218720be7e4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.23.tgz","fileCount":24,"integrity":"sha512-AANBIeINkEQUD6I3nbUXgLlCJkRnVxcTeDfKdqrx5o49r5Q7GXqHhHXakD65dRAPZ8KaCOBh758JUGUztI+UdQ==","signatures":[{"sig":"MEUCIBcRgtefK0xIIybD3dBj3ceQe7h0Hea0PidQMahPBogrAiEA84+z4GlCu1cCxULJ2A99wmtpqK+HN/P+/v8Abu40LxY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":124996,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4j3VCRA9TVsSAnZWagAAetQP/1ScxaQTaXji/Etnezko\nDDEyp+Maud+10qCGuAJPoMF+YaHu6h1mZpYtaCeATrlO8gE84zzRwtAjuX6q\n0Wdxw2OKEtx4DV8kY06jxBB6tPgcYRATuWKZx4qxI/59R0zE+Fv8NZJt7nxQ\n5VfroKod5GMzVgrn8bjwP49d344LtDlv+c45S0tsEXe/39Lhlyqj8EFXXVs+\n9h7AaNs0aSHIQoD2A4W7GwigXgoK99IxSVJeZdEnUbd+c5J4rKTl0R8lNOT6\nz1ydkdOIZ/Dp54YZcLtpgbonogGN9ZfxhHZJYH8KE9UmtIsbq53lc5K7X0/C\nDpzY7E77M9V46YjsbGIcVi4OezpkpCoRRC9LMGdv47TiVPQoCVbXximsYWCH\nVXDd65BzplbXxyzvVHnLDYqXHnDaJnzV7KJxUOjnF9Epize5ReHdRfuhC0Vp\n7+D2MlchuSDZlDe/jbP+r0iMb1JELrA3TZQuD8wk2fj4oD4A3a6hQPCdtvk/\n9SbZ6rFZzt+H8tQ1929sBlMRxS/jp37PyWHTHQ9qC4wMhbbMNy0XUx3sMHdK\nx3A2VfJe3sym3CTuFo8IlKp0Fdg574YZUGgjdItV0xOVEPPGzwD4UaSmZ7IF\nb2WDwYhYvM0Xjz1tcA1oKpqk7JediXsmR9h+fmMGtgUIItqniAyvSt7QQ9lJ\nKIoo\r\n=Uoh+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a2144d930d5c05fa40f60af1d3f1522c8dba00dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.275","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.17","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.23_1625439700568_0.8835313747831801","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.24-renovate-internal-patch-be3bea7d5db85591a8a146020e46473feb1c3a7b":{"name":"@balena/jellyfish-test-harness","version":"5.1.24-renovate-internal-patch-be3bea7d5db85591a8a146020e46473feb1c3a7b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.24-renovate-internal-patch-be3bea7d5db85591a8a146020e46473feb1c3a7b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a231a5177a05a86dfd471855669df4afbb8060ed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.24-renovate-internal-patch-be3bea7d5db85591a8a146020e46473feb1c3a7b.tgz","fileCount":24,"integrity":"sha512-Umwp33T9qdQUhLAGOVgrWWmxqX1VXnGurSgLQS8mhDj5N+whkNXk6VRCLUR1Yr/b58X4//pUXR7bptfi2fGM+Q==","signatures":[{"sig":"MEYCIQCqJ1AsdxiR9dh7WIx1uP3QM8ThwNdxWV5KXyd7EsvRUQIhAKzc5NxPR6bCDIMsw8oNbfZo0v4loDURNMy28m5uShre","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125135,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4lyQCRA9TVsSAnZWagAAJlYP/371gppgNQPsna3KMrQr\nr7V+5GG63EgC2TiG5lkwMV7MQIg1Jp+O3C6xen6mcFtAqvoz+GYC+5tIKo4G\nTaSDA1vz7hgyAZtVyhGFO5XiSB7tMEOJq3cNT2gTDP5qIpnPQ1c9VbDDqheV\nkzb4tHT9jSH+JyWV6PKxqRnl28mOpoAYwgWmcYMEQAPpRIsRouoBMU0XyBt4\nROBn+6Zqf2k3hJg16b2Byp6C+R45uT/zTkjFNteVZ7XFfaAp1GzDt4quNErn\n3nBk4qIxkNYmJlXliegq54NeZZXpTakaPWy5k6iLygfVSO5sgeJKfjjjemRI\n65uruDgkV03JtDS94Nz9Oz5ZDBbO6dApFLoxVO43+OUc/u0Zq4NglJmIMtqf\n2ngTfdVCwWHHucdJLwGRiID7lFXXJpJ3Xt6rgCro/Mw0G3lcg4rKN61hgksn\nfaXK3+r3aGJd62Vm89/Lagbl/54roMoP2kBFcqf20BfiHsAK9EOTG5pntLFT\nH6MbwCBCEgVEz0iqly7Pw2a9F35ogoDXvm/uxkuUTtxBvNPwihjcAIy9zo0z\n8Co5g6nZY7vpumJJQXtGgRKNLd+4tF/zFtBykKKMEWlOzRmKPwYtifvwTfHV\nSXFcQeqTysZwdwPe+WtUw++dkNgTALNeyLRMgQQSfE2rawFdofVnQqoGt9G0\n5VBC\r\n=R+sb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"be3bea7d5db85591a8a146020e46473feb1c3a7b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.275","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.18","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.24-renovate-internal-patch-be3bea7d5db85591a8a146020e46473feb1c3a7b_1625447568382_0.6116754349809888","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.24":{"name":"@balena/jellyfish-test-harness","version":"5.1.24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34b1c3f3a2a2ce405300381736dbcdef77d5be82","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.24.tgz","fileCount":24,"integrity":"sha512-a/jwCOv+Ajmw73WtIRVNWH5/Qt4XDMExUQFfUkiL0coDvab+S97l67v0krirSHrMWIRES8OuXcPy9tzlvyilFg==","signatures":[{"sig":"MEUCIQDtzLbho3r3ci23i1iPWeOu+iO/oytO4+HVvZw3nFsXJwIgDZTVLpT7PTwFbnE+U46XCWMZfArCa8uorTnL1jXwGh8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125070,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4l1cCRA9TVsSAnZWagAArK8P/1ffot6m67N9NBONZ05O\nk8Z3B7R6nZM2BS1GYqdVlq72YNeTyzx2VvfNVxOPl/FpEfz/ESaN+nqJjmlu\nuJtxjGW5yc4P3LRq4GLU967o/jm9BP5hWdMXA0b0gyeqoJ/plNocbnxWWhAZ\ngFtFhA7msaVWodhoHFE1CXip8yx+5wYk2417G7BZQ46oMa8odr5uhSLuT9uO\n/iHataRcI3HtgpCzAvzFrCvj8QqDJqXNI3oJA97i0FAOn6mf+iDc4muG2MjY\nqPqkNch90DFvjV/8qWxQOwfQVvEkQMnD0TW7zR+FVhzGpJREqRbX28S0JtJo\niD1ReV8fiZxGg3OX1mwn1681zf3rGpwjO4YhKFjXZQOpFiSA1WAM4MS9UJnd\nYCzUKyk07DCr85slpkf0SzljXw4RMjwYtxyoQVfXrUgW7bVIFaHuKOb+JQMu\nMPoqUEf+/ndpduDHJGqik5ezXw6vujvNSuzmeLb0nGTOnjlJoZXIlGExybwq\nqe2WoRicIXyCIKEPRFB7Uo5GX5I8ZjBp4tMEFrJfJdh4HxOJE9lIQRT2gw2y\nJ0GPf3P4TPkvT2O50vPcQAFDE2klVgoqmZQOHyg/pgoV/ZfrV9u7FakxzeJb\npGmEZ5jhvMSullRnk6Mr0pgJFx1N7ktAFkNliVhWvMUQtVyHq6nQeAYZJuUe\nmt7y\r\n=BDBb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"287af790d9143784f43ce711e09d6e9376896b21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.275","@balena/jellyfish-queue":"^1.0.202","@balena/jellyfish-worker":"^7.0.18","@balena/jellyfish-environment":"^4.3.9","@balena/jellyfish-plugin-base":"^2.1.183"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.4","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.24_1625447772048_0.6462874704222958","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.25-renovate-internal-patch-6f2be548a19205df63a748d1b8015ff3d9b3899e":{"name":"@balena/jellyfish-test-harness","version":"5.1.25-renovate-internal-patch-6f2be548a19205df63a748d1b8015ff3d9b3899e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.25-renovate-internal-patch-6f2be548a19205df63a748d1b8015ff3d9b3899e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d1b917633e509c2fbfd18a1006352a6a2c0faba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.25-renovate-internal-patch-6f2be548a19205df63a748d1b8015ff3d9b3899e.tgz","fileCount":24,"integrity":"sha512-+um40+71vQPdQPZKeZdviNJnL7yaum2Mm1Oikk0bAZT3brshoaX8oD7MW8aiHghJpC+cwhsgTR2JRNutL+cCWA==","signatures":[{"sig":"MEUCIBzs7beVOxatEWZYpPn2r8P3WyWNWZlV2tPpOKRXZTaPAiEAvjZ1uBuCZSWEfFCk7ltGrrGgi50c59CdQnJbhkuKDLY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125210,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4na4CRA9TVsSAnZWagAAnvcQAJAaPXk2NVA5Kj5fYbf5\nUVIYCy65uQdkxTDmu+gLTO6glXlLRx4fRcHeNnH0dKv4v6sGVxf986yFWXVG\ni+jHeS7qs1gnhhbizeyHx3dMapw62k7StFrj1ntZ58L8rzRuhT4DOMotXyDh\n51d8VFKRLxAeqpctmfNkyd/qWtDgSWXHhFv7mnaeq0BoyBsK6lGbtzv8QwzO\nGeTm++h+grlhWArX02/TGH+bi0PyCQw33IhPa6G7+rTN9iipefY+Ee+QSvhx\nWPahH4+LuoX/V7YT7OdZqrsaYMcORv3JdlaON7HSIvMaQ9MjNABERv8tRYkh\nn5xawHfcfzwqtf2zhTlMZzoR0ytbW3PADnrG2voh/VWUeFA2Z2mKRiz0WFdd\nY/bhiJ0sdikYoGRuphZBAoeh8YeLAkhsuL2ZLytC21ZEqQE14YrGWwwNjeNG\neMinSM40pwCc+j9k41k3XvF9eNRaukvkj2ADd1fH2WJ1sTyUHBRwvKhMaDgo\ne8yRLA+YMrk7mpq4sOOfBoUKKMrlUb9V+OjV6jXmMV4OH3T5sgnzHbXXZ1VV\n46rfTD+W76jfpjyK5Mw1jgMqGL2FlEujK5U1fITn64Wuk81z/+JyWYN87ix/\nG7459yjYwx41jOLfU65MD36gm9JsFJC3R2M5vODLU0+2k448OIBQSFumKR9R\nTFDp\r\n=s0lI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6f2be548a19205df63a748d1b8015ff3d9b3899e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.276","@balena/jellyfish-queue":"^1.0.204","@balena/jellyfish-worker":"^7.0.19","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.184"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.25-renovate-internal-patch-6f2be548a19205df63a748d1b8015ff3d9b3899e_1625454264450_0.29510987642998154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.25":{"name":"@balena/jellyfish-test-harness","version":"5.1.25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2509d79336effee2158a60b048cb23d7c6d333a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.25.tgz","fileCount":24,"integrity":"sha512-Dvrvya04sMy8/fNOCGAODfpMwRTngczLbpGeQylBQLR4b1H/quLb3AVVdYwrdMxA4edofl6BUWiKElRZRfbE+Q==","signatures":[{"sig":"MEUCIAUkuXDSZOOBQU9QrVkdJRvb2yjeq6MTq7wlCa3TFBEdAiEAz+FKdKhKRNZIt1Pfb/EYB/kHoYJfDhakZpO+Us6hdc4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4nfZCRA9TVsSAnZWagAAHgsP/jPL6bmTEqUO8UNUT+lb\n5CkDKiVQHQdsjpmwDLiwZ8zN+ZFnNAeXQ8SrK0hsA3otlk1A0wH1ziopkfKL\n4b89TGtoghaJRUiRlBpCCVNRUGHErJZmPj6tw2JoUtEaWUjgJhCmic4+oMDn\nATKJFwHI98wmWIkDJjMxdKd6fnyJoBPK5Es/wbfzfCKqjhpW9RuM2ElJk9kX\n8EAI6R1DT5s4zS3f5yE8GldsMveqkr8qkX1RxzY9HA41DfAFLmWHl7B9iogu\nEn+fWVSXYe7n/7UpOpPRmh4y/Y+2ww8oQs/8aD21XaUtxgQgrJ59VBsQUt6H\noD/rGciGas2aBsWTCiQ0/N0lfYCIPeDPXvCUARFSJ05Ur/O5bYM/jvZl2JXc\nqaN5DCNZ52iQluVJjsrcAVUfjI7oRvRZ4vgS9raRWQmfhHeTUR8Boa170xgB\n6NsGtzdeo9T4hUaTAjjN/99qFpQQOarG9FkwQW7ANzZ8IEw0PPlaMUPS837x\nAbxMiHJ7gNVyl0qz3nlIwR8tIjDEnxYg2L6I4cC2NYDPfmv3m6FbtWaJHuMS\ng9hA9VHkPbiRLCz9lISYY+bOrli+dEtFnqYuMfvnaXeQ7WvTtO3ptDnADU+n\nilK0Pbeu0KAKdVHKTzZILnrNHKHbP9MbnDj2JBZJo+zizJMCrYXOcNL9Y5sW\nGYhL\r\n=dznS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"22e7b51e524d481e158c729895417241e8942857","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.7","@balena/jellyfish-sync":"^6.0.276","@balena/jellyfish-queue":"^1.0.204","@balena/jellyfish-worker":"^7.0.19","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.184"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.25_1625454552586_0.3403784407451935","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.26-renovate-internal-patch-4684b61150c4e8e08c63bf3568581b5d0d359694":{"name":"@balena/jellyfish-test-harness","version":"5.1.26-renovate-internal-patch-4684b61150c4e8e08c63bf3568581b5d0d359694","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.26-renovate-internal-patch-4684b61150c4e8e08c63bf3568581b5d0d359694","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"993403a80e4387297d2383806edb3ad9b9ea85a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.26-renovate-internal-patch-4684b61150c4e8e08c63bf3568581b5d0d359694.tgz","fileCount":24,"integrity":"sha512-XMRbeHPgkI71CPorp2PtMMQD7i56zIYA6NwNS/ZMKXzjIJpcdEpScA4b1xHwg+IAVLn2n6Mljy4oQuCGVJGnpA==","signatures":[{"sig":"MEUCIQChXSbcS/pJZ/cYlLfpx3jRDK6yopW1R4pkVA0XSTcm2QIgROXSoCo9ncAnFUmXKS5KEOkW+QJg91WN/qx8ebh+4Ng=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125313,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4nk6CRA9TVsSAnZWagAABqAP/3rIWfTtnxyf//6j2/HM\n1BF/K8NQnOoTC+RXubiUc1Kbe+WqPtlL2D9SqQ5INBpTCRXxAaL7v7Nsls6a\nOINta5iA7e1/zlgEcDD9hDnQ+WJs4PrIUbXEbA61Mb2UKIhncWiYjIg7fK2k\nl1vlh+jcNEZN/zLnTjPSHNQ+QleKdek8m04uzmMNSpbGDBxB9zpdyLdecuVv\n3N6K/mAUJjQlp4Kte+KtC7eccqmW+CzeFOzBFPqkcrymbPcQ4gERNM06CvPY\nEGExJBFUEj3cjfM3QmmR9vEz2vt9QX56x9twb5/B20fUPiJhQwdweDLOc2Bf\nrYpHmC8JCUW9lpG39OmJYGnGNNMdYSxonxCJH7XEB3EGJ98NrBp+LvwwYvqj\nPEljm6oxOoeodGgCCFRzuOLg0M4C+T7v8GCVNwaeYaaQ8CbZTVilULEE+aIv\njY22VYzdNZm+LuOsHkHXkBbXP5TycK/uSKagYVrGr50QscPhqe6QuiOZhyOF\nYA4etSV7LfG+nFrNrjbV5bOSTL4VyFuVt8e2VqJZJaaWotMVYnmnKLwv+9n1\nJUOJ5UIpSM4F7gAgtGUQ9nWoi/xwvCA06C4Qs39xvQ6LmAgfw0O6xwLyssZe\nvSXzB80paV4c4+4uUXum7+Wq5T6Bq5tdcnjCjpV6gqqxYsdXaun15epnrGHs\nnamH\r\n=spgk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4684b61150c4e8e08c63bf3568581b5d0d359694","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.8","@balena/jellyfish-sync":"^6.0.276","@balena/jellyfish-queue":"^1.0.204","@balena/jellyfish-worker":"^7.0.19","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.184"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.26-renovate-internal-patch-4684b61150c4e8e08c63bf3568581b5d0d359694_1625454906172_0.9999362017233517","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.26":{"name":"@balena/jellyfish-test-harness","version":"5.1.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c333e0e276d6ddcb490c52d0977901816473667b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.26.tgz","fileCount":24,"integrity":"sha512-aWLHmg8ifdMglNRcBbnG+iRsKM4sl05x8QhYL7onbvB9tlvCEgW+ycQw+zDG8DPni80aYCiRX9m87dPYqneeYg==","signatures":[{"sig":"MEUCIHssWQdrUR4kAxEm8K73moyaWiYvAPA2NI0FFDVXlm+DAiEAxBp4uw3YFubqO053NLkCDdn4AUhxsCDCj7qP7xKmTTE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125248,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4noRCRA9TVsSAnZWagAARvQP/0NZe3MIdtqu34XPBEgq\ncu2H+63K1KIXwHWwS8HJ9paCa0kvBzl0dAmflH6/yJG2VbLAonAx8BoRe5qj\nrpSe+2d3X2qXhw9AljHDg0XdutrWYxzAqIKKUgdJ/cnNUpq6E4pfhPtRf1O+\nD5tJv/g6VE38mb5IG5SXklutRklL2GWBFeV3cFb1tNfeZISR8WhAp5Ng95px\n/GB1ZzB3Ok7+wdYgDgcQe7pDBffgedHgBFwyw2k98tlWboHx2NBCBMaT+gA7\nPj/y45ngCBHUJXUPmqjLD/gXHqmYeCeUixDh9xN3AIjRHWhHjjC3U7rzpbPw\nt1iEKWUwRGAsZBunE/yTpKIP382cVa3/nvFJEZ98XQw11+DhtbrBSZXsEabR\nIvQO9i72kvH/zH7WmGZjaTQ1kdG6HJ27BAKxaJz9wdpmWe6Gct78SvFfu1RH\nm4pkPKaU1UW/Ebxar9yyB3TkRLDqW+CEhuvWHtJVxIkhyEzpMeMmDNvmGIbh\ntohJ+CVP91SHgGpB5GpAq49IMU+YHajYRAPoNdiC095Hfj8rBS+65SIxbnZy\nxGK4rS88LJZXuWUifkwplcJXrc7tOFlzLifQkIYA+i7DhCWSeNLfoDK/naTA\nyALzVX6cDzDjbvjvPRW8oIciD6wyVj/f4YJ576o7ch2DUWL5iDzone7uTqUJ\nxaBU\r\n=DoQI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f6f8444a0ff93292b4163edb9d51e18794117715","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.8","@balena/jellyfish-sync":"^6.0.276","@balena/jellyfish-queue":"^1.0.204","@balena/jellyfish-worker":"^7.0.19","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.184"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.26_1625455121291_0.9028121933347146","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.27-renovate-internal-patch-0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7":{"name":"@balena/jellyfish-test-harness","version":"5.1.27-renovate-internal-patch-0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.27-renovate-internal-patch-0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"267a4f0e40bd0f6d2a0daff1d8c557ae51b3164b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.27-renovate-internal-patch-0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7.tgz","fileCount":24,"integrity":"sha512-auZ2BbYXQ4ioEUtpPK4wo6pEFA5dQiljG8RN6qzN2obaAAGIJZ2IEBwr2DWptwBWhd9raJ8nM6LLc+1enZ87DA==","signatures":[{"sig":"MEUCIAHlJAybPRW41o07CRkUsBRAw/myJtessacvBCT6AaBwAiEAzKCx6UPk6flhwOSKLVp2C6EFDO9aNvc2Kvni5zM+Fw0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125387,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4o1yCRA9TVsSAnZWagAAubIP/2PfKkiIMkoFSGladXxz\nmfysGh2RUqSZNYiLAg7s/sotZin7Jd7i5Fc+SfZ3ZuPIPzH4IoiWBi7K5NEx\nCRas8NjtXW4WzjLrWAOLMgcAMun9dmxbDJnFFCWgPgPHcx2dQiyOPyS57V4i\n6PMkSSl9P4/dCOYW6Y8Q5b2bW79Wd+hPAnd0GqaVd9GbpzD5jqtix++66js6\nT7VsaLIvUoPH+D53MQZW9rCZ10Xo5WOW5oJ+zshoF4AjB9foPHeDgpwL/Qe2\nsYzTmRkgVh/4cBfKObg0ulG/tq7fxXtBBGIDM21ZW7IWUl45FcBf3HsOIS2c\nPDdehaTCOcl1xPHyASounz6GjdioLk/GT0LlhOEkjjfGFMjk2SGb03JnL6lD\nn0kYL0lv9+AnRTcdpAtGoSri5e66tbymHZS9R0p/pcWRLib5WZN25f3lfSxC\nbmpvcCKMOm1W+vgjKBiRCgN0Qj9Il3eWU0RS7pQcpQeKFdnnoIoZLsv79XfU\n9pp3XTf54waB2dqGAgtDmNUWIdTVx2nAsasw2a2n34BlwUsPePCRQN6sDyvF\nYSqL7PZK1cJi3Dn0hQ9wTdIfuJEZsnvJf+sZkwwxDpanLKD9ij6d57j6RFNo\nGVdzcJ2qNvJPjOCQpW1gzsiwT/f5Mr/cnSJ4lSL6hesZz2DV5cmmfHLKfiLX\nnBII\r\n=XQ5J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.8","@balena/jellyfish-sync":"^6.0.277","@balena/jellyfish-queue":"^1.0.205","@balena/jellyfish-worker":"^7.0.21","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.27-renovate-internal-patch-0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7_1625460081493_0.9006986227131286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.27":{"name":"@balena/jellyfish-test-harness","version":"5.1.27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df423f9b6cdbbb61c55fddcd198b22f73c933a35","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.27.tgz","fileCount":24,"integrity":"sha512-phsxIpV1zgcqya9uAdbmK1EWp5PYI1uld0HHcGrPrR+BU0xvtgGAtJIAVq3T4wScCpSc9rnNcLOcSXAX4bWegA==","signatures":[{"sig":"MEQCICJ7RTvm7daGKEbw3GF5CmK0CiXEZEAS6EkZIO5G3EqHAiA/utXW6jMwe2hPk2ktmO6H2AE5NmzNO8dUNYYqVPkGDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4o5XCRA9TVsSAnZWagAAqwUP/0rDB7hfdwFpJzakZWVa\n84jxQaw658NIxzfxawFzwX/6i3yGIkI5IIK9HqkqvMTd5BIAKG09VtTk16Om\nr1oQtrKyeeCLt6flbDY5oBNrdALt8OXHFWkG3neUrnxrabThLtZ3IFHatPL5\ncdfzCqpqhmRC9yrcJ2rkkk2XZr8vjsuVLPyt9O4G0j/vN+ex1MApKweufqnG\nhZ2HAtDcNsX1J8PiSjTrBzR1DDjls7rggEa75b5mPwB7WnBgUXamtu//BgRa\nwBXZIF8pDNXdrMlC9fQ0rIhiE0AqqgHvkFf74z9PzX9RXnwfpe69w5Vrcju2\nPyOS6DlyciQUW5YOHIBeRvKBaoSW35+Wnhh832xdOiWKutyGQjE7QtFMmPL1\n2awgQe5GYxGr6ATYy2l1D2IbtW3h3a9oEQ0cJoMW8QfgqUJlNd7IW6MLO2km\nWNLX9VkaBOS7MAwjYzJXxwjZx8tcqRsoZo2l7OQbbjVL1S4QUj2y9KfS6duR\ntqcvhO1Azbfdk4jVf9RGYuqeMeRTk/Ta+pS2d5I+IZY6l8XU6NvejJtbv9x1\nCtFlhZcUZhRuZ6ZbYq2CyUqHSm4hIdRymkfV9pEUiTh+1+szqDkopn0dfGgy\na1wdbFoGL5s88JW4eiLJD4R0Kt1d+uxm+YLadPo1r9gWllAOpewsioofPavw\nAEN+\r\n=Q+8a\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a89c332b6c53c29ef5309476fc6240ef08926638","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.8","@balena/jellyfish-sync":"^6.0.277","@balena/jellyfish-queue":"^1.0.205","@balena/jellyfish-worker":"^7.0.21","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.27_1625460311300_0.21900956941079275","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.28-renovate-internal-patch-2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1":{"name":"@balena/jellyfish-test-harness","version":"5.1.28-renovate-internal-patch-2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.28-renovate-internal-patch-2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14f6cb41054b7dd22549c6f65ae433e6faacdfe7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.28-renovate-internal-patch-2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1.tgz","fileCount":24,"integrity":"sha512-m01Fb0mbTdNU8pI0Cqknmk6krZjnIV9HYClLo8He+qVkec8lXvvDGSg3UjKfYM0a4rmZLxM7+6mMWyUM5lHTZg==","signatures":[{"sig":"MEUCIG9/Ped+ncNy0FE7jAogERKtoULNd4AxYrTf7XJaCoqMAiEAlT5/FTDXLKQeF6ugQ4mWYdTFZf0Eaq2fFsitd7pYS0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125490,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4qyACRA9TVsSAnZWagAAuTQP/05EcNFlmwpNjYB4imEL\n/ujkaicy98z08iqH0cHYIeHzcpOe4iWNp8wMa7SKMdaqGnkBBUHjZ5niqIix\npfba5JT7l3P94Pn2wxnKVgL4cGG05OGDtFR1iH94HFlKzovuPmrXzB4MtF3b\nXvaxo7zYr/W5oq94KB7RSzjlfSK+iQeuhPhxpbrr5NUM1Vu82YKnCrpWMBNx\nrSFIPFbsSdnERLIr34wM1p0DuibwLubRMKpCf/Qzn8lulrS/PfJyKl7/CHOB\nxNOlJnxV9Zl3J0hyOuFgS0aIiBPi4nPWfTczebCRQYNOiNAfcC5fkFV64VHN\ngCwva0eZCXLfkPe6ahUMORjwIqZFxK5RRst5+TscGIJ9WK37A+mnr0bX6C6r\nrYI8LGxEN/yOf7SL8DEX7YEYhmjkZyfBUbqRuGj5fSF2+y/rbm3M6jsfidC1\n5r4yX0Tl0FeKoh1u4ifarsXG0ZtmO6jVAzLNchEWrrkLA0KZgkkNbmf7Ymt1\n3mHHnXPF9P9X52u/h4L+/hGWvagA2Dv8yBGSl9jGinCqrsx9MJlf2iNATECD\n67zDqQ26ULcsUQn5cVYXoZLLRghVQdaRR1Y6BOGwMPRToQ4siDjBgtYXy7bZ\nZBDYx81eegkKqmte/UdwxC7nAoPgTZgrl/ZqEMsqq+HL2qUQqB2kbiw8aAKW\nxQnV\r\n=0ZgP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.9","@balena/jellyfish-sync":"^6.0.277","@balena/jellyfish-queue":"^1.0.205","@balena/jellyfish-worker":"^7.0.21","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.28-renovate-internal-patch-2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1_1625468032327_0.1706823795419341","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.28":{"name":"@balena/jellyfish-test-harness","version":"5.1.28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.28","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d61e40ee4c772739555eadfbbc2e1f46e5de5f96","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.28.tgz","fileCount":24,"integrity":"sha512-1K1gpfkmecNKF5ZWXGL4I93yNHGr/boIdWuPSJQDgydRPWXQXTZaalqBoQtQSNl2uOYv2qEvdMeSzZNnrwrJuQ==","signatures":[{"sig":"MEQCIHkP7JiIX7I/Do6ah07xhMr0nRf9EIRXavvdsAGW7ugxAiAIRQ3JZGt31QPM5lIPHAK4mjMNx4765HE3o6PrCz4cog==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125425,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4q1YCRA9TVsSAnZWagAA3DsP/2gsHYBOwchdL4DIwO/D\ns8wDL4xUYBJBCEuFkpJIqHQytlw0SYJL40fdDb11sGlh/Qn1dVCF2n+ybGc4\ndrZzjJsj3vZ7KrSTuFLaB7pn2mzAgm0XbVMBYvRKI6jc+ankNK678dGT7Eer\n9dqYOUb6EoMDK/rDTFpSb5OTHORnh/XXJm6pREj0SKL+RIOtBqHCXLNinFOI\npuWE35uHMp+ZeKON8jHNKxI3UyASTiJIkROKZ/jXXUHtdRpaQ1nRflJGKIB9\n7v0ZhJPWiDSbGkgt+Or3QMGStp3gfPOIjmu5EV5DENXXgqVGtdLbB2iKQPWI\nKllNl1cZiyWWilPpc8YWJ7vHfgYdVwch9+QdYVCatUDGPzUlZD2yHgoyflj2\nUC1EgXT0JJsLAzvbtLIdZCmFcxlczlgbfDu4ITfkDdQLJPpmo9mhxs6favb2\nTVk0mr80MNoTsZYXURDZQNtI8M+aEEBPz3dd2g0OW4i6pEFJG5KvwhPhnJyC\nJy6H1Dk7YQeFQgNIggSU2ROZa5XAXbwDvLuyBc2aPqhwcvcWNhGaTZ54ykLM\noNzIv6nY0C4bV6nch2ylWcSPV7qH5ARTdYUZZPt+wwKIDM5+Wpi02uVEhWep\n1S5YSvjUmzjp5Lt3gXtkbZcFLJPeN+Et8tgyhsNcXqCWRreOHpcUBfrjk283\ngwZ4\r\n=YnP7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"27ddcf753a4e447f4c878fe2c565304c2337c47d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.9","@balena/jellyfish-sync":"^6.0.277","@balena/jellyfish-queue":"^1.0.205","@balena/jellyfish-worker":"^7.0.21","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.28_1625468247973_0.2789116319240863","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.29-renovate-internal-patch-f3c74d4442971e6ce715bd2b799d19d19bd224bd":{"name":"@balena/jellyfish-test-harness","version":"5.1.29-renovate-internal-patch-f3c74d4442971e6ce715bd2b799d19d19bd224bd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.29-renovate-internal-patch-f3c74d4442971e6ce715bd2b799d19d19bd224bd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad4b7d10bb76745bd212c4bdc4035c6ba2ddd850","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.29-renovate-internal-patch-f3c74d4442971e6ce715bd2b799d19d19bd224bd.tgz","fileCount":24,"integrity":"sha512-OYjumCKq+DcpTqUdBrUwarvu6sKeb8MwVZEYwfVJi+0iFoxQcHjNibVybovDqh3eTdx/kWqRVoU9WU/tyHBBTw==","signatures":[{"sig":"MEYCIQD+3lDf8Q+j4k1ln/myyLNb+ZhUU460akNPjeL1H330CAIhAIyrqQk/S6r7DQi/qjqXok7Y7r6uIkAdP0CAfppyQhMr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4tdnCRA9TVsSAnZWagAAoa4QAIbSR4E7NVasRBkE0T5o\nJbJ0yOecvKE+rNw4nj//pUNZVGfM1jjG1ah1kJxFMJJCGkDiAD0+Hvhuwmbf\nNGJD5GNeacC0bNbNFwL2HXYmbGTSgp7LOjk1tU4W/Z4LvS2fFgTbZRXfZHHk\niI2cF9g+gaI5YqBWIJlkw/wP0TfCF7fT6ewM2MIpOaVsuipgun1dSuDv4qAg\nzZV+fd1fuTLCK3khRpNbQg0NckMm5kDw11itMm6qSzlZdURjVUfU0eQstYR2\nNo8ddsRfHz99spdLSsRs6b3DXNVMx/9moEwwcWIEt+/jZCHTDrTdU0HEur5J\nPi+JAkzOWMKvk7eESTpJDh0nsLL8arkEwko7YqDajfh/XbkRHSrwUBx/F381\ncG0SEsIq8/O/TpTskMFgsvzcuK34ozSYuKcEqsD7Lfi7IJWXFqM9IRG7RB1/\n4TueqkEqjAlFkl8wESlitXKQGy14HwudYNzeRL/zW2KplsXqEbHah0GFhG7Z\nC9LvueTtFsb5nbMXv2ZScADAhK9miQzorP0O6KYFsrpf1UYCH3OGx1dxeaFQ\ndvLpYUNWAhwlvaQtZaAuWS2XNAo8z9MXcoa73nNVN01hnouS7WiCL2BR2YFj\nsb+9l9lK3JWBX94MbKF/vfxEhqIRuPY9Gg1Xy3AcT5fUzlOtG1lpscYpPiBw\n1mcS\r\n=KKSO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f3c74d4442971e6ce715bd2b799d19d19bd224bd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.9","@balena/jellyfish-sync":"^6.0.277","@balena/jellyfish-queue":"^1.0.205","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.29-renovate-internal-patch-f3c74d4442971e6ce715bd2b799d19d19bd224bd_1625479014613_0.6398145177561776","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.29":{"name":"@balena/jellyfish-test-harness","version":"5.1.29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.29","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"82d31e44fbb882abd395947e0653394e7197ba40","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.29.tgz","fileCount":24,"integrity":"sha512-6c16A1F2tQNUnl32r8VUeWEv/AtdmkvkAXj/MWbaht/s1tpa2LjXHIVSdjA0Cp8SRF6/V3i6ueo2QvB0DDvZXQ==","signatures":[{"sig":"MEUCIGCzgEFxpDB47wM+z11p/CHd6v9TC73J97sd3VyfERsgAiEA1149b5iiZ8J+EH0rTb8aS3MMBAA2LZBfjGpxdz7lEWM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125531,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4thICRA9TVsSAnZWagAA1SUP/ijs87NP1Qh7hfyQPvUg\nR+hA2iW0OsbybhKcdAbV8Yc4Ky3Grh2fKk9MxsIqjRjS1+is/dBTOkyWiGzH\nKOqfi+q/ZgwvWHQew7o71rACYe4v+ver6qk5o7nEBXQFieZ1kxyE3x+E5GZ9\nYEru/pDOGOh2o3wSyg3bHDqw5DD4CsA4xSwUJDnRsInCTBSsSICndy19AJF2\n9UZIhQeOFXuFKEru6YjAEanog0OEVZvtJl8hgbJUeBgra7/9DtTuY0ymlVl3\nVJUQeYx8coaRB+XAH0m8qF+7TWVeR/2ihRaYrnAImre6Z1JC6WEBHhGH7MJJ\ndUliAlBWWQUDVrOcAW4LPfi6zzRh4akJLjSOTnE7YIC3bf2YGNloyAK0o1gG\nZkatUuTbYToqj+Z3zTNG+X/36UNBsiSi1rmit+fFHUmq2DfPUD6y6jEvzVAZ\n2fdz2frJNh8ty0stNVrGqAaa+Y0aZ/JAVMHXEwVObIzzJRekOPkPp9B44+Ng\nrV7t9lGnw/4uuGW/PWKOkg5PcSMfWRV2oQNVsppuMkhma7VQdyMAtvXXnn32\nh+d9OmS4NbI4pZVvYB0FKWqi30ufnvl0+nxHfGYel8rglZNFbHcR/mkhWvTk\n9XmT+X+2mx+HyS+XBfL6O8N8MzsXgKTqvdwMOB3B7US8i15sDPNliEDkh/G+\nqxGE\r\n=U9d8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c0953dbfbc92a81dd893ee57070464112f73826e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.9","@balena/jellyfish-sync":"^6.0.277","@balena/jellyfish-queue":"^1.0.205","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.29_1625479240268_0.028606539198119396","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.30-renovate-internal-patch-c3c956775ea23222a805528459176c8a66c48792":{"name":"@balena/jellyfish-test-harness","version":"5.1.30-renovate-internal-patch-c3c956775ea23222a805528459176c8a66c48792","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.30-renovate-internal-patch-c3c956775ea23222a805528459176c8a66c48792","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f37fd24c1a56a552ca214fd95c0889ab18c234b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.30-renovate-internal-patch-c3c956775ea23222a805528459176c8a66c48792.tgz","fileCount":24,"integrity":"sha512-XbXdCZbZAihuq5osof3ZpIoKxgltmzM/HsSclWqdxv4Fl9ag/obiFfaRUXRdOdX7f3qQdTA2CGZjpTRT4NjGhg==","signatures":[{"sig":"MEUCIGkfORyokDzSxXFbROxV9Bh15TW38mDN/s1BKGqOUsB7AiEA27aVDD1QlSSWV8kSjAL+Rl+69aiSMiiVsxoqiy1XFLA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4zZACRA9TVsSAnZWagAAxkoP/18H4n8768oUxcPA/oTy\nRam3W07R+cbIYty9yglQaFzr0JEpdJFD+Tzt3uD641U4Phc/K5zt1+GKFSUn\nujxoQZ2dfNz3c6NVvhCrHHUT2LZukTh90oPBnNgDF0fKXCU+1eHmadNJimv7\n8Gt+5wRS9jK+QcW/Dr6C/KWws3iVtwqmGQIKr1vPZm2Urs0WN70OCgxhllSf\ngw5HjagaSHNB36RnFyGSB3us/54uz4oSDuguXugQ5MAug+Kn+clUfVXqYe55\np7QoZF07Zq/z2BOVAaAnpSSpZiv+CT+4c6XoM60WvTmlYyYtBpvyU3VDEjnP\nLQwR24dnHuLjSggrhuX//qIwKGjk8KF6txldc+rR/o2M2w3tvdd7DOItfDrd\nZMxPWpcb8ZR3dR9HCyw4gDvSJO1WT4fwYCdHwWKWTO3OgBsFePgVgAmIBMmq\nDqo9pnXFVvdxHLq3I9vMepQ1FKFC6KQFsav9do34ehs0anMR8UdnEl6u+buF\nx4c4iUmdzmww6Sgs7EzwhtvhRp0z2GfdlRBOssZ+p912+qvifDXyeg09UOpG\n9U73gmr62FAIkXlxr2fyyhsBq+3YpG0tCdxEd3qPYSQ1HlUgA+c87h2+cefZ\n3gi7aSo73WPUtjf8Mo/35CGUb+VfUg2oOlvABOx0jzyPu5gchPFHM3DUcGCI\nQqEh\r\n=kaO1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c3c956775ea23222a805528459176c8a66c48792","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T16:38:12.001Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.10","@balena/jellyfish-sync":"^6.0.278","@balena/jellyfish-queue":"^1.0.206","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.30-renovate-internal-patch-c3c956775ea23222a805528459176c8a66c48792_1625503295632_0.5281904325844982","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.30":{"name":"@balena/jellyfish-test-harness","version":"5.1.30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d855a3bbb18ea7ad1cb2ab6f980dadd921d291fd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.30.tgz","fileCount":24,"integrity":"sha512-gY6a9PauiPUXWgMLQZOGqTxiwiDm2cpn9xhqigvbyjFQn+IpU1bHar8bwK3Y0aGUGGwihFxazvjYt8BWm6+VsQ==","signatures":[{"sig":"MEQCIH7GkKb9jnNIc6yfUjDk2OBA0agjbk3qPu825IbNiEmMAiA5H4l8HB7SKydACkNHEGGa5S9tNUmF53nGqijc4y/FHg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125675,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4zcNCRA9TVsSAnZWagAAihUP/37uWUjATJZO4Yb/rRFJ\nfZSZMvxXlyLju5XmxXbtcYx79GQYYDv6oS8SJjen/sASS1b5XrIF2WEVXszF\nOEP3B6plaojyABB1kdoVqrGs6ET9KZYIqzGIeX41Ux2B0FOyE9DXVLBLAW1U\n1iYI399ALWtquHd03JW/WBq6zzEilZotKEKIKZTMy+uy/F7p77KhFk1Pmgu1\n2CR+TtLQnELphBodY/+AMbHLNHosFQD1WNqAwghAPkgpf3XVjd5UMwcq0rF1\nxVgVDM4DIAIhwwYA6VyMo9oz3MCc+rb1G+U3YuvE6uVXP4DFuD+GuvBrfRql\naVFKcljyqErKBO9A6+z1kJ2uHv3LNva1bo3myHYdnRBnFFU+KAlGzDQxHNoZ\n4B4NfQSsfZS6TjcB5c/NDjt6HtWXY0Kys9Z2CvqwAAsJJyu/oqcYJCFG6/MI\nS4x/seBi5hTtYbv+puX+IfwzFrdE/aoDlP8At+e3kfoVyZznQ0Wx1sd8uaJj\nguhzDkw5TvrDW68MWSR/qMf907rBe6RrUgP6G03Ke8OrXjSvFsn6HJ4iUj0s\nLILZ6LYfGPLfo77pfn1r9YHO+L3UTE6/4xTHthN01RtHPkozKStztC7w/uRA\nBehyO50TCMHBqI+QdkflnX8iWj0upI9dMURhLc3r9oqIP4Vsambzqe3p88ju\n7/4u\r\n=EPrH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9f434a7c0e07c60ba027dd71b45c1eb823c781f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T16:43:11.951Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.10","@balena/jellyfish-sync":"^6.0.278","@balena/jellyfish-queue":"^1.0.206","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.30_1625503501357_0.7603499549696617","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.31-renovate-internal-patch-c60173a5006b9e7c2fed31cd68c058bd9c03f2e9":{"name":"@balena/jellyfish-test-harness","version":"5.1.31-renovate-internal-patch-c60173a5006b9e7c2fed31cd68c058bd9c03f2e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.31-renovate-internal-patch-c60173a5006b9e7c2fed31cd68c058bd9c03f2e9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"03f7cf1e627a2685b1db4a41869bfaba6aafa782","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.31-renovate-internal-patch-c60173a5006b9e7c2fed31cd68c058bd9c03f2e9.tgz","fileCount":24,"integrity":"sha512-U6HNnNohHrCAB/PChOl+/Uc04i1D2vNw28wJga0GLCp2uodeTD1MQb3lpjU22JJwK2m/bo5YzecxCQoGQkC/zg==","signatures":[{"sig":"MEUCIQCpXGRvpxrZEwF1GbAoYHnOFVFVKLQHzIbsyfUT1Z24ogIgXnjAr2D7l1HV1w39v2arepLQQKer1WJy1GKb7Mw9AMY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125845,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg40UTCRA9TVsSAnZWagAAGI0P/jqPFeNkIu1UfwoFxXps\nJ2yrHBJk28WIE9q9HQ1r/Bq5hrmau3mcyQ2rCqvfRQzxSgWCSqEYn1+J18kp\n2/Qq4bXJyI7JsFMHwyV8U+IdsfJAzWXZ+I6ecNgn5+2H4sUbMSLrEeixg1D4\nY6mt+AeJx6T6SD4MNY/gIulkq66TVySb+ELlLt8gX605fihperXyHAHSSfYO\nsY0r8c8Uv3BQEmzHfjcPf9pChdTohd/3o5V4ZKfsRLqJ0NFpZx1HtAb5K8SF\nEHBDNrh24ryKjXO75ycBc+uxUcrk6HaKQ//WjG1Ozict1ydKKjmY9NZH8whI\nfxXBD2l/Ka1rI+rSLFBQ3WDGByVQdF21ANFRYLVPM8+DpakV5Pan1RYqDVN4\niV6aeZeFqrW7JCEkhP3LODer+D7YgrLKzmYuUT3jN5xR1hNc2dJPicrEpccY\nEuG8ZxbIrMqvOF9DzlJFdrdHv19DaCHyKTtMoP+BkHTcMvepHVLnI4gwKQAA\nmNAruSw5zAWGn+TwDsfRoRNyzw7mMtmGrOhgpA/cPIyWSrQ0yaHvNcZfqV6k\nbGS1UGMTh0umO5Y7YEj6NejcAcGpbkTj2rdkOsqTZqYdr7wHRO0xV1RRVzFb\nGyOqFSkQMa3gP0vtRZ6XkxX5mFufac+vtSFIamK/Yw2gPoRyCbcLyHJCdNJ/\n6bIz\r\n=gXdy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c60173a5006b9e7c2fed31cd68c058bd9c03f2e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T17:41:41.868Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.10","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.206","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.31-renovate-internal-patch-c60173a5006b9e7c2fed31cd68c058bd9c03f2e9_1625507091110_0.5505051244050649","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.31":{"name":"@balena/jellyfish-test-harness","version":"5.1.31","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.31","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d8a48e77cb1ef47dcef070133c2c8e898ed7029b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.31.tgz","fileCount":24,"integrity":"sha512-GONIMQUlX4EZfn+hayBomNW+DgV+M8cPcBVvjc8YQt52TPJqPhj3F4jMLz5rejLw/KZMRj0/2lfTBeI4rH8dTg==","signatures":[{"sig":"MEQCICiersVLJ53KiNkPKy7XxXzOrnpF+rJCro0nBdnzW5s5AiAcWitt2SbwA2H2VZCU4rEtQTfTvRKIsnwvslqJGKIA9g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125780,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg40YuCRA9TVsSAnZWagAAgTEP/ikLbMyu6/msyRb9EcOB\nfHEnklupn0gFqpiZ81GhzeZYSV5vC6AUTWGqVjBQr9vMkuSoPfzxsvG1+E5t\nMvGA66ml3gORwj/vCiTWHL8gjuFxEU6E4tFv1yIx1SCfVjHsGi4AxkPsyv9g\n88vQhFnC4XNqVU1X3wsL9baNlul3usZDPlkhaUqAjX7PZl/PbMQoIHb6yrSo\nrHh8kiPCvqzrsmZR+3dPeLiGXo1vFP10mOmaHwwHiX/h1aFac9tZQr2K2WxB\nHZug87kuF++CjHwefITHr4Rf6ujYfxsS50wSq1JzUob6o/I2JY5ZfgFC9Rbt\nVbCWOKc5VAosTKoC+1R65Q/Y8viwXMnhS/z9Qvk74LP3ZtR1Ep8Rajqp+/MO\nUaO7l+2jP00hgnx3UAiKFZkZwi9ShEpQdqRCc0qgEH/YQJguaBL80NuxVD4Z\nNxx9Z5mmrS6Tr5JkQk8bx+UsxPpmvvUgxy1gblkiTpOOJ3PY6uEyQ3ew64WD\n8a5KxEWB195aEvpkNQI4B4l3/QzxEZbWN8ym/GITabRzQ2bJkGSQn6CgEMBi\nusAu0LZayJxhahNIREEXr6V6zHahofSAVnkuDlWIzvDgaHMQmLuyL+IyP+Bs\nKVR+f+960dVDlJ8j8njrMkhLV2zr7Df0ssGMuXh8H4VhUTxehObUn6zbKTjL\nfG7T\r\n=inQ9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"82175518863b18d9cb5c8e53e13057e1b8786dcc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T17:47:12.418Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.10","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.206","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.31_1625507374374_0.6953729888211915","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.32-renovate-internal-patch-ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef":{"name":"@balena/jellyfish-test-harness","version":"5.1.32-renovate-internal-patch-ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.32-renovate-internal-patch-ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce1d98804b4c6d712ff47ae407faa75f4d89e356","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.32-renovate-internal-patch-ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef.tgz","fileCount":24,"integrity":"sha512-Z1oJx2yYH+gRcbu7TUPP5jWFy/au7NNxxOYbhgc0hy8XPkEIdzb1DgvpXxPfrJ2ypAleSZEYppwziN/62TanYA==","signatures":[{"sig":"MEUCIF2cfo+pKQUC3O2vstQ2lQeFbAhnNUCwjrvD2ZzAbmwqAiEAslBG9qBPjB9LOo6+tJJNtXA2zAfrLJ+UtfwK+t1+5as=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125949,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg40b5CRA9TVsSAnZWagAA/doP/0T+iLL5IYRYaDzFOqL9\n09SMGAE7dAu3Iltgb3pfc1GAfd278csLgmUcrzJS+6DjeHnGLHFSyviWDLzh\nObfkw4PBKsp5xG3i+1Dt7ekPXpd17HaDDsHi94TAAA1h+mtEAvgTsM4M7laV\nLT+143mk02siZRAHblVQ9cvhT8wxpmli2hpxfzpvWNOx/pWVRza/MVErSDM8\nB+u4JKe5r7piJ8Mn30Owbsi4gaRu1nkFk2PnVA0r+Ptsn7FvpLVSm+1uSnTf\nMKibFM7VeJNlTW1uQc25c5cEY1QZ12TeBs9JiAVFtUCAVXx9Mbadp0c4zigJ\nUqT5UW8zKUBUrrY6fAJvAlG3mlMtxzuO9Oyr4ChiU+YSXkgwNdejtsKBoYrs\ncnFjl0G13lT7naYmUamvIuF6ArBz37M9hZ9AqFBcFhKA64qaEt7vVsgurw1E\n7ZCVi4HrTC8VdcurQ2Q/zPAYd+E0A6s84ZeBz91LuOWsUsjsDmGN+KgLp8Sm\nHOqPlftm7vmGPlsClsodTrWOhqWG1EEvI2eb3S92ZhFfYYwDnz2s/A6SpddR\nW6eOXIuSNsM2H4l5DsyGRs2HkeQU1ITs+eFRkycweCISQcV0ERBXqGHxJHEd\nXPQ1aiUip/AmB2M/3sgLn5uvf5qpiSqF8/QAl58skWRKWCxMiflDp70eqXnU\nXJxQ\r\n=HE5J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T17:49:51.972Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.206","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.32-renovate-internal-patch-ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef_1625507577246_0.5817208956463511","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.32":{"name":"@balena/jellyfish-test-harness","version":"5.1.32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.32","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"80ba1d5c7592e81cb4fd798fa0576649f657071a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.32.tgz","fileCount":24,"integrity":"sha512-ug5FCVCZtB0Qz34xJ9haHuh7/0Glq2pdDMi4SUZ4ke2XNhn29PqJgUxnJNwh870VzLCO53PqswNLSYRKe4tI/A==","signatures":[{"sig":"MEUCIQDJWa030Fqf0H7Spa8hUAmYxHNhmaWaNuKHg+5di3NqWAIgEr5n3y8kzSvmMzRP3FCNnPXQwCKkM6ZBR74a83e05rA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125884,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg40hDCRA9TVsSAnZWagAAdOwP/0T1W4884ep+woknzI6u\nJGSmDmLbQexiMmKieUpiq6hwrt+Jn4p8sV4iMdfB3EigQ03kYXMcraG9iQhF\nRhSg44e5p7T3M/DKua/405xXm9To3lcWZ93pW5lLqjwG9XTGV9exkxOv2z6b\nsaOjhuCAy4UZexo2yPvJMLxSiyWC/Hj8gvEs8+nr8QW++zKDMyZjP35uKVkI\nzGQrcpRudGnIqKDXOuc8C1h/hkAuog0Vf6LOP+wvgRvdkXl042YS9ml6gwL2\ncwHytcQucZu2qKnDE5QtvgQOyKXs5hAG35tt0wHa1b4n5bGiZ8f+JwTNYBq9\nPqVPZx2w+5puEoSSBaE30YP/xEe0hUwuvi1opNkRSZd50dbaU/weDXzPjlkm\ntGg4vW6Q05ZtzUDk/pf911HGs/KkDYS66yhXN/A1X3S8p0ga3esSh9a/O0nH\nQ9ypU61JL7Gfud5vkZ9xlLWmDshn2kARkwtyluAPe7fNqtI0YgVZXRhwdZdk\ng3bPcWuyTBdOy7dZxVPJ5l9Fr9SjYmeADDUDNS7sNplxzc5eKZf6AOju8k9B\n/DXNRuX2N4Z+3DGl/AAxHQi20pS1yo30n+yvDbQoMXgNbPduKODLJVwndgsO\n6rPLdNfEI2c04Pl+8en/Rn+wMolzpNA66EvQWiiKQYqUNi6bZsjYer9bc8wj\noNeU\r\n=MceZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3642e5ffa5805cb538ac71660e1b6b62f4764de8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T17:56:41.793Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.206","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.32_1625507906918_0.8148781677719779","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.33-renovate-internal-patch-42239a733ee143b4b7553a9e1c354e86e60f718f":{"name":"@balena/jellyfish-test-harness","version":"5.1.33-renovate-internal-patch-42239a733ee143b4b7553a9e1c354e86e60f718f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.33-renovate-internal-patch-42239a733ee143b4b7553a9e1c354e86e60f718f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"faa115769540e87e56b41812c8affd01d2f3fd60","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.33-renovate-internal-patch-42239a733ee143b4b7553a9e1c354e86e60f718f.tgz","fileCount":24,"integrity":"sha512-i+upWthitwGV5b046VcgFngkSEefIwrGv5ZbH0CWfNZLONLZPAuJtcPtGBfhsgQpNuk6H/7KhT4/0HJrpT2zjA==","signatures":[{"sig":"MEQCIDzier1QRarX20+LpoJlBcdJoP6UViuzJoqMNcmcuj52AiBJycVwPwyUBSHzQePjjtup54MBEfbNLG7YBgz3MvJH7Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126055,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg41TlCRA9TVsSAnZWagAAOYQP/2n+6Sl5oBtLtTOq/FB8\nnq2x2jxG5uSHxTQJbBta1tkAxejLcKl6FS2dYuGSJHr/XHkHnHzfVVTZUMw/\nrGEH3IsSuFGt3Vk9mLXFw4DrlaSJq2Lkn5WFQSVd39nQxYNvIX7g4kf2ign8\nVpCQtiVb4Unz+KUWSd9/b6UF8bzY0bDgUfPRzEDEnRmf1UAjpO17wTZJS6s8\nG3NL+rFRZRJISaPfBX4sosaN5PcARJiUROLadBgD6NyssUVoTU7PHN6pG4Ee\n811BH6qCBsVl4p7P8VQsND9vpou7d+PE1+kN/n97V27YL2i+NdwvHW8zHSgc\n6qp6ZUdy0Q/noGC1kQkI+/wJ29M64uo+fB7dbIky0vr5Rr5GLZKzqMNRV7OZ\n89bShs/vIsNJ5q2EbUHoTt0gN+z54cw+dhtP5bZxCV6ncUKsvZggLmINbVuM\n/OhZCyGSZy0C9ueB7DmxZLlgMYip0lgWWR/vayXl7XVdv9EGFRUPV8wQGnKH\n5Nr/clXFcCURYclvZs6XHO+6b836MosVTsfncd0iQGAO/3+yaih/X1TGFGWy\nJ8aAc/HGT9HvaKio99P82R2cGPOFzfETp1P2O/qD5PtcU3T7oE+4UxSRvse7\nv6MvKt2PJj2hsElsxHP1H3TqN5cN4AQ8NN1nT1fdP1tMqwvLMUEc9kvO068R\nN8Wj\r\n=zZ33\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"42239a733ee143b4b7553a9e1c354e86e60f718f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T18:47:56.171Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.33-renovate-internal-patch-42239a733ee143b4b7553a9e1c354e86e60f718f_1625511140464_0.6067195153487148","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.33":{"name":"@balena/jellyfish-test-harness","version":"5.1.33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.33","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b03db8118d93e60fad536ec81e907791d9f72e38","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.33.tgz","fileCount":24,"integrity":"sha512-vz6vpSbIzFxFi/BL05tj3ZCW8l/6EDxTR46u4FRW/kZ8JuibAkMqdoMLAG9RH9mzmZuPJNw+U2lYLnQRHOZvhA==","signatures":[{"sig":"MEYCIQDVtpT3M1l2abmBR+uvtUhX5NwBeAifJh8pc5yyeaO7+QIhAI6wT73i4C5J58ED9eVJF111hHuWxqwgqfK8KPpkVdys","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":125990,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg41W+CRA9TVsSAnZWagAAieEQAI8m1xvfEelwYpahMr6W\nOPqhNzZGJvnVhybDUdBPgzky5gyQKhlHxsqr04/jZs25A4F1c+aAnEk5c/dN\nupKer0gU0hjDDnXq8spDIsNQ5buAUUkWZILB25gmN1j0JgAJsmiKsWJ8XP3/\nL90yH3+Cy+XyLC+BEpIiVBia2+Ii0g98TOTXrWgQN0Uvzrom+3H72jla46Rj\n8AiGaxKSQl+nkEj731mtyqN2gWXjhcntRr+Q2J7S26zp3V4FcRV/YXaMOyHf\nqgmxzYqmJz9vXF9WZS2AN2MEGJqj1SNuBCNiETozMPmImASIEStTA5+5mMyZ\n6KFfS5VSdPp9M6h09W8sKqnNTibbNdmo2pdJR75l1a9TTL8Dq2YCR0Zz3gg4\nBUXjlb231EQAdd5kAWYjybHTE8EkAQIedRATrb20F4CS3fp1CqTDO9+uSFz5\ne/rLC7ir30JtLwpS5an1rXxJ/X4r0P80VEJgBHKoSEtA54KTSFbRWLvGfd2i\nRYxlN0VEtZP9ELVzNbykWS/L73QxQq3hrm3uOUrFzRUQGFYB54Gcpb2C9WOV\nzf8/1nYYqDswcP5+x3vAAhVsKwVBguOrcy1XB7wbWmn5DNMlU24cUAdQfasN\nEKlplSUk+mUY9Klt29h+k+b1jDjvwDDSl4GIkQDdabmPvYrAIw02ZYbWpb3J\njr9H\r\n=KNln\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"39315d9bca8035de32c2f314e2a7f891ee40bb8a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-05T18:54:11.813Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.33_1625511358115_0.13537929968549656","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.34-remove-whitesource-config-c726749212d7f627b3195ef801b224c20645878d":{"name":"@balena/jellyfish-test-harness","version":"5.1.34-remove-whitesource-config-c726749212d7f627b3195ef801b224c20645878d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.34-remove-whitesource-config-c726749212d7f627b3195ef801b224c20645878d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d9ae4d923e6ce646dbf1478d4bf64629ac0afd17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.34-remove-whitesource-config-c726749212d7f627b3195ef801b224c20645878d.tgz","fileCount":24,"integrity":"sha512-x4B+NVKrhuj7T9K2OJmo2PtpEcXvxVSDhitZVR1Gn05PMPJEU1rhXV5cVWn3NIPj0KkqR9uWHkg2MRMcCaZzKA==","signatures":[{"sig":"MEYCIQDeY0dFedcBPAdaInDGLxh6N7Fx5L7oTv+lHnxFmu6abwIhAPi4LLKMRogSQUcSnH3Pij37FoBxXwUcFkMBLJEeNOfX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5CWVCRA9TVsSAnZWagAAvPIP/iTpbRx13xkDGlMUrHJ9\njMCQZcaNBe8Me/eRune32EWRCQ46xUIQ2uApX1Kzain/oNzc8roT2O8du1mH\nIxAULUBXlzRx+Phl6RHiL151SJekWVd5dujkQ5ETT9SxeYcoOARM7eQ/7z3M\nmK+FxV5LeQzr0zB4dWIGiByo50lJjCsDiyuWY/zQ51/PAZryAhwjB8xQV9XI\nmOqDtZkzemhcNMzjWVggQs6J+yLPM0/zGebUqIySNm4AaPAql01paEjhKiNQ\njgOa1P/EEU+JqgjXoiVRA3WzaI+ftsLzQ71DETAd2CS0QNMhQ8JxXdwYQ0F/\nGzhyfhCc04PzfV0SrPyWoJkbFf/AC9ITerWXwVuBgzo/Y0obbTymDm4oQTbQ\nMiGu0eY2LkpyT6s3tC0OeWBOAzkmS9rp77zIJ7tR3Xfjy/ET4Jl/QVUT+DMQ\n5DRBHWScknicBi+ZRNxvQLcgu/nkA848sE+PfyE4i9AGXoZKpGbv/MmuWB6+\nW7OZelyj55BzSxQ5hs1TJLOsu4gZvmt9ieBXNCMXEHIYWB5KPk7y3tXkA4QN\nNLBjs2ZYoP6VxtxIWRRVQguT+FKZ9rtEjmkCnREhQYbIoZgBO95QWQxzGkHQ\nAClrnqeNF/VTBXnBs5AJNZl+pGeVrWi8Uj80GsQ2dS2qYkPqKJCKePnoBgqo\nazwM\r\n=EqI7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c726749212d7f627b3195ef801b224c20645878d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T09:39:02.772Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.34-remove-whitesource-config-c726749212d7f627b3195ef801b224c20645878d_1625564565168_0.07953240440821352","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.0-update-prepare-event-return-c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e":{"name":"@balena/jellyfish-test-harness","version":"6.0.0-update-prepare-event-return-c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.0-update-prepare-event-return-c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"769babf1501aa7d744e45b4b4575313d9087f9ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.0-update-prepare-event-return-c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e.tgz","fileCount":24,"integrity":"sha512-QZCm2+Cy6M2d3dnGE/Gq0p51VqQ1/qgo6BEuq3hvK1njZVitSsxzGO0ww2icWQzy6FYMEKSS1oQSPe0kdJHzgw==","signatures":[{"sig":"MEUCIQCdfP9tqrPUmUtx8/0QdQ8JGdCz8hrj+VDgTDbXWtgnOgIgDJbxQA/suAdg3gyYEHMGxskKpWRL7w1MamaNynRqC/w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126156,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5CZgCRA9TVsSAnZWagAA/CMP/0w8GoScLj/2NH8H1oDn\nW7dq7+qpuhFM8vywMY/6Gax5FEB7wrKKJih5RpoKFrjiN+a9zS5rED8Z1SOV\nkV7GqTGkAx2TeN7jmEuHPT+DFtt9ksC0D6oZWLMoVSilXNvcLHJrVZiquiuZ\n1vXm4sclqb7Ma444UcNP2DB1vNEEANdAtJyAYiUbrJ+y90WcbZ4io6r6t/69\nRZbR2kbtGYYaH4IvtsKkTWdENqZNsGIBS5zCQ1qNxgxvUA1oUZfQK0NclXDZ\nCYV8lIEq09/rNTKaNVA3o+7IfpoKcKmBcL5QUTT1DrfjoI7yOIYRrrGTZ0Se\ndOnJmT3M+nY+Dz2IoSqBW1zjs668bfu8c8bLvMynHv1PZvAsw0M7++0TeJxZ\nKD62g/p+LIXGXP27S+C0NWgJoIIjnnCOvTdvbC5ciHjmp/r59Hkmlbi4K7KL\n83nuF/C13/vlGU00lcRW0GwY0ljbhrLJP95aN6XRg+D73g+sRtEtxdbFbbQ6\nzr/QPP3TWLGBVQdK7n+fhIZs82V4trnlkNGG4fU7nRRjHOC9HIxsllNe2SNX\n4x9Gq26yiR1ngkgHqvQ7WIavfXXuOEwMVZyGocsNTUcHFV33tlxy6lY0Jx2e\nu1wNF7cAiOHLoArcM5LOodI0Ifu6hblwfPbDwv0fwjBhWofSUoaptjdyt2LX\nsclB\r\n=B4B6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T09:41:24.847Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.0-update-prepare-event-return-c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e_1625564768330_0.8013027528597108","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.34":{"name":"@balena/jellyfish-test-harness","version":"5.1.34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8b39a43b5890bff35596291d0777b76459e60e5c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.34.tgz","fileCount":24,"integrity":"sha512-x/8M1N6OSOHG1sl31viBrp0TAYmbuHQKnKKymJlD3Ou9UumzC6CNo6sCl+Uls6D9/3t5YuZaxyAo/f+cvY1nGQ==","signatures":[{"sig":"MEUCIQCRSX6EYPSG79hueqGh6YRoa/7Om0Ql/UEF5m2HU+bPPgIgax5aLJATDcMco7ln2Sv/fELmyrTUQeGe2wkd6PSTPRQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126061,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5CcyCRA9TVsSAnZWagAAfhcP/0Isy7vik5rLIToFK/Wb\nlQ3Oec1IC3DIhvX5vmW/elD9aP1GdZVT81oixpmq3+34CtGxolz+Z/6DLa5M\nqFiCAY1vv921CGqJqhMs1pMU4I4orkoW/JKMTfQCGWcm22l5dqg1IwizPLGI\nN7aiKiBqi/dzgYVI4LZjJR7bvZxtE7jhzDz7o7w4wI06KgVtUGRJagGeR0ys\n7kURvOe4USU6LDe4rFCCApzw+iL3enWveCSSo6ZAzhYR9HK76ZH+7BaKtOuz\nwRuwJy79Ni7TJ15rtIShaBsSw+BF/ULW9BCkG2qSxQgwxbowRH26x4K+s4/N\n5NioprJyDnJn0o3STAmlknNeDpO6YNxcWdKKQBv8zAA/ZOSuLSWIJO3+fuxn\n7tRjlwfxB+51sljzc9tWeZFD1Xcbp8SJcJN/z5EUoUBUw2SiOP3R8L6R4cvc\ni8TsG4izjqCyS5LJfk86ki1JQVnKgukJz6UEthZnIrFnxWHotR1n0hSWPjaO\n+ElR04UxhgLMJTEftKi/9Uzs46rCn6INP3+zII/Y3CGYXPhlgC0Q484+BcP5\ncXoxEvcDheKc7Ig0tQicPNOywz0vuflmz5Su0Q0DDaQ48xhtzE10+731f+6G\n4XLzTQTnQCKKA9LbDS2gfDxLkQthJsiYgJGMa/Q9grfsejsVAEqfn0U7RlKn\nIn61\r\n=wER9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f1fa6b4861740abc78247383f261ef56b87c31cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T09:45:14.284Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.34_1625564978356_0.9532166768792181","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.0-update-prepare-event-return-17cfbdea887c3d9190545c7d4f0f527d27bbfd7b":{"name":"@balena/jellyfish-test-harness","version":"6.0.0-update-prepare-event-return-17cfbdea887c3d9190545c7d4f0f527d27bbfd7b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.0-update-prepare-event-return-17cfbdea887c3d9190545c7d4f0f527d27bbfd7b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eda784912b2018f1088e43de0890d0a85d8076a5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.0-update-prepare-event-return-17cfbdea887c3d9190545c7d4f0f527d27bbfd7b.tgz","fileCount":24,"integrity":"sha512-JYJyoQcqTQtQKkKaA66YJT9pQKUSdUR2nVRWNGpScth/xvXQ09qysZZ1wVXkXdjON4ROaNY8GmGdoIbh3JiBFw==","signatures":[{"sig":"MEYCIQDJf/Hbb8tWdaUTOHbckVZ8845vKKjGv/H6jVhsYuMyhAIhAJJoUjoCuE3Q5+LkQIeW/TWywWCe5zOy/CrUg71nFUWw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5DdSCRA9TVsSAnZWagAADlYP/A8iS9sPO0wXyrAmkbBl\nv/kJDXYeRujJg/7jU5WedONodQRJwNL4xU6R+6TUUhnPMR8LWDVAYX6qU/tN\nfH0WhaZc5gvIJ1sEH95F9Qv7HLpnShtKOsuRquHfNESmgVo2mzklNi9K6e99\nyLFgkRmE997/YlxXlYkYInxpKCBGoXEhAzRf/BI3KeAZoDUs1tfGIbunSgoH\nBBFc4Xv6UrozpfINz3a9mmvk/bRy/W5I++4/gkhHRVkz3c05E1vh48O+06ln\n0VyZLfWhp9CL9ce+EqQqSwjVMcbFdMJR7ID6QG/H8j8gQt3U2/sxtOQU0Gg3\nrse1TJMVQa6GKLvPk6INDL9h1CJ9sExYoQdi8pNdqB2XOykCyuhc62FvZR+D\n1uVJAFvsycRy46Xq45JJ3pPS4K6eJxAFa/uI3hF0uxDd+5ivCzjai74+TGoz\nO0+wz6T/3ZPfYjYKSjKnv6cZq3aY7hCogYlB1drl72x1jMMGvD1Wv6jrJYcE\nPZn7duGdPWPPXp7a1ymiKggixWllKMU8GSYmd63/wayOHtqqw+o8RISrPgnz\n8fBjA+S8KKZlaAS6IYYvpdEpD8RU7CYT4ZtCxt1mi6tZt84fIXo0QDKyXxAT\nFk9Ehr3A0ZLdMn5YvEb0xubPxccLTMcqyRZnFcQ7KuBQFqUQM6T3l8j8mxzb\nmmuK\r\n=b5zw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"17cfbdea887c3d9190545c7d4f0f527d27bbfd7b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T10:56:03.710Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.22","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.0-update-prepare-event-return-17cfbdea887c3d9190545c7d4f0f527d27bbfd7b_1625569105461_0.14162371505948013","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.35-renovate-internal-patch-b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57":{"name":"@balena/jellyfish-test-harness","version":"5.1.35-renovate-internal-patch-b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.35-renovate-internal-patch-b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d701d844cb1d7a10eea74fcdb73e5b67d79c6f6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.35-renovate-internal-patch-b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57.tgz","fileCount":24,"integrity":"sha512-EXM1t3ym3Lm3X8WyxU0rQUnVJGcJOOKV0G2vh2N++icbKbv5tFBgcwSPeWv+ngYzVyrZg5zbcYtcHCpp3Q6atg==","signatures":[{"sig":"MEYCIQCogABkxWvWiFTjUM5i78TZ0nB8retVsBRh3g6+EIPfZgIhAJvDaMr7fiEQGauKg9X2D41PAnfrD/EoiWgrgvX9KidW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5FJzCRA9TVsSAnZWagAA+mQP+wd4Jsl6GJrAPtsOzVjE\n+CgIVrFQsdgEU8jOk8drEhwH2CpnkVNCux01Exs0SDmXUeGQ2Cnd8RWZ7PCe\nXEmrCGcM5s/M27mmgTG6i9DQ50Rst/Y9/9t+UNu9wveMOthsmvu0W5gVzfW0\nh47ntkYm4wN19gCcfG0nAToqoPoMLAGII3E+pcO7aHczVMLvf0+ubcmHuaQq\n3SZBAb7ovKXBLFlwrfXI+555u4u+RHmwEWU/UvoRXe3rpme/GBmBjPvmVGPq\nuMJH8fL1OMZVwzzgoYKHXC8IsdegjMvlzrnwRknGy+gsaEy97uYylY/GPnUS\nivDgCTG8hNjWAQS3WOV8mF4+DjCzTiAOYYsO7izWYxhTQE/Zs2fBfFA3Eqf7\n3LUEpNeWsEbdddpZg5b1o5VSlQJpTLGP3pjHGMpPJ/xhzlEYWLc738iJJTUY\nVEvYwoX+8I1DHKsa9zgDimZe9IWLFX5pGxkLjH6tNpxvurKmqw7h/tlv0iFT\nVRM+uyz81/k3nKegXkSw4he9jrC1y9Z7IqOb4VyZJNZ2QMDt3/i94o4IxcCN\n80sIsD0Ba3/xX13GViBtzTiWFAfFlKGeS7GzoIpURfJSyQ3rNWZebI4fk+0G\nzz2h6NnotQ/APc/ofk8QbaVRBr0AuP2ppIWRmp4p4EnMTp2/oPWSSPZz0E9x\niDaz\r\n=o4Of\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T12:51:11.851Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.23","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.35-renovate-internal-patch-b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57_1625576050778_0.9666049341028287","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.35":{"name":"@balena/jellyfish-test-harness","version":"5.1.35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d93d75858e644a68c7e04190ba3bed62276eb6e3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.35.tgz","fileCount":24,"integrity":"sha512-J5DwU8RsWzrV2v6v6Q0ukoUF1w/Tr9cHtI3e6pwVabHdlsfEuYEz6/qHFN0FhOIySqN8HaNidLH7O0FAx/x0uA==","signatures":[{"sig":"MEYCIQCF0AM9+EkFGXtlw3DoWefqr1qXxQNwB9QhgHYn5/iXdQIhAJ+I1NOH9tw/hHK9D8jHukoCKGPeffFVy364mPWJJR9J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5FNRCRA9TVsSAnZWagAAtZYP/2XczcsaoVXqtungkXxq\n030DvNKbJ9N5jAaQmmpBCWurKit2zA3aGZuCwpbVW6xJyzX8Zxs3UP+harBY\nH/MiheLaFhiTv3gw7FsZMIGiaz2HnvRcqs0RPolWFQ6qmcWoxDiYHNxiDYFY\nj8ifqq9E5TPt6sQUdbz4buq2Qigb8dlKLlvwAwcgJ1QAt2AgLnDgtSdeeqzp\nzcTuAb7NKfau1iBN3NbpCCAkzSMHnQ+UhPASZvJ7wW90zEqpGeBG2VeKbt9f\nEQSJT4Wqsep7uFVsQV9E6LD/NrTvQisHwB97rBlxK/74rdOScJNwK9ueMWp9\nJ3+CN2u1/1iqUyMIQ60cQqCPQgg0Jvrn6bVN3KTbf74nZ3xBJCNt7jirAJR5\nAEurYncjhNnrpYVGVbVlPlzem0RN7tEw51z+l4QUbMKjM4MdtLZ3WPcC3trl\nuIxxeXOVTKb8Le/tzFeVVajcY1MAtpnKxwW+n4hW8USpRdUlc6OU+Aklw3Dq\nJfrC0sgzKCHY6GrOY3SxgoAwbWKSCGQkPOqi8o+usXkGeoT3BwBKFoVWRaRN\nqKbpllCm676lJSItUq6a8PSjur1i/DVxh2WqlMiXM2uE7OuyAz31a2OtjtXb\nC3FkPPIbNisoYtxngl7G3LivovRYao9dbfVy2b6iq+3+qapuli3JZQC62nQa\n+QIF\r\n=qM3K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8f6ba78fcc92f322dc564041827e40460f63cca1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T12:56:02.728Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.23","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.35_1625576272621_0.24984002085365975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.0-update-prepare-event-return-ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23":{"name":"@balena/jellyfish-test-harness","version":"6.0.0-update-prepare-event-return-ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.0-update-prepare-event-return-ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0576853bad7089dec51cd08d2c55a207d2a5b56e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.0-update-prepare-event-return-ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23.tgz","fileCount":24,"integrity":"sha512-5D6DQI6McymagfnZus5MJNdMUT89vZmUf8P/bCAx+qgbxwU2sU23aehsxXoQeWd+zZdb43j6/NJvGxuk0I33zQ==","signatures":[{"sig":"MEUCIDciTYwiAEuCSY1VL6yrnhHwcluD8pCI+n66yFvrwTDAAiEA/klomgieJLmzyRrmHvyI99ltLxhB1ZNrpa0HUJTE7Os=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126336,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5GQSCRA9TVsSAnZWagAA/kkQAKLBFL80yQr/OH/yAQzH\ncL0/Q71td1+KJcRl9PjfWT8eZw098m8dP97eMvNYEQPX8syjBxJpDmvxEJAd\nbQzuFcfqlbGpPEQ/uOEAMmzWu07feMpmqTqpGH0109vL/hInERd6mqFyss1R\n3HEwAE7+6OPhsgk2K5ZRHheNE2RISa/wkhhqFjU6XM4tNhGLBk/sS5UjTnKv\nKy6sdp/twLgqdV6dqKNt4OHuXobdL5b+46kEFZ6kU9kGlyUtGoYZqW0apubX\nYt4TVen7AOOa/Yg8a8j7VXXgMhC1oZwPbPdygt724Fa5zpQF3UKxL08TBVy1\nciFZzwmFJX+0fJQBOl5EDG2quheDY+nD98Qm6uAg0P+u665AwUymZ0Mj2t9Y\n3Wph31aVEX29Ja++Ck4kOA9UR9/agaxoklml966jFseBR8SjHBlSUw1m1Abx\nAOYfBoSOSzB7TQY+mV2A9sr/DUOnvk6aGdMPZ7yyF7Au2zMJcLyxalf3ammx\nayJO1hYUO3ce5m/ursF3f+4phV0pimeAErk6gto3xuhm27B2UbKNM8Lorfpm\n1Zhqf0TZZqlSDpunKuIioiONyISQtA7K6Jdyq3/WH41lfV59Hfw3nXj07MIk\n8U8w2tcf59VaHFwxtr8rqEUePfdrcF44ySZuIAAJnWoOtkbExzG9zMvYE6XU\nV/2X\r\n=r47/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T14:06:12.646Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.23","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.0-update-prepare-event-return-ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23_1625580562466_0.7371919554593855","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.36-renovate-internal-patch-0d2b758929d31c9db45b87ffb4d7516b6c877e59":{"name":"@balena/jellyfish-test-harness","version":"5.1.36-renovate-internal-patch-0d2b758929d31c9db45b87ffb4d7516b6c877e59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.36-renovate-internal-patch-0d2b758929d31c9db45b87ffb4d7516b6c877e59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f38900d47227296eafeaf861b8659baddf71369","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.36-renovate-internal-patch-0d2b758929d31c9db45b87ffb4d7516b6c877e59.tgz","fileCount":24,"integrity":"sha512-XE1wrQy0fbWE9k2Q4oT1HtAYM2LgBuPtihGod8epacKB4QTRkJwS0HbPUnMUVndF6gPwSMd0bW0cCHmYaMgLEw==","signatures":[{"sig":"MEUCIQCvWmV/dhA/gf7BwQDrvRwsveXHDccPKc23InlGM5cCjwIgeQCjxeeGbmPTH4esaQ1Mqom6A/VQuZyHVYERfquD5k8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5LWACRA9TVsSAnZWagAAWQwQAJB1jokdBJmnL3bfdiEZ\nKWZkkCJueR4PzkgZUlsHkUMI8GwGQ9AVTUHy5aoFbQaK/DzKD+TyYVNNxFxZ\nCZLQD5iixOBs+FkQdd2keIvbxyZgWiP1ZeJ/H0qt+SmX7/NextBFjGymbIka\n0hCNnBzPgCM9lUxeO87wMbz5TfxUykLQ7M2HYZ/Z7DlT+msAdso8AoW5nFBz\n4+t3ahW9Ivvtvh0mVerC8A1YdZKswXrJl5kdzQiEstrsvLFOAtb0zsWWXbpR\nbgOpxAdSDpB4T3KFFFt/RL5/8PFxxs0EmePEd2N/eo4WKE/Qao7gEW5coFkU\npQUetZ8Gwu4nOgFC0WY0CEsM3UilDm9kQgb/yhD0LK0RyJxT8miyS9el+QCd\nF8UYhfznU8Kh2VM5RXs7rUF4PKj/HIz+/kLuaguWAbtgvQ2pqvzZzfRWgMKg\nadz8/Hq8OMp3hFNtAKeW3I3oGSdFLwajVxHFV8GifAO/OvF0jhs4dwH4yvnI\nueiXQD3R3Cinb7xLIDmLv2ONFhzc4QAamCmvNPFMO+vz4f7FrMm285eWbv4U\n04AViJdV3IuPvd3bi4Y13XNNY05iGYcDnx8BDkZuQns4s4Q1xEPpKbfHc6xe\nhAgh78jOloWCc40LrdVPymF8bxM9JWBa/voYZbuJiysrjCmZ0Ty0p2/Inp9k\nRtFJ\r\n=Um5w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0d2b758929d31c9db45b87ffb4d7516b6c877e59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T19:51:28.065Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.36-renovate-internal-patch-0d2b758929d31c9db45b87ffb4d7516b6c877e59_1625601407510_0.5840594820921836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"5.1.36":{"name":"@balena/jellyfish-test-harness","version":"5.1.36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@5.1.36","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"43695e3e716e1746e15d5cf8b1efdfcf6f1794a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-5.1.36.tgz","fileCount":24,"integrity":"sha512-3iDqUQvemNdmjm6r1YxyHR6yo5wyXJTIV1wktapf7CNib2cP4lS6324KuNhdu4/DtCKhQl3AIHXqpxu8hqllOg==","signatures":[{"sig":"MEQCICFV3NP9xmfl+VLF86WoNYYJvesIevGyA97NVUFabuMUAiB+2ktB+kQ4/tgU2gPcChyx4/O6I6OJOw/VWtmDV8RBVg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126273,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5LZZCRA9TVsSAnZWagAAzWUP/1hMQSHhjxY3FUWwbRd8\nPF64ZtJ8A2nG6SNylVQK7QW6PJxiHm7BospCnr2rpj8h0Cy+fx26rjjwHdnj\nFuPVmVDSxw40mQypeFsOddfxnX7e5sy/Sy+ERjsKH8Vl+I5lgrq3Fpa8KmOI\nVZe3Wv8Hw9yM15Oa1mCxmE+b/wf6eRVbW59jwct/pdv/gQsV4sZMf3Ss4hO5\nj1Utw75yWCqqbbPlzEo+trmAj5AAtQCyWs9OakHxjgve/VL36KdI9dx4Q8xN\nkpbiv3a4fsnzxIoIgD0WO5Pd55EQJbunILHwz/1P5oEklNi43x2KQ24mePWM\n8CxMpZbSXmYeH4GvyS4FGjq4LVZFIzwuCqy3i4MawmQdeS4KWMPjqvykKy+T\nn08Ym59bkwueR0ZkXt3GFxbE7i/R/z3VuFjyxxkbJRR64e4Y6iNB3VsmRqtQ\n6klnV+4kMq1EGBCp9VSDsV3sZBfI/4cUO2X7bLWOQTcskpfASnjrDLznSAoj\nOsSdCYAHwIqjsAD+U79d7o3PUpo7jKS9rus3DTOScH6hxTwUszjlfaYgPWKt\n+j0wgYPaWTZ/zbq+8hp6SMPoZnWaX+y+NmPOAJrsTSS1xuAP8u653G9pnyxw\nobe2bpjIUrW3nM3KTy8UHlrNlmFIKR4mLmmQVQeXRQrKxZUX2OTtwoGekCRY\nsY6E\r\n=6vQI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"081a6016843f2471382145581c92e0c04f120e2e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T19:58:32.394Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_5.1.36_1625601624439_0.9155576688997551","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.0-update-prepare-event-return-5b70143af5cdb6ebbfacae9eb7544ff19f582a58":{"name":"@balena/jellyfish-test-harness","version":"6.0.0-update-prepare-event-return-5b70143af5cdb6ebbfacae9eb7544ff19f582a58","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.0-update-prepare-event-return-5b70143af5cdb6ebbfacae9eb7544ff19f582a58","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"807a69abf2a65557bd748e8850d128f70ef2f900","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.0-update-prepare-event-return-5b70143af5cdb6ebbfacae9eb7544ff19f582a58.tgz","fileCount":24,"integrity":"sha512-KICcS1xuKdthhG9l/TcSdHssydFG4bDN02NolvQqSp17tIAdWGR1Q6VVR+ATi7SQDwcz8JOGe3/HSPZa/O+Qzw==","signatures":[{"sig":"MEUCIGjH/OharrojNa/rx4wQ4FCmAmQZTychvr2/AVgaiNosAiEAzJ4F2gscg8jvO+D8yESDHNTX/p0BiZgbS3DWrxbatQY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126444,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5OlcCRA9TVsSAnZWagAA+P0P/joSW4gmhuvT+Il3LCCW\nwaHTXB0KP2dGy0s0Z17WkTP/7hcBKEtqGzgLt/vqV1sQDfHOj5t2JDhcWwBt\njS7HeDOT5Dl7jutjC8HZYbOOp9Sr583SJqyWhX1iT5M85qf8ORIJd49iYnN9\netOdE5mA3CqEHb3j0nphd3VaxxovQAVgGi87Ru+NE+vGnqViWKZVCz2s56WM\nmLoqqX5c4UQGeL776Pzei0Gmz0hHSmSiQFyLaTOotuZnO5lu/m0Bo/67Nzwq\nHrkykgWophkdcqWQqWqsEn4Bh8Kme83jqF/AH4ilwTDwTErEXTqQpb2BY46b\nVLwuarK/O5c7/to+wZwrQwg9PAX/8LO4G6oZmOd2/jHwGc04piI5ZdnuoPXk\ncmEWBOUOPSaUpPh3rLoII4ZD3Bcnxa01aJieq4oHry328bn+8UlBpKrgQFrg\ncVtsPGLrcGIap+dLnQx1mDTlD9zdtsXQOqzCR4bEVVZ/2eBO9HqKwsI0O0WV\n31GG2yP4Cee95UvmREvoQV1hMD3Q7iaBj3Bn4kLxEusVXBeF2I5NLIhd5rTz\nUnrnuq0xFHCV6Hl0BREKo3Mhh4B7PfPE0UHi0UK74IvJC+A14uxGaNht2Eza\nth5u3inPZ6VvDAIvpfWU/y3jQucJdhUQtxH3zM697d/5Tq+dCJuavMcoYHtR\nFhCQ\r\n=Nk0e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b70143af5cdb6ebbfacae9eb7544ff19f582a58","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T23:34:23.176Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.0-update-prepare-event-return-5b70143af5cdb6ebbfacae9eb7544ff19f582a58_1625614683814_0.34467277670496577","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.0":{"name":"@balena/jellyfish-test-harness","version":"6.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2bd52a461132e03821c4ad9cf12ec40992282be8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.0.tgz","fileCount":24,"integrity":"sha512-9BJra5/V7DXqnwFMSyU0uZhVUJAO3kJMo0lGjBcAyoFCEjiIISJT3XoXqspaamXeDdffRrAL9nWPxnbWCqF81w==","signatures":[{"sig":"MEYCIQDyezv9RfKDvRUU/H7powqq6SvBEL4MbxYEOlxMRjxuZQIhALdzCej/CGnLdPFJRZ9gqXJowVYRtHwrJgZwqOelWGPl","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126375,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5OohCRA9TVsSAnZWagAAGTkP/iraBWw4oknH2i6GJGWx\n+mqccPYtfNVVXKuGwGZ8zwEs2/bAuoiE81sv1gKjqosaV1WXlkq212Dk2qUj\nvhv1zGNrpR07ma6DYwVZ8BBoSqaS7M0XlLUfYvx9N4I0+Pf2EdpYPhtHtw3E\nn/zs2tLGGe8mS9PYPSCVLRbLGJM8VgFPwVa2CEEr3/U288grbKRNIsq0tF79\nGdOqIRr7SZ9nuf8yMTDC9aV42geoYLBDWMYX0bb48E3hsXr2E8Ppkf9DAqdl\nT+SGigvVopP5KFdq+NV88UbL5HVcR1LvZJqBzCdy7YR13sL3RPNx+AMzzSA6\nWmQ0k6hbfTNSLSx3F9Dj45+S7Aa72K1uCKeCiTkoj9XFH14WDJEVJuqxQ8Hz\nH1fPyQZTJrwRcWZOwPs04VXxgGxMs5jhDIcCgU0itS94zEdpXZ4TbVT9Z4fu\n/y450mLZf5HGEdrufnDTiK3hi6jK5ir+Vystr4hG/7QAqlE6fOn6mE/VK6sZ\niEkFqqegXftyUqFBmmkQisCo0Nkrxmi6V6HNU0WgVwLUflTMWq3L7LiZxKzc\nhEwI1Q6BPO4ET47RQnrWdFj4BF4DeVyblp31+XtSONXnYeMcTEooJtxZhMWl\n3xTqEV5sjCdADamZ363GAPKRhSWW2S08xAqf1EN49m7GwlWTJ0btZLWA9HE3\nF/Od\r\n=uw5c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5e60c0494fb9943592e4f265c392540092424b5e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T23:39:32.680Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.10","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.0_1625614880994_0.36890201934818","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.1-renovate-internal-patch-4faf753d95b968620fe1e5e38200a3301cfc2d05":{"name":"@balena/jellyfish-test-harness","version":"6.0.1-renovate-internal-patch-4faf753d95b968620fe1e5e38200a3301cfc2d05","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.1-renovate-internal-patch-4faf753d95b968620fe1e5e38200a3301cfc2d05","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f109106da3df2b588ebd6972e0f8ab0d59ce0ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.1-renovate-internal-patch-4faf753d95b968620fe1e5e38200a3301cfc2d05.tgz","fileCount":24,"integrity":"sha512-DFoKxpO1BHvnCqJIvXx3Bryn2RLG4xpO8MoDbzyAzWBZOy/dkdyrxqWP08Hz28DN8FzHEZzCMoujuAq36eH40g==","signatures":[{"sig":"MEUCIQC1gAg+k9h+B8Wwp1Ihm2zBOTP09UnksXD5T37mIdEXyQIgJgcQP1EfpgsAg3HVT9ITy14banMRvmYm6MXfsN9ubl4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126550,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5O2VCRA9TVsSAnZWagAAa/AP/1C7cyUrGA09oMgLfNR9\nIQYzPbwTNQlVaQVf2xWELQOkx5uRyX22l9t++3TGot+aWIanEHjyCGvT8Rwt\n49uLW0assblfHpLs5Pj4kKdoVDlHeEE2ki+Aj4lZr28kDW0VZgmekjJrYd5H\nP+zW05Iw7JMiG4G2dREbZXPo9gf+3vxr4Gc9/MoDzQX4wZgXuG108k4iAy+X\n25lMsByd/smyGr1OBMI2TSfVCxBaUUUIS0rQ7OqpgQLDogWx+EsdncUwIO+N\nMDgaoXt9Yq0RvGVDiORTMKwIP0+D8REVSRaEq3h/wc6A9TipSG3SrrsAbCcA\n0ChK/YC8bLLd8jtMEwQ0wl8zO7t78hM4P7NoxGgIAUWh/BcKdjQnhemOgV6J\nYYsRhMOsWNtRx0xe1lxdourOqPy293ggDsL/gcFtrxWLh6wU+1WchTEUIqkB\nDvA5fwNZ9msNQcsmdgvWjqMCYMcQo+1cbPk0AQCRnPWI18+wy8dMHkc5EjEo\nC51toknDRL5QyQ6WZloJ9WiTrWTObPRmSZcMlLRk5DSbEOR5a+GddCNutg39\nsqJDdi9JHmuwZpjJrBb9cdkWi53Gx2m48RL38tApP34TbN6RFzSFzYndbgqL\n5B3AF6Wvw+e59nDql7Pk/xz/+k3yqqVXEFkdpjEJs82IVb/6afvvI/KkKKJw\nU2p+\r\n=niwM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4faf753d95b968620fe1e5e38200a3301cfc2d05","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T23:50:42.342Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.1-renovate-internal-patch-4faf753d95b968620fe1e5e38200a3301cfc2d05_1625615765393_0.47354525977433415","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.1":{"name":"@balena/jellyfish-test-harness","version":"6.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01016cad7b89fe963e0460bceae2e21909229efb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.1.tgz","fileCount":24,"integrity":"sha512-VN+5N4NYyxstUqgn0AWZavAoYejnxY+SvNURuPl7tlXp2Gvq1WCTq5hy96GfvtZSEl2TPns0wU4JqkD8XMn/AQ==","signatures":[{"sig":"MEUCIGDAf9Y0yoi+9RqTSYYZRxiDtIBNbmPgHut/w4EAqEEmAiEAh9Jdzg9XSWD3JqpUAvVxQun3ZPZLZvwdXS6dv17OD3k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5O9SCRA9TVsSAnZWagAA8HQP/3MLKTWromM32vL3byUy\nFSByOtKpIIgJpLIp5E2WICLcifEIAq9LtYvsQ6N9N96E8akOW9wuNnzGqZN6\nIe0R9bJRqh10I2TMAmduWh8s2Z4X11WW4W7CjOZ4SwP9G+WIgiq+6uey/uuW\n919kclKzxa6ZgoEkD/KHwKJDbY0PBxVI92q5Vp1CBvXkQ0O5yGJlvvYntDIZ\nW1XHAZBRvRnvrsaV4GZVfpiu6WArSIGlrCx8Qx/o4F4S3yXdDkY9GQF0qFv5\nkx3UFHRG4Yrkd2qVxQUMoVb96t+stJ23RHFDdkZw9lwDg65/E++JeTvgjlsR\nIuT9S628oshlB5oj7BHYchoKLjEne1WqS+BbIOBmkHqtmR0arjKCdUgUquSI\nqgM498Cdwm39Dr0hwhU9Hv9GC/chSUJ+wmMIuMTynE/WR/HKTRO24s9HVIhL\nciOIwfEWcj0VYPoDbmcVZ7ZPwYxmgtHrOTYyItnFQ/xhkS0+WmFvc/lRwIex\n7z9gsMzNmX6b1txCDIzhChUBmpe2up6HcxcoKwC10BDvBTOv85AzCqmFkuew\ndjUkdRrmMdRl0Q4Js7Pgl6OTSC3ewLmJn4Dxn5kvGRH7tcSk37vm32M33/g0\nYGcJML7TThGhlP2jpwZwH/17fLaMv5/PZLemH+JeKG1CPDnda+Ja2Z6a5y07\nOyFL\r\n=NhOm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d7612f29663dd4ad0ca7524c65f84b89bbe385f3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-06T23:58:37.241Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.0.11","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.1_1625616210097_0.8300637536836724","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.2-renovate-balena-jellyfish-core-5-x-77a93fd4d4a56f376396606a8c2e8802c5ce69a4":{"name":"@balena/jellyfish-test-harness","version":"6.0.2-renovate-balena-jellyfish-core-5-x-77a93fd4d4a56f376396606a8c2e8802c5ce69a4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.2-renovate-balena-jellyfish-core-5-x-77a93fd4d4a56f376396606a8c2e8802c5ce69a4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d0859853d38b975a22f798da16b7a84bb17c6b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.2-renovate-balena-jellyfish-core-5-x-77a93fd4d4a56f376396606a8c2e8802c5ce69a4.tgz","fileCount":24,"integrity":"sha512-jyTiZ/I5r8th/DyUsuOfiBJpbqh+HIDGt9oysj+qyObMC9nbnAeWjs9OlxIRR7mM8GETXq4Az0cz+ZHtpW757A==","signatures":[{"sig":"MEYCIQD0ZlXWGiz+GYVnrBZFrp4qBX29x3Lg5iCB2lM53OXKFQIhAL5rT5uGNX9B02DBglCHoI2VuN7vSREb0K4NY9ncdNuZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126662,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5RM6CRA9TVsSAnZWagAA2TUP/AmYpKWWEXh2staRaj+T\nns66kBwyoC2d938oq1hnficbqAcYR6AXfTYalI9LUqSxyrxRkSHMBlMuxQPR\nZL6nce5xy3r5pC1lDJBaI77Cmq1/5CYguKcW9v1QQPdCYlKdXnHu/IgC/EKK\nfCT4QA6pvFZWnm+hxzSH+ihSbyFwyaxRGHHNLPCkqEaSS2CYP22B7BXDZjQX\ntTJMVznAaTGxxjc9YS7Z+8Yg7k7cLBbD9Qo5wyyq3DACu1LorZSxlEy2Hiu5\n7UNe/vJebJ3SYDczVGyFIVz1ybzwIUp+sSHtGdR1Sz3ZS3KKnHwpYz0cVcJP\n9f0JqdjJx/OKx8pc5mj9nZZc48Q1RDgjCpCXYraa9B7aTb2SS6pj1mFJIM/7\nEOKgHFYqpWb2QY9e3S0IBew6BSnGgc+prbISwSyjB7MNMALixaN9cEzCoMBz\nwJJ8CVUZnaGqfzGmFn8FmHmvb19MPAr4jlYc8p2lTG4cHiWpGXRQCXP+AlUH\nASAzkw1zNSiiO2TqlVx7MQLsP3X2vPlHhnHuOykaPKcGBp8d+l+JmO6lOUQv\nrORg1IzR2jj4y8QtEZ3VF/vmSLuzPrFFqU9uLFUT/MgZNA+aBFA3u+DagEYR\ni7+xu+7kez/kwhZLTDFtgk8WVCUwZzpiC66/fkKaF1Edi5f7gCJdzveP/tvA\nTrp/\r\n=gGp9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"77a93fd4d4a56f376396606a8c2e8802c5ce69a4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T02:31:53.616Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.2-renovate-balena-jellyfish-core-5-x-77a93fd4d4a56f376396606a8c2e8802c5ce69a4_1625625401669_0.0669078231102993","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.2":{"name":"@balena/jellyfish-test-harness","version":"6.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7152ce322b2981c8071ac92c45c9e2a59d484fdd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.2.tgz","fileCount":24,"integrity":"sha512-m8vbD1G8UX+YFSaziNiBKilR3UjOEbRlBaB0FVgQTFL3qdCjTbV4QuajZYRf7UzWbJ+ZHvwCGyCoE5xWLc/JoA==","signatures":[{"sig":"MEUCIQCh1DCdkmWxQfqCAwxGLfnZL9dkGWbrmAN5q24FupcRRQIgFXZCkERbcue1JfW82lWIQkUEjKLPU0dTNT0UQGA67cI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126586,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5RXTCRA9TVsSAnZWagAA3CYP/jteGD6HEekAdWzosbU9\nULMpvWjTOeTbe3z2bD+Q9j2gUrGxquNt2Ep3AnrUdkPOdqDEejAXCfLO3fQJ\nPnj6iT2uqK0w6K5wSd3FE4EvLpZy5eWwkNu09DNe83DGj+t1XCGRX3IX5RGi\n5P6TOUU5cCYsqKTRQxlFlYQdUbIwyNMz0UtiE/AiZqFJSDmRPXHnopeF3D5Y\n7cCu/51653CqQYzNRWmtNHe+jChV3ChbUiezncApaCKT4P3Gw7yGJoLK2x8u\n7yYB4iMVpESkgkdMNQ/e72LdMX/QS1azvuXQBDXxgzKY8PvmB8M6JYpAijIC\nBO2ySd1vVI99Vn2E1YGRnN7MBEqgnybqT1Ts5DV1qv2j06yg3CB2WMJQUP1K\n5s2dKAaVJ4OkPS8EoS5Fnvnney5mfz4C8F6MImzqGufFVIkKtTHTRnTYK1lH\nqKn/Hppb3iTAqbdCXS/zLHpbtHrg/bRLHg1UX8rjBX9SOwcp95Rbbte+6bXl\nu4gcD9fRrl7LXN+f0WXX33mGgRnVpE9qXUxXvzvGSicwFWtmhvj03k6pDwBI\ntQs6pjDu27KEWHDfFf5yTLRhrV8EXa6c4N94kg0pgoW2mmywKAKj5BmkngSZ\nFZeNccLK9cd7lerHI0rEyux47d2LN9U0my6jlHz/kQmEJMAU2kTYDeQ7NSiZ\nuNeu\r\n=Iz8t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"483d9c64331916e9da8d585014c38bb1f5791268","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T02:39:51.658Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.279","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.185"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.2_1625626067363_0.14995521896346897","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.3-renovate-internal-patch-8b28cbc291736146ef420aca05bb5bbfacef6476":{"name":"@balena/jellyfish-test-harness","version":"6.0.3-renovate-internal-patch-8b28cbc291736146ef420aca05bb5bbfacef6476","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.3-renovate-internal-patch-8b28cbc291736146ef420aca05bb5bbfacef6476","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f1e119ab1d4468526332de7fee687cca51da130","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.3-renovate-internal-patch-8b28cbc291736146ef420aca05bb5bbfacef6476.tgz","fileCount":24,"integrity":"sha512-XoBqDljrq44vYY5rZxgGDg7MlcT+cfeX38C/d9mQFe9C3+ZWHiU9KL3A9VWZOh6emRHX3Wsi9/7WkkX6VkQOVg==","signatures":[{"sig":"MEYCIQCZVOrU4bGb4m8GMcsK2je/p+XIruCmmVJbkyzyzMeGgAIhAKaLi4GVld9eKNi3y09rxSq1su+j43mmIgRKbNqQS8jx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126724,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5RbNCRA9TVsSAnZWagAAi1YQAIalhuxpsAa2YNscK5qS\n9yTW6lfxSiEntZA0MCnn+EDaVD/wEUx9ZdrzhUEfEwAU7v77pQpq1cHET6u8\nwvs8P4w58KbIOmRIs6jxWlCK3n2D52PPXJHAjbJHzIYEWJwy58/sIA2XxhlN\nxpRizn5XRz7PL1RhlMdW51pwnxzqB0YFemBoM5A4jaQTqOgFZJ2k5rtcXEhn\n/Z/WJQb+LIjYQ0FBjtnw4259krFajRFJZhs0ib8WJ+cXgIja5RwOY46Jd9pq\n6g+7tODuZAO8A5G+CZiigUCHPeRx7fYGoHFaGoD5raMAHAzq9gs69zoF5nOH\nppmuoBi5EJVl5cPVQoLJBuOpkkn/IP0TBWUHAQqo+SaiDiUzcmtJWh8LyoRu\nif9WEXK0WQAFlFLE4c+Bta7q5GcR1KGl7AByzMYHoe74cA7ldTwFITLrhGs7\ns16iOlTTs/ITIL/50RO/p7DaYM78WiG6suW2XWKaIjPTaiMRrSQkddCt7st8\nglnm2lYw3Eeo1HIWdruCuVZmRHHRZSBVvuaAznBgkebVBdLAJ4ea/aoaooUh\nbCx3JqY2G5y9ZD5ON4Dd8cqxXZzE2JsFYW8JSm0kasyxORD4/fbWRSAPofbg\nCOzRNSzHIKn7p2OXLD7k6PmTGjJSbuYf4YAkod3BURZf2P9V4IqMvvpoPg3y\na2UW\r\n=EGcz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8b28cbc291736146ef420aca05bb5bbfacef6476","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T02:48:52.094Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.3-renovate-internal-patch-8b28cbc291736146ef420aca05bb5bbfacef6476_1625626317256_0.5490354381840552","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.3":{"name":"@balena/jellyfish-test-harness","version":"6.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c85ba6f10a6b9092af6596bb49c9e82aa8081a74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.3.tgz","fileCount":24,"integrity":"sha512-QULSL53si1o5iJHZL7mFAfl63GPD1mF+8B8T8ObhRDskDE6v1me/rb7o8+nYSI63Zh3SgNy+2jSKtSLY73OLmA==","signatures":[{"sig":"MEQCIFiEfzRoWFXa3qgPm2ih5sO7uonuerd29Xfyw5bpeNcAAiAYz5fEUOm6on0WgBnegW+Rtw//W9cA03UtZAdbhFdR8A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126659,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5RgACRA9TVsSAnZWagAAvvcP/3sSlzEp4EBU42URZadK\nZOwI/aGzXphpxEnb5SPhQP8jl9oorNlU7fYbylFkM4KbWDVKM5lGTUjrZsfI\njxnim5aQzC5Y/OuP/Mx2MRVqJG6rGI+Sh4RwN5Lwj07JbToUkqSUG3iVK5Rv\nNl0Tb5Q+4M/WDiFZldidAjRFaTqjOMYGBcMQVR9JgpA0AqlGrlMaTopxIe7y\n488qtR/1zFZn9FsNH5tIGf53P5BFO06FJJR5UmUyIjIatr2i8lCrmvSLf/kc\nvY5uISQYiIKu0azcBkPJIe9Nbas8lwimklV8QdhPOsPdBuSCOTnezon6XTFu\n6WFVdzdk+C+BFNnWPLDkfCKbxgNhT6ADPVl7QFDXqixxZryI/0AFZ8Hov0p0\n9QkIH3iHV+QfJtLPp9okFTovlS2Mk4an4SHPoEz1CstDIeCLwZkUR0Uz/brM\nSVTsg9erJbJI56XHFcG29Kb3RFq2ej8gE17DWeYixE/Q1SSQmCrKv+4rttAe\nfM+yMHdInWtn8AfAXxmCPqweGCm4i17/QVlqx66eoS511ShkZpIbRcaE6/0y\nOW9Pq/7x5gHTZaxgTPLKV46iLlvBbmsUkyqp2uE+oLFG27gTTooVDrLM5Ci7\n6PFvfj3nBLgKzv5By/cARepsKy549DzZ0i76ilJJTUjZgsLyCgDbVJxBh4DC\njazp\r\n=+3gG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb5c799849cdb117d5d6a20960521630fab4be84","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T02:54:52.590Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.3_1625626624111_0.3680608949450632","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.4-add-translate-test-doc-eeaa88e3d9be36733bce34f155bbdb5614d29b3b":{"name":"@balena/jellyfish-test-harness","version":"6.0.4-add-translate-test-doc-eeaa88e3d9be36733bce34f155bbdb5614d29b3b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.4-add-translate-test-doc-eeaa88e3d9be36733bce34f155bbdb5614d29b3b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"119e4b30615b0ab85004ffc9c1e3cc4ccf26b292","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.4-add-translate-test-doc-eeaa88e3d9be36733bce34f155bbdb5614d29b3b.tgz","fileCount":24,"integrity":"sha512-sJVRcSCBlTqXlIypqErgHHsKzFPQY963aYrbAUTVtpuPbEfeuSdBqYlotiLBiMoOWHv/8m0JiEqSDLMFmBs1CQ==","signatures":[{"sig":"MEUCIQCwQYqxs3zX2wmRfXtQxK7mIVSS/3NytKHnrkdmA8F14wIgJ5VyfCuKKyvy3LqWuLhEQUI9Dxy48taLRvdt6PSG3E4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126930,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5VG4CRA9TVsSAnZWagAAx8QQAIt2+UKHFP1zpr553/tt\nIULCSMq2yJYY/ZE+pWE7B365JyRtvqrw10T53p6CqeyBjrTptLwhPsmN0G2b\ntu6I0yGGvHV/tPSuluIqiRojjlQoWb0/ZZrE3mkOO82CRMOyZobhJjhwA6kT\nngMNK8Mkn1eIfCO9Jiyz1+P8iVzs1c841sXqpDKAm1fm/CwjBFQHHxsC/RK1\nxMRzhkqfCvTnR/uRihe0zavKFoYHIOrLWCv1IHYi4EuFxkFLZM41XJPyNM1h\nvS67+Z9l4hSL33GTbxHmS4hQu1BP9P/9Sm64UXM2/a5/Nan0lmjOm1r628JN\nsHOM2w18h3zCX/26p6iVjE9xY9Ym7VTpF8fGlwicvNLOZAdMwBPXqXpDUXWS\nFc32mik5tMRXf4kh1gpYn8lmlE+RrEI/APcN24zgHvq1rJObq8p0b2CdXPiP\nb8obTC7oXmPGhn+cyJxlnXi0brnrBUNEzjMmfqaddErXOAxiyldJ51/E2hEd\n4l9zVG7LjRHM73zmnd3oMpQVHg684z0lKvtlwMjUL7h3e3MZ11w+NKbkpHHw\nlF3Pcjc5ogoq+XSax2keG5fHryJ8ueYNXf5fe5gJPOZFgluqWy2h5GmKk7Nn\nhdZ+fCajLouXlFHOTjKm43TMnglIGQzf66LMla6b1Xywztx7SyndjPLrnqXi\n6+WG\r\n=1F2J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\n```js\nconst ava = require('ava')\nconst {\n\tsyncIntegrationScenario\n} = require('@balena/jellyfish-test-harness')\n\nsyncIntegrationScenario.run(ava, {\n  // The directory in which your sync integration test and webhooks directory are located\n  basePath: '',\n\n  // Optional additional test hooks\n  before: (test) => {},\n  beforeEach: (test) => {},\n  after: (test) => {},\n  afterEach: (test) => {},\n\n  // An optional method to be called to prepare card data before inserting it\n  prepareEvent: (data) => { return data },\n\n  // Additional options to pass to the webhook scenario runner\n  options: {},\n\n  // A list of plugin classes required to run the tests\n  plugins: [],\n\n  // A list of card slugs that must be loaded before running any tests\n\tcards: [ ... ],\n\n  // The sync integration code itself\n\tintegration: require('../../../lib/integrations/<my-integration>'),\n\n  // The scenarios that will be run\n\tscenarios: require('./webhooks/<my-integration>'),\n\n  // The URL of the integration\n\tbaseUrl: 'https://<my-integration-endpoint>',\n\n  // The regular expression picking paths on the baseUrl to provide mock responses to\n\tstubRegex: /.*/,\n\n  // The slug of the integration under test\n\tsource: '<my-integration>',\n\n  // A callback to verify if a request is authorized\n\tisAuthorized: (request) => {\n\t\t...\n\t}\n})\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eeaa88e3d9be36733bce34f155bbdb5614d29b3b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T06:59:22.323Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.4-add-translate-test-doc-eeaa88e3d9be36733bce34f155bbdb5614d29b3b_1625641399758_0.6864945389674351","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.4":{"name":"@balena/jellyfish-test-harness","version":"6.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f4815aa686a2018bf9c030fa13e0a69787c15fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.4.tgz","fileCount":24,"integrity":"sha512-e7OJ25bqgxgdPZ0T2tUIGL+n0a0RMQHR3ycr1Rk3/YC48akL1Tz5st7+85LUKOmal8JnrK0ynOw3ZcgjXtVMJA==","signatures":[{"sig":"MEUCIQClhPqxUg/ZtdhYC6ajT36ZNH/z6r+ZyXsKeT/KxuwDYAIgWA3KtPi3hyck9ciCVurZDQ1DBYzvgN2x6/Bfsm/ZtmM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":126866,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5VLwCRA9TVsSAnZWagAApIUQAKTRcPI17FI9jeksfhSz\nqJXuFpYI40MizKXzlqzj5E798fw+77LoJJffl5W5rfzIZhcN+l1kLgnood8q\n3AzQvDztrj4H3j+ZIUAMePj0NYDotCYDfjd9hEDqoll29Qkms/UYY07insYi\njoafUWp9bFs1zFGHFu2peG/T6V7kSzi/SyN/nfx4uSnkeUgihm6dTdvLgljX\neoQjpPGGQLk6AjmCJTFUhMr8m5XcE+ytgplnvgeC4CAHWzv9MDPG87YQ2hAW\nM8/6csk1jgHqLPkFIfBZ8OiJdlw9otx7PRIYoLzbo8JtqRms8BTVZ9LLWB7O\njOkq0PU4h7fceKwc2o29qHGdgioQL11h8W0MTI5WFiM8arUdz+GfnNjG9AzT\nEaLqb5j+7qbz8Bq8zmkmlrGHrFmNdc+3SO8Ky6cLIatWSb2I5kQUXgNV/kGd\nBxgYZ9uaXgthn0ezVTUrxjwFXVq5kOP8weJF3vzdOPHAefoWYGM46te0K6Gp\nU3f48jufZiQxHYKD4gLsY0w86OUkgjpbgIEdONxjGKRNMUJVOorn6ikOfR/p\n54R7RJ9tbLTbhDT456lfbP09gWejYrNuDkSlGJerqXzwYxpTE0mUTxWTZQvX\nkwimmeeHp6BBohbaayuFGGaNCc8ubDPVD3XCMuzaZgR0d87EiggqhjTP+YFi\nwUDd\r\n=0VAE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b67dd4fc2d8699f464fcae615fa4855fa55a7c40","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T07:06:13.387Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.4_1625641712316_0.8301898551808187","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.5-update-readme-example-5abbcd5f7cbb8d597a84b98960acb80c6fea1e56":{"name":"@balena/jellyfish-test-harness","version":"6.0.5-update-readme-example-5abbcd5f7cbb8d597a84b98960acb80c6fea1e56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.5-update-readme-example-5abbcd5f7cbb8d597a84b98960acb80c6fea1e56","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8ed32a78854d04cde5cf35c217294db0091eb2da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.5-update-readme-example-5abbcd5f7cbb8d597a84b98960acb80c6fea1e56.tgz","fileCount":24,"integrity":"sha512-vk6TJnkmmkAKac2FiG/lz+TCs0jaPg9QgmO95/ZDGAeLlJqBYSGTvfanGCQdln4bZu3izQKDGuYxNIE5ngmxdg==","signatures":[{"sig":"MEQCIBT3gxwZ1H147UXfjVQxWTzEQjSv6aYn82MhlGq3ulAkAiBthXmWZlCIPDn1IoPEcyKrtY3UAUGZNZitfV2wMsguoQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5VfHCRA9TVsSAnZWagAAvRUP/3140cCcahIVTeJ+cM/Z\nvfU5R4LuqP18mEKllANrVnPq3xcFoRamAkSjWjxRzWAPwVdx8Kr8xeKl1bgr\nOSDocgVxidOYB8+lLowcSUtDrO+mlggB2lAZZoaQtrlvo36nQZ4EdZzASZaS\n4UVRlYKuNSfMTTZpzKXgkS4Fr3EXRUi5oiYnHBxOLeJ1koDimbnJHx+Gj+Bs\nklA+CAQl3dSHVik9NCz62zz1svjttv0VL6cyZUq+9lthfVHtIsLJLC+IVcGI\neeHwEzO2Q5WTvVBdxM8S0s0PLKsG7r8EsWZQMmSzNZeeZn1O/MQoxT1qw4Ss\nGzBJcYQygcINLTEKNjeEeI2noGdlTjfiAWmSwBQ6EqHNHb3f8lili4ilxZ/C\n2l6aqwtVnIILlUR8GyO0q8Ves94JcdU+gYo4aoY9msetYlFGPR74DTXqD/HY\nkrYtD42MCPiT7zzdsAeuA2peX5mLpfb163W7bjs42V5mmBS3kQRCy33hV7pq\nJlgAM4qNTwL+Sbu+ilg2D3s21QsTkzC0c18GVOR4O7JTIGgLm3pcHbwwQkfM\n989nxoUc9aEnM5wRh9Qcw88DlDtTIXrb/xDEcjy2Phmv4WBV+CHACSIoum27\nIuyTASiQeXcYhFT9Yo8uT0g4DS8ic9fZXSYR27RumH7updcx+J1e5PT32AMS\nWgHA\r\n=G7gO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5abbcd5f7cbb8d597a84b98960acb80c6fea1e56","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T07:23:42.948Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.5-update-readme-example-5abbcd5f7cbb8d597a84b98960acb80c6fea1e56_1625642951348_0.22855652293674455","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.5":{"name":"@balena/jellyfish-test-harness","version":"6.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"368f2bddbad9c1c9533416f8044d92d9a365488d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.5.tgz","fileCount":24,"integrity":"sha512-4TFgZsl5FPEOsOBmptsOqvVICCij1AJ697nySFt3u+bKwNbPKuUR+Hp9oLoPEnSd4RrhhLz0ZALfQIZqhSne4A==","signatures":[{"sig":"MEUCIQDjNlL+U0xfABxV9n0PzRafwv2JJNSlfgVn/zg5nzZcGgIgYPJnvxdAWi6xAwcf4DealoiGoYKY8MJJQ6YnWOoMCxs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127152,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5VlhCRA9TVsSAnZWagAAr04P/RlwBcshKmW7XkaZCUIW\neBOCwak2idEeKkFAK0jZSrz1gEems7ocid3Ly0riXdk+TW6cbbS5LZmX03Ct\nhEVLnW6eq285ZZNpStKO1SWxZdpCSZLsIuv800quEKZ0UvZsf8Tul/aQTt68\nM0iEeLe+qHWfLovXCfVv4kqflT2PPgF1dmiVzY2Cy4yhQMqKKRMkJqIuylI1\nATXA0Fb0VBmUwqnoAmmeqfsxzU/9sLQfYCs9weHymQP0rPl9ymUPQimhoCLN\nHUOhkxGGXw9WnYmlkdF2GxYXh3lOJ9r9io8Zyx5RppJWGitRTVG+AS2vNpgB\n1yNdF0MwwBWfQzT0hS6lfhJRCXwGIgRb4fEtPqRbq/03EWAreK0AUKVJF/lW\ndo7Z6MXlvWUgsAfFBrkiGpJksg++GuDNUapSpAOeE3DaMSn9qogXBy0d2Ih/\nz9468X9u27qzipDVHtK5SRGfeYEeMBr6RxP5evfpYUGczdXT1o0D9MucUxxI\njT58oeLibompmoMD070J1DeEfeYJbj13hIg5l4+pP1qFG73VVUDyAhmqlMEm\nOM6G+wTwvtcTjhVyMebytsoL0+J/MjEv4BKMfZ/Iz3j9pYq+ISspUqVWG+rP\naSwca60ILoJjdXd4VFPnHXxBguPKoRjtyTS+n0Uyt8BM93oKD2Krkr6jywFt\nq3YU\r\n=8Pp6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2f86a4e0f2f4f5e221e362baabde6764f6c7421e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T07:32:57.037Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.207","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.5_1625643361259_0.5114160333022031","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.6-renovate-internal-patch-91443921670039d5387a76e1148446060348a588":{"name":"@balena/jellyfish-test-harness","version":"6.0.6-renovate-internal-patch-91443921670039d5387a76e1148446060348a588","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.6-renovate-internal-patch-91443921670039d5387a76e1148446060348a588","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bfd71000c5658e7b215ea136f1706fc9a295c918","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.6-renovate-internal-patch-91443921670039d5387a76e1148446060348a588.tgz","fileCount":24,"integrity":"sha512-oJC2+8NKCfS8yXABKsTlhF9rwnfr3rbE5VFMkZETgEGw7KKM8KjavI45vkm36h98fbxwQG3wIUrKT2FtOizDCg==","signatures":[{"sig":"MEUCIA7XvrYTfeLwQNqXENFgsVAq5Q1MQP/l3vFX8VRvWnnuAiEA30S5BqVM9uGltU36+GQnww7jbITWnjuBnSHaXDUzi1M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5jK1CRA9TVsSAnZWagAAG/MP/jFMWs3z8oborW/C13ev\nEDZl3XjIF7Uq/DcWrHh+tIiSU5Cj7dQQKz8sMATs/GgB4OBhsI5WiSbjm/8c\no1yEJH1ln9VNvf2D72Z+f5/WkhHkBxJzpcKQW0brNVBsKqcOf4sCclZpjMaI\nALWfWKrlSeeM3T67HKuRdO2tdTgdnjd/zDbNYPWZUEhVRAdjZpxobC6OdZjb\n1eDoRtBw3KOyVAp0KElayaRQWU1mogy8RNBn5Um2oP315Bazz//UYz734ztE\n19ThR8pK7jy+NvIvIem1STz9ELWLb2XGfnjQ8TetaR1H2SMslUb3XtYeMf1O\nKNiRT1Iq0Z1lHnNR7b0CtgeRhz6k3tisub/U28oCGf7N59eXMeR6iyIDNSFg\np4nRkzcAX5Ac4aE3UhMN7tMXrmeaTUVxHw1+/D70xHwGEe4NBI+HVelPsDSU\n1+XDJEoL//wkdHOs/USj0wILkUud2ZSn1+ibzZaX6eW+UngrOvenB93thiQK\n86FX+2aPb/CHEfxDsRwgqkjxqZ+N4SJ+3rY1wC8x7sW6n1zcf06/NadeQH0A\nINzHhQ4xfeLvrKtJRhMgLL/WTBrKehG4HRqB9Y++2kS71Zmf5lGii8CF/Do3\n89ysD9jKAHBOhvZkxsnjHBtu6Vb/eUvQsNVgLxTChRvlN6X6skbHhJ2W2vBH\nRAAL\r\n=huwJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"91443921670039d5387a76e1148446060348a588","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T22:59:21.928Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.6-renovate-internal-patch-91443921670039d5387a76e1148446060348a588_1625698997098_0.32747317028701683","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.6":{"name":"@balena/jellyfish-test-harness","version":"6.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de786175313f6c1f3011ba0250fcfef41ad9e8c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.6.tgz","fileCount":24,"integrity":"sha512-4CAsv4zzNp+eshx7aUYwDbZ7RO48f3aYqmi8eLPwpPIvKSI8LRnH5vvvX7GYJszQYKqdAeqwFx5Q4ENfl/0WZQ==","signatures":[{"sig":"MEUCIQCAVNForXeYqmEGcQZ5ehwplj9swTlmZkwVR6V2Ov09lQIgayneCnrDL88bQm19hxUuQBN/r8P6QF3T9P4l4ujKJ8A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127257,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5jOSCRA9TVsSAnZWagAAmm8P/0GQm6BCwj79DtTbPe1d\nzhcMwN3YXutW/C7HilHJTWbSIRPcBsLRzmTmNBcbx9l2r+rPvXeEfCiX4ZYh\nZ1EEhj8xdkwuGOG3YrDRJxXCyiQRMQB9mFszZMF/gLeUtKb0g206m+asQps9\nerPUuUNKYwfuBI0oKPas8tahjB7d5qSSN2yZE4yVsdJ2hb0vc+VLf+jo49OO\nKEbuWI8gipz2+yYkbhxk5A2xohDlMaWG/YdZA8hB2npoGCAJYOqBidLLEnGR\nvJ3x9tZJJwm7ON2FKg8Yn1KYSR2e7h/1U2Bo14RsgpdnuN2Ld313Xf45RIgU\niwHVtEfA11K528Z1J72z6cRYMKO2k5loBAS8puZjsGt+iRcKvcN/dDo2GKHm\npR5zWGTkXEgrMU3eRrph3nKeLDEyLnGVqRllFmgs/0lv15k30nlTdCj44pf/\nJ7qjFcpMksyZxEbN2LyfEhmd/ZIncBMPy3xdVEuORJZEkXGM/issyrmXwlri\nq/8t7XU/67OWhaCYe3eJfR2vKKudMyHagEkaMVE5rLpbeA0O5Hy0dtw75aCs\nlJcQpodB2PNjedahocF7fLwXi1/6m/xMqDdAUpqf3pBm1qiG3NDAbWwD1d9g\nGxW1j4KBQtpuBi9FHiSMPbbkMByfgX8x76ogMcZMJ3n+2z+q2ehKvlGenvc/\n3BuC\r\n=JPgN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b4cda7bea3d4617bb48816a9b57e33e71810a9f3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T23:05:13.168Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.0","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.24","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.6_1625699217554_0.33020688200841586","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.7-renovate-internal-patch-63667433bd01732d1721cca0dd6ceb70f813d728":{"name":"@balena/jellyfish-test-harness","version":"6.0.7-renovate-internal-patch-63667433bd01732d1721cca0dd6ceb70f813d728","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.7-renovate-internal-patch-63667433bd01732d1721cca0dd6ceb70f813d728","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"baca059713adac672776d315e9a487d0f417d692","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.7-renovate-internal-patch-63667433bd01732d1721cca0dd6ceb70f813d728.tgz","fileCount":24,"integrity":"sha512-7QJDwl2RqaUp+99MT4XSXuay62sCMF2avsFIBxTsTb31ofGJtIAFTLBW/z60IcsBvY3VHhotYmIUTchb/mFAWA==","signatures":[{"sig":"MEYCIQDIYJC1PIHlZCUO3KYweIq2emFz3NR1SvHooDdISyKiuwIhAOA8lJ3T1NBY/7cHyrIHYGDV/xrhDGnpdqhvAiblZlzD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127395,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5j0JCRA9TVsSAnZWagAAgbYP/Ah/W8eghFCMP8kY4aC6\n0nBqLs3LvDLtUk8xPQ8/h2QP7Xjn7heMZ4UhNtkTfK1UZIOc2+V7Zi4uF+AE\nge6wJenrgd9m0MPIBitZn6cbrfyW0skZwkK+jOWsreFxCjwadr9YXRWorXSM\npS9Tzur4w9Y/DfvVxXUCjtxftwxkMxjKcDHZKZfoV65dJv6NdlK58SYvTDyg\nk5VGaU/XyDtJKL0+UO3xVOAiUt7O/Cqwj7Aiu8hERdqFDEGVRDB41cGVDl0O\nANhyH++vCgTp2tRwygqlNrbv4mm0CpSiNpU682VGh8a0nL3yQsrP81GrNqOF\na5nf4G96tBrS3gSTTXnWEZbiGL6abEcXo7yY7Mvo9W0tRp9XC/xNzB1vaVK7\nFPWbbWbkdDeD2RTnXAsVve/Gk1pnjTUEGRAjRgLoQGT9Pi9Yz59UyndKCf8t\nHu/DnS1XNzDwegvnaedgn07lGfCzUlcQcB2wRcMJlixXuwfRs+UBbYgRwdw1\ndOt98MvczMnTS/rCW1fGbeqTuxhONyFtRqE+UHAa4PcwobG4TH8NfiDnDjjA\npMrJtFbB9B1EGGKu0jvj4ijhdExDho71jlKmY38fAVUFnNPpW8IqKUk9yv2j\naj6s53Hit21pNuR+qu5cC1ugwhKnqVG8afMXDpVz/2m/owtiNQyVHQTKm1wZ\n7Bld\r\n=W35q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"63667433bd01732d1721cca0dd6ceb70f813d728","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T23:43:53.080Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.1","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.25","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.7-renovate-internal-patch-63667433bd01732d1721cca0dd6ceb70f813d728_1625701640744_0.2867319740351961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.7":{"name":"@balena/jellyfish-test-harness","version":"6.0.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"38a56b76ff28b5cb1acd2bb319667275dcc37697","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.7.tgz","fileCount":24,"integrity":"sha512-A5WW6OD9XuyjvScV09no4ojTBUOj4dMpz9idgGF08lWpy1Fm47K1HAdd+G9Sj1L1mTsJHQautNSBTOAkkxKUfQ==","signatures":[{"sig":"MEUCIDKBfKRD+4F1V5olXta9AtkObgA/lb6tmBa4HP7MT5N9AiEAsZquCjd7SZCoMtsE+rLkLWGXntxYGCKZ68lAjGoH99s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127330,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5j3LCRA9TVsSAnZWagAAnrcQAIyquRLJtPGekoVGI6wo\nP+aNMo1vBuXuqe5iusY9ZYAkuLzwnOLJTCRoQw+943Sxp06Ur03CPjW/MjpM\n5X81KlU4clK3u5kedaf2eL8jQqRdT8iRF3QXT9LFbn2oXFXq4YWYa9t36QIv\n9z4XzeU3sDS4IKlj6zkl+duLthXpIwRWWsssQAJHiztF5N4M3E8mUWaFWweN\n2OwBcboh+t2TzwuATdnxgwWAdIIJ0SJg5ejwJAq3vUXo1IdF+gPh9Gt3YkPf\n3AuCeuUDIw5/OMKUDHwSxjt70XWURSSPZH0vEmkAm89FV394hsxoGrHgOIZV\npahSIxeON6e5x8lkGsGTsLn6ckT6JWrY3WrpbBgVcSuzbSTgI9/lZiJG8VeX\nefQMhUoYvbfrd1emVHgy78uNph2R+1eYuTwDuKH2y057U43/q4+CFwzSgWVF\n2gIi3zYrl516v2d+czcIRzgY9UdoBzCU48WNMfT89Hknnh2xGyDw+/8XqeDg\nAulK7mAcBwTn3Xg6qirnl1ByagQ4Znrqh93a6dGga0ERS1zAw+Y7SevRQ3UM\nD+rlqhOL86VeYXYh2XSt+nYfuJiBeEnIdNA9QmxiV9XoM6zsLTpSSxo+jaBX\n9kkR928IWOAyX8mOHcPxzenY8emdCNshmtK7Uxl618dLXwZ2FgoY5noEhRzN\n7TEl\r\n=gLN1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"227581a60729f65b3dcffbe51aed18adb2aca4e0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-07T23:48:51.398Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.1","@balena/jellyfish-sync":"^6.0.280","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.25","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.7_1625701834828_0.9833124707842995","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.8-renovate-internal-patch-f792d7407b67d6bbf6c2522755d27dc83fe48edb":{"name":"@balena/jellyfish-test-harness","version":"6.0.8-renovate-internal-patch-f792d7407b67d6bbf6c2522755d27dc83fe48edb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.8-renovate-internal-patch-f792d7407b67d6bbf6c2522755d27dc83fe48edb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c0f2b2b2c8f515affb6c9295557fcea983c58330","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.8-renovate-internal-patch-f792d7407b67d6bbf6c2522755d27dc83fe48edb.tgz","fileCount":24,"integrity":"sha512-Ga4gqRt4tyPN6YzieCwxIVeTiddIgGslYtcDIqwNowBRaXbS+vURRSI/ZgPA427uBH2TffVU2JJu6FJK5RvJtA==","signatures":[{"sig":"MEQCIHgWTMFaBnm/jBdm7ad1ePcNlzgDdEgJXpSl2ZarXRZbAiAfzKozPVjuw8egjU8x0DKB/MvTiuEekRSVpEElW0se+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127499,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5ky4CRA9TVsSAnZWagAAFj0QAIRw89yiFw++Ipm8txu6\nRgRkFDLjucnA9vW6BBaFkPBhzo4HiuNIan9bDezhSM/Zd5/6dpQirkEjQ0TF\nuqbf3nBM/rysR25fZA0UZAB3UsMwfDl97oENxsIiu3CEaSL6FtKZTqvpfxaw\nJ7We14rGqwux+Q+02LRj9XTlPcKbuSJ5QhZ6KfomxAPagrssobR/DeVj4Pvo\nqBhWU9A4ilVfGXc+QH2HiW7AQtfZU+wRuMzp+/0JmXhGwzqYg6LnKQaeiBUy\numhlOkW+94Teba/oVZfVtZI7EbzcfVTNMFTOVtSqCH9f8s/cBQQcu4REcN7n\nKCgQ52KqIUJ7Feg/DZTqMLa+z2keykBX4U2Htp0NA8c8uZ8ZeuewlGkXom/T\ntVogMR8KpuhLrZREiD46o3b5r61Tu+NGnQJv0Sk2wWEyGzmP0jYS165dm/QA\n9zLC74/thpIvEsUd5zP7efo+Z4/WGvunhbnb9iWHXJUbNoMnKeJ8NZ7qtE7e\nU6FmdYC/NPCRUf47QI4Q3lSm+9on9dlFYEjnOR7KgCsNM/eLyU7qYUyO8YCa\ntkhsl94qWVxUMg8RmSGlva8PChoiVz1PrhCL5+ouT2Ag91gCT1BeDSTUZAeg\nwO3rRsbhJufRLx7uRCVGZ21WJXS+X0aIlrlYBVlMWd8DoOg6ZzLSIYI3tZNg\nxymY\r\n=vTeB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f792d7407b67d6bbf6c2522755d27dc83fe48edb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T00:49:49.959Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.1","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.25","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.8-renovate-internal-patch-f792d7407b67d6bbf6c2522755d27dc83fe48edb_1625705655887_0.7772475398553866","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.8":{"name":"@balena/jellyfish-test-harness","version":"6.0.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41f14a39bfa8f26abcafcf2402e0214be281c3bf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.8.tgz","fileCount":24,"integrity":"sha512-67VH4qJEHnFYr6MU7VFR/lIr1tTeLLe9AFZqfUFtxTzGHtYQQxE9rIwDW825pgaxeP7Iww381HWoc+48vdcGWw==","signatures":[{"sig":"MEYCIQDintjpdU3yjV5FShd8+PkIeHbuJvS+BlHHI3+F+S28xAIhAInkrxCYJkP54ssD4Gal1k6SKGGt/FTh8mxHANiAxdVf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127434,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5k2NCRA9TVsSAnZWagAAAkkP/1bqYBQYjaIHxte7qKoK\nEBgNB8pL5p9COS0y1dEI4vS2ndtsXa5g3RoUVczzDK44eTfvC26/jMpJoSsX\nIyuN7a3F1UIqeFLQ/m0RRAik3sdc4IqIGMZL2sFqc6k83ewplyIBZcCgmO+m\nlCZiOzowI5qwsceDCjFCBIB8geJOBrc86JqlUouTKuSAkygdxkCUDFiFDQoC\n6GB+k4JytomENbnIxYXHQ6Do8rilLrJZ+WXDZmw6TpyEJZ0AmP3gW42oHPiZ\npvSGeF3F11NJ/5A0KEvwy9zuUYfJzN7EFo18N61YzY+IqAeQ0W7TComv2uM7\nMg+bm7VfxE13necHB6+gIZyfREcA0aXnH/Pan+wh/bRAbUflNJZ2pGM+0/gi\nnW/YeHE6Fk8faRNey6UWjx59kZ29oHZWkW/iUiRss4RMX6OlelExl+IY/ioV\ncCixg11wxx+U6acPH8Dz0l3CxMmtdv/hwV7OMy5InMRhW/joWvRCRF7l36+/\nuQ/y+yPnkm/eAE/hXV7ugNql8wcGEX+BwmaFQPK/14As3szRDbw6N55jdaLB\nCpKzoCkDzvFFpo5s6N+UZ8VgK97Cnsd6F1abKm4oRvpBGEFLOala1J8kCMJl\nFxQ0+5higNaOkdt/6DAmgNe5fNtJo3B1SGrCiiWIBzKTWaEcxAkN2s6w+r93\n7Vkg\r\n=VQwx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"28c30a0ca2d7085985b8f54a32a752ffd7678bec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T00:56:02.407Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.1","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.25","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.8_1625705869412_0.635613931973567","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.9-renovate-internal-patch-7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6":{"name":"@balena/jellyfish-test-harness","version":"6.0.9-renovate-internal-patch-7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.9-renovate-internal-patch-7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bcfb857d9da6dc0200e76cc7f5546a9c58558a09","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.9-renovate-internal-patch-7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6.tgz","fileCount":24,"integrity":"sha512-VuZGPlEQPmCPzqwv0ikR/RzHpdG1Rljys60oSyM+32dpTDE5r5ayG8zj3oQlZ1g8iI1TS0/bBQA+kEBN9XSdaQ==","signatures":[{"sig":"MEUCIEpLlJ39aTvy7OIQ/CnrBVagFrEyeMBNgfvQOZqJwZICAiEA7ocP0QYaIFcfUSvsjQYbhFnYKtgKFTkNPQCQEtVVrCY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127604,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5uQ5CRA9TVsSAnZWagAA2IwP/R3hzSw1lrjVe2lS8O3K\n1YpGDHFHHDkCCqigaMRTx+noV90HlsXzTuiK9mxvyXZEj3+PeMVyUVkIlule\nygH9BPC9eSxaauCFjJgDANtvXnxHxpL9cfaDCwS9ml7YJqzj7n0aUJnMbW8S\nlT2OFynyyyxE9FGyjXsWr6epDumH+An2FvBG/SBMcphU0tRjLHq3pEzXJty1\nGM0pUDGXktYkkSS3qEVfrYRWD+gZBib2vECUd7odn11XFwuRVHndF54xiyvT\nzcEobDJYueAMQTk5k3RGvk7RUOJgbO4YLraHxd5VCvEjVY1NE8e/v5k0JvwN\n0LZM7A4JNfRhDew9KxIJdQzuqKTja9d0sHlpqecPDmHLnX35EWr2ZBghiUEc\ncf8zzP0V8+gRmPN6pJgvR12piRzjmyocjCuLCxEg2Kuq7kddTxs08LlnRalW\nXCZ8t2Ad6cX6zNUU/Li/BW/MatsZSp8wlp0FGepeXSm78zYdyUqQ1VwJjXd1\nBaRssb5eUnzZn0hj0ltE+AEKlrpXGzke/0uygtAIB/vYY7KnEGLfKoMOHZlT\nUTWMEkUTrMERkrCh7zajAOd2yg7PAf2qnBB6bNtGwCaH4lUwlBOhY3oXD0FY\nfmZCyHULYx5WeyYYyMnYa1qPXH61usBtx2GnRmKLXeBxAU7gnvkQIFGOlicX\nuHg6\r\n=Tafl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T11:38:12.361Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.1","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.9-renovate-internal-patch-7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6_1625744440784_0.5223754801482445","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.9":{"name":"@balena/jellyfish-test-harness","version":"6.0.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff00456521e206e06f283fdc32660abf6aeac33e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.9.tgz","fileCount":24,"integrity":"sha512-8TYDqx1iRC1V+rMP4kWmkAM2R+eHDW/nFRM34zE7mZlWjqfI54SRSUtqL5Z1yyTdCCSzr7l5YIABduyg7/9rEQ==","signatures":[{"sig":"MEQCIFGsi7oRQRSQ2gsKi+AbVlWLSgywmFkdOOg8gxkh47IwAiAump7ZjurxeKDynAMVUYphoqZ+pqiSa0Fu9YEF3Sq24Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127539,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5uUWCRA9TVsSAnZWagAAYAsQAJmIAm38btJV+RXggUPW\njhikSxy1UONShJFYgrE9KE9praOBz6mm1pr3e460iFF+XKfbAlK9OFD67vuC\nyjfe0NJyhpkuV/RIwamDYyBosdnPfsygsJUWyC5CfNc8XR7WJEf5HUfXIn/h\nupV0YSyfNtf4OL1hWrc3IZk4Ptoug0d4PZXaS/k6xDThvZ6h2sLj53+4rtDH\n3aENvV+r1HWWtOBM/wV/CzqJSZk+XbkHUTrZcsBcmmszH5EbUgZsWx/FDQ75\nMELZUZb1oUpNPug9ayUyTvy9r9grRckq0yZ0J/nxk6avrf+nxHAKHEaYLqjm\nI39OLmYai+w3kmNXt7l0D7ms+yfL3f2C07EWAHfXIp15di8UnLuwGyZtwV5v\nFu8BIJgFUMEXE0KBSX6FgpNYPz409Iq/WmriJEN4ERc7os8nZh3ezSvRsV9B\nmqnQr0XC2wwAWRoR7WkBFScbGbNoWTh+VIdd0i9V5Qi0g/0igXhs5B9DGzPR\nn6hrSUjv16k+BWBqu54f3mYn4Uy75kVKR7HGK7QVoQerrXWJeVyGTfALVYjY\nt3YTDMHwTM9zSl/YHmoHaahGFoZ7Fx6lGZizEhGa/7VVZ2XC8T72b3bovAwt\n9Au3aVyskt/PEhTLWCqOhxj8GvSWDR/MoLLaK0NG3MW+pwJpSO0stfkbvNWH\n2UO0\r\n=Xcml\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b984e8aca49fbb8c3742b7b4ff3b64e2d0f1fccc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T11:42:12.805Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.1","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.9_1625744661738_0.5006736759921373","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.10-renovate-internal-patch-be04a8ab05e96d24ccbe75506fc4b473755f12ca":{"name":"@balena/jellyfish-test-harness","version":"6.0.10-renovate-internal-patch-be04a8ab05e96d24ccbe75506fc4b473755f12ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.10-renovate-internal-patch-be04a8ab05e96d24ccbe75506fc4b473755f12ca","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce329887a8ef3e8367d66fabf4e12436c401e00f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.10-renovate-internal-patch-be04a8ab05e96d24ccbe75506fc4b473755f12ca.tgz","fileCount":24,"integrity":"sha512-rTlj+eixU0mOCDOP78O6cyuNPb05E/wm2lq4iFY2X+VVN4uMD8UlvPGAsB1BrEjpkMLRBrfKjztwG8j1nnCNrA==","signatures":[{"sig":"MEUCIDM8/GIYovVg73hCdpC980Az323pBPhOKfJXH+gmjbKSAiEAzQn7ySvt4X4pssmQb4rfFKKdHV1eDaCrQo4oXaZ1d7A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127708,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5vWZCRA9TVsSAnZWagAAws0P/0FkE8gYY662t3BjMuk1\n3g2spm1rVhL6bG52RbOx38aS0rC9VZXzNAVKrjCev+t2Z+tp2eV3l4BjsWUK\ndZGnDGWJ0Oi+u6ioAwbgIpapz974mZQZARwVFfhD3SFGoAIVicbNrXmPOQAG\njvodHE6WBr1wir9RWpHiVRLxAXR9vsRpqd1ApMUQXV+VWmGzZc2ygCTOjP4d\nbBU+JgnZoRjc1Y5TgNG4OqIaKHKiHGzuoTJ+5cKvCURuY5RC7hm9XUnSGPdF\njv4B2DrgZv28EF15Ox2kbAUEur+c2OYYPCIcACxwOU1V4xrLGUQB9U2If0gO\ndNq654EuTE3M6EdTfPTALVOP0i5Fm7w0lho4PrrH8RrGqzb+ia6IB0HBgPQX\nI9MWkM/EmEEdbliJmXjMLyI8LGqPlFDEHr/GPzPQB9E1UQMyj5/5oKyXGPaW\n1ertbL9StpGU9sw7b+RuFKgu7KL5UHCpqucO9rBuT/SxhCSZUFxWYY/YWTv+\nHyq3jY1mbZqG9jUL4J9Tq6z3gMeStUxw3FI8CglhlDuhs+eday+NGun+MOgW\nr6IK9/5KrjjXiZfjrQBI40lrSMJdcoYVw9qnkZymK4XJB5vxinZ+VFhGkecl\nRDxLv7xtZpLX1BJtnJr4gU5clvyPP7g4K35rfe+Xhkkgta8OFBQhy6se4l9d\n9sSf\r\n=bY13\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"be04a8ab05e96d24ccbe75506fc4b473755f12ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T12:52:11.676Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.2","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.10-renovate-internal-patch-be04a8ab05e96d24ccbe75506fc4b473755f12ca_1625748888791_0.1120324977890903","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.10":{"name":"@balena/jellyfish-test-harness","version":"6.0.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"18a9313a0212706a6cd5e075574d5462611c3fec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.10.tgz","fileCount":24,"integrity":"sha512-NPNRKeuFeCZrMxtiFW7QtlcLWqZpEzA5rPziYHLjVsS9CaaSPpuJtxgXi1P/7hKN92emEz5a78gd1cgjZcQADg==","signatures":[{"sig":"MEYCIQCQ/RpctggZE033OEuthjmId2iG/ABcVusnBsw6k0dJagIhANFaCHa0DpkHhdzzrkGDbxk0m8AViWQm6BM/q3BNmkxK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127643,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5vZRCRA9TVsSAnZWagAARxoP/3B3WzFDVKyUY+gRXQsv\nzwjnZMA4QQHoocozh7EBYxVqa4GZdhulCE3EFQshPBKI8SNXQif9YiIj6eZ6\nPpU2RiTnPM9cVd5b+VWMMOYlaIoYvhcODCR6a8SiE3xNwYQphZ5Q1Wp0/B8L\nNNf9I0WmaUeiUvTVNX2JvyeaIwJXFfPM/x/YsfWh9BDl+nH+8pJgfmAdsrJP\nY1w9tnS0L+zQft+Bywawr4LW4VjlWJJq0tFVwkd8mlPe/FA217144DOzyZuP\n68Dnks+tEI9eMKfcKra3agjHEFyk9JDpUjrlRQ3HHXPxW19XZNJFUTpHHKaz\nrMWv//Y8ySozjfP7E6i/T9g98Ep1FhPwXBgTdyvSR/w2InnzUf3J5aPhzV5N\nMuRbdibC0xGk3OesDAkYli+pUBCK0AMan3xFkIsVUKxovTesVhjH9n2nZcoJ\nmxEkK30yZx2nagK6UVlA3CAjJwOnIBMvd6RL9V+BuMrCM8gtZ3UPv9VCq/Kz\nR3zM9WtYdUXJHEqbwq8PzIH1y722uItdep95fJYJW7Nd53tNPwzFImRi4Z/A\n7WFtf4jnRZtaJaeZSVhsWSqcLKmhJgSI0UK/E7LOJt9ml79QvbhOtZyUq4Sv\nqxZJBXfGD/HjrifvkCDkssLqHdV02BTmleY9xVvlMJYhRnacV6+6d1JJ5zGf\n35EY\r\n=hx1j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7262e1b532276793cb3cf2ef4e6fc92d193b418","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T12:55:56.659Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.2","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.10_1625749073150_0.5757894058849544","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.11-renovate-internal-patch-74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9":{"name":"@balena/jellyfish-test-harness","version":"6.0.11-renovate-internal-patch-74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.11-renovate-internal-patch-74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae39c29f6e256903b271855927d3fca6e712bd75","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.11-renovate-internal-patch-74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9.tgz","fileCount":24,"integrity":"sha512-uqn4h5J+aWZJSI0NdQjNhhLhcg04eXdRshTfYO7tDnihhl8/mWn4oZF/TxpXaL0IW3l7IEFxAjcZIcBmkEf4Yg==","signatures":[{"sig":"MEUCIDT6QPPO5dTdN/VJrg0dw9QcKXz51UWKRzxEr3dXksYAAiEAipiWLLPWbblzZqfT42QlMzXu2vgxjU8cj0i0+pw3/WI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5xu+CRA9TVsSAnZWagAAEmEP/jRilCwDeeBnWJ03b3kB\nfmk286h2GtagSjz7Wo/ADZq2FOM+AVPDtrnOEWK9AJPlOKG7TMy/0XNFWUPC\nOffKduQyv2r+YOuec4QqITzUZGo2HeYHxALFJhyIONMZUUdJ+3XuSUsM7m0N\n2YGKTH4E1UUe0mdORPAb5VdlGxM7u1iHC3NNEi3/r2oYf/DCjXMh/1x5tR5Y\nu7G2p5xqv/zrg8+IqS9VCof0t+hxCDmConoEsadlhvoniNzFmPmLH8VlKcaH\nrrm7g56jQMFXV7POnbLBDT4/KmrqyLjZZcj2TXz0dkGTV4OrvThiD9VHQMDc\n8PN6EkOV6yrkBVmchlTXH6PNn8UcFcXHN8oqImFqvtpsRBCN6m0wn20Sxua8\n1Fu/2JVFi70At6rf6UbYeqoIQLkjncFlFjemabuIylNlGnMuhVZH6X1GwYBy\nR5uYjf9F9bOoK1sePcciqNVUFtXbhzZ9Pwp/RJGGS7/zkblbQJi/TldJuZ/3\nCvOIZ909E7Rhcay+ChfV+wWPcCs/zLsNJu6zsUKjlKY2m4/N6FLSNCi//2kx\nzOOmXrhmUkfqY86VZyMz3GGzBorrLfcWiyIqqILDZ8jcpomhX2et4cUnuB+p\nY54QaCkKFnALAF1Ixe+Q+ET4l7ObPbfhxnedal3Zpvdx9q/OPsSzEPmSv4ir\nsa4y\r\n=UTiK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T15:34:13.166Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.3","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.11-renovate-internal-patch-74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9_1625758653691_0.4593794133090163","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.11":{"name":"@balena/jellyfish-test-harness","version":"6.0.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2fbe3f4c6d9a75d3d061317812279e2e574814fc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.11.tgz","fileCount":24,"integrity":"sha512-hhRkYofIWL/oWDut1v2UwLddSvrDAeNu4Ctpvxj4La+M17IkPiwCE+Ttu5ZeDPNGTfAbwk9IdEK+aLXt7jRP/Q==","signatures":[{"sig":"MEUCIQCDsobMnqhqBzi8kQyRpgsUOotcWmMI8JzKAUDzEwCAYgIgePW8hmec6z5eFROeqXnw8CzI0VYV6N9zRNqiJdwah9M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg5xySCRA9TVsSAnZWagAAUiAP/0L0fschKOaayvKSkUtn\nv6ne+HsOeJuVWPdiWtTG801pR+S2PRtVSUAnuNpi8VrOrhADJ1FsDjSmR8ge\nqZ/x9UNzsvwRDmvtEITf1Yl1ISszEaL/deMb8g24pPmf0s+wIhRAAxYb5gVT\ngXrPXqGFyeHvUqguVa6ARZOFxuE9Go/+qAExtJarkHm7RONrkPV3D7wp2q+F\nyqXE5T4YjKfbexT8OXnM561xFfj3fo70jAjOjN5//A2nXZvAfD7NeJkZiaM3\nF4ZkhvUwkcvKkn0IvCE392DViu6DVW6zK5IEka3oEl8i5u0Vtz2IoUYahNeP\nESnyi4ZEkV21rk1N5WyKfXx7fNrDvzvuErXLswEaeiRc1UpyaJmbsop60fnN\nBiJBOYiS1JYYNIVSp2aFf2//80NlqDKVEOa+5rjE7rNHw9vUvn/NzCzEhD8S\nh9RZYcCOm2ODg9KQmxPHoQa6OB5O7jL0Yto8vgXMeVI405qokmuhn3JS7NcU\nCKP0s+9/gnxo2Mm4w3tCOLh1gTMk7hb32GkuGoy6ZI3wm6kIHckIsMWGUOdZ\nySIwTQoJooXN3oWegKeazP4zxfFIVok1ioP64htk55XqE9fwMFhYLy4edCn0\nNwGKwT0sVQJKpXD9w7zVhlcA/SAUnfk4c4yJAM1vs+Pm5XNQIjtOxIhTDOSH\nPt0J\r\n=OtaB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da2b7d9ea09af60e20b76b25b42bb7cc3235f684","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-08T15:39:21.609Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.3","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.3"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.11_1625758866159_0.7489974298092092","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.12-renovate-internal-patch-925edfe6e4c1044057ca347d961394811b2bc225":{"name":"@balena/jellyfish-test-harness","version":"6.0.12-renovate-internal-patch-925edfe6e4c1044057ca347d961394811b2bc225","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.12-renovate-internal-patch-925edfe6e4c1044057ca347d961394811b2bc225","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"204a71decc97647cb40301ca3fed4d95dc2f3b6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.12-renovate-internal-patch-925edfe6e4c1044057ca347d961394811b2bc225.tgz","fileCount":24,"integrity":"sha512-liaT85z2oqG2obMpLx+BWml2JeYRuOBGg3+txq3i/+vJ9m8O6FQqjw9C5zMEDfftWqjsRM1+2XqajtmzdgbKag==","signatures":[{"sig":"MEQCIBL0L1tL3Mt3RW4OE33r4MJalaz7rtfRAmDvyPkIoxXFAiAN1SQ5owj6IM3+9pdwBaHOlrznQNzxPBelpMR/advXUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg56dkCRA9TVsSAnZWagAAA3QQAJ9Wr4E+PWWPsxTRIR0k\nH7h6TiJUC1MEq56VXfOtrYnoWCi/oefdpEW9uKaTBZ+tibqq5HCKMHC+6lqt\nhimo2XpA04WYBgS1D233MxcP+6nYIuhJnRcwFPvoiLfipyKD03KkiN/Ocaaz\nEWpbu4IhvyzMcSxWszhYEXo1KrJ8UraCp6u122z5F3fO1K5DDJLv/XGoJn+e\nhXLYiXN5Ci+e3ar8JDC1ORAklPvBRJ17IObtI0E97mRaoba5lFJf2gPwHbhA\nHzKeGEXjN91hqNh7/xUJc5vL3EaiUgRZkXC0K435oS5J5lBNFiIcnVlXGeL0\n5zKC/qh6RnsQA44JQapk3ZOMUJ2GF3xujh2G4uw+JRzd613wC/sIAdRS71TL\nEO1Yh78ZtzpX3LOJRlqn+wP7I2sRHs3IH6A/sYJKAHyHeBdOSPge3AGd1e88\nKm3lc3hjiGZDdyLXGQADExAFR8Lr+fPMBpnDik2U4IcgosQf3YfzVDyRIagK\nmk6xBG1yoSzW2BwdhSgczI8IrCw/8kW7ifPFu1CE/pFhowMquUOQv2sglqXC\nb4Zky/6phE5HN96HaVpMZ7/F1hFJswSCpWk+tvkR+XQKqNfMcSQLXl0RjuCi\naERd+QNI282/X/deFaK+gekGkdBGzQt5GTiDKMzHmpk1gYva9MLaDuSWZMaB\nRqL+\r\n=CcX0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"925edfe6e4c1044057ca347d961394811b2bc225","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-09T01:29:51.608Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.3","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.12-renovate-internal-patch-925edfe6e4c1044057ca347d961394811b2bc225_1625794403895_0.3828478927512502","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.12":{"name":"@balena/jellyfish-test-harness","version":"6.0.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"080fc99615c9b85aaa5995d1c0659f1889d266eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.12.tgz","fileCount":24,"integrity":"sha512-ZKUrHRXvOZdmy6fLwrJdyf8HUpF2kfVgzlHXjqZ8kEOWLcqHbcLYM+dCc4g8YvILP6NmJaXoQuCCYcGcOZh18g==","signatures":[{"sig":"MEUCIQDwqSQyXnhdRqbKLwh1XuWtnulwkVclBLWZBW12A4SJ7wIgeldVk0oYKDUI3y7lpABiI6ETZaMhbuwMKKYxFiJnNbc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg56hSCRA9TVsSAnZWagAAOTkP/RshX8Jw9z4Xmu5mk4up\nOyCXptVZXYUk6DtlDulHXS/snTEoOYcXD7zQudVcPUC7XVld2kFlUD0Tel14\nBlsRxp0J5fB3kYp+boYpdv/rsuFFVZtcfZmbKVsz22nAQBqH5l0hjljm9F5f\nKBJQomQbZkv7aBmT3dpnGUv54pQNK/uHs9UsWPfVWmfOEKDrTif0r/eQMisT\n6TDghAhIw5FMvhCwYhvbc36m/l1sO4yshsA3eGiukAZVikIyDeQ030diG+oA\ngy4GcYQ+eqQ+B1VJSPBkiMXRfcYQdvXX/M1kE/kQgEWUPjdlFI6F1RA6awZa\n88ryYv1ipUC4TUd0BVnHq5qL9IpE7jA36kLAvv7DhYbtz6X3gT7mlDydmnES\npGpO7VW+f6g58BdnW4UZQES5UgSlPmqst+j6rmIbXSMVfYRkvZjf163w0grD\nLlNezpJC6nkA8N8ccYyP8wrlOELsWBCfbmib7oPxuEWeILNn1f0wnV2vaY4i\n+dLuv+cd9Wq4mCnHhZ5hylz/3m/oiSPn75bpqGE95fKqLGFjE0dsbEXCFzZ7\nIoQF7lNRsRYdAXJfC+5icMDgXWMwU/WMzoUP+99CdvKjyu7gV3jEC0+aMnMY\nsjvft7ybw98FVJyWZ4MHiJ5xiekaYhxh+VKN6HtvrujxZCNO8xhRX3GEptK5\nqixb\r\n=ad0h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b12fafcadf4e925e998624f3648894341498eae9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-09T01:35:24.088Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.3","@balena/jellyfish-sync":"^6.0.281","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.11","@balena/jellyfish-plugin-base":"^2.1.186"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.5","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.12_1625794641869_0.44668775091953083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.13-renovate-internal-patch-6104537f4d45dea9e4c2cc940b80edbbe4e1139d":{"name":"@balena/jellyfish-test-harness","version":"6.0.13-renovate-internal-patch-6104537f4d45dea9e4c2cc940b80edbbe4e1139d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.13-renovate-internal-patch-6104537f4d45dea9e4c2cc940b80edbbe4e1139d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"99715b908d1358258a33743e4c0d738ff24f3602","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.13-renovate-internal-patch-6104537f4d45dea9e4c2cc940b80edbbe4e1139d.tgz","fileCount":24,"integrity":"sha512-G8mQQ0MpiKDfaN3mC3lJjkCJeVznM2pw7zVy/g71pYk/UGMcYmL4Nx1eqFx1eujzgER2jyPnywoWbLTVYzGr1g==","signatures":[{"sig":"MEUCIH3qgBorPR1xzZFWGsXBpCrlWW+YnoKLd2ZQ0LNKaRlNAiEAxsvBHGKD8llr/ZFW+SUp9vjFMOn810BHpdytb620Lbk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127990,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg571eCRA9TVsSAnZWagAA4H0P/j2H3t+paQUP5L/VVBmp\nmT4uNF3ojO9JSrwZe0wrtxIn8wA29ZjNqjempGee+5zKy65b5aqCAO/oS/zD\nrqOhSZn1hTMdWWBSfvMe/qAmmbBArn91szfsDk6EvLgFYAYjOilHKHyOQuUR\nLS7A2wjVevoSkJUlq2puxkxwKMv0K0S+o5Mnso9hykZfU2A/pJq4QUwkMjdU\n1hGQJm8MafEbP3PDt6wDxdJB5hDJyTNxAzkXZoPGEjkZMuJi/zE9rkb1hGOo\nM4JFWQKqYkdnNpvZ/HtmTgx9JvAcc5J58Sq8SYUd+vsYJSSAIxlniozPTwfl\nzigxDfEvcgJMaRqgatmHcyG9sXCYm3lRfRtY/o1L66ikoBm/QPDXJOUzJHEr\nezfXswW30xhhM7t+CsE3XAFme6y90eRPyya0QpqNPE4WMeSTfrdSQVNETdp1\nMh4h7NXnoo2Ur+HrP6BRjXp27y3dcKc0dY22VT80W+aoK0981MnqyS2pR3Sl\nxiaGZc++JS97RrfXTSvs/8SY0eIDRPRw0JmfEpHnLlfrnTJ7jmViWP3nMgdp\n2ZzZEzBiruGIFqHE2mTBFPIs7SZD4jhaI31jnLLwptFsCGh5/oXVX31SSrMz\n26FWYMKr+6a8SfrYMe/rZ4Q3QjKIObud4QFiQ3bDQ2SwmrQkKjUq7DwH8c8s\nyQXi\r\n=PF7t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6104537f4d45dea9e4c2cc940b80edbbe4e1139d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-09T03:04:52.927Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.4","@balena/jellyfish-sync":"^6.0.282","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.12","@balena/jellyfish-plugin-base":"^2.1.187"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.6","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.13-renovate-internal-patch-6104537f4d45dea9e4c2cc940b80edbbe4e1139d_1625800030213_0.31579122111137914","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.13":{"name":"@balena/jellyfish-test-harness","version":"6.0.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bb01d558bdae72077c07c712daa73ae2f7e052d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.13.tgz","fileCount":24,"integrity":"sha512-IPdJKwJf+Xij0QFe5Pg8x7zHQN0dB4PbRIDiArukDc09x1oUFiTJOQi/YsGNn2UeUb5AwuDogufrDESj6QaG8Q==","signatures":[{"sig":"MEQCIAIchOBnHLlDtQMUjmoMBpF/0rnSrh8njb5Vn9Zx9yAKAiAuCObOaoBuDXIev+i6wBSUL/A3IrPVbRw1J3/j64tK1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":127925,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg575jCRA9TVsSAnZWagAAZucP/3dmhuI5+VrDjctkstqS\npjuEJCQ/t5DlBbPujn5FOkSP5Te3AnXeiguTTGvLKmReZjljCWxB04ySqlEF\n3gHh494eB5Ikg5GXH3VlY9cyAz1nxTEayjykEizPIDGjm63Lj39wMLPsePjM\nxf/cidCpfj0Z5kgDuPQtxNH+/3+djAsJr3kWOB6aFUrHqGmzauOIxRe4F9kr\nBMzQuJjffAlLPj3FO1fJrHNkrMp2XgAHd1ElRC7PtuP4qJT3nuzjuAmZoXpc\nUtLaopCQqGjyQL1pAPHcsHtnYTjIS61RLwVHiY1bDKk1ffvC6wCdJ+bN4Yel\nw+dA+ckOFOqk8T0F9aBhYnW/uLGcUhfJl8mKU0P9Mrt5Qv4IK4Cn5ozxbyZp\nSjTqPax1cWWrWnuz0jT4LhvJc03eYSofMfhP+XLRdXFIuqXRFsB2Ma6GP1fX\nXWvoKf428xTsow1ef/nEuvlThn3F9fXnQahF/5rImyctD2Wgz3m5+IXtkBBD\nnIrF1pDnDlC/WapSqmRL6gJ68Cdas6razYF+XFkHg13qf+Isyeg/L2bIv/pR\nZsLDmLFx1z8ENaM/N/6ew+7iexghaentJK7JSbfr175o49udKy4m4IveuOuZ\nAMSu/Xrb1wcRnUsqXZrMo9dJlkOiUIfbvq2vfj0jvL9f8FAPPBHfy+G45GGE\nZC+g\r\n=sWsX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ff9cef633a039814722af1ac08d8df182ccceb6e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-09T03:08:27.322Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.4","@balena/jellyfish-sync":"^6.0.282","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.26","@balena/jellyfish-environment":"^4.3.12","@balena/jellyfish-plugin-base":"^2.1.187"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.6","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.13_1625800290986_0.08798669625344968","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.14-renovate-internal-patch-808d65406926bc265a265412f4948381026512e0":{"name":"@balena/jellyfish-test-harness","version":"6.0.14-renovate-internal-patch-808d65406926bc265a265412f4948381026512e0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.14-renovate-internal-patch-808d65406926bc265a265412f4948381026512e0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d5f9776e891d06b5fc056c64ac8ed82b2e8cf652","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.14-renovate-internal-patch-808d65406926bc265a265412f4948381026512e0.tgz","fileCount":24,"integrity":"sha512-cMCs6ktHGdAq57mHj1N+a+u65sFpKDYQ47NY/om9Sns6QVIEF3yKAQ92HEZrVtwWbUDXsyLIbvDkJ/rbVh77Zg==","signatures":[{"sig":"MEQCIEde8Fq353EySctSECfW4L1STcVsExi5iuvBRRNCsDF2AiB3MNRcw0E4isMGYN6ZKMN1iNpjMSP+FhJpslalfl7i+Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128096,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg58pJCRA9TVsSAnZWagAAN3cP/RmYnysheuuMu20cbARf\nCeGphR9zrEAdHrXPfgNlvhSk2Qn+Akh4LV3BtouSGMI7mZcRge/9VZlM/5Ns\nUd9j4epkLDhKUSefho0CxwVALOBVC3p8zS4dH3PvCXxgLEARDzpj4FBordDu\n7vU37Vb9X9ieO7VdeKJcNMRJRuYoaY+vsIFCSvPQ/a0IWz/L3vqUf9K0IUKn\nbE722UWE5EPyu2YApnLu1T722wD4KqHkumhwraFg3ypehxseGKmyNXiFMo6f\n6yEc3Qq0az67OBOJE51gdYIvep7bJHy6zfg5fctTTkeD0/74atlTmjngpdOT\ngaGs9Au65Ntn5sUme7DJDXiKMWoARN80OSvWl2VsNUb7JEHgMQDnZaJpPcC6\nl7uTElZeTOqA8rI00ra10FH5ywjWg8b2eXTQimvlUsvOyUtbynF5gNL/qdmi\noeFvASyZ5ORz222LiNQr2z9KGWo6zhoiuYJw6Nr+zQwexpDjf8sGyfmpyl27\n6kjpjlsTMFdK5mG1pjtTMH65j4fZSIfasFhsySNn4QEfljK6eNP/T4MV//zF\nXgq4PHcjF189LF9wWmIO7g8dYvySPoDWVYXTjEyJ3OnbhE+oNvAI5rftbExd\nAGIzw/yNKZ6zQuDuOUkqFdBGO5sBAcJJP7lVrLi4+uM1wD36yQYtv6015H7R\nYnev\r\n=AS82\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"808d65406926bc265a265412f4948381026512e0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-09T03:58:39.173Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.4","@balena/jellyfish-sync":"^6.0.282","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.27","@balena/jellyfish-environment":"^4.3.12","@balena/jellyfish-plugin-base":"^2.1.187"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.6","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.14-renovate-internal-patch-808d65406926bc265a265412f4948381026512e0_1625803337387_0.9130168013225437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.14":{"name":"@balena/jellyfish-test-harness","version":"6.0.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e99b3f40daab1c9b81a814938ed1b326cacdb26b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.14.tgz","fileCount":24,"integrity":"sha512-/Lkqg4ytpLdgMrTDMDcbD7EWO/hlzS3h2vQ9qZdQbrx2QpVIuvQS1rn6qkWDIqUssjMoAqWzuPRouSRKivt+SA==","signatures":[{"sig":"MEUCIQDZVLadSP1cJAkHX2Jv+A1gGIaGCVOhaxcxCMzcWuQ5fQIgTqBBotTWP5moYPC6KjIA6N8sZKuG8G/KMuHptgF7OWo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128031,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg58sTCRA9TVsSAnZWagAAxSEQAJraD3M6mqV7pKaDugdg\nx6qGo2bLY0zK+at3f4lc7ptyGAwicBcc6WyvDhMdI6vUwahlfaDlqidgSAzv\nq8EMHmOfCM4X4NcDi07fHnsbpks/rC9kFxA+Lr5ACbUZJsACnHMILyxzfTOr\npVdS+oMPSjqyDZ/pIausL4ycV/sIEjdzcP1pETdQVbY8LQpj1H2T0QDIlruf\nvt79W5LuyG0Jb/MF41X1oOUsHG/Gjmj5WkBICeocXa1i+vmom2F06hWOwypj\nkD//53UGHYeicxpBFYNNC5Wu/lW87lNK9Pxz3/jWs6itjy8sRnQFC3JyTXcS\nVodZ1Wi+FFHJSzfiOA6lEQigogitKHrnPEqCNzIww0KrzPA9Uo7KZYv4dZd+\nb1sMvzbUEUHAUbAkoi0Ifpi5RP5rZWCF8pZPF9TJHwu/HCeUYadS6Km+Z+aM\ntmPvUK7jLt8PieYzgd8b+eYlDIg8878Y395NZVtmS7Cf8tocPDj4NnhnBAni\nleKOLR3QiMmJM7ALJSOuuJS8aqPoPK1YgqAPMV3Yod2v5ZV3qEQgZk8M7t+1\n5UsqlwuDkOWroHlIztXIpZ6L7AvKP6bAJOg+vCFD1znx2X4G0EBLCIOEzXEV\np1bnShNeEC0M3BSELcoJV1ffYUi2fMG49Fyn6DsGgARlVLIbL8Ob29sIGTi+\nstf/\r\n=Fybe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ae450269528a002823c206a690b064419a1c998f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-09T04:03:27.096Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.4","@balena/jellyfish-sync":"^6.0.282","@balena/jellyfish-queue":"^1.0.208","@balena/jellyfish-worker":"^7.0.27","@balena/jellyfish-environment":"^4.3.12","@balena/jellyfish-plugin-base":"^2.1.187"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.6","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.14_1625803539307_0.14545357533464154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.15-renovate-internal-patch-1cca333bfcf3d3d92ca542d87a2b01c02bafb099":{"name":"@balena/jellyfish-test-harness","version":"6.0.15-renovate-internal-patch-1cca333bfcf3d3d92ca542d87a2b01c02bafb099","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.15-renovate-internal-patch-1cca333bfcf3d3d92ca542d87a2b01c02bafb099","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1cd1df106f73ca8d69410217e74915ce3ea79890","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.15-renovate-internal-patch-1cca333bfcf3d3d92ca542d87a2b01c02bafb099.tgz","fileCount":24,"integrity":"sha512-O2lQl2WdOG6LrZtd1eWAZIt10Prvf0IrDkScoBF5ksyZL0iWgHBG3E27kni6KlBWE70paBx6Ofash1q8yLvEdw==","signatures":[{"sig":"MEYCIQD1w4BQc15ZRv4/kN536pSX7kJevycrJIDgc6LAIAf3LwIhALtxyUigPqosNhp/1i/yxJC3T8oULXalRe8Uy8wPi97W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6PXMCRA9TVsSAnZWagAA9X0P/iuO5sbZuTNG5NC6t2QK\n285wP0AoAI8ig3k3e3HguehrYxOnMub1SrQYfz1ogO+obT17CnBq9AZpCbtk\nZITUDTUs8ENYL3mg1dLp2tGD/ExbGJRQvWv7EDtNYOek6AXLcbUG21xiuVYD\n+lC0zlOfotlJH7Ju9Gi0G0UV03wZN5ppejc/SmHM7K17/LFRHGvRzkCy/XxP\nPDgGR8bAOW+4lPj0WoGn+oIoS3iGLamdd7Gi6hKwEWqV27g9h1UWN2srHlFL\niOYvAMeuwNcnEffEUM2eDlkSWXTNApDrM+128a/k37Ed+7jcnRDgnK8zqm5v\nY/IdN38KZieQ9rUf9kfnCjt872aGsI+HezFaBfy8KcPdq302O+oDhFy7piBp\n6KOPlX7teo0R+w1HjzvMmKxMjCh75G3OyO8AyWsnfN0+0155udsuL1avFieH\nGrIEE3RB7279WBpI0/69LYi8BK7HFZ2z+VK6Qex74sL6SVr2EjnR7ZiovAKt\npPX7tKypXmDIGFl6xceBZgu5uxyJ5CA14qIaLEJYbX03b/EHLwTr1HOkRO2W\njoD0RxD6Tro3z9UIr86pb5G0ZW5r/miaD6OfedbXHNTKPsTIs3zXkPy5zMY8\n4HRn3kyVfuDqH8i3BRAH0jZSvO+NSJojyUZZ1C7/mox/rDom8hrQYKhQyzzs\nHI3k\r\n=aO5v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1cca333bfcf3d3d92ca542d87a2b01c02bafb099","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T01:15:32.719Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.285","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.28","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.187"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.6","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.15-renovate-internal-patch-1cca333bfcf3d3d92ca542d87a2b01c02bafb099_1625880011876_0.39634136997601743","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.15-renovate-internal-patch-5f197d7158548b87d80bd6f8b0e59efd43dc7f7b":{"name":"@balena/jellyfish-test-harness","version":"6.0.15-renovate-internal-patch-5f197d7158548b87d80bd6f8b0e59efd43dc7f7b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.15-renovate-internal-patch-5f197d7158548b87d80bd6f8b0e59efd43dc7f7b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d56e50b5366a11678032257845d85d50f2073227","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.15-renovate-internal-patch-5f197d7158548b87d80bd6f8b0e59efd43dc7f7b.tgz","fileCount":24,"integrity":"sha512-6wink43dOtQRxCO4aVkbWNKYIvc2D01Yp0vsqGKQMUNC9RxDe86lYhu3djxCViuxRwN5njtyJGTxBEUMcoGJuQ==","signatures":[{"sig":"MEUCICoqQOXm1UrfmJh/PVqClUYBFpqR/62LjTjwi7juKrE8AiEAxoA0ZiKMB/rKG5lSavnWvKRcPl0+nkA8lJO9XYcBIfU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128170,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QN6CRA9TVsSAnZWagAANsEP/i1EboREwwcU3otGDWHw\n6MAKCW+70q1+5jwyrrSUSRM0sS0T8JvWyvAreWafplxgWenanvaLqLvSCSrh\nseMahSZBR3nJG7rDt/cRwU1Xs0Jt+uDa/K1alojaKT/yYvIp9Yv1v3lwnpPB\nfnb16+Nn97DDCeLVH0wqxjjQntbD4DEUJY6di0U6/3ye8MPjrK/IcAb/O/ft\nXpGWJ+vz3MOGTyLDOi8/ND5HbahOk29NhxZN6aHtqnDRvS+2vh9Y1baj9oGr\neUCghoLU+UHVLfTBey0cWMnxkZmUpd6eAtc7u49/Ns3N2sKKDp9iT5z1zylw\nnfGyc5xuq+pK5CEQIJ2slFZRVPGDqKJr9R20OYU5LTnfI4A39FcI0IoWuMzu\nUvB75KPJMYn4ygNues3Z/zqp+PezZ/sqemdLying5fWxHbqdaCwt9CZ1RSrL\njdxogIgzmLMRQW6UMkKhl68s/5O7wrsK5p/KJYhQ9CYsX0eLDheSp3+Ym31D\n+NqW1x+EnT1hUxmsBRunkZlXurAVrNQ4YuLYXk3HDRfZIFZbuySIN4YfMnYm\n83Uf7r5ATMqF5A/TnI6YG3kv8n42aqnDYUTtAHzO9PFpLNHFM6XKut2kGM2p\negb1gKsS02/rJLqb79tJp63GnGNOmedR+VYifWTnqAZv59tgOinKROWteg3Z\ne8FV\r\n=Fai+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5f197d7158548b87d80bd6f8b0e59efd43dc7f7b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:15:12.288Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.28","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.15-renovate-internal-patch-5f197d7158548b87d80bd6f8b0e59efd43dc7f7b_1625883513589_0.8332186089817961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.15":{"name":"@balena/jellyfish-test-harness","version":"6.0.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74bea834afccd1c9da2aae5ef4d358a2ed29fd8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.15.tgz","fileCount":24,"integrity":"sha512-nIvE9rrW4j2Lk6OaYorKWsg+cI54fqzxnkFTHf2iu2B3SRRIY6iV53XGdRzuzMf9DaJSydePFBGH4zTsbRKvJA==","signatures":[{"sig":"MEQCIBaD5cV5SihZQELnOckvHTUeyzPZ9T9gs/V4w/33PZ6zAiA3iQKS9YvWdV85dE9uZnfT4fmiKZXaLkAj2ZEwGsluqA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128105,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QRfCRA9TVsSAnZWagAAhhMP/2KPJqaalxiwqGvw125w\nZ8kh2SBO/ZwoSEO8rdqiwWTbtULS5rQbQCXJLyy/4LtVA2yJB528FpKVwl+4\naIbMGMMpIkof3oBGxBE2Dw3hYeByaZJABKoHD6WO/iE5oulw14mlBQM9duaV\nYzieO2GAEy/o+PHdjC8Za+EK03zznHmjEW0TWsKYQAp0IleElo5K5f4sJjQs\nkiw6QdiN7QOj9oROkCafhyLnP+D3qawoo41oatVMjtSbGlEBQZXkA7eupckk\nZU51GETTMpvwHKFjx2DLyZNz3sr3+fW5Ykfd5y1bKkhVVtY+nYi04w0ZTepZ\nZAkZiQOk5MijDvrhoIbRCILsHjnfkXGFUe9NXbP7qn8JizpMmeZ3E0ARerUB\n7gg4fx0BY+1sg3FRTr2nRypYfZX/diQwRfpAPzJAuqoni08GN04iq7D6LXmO\n2u9YFF8oxCzBxK32QvqT1E+K/fQKmP5Wf7BdETH4mKk6+JUFmM+zkye0Tpb4\nXUF9Uc/YpIcAW61vXPpOo8C8zzCLS7AHhUd1pAMtrzXFXgNqFkMXUh0sSxeC\nhCxnNqgHYw8Y3g749tnwgoJqSHx9BUYKFGUdxVctVMWcTtH+D1Vv3NEMn6kn\nUTH29x/cHHVFy37BNHjmsTyRFBsV0c5WqU/MDrHnXUowTlkfHDCVqa8Pqu1o\nfJ7k\r\n=noa7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1bacff0cea8eb0d46e2d3964760bd39938f805bb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:20:07.050Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.28","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.15_1625883742724_0.6991595194591129","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.16-renovate-external-non-major-e6fff70c556fc066dbeaca4f34d2d75abb9ba372":{"name":"@balena/jellyfish-test-harness","version":"6.0.16-renovate-external-non-major-e6fff70c556fc066dbeaca4f34d2d75abb9ba372","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.16-renovate-external-non-major-e6fff70c556fc066dbeaca4f34d2d75abb9ba372","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a41041c1db7b80010419423d65cf095d372b76b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.16-renovate-external-non-major-e6fff70c556fc066dbeaca4f34d2d75abb9ba372.tgz","fileCount":24,"integrity":"sha512-fMjAYXklaxubCBOPlUz4Q/iVkWKygWr/woXN79+WsT+0VPd/WVq+G5mfTFc4Cya5pXAuq73iWj+YheiAuxHp2w==","signatures":[{"sig":"MEUCIQDdopiNkNXBjIy2gYi6Y8m9rbi3vR3ROHSX58hIrq3oGgIgIecZgIa1eAAvkeRp6mgmB3nEmBIuqF7ETi+KVPXEanU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128252,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QV9CRA9TVsSAnZWagAAkAUQAITVTwZoXpsK7RmV7Kxj\n4S3fkW0Us/zGOrn79vdVsfZD7n5Nc3D/kA8h/CsRstNpy2gDpd/noadhe4a5\nurg8UOtgP3JE1FC1TUmqOCcimBcEvdHao5QXZ7o7922TiAGTnZ+Dij9R9nEH\n867vJY4dbZwNpWxBoe7luY15y7w0qQ0JX+yznUfcRU/4LjN3PlDn3TrVUeJl\n+p6i5yON2Mo5lergk179GmV7rohakG/ygYyd09QJCujhgPlKCCz7X6gWYKgL\nyc8KYXPh9PMb2KFgMYI6lEoNWbHtrShPTN8zTIA/u4oyZNSZ5du+UbXrKsZV\nZAhwiF1F1zg26PO/W8ep5tb+6RAscIw4IZmNrzynW36xDC3zkGLiHudSc5qY\nzoBQyvFJGQGzkzSOKwBrnstJekvOzzkXU+M5dlroU8d36LB9sisqO663PeVO\n7Xk2A5hbaHzdPg84OTz6T9sQEgBPYIEJBBlLbP28JXuxN6sWK0H6FQiAo4YI\nOl6tdyX2gDgZiJRjNgzGWlonIiYsJ4c+1yf5BIhW1CAlOmozCwjejjQpheUQ\n4rr/s0Gy0LXp6ntBcyguUDenx7KJKTiFFtd9zRekGUns/oglUHRNoA/ODq5r\n13eyQxb0Mup3pbPrtXWht0Pt0hR6joRLZgWLO//OEanpx+oJoG/aEIgx+Qfp\n4Bht\r\n=/5OK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e6fff70c556fc066dbeaca4f34d2d75abb9ba372","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:24:13.298Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.28","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.16-renovate-external-non-major-e6fff70c556fc066dbeaca4f34d2d75abb9ba372_1625884028861_0.12046056070634026","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.16-renovate-internal-patch-72034b04e3f77eeb292c80f3170ed676bb95fa1a":{"name":"@balena/jellyfish-test-harness","version":"6.0.16-renovate-internal-patch-72034b04e3f77eeb292c80f3170ed676bb95fa1a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.16-renovate-internal-patch-72034b04e3f77eeb292c80f3170ed676bb95fa1a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8eac6d2a09cbf5fe4f64f4d1095b21ebcf2115a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.16-renovate-internal-patch-72034b04e3f77eeb292c80f3170ed676bb95fa1a.tgz","fileCount":24,"integrity":"sha512-ijIjMS9X5W6waOCK3To4lqkcw/K1ujNoOLhu27XfbhRdIyRAy0X44X8Gi8ZszrzqGdE5DVNaTQkXAb+T/srMgg==","signatures":[{"sig":"MEUCIQCKm3xu6dRuzZ8SP7cAtntvVxciezOrBAbC5f2AjuK6JAIgcYWm6DDKQIfJslq/WfNOQ7yhxUQT5Attlb2jy8XyOA0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128276,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QY7CRA9TVsSAnZWagAApagP/iS09Nl4VzTIjQI7eHLz\nImX+tb0JlJGgL4E7iMiTkJ4UM7lMFKGlOwdZRjo2NTPiuFq23o37sxc0Bt3h\nbs9NWDsMGHNn0L9JP1vDbkvpamxCLWljJezbsfE4K/SUreakGaM5W9yir1ru\nm/TFpQPxfXknKcoahUHgWQTfu15wtOYwDhlk0Z4TTY51hLt8oRUAGQHiumZ3\nt+uwqYrPO08V+f0o8n+kLc4s0CRH9HIIs1cHQFWIQDHtlEmBvklHPqVYeaIG\n+c6YkBMmb2b3ZL0r384q2TaN37zMzzbaKExFKjZOzGAiX0ya9fZRnoNeR0Qg\nWOSavF17qlu0BoUj15KvskkUVPARyJHriu6Ioyk7vjvaXe4DRCYVcY6NYvRT\nVEfmvlMQ84vJyywEfYuSy6rSoIBYAcqbnkrCaY9l9GdaEHsqtK6esI2XXKU+\nLC1oWXhdmSOwvK/K0v4qYnQh1JE1LbV13LdmCYgJN9d11UUQpegKyHtsWAVP\nr2hUXkG6jDdsoii3ierzucNoMRC+rSz6EOxAwJ1iHfxk6IzJkeiTbJzMiElR\nW2KxBhJuDGoRxFpSDpLCCJMfHPdCq3qOIsJQ1SJO7WunvRsJXafvrI62n5MV\nkuieUBpUvXv7VkUCL7ejpQnIy4L/x3xqXJ0LrqnZclrrc0bg4Bq+8vQt7Sbx\nAvrZ\r\n=70wA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72034b04e3f77eeb292c80f3170ed676bb95fa1a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:26:33.144Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.16-renovate-internal-patch-72034b04e3f77eeb292c80f3170ed676bb95fa1a_1625884219173_0.6211146688585139","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.16":{"name":"@balena/jellyfish-test-harness","version":"6.0.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.16","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9c1be9fac2a7ef103f2db4d4037c05b2d13984a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.16.tgz","fileCount":24,"integrity":"sha512-2im+MSC8kpiI1wcGhzsVRE1eXCOe5Vq/nhXUl1eok/eJ3Mx5F3yuoj++gaXifkI7c/rY/EfvByQkau6pKtjj5Q==","signatures":[{"sig":"MEQCIEZSIAXabSZT3dCJYx6w0X0u5nSXGL17yWICM3zW3uDnAiBS50+t6v2Xc45VLyTY46tFXIuLoAq47i07pmb2sQ8jeg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128211,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6Qb+CRA9TVsSAnZWagAAqOwP/ArFP4n6WNC0xEC+jmem\n6dAeqVeAf+BWWsQEX2fvnBzdINZoU5Fn/h0LJQnhVqQKlX8H0y7T6xGTq5ov\naJZrG8rucOjHJA5ECjkb7hh+KTwmXmPqVUdSrEmj3PuKgNwYiRsaM//+rZcb\nMSimflGSs4NMJJBk/C6V8fWrfGYJtkwUK6eSU9flBuZM+whiHKPGRIrvvJ4e\nlE7+98Ook3eli2qXBl//aoJUHWI7UktYHYqkxXAMt/yb3wZvHiIJHyQqpJkx\n2nJsivEeeCXbvtt0JKSTN62xQa3le/We8NGFrinnOwqt5NjTSJYv3JpuyrzO\nUJ3bqIJRxtj48goLafoUBmM8+VCp83sEg+AcPSbWud4TnroYDFPWKrB9LZl0\nwQ4VIgL5lyknuOUhI4MVnLMfrwEAefssr0Q8M1iebWIojJg38PQ9s7rBbNmb\nqnDQF0iesH5xEIJO1AeHkRLJdm86OFBYjgG5baFR4+XeLCu818n9zm+KrwLP\nCQD/j8WTYj3apbg6SRJhd7o9tTqKd5QDyqHtQ7b87dNn9LnUujV8cK5XWI0m\nEp92u42Wv6UKitkbpecdA8aB9nYq1RO0ostgBrclVu+g1abnKxRpH/MdOHAU\naPzRm9fjNLbKNbPw1VqH5vf36mUYJgb+pm0gHWALvuFtdO6EZ1zcYx1BLbS+\n8jxR\r\n=8TZ8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"81e570f671be56cd1f331a210870bd1ef8e3e30b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:31:28.866Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.23","@types/node":"^14.17.4","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.2","@types/bluebird":"^3.5.35","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.16_1625884413840_0.3412792335681898","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.17-renovate-external-non-major-8ff80e24c9539751b53f823285f44c7980e8a37f":{"name":"@balena/jellyfish-test-harness","version":"6.0.17-renovate-external-non-major-8ff80e24c9539751b53f823285f44c7980e8a37f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.17-renovate-external-non-major-8ff80e24c9539751b53f823285f44c7980e8a37f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a226b6184354718b373401132c843927742002d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.17-renovate-external-non-major-8ff80e24c9539751b53f823285f44c7980e8a37f.tgz","fileCount":24,"integrity":"sha512-yARHfMMa+gum9rp+VcZMt1CBE9wuKxuryzzbDGpDj/3mxvgd9pbMCpYGYyoS2JHdWvL3emaU2Cr7HxI/oLQntw==","signatures":[{"sig":"MEQCICmz1GsK6pPycse/+rlqEwzjkvh5y52HlsuLY02WkrjrAiBR96phLXIcuZ82NlAU/3Q1jqYjZxvQ8oaX8nIcdes0uQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128358,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QgACRA9TVsSAnZWagAAncMP/2lblWnRJZFzP9U8B543\nut4EEN4pOyohu/kIuugadB17oiJZbR5cTa4xzfhu5A1HH06nTRNL6pc3ToBR\nxXnYDasUhqi1Lya43WHp6Rq6+ZUsP2LWkLFaN5KqX9KU47tZRjvHa9axrgZN\nBWUWAW71XjjckpoS0c/lB8NTywjAWiJp/bZUDTpjwJNoUltCXK4B41fLLRU0\nul0amciz8yPa7AyA7GGYIuKmKRfgTLXSu9fw6+6E6eX+/7IIcDYKQBkYChKJ\ndNoGc5N8Ewz+OvDxDWZbgPjQFzIZj91P/gV53EnVlQH1tYn5mf8umXlvbiOj\nG9/js9uZsR/VZJpw5uPjCPIPUqCGjZa6Q3jw/Xb/p+aGJ6YXASvKKEZJ7mlz\n4W7tssY6xg8KV0qhwb4eAs2TYQ8ChBd/5agCT3NQlMaZSvdIPrAPvWcsceVm\njE+0sQydmD2DuV78GibWJpF7bpRhiWlyUmauOZHNGSjh9YZ8LAfv3sKJo+gW\nomNsCtU1EUSUpaHWno4UEX1HwFuHqQBozlrwdrSeCNjYqeDUDDexlvNbM+pX\nTVSj/GrmXQ31p4WUyps9xRgfQlsIFu+m21h2zRLlVEWqg4IMLkBdlUZIllQa\n+Cd9pQMzRlNYEbSuegTCuifycJ9n9Ou8RhKSxEZQlHWegGOsOLUELoNlOjt/\nnai9\r\n=PV/N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8ff80e24c9539751b53f823285f44c7980e8a37f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:34:54.738Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.17-renovate-external-non-major-8ff80e24c9539751b53f823285f44c7980e8a37f_1625884671948_0.2581651975176291","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.17":{"name":"@balena/jellyfish-test-harness","version":"6.0.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b63e713017970f8cf949dbbc4e3d0aa46d02cc56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.17.tgz","fileCount":24,"integrity":"sha512-2tfVHIofFimGioePxzCA3cAuhBg9nZTXKTQCcQy78eKB2VnOcz1hdEQH3u5SACEvmoToigCCqdbhnD+y1cmnmg==","signatures":[{"sig":"MEUCIQC3+tvTEyo8+YoD4vyczVzCoHYNNGko6HuncOWe6INoPwIgCuKS9rWAuTSmGlbwPWnWPO7UX1kCLMaC1jtxXWhO6xo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QlrCRA9TVsSAnZWagAAlIMP/3PFeaBsO6M6Gw0u7cJ3\nd7ZBw6PJ0ZaoNB+tv6iT8Bzk4e84GBvwotNTQsTohb7gS0kChYE4olcWk9pd\nI2mrhvBzbNLLKbnr8inWlxR3PslwqXb/fdUrb2gBsS4Pn52zHRqgvY8V6k5+\nJZTmrLWV8oCTvkEgu1HcJLDlYoVXM6ZP2JIC7weNGiXEnkfFhaD/k10MeHbQ\njeIihpq7Rj+JNdpqjIfiPCCKN+feSW3LdTyauRLIWr6zsya1tnKUau/CXe/B\nXjdumFgA5pU8kl82duBwvETlILMjyrio2ynyciAsnFoS8mVRTzM8Ha1oLeMK\nykFHoNeZb+w/3rk8AyUAq8tMst3BZQe6SFtIdvE12BLuocLOR2fZPlmCrRgD\n0KqU7w+wYJUq5zYP+f99SbhwEymntJ0V0D3iLzrX0Ml2bMn+9pmCaT3thbBV\nJhYgDWuF24rjkIIwke2KEChZUeYHh4BW8DRk4mmSv+2e7rXy6fgfTf2vvQ8N\ndpevHTWgW3N4dBGPTG0NXebxyK8LZWt/sTxAYeu7KJsBlp/qjWj8PjRWk0z/\neFBbrfxW83wMUzx1I0Q/ziWZ92D6/6Pfamu1k/8ZwMp7uEbMwZS/HK13G2yt\nQ0pz27USYmYSue+2S7pQgMLWpod1csKJ924eXgFMcna2ZLJf4e6ZRElojMKs\nqmx8\r\n=eufk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8f22c1ba3230642d1a69d7b81c57ef7d5c3f66b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:42:05.639Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.209","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.17_1625885035290_0.1773466384636897","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.18-renovate-internal-patch-7eb12faf2a3e83b180288d8e32ca48fa28bb16b3":{"name":"@balena/jellyfish-test-harness","version":"6.0.18-renovate-internal-patch-7eb12faf2a3e83b180288d8e32ca48fa28bb16b3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.18-renovate-internal-patch-7eb12faf2a3e83b180288d8e32ca48fa28bb16b3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cffef9398fc4bf7785d510336485adb40929b6ae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.18-renovate-internal-patch-7eb12faf2a3e83b180288d8e32ca48fa28bb16b3.tgz","fileCount":24,"integrity":"sha512-qh9EPGzenhNyXdJ7ftqDGU+mkuI2PTQopu34UacfmPWEcrcj21+lhCHKg9m+v0wFbjUBRHxC/QWFGhRBfGR1Vw==","signatures":[{"sig":"MEUCIFdktCArQMa5rRVIp8g5ckDgUF2YHIvD6DxLnTly4JSBAiEA50JVG7uJTuC9E0YEtDuDM3hJ+ZfT8jzAny8hIQdX/pw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6QrlCRA9TVsSAnZWagAAmiwP/jS9QTKeHsmOmFo9Evaz\n6trg/vu0aJTso62Y3Bj1fWVyMWTRIYohcUESN0XK+wqHWrcTlE6YpMRb6zPh\ndROOwbVnTKUYIOgoRWsMA4JSMztTYf3g+w0cJJJNj94cDzH7IkFH6k5bMpM4\nWN0rMce3BYibhFSn+eTr7PQvHUvlLRa5EazSftZiaG3qKrECRwYhC1NzQAYt\nXuEd5ebQS/yiB0bKzjhaofmsXtEPpEdEInRvxrxCpc5IjDWE/k9ezqKBIQVA\n0JHQVsrRvmlrkxMdZCzv5gbXlzVW+Vs92kr3v/xnja+XSQjPSYh7M0Uer7ku\nQMHTyuD/Ps46zSEYRKhEpWnJVLhGB6cdXV912fPwNoYR7lCxG2g3lROEk858\ncevr3aZ0DzIcIeZNnrNlk0lYiKwmoqdpcWIMS8CRPPQuQD1oenYfsUm0gJVO\noeE0IxWa3RyWNH+kGtvUotEqvBDqEuDDdaWIpxT7nAXJ0hqdx/cqhUAXHR/c\njGKTrfg52TUhCTqa1roIMvYV+Uu080TDFIjc7cuJqcHRUpgs9iCiIZKpTnvM\ntdBmFqXIZWQr9rzMVRJUxxl9oOXaa9wUxa7+ZBDagkq2ItGBB2SHY+gE6Awm\nMupfikaUNA7ZvAr0Qm8cSLh2/jd4fAAM3Z77ggkj6L4+2Ceb5GfoT3p+lFid\nOGTp\r\n=6KcT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7eb12faf2a3e83b180288d8e32ca48fa28bb16b3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:45:56.951Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.210","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.18-renovate-internal-patch-7eb12faf2a3e83b180288d8e32ca48fa28bb16b3_1625885412745_0.5327494321552799","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.18":{"name":"@balena/jellyfish-test-harness","version":"6.0.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a0e018a4d3a78cb74a99c3910f7f4dc9ff8588b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.18.tgz","fileCount":24,"integrity":"sha512-e5cMwxyzrZuOfhDptaT6sXaSTNEWdC8L2gTEGIqBQMDK6CS8RB7zKF326f5x2Tv0gUI326/Au/XHuII8gKFQoQ==","signatures":[{"sig":"MEUCIQCP19n5aunGbufZQTxWr81DNgPRrYMARgguBcIjbCaCggIgTPWovseJL5W1iWTJq61pERt+LWVWe0F1QkDiY8hdEDk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128395,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6Qu9CRA9TVsSAnZWagAAFU4QAIS8Eeg+EQ2BMPkgqYeq\ntSPwytNhSwn2RJWsuKouaNcBLeZCt4WVmzcGnyFjm6WJxTLJFh2l+bxS8fSv\nGaXdrWQ+cGVaO+LxduxSZ1DA1jFGGWETGJCWvRQju+WYMHsDjZ4hI2y8whoZ\nFEMU4ovQNn98MAKEk/mBGDJPR6W4BLHEaQtCJ2p7bWyagnPdPiTNi/8GBu1x\nVEmMwXDpSCo7D7W2cRnB6zTOd8I7ZDxiW8idk7CYBtGfvaQhvLfxkohhDD5Y\nakkdPXH9nSmC8xJ6dShKwocEfq5BG6uPmMiyR7L8NljZQxoT029KaI7DdhPB\nYhmf+YSSMetGU3LYgZK1z7K5z9mD6aNrJ8RvsgvyPgoTNqlvQ+ziatUFkZE0\nSpKbWn4A1h0XsjgO3HtPiiOi9xaJY76H0dHvVnpfct/TkHEtqtp3TUlljA4v\nafx0tJx/mLCNK4J+AxBaiL4fPWTSBCTzTDECO7/H5ZPeNoXQJU7/xmlz339w\nGrmI9Dcxtem7RMg2d3TddOHcgpk5oHIaJgP7Uw+JfWwa/oWk7kp1k+xBzBix\n8xRqQESXKN5IJwR3VkA2y9+gV7IQiyUSdApQtEZTtvzpLXgGybVBG3m3M7oU\nYrIYC5tdkqg/KsaF7pomN7TVQYCgHSMihMKVQ1avsB/xtRrtCnFMcFc3UYaV\nFFmu\r\n=QLgk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dad48f9a26d00b81e83d2e06a088d793c15a70aa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T02:51:29.388Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.210","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.188"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.18_1625885629454_0.7412894611419942","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.19-renovate-internal-patch-800ef9e51283938c10ed27372869a57bf39b3281":{"name":"@balena/jellyfish-test-harness","version":"6.0.19-renovate-internal-patch-800ef9e51283938c10ed27372869a57bf39b3281","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.19-renovate-internal-patch-800ef9e51283938c10ed27372869a57bf39b3281","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2a251f7bd234df36881b6149d999794ea035a32","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.19-renovate-internal-patch-800ef9e51283938c10ed27372869a57bf39b3281.tgz","fileCount":24,"integrity":"sha512-WHDlksVxcoXt3uM5X+fHK03xpi5c8JEJCmeLwXXi/nKRFxLGaVx1vvW2ZGxUs/O1E3bsZmgSrl0iv3Y0rWYl2g==","signatures":[{"sig":"MEYCIQDLCRAUEn6dKwoWbQeTH/5AGsPLOWMNjRgYmGz/n1H+LgIhAIE+QoSsNm01w7iNBORl7pA8/YeYt3xQ2fudYqUbQkr4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128572,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6Wu0CRA9TVsSAnZWagAAtmAP/iNVTdCMPWDGsOIN/HXR\nMTuM3gTe/4IQUYAYADw4dzJkLaZBeiYeJo/NxCjlp+c0LC0Xa7l65pIqBecc\nL9BBqA3zr7Jwo3F3EtDTd9Vx+8E/bUq9rAuhrGy4pB0AoZOsKhpMBbUYPxgq\n9xxQrpHQbyNwtyvpPt/CM1O8xWseyQ2MSR4cQbtDRN8DtFzozIIhzYGPIpq/\n9hIvAgL8Hzd09wvGDRrHllgjPW6fpqSswj4WiNpxYOrC3tpJJNo+L1EAyFDm\nA+Ysp1Fkd/9cRAhLcGIFPQ7CGxKIbWK5o+8ctby56n95r9KQbHQmQyUEouQO\nDuR1J5nSYJ8qkXzol9XeuVJSAN4LHdhAn3zaFQsdV5SdHGX0UQ2dSVdoBK0p\nXk3HCvOrGggO8bQkL2MwJPQGUdubCaGlKa9rxA1rE9u7IunKxpthUEnAD0MH\nKjoZbBlOPXSZkbe4b5KJBGq5p2F3YnJ6RXmITyDyN7pwcQP6+PfRXYfs9d7a\nKSxg6V2Iba5HL+GfLXhr6oWxNP7MFeiZoIAep4RwEFaxyHD9RuEMn2lWLdVT\nOKrbD1I9EN9UK0x9EVB0o0kK1CgToWA9yFwQBA/aOwvCGakXYMX53DXXGkIv\nUpIrN4DDu5Ok8BeuJCU+UClIUzBqCR2UPG8Ziy7kje54ogCcv9MADRmlJNy+\nqC0D\r\n=ycat\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"800ef9e51283938c10ed27372869a57bf39b3281","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T09:40:02.626Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.210","@balena/jellyfish-worker":"^7.0.29","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.19-renovate-internal-patch-800ef9e51283938c10ed27372869a57bf39b3281_1625910195707_0.7827428565726873","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.19-renovate-internal-patch-317b24af92f8ff8923eee9f311cb03f3d5bd5e70":{"name":"@balena/jellyfish-test-harness","version":"6.0.19-renovate-internal-patch-317b24af92f8ff8923eee9f311cb03f3d5bd5e70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.19-renovate-internal-patch-317b24af92f8ff8923eee9f311cb03f3d5bd5e70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"18ed5259cd06e0f6974d09e92b49749abb1a103f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.19-renovate-internal-patch-317b24af92f8ff8923eee9f311cb03f3d5bd5e70.tgz","fileCount":24,"integrity":"sha512-f/Q1b/K+u+tNJGr5xSiv9bcXZ0QzyDqGVhdrDsIILBnaPqa2N8ruHZ0vnN+oYzcLlrC+9OFGNFv8G/cL8vshhQ==","signatures":[{"sig":"MEQCICXa//msr7MRW0mkxi4UWFD5ZX0gU+V/DkoPAp/+dcxJAiAFWV0v1LBp02kszcTYEvpMxn9HgrF1bbKGkNaJDZGwuQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6WzSCRA9TVsSAnZWagAAqXcP/3AfxDH0eBdnG3Gi1gKe\nOiMexiR66M1qFxOJIP7Teuc1UiREMtyuc5CEwv2OAhaNA8/1dtpf9qh0v5jp\nRJoM32z4NbAH8JoWCYAked2dSfZF+qwJ81VqiENTfCTcqk+ThlI1X5Oh+m/A\ncCa8PGcFRv7FbEadUEY8+FinJursFX/9jF46v5znX9V9AoKgMzf0lQbHPk37\nOoo0hxFpS4Ctn4y35Ohtg3tIpLWBdeF9xmAmTivM2PH2p5AkP/CakeFlyVc7\nSC6SNFsQ7yt0kC8i90AXdWvsStzSB14GcvRFjJAa8b06IBm1gm6EnjqvFkJa\n8wOrBnEHhX2tdStjmnisDdBln8ZMORtwCs5xzzrG+AkZoL6ZJt6Hfl+HqwVm\nNY2vKOFIIlJEyt88A1/JiNArlKwZ9GZDEVpaaD7qYMzOG1x85RLg5DvKdI56\nXibpB8dB1xU3asDCquVGcgLMRiugc8U5Kzs1l3mLEKTVqm1Cm/2yxSn9MiYT\n3NT3bwv61ofVdWtRwIEapUDUOqYBeAQlq4yPiX1yJz2R2qyRDHD5/ezJJRbN\nvsesMSvTtVjnFqMwi2En13395AABAEeqh7V4T9EdCmqiD5efGcFQRh5+ateo\nV8Z1Jg0C/RIIv1LjXTOdcns5vxNPvelqerIjHJreyAslIDx267aJq6pSuxI8\noZn9\r\n=Gt4H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"317b24af92f8ff8923eee9f311cb03f3d5bd5e70","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T09:44:44.042Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.210","@balena/jellyfish-worker":"^7.0.30","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.19-renovate-internal-patch-317b24af92f8ff8923eee9f311cb03f3d5bd5e70_1625910481695_0.49072498145461196","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.19":{"name":"@balena/jellyfish-test-harness","version":"6.0.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.19","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3dec5e2f465cb11596a165c538938542260ac944","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.19.tgz","fileCount":24,"integrity":"sha512-Tx5ZA0jk+jGplg4o930pGBHYY8XBcTOC4VhGouiA7Mp/Vg39siEC0HIqgvl5AcZXphwpJ/vaPYpwlJq5sFsNNg==","signatures":[{"sig":"MEYCIQDYqB28c3q1dbb3JMp8KOQWRj9+pacyDMNdNYPQHM317gIhAPP3547kE6jb212rbXJIiQGrZvDcgWGhVoTOUivCSkq4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6W2fCRA9TVsSAnZWagAAndcP/2hc+mQeG1syr9kJOgP1\ngxXL4uk6/OrHz6Qx8OFgzJPKTNdXoSzZysa531K6HWQ1Lx8BP4s+JT1UlfJ/\nw2CIW7D/RXMd1P+p9OQi4qEIDGrC+Brbte4P982Ps6PGosRfxlyZUt6s5l/x\nbSc68jr6HdE6y42Le1u4+J/XZdzL/Jto/7FpeD01Svt++E9jgwU/eMK52faJ\n+RXVekowwJqEnX213VAA4JTOxni/UKghKtFUuszXHIQjn2w+wsk6tVvnCoW6\nTIpzj54ofTT1z4XlaDg63arP2bTrR9B44brmGbQOHcWtZLMGhJtUZEtN17jt\nWKzd4pgnTsVsWjb8QmNtFt8N97dqrz+bnH6A5KWumg+g/wnNtF1oh8t/+yB1\nLO1rG9jfpWB/DDes8OLk0dBr/yAkigCskbewI00EdxHQ0OJJunn98YH7t8BX\nM9egS1ea0lYnhaRfUzAmZb7pwpvOsWnDESkzc/MWP+qb1OK+V2IOcEA0aHbZ\npJq7msbB9EsJNTyo7uNGXIzAbC4OSofNm8tndAjqfg01zu1JPdFguX1F5gR8\npvWhwbpknU8+WRno+P3/tA9AL/dnAyGiJAavrpSUARbhXrML86Trqv7nwuGw\nIrcX8UBAUpGR52LIpOd9+iOzG6XK+kQEfUqd9qyWO9OcVvCW6LaJP5EVVjlg\nVYl/\r\n=f2N2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2bf9a4efd63301a1264823ca0e8349ae8c215fa2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T09:49:42.041Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.210","@balena/jellyfish-worker":"^7.0.30","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.19_1625910687385_0.4536839342685153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.20-renovate-internal-patch-a311eface85d261ed926774700d6958bf6addb3e":{"name":"@balena/jellyfish-test-harness","version":"6.0.20-renovate-internal-patch-a311eface85d261ed926774700d6958bf6addb3e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.20-renovate-internal-patch-a311eface85d261ed926774700d6958bf6addb3e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a840d3ec1c2e327a1ec055cc9c9ca3b829a23ab3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.20-renovate-internal-patch-a311eface85d261ed926774700d6958bf6addb3e.tgz","fileCount":24,"integrity":"sha512-mQTc/v22eJXiqZDRFjbxPezBQOViI4fAfRsW7Dv5+5BUKNIinXPSnWLEA+Q1NXtSq2hmg/CzjN20JLEQxDBiOw==","signatures":[{"sig":"MEUCIQCUmYApwWR5XOFsU+mn3OWQ9amjiEvAEe7O/+FM5DdDGAIgG5+dI6l9JSVO2MiKf+jIUnwJEwlXjwn9YYTx20dhMY8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6X/JCRA9TVsSAnZWagAAMOIP/37K8fq69ztY8tn7e83n\nvs5WqrdBU8N7cAkhmAjROVrrbHdlydlUC0+zhLqwCoi70VDglVSvS4MiXrpb\ncsleHykTN4Sd3gOfQqxv4ulptSwhCE1CZ8skzwsQTx/mU08N0ewoIUR6InoK\naf5vVRUoLt1iqY0ar4MP483m6UDQGF1YwnBGHEW8CSlmd09EpIZN988scUBK\n3yVaib6wiwlSVXvFrhkDXvgq3/l5jFMeyjU/1yuzdssZ/zqG14Y1R0GUDRAx\nHOFdFOUKKcrU3pKd28TZMRoXjoHxT1WG7LZSXyB+7xGT9dSEoHUHnh42SeIP\nzoLtjo8i2dYzBe1WfA+2xcd0AGZHk3lJz2K509bgooxiLOESLzNy1EjhLoyA\n+oxogybCK37HR2ErlkGMSFzrEDWB4+eabvsnOyacf9B/UFUQHoRKF+mBjLGH\n5jrK7IWw3MBTIWEMmCKwhzGBRXqqmhjBwDWbBNAuTLxdgqDl2m77B5BDKb4u\n9FXoPyJT2N5ZI32uQucGsnP1Q2v2+ItoU7lxSpLDNxi1/P6R+z14UE8VZUaU\nuD4iJC1yq/ZxvUGeh78Do5VvS6uMvNZc5LVRLh8+IvpWEX/eAiZQWnd2kM9O\nM86XcDMbSvNBAVsfVLSxr1ZgBc9J5OYRzR78eiOADxzhsNQWrFj2EV2ahhza\ndFqT\r\n=YCLp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a311eface85d261ed926774700d6958bf6addb3e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T11:05:41.697Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.211","@balena/jellyfish-worker":"^7.0.31","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.20-renovate-internal-patch-a311eface85d261ed926774700d6958bf6addb3e_1625915337366_0.14588333818937604","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.20":{"name":"@balena/jellyfish-test-harness","version":"6.0.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.20","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5a37eecd072384d2ebf2b999fbc46d53a588d63","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.20.tgz","fileCount":24,"integrity":"sha512-VuGSsXQW08bb7RaMYmvy1twKdumWGOVQpEawNTTnrFN4hB3scF6AFfwks34ZqFEgGYweaFnWiGOgANPm6C+OZw==","signatures":[{"sig":"MEQCIBoGUVdgwp8Q3zMg1bJzYndGFeQl3NbhxSQ1gOKkT2zHAiBXhvff8eZF0AE4zyRTdGTLrhkGmCP/HzxB63E9QFAMNw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128543,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6YCqCRA9TVsSAnZWagAAbNAP/Ra0P5p7CPPeedUBJOLY\nGYYNCEX3tJOpvCaUYJmshqiMykloMpcXgkDm8l1MYMJzZUx7us49cnya7HVL\n5zCmp/iOpAAjz0PzaQB0DS6fpDdgR/WWmChLCZkgQ2FfUavQMyLac9w0/5vR\neKpT5MhhOqGZ4EBnTzzuhJVHD8XhZxUQ0nGfm5RL9XeNStg00/jx2gIQJg1B\nMl/dAv3VKa4KHSfVylLphbW3os8STCbC44b/qBV4wqPJoES/rbEXYrZrsgll\niaE5Jkz6j1XnZJswhE1aCpRQpDhoNY9jSm1KKmrH8WjgM09q0MePOtS8bJXs\nAgFK7MupHija8TkGtcrDXoKvxypTk2WiEGn4AwB+wKo8pDl72pp+cbh5rsFn\nUapQ2X7wSlV0T7thXqpIYuCQsixXdoN1Im1KAahIoA09mqxm6+6lvkhsOrJU\nNt9csndkUiAipCX6AuODOSQpBVVYSyfmU7lxcKdBaCyr58nXiyhjf0SwbeMQ\nZ40iaMddqIsTXmSMSQeAVGw102I7QFrS2kHh4SxnDkM1OM4d2awsp+EsHoAl\nVHCs9dPPYyG6BJcltca4CGHekn3pqctsBoQTDpLrTQx4k+xef8nwjj3xvVR9\nN1U8n1o8Opl7Z306Bxi4oYrGprVFhGtBMONP2edxcMhOJ+vRWS25HRbRuESn\nLmuO\r\n=wJfe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c03e9291aedacc21f024c2bdf6813926e63a6e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T11:10:51.472Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.211","@balena/jellyfish-worker":"^7.0.31","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.2","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.20_1625915561822_0.36416363327567547","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.21-renovate-external-non-major-3f50c241f4b39aff61173449dcbd8ec77ba9f61a":{"name":"@balena/jellyfish-test-harness","version":"6.0.21-renovate-external-non-major-3f50c241f4b39aff61173449dcbd8ec77ba9f61a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.21-renovate-external-non-major-3f50c241f4b39aff61173449dcbd8ec77ba9f61a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a95c3fef69c4c01566a4268731b4740215833611","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.21-renovate-external-non-major-3f50c241f4b39aff61173449dcbd8ec77ba9f61a.tgz","fileCount":24,"integrity":"sha512-s0AM8AOS64LAsN1BtDwIh7VmHl3qMkP7xvZmWOUA/FtKw7QfeV3kABGll9a3q8N0Itvunps+vCCYV3mbwDPwNg==","signatures":[{"sig":"MEYCIQC4+1UDR5L5bqMIesKmlzXAhJzPaCD79yMyl8IwMWyaggIhANZwPsiZWIU0s28tjKCjCf3dW7nVwPd8EcVzRFeLEdCk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128701,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6gEtCRA9TVsSAnZWagAAC60P/RongVt6JEkd1rFABQRd\nLQMrQXErLkHbJWI9wgfOrpxGfJ944n5QGmX6Gd6UODgAbShEgiPCUmuv5f2Y\n/EL8oXhEuQ1/gOeg82qaLeyutqUPKqw1Nn/wY9jYhD2gssJhEBVFvr2NkXWb\navlOcB1q+7p5nDNVulQ1joype/c89Cu/GlpEgG8NR7IAkfeWhP0t6W5tZFVn\n6KCSysRB/PSbfpGrm8AzkT0QvLR9A2OlwxY0LicH4Z2FsYat8gWNCKHm2uez\nAsK0lbpoIywewjazoNloTWzV2FAHaTDDBP1Mb+1F3JrInznX4QHp/LxvtM1N\n6SA6+JqOE/UCsutVwMNjXmaj4EqhpBQGdW14OxOOyjQpkyNh6VxFvr4y+daG\ns1cQCSzGfi+1qOBgGMSHF2BqHpUy5vLl5UD8Kac+dJIpzRRhjsArktrLka+n\n7uRVHwA3Ubj2HEEfJNZgdTlOaq/fzsxPK2IyPkmFUu+R0uAEHLlLYvH6rrf/\nhP08jaj/FN9T14zDnSY3puVrPcsz8ogcXhLTlqU4oYXUY9Vg2qsd84HY0G7u\n38XJYS+jOh9bXVXykEJjo4MdJjM9SOhKOAyRaSp7XDiRusXfF7Bvtd3y3ZED\nwKY/1kZLmVGy79HT/0mSarPKSItV0Skoh5n6HoQ5jmDeSuYtx65eJUikxHvn\nHBBQ\r\n=XK8L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3f50c241f4b39aff61173449dcbd8ec77ba9f61a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T20:18:32.519Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.211","@balena/jellyfish-worker":"^7.0.31","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.21-renovate-external-non-major-3f50c241f4b39aff61173449dcbd8ec77ba9f61a_1625948461437_0.8129886884468607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.21":{"name":"@balena/jellyfish-test-harness","version":"6.0.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"baf8341343886a4a3a15cf163ff36e4eb0d7b907","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.21.tgz","fileCount":24,"integrity":"sha512-TYadL+HtC/smQCCTsi7jxlHDzux0+gpoWedkFZLUvb2wdOJ/Xu7MGMyvvCeF6/7Noez7v//A3FZlmZWt/sheJw==","signatures":[{"sig":"MEUCIQC2mbuo9PoE15Vd1NQTQLWlKsg7Te+Bgb1FoGuNyObDewIgVEweXEPxWzRdXByVHnAYBTE9yNhZt9uSndFxDRm6kJ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128632,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6gINCRA9TVsSAnZWagAAQwgP/iepDJxab9rimSyNbPhm\nXBR/aMm/jfsetWJqc2fRYJ91LVnlQy3Mv0X6aiWc/d5Lz7/eSgWH9yf3Eztd\nps4PvcJspxe68r86XZJ1zbnCoi8QxOWH0YTbV35oZ0kiCD/9++lgOGnV0vMo\n3DGtVwkXkKADIzjWvXJl9KqChT2fToqO9hIjdmhmQBqiLc+wOm9nHBVinEdB\nFEPsu5V1sIKg6yX39R3eIeyyo9FTZNgsUnBQ7kR4CQGUpyv9FTGZRKXgqg/S\n8RP77Cr1NzKyUY2PWZQW0q9djlvW5vUup5S035AUh8g6rGfO5Bk/lCCSAhjD\n1kKHLo+ubtdYpdsL1QSb8dPou5MDd48rHWcheqUFCiAreePB5BN15uycsoeC\nl96tWy2QpM8K4nXecgdlnzSkf3Z1b+2oj9CjQ23cAtjMX8jF+ILzspIJUFLE\nGCXaJceB53VbtzyMauvxdUaZ9+2q1JkHq82trkJSshJAIdlViiBJNvBSvfOx\nyW4RQ8IVAFRrm8UJ1AkuLaY8nez59J1fv5+Efli/6cYBy95b80sZqEiI1qvT\n9jXr6+nd1wsAwNy7mPHGyI12W5JsPXUsO2H1zC1yX/5zlyBzFErSfdr3P/X/\n2wcoJTJogx+eJ6XISaMTfSOQcVvIogf/D26ahmgZ8lRhkIOx91LBRRCrTJhK\n4RiI\r\n=+/rg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5a5680f42aa6f7f5a636bc60bba6434d0056da30","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T20:22:54.658Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.211","@balena/jellyfish-worker":"^7.0.31","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.190"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.21_1625948684994_0.06828694327750973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.22-renovate-internal-patch-5b7765f7fad0486fce2b7e3c26d706976e2fe11d":{"name":"@balena/jellyfish-test-harness","version":"6.0.22-renovate-internal-patch-5b7765f7fad0486fce2b7e3c26d706976e2fe11d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.22-renovate-internal-patch-5b7765f7fad0486fce2b7e3c26d706976e2fe11d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d259a55ce606929a04c7646f75564a6f9949573","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.22-renovate-internal-patch-5b7765f7fad0486fce2b7e3c26d706976e2fe11d.tgz","fileCount":24,"integrity":"sha512-GO+aR7J7e0x8AzoK0Oa8ZC4SW+12Co/0IDHUMP8wf29moB0byirsL4TeglCIFTAJ++lt+z77J2dgG1KN1PP56Q==","signatures":[{"sig":"MEUCIQCb4we8XWISOfDZ5wOiuOy3gB12q7RNWrpAHlumTql0EAIgUwQoVDQenhPaUN+FJZtRgKwnUJSnN0J96xLCTq64CaI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6gPVCRA9TVsSAnZWagAAXcAQAJCUI6aVtFwXFFssx6Dr\nQN/3/fItyGaskKTTwT6FFsdSl/6knixCjntGWOqQhIOwH9qllwoCqMPwo0dM\n1O/30C+41cKzKor2vFUX1c/B+hJddRohqbCnJy0q8FddZFSCFh8u9j30PY6M\nybCib3VmQGga/P7/DDbd6IE64d8995AgFZwjYetxwT+kty+cMj/KM3e1Qkal\nLlDcj+dx4veYMKWXmZAVwqfJQ+I88KOufvzqAdPIjyaLVy46AIIU3v1xi1Rt\nUEX7JZKXzeewetOftT5kImWN6plpxh+x1XevJIGxn7zH9Oa463m97qtahhDQ\nUiu1yQphb6P1P7InE56IWs4K0KvT9sNv+4T/iCJ0eYmPOq+e49J1tTIdRZaB\nOwT7Sf7SUYDqt7A2ydzpOCXVS1TgEaLcMBddZly/0YgfOsLH7G5PYQKSncA7\nfPWCuHiCOFc89Qr+1VZUHwZLEAOVB6VebU9e/P5ApXNEA0uzEUjvMuz/a2qZ\ncEdvdJ6jKs+R865R5humHUtm8ZlDha3QJuunRiBfrbgrCc3XoXUvPcfz9jv2\nvzUwbLDrTWekm4ma8Ihpm6cqoiMdFezsrHyoGeonJrTjyl5J9MjqooX2RaB6\ncpCTPvfW18mAYcnn6lb/wwpauuToO4CtvWmH07xXLc0ea3fCkTLqv9Io3wUj\nbPog\r\n=gsbE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b7765f7fad0486fce2b7e3c26d706976e2fe11d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T20:27:32.960Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.211","@balena/jellyfish-worker":"^7.0.31","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.191"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.22-renovate-internal-patch-5b7765f7fad0486fce2b7e3c26d706976e2fe11d_1625949141230_0.4042176525626371","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.22":{"name":"@balena/jellyfish-test-harness","version":"6.0.22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf0336e33992553d960fd3c36912495b191af865","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.22.tgz","fileCount":24,"integrity":"sha512-zeRt+LzmTSgb7BALjLz8nu2cpAmlxRKqfVoyMvi4RGnLhOmJ8bOVkARnCtIU+5eWc8Q/vlaRqoRzwlNwylNxDg==","signatures":[{"sig":"MEQCIEtKL8mbG6txIRHH5m5MIMxKZnKQoeskje8yRL8Uuy3eAiBxXHObiPoKxpm29NDqGIK8ALQpqYZVVJnThOFawK6xQA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128744,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6gSxCRA9TVsSAnZWagAAD5QP/0I/SutkiugCe0ZSX4Gc\nytQr2msiJpIbxL2ca9dAc655U8XMV+GW+AfApPFipZ/kgtl44l5u8Sbck2Da\n7cKnX5m1DYth04W/SNM+OXILcuDTIlGNXLUtSV+abLAEZfFf6q+A0WWt2BWk\nPhCGAsH0lTBhHznDdoRgJbdhcXiPywYrQosYiOH85M8DkHz6hK+RX6+8isYI\nGl7+aFCW3ynyyK1hSfVKsHJEEfDZF2VT3Z39+OzCsEWps70UPHe7SrQFkcRy\nISIUAS3oKTVEwWV0l53YS3cAfBW8Rv//RhHZJesef5o78ChgJE73oNHH4TV1\nQQnMgHYr0aDcJXucxK+sfNdNS3JjptHqXAXXtQicZc2ZnV5TYOTdU7XwT4rr\na7fMBakT8nu8Lmpe3y/Fanw7tjVgzj3GNyyaxHPrufGVMZRcCZz2LjXOzI/E\norHuPthLf3HQo3LkdpoxM2hH0E0unlbX6SpvfJLvyeZAsay9YLgo3SBBn33E\n+EQPL9V2f7peT6xfVcrwusAPm8gGFcyZGDOk3nhtqUPd0uMHE9oscTqLujGn\nAdph9G3UubIPYe16AbqGZpBm6SYa3krUHHEZVADO9yjs68AP50/Ll6Q8kSe6\nSjKcK0NfPFpawVd8oxGvzI7sWhgyFjoyWQbxJO8NtLHkyZM44ANBWM5GftQO\n9PfE\r\n=SdQK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5077adebef4b980dbcc6b734eb986435b72ff502","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T20:34:11.559Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.211","@balena/jellyfish-worker":"^7.0.31","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.191"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.22_1625949361272_0.5265296089382157","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.23-renovate-internal-patch-3cc7bd506828491458c9767a2c3a2b1c8f33342b":{"name":"@balena/jellyfish-test-harness","version":"6.0.23-renovate-internal-patch-3cc7bd506828491458c9767a2c3a2b1c8f33342b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.23-renovate-internal-patch-3cc7bd506828491458c9767a2c3a2b1c8f33342b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"de5bab5ca217e01b8ce227cd13d7848b71374841","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.23-renovate-internal-patch-3cc7bd506828491458c9767a2c3a2b1c8f33342b.tgz","fileCount":24,"integrity":"sha512-J7UlgyvsE7rO3qhSEsGHc6UspSoCZ4sNreYxsLmr+eaJ/ZtUR7KVztupSVIJQ2rtrd1YK5kS4UBDEJvaF5ZE2g==","signatures":[{"sig":"MEQCID92IwoOTXlGQfM2Bgsc9xfl94McnUayiPvTcCwEzlJuAiAdAYjpNnTBQFHUsNBxN9La+8zAiM/Gfhm1BsK/WuKA2Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128883,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6g/oCRA9TVsSAnZWagAASZIQAIPZUScKst1SU7DLR2aK\nx92NBjTCtQnIwAfCIo9uD9TRje18YfZY+YM00WdYo138KPZ6UcXdbT0S6+iN\nD9ZLIpCnvgY3pcKkJgqhpjvE+OG0gMqAtSAGL05W7dKQYvzIR0ykXvLt/vhJ\np5wjQHD7hF1Y6eMY3/w5KvcoDbcrxII1N8knWMO67uzLHja5MecfJ4uOhVH1\nVc01WOwSskUFdvnuTYRoEVTCXdD1EtW2S8OkWre8srlUM+hNA0hfFc/OxaHF\n5kB1SKTHM5aPx6TK2sGP6LUUZnYPea91WIN6KcptZOP9bk4hX8SlLI9LMLhS\nhX7/tbHmLI1juaI+fNAJD0+gu7R1hhEP8OPutvBl0irVMLA5LgULVHbXMln2\n0i/FZo7b7jhrh/k8STUM9Crxpq+rIwMiDUjZCOvXtjJPio1P+18j32X85YJr\nycWfkQ68E8t8N0DmqrRtSKWsvIXq9UatmzZut1F9Xr4uDwzEKCbVU2JJ550E\nLGOJtfAgXyU8fWcQdPEhUYw2pagjwt5zkCcjuqEan5uOS04VUZTLy7pPONjc\n2ZKTRcR0P8+VeKPrkrncoPQp3NICbaKChfqplx4l7RT2rBOdIH3xpqb7UdCs\n5etH5df23IMm1s1Wpokk9JAgrZK7vLJ4HtlV2gGL0al4K6LYsE+oLPjlWcBW\nEuvA\r\n=9fhp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3cc7bd506828491458c9767a2c3a2b1c8f33342b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T21:19:43.395Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.212","@balena/jellyfish-worker":"^7.0.32","@balena/jellyfish-environment":"^4.3.13","@balena/jellyfish-plugin-base":"^2.1.191"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.23-renovate-internal-patch-3cc7bd506828491458c9767a2c3a2b1c8f33342b_1625952231786_0.4697041246298639","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.23-renovate-internal-patch-d9ab01eb266d716787996a94f7784fb0803d90e7":{"name":"@balena/jellyfish-test-harness","version":"6.0.23-renovate-internal-patch-d9ab01eb266d716787996a94f7784fb0803d90e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.23-renovate-internal-patch-d9ab01eb266d716787996a94f7784fb0803d90e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc43756682f68feff3198cd1a1fe5a19b15ed96a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.23-renovate-internal-patch-d9ab01eb266d716787996a94f7784fb0803d90e7.tgz","fileCount":24,"integrity":"sha512-Z6VH8RIcPASKdytLVhddn8eqDwjsLG8Uh9aYuBs57Gae4Fn8F/iWQnU4DbyuMHwLb53p/zlI6+aSTyBuaz0+uQ==","signatures":[{"sig":"MEQCIDkza01VR9BoYaYY+BvEyhws15XxtP2CXQeKJ9gabWNmAiA7ObYkEdRJlMk85N9wjrHLo7opA6rmIBPeQesa/Q6FUQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128883,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6hE3CRA9TVsSAnZWagAAaaIP/0ldEpxXhWy7STyalVqu\na/gpeQBMGZW7UpQVzYkdMFPVrG+K69rPA99vc2BQa3n6vwv8Z+rYaXRG1owE\nmlhxv4soCYOGTn6SULGItdQizrMxX2ovwr5yYKp3qjEihQVgHm+36RKHwcBt\nzlCTyMeTzzPkccfQPS6b5MHM85yo7uGtc/NnmaaU7V05ZnXBHsVu7nswTAGI\n0BN2Dx9Tlveehtyargo+gWQkWHql/TydQlyxBnx2/tDAArg5oI34aMS6fpGq\nxyX1koL/dlcYXdBfkGns9zr5poMtIsbHCQZyIcCnCszmZUxzsar9KozMXLZi\nXuJSw3asPj/67Ud8oeB6Yd3Coj7qjA/rW1V9nFLU6+7klmt/0Li2q57d6Ree\nKaRD3oXkUNFChwDihqXRQFY4MU807jjletyIG9zFc5pbTjUUJU6O9V7XyQWs\n2s/BVIN+mf+G4t5fMENgixNSoUtBZDu6+Vb2xiaFDqsw/Av/2OI9AFvziPNu\nYrM2oamXc8e+/I3kIv7UllpFljA04QCkjCGKjFbVCNkiShDOW3t3Vdncdpfy\nFczCDfYwVpfUixU8FBPtazQ/8aPVfK5ET+D9euJ4uojaRw0Ob1kLeNJ+NQGK\n3D6q2zo4TCZ9op80cTGHQpILy7PjkAZ3LMYnx0X8ViHg38XrtCnfgPSAe3Zl\nEIHv\r\n=vARR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9ab01eb266d716787996a94f7784fb0803d90e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T21:25:16.035Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.213","@balena/jellyfish-worker":"^7.0.32","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.191"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.23-renovate-internal-patch-d9ab01eb266d716787996a94f7784fb0803d90e7_1625952567038_0.5386179751534506","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.23":{"name":"@balena/jellyfish-test-harness","version":"6.0.23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"70ec4ec16af95a820580952e786e215551dcd476","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.23.tgz","fileCount":24,"integrity":"sha512-OCRFVQUrFDpG3fRCmqgOnQGedA63TTMPaIltoaNJeWMwosZ+jAxzg6kMuC2FhBqKY/hL+j/c6kg4MgwDHHIGZA==","signatures":[{"sig":"MEYCIQCV0cdTsE6vu2peciHhadVBGKHmvJ1gbVNeBdqpYn+zogIhAM0XX7vF0p2AWc4fgGkIZqZrEqbkRjI2APlSBMHPpsgo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128818,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6hIQCRA9TVsSAnZWagAAtcoP/3UqzOQj0b+d2OKe6hoJ\nziJoTXzCid+hRGeHEbBmXLfUaZFlKLNrdLetAUh4dpaEO7qdzBPAv6lxURSw\nh05oxE0Da14sgjx7EY2jLYGv8yeOBvKNMXJJD02h9MmaE8K1BQGbWXg8hWWY\nPwS9mXPxaALiAwcS6AX3optihsO4q/lN4agMicm9dzpQxcS4Nel7AGwsFf02\ndlVcCFJRCunn5+dyGjQgfLtdy2tij7csmNGqRJGu9wC0u0bw/XjE6Tw7Jdzm\nLCSlYncWXQdW6slabb1K76NucNnEXPgM5yVzchFs7qxkLHrcyc/w3OV13GjK\naD98lg5eIuHryq1VY92eu/xCBDlrgWeL1KZi3GLy6Cf7OYKK0TT9bBDzDFrF\ngHPRPBlm9FbPXloSYQBRu/E+AyMHllMjc+mZJ5XjF/NUFVzC0OaxQ1dobgcK\nnovJwda3b0uSxShEZLACD1y72ADdnFtXtxm/2/nkf5KRog0m5Q1eWEtdfqUp\nypipmzrBxEA+LbIk4DjBxu4VXrAwELW2xo4T20Wy8qAnG4HQfjivFzlmBQKx\nKcjTXy0M/tVozTjRP5Z2jvDjcTdYimnfSjzpvNyen01ra0L/PUHCoxmjX8lJ\nkNo8edkJipfEFbR/XDbC5hCT29DSuXNqMr5RyJyYtZUHD5Q2mcTtPUXX9Z0k\nU73n\r\n=AqVa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1531d18dc18f49610db4c7a1260b03bfec45c9b3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T21:30:59.504Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.213","@balena/jellyfish-worker":"^7.0.32","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.191"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.23_1625952783847_0.798386676045485","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.24-renovate-internal-patch-a79b817334c53ab233931dc733a3fe7dc57daca9":{"name":"@balena/jellyfish-test-harness","version":"6.0.24-renovate-internal-patch-a79b817334c53ab233931dc733a3fe7dc57daca9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.24-renovate-internal-patch-a79b817334c53ab233931dc733a3fe7dc57daca9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ce0203bbb3ff2d68ef5bf5583d272a3a7337971","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.24-renovate-internal-patch-a79b817334c53ab233931dc733a3fe7dc57daca9.tgz","fileCount":24,"integrity":"sha512-oK2EDJgdtQQjwZJ0FPpH55IOUZn7NQdqHsMA07TUzJdxdlfrq6NMiB/UE9vEJo2jkOb2tguSgKxmntmwcFD5wA==","signatures":[{"sig":"MEYCIQDxZAOUQHy4GmW1C6pqtOYj0xV7s8VQKxS4aKgw2lIsCgIhANy3aAZZyI3Yi0YzzFoTStUpI0CQZurBDA6JRkQ1LT7w","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128957,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6icWCRA9TVsSAnZWagAA8QYP/2sfodn/XxCa7TbvWF9p\nqYEwYVWI5grleVw9EBJNF4+5nGbhW7Luv64PY2o+0kJcdRr1Ztzlul39rsp0\nvF3yJU75nUXTpPgvQ1NS98579I2pjpGzvm+63auvvfh/THRbfur/N8Kdz9Em\nhYLCYurmCjZl8gQQa3pw8aRES99Nee6hrhC/MzfU9Xp2LZtX50UZ+2o/IcXc\nFekZHa+1TOY4qdeGQ/MoQlcLRVoAe0gMIHnvrzu0MjxCBIJ3MDpjMZlca7Yu\ngyXDbrk6adiheqGBatswypV6kVulGCIpoA/rxzXlmd38J6GFSR35ANcyvmb5\nSm/q0c8+6nQWAr5JnXP4S+z7w8BFIpYf3M8J9kDDjB7/jCHdnzafEYH1D3f4\nfSD1Z/EDvyafAplI6UCt7ysS81OQRuHmRJcK1Rid/loTugfi0rOkKtxS2QH2\nnMPRp6l9iOMiodwsib/VcixZ/s9IOxNT6JH8sOb5K8rcDR6bqns563wXzFDU\nYSwhjICQWMcY4+qi5ty6I9JXF3mf85LA9X9RdQGmWt8gvZ1+2amhTNE7PE7Q\neqVVBJt+tYX2pCJPlmTk+hii3aW64lml1So9uZEmWleinZnMO6fkRo8Kydn6\nXudpFcXs1UVpe2uvoCpgjjaBNxywZBZ01vz4Pwojb71bNX/rAduotkOQEPbx\nnhqm\r\n=BDdE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a79b817334c53ab233931dc733a3fe7dc57daca9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T22:59:13.621Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.215","@balena/jellyfish-worker":"^7.0.34","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.192"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.24-renovate-internal-patch-a79b817334c53ab233931dc733a3fe7dc57daca9_1625958165661_0.48671357971100293","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.24":{"name":"@balena/jellyfish-test-harness","version":"6.0.24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7676e34e327985ab3adcd46f2274670a1371515","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.24.tgz","fileCount":24,"integrity":"sha512-2UMahsSIYjcNQrWYcN/8sC/dbyGKFtMDNskcm9JB8OfSB1XqOLChWZmAHYLEsYXc8g3moHwm0ML+IuBQFF6S/A==","signatures":[{"sig":"MEUCIQDvGRM49Z4BvZ3r2Bhg3MAtMsjonFDHGK6XNBLtTRgDpgIgZey2yihja+tWGjl9AL4p3E+bw2hdHW3hJCGlSO6O/ro=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6if3CRA9TVsSAnZWagAAen4P/iR288bf5ClW1EmX2Sqc\nwffKIAEYXzYUY0uaYaiG6uun33FL5cfVRSvnP5R3xfFsqS0daLzqoSr4tHRR\n/OLjQ81luQRyelXEgXZzf4GsOQ1Ze2TbH2yA0f8SE/eu+n4diRb4af09yGkw\nGyETQm1hgTX9hFMu/JwEjneBx58KwI2Ps2huK+nndVZJcGSM6D+zZE+C+BH4\nLSLsmz37awb/qgsFl3pib7wAlqo/MJ5pi+/cQcWyi4wvrWyjH0a22l8UxX24\nuJNWEQVSgK7k3PKNTpr9Z9oyrcwzkf8ZXKnqJ6A2DMMmiikewbDEDj3OmMZ1\n3HOpVeAFNC2skkkdtjQGh7qqXEtUU/V43pua74V7cQe1fgXlBTYpArU/nLVr\nO6A1qQ+ypfXc1I3xIdUi7N5ROvvl9TeOPX4c1zckopk1ut6ywNYHDUJJ5cvM\nnltjI43yhYOboddI69UIAbbMRqEANE1YiPTY0hMQN1MVhto4xRrpAKDKj4tn\nzqSNoCNFucc4BBz6AkwsMbywary1+4JrBl1VHJSA2jODiWcK8d8p4R7fVME3\nTJBwcyT1ob7QCGDhTs0b9WeqoGOFrXJjsB7sp5Kigd006AhbpF1GFEVA5bTA\nX+zDTFcWsDfK1fhOaBuhmbdojcw65r0bikH++O8YGU/r1FUBOxF7qz/S992n\nr7K6\r\n=X/5z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db6166f6b2c3689a3b299c1cd891719476041854","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-10T23:04:41.814Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.215","@balena/jellyfish-worker":"^7.0.34","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.192"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.24_1625958391108_0.34254805970935776","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.25-renovate-internal-patch-fb3d2c0fe89be0400b05c1580ee74ca068d8e529":{"name":"@balena/jellyfish-test-harness","version":"6.0.25-renovate-internal-patch-fb3d2c0fe89be0400b05c1580ee74ca068d8e529","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.25-renovate-internal-patch-fb3d2c0fe89be0400b05c1580ee74ca068d8e529","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76a8524986ca9d048317c606173d88bb60eeb810","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.25-renovate-internal-patch-fb3d2c0fe89be0400b05c1580ee74ca068d8e529.tgz","fileCount":24,"integrity":"sha512-P9msaZIA5ut93dNHLH9bwiOmyzAABUNqF0HyNQ3TI1nmtbe7QYTfZgwiclaLckHL3OHVkyQusZzoxM/P5PxR5A==","signatures":[{"sig":"MEUCIQCeMSZuAcsctXhW+vw3kcKBNebsE4X7iz0CXK12jbjvLwIgKkVBUVY7ExXnYiDcKLTEmAr/MyJVWcCY09yhPqWVKVs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129063,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6kM1CRA9TVsSAnZWagAA6UEP+wfYU54fXZG94MUAMWsp\nwLNtjr//HzIvhpf4BuuVwTL6M7nH5UqWoRdkNvNRV/BNv8kwSQmqmz5/YAnP\nr7Y4XmYbrZaXgPe2HY6rCp+xR/ciSAXUXEUtHdpv6g0eBtFFvtIQ+PdVYNiw\nNo/ldJ1oy+5+4Eh3Xo3G3r8FXq7H0Zw3bfC0c73+eiCAJDN/cT8dT4Bf3Gxz\nhRKCX4HCjOInlK3YbL+IPRj3hZMseZYEa6qZUToR0bt+HpqHbW0MTEVIefcu\nz7+pmJ9LbN49SRudwrqIgsFDKA+Q2kf7gYB2FZAAhjD3SocaJy2nmMIrT1Rj\nqu3lWuKFlqRVGY3vULkG6W2KHd80z/Pw4xVIWKS8SJil+glTJ9ELtKvYN75M\nmvGvGO6SqIeak2rgL40h//YvUqbU7To9IXqnFC7k9sRpVJF9elzPOg4rrOpf\n9yRlRGomTsRDE/6FPOnJdzy1rEhLVBsPd95eodC/m5EFJmZSA/NhVy2hDy3f\nPc5PcaLS5zRgnWFp+l393H0jqBIGMmIzH3qZPFc3Y7bG0FsFWBL1daeQs6OM\nx9zWLLrVkd+aMyc8yfwQcDJFxM37heJ7lxTOYOjBw0oASQmaKzhP9/mkzvoz\nZOOUoTlpvo0KOzm2V+D13JKAL5KEdTI70HaCoLVxbWtHg4xRB4/PpHdhnaXJ\neiKu\r\n=U6B1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb3d2c0fe89be0400b05c1580ee74ca068d8e529","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T00:59:51.863Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.216","@balena/jellyfish-worker":"^7.0.34","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.192"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.25-renovate-internal-patch-fb3d2c0fe89be0400b05c1580ee74ca068d8e529_1625965364916_0.3511473276187784","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.25":{"name":"@balena/jellyfish-test-harness","version":"6.0.25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.25","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ebfc7b1adb31a8310ccadab8d62235450d3ca860","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.25.tgz","fileCount":24,"integrity":"sha512-SiQedfHHr5Ig5wDysuZMTDDls0Rrf1MO+ZBKAZxToH8H9WvNmG8Sfc2xk0UC6YObIkUHI1aS7wgVKgEXdVvP2g==","signatures":[{"sig":"MEUCIQDvJ4VO0TfjGAl6FaJMVQb1qdyPqMv3Gk4d59PuafD2RwIgd8YVpdENav3nvNXjGrWWct4ZECf0g7wrV8f6Ws5ykS8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":128998,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6kQgCRA9TVsSAnZWagAALHIQAIckgYmF4kX/w9a1Ocn6\nHNOJ5+S15EsmgeMs5aOKGiluorB972myg0IuIh9KD7b65j4eXAmSb///geRS\nNRLtGSiumBTj7VfX8eATBuG6u3LOXEfJUcdO5K/OcqlkywKPEGCih550PeEy\nJh6xSZxWtV7c+PRfBFYBggJvQxYWJtBpm7akiKuIMm36ZNeqG0k82DoTIEEJ\nqI07yi+R0G7IiVAR/Ezf91RNimmXKhbauYivePSQ1wE9dVrSA55uOmalA5fO\nNcUflr7hXVSgGCknmJ/M4xHyAiBUI6tCjqojWVpEmjkQAMBb9YcUczlulaPT\nOzZqDXVBD+HmK1ikc+0UPXYBwcVO9Y8RgwTy3GSAP4HxIxr4/bR/XPwOUUt+\n9te5lYq4mgK1D9bQdaxTz9a+5WEkpckzNHOCTPLBdeFWwWardOVuRtEOtQ//\ns26dCMr9uZ9r21OVRIuv51qfHZXqvJxDb8PY4ii4+TaW3vAMZgBpIc7EQq9c\n0jfkN8/ZYvEGq26uKOwbgZF97xwzBwgFPKnsNRywlPsguAMvLY9nixMvjNpt\noLCspwewmDZF3aqcIdhgkx1CfE75OtjIVF5XmXHMV/sMhJSo82FcR1xOy1U1\nc3t1rC167zOaxH36cdnzbqfii0RUdyC/Xkf/mc83zxNZgug5p0dWv9HbL2Do\nJjbz\r\n=bg32\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ec4996a479d4456690e030ca978371c7f3d84daf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T01:04:52.161Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.216","@balena/jellyfish-worker":"^7.0.34","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.192"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.25_1625965600343_0.5917938296035814","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.26-renovate-internal-patch-3b1bf884088a107b75b9830028f3060b2e171de0":{"name":"@balena/jellyfish-test-harness","version":"6.0.26-renovate-internal-patch-3b1bf884088a107b75b9830028f3060b2e171de0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.26-renovate-internal-patch-3b1bf884088a107b75b9830028f3060b2e171de0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"58a281408bdbb26d056d0a4e66b119029bda7103","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.26-renovate-internal-patch-3b1bf884088a107b75b9830028f3060b2e171de0.tgz","fileCount":24,"integrity":"sha512-fr5Ll3xrFl5bejD4VO1tFhnxT+QALr1neZPOBR33EHGQ//PCuPZ09vDOuTZ/nFG6xIVPnieN0mNl84gitn8OSw==","signatures":[{"sig":"MEQCIDlY0XL6OMz/UoO/PO0Ki5Pp9HYwMT2bJLUQDQF83DBQAiASYfQEa87cL82bdRsTmHnqYPm/M0UxmQ2U2TRDoJTaMg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129169,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6kvbCRA9TVsSAnZWagAAynIP/2Ox+AHdHDTbPKsu3QOh\nND7RIkeI5koY6voNufYp5KtQnIV/wQVmQWKF2pPVjlIdFCzhgkIuCY9gxlT5\nnfR3FShDHrKe9GO8xRgGnPnnW/pzX/hPKLRJaEhGlkZjB3aBwj4XGlKgwVoA\nEVltEcEq2vJb/qd+y6ojWJRVcGYaibM8btdIkltyKHxVEbAWRHyzj69cvXbg\niID3bddXcmzfTy84U/J5Bn0jk+dBPQk2LfIHIGR0cTCWAFYViDzhTSceGSi/\n0PhhuPXeESI47Wmzm0w7uK3easw7B2VLcLRKHJTbVfcI/BuXNyfk+KnM/nNU\nwfgHHJEasdVmiMkszsJpg/TpeDL2vAhDf4djUFsCPDEPIfmMgPPLedMQDaSj\n7vKIO2nkfBHI98ov/6lGnhljgMW4d+50LXKwBZnhxqvLl0HxlprNL+AvJ6On\n+iRzoyqtlz4/p1Li63oI7thq3uRb5w0llyBSc6GGn00uhpT5FNVC3UiyGsva\nQTrCeYLgE8hHFfx4cVMttP5g4UjAnngGGBgaK/R2PwIyp6HKjVzh34murmfR\ns8o6z4Cmvup3aea8Jd3MJBDD6PudiNpHrqLqPBpB+M/SaiFsXe3Xejv/ie6O\nNjE0dbex4G4fznnUPwRsT/a6Q/KjkIGzs1jZOcdq1H0jgaLnj4YRAcwNV2xo\nOMNm\r\n=Htuj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b1bf884088a107b75b9830028f3060b2e171de0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T01:37:01.801Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.216","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.192"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.26-renovate-internal-patch-3b1bf884088a107b75b9830028f3060b2e171de0_1625967579039_0.9869222207236301","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.26":{"name":"@balena/jellyfish-test-harness","version":"6.0.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c6058211393014f2d3b646266df71d392f834d0d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.26.tgz","fileCount":24,"integrity":"sha512-4jglPbbxQ4EeJ2i5VFWIsVphh8TXu6eGrFscVmcDbRcDjGBAQidkfAqCFO0PaeUl7ZPdL643c0S5IgE/Xd4txQ==","signatures":[{"sig":"MEUCIHYkK+llxOZqItVooBwS/H9AUKKfHwnDko1N1xLglGA/AiEA4IfD0S58osc2OSTR7HYs5H/8IC/may/8S/lFnWCQKDA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6kzLCRA9TVsSAnZWagAA9MYP/0i65vbe8504ypxOlBaj\n0TKtHe7O+C0mj4o6GUD1beQBjgU3jDHw501yoT5sgYtjDwz3wXruTO+ZASD5\ndMoyWb6s4XvsBPdAwOP3FAhsB91m+ctjfRiN8batrx6cck/jQDMzJr+KO0E9\nMY7FZrssdZqu9URu+uvZ3KlzWzetTKHhkO5TkbYNoiXHx2Mvr9tyrbV+9y3o\n9hp/vetbqF+x3lWaNBUA4/CgK3bsPzzwyj8wThJXrAZbgjqmwaXEm1Xdceyg\np538HJJXeRtIe2a3wbVhM0EOqV5cd+S1edId6ckWkXMjDq0Ftij2QL8jewTw\nofx3uzQIih1kXWqczuseuU9WZ13be1byGdgD2Ws5691nvgwXhT+IvHUMwBur\nN3PJZXHGqp6HEGLHo9YauSc8Zywu0VxVo11ikj5hRPrHKZayuoAIhQcjdTif\nr8zo0P0TNBpO3aPeiWMFI8eQh7W9o9qzWcN87CInVAHIptSqnjGJ5sEITe2K\nEtyxuRkD5OvaJ3ML2IlNoUQOa2eDQrncBckxC6K5L6HYaW5Gxznh0Yoy4Ub9\naLp+ooLDhsHKEKQ7ytkBDAhyf1IoXVOIRVtnR5lgWwgyuCHAGV6fhN/Bd99J\n/GiJ183nR9DHaiw9HMq5OVfAUJUNOoz9uAM7ch0/yBjgyyNEkj0xomGY/F3t\nFADT\r\n=rESD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0613e185794681eb3102f5c973da61b868f58a27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T01:41:52.189Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.216","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.192"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.26_1625967818772_0.700885742055567","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.27-renovate-internal-patch-22b29cde4e2723633b6b0fb738977bc125c8501b":{"name":"@balena/jellyfish-test-harness","version":"6.0.27-renovate-internal-patch-22b29cde4e2723633b6b0fb738977bc125c8501b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.27-renovate-internal-patch-22b29cde4e2723633b6b0fb738977bc125c8501b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1344cde7543c91fdf37dab59bf2d2ab78e83b629","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.27-renovate-internal-patch-22b29cde4e2723633b6b0fb738977bc125c8501b.tgz","fileCount":24,"integrity":"sha512-d1ZYbNjoUNAn02+sEm+IiDRGX1INfSUXIFyIseFInqzTTk5chHfQqhB9gTU4u5ZA4ngRYfBVJ1Sg2+bxkqsPSQ==","signatures":[{"sig":"MEUCIQDcwE2ENfQWfmCPGnymBrdnJEcttZ8pI91aDVcdQhG8XQIgV5CwDFuTT3Y5z10rYKTvrHxlTyTha1bA9RU7XjR3pMo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6l3/CRA9TVsSAnZWagAAH7wP/RujIgPwCGRnrrf1P+YQ\ng+FIKSDVKmXDV7W/dWTTw8TUNQIRsjpWLYeEFrxNnirjeP5oM1jIPIOPVTi9\n7X0xbfOz7E29Vc9MXWdFNAJDJdx9c+PE9oHpElVSEiaIs+TxrtBPpTsgBlr0\n1VzBa3C2JKrnUcclzoIgvwsL5sfqOIUr4TzTtz8fSGF4TdNNL64OWEQGgVLP\nTnJsaGPTyBTivNXczTyLL411FQZpYM9M/ApbRnKmuaT9wmiZ2ns7esR3DYIq\nNAHoFwa5TKDhfdBbxxtwXGMiW2dCrLa3XirlqH9EY+CZ2BjCsGWeA5pnZ4nV\nP5BHeRVb37w7m3x/tr8gHc21eH/XodxRKasBE+7WGypmxFezLg4H4NXy3BjI\n22mjVFaHnuJk0epLOlcad0ePDqFsN98Viu648Eb7w1Os7u7FbWE4Cn9Ic2Cw\nGXQnGjBhWmdNL1vwF1Wk8T3nj+3UgO93bj5BBnhx6x8ibonImsssenq8AkCO\nsfw05twnIJGGCuKYbRKX77HmxbUc73G7Ls/kC/hal7Z6uDCbB7q35dayoeBX\n6GZH0AVrMHeOEpWcIC16yLHeZYOycM7dp09omWrlmInOxexwkn5f5upyVZOF\nUWfEoM1J+Pvxhh0gsh9bzjByEKtoC1KN9rE+IYCKdu6A3qcIJtYSObNROVCd\npwok\r\n=lGQ2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"22b29cde4e2723633b6b0fb738977bc125c8501b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T02:54:02.186Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.217","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.193"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.27-renovate-internal-patch-22b29cde4e2723633b6b0fb738977bc125c8501b_1625972223097_0.41564930791805654","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.27-renovate-internal-patch-879512a48c532b9b3a909dd1bf58e63303acd2c3":{"name":"@balena/jellyfish-test-harness","version":"6.0.27-renovate-internal-patch-879512a48c532b9b3a909dd1bf58e63303acd2c3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.27-renovate-internal-patch-879512a48c532b9b3a909dd1bf58e63303acd2c3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d34f9a42aaadd1e2eb1e014f6ad91f69b1212767","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.27-renovate-internal-patch-879512a48c532b9b3a909dd1bf58e63303acd2c3.tgz","fileCount":24,"integrity":"sha512-M/mLh9lk5qdHtSn+5IMiJ35qmF1TelbI2W22Aiap1unAg9eTnIqUErxD39T3LKr2arC2QU7oKNeKCaX11Ejujw==","signatures":[{"sig":"MEYCIQD96vcO2PdKJTFI2ERzfMrCLWqgla9wxMhozutUuj01HwIhAOxFYE3ITJ4bW18p2ds80qjH294e5DQOSK9F8gBAzLXa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6l9DCRA9TVsSAnZWagAAYxMP/2p3+8l02QjZGyrW1DKS\nqErYPcTwj3TJf87hKkhbNc6JOKIFqNefD/XNzXHs90GYX+J8OXzvxtegiv8U\nlu3gFmGrs7Y/93hm5odqHnmo259e0hq20I0I9SfUT7IkmZRpaVTIxpNwitc5\nUfzoOynDmkvgzD8z4sBVG/EPAb/9aS5mSf8uodTyTshWfTGJ7raMfcFUSVp/\nRIN5SFE2wd9n8D6iOZ0wumUsQxl4UTHrQX2y2Ox9K+zJ52lJ/0hdH6cKuRqM\nPlSalgfqyk9fuUbMZA2Mcur3pdJNZ3uEmIyUMH0b9SM8kpH2lOqOXsI9JJ7a\n1nXUnHbNcy0+bnzwThCH0Y8s/OMyPtKdGXMWL9uB0yb7pQDtV2d6mpDPVo20\n/lw8YahHqTvc3I9xn0NDZr5JoX2AnE68kdvGLh63yOK4lYPMhdPpiuDBG/+L\n8gJuiatCQSE2zAY9FOxUfDgd2HUcX6BKHiUelni/OkzHty5AR9Jz7x8SIfz9\n9/TSCkppR+Fd1xAZwdTI06FlED6spmTmQazkOQ7QNMbHiyw5/qKyEzgDWO19\n859fMlqx/QU4OH/ITdOJMaCaUl9GbIKocqwd/3d0R3rCR1a6NPUiOIYKd1bC\n2F+16zXOMEYIZkBNUUuNa0n+0oBfLI+I/WfTCa206M+UQHJ9zYQoQKI13ZyI\neGgf\r\n=zzZP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"879512a48c532b9b3a909dd1bf58e63303acd2c3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T02:59:33.426Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.218","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.193"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.27-renovate-internal-patch-879512a48c532b9b3a909dd1bf58e63303acd2c3_1625972546586_0.09076482681589249","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.27":{"name":"@balena/jellyfish-test-harness","version":"6.0.27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7dc96ef960d8fb695d066cab78f96e8bdb82dca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.27.tgz","fileCount":24,"integrity":"sha512-lnlvC+UcXfBzB+E2LvEKVks7hYIzXhhHxLqVRCL6BDCuQuR6uAfFaSR/tbIOlBixWXuxgUKuxaGzPdN+scwdAA==","signatures":[{"sig":"MEUCIQDclpUYWu1hg4Y5Fxm4RrBn6BbRJ1mpae77acultJrSZwIgDF6tBcaqCy1coaTrjivMJHZK1lzw1kJM4Pf8Uec/Bjw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129178,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6mBJCRA9TVsSAnZWagAAQoIP/i0IRWZfoGLmRMyU8znA\njsI3B+Vlsiqj8TTcYSP9rzyHSUXTMV1rU3jyq5VYHfR0FSDYqBhYWEDajgAD\n9B07KZW660xA2JFLkWaw2Ks3IZHSPXDVHskz/cNZVGcrFxXe187E/pe3TZxp\nMBC1Ap92AlcRIrLe1WgNmh8StBznmIN7cGWgLXTtHZCJSWIMY1/WCeXb//Pt\natqP6PcoaPoYz3SN6kXJQgsGKmKgIbunF7xm60KXPbJM/9vZxHzBoBrC5mlS\nlvNK0tFgdfaCgRtEkBbImtPiMY55//HK6w77Pm5zXK1MYRUgeh0/o8n+sV2K\nkM1JhwIatwIywaDA5JmT87NYFQgdZ6Tk+xFo2WaY0U5Odog2dS7KWAqowjsa\nHWX53tJuLXc6XfvCzvfUDSDufNX47MQronRU9MP+LFI4qAfG5DRIFjIcKehO\nwbmaUGaxA5zun+YTRIdpI26jzTUts+kJ8DsRWHvpiR4aA6vXWWJ0C2ON6NlQ\ngcAqhcJgq1CyqnwgFAFz2HnO8aBt5DhWDabGBiu0g+6NDw8jl57O6pR3Oyf8\nK5Fs07D0vVlaJGJpuSnoRlF1+VTY7C1Q03ppXXjjRme50QK/WJzxl1qxCVUt\nZ1T5OT3uDccwa5Dm90flx79yAfcJJ5aRAOtM7xNnfWIXUpmbscgBY/7xlmiw\nV9dN\r\n=oTb+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"be3966060b9ff2abdd426200f8978ae9f4dccf13","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T03:04:13.844Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.218","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.193"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.7","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.27_1625972808775_0.8012702597274037","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.28-renovate-internal-patch-e0bb864f1e3abd06f1c866468e52751bca53f14d":{"name":"@balena/jellyfish-test-harness","version":"6.0.28-renovate-internal-patch-e0bb864f1e3abd06f1c866468e52751bca53f14d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.28-renovate-internal-patch-e0bb864f1e3abd06f1c866468e52751bca53f14d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a91a1b1a4c4d32e5eb7fec95e67c988f7b9339da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.28-renovate-internal-patch-e0bb864f1e3abd06f1c866468e52751bca53f14d.tgz","fileCount":24,"integrity":"sha512-fZWXxoI2Q2LHYz83DI+KhVhmK8cKB7/X47Kwy9P981chjxZoSu59pOs48sF7ZSkAnA9i9LL9ZlNweZXcVt8CHg==","signatures":[{"sig":"MEUCIHv2wVhXPDkhXekafNNJdj9SSplURFTNGsEc7TodDTZZAiEAu+t8EEVJWgYr5teGg7WsWh26K0an5bGL2p0dgRIBxXU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129347,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6pzaCRA9TVsSAnZWagAA9IkP/R8vAln0X+YgoLh/i8hQ\nNcQ7o8vzk/s2w6MBhhP4WoEXhzPeskPv92ze3YJw5tUO05WRmCt7AjPyHDu2\nR2pj3lcX3R4iMSQOAQLSvscxY1/pJskhPjR/mu5NgOFb5L6lA5sqkHo8KWst\nNUEH/j2RiD5lIqPEh5+cAwj7H+QpOzJT30fcfN6XYMP2BWO11/QWvPyzjbEB\n8v9B1zAONUMUBRObXuCg85Ge72Tn5HDZO4K8ZVcN5zILGwVNAlDO2jyBbvC/\nCrVSykOaRBxCfQweNRe5nD49CO9L+sxa/MkeiEncMy4nfJukiL680KmPNelJ\nP+Hf/ot1iBLLSMfdzZz+Ld0wU1LSPghs+yejNcVjobo74ROAlT30bwOAog5K\nbKhAIdM3ob9ctYeJ+X+d+5kl40b/eToImMB7vhJLigdgorc17X959tOqmu02\nfWVilYrU6VzAWkfp9Zq9n1EM4v/nIMUZChQKlGvthqWtVaOy7X42pZT93pfg\nInwEJCBUuJGojiUKyDKeHRcAujrJnqHPJuxB5P6Gs3vBUv+WSCAiaMmh3aZc\nQFIFrh3ikobjiGaqTT7zDHDpRLFwn9iNBlMfupatJs+I9BMItzUv4zzKKsVd\n553DAocT4zgY4pFCkje4/B73GPaXYq21LQE3wZlS17mGEOiGwetoo1nXhsoW\nHuXw\r\n=pHjY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e0bb864f1e3abd06f1c866468e52751bca53f14d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T07:21:28.121Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.218","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.193"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.28-renovate-internal-patch-e0bb864f1e3abd06f1c866468e52751bca53f14d_1625988314308_0.6773060480811626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.28":{"name":"@balena/jellyfish-test-harness","version":"6.0.28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.28","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"02103b2f67b91cfff91bc12a01ab205aa6d3fef5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.28.tgz","fileCount":24,"integrity":"sha512-I8xPTBgncthvc+Qmg7x7DHvQGiR2rf6jpnkKnY3aoGQOemvzmMEM+mw8xvJuihU6LbBbMBi16ElhL+LFNSYUvA==","signatures":[{"sig":"MEQCIFJXZ65Dc+fiJzagnYRWGIeRdMJuQgTx3i//vZjIZ84wAiAcBCSsKrWZfBNDy23vsd1DR8EeYeMeG9QTEna4jAsHCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129282,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6p3qCRA9TVsSAnZWagAA56EP/0amX/q69zsNUUMEH3U5\nFpvDFb+yeG2mfDTKpbavGTXbofDL3HJz+1IIBjtJiyLl3g9iZf1ZGnFww0VC\n5kHaLb1QO5xuOYUS1WFhZVefgvQGB5qOYbfVgswsfb1BEGdQQtlEvQm380YT\nt96k3n026TQ6e6GXnbqMzfLRUumo7YlgtrgdsUEL6BXcuNJHo15YUGafRaqS\nxdc/DVe+cK1Ti78DSkNYmK639aNuH6tODP5FphKSiImI8z5F4a+G+b85/7VU\nWaJ8lJ/xaMzRlRZfP5mi36+S3TnqtRxXyoQzi+K45l8IxVAx/guUjxidLFhN\ns+yICOfizbrhVFsoHCRAw28RQXX96rYcfI+fUs/rXlIfXantOo/O2boMenFq\n67txUb1xbjNIs3EE9bycGexQyOOyN9jRI8Luy2InO/GuWtUPM4MCzFJruCST\n67xvVwIF2zW48sKYxpkTHIyctyE4sVWQoiXAdDgmhNVKv5tpEEEQKw9ifbHc\nnpOXGoNb9IRSE6n5qWD0S+sWVrm0gWOiGIVHFd3mmrpAhwpBTqu5sHarrUy5\nOWYH3HKpHzsM4YbKIyDviMMVm14KVI4gHovLAGxblilSq964Odac+lRhpMRm\nhPRwh4wyqL3vpRx3b109OPnfRyIa0pSYnQ7xIPmE39oK8i8FvgGv0PfVkUzW\na3xf\r\n=blqc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"778b1c1ed1e680f585603539cdee99394cabb16b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T07:27:14.173Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.218","@balena/jellyfish-worker":"^7.0.35","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.193"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.28_1625988586367_0.4718480614013778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.29-renovate-internal-patch-d8df7966f04123dd2d7a52fa99f58f9b4e0262eb":{"name":"@balena/jellyfish-test-harness","version":"6.0.29-renovate-internal-patch-d8df7966f04123dd2d7a52fa99f58f9b4e0262eb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.29-renovate-internal-patch-d8df7966f04123dd2d7a52fa99f58f9b4e0262eb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e04f58873855689d9d7ee746d41e5fda82491cc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.29-renovate-internal-patch-d8df7966f04123dd2d7a52fa99f58f9b4e0262eb.tgz","fileCount":24,"integrity":"sha512-TPr17WB6wFZNBPwkREnW360xTQkUBUvzHJEpe+H3v/cOp5LB6CGIUKQ0xewlZ+PHQ3XLODHjig6B86qo9O6h4w==","signatures":[{"sig":"MEUCIQD+5j+WYWnOkj7hNWZrsy4fuk6Tb6s5Zppoqrg+wRmlNgIgO4bUxwBvdahucBMnFb5KG13mGcJKQK+C4hPtEQKNGrQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6qrWCRA9TVsSAnZWagAAnHgP/iRKHyzzuPV426ixPSyd\nuHy7k26nj5d4odlQxj3gN1vGEB7rre4kZPUjROQAKddfZuQcbKK06Sa336MX\n7tWkrZbItcIR91/7vAI6DVxJa0LJdxS4b8VGLcBJwJO5A0dMm8B1uJ00dNDW\n/5RIalOl5QgQdNpeKjYx7wLAtviyMFNuDRnMBwVYCANQV7OQcF06qGf0uunq\nK6FZH4cYnFuc/h5gb8DN1T0tXJiNFXmtn63227RmlOPdJ0UwHL/w+0y/XaOc\nRjwqSTvr63l6fJt6wmpbJyLg/3HnlGQPzCu7EICThKbc78GzVWtOWt8+xqra\n0viGnOpXh54Vgq7ozzByiy6L+zKqGytaIJPMMe4M+8rHGUEk2PkUTlvJoKPk\n9SdUF/Ik2eLp4LWKPkNfj0RuxC/HPgzFpp1R74Ed2G9Hg5O/5yTYALORQmLg\ntmZnQHtCabLcvJcJZEUTAL9OFPYoyOxPjMkOsSnSO4j/jSPWLDJAQpbZQlnU\n/TJqjaOrEsQspmq9ExAahxss/XfE9Yrxj1pSK5VR46qeSNbaDcI0BfPcD+j/\nSbpqx5IFQ6zQPK0HnKLTG4YvTfgWpE3KCh4f161T7Hp5Wa+atCg8avceCbSi\nCVUx6E248Pb0bx6vtAEZFKyxC6MuiCwJ02QNm6d3ONPHW79aQ+MT1KUAg/u+\nPnqa\r\n=tdgA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d8df7966f04123dd2d7a52fa99f58f9b4e0262eb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T08:21:22.491Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.36","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.29-renovate-internal-patch-d8df7966f04123dd2d7a52fa99f58f9b4e0262eb_1625991893903_0.19354665062564824","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.29":{"name":"@balena/jellyfish-test-harness","version":"6.0.29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.29","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b183bb1c4b214ee093166fdeed14cc0f4a64952d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.29.tgz","fileCount":24,"integrity":"sha512-9UuILUYfrRnlq/qcjxnqtynrnOjeE+YrVhjsvWIV4OxGxQ+B9kiHmAZJP9E0PXoXjeLwcxz6t5FekDBWkkz9hw==","signatures":[{"sig":"MEUCIELxSU9dBGNi3/YVT263f4U5rf2EvXhCPKKBWaxZ2UzaAiEAtPwu9YfGP3PXoESwso5W59MJhYv9WuEnTTEsZwKVLo0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129356,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg6quyCRA9TVsSAnZWagAAT2EP/17Z2Svzg4+RF5ZTtWs7\nQ89lIxi0KZw7R6yIg4JIviJTlmknxthqdJo1CWdd8wefUO8ZEVGLkDe+PzF/\nY0q3jP4KAixpaUA8z3tLf37UCXQn7SkaALGlPIlPJOc0nOW7hPmyvsZlYw0H\nYlUf6ZD6xt/oStcsuHuRJz1Hf0XW6O/4sji9EEXZt1XQj9h6yiN8v4FJ4ivW\n37MXZfTSW63v11UkIZqPmqRA0P7qE29dqXYDYYHNKaJZaaIIKcuUOAqd8iso\nUdVEOZx1lGThFkgeXvx8MDHwNoAAybS6P3TSdH9aBTSToXCiJNlfyfF05Uw5\nOmT401lhr1w+5XEhLi4TqwtpOINpwNiJY5EYq4tNReMHPIfMl2AjD6QJrdeE\n1fSmA6mN2p/Z2+KBj6qgNfyrAVS+xim4RhxKfGd6CSiww5kk8inFSt4Ay/Sv\nU1za0KLfgl4zSIyTcM/occ7pWP18Ngzc1++z7odwCcsbEq5RIi6WDd8B2jXX\njyVnst+1I2+WFRPGwL3fh3D42VMgwTIuXFZ7fJ5sdwX9Hvrslnt3lrR5wXb1\n2ktzCieIXKeensxAB6A5IdpEytrBEVWFk7kKMt8Alvp2dEfo+gCjm7Mlexgb\nPjDH3AauSW39Wd/EHvwHs+ms6qZCSjenIhvQlI0w3APE7+1v1p39udydpuyl\noabv\r\n=e9Fl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db5d181f5cbe442b14a6f50a6e635fc6abbb2260","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-11T08:26:42.929Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.36","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.29_1625992113797_0.7588803988454209","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.30-renovate-internal-patch-96193d698786559ecf1c4f42732b5e369685c56c":{"name":"@balena/jellyfish-test-harness","version":"6.0.30-renovate-internal-patch-96193d698786559ecf1c4f42732b5e369685c56c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.30-renovate-internal-patch-96193d698786559ecf1c4f42732b5e369685c56c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6e5e9010c9ebfa5eba7fb74aee9495df0e7504e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.30-renovate-internal-patch-96193d698786559ecf1c4f42732b5e369685c56c.tgz","fileCount":24,"integrity":"sha512-IknMdkeVE2m87z7y+l7V1E75JiINi+fA8CRE9bkj/ACgoX2VMMkl0r2QTKDBa1fByWli2lKfCEckwCs4Q5eLzg==","signatures":[{"sig":"MEQCIGFZwJ1Xr8QVYJJitwBR5oZj2H0K7EfDGnLjiddbIX19AiBa4K0WAVN9gONdhTo2DwN8ED1t0eveUw5tCBV2cO6zYg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7DqTCRA9TVsSAnZWagAAM4MP/0tBUCtXscZ78BaZtTQe\nN9LFVmt7sZjkUJvJGu8pwt9sQUnecd+aVexJLycpmS6IpmSKeq97n/VegmzN\n5TU8IZj/1Ah8G0tNViWo8bU1Yqqi7LgO76YLBVxII3bqI1uiqj3ZV2juooeD\nXovXLFbecBp07rgSdfE9G8fv7ZJSZ+htvd7DM/uMEyl5P6hzN7NCdkTuDxja\nXnxiYwt1mxmDPi3A1V1sluFroMXCVTX0KigQMXfGSLFH37B7m67Iuf/LITta\ndohxAQ/Pvz5dEYFWY9IU9n0JoAjaOBBjdmt4AfFGPo67G5xyXYpjfbtSJe5c\nz/oUVIFuSzaA05B0BY1O8dIp02TUkrebHUi9S6NCtVN1SXDu0jd/1VGMaQN9\nE1RBAGz0lNQTCn9ARDIdRni/FC2o7uIVXO5GaYF2Y+yVVJsYlBbCfjTFoAZX\nPo80fyf4rWdvk3iVuXaHSQOMXwRpwmVMFgJfPLLzAOZH7efFPK/L2PFviNmC\nmkULxJC1derArlfQ5cUEAl680IyaxoMLj/yrCzbBDMZ61OI9qsey6Fu4yxIe\n6LDWRHeo63T71xNsbjzXDXXRmbdbqpU6+Lvy1fEvBXx7LO/1dq18WrP/KsYu\ndzntT3zxkIXvU4kcKvbGEOOtt+PwV0gCmcH5hZ79RsMzALN0ivG+d+mEA4Ks\nUp5Y\r\n=axg5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"96193d698786559ecf1c4f42732b5e369685c56c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-12T12:46:09.098Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.37","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.30-renovate-internal-patch-96193d698786559ecf1c4f42732b5e369685c56c_1626094226754_0.24508357765950084","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.30":{"name":"@balena/jellyfish-test-harness","version":"6.0.30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c33d5144dc1ef736c6e5e2ee1a203790d8866a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.30.tgz","fileCount":24,"integrity":"sha512-P+/hy3dWKFk0Lr862xE8NfGKqo4AuQQ92/BpCymnryxcz0/GDX734nF9g7QmeQ6/531t5r3ElSAD++I4HUWKYQ==","signatures":[{"sig":"MEQCIGbNsYrawJx78fp9dn6pkpczx6aW7YgK1NsgWWDNZfeJAiB69K1d9ymplpcxOrkG//AJDjJSDgo+gOw9jGwy0e2RIw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7DuaCRA9TVsSAnZWagAATVwQAJmPBBXU/CFVIlRrPrNw\n7+4V6yXFF9scMuKtWU+zFoDe2y+wCe51BRD8QUnikZyAVmyVmcvAigp+cCVl\nwMe/O570OyFJ/HWjp9+paGfiBNEFkj6jKcDYQ03Aj/Q1EVCKWg1CPw3LlG9t\n6iC2PO8z4w5YhoRZunSMMYAQOgA8U37o3xycEphpq0oFvHloMp9GDm+YZnbv\nObjvCM+MS8rsTNxOFGdC+xD4XIVChXqfqRP4waybs0OZXkYD2x1+fccAUrEW\nRfkdYU/0jdxLg369LyS4wJ5keYlGzFZz+Vy6snAR3xTQF2CeHYJcv5zgu7Tm\nbewp6gMc3TFDNZrx4tP43q764Sm7utTMbNjoRvI4JghoKYHJJ6Kh0oJbzZNS\nUg4W/4gm27ESAiKSG6OWVUIcvmIRXX1FaySy4ZLO7DDciHodmI/izI94i7pN\nIfCWrdPsyJ24zRbCeMA8hLEdC8K5SEUuWsnPnGhD4mMjGiTz84MKGrnwroLj\nrJMsLyboy/oe6Qh0H1NlYNl2HSwoiVLBdOt7q8ENl6KXJKtO0LxVnsdvpMgw\n1Qf8AZRJhUzRTt4CTrmBzFEBTExRfDFN4oWO/UzKez7hmJZPyhNgT+Ea55+6\nQA9jImSlHkfGmsR5QsumU/pqZwim3KfpHFA0U1TcpVmYi3Q5BeIe5wf1Epav\n9g05\r\n=BdVv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2c560e5162571d2e472f8af6020214ab9387a348","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-12T12:52:30.706Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.5","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.37","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.30_1626094490209_0.4259000129641515","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.31-renovate-internal-patch-25e578cb05db3f2d601853c4e943426e70946a4a":{"name":"@balena/jellyfish-test-harness","version":"6.0.31-renovate-internal-patch-25e578cb05db3f2d601853c4e943426e70946a4a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.31-renovate-internal-patch-25e578cb05db3f2d601853c4e943426e70946a4a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0ed32a3f29d48a48f9a0d2c849fc9630bf5e695b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.31-renovate-internal-patch-25e578cb05db3f2d601853c4e943426e70946a4a.tgz","fileCount":24,"integrity":"sha512-NWiOV8bjtjfzIWTkSyM0R4AN7Nl6SQwh0ttoHhZycLCcGY8unY55LSY1xlLc1BKD9T5gdsGUeH5PirxU/iEV7Q==","signatures":[{"sig":"MEUCIDfPY5oatSsLQHCjXnvUJOROS0is8HPWQi537yB3ZnXOAiEAtus2VeyFe5KtSqoNZXWzHi3d11V7PxNO2BM0JIPRBCw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129630,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7OcMCRA9TVsSAnZWagAA/eMQAJlvqKlKyoIgq+A/AOUc\nGuz5zKZJnZPb3AR5QBZEzYGNuuPTGc3S53qUQCO9FQAsMsACWjjqCjjcx2Fu\nbfJTolqSAZCdL7wzj/yvwUzrUFluG2rGxyzxWqecMDCBikKdHJwsOb36ZiQj\nHnIIKRrm8l+cMF/GyyRPh8dCwLLuM2EF0o6OK2ctCSggt1dOgqUNbzzhIcAT\n3PpRt6/a3iYxt9Ut0nugJ3sc9tkqaA0JxkJA5Dy52NYaIeutimETqNUbNQmp\nVP7Uzv82iUmR53pi+ePbES/B+6o3QNDitofw6HEJQsITQ6vgipp8iaQR7vs0\nYiM+Ii4/Z15/KCeiih3AqJMwiQdaQ3tAe7qq1fo6NoKsGB49Pj2hwKAqVUGE\nfmOs4bcd21L2AljVLeeLJSz0juX8xUNvQ2Ct1KLMySBMrfM7QFYaN/38WkjG\npTwppymBazqj5L8SXcx/UfkMvSBj1lkV+uXDzWiPx7RCe/R/QgjqOS6pAn0q\n1/SRRdJxFPHWktIYOaME9ZZ4qj8BJHM310q6zCAMOVWHBuVjGHFKKT/7j0s0\nzgSu84wnviadgwA0JCvC95HNj7wTkPeYlwT4u6ulSVl3dcWo3nk5MPBTmLhg\nj7Dz5FtIP1uSYFag48bN+hWyPBBSch2wpkZLZEbg2+Ocz2h3gNGmmz3Fa79j\nG7J8\r\n=S/Nr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25e578cb05db3f2d601853c4e943426e70946a4a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-13T01:03:41.766Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.6","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.37","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.31-renovate-internal-patch-25e578cb05db3f2d601853c4e943426e70946a4a_1626138379709_0.6550560058427579","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.31":{"name":"@balena/jellyfish-test-harness","version":"6.0.31","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.31","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59cba6140952f7733d9a1c29dac92aeb23e90005","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.31.tgz","fileCount":24,"integrity":"sha512-0ec7RslPUgd1lTXDXh5txFRdrfBznB6yUUxL4TtrwO45lOoKPDzWQA5EKa0Hxc8NmMToG9cD7Dwj+rUmDstwsQ==","signatures":[{"sig":"MEUCIQC+lQzpl5Cg7nrxbXuaRj+MByXvNvNHmcQAZhjhsGV4ogIgQa/Mm9fll1KWYqOyI8MGsYtk2ubcbl5FrDs/Hs9IWM0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129565,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7OftCRA9TVsSAnZWagAAHtAP+wfdcQHEuDEBgJfC1ySd\nBeZE2NdEYyPyt3IOL+bL1fX5pdPe7YQADIgQyOYaQjhjiEKPPCh+tOziImkH\nwCVtRdrLdQLwsvRNTKb2zj3wLpXNIaLhcoQj/DUGh3oZQiaZxI6cftypKK33\nKeMJ12HjezGb/aoIkjfqzoPDQyYiBYYKtXl9mVRBpSzUIRW6YNm4lvgICMaz\nVH03MXPXtEyqpyArir6oNNVw1VnTJyziplLZFA6qsIM5pTqY+nDo41KLnSgs\nlFlceY4WJNZrhXq7oJ+SCusWX6C0w45QSrwSJh4pGKiWwnBw3TMzgNsINZe4\nztqHvCsfLZwY+UCggqTIVBZpdN3VsOsutaWIFtVyokF6fjw/YcxFpEo4aMlB\neo9q8z/iyZQ2emMLkHpMsmQr9GDOkvPGwj8tuzXo4DEiELXFJKucl1HcxARP\njujphM794uEWOaimBR4iCa9RIOgyLD4fTVZXmSsc35bQaeEnbN0vvbH0/7Rb\nLJ958zjvOj/mbx9gL5aW7m5FsRk3vgU0pkAE+Hl+hqW1gT26ZcfNgwCFIvzE\nD2R75PqnXxE8LzDrM1XN9DkLTRWvtoHn04dfkrR7Xd4KDhfGTTUeYFgPLP5p\n0xMag7EPSKDWd2DYDnRMJEANf24gdfdkg1iOTYW1mHqZYJFKYMPogNej5Y8/\nbYjJ\r\n=W3MU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a898b9116071b60d726e0c22700e39b2daca476c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-13T01:08:21.723Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.6","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.37","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.31_1626138605483_0.19488832837019499","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.32-renovate-internal-patch-0b62af9d39c380b9e30c8b353900c14ab7d0c2da":{"name":"@balena/jellyfish-test-harness","version":"6.0.32-renovate-internal-patch-0b62af9d39c380b9e30c8b353900c14ab7d0c2da","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.32-renovate-internal-patch-0b62af9d39c380b9e30c8b353900c14ab7d0c2da","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"734aaa89bc17648a570d79382c058aad4a0018f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.32-renovate-internal-patch-0b62af9d39c380b9e30c8b353900c14ab7d0c2da.tgz","fileCount":24,"integrity":"sha512-ADeDZ7feUigSq/HMQ/lUHrWnfdgCIIIQZkI14I6mrxEpH5mSeLHz2Es37gtHylVImwfBrj+RbEwRGoeyE7RdBA==","signatures":[{"sig":"MEYCIQDP70PObpj7w0CQMmYem4nMwhZLNRiWK4X57G1sjCQ1bwIhAMmYyEjAVFb1cLMPemkfFJWvKKTsTsEMeuwWHksCr3lv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7WsfCRA9TVsSAnZWagAArOoP/jl9A3QTpG1uf+nyT3b0\nNXuqqu0zeeOo4wG2FSm9HoCEJkJXV6fbZ8NGBQK1ZQhV3sYOH2ArgWOscfXO\nggL2m1U9N0aBIytSMjIs+pE06FtjwmrM3unrOQs+cB2MX+WAEH3k4vrXRDRQ\n9gf71Dsy9IsGlosDtf/47ptxRc6kUNtDDvBeJDZXL6uAM5BunlGxaD1Os1gS\n7Jmf7WVRiBkZaL5KhERafIuSoW9p6+jwZNzkMBdHXJTD6f9AQQ1LWpJFGK71\nEOE9QrN42wdi6ESeVP0xOciaVpj1LIBIbU026pXI2JoPli7fTh4qGfRe+S6r\n/fWHdtP+tIiGHf0wIjndT3XpD6mCX8rNO4sZw7/gS1faVLymhpZmctMhAfFs\n3tRyM2xG8zAo3Q1HeUzLgZUO2qvMRZvnZwfi/r79u6IO+uXU/YLvtruAx1mY\niAUVknDS4VpND+egajMdr4tjhq5iU+GYdxvpLBvLdugA8KD0/ki0Sd75Pqay\n65CDsicB0twJehiY26fQqkkgLMTqxCoarSuG3LsPo7QawqZePsQz3+p9T1qG\nvdUA73JldrauWISSx2cTFevG7/4LtfErec/crcMdEYYYEmqtVTMXqXz47/KZ\ndzgr/ThvVELuws+GPMiuVxngG8GBQu3efTEpvUh7+HuVVuCmV81Dl8z/Imjl\ne8B8\r\n=4ADn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0b62af9d39c380b9e30c8b353900c14ab7d0c2da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-13T10:25:56.898Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.6","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.38","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.32-renovate-internal-patch-0b62af9d39c380b9e30c8b353900c14ab7d0c2da_1626172190792_0.236705438704919","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.32":{"name":"@balena/jellyfish-test-harness","version":"6.0.32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.32","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"493599c70d72561782dbba04e3debb888650f761","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.32.tgz","fileCount":24,"integrity":"sha512-Mb4uUngRsdR0WdbCh5baz5OlxKD+JPPfiTYrhqSaZP9c1Eq8R8XIj07xkkeMFowK8EEo4EewFr9ZsnNB79F8iA==","signatures":[{"sig":"MEQCICpxrPKxgxUl65lnSnGwlYbWG22PnYJyHLrvDPV3zY2NAiAzAWR95LxF0b9N5RvD5gRb2V0z2j51HHBEwUy2NVitNg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7Wv9CRA9TVsSAnZWagAAvIUP/RYl1qgbKwYnjozfiX3a\nknxhYvsLeN0ua9nzf5re2nN1BJmXUsng5dnDu5Qdx07OaELRnx/kzFWonXYg\nCli51QETxoSs7de7WTXdmwCGho76Ck2Lw4NI6L7dy1FOLdaVKppNj7bFKjZ0\n6z4Ml1fp8TIRbcnAftPw1fEnuTrNeiwcplRl3gBLJbB0IhHmXdgguvW80CyG\n6mxL/aCKBHOWsdVGBRxAvRxTH/j3teWMnVJU/y+Rj+79vu9BK5c9ei2YYwqo\n8ky0fxpxnBM6ZO++6/eHbNiQRoaTYIGGR8XGNlSpQXKhBRSgXrBorF0PEtlq\nI3eQTsASbRxBVhNOUUgG2LH2LpGhB16XU/qK7E8qt60IiC30xxknNyCBPk+p\nP0qHuWUelYsnCuP9QUplPxS/hCD7mLux4xFz9SA4m30nqOAiUsfSdV95FklI\nokM/qTTshNdLqkwdSYzbx/OTh4wcV9Pq0DBgkNLFBc2m/hYkTgRnlFB47quw\nj73ZOZ8EjgfgjzepdEDJzAa+4y1uTD+A0Bc7VH+ZdPY136l0N7lwrrcUpVPd\nI5ojPpKVzsaQaMouSmwl0z8UhTkMCbHDZ5OHgTE+QBHCxSvdjxvfgA7HPjFd\nil3Ovdr7my0Js3fUoDN6eookYtoR7G1tV6p7maa7ZzpJ0fyaoONCnw4FHjnw\nZ3WK\r\n=r0PL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab110f75bdc76b3aca00347daab64fb323d2fa19","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-13T10:31:32.760Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.6","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.38","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.32_1626172413237_0.43957617547680106","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.33-renovate-internal-patch-edcd34d56f9602154e981b1b53e47ee3d18d9666":{"name":"@balena/jellyfish-test-harness","version":"6.0.33-renovate-internal-patch-edcd34d56f9602154e981b1b53e47ee3d18d9666","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.33-renovate-internal-patch-edcd34d56f9602154e981b1b53e47ee3d18d9666","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"26f9279c616ee959bcc1c1dab56a683dd6feccb8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.33-renovate-internal-patch-edcd34d56f9602154e981b1b53e47ee3d18d9666.tgz","fileCount":24,"integrity":"sha512-vVChv/pSPyfsd1a2cv+4wQWwnRxf369CF8I9r5TopS8vrf8j5kK0zCmNErlEpZXS46kZl1uvL0dvp5gkaUtkoQ==","signatures":[{"sig":"MEYCIQCtbgA4wW+LldK0DJsfGXpx1GsZYOdSIiUHB2ECVfYZjwIhAMGSAvsuIAkdGaqoTkjXHEKFGIpacNMhFpriq1NHL3Y/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7mu8CRA9TVsSAnZWagAAOEUP/iua4VryIchg+NW52Ejg\nQ2Q4ZnpsfNzhF04NeGKaCIs/fHNvWphTCRDwMPCj2XAaN1yvnp3joVMWgFk/\n6GEiZhgV8oUHa0KFpiqoIpnIbvrFTgazSXWTg8aZJlTGaeNyxopVIwjC9Hl1\nJm6Kv/PBsOFXlt1ZTu45hIKPKx383NpR1GP0QnvK17r13XzHbOaQLeyrT6Ib\npmUb3b+URnlDHxFkCnrAzTlSWtfDFvEdS7fnGTHErC486x+cStuuT3W9ZbAG\nc/XWh3FWdW19ZbDlF80MeYJsW+ngfNFoiIiGbH4cYoFLG/8ZZWhboe2GAZnm\n2fJON0PoQh9VPyQlRaS3LO+aQPSNQwS5j4qHazuBiJY4VrFXX4aJDqqtCFhP\nc4YmBl7f+zBtRfBTqoeZTeOpGHcO/Rz7WtIIYPOJYCzWNkC009krYkvplhZL\nKflraiNQIKSnITvacXaUS/SjDa2nhQ/2CZGWetJyNpkbRIBHP2tRO12b8uDM\nX5sjtSosI+JngYXdXuNMcD/nJ9u6o4UUgTnZVP9blJ6uXaD9iNpGd/5maR8M\nwlnvwWRsurmB/0F/rwOtWTuJpav2PMMxEgxon9yATy6VP4plN/GH0cPEAZN+\ntSKYyTJq9+NyPH4DjkKQkp0zcgDMzmvfFmhpRhN3miOPi4pJtpAjM/MTaEM9\nb/am\r\n=e9Pd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"edcd34d56f9602154e981b1b53e47ee3d18d9666","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T04:39:48.812Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.6","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.39","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.195"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.33-renovate-internal-patch-edcd34d56f9602154e981b1b53e47ee3d18d9666_1626237883777_0.8973375899532765","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.33-renovate-internal-patch-9f07d436511773b2c95e233beb99d7392ea4f1f3":{"name":"@balena/jellyfish-test-harness","version":"6.0.33-renovate-internal-patch-9f07d436511773b2c95e233beb99d7392ea4f1f3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.33-renovate-internal-patch-9f07d436511773b2c95e233beb99d7392ea4f1f3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7423c7f08ad7bdd996cd3f2ec08fff0cb4203aa2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.33-renovate-internal-patch-9f07d436511773b2c95e233beb99d7392ea4f1f3.tgz","fileCount":24,"integrity":"sha512-Nlk4GEmo6LbEmTrtwHF5gLqmtwImcksUA5pEBuE2DwukKCAl/a9dBUZFjaQly6dfFeJNJrdIY85OkglvqL2xNA==","signatures":[{"sig":"MEUCIQCl+/vihSuY1fyHmBypI3Rr5eeX3y15st9LZia3GaziBQIgTtA3+xxlDzUHU8KJQl11ed8wiHzVfZH3/VcZyf36bZ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7qcsCRA9TVsSAnZWagAATogP/i1XcwpQqE7KkfxlHQpt\nT3d0oxeo+AIFAB90ZgS9k6Pv19C2Ul5JxttlmPITGg+FkFLmb2BtL62H7TC9\nclvc1CYf2gOGtVKT49PZA4YGJ7ANRD/FcyKyDSGj5DLrG/6p5xAnVOiPlgd8\nLZm7u7ycOlocCNJrNcllJc7VwvnOHfPo2cuw9my/YdMqzPLsHpbrYxHpR3pw\nwGMJ/Gk1BA5wXq7BDMbNP6RrnQficYlbly1hQnvIxaBDvIy/wXQClC/m71sb\nagOOU+PdRZXwD0BnhAispsuhw6nU6K78ain5RF9TuJKroLYSIFsMDnax6dZW\np7rQky7iPU+WlgPxV9FggK/SDhDrab3A3BewFyXjxMipQSlhfRT45wcD26yw\nirPR0zXPgYfMEer2Bn/TGYunOKKja2EHSY5J6sGvQrTyJ4QBzP6YH+9I93hj\nEFbE1xeej5F5p9U+wa9eXXnSQGLqqj1FlYrBFzWGlApQapxuTfzo+jODY8yb\ntXjVim6vqMjV/HGARum4xPD8IQvWRvujgmoUVkV5aW14AzMExpZIf60miLYN\nN9pVfEaUB3UaHEdSrXad5wab0Mqp7CzWNjoAEWIEspDzJDpUlaj5UBMV3vXN\nW/DI0gPPBMcdDv4RQlIkzLad4FAJr3osCyUTb3op9OuAdKurWLQp2nT3/21D\n6gex\r\n=U6Wv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9f07d436511773b2c95e233beb99d7392ea4f1f3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T08:50:39.876Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.221","@balena/jellyfish-worker":"^7.0.39","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.33-renovate-internal-patch-9f07d436511773b2c95e233beb99d7392ea4f1f3_1626253100232_0.38124713980942526","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.33":{"name":"@balena/jellyfish-test-harness","version":"6.0.33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.33","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"519329c0d03fa218d607f17d811487624730c925","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.33.tgz","fileCount":24,"integrity":"sha512-BFythmikQ/81NWK9Ou0iVHhP47E/XoJa4C9gdrFTGjFTD5ncZrtv6BDpNMIvLs/KGHI+SvzPD/irmkovPJyidQ==","signatures":[{"sig":"MEQCIEIROiauRS8P7HjdkNgKrHvPn9OONi/TwbMR01hBzBgvAiAzbtDnNCzYp8pRmCx0qo6CrK8vwIWf6iFYYFfxIHSK4Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129736,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7qw0CRA9TVsSAnZWagAAD5AP/0zkYJ3KPu4lXuPuMRe/\nlFVC/o4vlmpIEWToRt1G/LihGYWXC72YiyWhMXoRmN5GAwa4QMtQn/B3LnO8\n/e76ZFqHp8yhhgvGj7OMNhbq5thdMTmBRCaE+sxYL46B4yloYdIBfk+9roc8\no9qafBnX7D8vcQotc5Y0GIERGBp0BV/UjL9qBNfpOrods4hhNMm4tMeMPUvE\npOVJqbP0hgpv0AhXq8GqSLbeu0FzYT1K6LpyMdMlgPKuCIVp9ohsVBvcfYQL\ncWEe2vpmY8F6f+UiY5qq9KIa84uBAI+nDucSENbD+XAlPu6+HlekQxUwNR4V\nATVcPfGxwZ/KR4qRij/GlmvPxCA8SvUSz9BFCV9WTZ6AZJMVwaj+ydouxcxz\nsOIPm+1eJ/V53TDT26MzjJwuQ2WYh4owDH4BKcv7CK3G00o6xPFwNsE8J8Nu\nC2T3P1aRJyXIC25lk4HyCxYVXM8hUf28Wr9mhW+zBVSRNnmu6ueqnkW+4gNH\nWjGo+QfMDCcqmqNyYUaOo0WgeycoTNH4KeGNDZOvJirRy67RKVQXyNbSoqLs\nDbNz/4iRRzG8qxfj6SddYVijAmyezrMLH5/SrORy9arRhO5bAU7UpEeZGpGp\nRiiMoxj/yxUIsHDUdBjafosmCB/ovu7qXo5hlvJ+JJIgY7Ee18zNJ/7Aq5dM\n4Vyx\r\n=feUO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"08312fc6ed9ddbedcbf2aa8454a2e06701822957","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T09:17:31.395Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.6","@balena/jellyfish-sync":"^6.0.286","@balena/jellyfish-queue":"^1.0.219","@balena/jellyfish-worker":"^7.0.38","@balena/jellyfish-environment":"^4.3.14","@balena/jellyfish-plugin-base":"^2.1.194"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.8","@balena/jellyfish-config":"^1.4.4"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.33_1626254388176_0.3065487541149421","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.34-renovate-internal-patch-8ab3d490b4c0e09725cdf85f6d792f4a286be691":{"name":"@balena/jellyfish-test-harness","version":"6.0.34-renovate-internal-patch-8ab3d490b4c0e09725cdf85f6d792f4a286be691","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.34-renovate-internal-patch-8ab3d490b4c0e09725cdf85f6d792f4a286be691","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9ad4715b20c217d44b15f07b11c1291e651454c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.34-renovate-internal-patch-8ab3d490b4c0e09725cdf85f6d792f4a286be691.tgz","fileCount":24,"integrity":"sha512-3TAxAVpeb3kF7GyKWkkWAZ16cqKFor4Fep+7vYxl53Nz+LjkbpwjUm0mTWKai8sjacMj8Z8M6ETS8i/XiS0+fw==","signatures":[{"sig":"MEYCIQCzvF9aLqF2ZFP+5Da0aTKgCskNmRJSRv/3OJ2g1ndoHAIhAIaqsbictVMKqdvngxfydBLf6SGtcmUwv/47AnDYs5/T","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7q3YCRA9TVsSAnZWagAArXYP/2Y5ZYnr43zYTRtuOvU6\nth+Ry3Ec/T+67F+6elY2Rh4mASKXzlFV9ZD3KuLHKKFH+9WH32V6i0CG37Sw\n4m8F3r0bOdlMcEh8mrWV8o1osTYoKmu5vaHiAwt1VFLp5dhMlzA9HCMQOWDC\nxK5Ft8RAs/Qcx952b/sNzoX8D/wKqqiBqBvyMm/kvJFwHycmbZNQTFiFlbhm\nf2aB5MZnhIFGHrr4aifmuWb9HR2tyeLmJfx1v5JzAWoNGqTZVpQIEAHV/VA7\nNQKqS+XYlt4k1MYO+MGnKOG183aPMm68fIJkDxwDsUUdifgj4o8pWiZ0KG/I\nrE80ll4wAJb9LiknDGx4oBZX6SyF4pHmQsckTTcBsiI4zKZVtCr8SyXWdgFp\nRyZPnacS9dyyBonUs1Hf7NX00vJ4RYgCxaifYK8jjM27O1CehbL5P9resHfb\nfOabxo8gXD4IXrIBC/jSnt89vjJ7WI/LoBSvPtXMABt9RQCHXRh9Iewndzrw\nZ9jex1p6lDzZSMq04+nmyQlda0/n1upiPN8S60oEA7fD7vqMbmQVwviZntA7\nxyx5UYrYDgLtve+iouRig+oy82Gia/bwhSKrIw2gadOUTBgLWFlVJSIZoUFw\nmBgb9wo4BoK7JUGwIdfx5gT4KTs0k7DQk0xm03MhoSqfiBg7seRK/MULutLP\nb/hr\r\n=DeX/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8ab3d490b4c0e09725cdf85f6d792f4a286be691","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T09:23:11.865Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.221","@balena/jellyfish-worker":"^7.0.39","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.34-renovate-internal-patch-8ab3d490b4c0e09725cdf85f6d792f4a286be691_1626254807858_0.6648261264620674","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.34":{"name":"@balena/jellyfish-test-harness","version":"6.0.34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b14ce033f0d5f97dc21368eb9f1bddc4e0ffbd18","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.34.tgz","fileCount":24,"integrity":"sha512-51YV9qKjLRgTUu6taI63/qbYHHpCe0xrx8hHp9se8I4ow47CoVPshWMlAKlfHU3cHAB2fKUYBhPkZzN9S2VjyQ==","signatures":[{"sig":"MEQCIH1FQ8eFyeHjjKzSQaOYSloJVqh2FudkGrt8QG1qx1esAiBIGKW5wdAvhrVv5ymlc0pOjdX+ZkcfdTwETGXdAIVLpg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7q8LCRA9TVsSAnZWagAAxK4P/RNc61qOHFoZTpMgDKp8\nsMqrQBuqnkhOGfHCieeftZ1DUQAcxrhylLKKaP89CeEknkuB7vU5pLHTWDAs\nRv/VdbDaEhyJ/jYo3cSoTwNO/+BmL8tAnDbAON/7uSF7HRK0aj+s9WEtdu5Q\nz0ZSr08dHUaX8HE4EZzyTFyw1YApRT1bKw0g6kE2NnszjTd84LfeKbKKrlT1\nHxEz+jbk6DOifpsQ9VSLmmosxadFhFKq32p7TJU2CVoeTrYO8Y57U94AHl5A\np3Et2ttr6W4IF2SotGecEXpAeIht6szJgo7EsmLbdHYFTo4okqZO+aniw4OI\nMq7/21EiAbxvfzHs3alQs1k3Y4TpE3YIcHnM+4T0mMwRpptjZIkDmlmdLhXS\nbc4bxWnzGiyFp7Eo75nA0crQcNc85wUfZDKikGBP7rg3tiYC2vHktPQ1nxpC\nLO3UA9dI1lOwDI6+60lal5mzZEEo630vCvRn1iIieK22WejXQHonF0kFlxBH\nMeIopo9jEuyFX8LW4pcIpmXKgRHP47Q3c02LI3RdhVYXGUE1D5DYkeJJqMJD\nVlvfWVE3g9A7gKI4krnjjiZAY55+csWSb+Ojifgv0bwMKHphXWnFqCEhBb23\nI2AtigVuZ0Yz05HYT8kV5IhN+KjQuAKM2ZtdlU8XaxLnokj5L6S2Ng0i6xTp\noejB\r\n=mYAF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5dda3eb8c10cd21edfa1279adce2d8b7ecaa5ee4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T09:29:13.578Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.221","@balena/jellyfish-worker":"^7.0.39","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.34_1626255114647_0.9073801440736984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.35-renovate-internal-patch-ed2c4abb35ba9b4559cc29a01d1a929133dfb34e":{"name":"@balena/jellyfish-test-harness","version":"6.0.35-renovate-internal-patch-ed2c4abb35ba9b4559cc29a01d1a929133dfb34e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.35-renovate-internal-patch-ed2c4abb35ba9b4559cc29a01d1a929133dfb34e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c311789bf906bebafbe9f1d3a5856e67c1dca10","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.35-renovate-internal-patch-ed2c4abb35ba9b4559cc29a01d1a929133dfb34e.tgz","fileCount":24,"integrity":"sha512-cSQ0P0Hacxv72tY5EIbyDg4FsOtxBgc6NrJh+1Zsqpoh+SeZbXZmkET58OfD8oDm2aH/qG3NKLH6itKmjysftA==","signatures":[{"sig":"MEQCIHW+5FAugrjHea9PM+A3tqyUF9ZOxN7GGeHaJKmPKfY0AiADF5hk8wY1CiSVKD6FZ4rCw3aaWOR9d5V4XvLdCELyjA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129950,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7spKCRA9TVsSAnZWagAAALcP+QF+XFBlSHLToH/TIORF\nlykSttFBAD8JcE3HZssH6x6AztLRT8mfzU7fRinNOblpuxBfh+9qs5olrDXL\nX0UpFiBiAuZ0JeIcVyeqLcpr+ke95n5sLc2MlJngFNOxuutQVR+YkFKJ+y8J\nSudIJlYdYlTnYTejsqr4b/NIy6390BOxpZohDwmNE453O5Y3+u3AG+IM6/wx\ncVM6TH9bRGtxiFhE8vHiqlwPTN0WwVVFsSurymlgY/WWnvFiTikHIv5FELqw\n9LAfz1tL1YO/RJaIYf6VpOZpiwcPyeM6ka8QbZQ9seBIlecbJiSIMye+7MSz\noi8JDHJ4BLys0O8Zo6yRpa2bkNDbB8yw4gN/nThraC8qq8O6cVUUR339/yb3\nBw+K6Jwf3gITzspzLZff32JPv7spkpKdnNWCOhixHDFmnPSXHvyazhn9B4Qc\nKaU9dUDb+GvMHm8B6Xuq+aIn5aLB6SWAKYdKD552j5ViTA2ciTvpbX2dN5Pl\n+RPqKnPqIqFTn2G1GsJF/mAa4rNVvXuGD5tduycIKsPOi7XpMGyUN8fJ5zQ+\nQ1f6W+s89OmxWsdWb//qqyjfunS6BdIGnk9BotQdCZXsWyQLQxq93LiZ99yK\nEM83lkxaqmAIXZbh/ohN1TP7tzLXsZWLvRFVgK8Rf7lNl5mbOSDgo3hizUqU\n66nz\r\n=2qiV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ed2c4abb35ba9b4559cc29a01d1a929133dfb34e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T11:23:42.179Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.41","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.35-renovate-internal-patch-ed2c4abb35ba9b4559cc29a01d1a929133dfb34e_1626262088747_0.24147352006572964","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.35":{"name":"@balena/jellyfish-test-harness","version":"6.0.35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.35","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41e5b8cc66d3d9db3f22ce8af94d8104037fff1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.35.tgz","fileCount":24,"integrity":"sha512-L6ih7kwbJ+xIUMb+iFTtPln0tZx/6CvtJ+Y8qUOJjOKkYQNyyfBDkTk2hLMoDwK7lwMv5LUk9N2tX0IeExdjgg==","signatures":[{"sig":"MEUCIQDqtwBgypyBoTQzEIShKqkOHoL3RJoX0KyOXTiSZUEcFwIgLBFFY61/BRpqHsRu6Ou2IPOvq3ToqZlwcybWOS+B5RY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg7sufCRA9TVsSAnZWagAA0jQQAKBFbvVO+t+VnlWV8KX4\ns97rgUq76NT08du9ekoazjGpp6havTY9TlO1H81gb3Bs9B1h8VQSLorschrw\nXWuLCBvXz0DHH2+dSVsDSxtzhNMAb3viy02rhKpHQcIBadqDG6UsCDSnsCeN\nYj7xug1pbAAOpts3RaZ4n84uejBBSZ980+gPZyvqDKsS5aHbdmD1i8ZA9eCX\nlaSuMjVYEJAsrzUVaYMmLVEqnhFQbY4E/wMCFZy7bEN5gI2ArGL7nGD9W7ym\n2tfge8uRsTQUBJYZBp5CevNUbY6XaaW9iBjB7+RNhdVUIfcUPN4WXOAfMa2A\nt2l8n8vtLK7Z5mMwTf3cpA7OPgrlwh1M5o5rGTIvlMyObj/VhZRxcmZUXR/g\nLYkkVJcsT3fzSEwVW3TQPhE/qYnwTGvVNxk9USZuklUTv6QCn3JOJ2H6x3Ke\n0T5RQZJ/PWLy+VDAtn0lapl2Kq19y/r1t6j35svmHqOsGaGyS7zEmQZNR27c\nIkxzjgZeBL/MP7cmDfDczNVBVTgt6FrcgdQY51vIdU/cAHGmWfe+8labWe1K\nNoAvlYfOkbOWmYjOK6p+Cv2uiayZi77D1uQk57PqswvK8y2UJ+WMM0zMrJKE\n0eHIR+nHwar5TnobG9/spTyFfa+Ta2vRR0jXahH/Cllg6odGB4HvMxhMuExJ\nbuF9\r\n=GeVD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a55596dd7c178f819dace36a6cb589b2476f9d14","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-14T11:30:01.153Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.41","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.35_1626262431486_0.7756928469065318","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.36-renovate-internal-patch-c78093781f66b9d924b46f0afaefb566116a6380":{"name":"@balena/jellyfish-test-harness","version":"6.0.36-renovate-internal-patch-c78093781f66b9d924b46f0afaefb566116a6380","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.36-renovate-internal-patch-c78093781f66b9d924b46f0afaefb566116a6380","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e7fe0789c27331afd46019ff8ea8ddec57a5a0b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.36-renovate-internal-patch-c78093781f66b9d924b46f0afaefb566116a6380.tgz","fileCount":24,"integrity":"sha512-D59TxenpT20da1dmNpPQBbuSjb6G4ckYT3+CkSUCPMpAZMHvapwJxosJ1FSbSbh870SuL2iUJbDa4gegMEWf/A==","signatures":[{"sig":"MEYCIQDAOcmS/f+H64+aaUXtHOm0cXnH9UOasJVhPu5UmMNbIQIhAOicDbsV97e8BGSu4XHzsnc+bLP6G2Tv4lLrJXyfbmmJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130056,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8ReDCRA9TVsSAnZWagAADcoQAIJyB4K8R6+hw8vgsw8b\nx5Bt4QIqD/SnBE9V8heeKxGiuG7zzEitS5Uz6EIcOTg+cIf32yU1GO+5VbcI\nTdJTma/XF6uOR2DUONQiYwuhuznM1Rfdfw8Y5rzF9DfBJ/g0NIuN3y6Q8Re9\n6qklRjpSTdeDOPuiyjhhMmfor5Dws1Ajc9lepfO6OwWiV5j/IjVApMUbT6QD\ncXae4V0Jpr49+kwVesfY7JUm/Y1fZw2soZx5ySgsHHaab6xgH5umgo4VxEZu\njcFO/QmeN3RPO8Z+6RkuANgq6StInHBxYE1G1EMMEF6jWdFjUAbKZA//CrzM\nsq3zi4TWpXIQ9VO92mUefTOcBbnqBX4QYRzI8681Lx9o1PEymuD9lbwTh4fS\ndnNlUyTwzfnW3aoPsAzNR5xfBp3m8j1GkkV9eVkQUcxUURzXk1/joLv48kVd\nazhJGaXSqVPOsp7zsPvthYGaL2AInwuwTQKdpItzG4c+VvsrFSwCd4jl5QO4\nq88QzkRwGNexRR0VTQTHzfEJ5W39JglnAFyeett0zTBEyNc1vMyvEIc+mlh4\nx6PE0V0njyZdi25A/jl1k9Pfs9UZLHPAFk2ETCEsW0d5/dMBu8dXFbSCakS2\nE5UUNlktu0DdubojVlQRQLjIozWInHTk0PoD6tF5eA+IYrvBnYzvayMoQKjs\nFIl5\r\n=yOvm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c78093781f66b9d924b46f0afaefb566116a6380","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-16T05:18:21.524Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.42","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.36-renovate-internal-patch-c78093781f66b9d924b46f0afaefb566116a6380_1626412931451_0.12718637150475565","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.36":{"name":"@balena/jellyfish-test-harness","version":"6.0.36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.36","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be612d797901ce7197fe301d2f3b6bb56178257c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.36.tgz","fileCount":24,"integrity":"sha512-TSC8ywYfMGUKDFanJWcpnTONmqJzdNdDyfPnFXHppKmeSLnxQF+FeTWSB12O5uTTh4PgeRQdka70t0zRNXXG9Q==","signatures":[{"sig":"MEUCICXlK4zjdcw+2/qIsHTnA437CosXYG+lufrhIINZ8A85AiEAonI/IRhncaQQqgSTzGXOPPj4bpwXOGlRfc6TXKEDwiQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":129991,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8RhLCRA9TVsSAnZWagAAalMQAJNMHa1x8/y3KemJtSuo\nTkdXsx4+r9tEvPuZg778epJ3tKWjviLtKWc/tXXHDHOpa1xXq6i8yCNSYXxI\n+5tl+fE6ub1t1tb0fpMdaKiANbvt4K3GcSlMxjON6+oATV9fBfE5l426aOV1\n1+n6VS+Frs8zEBkgBJjUmwEQYuLXl90FTZ+ybRinN9ot0QVOE9PBn9CZohDf\npwBygQnF5xfl0iGKlZhASfy24UoYCGK5nhHOHHOQc6v7nR6TOIrcZG8sMrbQ\n6NxpW672ycPclfZmHLgoASynpTLwNPd3L+oP+g0CxXYX3AtcX1sHtrcfDgg/\nu/m8rELZWl9QmHF6UArb/KwZ27OBoL3fCGnMLIGE3YyDQVrOfR6JMnZ3OfaZ\n/7Sf0yBHV/UlZOYK2k7SmoTsBZ0VqA6ap3mYTnRlGHur0831K7NWPD2PjR5u\nfbw51WDiWdd/HcumZ+Xv5iklbbm0oN9n4KksGv6actX2Zg7o2ieOY63LDR1w\n/goVxLJ8qWQroXa2z292wonIMWLeU5h+wRA14ubcIggYY3PLq1XWShxHR6Fd\nLLG2SE1z2rKWg/jrBRT0Z2eJsArglQyEbRIv0Y4/RFopGn9Uq2ZrHIGCCofl\ndiLZyrIwqyiJ9M5x2d6MLCbQqwX5IaVwF8F6GVieBE1SI4RLFLNo2SlQYM6u\nf7DY\r\n=7hbk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"43a8ca996b7a788b1fe8ad15a38808d566f17313","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-16T05:23:52.680Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.7","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.42","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.36_1626413131268_0.8761050067391305","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.37-renovate-internal-patch-e58605b9305d10f02515979da68749781bc81771":{"name":"@balena/jellyfish-test-harness","version":"6.0.37-renovate-internal-patch-e58605b9305d10f02515979da68749781bc81771","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.37-renovate-internal-patch-e58605b9305d10f02515979da68749781bc81771","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d52aff3a437a7189b108f9b6f7e9f2f34f09d52","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.37-renovate-internal-patch-e58605b9305d10f02515979da68749781bc81771.tgz","fileCount":24,"integrity":"sha512-vkzAWggQm6NXpa9EXmIfe6GN7X1BC5jy3q+33z5whEsF8vXd2q4/oAlwA4KJSv1TXOSsocEXvYSiQHE8H8j4dg==","signatures":[{"sig":"MEUCIQDD5ZRk+Mod1TiUlC/Uth+VbETtZeHnNnfOhpmC/Xm9CQIgHZ/SM+F/GQNLfclODptMa8Ep0uOlL+WOpC5BNa128xA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130159,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8VERCRA9TVsSAnZWagAAWZ4P/1L9bZROh3pDIowgNhVb\n9zCi4sMIyaRPSzQzDELV81N68DgM96BoWNbPJbJBizqGmjK8TgGdxVMR1blz\n2YKXDJb5XeWY+VBeQL8g4ymBv6H3EIgtry+v4z0B6y7S2HW+X8yzdQf+vAkm\nBDI4pZlhEymVXRyzAcRfsTUHLFpxTNhhPwqJ4wLVGzv/nK/IDEoRQGZX5cZW\nYhDGRKPYxLQXBgL855kb5nosDjNa6GUL5AT2FDtFsfZJG0eJo1ee/jbXOItG\nlyXOGWF5fC74q2TNNpBxeYaayAcqwlH/PVGCssHZzclNF3owO6FRZXBJcDGa\nRvnuTMKPNw+LrB+Qp/c/h0iL/YLlzTjFnCCKU9Y9D6G3ek3bgO2LpOkNuRJo\nzZLbergCmzW53f/+mGCdZPkFheBsNp4VpEaz1YZJhZ0zZCKXc+LiTWXYvuz0\nWQ7DXzQpSDHSaAZskoKxobUwAWe8deqloKQCjfP8HnQQ/BwNKkjM+bxx4IbP\nxpmaYno7p0z8/t3DqjKhvfUdf2kvXdHoN7Johbfqdmh+0kS8px+QFdMKnWEa\n1gHHPCHYvIYyujWHgnQwLYTlg8YBS+XAWWiNwpAVYzTR1qNp/Ypxwy+mDvsd\nzM2JemfEj3L8IBG8DJq08BDqYdMtlMUvJNF2tnYVPEhbqV91wtjwG3e/ogMC\nwIVf\r\n=VIkO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e58605b9305d10f02515979da68749781bc81771","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-16T09:24:15.967Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.42","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.37-renovate-internal-patch-e58605b9305d10f02515979da68749781bc81771_1626427665037_0.24604428023460767","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.37":{"name":"@balena/jellyfish-test-harness","version":"6.0.37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.37","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aeddf2dceba7204983bed855d7415362efe23a29","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.37.tgz","fileCount":24,"integrity":"sha512-Vp7jZ/Nf8n+03sQGnBKnkgv8yIpNPUUwGfAsgFD4vdthkX1CT+Hkqp4ZNHUeQ3n4z6yAo7XzCCb4xvJ1VkmidQ==","signatures":[{"sig":"MEUCIQCwkDkNSBpnpRly+SJK76RXBrt0NAVSznAuhHajcXTJowIge4zy9eXkYe1U3X9JriFw0yQ/2uRp6lJhgcdovsJsMwY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130094,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8VHlCRA9TVsSAnZWagAA8dsP/24U1YZ6LcvmNCtvhT1p\n5CS9dTuoTKrALw5EG+dXczV2wwpim3Q4/QoCR7CNB616QHkfAqONxMUIK8mF\n7cOyABeD1nf5EzyXVzdz28+OeR/z77C5wQAuuBg1703wB+UqxLDO0tEJg8dX\n6zulZVXDR7iev3AixdChySYQMY00Dp5+VDkPfVaJ6Wxi/XUD6g9aA2/Ll2TK\nygXksLcond9EI9gOz+mhXxpi8GjUdxT4fjNjC3GASkwBlBzBxwoxnfO4aEjE\nmDLUUYRx3gLnkaYGXuomcknzFFvl1OQcz8wzX8YEmDsbSoC6bND4WwlHvzlq\nFdVgA3jfdJmwnylqw8aPg8TXY+Fh78CC3uxZ+cn+6d3bpClakMTuafpIohRr\npm5rtYq8XBIbckrIfwYUHkyfJe5Ig3CbBEE5oqAaNDxD3IQPVRtJ2l03bOHC\nadhrQ/ZQ/QWavo94Mfh7SZVvVgQr4Ijh0o4QVnghbqkLFBsiDJBn+W8P+r9P\nHBDJJ1hND/T7zII4cGICp0SX5s0KcPXnZsNF/kAsttRaDOf0fKHQsqLOrtx5\n0aVRE0Kzb4s9GGeo2MXqcZdSD/7Kyy41A4al/O9KqokGkkB7SqhgoZmZEnIr\nz3LEeq8Ev+R3V3FKkCk4l7GTQAv6RGUyooAclQrDQLXE+o1VQG/brqVLNpzH\nmQQX\r\n=DSny\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"728084a87450949bf8a6c3a6bbb4b0d842ece665","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-16T09:29:06.291Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.0.288","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.42","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.37_1626427876880_0.9849628302266709","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.38-renovate-balena-jellyfish-sync-6-x-f43533ef355954f7afff017f266d9a7dc0e231f3":{"name":"@balena/jellyfish-test-harness","version":"6.0.38-renovate-balena-jellyfish-sync-6-x-f43533ef355954f7afff017f266d9a7dc0e231f3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.38-renovate-balena-jellyfish-sync-6-x-f43533ef355954f7afff017f266d9a7dc0e231f3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ded4c39817e45674e42121d8bf9788a006b1353c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.38-renovate-balena-jellyfish-sync-6-x-f43533ef355954f7afff017f266d9a7dc0e231f3.tgz","fileCount":24,"integrity":"sha512-VYBiR5qdOEJkEv2pPTPbG4sQQdINWWdp4f5bpYqxaGxs7ezHUGTaD7eaRbJeokEC8r5Y/9rIDHt0iUIKumlh1Q==","signatures":[{"sig":"MEYCIQDKxxvmJ9XREAVx+l0gy+nCNI3DPZepYUv9JAkQ9CN0YAIhAIAJ1SlwD+Yz8BLtLZRMinUEffWkxSCn6tECzNJv5rS9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130271,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8Yc4CRA9TVsSAnZWagAAwk0P/3qCaiEpNcBxYl6Fvd0A\nqvLJJ36O13sZ38DGye6fhywyPBy6jxTprxedOwCN7KqEIcqHstdXiVqd+WeA\nkdgEVny2HYjHCLCYNn4aS4FRuvI8lGEvJkmRQw35aOFKGQjCIm8AM373M0sw\nZsh2aD/9QyTQsjK1qgQkMkz7Y5yxzCXgZ3E6ycdfJiBU8ttbDbKIrK4VurWW\nqMjMkKGH+6fHXTd/gL8QptNWWXIQ5NjPefMto3ixmMXRYgSTP6fCgp6GROmN\n+OXhHxNkkEfnWwo1HTVgZlaVZAjPhkjRbLnqFkVrGbfpr1HZ4So19vJgpY1s\no51t2X5EDEa8kka8Rl9WW5ZgrbMuQ+XhAP01EPum730uqhWvKJ6k2exYDdwq\nqkTsG+tHkF5n1hXVQPRvB4q6CRZZ0gQbL+N/K12luNvviH/LrDsed4XfINcJ\nMLv4qxVztjb5LUlM4Zlmaq2157fs8y3z0/H+E1oygmlltzyZq8u/TErhQ0a3\nEfzYt+tym1/c6lYoOPNnNtom3+ylhtSK1Nd82MaYXkufE6/jMBwtIaG3Dz16\n/wDS4QXAS8PSIiIc/894Afo+W389/5RvSTZX1/+41+lRtVam0bPW/2rT+iDg\nZeKjCgGckQN6tgjZIRCUlRMMlBlU8fNUvY014kawqJFJWcRdNipZ6a5DR8Ab\nm7rn\r\n=1uRk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f43533ef355954f7afff017f266d9a7dc0e231f3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-16T13:15:01.984Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.1.0","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.42","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.38-renovate-balena-jellyfish-sync-6-x-f43533ef355954f7afff017f266d9a7dc0e231f3_1626441528714_0.35467440269869166","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.38":{"name":"@balena/jellyfish-test-harness","version":"6.0.38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.38","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd7546982373ef21ce3a98c2f1f2d4345fe772c6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.38.tgz","fileCount":24,"integrity":"sha512-nXlvAOCnRQbv5Wcsyl3DZEkjnjuCEUhJlSGQGiCy4RHGDBrnvxgS9jhknsIqI4RpGsLu1n/96v024jvP3Jw9Pg==","signatures":[{"sig":"MEYCIQC/kaUBNR6y+2U/JYBXzvy3hJgd2eUzLAu1F/09A22p+AIhAP4xWHeuc9QdmTRDsYJPYly0ZCgduPimLyjjRbARYYnH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8YhFCRA9TVsSAnZWagAA4MoP/RnkXh/dYRpDAyrX4Ew/\nLaXwSaPGXbXtqV8chFZa90DhUpzVVfpMcW9Hzj8ZGPjQSFEflJtLIfqLh0hN\nMeikdo9A3kyXuELWcbUJU1seNgWEvS7FEuib+vZC+Cn6t/pGwRcAlVw3HPqQ\nnFV21Fz8Hx37GbR+qcCdsRY09Vks0AYQhl0GUt8c3N/r+WdttwcQywKCF+/i\nqFCAYGgMCoCmKBpRY9cg68SkksCms/6Qbm/b13D21lkrsvEFAJavGWPHGIBg\nxV9PDXVxW3SLGN6HT5wOiC5SeHj+Oa5tuziGAS/iIFbAbnUAqZkJk1GQbDX5\nE88xy28l1nZ867UtG1OmGxPLMrh20g/k7OX4ZXQflqp58keHW9cJ++r6pj/b\nq9R1D0bYqRBq3onleHVq05ErmPAlb7XneDhSPbVjwh6k+2ADDKku1TVAT//k\nzsz9oLxxcTJsCRO9C06IRkIelTl35ieTZ/21BM4FCfLGUYAKuH5zYWs86UEe\nfi1dp5PtRwoE/BHDqghxBfBMe1cXHFpp3M7vWAa4IkqHiYMIAHi27xv1FQim\nGwjreF5NNWrdEyyXbw390PNPVzHD8jtHKUnhCCjCubBZCHraCTlNNN48A7Q8\nU9Fl1qQZmkUN/8imbzd+MQHp8r42HmXYkQ+gKtGGUi6EFg08oM7ErlTw7CKk\n8pOu\r\n=lZak\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"48b5177c8138d194ef371d303dd3b6d6620bbcaa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-16T13:20:52.135Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.1.0","@balena/jellyfish-queue":"^1.0.222","@balena/jellyfish-worker":"^7.0.42","@balena/jellyfish-environment":"^4.3.16","@balena/jellyfish-plugin-base":"^2.1.196"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.38_1626441797418_0.8364522663057179","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.39-renovate-internal-patch-0708e2cc588256b5e861b30b34cc9a27d1171a23":{"name":"@balena/jellyfish-test-harness","version":"6.0.39-renovate-internal-patch-0708e2cc588256b5e861b30b34cc9a27d1171a23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.39-renovate-internal-patch-0708e2cc588256b5e861b30b34cc9a27d1171a23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"46e6b4cf286f26a4b640d2a63333b4c5df5e3e0f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.39-renovate-internal-patch-0708e2cc588256b5e861b30b34cc9a27d1171a23.tgz","fileCount":24,"integrity":"sha512-54aJuoNJdG9/HuT73qMLfVL5P3UTTsd77nQIRKXDzmc9nPeIkGG7flikL+dYk78BazvMA+6P+hLi2rRQyVMZFg==","signatures":[{"sig":"MEUCIGUZWOphCoORyZKp8AJEuUtSQRK5HGrvdywBeAC04rVkAiEAiQ4hjPxxaXjdzEuxRCRCDbxT7mKJnPSDHNNjvgJKYe0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130334,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8kAVCRA9TVsSAnZWagAA1NgP/2ZaeeosDBkJ7TWg0MxT\nh9ERKcuHJjyfWQUPoU/CG/i4NogkT9Ov9Z9N8FpPDBAzlgxV6IuSP3JUq7pe\nx2PuxMkoiaBBj4AYnqH1Dbsf4qT9dSPfOMzQyWE6eEUsTsJhbABdJPCP2iTg\notCvofFasdgXbCKrboaUnceEg6hT1/WJqwfxTIqfUlpw04HkiDvXAS9AFKTs\nZb88FZdkpCGE4HtaXFfwGBY7gLvP6BaB8R4RphUwh1HSiY9f3rkvpFaa8WDd\neMlSCzm9kV3+DBXmtxGfdF+wgFtLR5ioSy+b49ALnxzggbPFiQswJ3Nduu/J\n/e3l/nYBObwA5M+v7cX2U+MQAiGUPnGHQ+NQBH6PIjbYu+WqqMCPuQT251QA\nVD31Suh5yH2NFgPEpcr1oHB40u2vD/sW+0Qo9fIiqcx7WeKweRF9d+V6mIi6\nvzxzrKbc4cJrE0P+HYnM/KA8ksIYS5EycTeCjt0mkSPVACRcHiLkBtV1DXb5\ng0wf5n/+21mO5oNRS0szz0QY3yNg/7HNcsyxwXX9c2AtgR4MisiQnQwZ7TqB\nbHLrKZWWwSZ9i7Co/jNVuOJerqNTUHZC8ytvaE7YWjL8acRioRIntNr8NX+Q\nRHbU98m/fI81aI3ezj+soOf31TfXl97I2jc42lYXn1ZlDcBz4SQaFuvUJ5wv\nXJYi\r\n=Dos8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0708e2cc588256b5e861b30b34cc9a27d1171a23","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T02:23:51.449Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.223","@balena/jellyfish-worker":"^7.0.44","@balena/jellyfish-environment":"^4.3.17","@balena/jellyfish-plugin-base":"^2.1.197"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.39-renovate-internal-patch-0708e2cc588256b5e861b30b34cc9a27d1171a23_1626488853395_0.5670937425867013","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.39":{"name":"@balena/jellyfish-test-harness","version":"6.0.39","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.39","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a5744b8a6203bfb75203fc98e3711b8e95e14d66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.39.tgz","fileCount":24,"integrity":"sha512-3SJxvv36Zg2jfBxZdm5zQ0c5icmiwgmZ1PQbcBKQ2uupKSqmuXem4QjeXUA+gbGP4LwnI0M56WDxS8slDgRFUA==","signatures":[{"sig":"MEYCIQDU7GnjSEJfgavNOA3s8J8rCigwNYC2op7lsV8vSuHGRAIhALpJhh0Ohz/9Lb14/yHq2h3GLkfU52ykKLSVOZWByFqm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130269,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8kDwCRA9TVsSAnZWagAAChQQAJxThd5raRGJ3KejIkl/\n9fIl88gOa9A2E+j5cntICnUgJhksFsIBJ9Hx/lmgdUUHHlcKLyq/SfCxoLgn\n4ndRLJCW7ghAkTGRlgoCEYIM7diqVckP0jTwyDEfyjbZWig7cFE6a1J6pNt2\n/L7C6P3CgsXrj5/EHPMDrvVXY2YdtJ/bIRnXTUy30d18FYKL+ksekn5HneaJ\nCAzTKAEe1MZYwixqGVcGVd9Jy9cd9ecpB9/N1H4UUlK1FF8Hq5wqye9i6xiQ\nwpgT8uZmrK9kHvmdQ9GkBwqeQISdF2edFkyLPe5isf8BGIkEgSuSsKtjUVUi\nevfsfLzEh0/fXpikMJ+h9kJVJlSVu3o28MFviBOm72xj52tRQQ4eHPhbzcjo\nPQDl9pAFamI8hdX/ka/fsDAI1WdsshwsM8uN1jMJ/Md1TPm2kIRQL17V/zGZ\niatA+pEEbWJxgNUk52WzZRTezjk8Rd6EmLM6/i8DEv93Zmz2REW7ZK7xzxWP\nvkWeZkDpURPR4IsDqOhbthLK+NNXM4GuuqAVqWbybUKYQbc6h17hKto0IvTZ\n5Xtbfa5d7XYPrqvznHFilWcpmUawo6E6lJLt0IdQqPPB87s5qeNSutwwgTjg\n+55d+014lrv/M3QSRX3/XrQoVzCLw30VqGlPR/xqcwcKEV9fTu3GNU8YHGaV\nETKh\r\n=pIv4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a0a57f598dab1bfc87dd717375ceae19b7442f7a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T02:29:22.148Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.223","@balena/jellyfish-worker":"^7.0.44","@balena/jellyfish-environment":"^4.3.17","@balena/jellyfish-plugin-base":"^2.1.197"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.3","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.0","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.39_1626489072074_0.15967956544459438","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.40-renovate-external-non-major-d69ffde543ff89eb17f9707b28a5c01cbab1b59d":{"name":"@balena/jellyfish-test-harness","version":"6.0.40-renovate-external-non-major-d69ffde543ff89eb17f9707b28a5c01cbab1b59d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.40-renovate-external-non-major-d69ffde543ff89eb17f9707b28a5c01cbab1b59d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d0504c1b77773bbf9f6c73dce933c265ef561bf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.40-renovate-external-non-major-d69ffde543ff89eb17f9707b28a5c01cbab1b59d.tgz","fileCount":24,"integrity":"sha512-s0agIMgX538Y801Ch5kj/jlEn9fW9FJjtrzBpiQfJ0Auvp729wAjp6Ly6DUry4h+WR4hiMJh6xxgSlpfCNvo7g==","signatures":[{"sig":"MEUCIQCFza4Mr/ET57/GTOECFUYeT0zgTsrJ/LmCGFsKiYML7AIgX5JhidcEjjJhorZyT7G2PoFI67EnSMn5LuWqZF4igPQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130416,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8kNpCRA9TVsSAnZWagAAlpQP/ixiS3XOAZVOLqf7iaph\nd0kuPr9uIViNMIIl3Zed5qbnGqWr4rV9yQdvF/7PfvWkZLS30f8W1trunjMU\nbCdAdi4PHASovpabjEXcEJKJ6Bp2eIrfNICIJ48HvaI+RdKIEB3eNXOATxKT\np+GV1ZJnpDSGDPrQHBnxqt/toHQR2m/dY0KKY7lrAHsZte7z9EljJ9BNdG2O\nQKBxCUoZp+C4OLlBFivjTpyQBHri716wwOkYHIjbgf/p+yuSDVJRG4hp2Wy2\nPI+i3gNu6XsZInGAlQANKfRggvQFLGKNJmzdpeiNB5JEDMSSyoJKcvbUepej\neJ+LhFhIqPLoF4SZbztw1k46QhivGSqIziyluJsYOakezirdgT0P+X3mhZYO\nNCO5XCBjBFcQ8OFlsykzaGmF6twunZ8m0MkqHnYbg4Q/jneMxbPi7gTJi00F\nLGjud8gXo1nIjMpB5V5ZmDlE9/Y5UXYzA9cxFdoQR4mgC3ohiXvJKKvo/JKP\nQ0tAn2Lz7IYgDboifNcrfw9DakN12hQCWiWQQ9FMtjT3U+bMIsnAR7rGg5Ku\nnpNqRVHJbES5r+QJt2muIHbTBkxPHqdnpR53zdGyBcpQfktIyUM4K0yapf5P\nkbpJ/NJuVFkVVW3XWtrXf2F9DdmT9Iv0OV2HHDWGiaHYOgnOFtG9GH8A0kRs\n78AW\r\n=EEp+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d69ffde543ff89eb17f9707b28a5c01cbab1b59d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T02:39:12.749Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.223","@balena/jellyfish-worker":"^7.0.44","@balena/jellyfish-environment":"^4.3.17","@balena/jellyfish-plugin-base":"^2.1.197"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.40-renovate-external-non-major-d69ffde543ff89eb17f9707b28a5c01cbab1b59d_1626489705442_0.31367665786310983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.40":{"name":"@balena/jellyfish-test-harness","version":"6.0.40","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.40","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a8f8e96b1c1cbea059dad3fb996343dfb56c3365","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.40.tgz","fileCount":24,"integrity":"sha512-NGuvVPc48OLLZ9VUp+yJPLzzNu3AGQXHO1miC7+8t+RIvw/LE6WBSNEI3SI5b7x3AOinkVbu/WECx8ngx1uf3g==","signatures":[{"sig":"MEUCIFG+W9zYBHeK1ZPhYOtVEU7XdC7T6ECggag99jciU0IQAiEAiCA5LGel37/VqzfAPHGfKAmlO0xa9CcvHQUQhNnrx8A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130347,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8kQMCRA9TVsSAnZWagAA1k8P+wWliqU5RyC785CgXzTS\nupyS45R+24kLeVVUGHudjsLuDMDMy6j5L3ujDP5eJ2QDHOnTs1+A9WR83UAE\nOz/xjR/T3aVYhrzCyPTR5KIY2DAV85z7zC6JWsKu6IJc6s8dv+zpFqw/9CaL\nHfLurmlnMczF6I9OuS47C2gg63Kjyzmf88rSA6dGTbgsR1zjBLf88DmfkMa7\nDwoKHpyIzp8/GYXtHYxQ23rzFaEYPpT+3Hq8hPSDmYci8sbu9gEYwUOYE7zN\np92pAOQ0IFrQj64ytFsNA2q7+10OROsgc1+9yhZwzNLTeKgEtnaVWNsIg/ie\nI+T9cQ38oSTkQjdxtMCzUoG80Dq72yh3qdyciyAG8kysHHiv8UJFH/iq1Gd9\nO0Cb/FyNjvD53JXMUx6ZswJmTI3CbXNs+vTjqnFB2TXFkvynlqmikWRCIkgP\njW8IGq/qckGYqrI03D5R/qASlq9glm6sZZ7bKvGfO/5GMeQ9YveXc85fg6EC\nerSRHXRpR7Yb88uyybvQ+4rj4O/tA1/uJQRSXdfB0+dj+wPouVp4QWwByaKt\nTEHhM7+hF7uBL1GA4zxElg7HbR7az7C82uYHIctA4lETDUonhogTi9/0RJFd\nZZXXurWeTd3EjkkIdG5IbSpajfok0DhhsjX4g1WtksZ1j20PJLS2bOh37gdc\n+bng\r\n=+KMs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ecc4c76ec6fb095b6c6d9a3f5640cae8f9148e84","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T02:42:38.957Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.8","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.223","@balena/jellyfish-worker":"^7.0.44","@balena/jellyfish-environment":"^4.3.17","@balena/jellyfish-plugin-base":"^2.1.197"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.10","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.40_1626489867920_0.02036613684597488","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.41-renovate-internal-patch-28247f934fbffcc5d3b75778f8dc8bca67186e88":{"name":"@balena/jellyfish-test-harness","version":"6.0.41-renovate-internal-patch-28247f934fbffcc5d3b75778f8dc8bca67186e88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.41-renovate-internal-patch-28247f934fbffcc5d3b75778f8dc8bca67186e88","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d1d9605acf5754fb3b2bb1b1522f9440501028a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.41-renovate-internal-patch-28247f934fbffcc5d3b75778f8dc8bca67186e88.tgz","fileCount":24,"integrity":"sha512-ngywQCzM5Om5ufz13oWp1OfCo71wDjw7fNc0fOTRNnJQqJYXYWU31CRNw42QSNCv30SWZw31W51yoJ4xDR6Yeg==","signatures":[{"sig":"MEQCIHKoYo0KhJLIXOn7+DitQn+ZUGX3psdFcma1vgGoxFp0AiBIO0plqJx7RjWeFThTcrUe2i+KL/cFFDcM5tq5YROaDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8n2nCRA9TVsSAnZWagAAS5EP/30SVwZgwPUVSPdvTWKq\neKNlFiI7lx0yCdf0m6jW4qY+6stIkNyq6Mj/+vL1F3l6CxK+8lQVIHhYdNx7\nljXN9h5pE3XA1GEegMv++gErIsYQB/uiu/zCKzJj3WPbknktXyUyGCvcJHu9\nMwIankn7cqm673xEkvy3UUUqLPKgL4afQ/Yg03E6aXBSEZpjECJEYr1iAVKx\n8QHUOvhyS9GwZMoSqxq5Ab/DaiwwknMOhWk2BU1KbL4aMQlga1bJxlQeuJYW\nrel70s3E4lQYwuS7oNamBk7eMHBJBJkHSz8ERxGA6AiB6CbdBD4STu/vgbLH\nEKiS9YFnaMIaqb9qQmtlJnRo10b8jd4eS6VniUxQsnIf7bDj6Xmgm+ZvmVn7\nnPr5d2WOU2s09twSDqJlTp/jcd6D32IjQtpNtA53n2wKb+rX9SdZz7ecu35F\nXd06B9MTIvaf8vxOmL1oImplQ9t9vAWDS89nNXtg6CWCOh19Cn0NMWefyorv\nNYbJDUsLnYyCINAb56NRRak/pZi+ZP+k1UAyMyIep3jE826gJWH7uEgOC7DT\ntRK7NWN5eyn5kvkMUp7x/QcSc/313+s1oac18NhNKUk3g1U5e5yql+9+DILl\nKAtRoH6kuvkejII/OW5QIxTLC23IqlF48I7wDxgA9VI0FsZQdzfLFVo+fZhv\nyzUr\r\n=h3mw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"28247f934fbffcc5d3b75778f8dc8bca67186e88","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T06:47:12.519Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.225","@balena/jellyfish-worker":"^7.0.45","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.202"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.41-renovate-internal-patch-28247f934fbffcc5d3b75778f8dc8bca67186e88_1626504615011_0.20052556193630844","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.41-renovate-internal-patch-ab3d1a7428715b6e1cd60aec3676633bd66dfe7f":{"name":"@balena/jellyfish-test-harness","version":"6.0.41-renovate-internal-patch-ab3d1a7428715b6e1cd60aec3676633bd66dfe7f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.41-renovate-internal-patch-ab3d1a7428715b6e1cd60aec3676633bd66dfe7f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d62f0812595a939610f5df91eb6a25cc0b86794","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.41-renovate-internal-patch-ab3d1a7428715b6e1cd60aec3676633bd66dfe7f.tgz","fileCount":24,"integrity":"sha512-XCWKFn8cKyOTd153w99SJNCqs7tUm/A3m8D33E9kZyPYinlBF6aeOQkqOfvAHl4rM2cegBwwt3r9TvQNSZtitA==","signatures":[{"sig":"MEUCIEDvLRYa/g4aQIVPo4ZnpUilN7he5HOhtUGpytN+RxRhAiEAtajwNEl6B6FTEngrSnxFHgY/ESmbaCE9vFRUJSDdkV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130486,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8n5yCRA9TVsSAnZWagAAegUP/RmXErNBxhYtthWw7XoG\n0oZwx/+tR2l83BfPBPcih8sp3DzOEV0t8UfxzEy/WzC69ioRk5BP0cpv3Jf2\nWLABYxAsrlyAlmDsQkf3CP1yJcVuFtlpm+C8ozMyrvZnGPXnHGuyCgQY9saE\ntl0aQvnilSWw9VXOllGOhdX3NwxnNiGYJqORwWNghvfYjXuvix4n1cuuhjWy\n0iUBLDKzIHuxrQnFVi2mi2ODh4BY6uR5QBsHA3iFr27j7l63S/qO+P+xfFj2\n/aaoB87WhkFUjezBsNCKqtdVD+67aeqx0Ort+lxyi85FpPCuxJqbxndkaiKI\nP6trfPIYRsiifg5PTUcn9ALsgdk38e/UQiKM/DaNSn7OZV0xI9iJZveIEoVk\nWFtj84z41BZ/lNcJZkBCeUPnW//8WBxnEOy8Lk+qWoMu9SjyYlHW9IpABFug\nTqF/o/WXOjYDufP/7waz3oK3xx0jFryT4+xBMbL126cwBDKacE18qmqTotN/\n3C3XB31a8M1DjFXMWN5INqCn/FDIbScXr30ddkHWYr8KB3Tmm1MHQemFhdN8\nmxyo2t6BX22V/tJ72weWJWnn+cGIJyLMYZCfhdA8P9EttlNWS7Qlw21iZNN0\nnrL3RVx13h3zA0jplfHXAc6RJtlpTzBGfrEbjrhIy7LYWCrcw4TPyDriOzBW\ndLqE\r\n=qUJh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab3d1a7428715b6e1cd60aec3676633bd66dfe7f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T06:50:27.459Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.225","@balena/jellyfish-worker":"^7.0.45","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.41-renovate-internal-patch-ab3d1a7428715b6e1cd60aec3676633bd66dfe7f_1626504818369_0.8254912086249153","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.41":{"name":"@balena/jellyfish-test-harness","version":"6.0.41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.41","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b487238fbd7ee41a403363feddc8136782a91f92","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.41.tgz","fileCount":24,"integrity":"sha512-QIzJNBh3VMUEscIYM39AK1f7DhTnlzuZR7AuLNKEI5d4bf18QAwo11Icnr7AKrGrRI3QxDri19uP0xYfSnglWA==","signatures":[{"sig":"MEQCIAibKiXmGNTCuupUJ9bzZ1ZEHqykNrgF997d5p38lQ1qAiBNGD9/FdoJFkPqWkbybWCuthO0Ssspk5c5S05Iyob7RQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8n9VCRA9TVsSAnZWagAAcGEP/RgPlpzkUTt78H7bO6H1\nUQbQCMW2T6NKyOhtCufDMbsjYPjYYfN+mY4pWDLaCDGiOyCLQGXcD8jnXsko\nPBVMnBwMX620/v/VzzbYURTRjmZ4oMVXrKbo3wl5P4MTu4Jc3xdAE7HyDf8K\nhmiY2878kIucQBkWrE82U0fV4QwNa4+Hf1iECWr2dPsTWuNvxExLdghqjK3O\n1101B+I5N4DnDiuX2bUb7pQYsytpFiPB7guSCqmVuXzOvGKWAxn7H5c/DuG+\nW40Kjxo6HuF2O1ZkKUzKjlEHSd6vssZFH3nvP3jZJGFPSRp1+45Xf+LRA4I2\nc8q8nqgeT2MGKOIkDTFZcf6qzAP18xWEbYokyLZyk/gewZuoTXkPYNKWumLh\nF6bm982MqvVtP+1OnBTFh55kRpo1wkSNcsZy8oZ9Zgp7izuylIfIPi1RnzaJ\nx7w+xwBxMXsDAn3wUFeUEyVCYqGZg1KmmYLGCMfRDmnqctCgkU1o6BkcaFu7\nb3dPjRGE3lGIWDdKko2Bs7Hq65QkFcfUxzp/AnCes8Rei7GJ5LJwjPoDad9s\nHUTwok1ggy7n8+WijdhYK0697pf2fYMUiNzkwChVLnt2wCy8qUHTo+qx1RYd\n4QT66DzU9EIaDajzgz+yXLeBgD2jJB0jyDPyLXUg9kppLaNRmEtWHYKJZYTm\nKfzi\r\n=TCUh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cd411eaecf6b1a47a9d9001e60dcea9ff39bb03e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T06:55:32.341Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.225","@balena/jellyfish-worker":"^7.0.45","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.41_1626505045074_0.8751959124640607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.42-renovate-internal-patch-07961a573ab2e9417a659ba18f1910154f17a266":{"name":"@balena/jellyfish-test-harness","version":"6.0.42-renovate-internal-patch-07961a573ab2e9417a659ba18f1910154f17a266","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.42-renovate-internal-patch-07961a573ab2e9417a659ba18f1910154f17a266","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"349c959a8f3528d79a6753cef61e4d6246786b83","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.42-renovate-internal-patch-07961a573ab2e9417a659ba18f1910154f17a266.tgz","fileCount":24,"integrity":"sha512-xdO0z7+p0ewyylD1qwKA+rHKabULyA8n2biq0HJBKOxEYZ8Fy7YiR5GKymdmyV9A3NsiuEJgb8Y2L6eml/WQTg==","signatures":[{"sig":"MEQCIHJGvyZoytCPyjUX4VSDABHVLUy0PjuaC3OCG96YxthxAiA7tbIUuQCowDKhLL1ZqNaMQ2sVMbxdhoIkEzjdV6BDYg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130560,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8pZRCRA9TVsSAnZWagAAk4YP/iqXJjFaB94tFV7wb5Pu\n/HMLWoMwxwOI2koCJLdJLppoIZayuQ4soZNb6CP58Jiri7t9toY6p91YL1vl\nv6eJfxlS2sG91QVzm5dNP9QygWMmZ2JnxV6H9KQzlmXIQVZ3YAGZqPKL1zrf\n2BI1Aw9x1Ekcfu9LEC8z28nPFX5JxMCALwB2mkJBLI06MlIm1SxfV8HRbKB9\nDPGLkVkh531JXXAPiH+hu6ttGvGzHXC++a29JurcxTI+AJr6qq6yoQ8APeVm\nxz6ujgewUXdfpt/VeJAZr2FaGy2RmSMML/PBwNzUU/NH03APB3P7qMyvY1Ma\nEYb88pn7KjaNio812THd23iX84dYUyDInd89BVSo5zDIvsngDOqsG7i8ncGr\nL4brbKxxN76L4b5Y5IcStWKPhZiHqMJ7l1GRECYytC3rKXsQDqGmh2sD6w3h\n/jaVUUfxy9ezOv/zTz5co/EPP1XLzVhsxPQHccsw8z/DifENyvBfi0G/uV6K\nV7z4v5olS56MQ/QZZ1uEZUvylcJH1n8m0Ok7tB3vI09Kdn9EngvVjwYfHLLq\nufR+QBfq/g+2okDXaWQRinDOd+sEAxfIt5iz3CCjevkkySJ84xM5/RKp6fMa\nw1Cx9BeBwlobbD+7QWzU0aEqE85YAj1bn+i85re8GltjnWDjrpE4Q4Dkc14G\nUPIr\r\n=fy5L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"07961a573ab2e9417a659ba18f1910154f17a266","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T08:32:22.262Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"^7.0.46","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.42-renovate-internal-patch-07961a573ab2e9417a659ba18f1910154f17a266_1626510929712_0.5604289184629772","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.42":{"name":"@balena/jellyfish-test-harness","version":"6.0.42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e6b70c2564ba9c4b48890e44f37d068975258e0d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.42.tgz","fileCount":24,"integrity":"sha512-MLzSwHji+JxK2QjwRWAFsQClAZ5RLcGq81HGE2xG8AiP3F/zKg37VzPAyqUUq3wwbyHe3SIl3e2S/l3aisOK/Q==","signatures":[{"sig":"MEUCIFsJ3p9Z1dX+RLMMfXGZx7mVzgQSAodh1i+7GcXHdKFTAiEAtfQHBu1qurU5uDzf9YTuyR1cfAXPUeKTBjqiYN19Pxk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130495,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg8pcfCRA9TVsSAnZWagAAi4EP/2XbojL88Yx2Oe0D12T3\nGJGHZrjcR3l5hyCnzkPnwQ96U9GlOnBTQoJgvtcqDx71GM4sAy+9MKi5gMZ1\n/uiobJg6t2vRprGm/ZYm0ljEIYNDNq1w1GnkpmI4aSpOYZGDIhN+sHjccQZz\n/TYn2u/VbLOXidTJK6bgooRYFfq8DnJ4KFi10o6zTpVFoTBL4HgyU9bYbp36\ngMqS6yc3TfOm/Y16nZFEmwD/ibzC2PZeddMYcRCB4DgV5TKEe5gIAh+E827S\n7EMnLLOoO7AhVb1cE1aBBhejPP8FFck+d9jUiLq1Ji0dWAKWLNmdT9RS5AFu\nc4P7/lLcgKyINRdy4Tz2xh/rS1qcXkWwBMd1TZYPliDqvLLJY2gthBgQAd0C\np45T/HRQzilMHrPv43gq7np1L6XDi29xIgDaPzII1W5IYZXQ7lDtsPfpGnH8\n0NlJjZ6JtWQ/PbZXk7mz5S60lBf24EZbhTjtnxiHZ6DDVyARc9I1AXVRUGK3\nFAe1dmEmdg7hdQ4hOzx1aXqcpFdCoethwaD7BDCuVHDu77/vFBtRdj2TG4Fn\nkFJ/gYgMwnn7PVcSKpc6cz/FgzTUaoQBX3+x2uKosECQLXWvcbi19PCzPpeA\n9tVUj1CHLCA0lrvtuhlLaMPHD9zS5Wuh1PjNg59k3ADwVChI3ZfwpAFkxaMt\n9Mcg\r\n=xJe/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e240bd4a3dbe5fc456fa3c6793696c9060d02f45","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-17T08:37:11.949Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"^7.0.46","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.42_1626511135322_0.65000341576545","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.43-renovate-internal-patch-ae59c017167bdfb8be23f759aeb8233154be59f2":{"name":"@balena/jellyfish-test-harness","version":"6.0.43-renovate-internal-patch-ae59c017167bdfb8be23f759aeb8233154be59f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.43-renovate-internal-patch-ae59c017167bdfb8be23f759aeb8233154be59f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9819073bd2156ac05dde4c070bf7df3474803804","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.43-renovate-internal-patch-ae59c017167bdfb8be23f759aeb8233154be59f2.tgz","fileCount":24,"integrity":"sha512-S5kPJYo7p0Gf9ZNTQukhTyZd+yYFo88C/f7juyBBQb17BVfTm0g0og6bCkVe2OzQljSHjCgLUwcGxYa4Unr1HQ==","signatures":[{"sig":"MEQCIHJPnQC+hAutlZ6BmtY/o7J00ctZD0fgLSDqLNYfC28CAiBAdOVkHG9IPjhPZ0Mwyp12LgLYxkWOi2xiNFCjdyI7KA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9WqsCRA9TVsSAnZWagAA80kP/02TqQRI6h7/FFKOohEx\nmdWTVZ9TrtVoeHAAaHFd7enURgzZGBfuhZzvHBm6N6wvkZXoKFQd5RweInMr\nRbcERuqssa6Z7+J/sAwLUjb8qrz4tuMuI1mXVyEw2AdQZqqtWtGfyT3IxQgP\nFxmWY5lQM2rWgiUimO0h9/tduMeAYtOsormwmD/ZHeGwBnvZ/Of21bRIW6R/\nvwq0g3KsUbrlKsKDd/m+11QKquSmTdQNtGyVfvslYX0Uffrz0wtogXObXaCt\nZFFfqB4jO1hjjPb2L5HVNCBZG4D0EYvFDwERWpS6ydISQmLRzfF0cfTkVICH\nTyKVjqK1lTIE71a8ycnmX99P8MaRR3whrwB+/1nbEPyVtOxgtQRNhtK3hN+g\noRXTxCYowItt7mdJsM1Yg88Wp5Vou53Ef3w8ScQYTzrFVK5tfYyDxaf+9QeP\n6Wr2thKK6sZEd4IEZdNdH0YQP0wMipKlypEyK4l7uq9z2Q76SgUqO4Mc89XH\n/iRESe6kCnynZktB8sPhgD/AKcnr7EKvZPFD5AJFbzgazg2j/7B2PPcTz6jJ\nqPK5BQbFEEMOzZnPC2P50wQNOn4aLy2iuJfIcOU0KUF08x+/+k9cA9wRs7KO\njie5lwWy0j1ewdAMif17cFbAendM2f2XXfw8O4Wxj6757KhnvWDyAUEo6iX5\nEbRC\r\n=2yvP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ae59c017167bdfb8be23f759aeb8233154be59f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-19T12:02:24.373Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"^7.0.47","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.43-renovate-internal-patch-ae59c017167bdfb8be23f759aeb8233154be59f2_1626696364200_0.29186478551613515","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.43":{"name":"@balena/jellyfish-test-harness","version":"6.0.43","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.43","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c20c4155e7a6e57d899784ad83e5cd433df7732b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.43.tgz","fileCount":24,"integrity":"sha512-qYgHDo2u/4Ix8T6a9ozobZIuHpbKZGQ8Xo8eIRgDg3UQ9CymKbCfx+i2yADiIU+kCuQkuk4XzxPSwXfp5eJjnA==","signatures":[{"sig":"MEUCIQD0Fx+4TRwh5+nrM8fCD66Iwcis2hzjA0lBT9AL8xTC5wIgYqeoHI/EMNFR4C5wCZIeQpSxytc7qhBTim+LnsRvdm0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130601,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg9WttCRA9TVsSAnZWagAAbEkP/2q6nSK7D98JwsN+fV2Q\noNyDyzC4kKoR6b/v+kEUKkvho0IR2al7lHtkmIWfZJxhwrAsojrfbyqds7sN\n5aPTSoBzVv1Y7Fg/qbASVy1W2klk9qeVLI9zsERDzj4gdemYUTPiTu4vGzmZ\nGsvlIbYFhb7AoXhFkURMH+YQv2yaWVG8AFvG+WrKJeMxQavPFLaXNA5uwCWW\nXpxCVf5i9wbWVk9LB0H+BPOrXIsR3eeSvnQYWGoyVLzHuTlDcFJy19onAaEO\n0MQ0r5dORrCTHvgfih380leECROxikteCXH4Cnirth/YIl3kQhsUp68M2cmZ\nw0Q0vXMxE5ixrkQNVa0//MzSn3MUzsj+crGoL0hRmkhTfGVXC0i1K8/+dWTh\nBwi8oLyBBIodDlT0zCgsmAWMbAIr1sbAdF2bpVH8XMSTlrRqs0QuGgppSKf4\ngrDjEwY92ePhIPL6WqJY+bUfTNnDGaTC/756qpgMlyFZn37lM/gU6HAJiiTh\nstE/S+t4G2XhZUneQVCRsptciemXpPhbjjRDudVM+jBFbW2NDRulMQYYMGM8\n9aXZkg3L/OaEDllTvreLRUkRx8DEcL9i3lvQkhZEOf1HdVPdWDEeuJeN4FXd\n3V+E9VNEMH7FCN1nHUws7eB0P+cKgDcvKZig9FCV1I1N/vWHt+UOeR1/+2KQ\nTeyE\r\n=wxEv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"58b362378a5322808009a84c048d0e97f1e26175","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-19T12:07:05.695Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"^7.0.47","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.43_1626696557461_0.3022313874799085","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.0-jellyscript-v5-9fbdc4e3a78aa6023dc0667cf156d86911d25358":{"name":"@balena/jellyfish-test-harness","version":"7.0.0-jellyscript-v5-9fbdc4e3a78aa6023dc0667cf156d86911d25358","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.0-jellyscript-v5-9fbdc4e3a78aa6023dc0667cf156d86911d25358","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b558dab6b50acce2e586ce718c4ec5a54302c62f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.0-jellyscript-v5-9fbdc4e3a78aa6023dc0667cf156d86911d25358.tgz","fileCount":24,"integrity":"sha512-aNpecrcSJJGuxwzCAWzT5MD/LJheQXxHJI6uusXLqJ/OlLgPhjIGt06dI+F7eKCNSCfLZUpHYo15WhXFgd5AHA==","signatures":[{"sig":"MEUCIQCaBxTsLqrQE2xLeKxCCyPewpNFpwgJoR5oyBN4wlXyYwIgM5oG8Qz2K1E+CGJGF8qg5EXoVCheCzCGwlqjGlOlT+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130799,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/mVoCRA9TVsSAnZWagAAUMcP/j0jjEBVbXdWlg8sxjt7\n6bJI/pVyojL2H6scMKp0oPW3vyZiFALEahhWASJANr0SR9z7sW3bU5XsiwGG\nnk0XXOTIfVwcKKAk3HbBWvOndHR9C6Man056rKbnK0pBjPT4W5P40RiX3o1T\nPeV6yYktS4hVfXBjMCAqTgKpLfVfZacExMg6Lnsq65hwjm6YGJ6goFKXq3Ic\nAz1ub00pmFowBRy84bqq1j87eQ6KvMQWwfuixMDnPw4G5v2Bw+BA1UO/AO4L\ndvJR9Aoyfzm7ijALbmFAugexb9XShCr7kAwZHcv+PYE7O/B2KIkqhJxcPlbm\nedZwQ9efZ7WuxneXiZwybYPcopt6CIszCgQEMtyrhWriEn8+UwwRNNV5bReN\nRJP6Xj14K1Dpsw/VcnTqK+BalZY7qRmZqjgYmN2vf5Zr3sA/Zzfi7cZ8dFr0\nZxpbkuuSiJKP3DJ38TzT7MZ4gUm6AxVTJhF0JA2q8bKPz5HHdNssRi2j7sga\n+bwR3Ty6ycf42ggUmchWNEi1HEDR5OqCW2inyIHeP2x7BI6MSzh0vZwp+V0a\nb4heCj8N+hv2KysdiNGGCeY/j8DSH6US++9OF5gOUKdaXWu2wtSCfJO8DqqV\nG/gsHQMNVTxhzcet7xa/UQdpZva6rC6EfyTVTpcvVlUMJkw0p6CdJaXVO5mK\nTkc4\r\n=5RQT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9fbdc4e3a78aa6023dc0667cf156d86911d25358","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-26T07:31:11.672Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"9.0.0-jellyscript-v5-602f6880345535965e77b19f13a48fa87a7765fc","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.0-jellyscript-v5-9fbdc4e3a78aa6023dc0667cf156d86911d25358_1627284840119_0.2525779638236936","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.44-jellyscript-v5-5d6918fa54fc78f1e8203caf078cabddffaf753e":{"name":"@balena/jellyfish-test-harness","version":"6.0.44-jellyscript-v5-5d6918fa54fc78f1e8203caf078cabddffaf753e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.44-jellyscript-v5-5d6918fa54fc78f1e8203caf078cabddffaf753e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"558a10ebb944e19bdfcc4d26fef4834f78544b0f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.44-jellyscript-v5-5d6918fa54fc78f1e8203caf078cabddffaf753e.tgz","fileCount":24,"integrity":"sha512-fNo6oFQNWkOlunTyGHZzUVAsMutr54WRN1k2R6LQKXELvsUXn3fMc7REC2ajLJNqz/+COZq1I9f1/Jo89+QitQ==","signatures":[{"sig":"MEQCIAjLesQMV4mqHN+/jx//93aaNfd/oWdbgV1frVot+6nUAiAOxOO11gCzYpq8kduEBgTpLvh/ua6nRYuNKtmrkUbiJA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/3MrCRA9TVsSAnZWagAAghQP/R/1pYrlCxAx1MJmL7ZU\nPLh+MqRIjGNTWtcGhnsEVNqFMh1WHTlLO4Fadm+tR2IpsFOx6EHq1+LG25Se\nGAWCcPYr3wd4WyB8mrJw2fsE3zWS+wPWKC/kUA2zEDQGAQKjAe7ptSw+qn2m\n8bD2Sg7Uu2YzG5OD+sDUbKZFDpK0bHvLJsFMGR9I7Lm9naCKfY4A9Ck3woa6\n3xaN+Tonz+fKjouqecLhlbSEvYmBntYU+DOxcS9i8Go4+FhR83KXDI7jcr28\nrv9Qqtx/Xxfxmun8UBBSg2CNl2rCRGmJNC0lDH3UPoDv7a77FboJ8mbPaBYV\nwH1C2cDSZ3L7jQ/lOAiF/HksDePGHrIRBdgxTn94Ec5gQWv5Urr/JsaaWFuG\nkVYQbRpViybKVU/5unnJ3r9rDcG0jApUm1nETz+RjJ4S4IIVULPGCTk6NY9J\nDu34WDOkvO1IOvGi9KNKWdzMFHvPNj2Pqm9N4XAyDGl7x5+ARLzYszgVbpsO\nGxExVuSAoBzbn0mICPz7oqKl2YND0/X+9GelWSDq6O8WbkMj5h9ssrfqzuuP\np6XY+sTgEabUKDH1IB7k7jsanmdftvZE9w64f/bEkurMLwncEvZ3Fzw4QQNv\nhCUR/4Evtks7xw5/nkriScmGC9CO9fuI1WiOnnhfP2RtFWKCyj3iGGBjEADj\nkA4A\r\n=zXbn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5d6918fa54fc78f1e8203caf078cabddffaf753e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-27T02:41:35.132Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"^8.0.6","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.44-jellyscript-v5-5d6918fa54fc78f1e8203caf078cabddffaf753e_1627353899715_0.6878176837008083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.44":{"name":"@balena/jellyfish-test-harness","version":"6.0.44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.44","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e47a4177dc2c4c60cb1a4bc1e77398994506ce9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.44.tgz","fileCount":24,"integrity":"sha512-v+ik28wFpFVz2s9iev7gAZaQkO5Ym7jHKs1qiDW+CXV7pJTq69M5oqSjV5dwLLfHBzf89ggigGf3lYZR3uOsNA==","signatures":[{"sig":"MEUCIF3raibImb5AwgbvltxZewoFn+bRgRDbtJI7eGhYB3tgAiEA0gCT3URSA/cwdLExdMQy6PS61CxxIZ7MHAm3voOxqxg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130684,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/3QgCRA9TVsSAnZWagAAp2QQAID6q8TSl7+Bpm50h1IP\nas9nYRomm2CL6E92XUGaIq1xlq5vKHnrePNNN7+e2aZC+gPsVNbpxyOHb6d6\nkokOqG5e311pufK1T1I2wJdO6QHX2XLl/Y1StQlFcXiIg2vBx+t2wRP06pKp\nDJanPhwXwHdXMB/9lPNZbRNwUatHd2pOIZm/54Ak3j1yNIc/qQh7uVjRjcJU\nVqVPinCb5thTVXAAQjPasOOXPKZvlZa7CXfCd6joz1p84C3wj8CgNIEa8kYp\nddjL1ui9LRaZcxf+nXxXH0nEswQoC0T684sdKZuLgZ8JGcNzr+suU8JYkP2o\n++6yzEj5cwWY5uLZSTRtwO0kARX5JMivVTImDvPX1aO++TbBo7UXxaFoo/oM\n0rYZhRn2EPlr12fc2GiXEl06GqPXNuRRjIBOa+piaz4AKFzx/pPAaeLoQF9Z\n37b3N6BOGkxsSvlIQhqENUoA1J0KjZDUwd9UhBbVY0O9FGv8IzhF8OwV1ncU\nG1yDIJZ0O/2qa5oPVq6c3RD8kK92uqZ2qboqpNR0I7iyWBEGC+Izsjiw8B6R\nQmUAHNpU4sUu6ca9si/kn8E3jsLvZCi5nflW2GCXO3t8vNeQ6ujWXLK3xRs9\n7X17IRxt5MfI8Ij7ywA6OHMmmhwLLL3oNI9BQFJNHKDNwKxrEe47kyj1tYNK\n4QLP\r\n=/ug7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"30b40c393f3abcaebc012caba30828c308b54beb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-27T02:46:51.695Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.9","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.226","@balena/jellyfish-worker":"^8.0.6","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.203"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.5"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.44_1627354143936_0.045627112827534066","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.45-renovate-internal-patch-0596648cee3ac221baa7b608a1b21dac370728da":{"name":"@balena/jellyfish-test-harness","version":"6.0.45-renovate-internal-patch-0596648cee3ac221baa7b608a1b21dac370728da","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.45-renovate-internal-patch-0596648cee3ac221baa7b608a1b21dac370728da","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"87a21b3166108f42ce0dccf2daa275bfe8854f05","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.45-renovate-internal-patch-0596648cee3ac221baa7b608a1b21dac370728da.tgz","fileCount":24,"integrity":"sha512-TthEWi0s8Ow98OyB2Xzhinu0WT7cjSbE/wJZ9Kl54YwJlAcph4Y2HW0qbWO5ZOM/C14bjgNG8ir5AuTGlIEfBg==","signatures":[{"sig":"MEUCIQCyDG4RXN1AKbzPztjfe/RYnDW1gqErFaGJ6nmLB6/4kAIgKa8wAL1WYH+1m6juiF/myH7aR/mOzMCcoOD+IyVhePA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/3TbCRA9TVsSAnZWagAAoK0P/1jaLeqtLIXXf7cRHKcB\nJLNIkAykQSUJWCY9uzt3gXkfdrncdcHCJQVjcgMiBXhFkkwarKVTwZPmKXPR\nigZaR+9Rjc63FiMX3847kV5DcP0+M0bfcJrec+hGu4L3okLqkMEz2iIV3oOM\niEDqGBh3NsXzA9oKXEq054+xK3nY4BnnkmU5H03LpBdYkBleKCYTKmDK4kg1\nF8Er0m/ax10jVRtVYkiqweZ7NCCC9AZlweY0ZTLKnIvLmBWAp1B1eTVgqFCX\niQdsA5FHW5RzUJdL7axIeyX2iyCrPD1S5CLMlLbH09MCyml9hDUHmN4vth9z\njiuVE2dtJ5OjuLLwKyl3zaWA+Kw6f1/y0eWSKF7cZrNraMdycxPxdWR0WXMU\ngQHiK5i5VjUhRiDjzIoTPazNs4pk8Nq/iuixiVzVbiDB8Ly49P8M3YvViTtp\ng5k9hoapDmU6rpnZf/IqVC4JCz2KN13DqJ2V2BltcLcmYYAgvwhcF4+pbeag\nhYLg1jJj62JhftxJoEpcmJ0hdq7kQJ3jkZorc+GLtyZ+kPAs+FFXB2H5DGWi\ny15fA13OYAOxlsSoIcAD9euq2zJgAw0WRfrTCgs0GqsA4gzPJktzbTqGK27E\nqn8jyK/QtHP5ubtDJOkQ5NDGZIjwWzXcrTL9MltXPBQUP7NKOwTiTbVxsjUI\nSfUJ\r\n=HkEK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0596648cee3ac221baa7b608a1b21dac370728da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-27T02:48:28.516Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.6","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.45-renovate-internal-patch-0596648cee3ac221baa7b608a1b21dac370728da_1627354331666_0.46670267192969983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.45":{"name":"@balena/jellyfish-test-harness","version":"6.0.45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.45","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"75e9ded7cde71d1c34180c1b695a4086ce80ae67","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.45.tgz","fileCount":24,"integrity":"sha512-Ww+0a5rtuFwXy/AY5fTgvP+0JUL4nO5WAvChh3CtXI2/PVWbgfT1Tg4jMyBgbxSJD89B/Ly0ZTPu+WfftFuYLw==","signatures":[{"sig":"MEYCIQCAP/9vFerHWm7ZeJQqVRnU5PuGyclCdfw8bM3YEA1PFQIhAN174Xm7WuB1g6gpH2vP3DHCS3OHm7FaVRqROWUH9ZaE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg/3YPCRA9TVsSAnZWagAACq4P+QAA3hn/ZxCbrzh0pxNY\nPkE0FjG4IkToiKAMhFV/mScRRIpfJrMHh7lyBhNXB9+xZOLeTKcOJfdvTFIz\nRXWMyodV87po71bcRKpiidcTlQa3ucT+Dxu04LMaOrsA9qGfYy3siNOJcYu5\nJE07Sp+GxnWz+4VPPZW3adRTQ8hChsH4YWEfrjG0j3big3HEZR6Za9llqT+2\nZXIp0fKd6FlgqBBraOojNmSeOtTx3LWsddOAU3fdCN0PSK+VJ7FV60ps1txM\n1Xtl19HYVPCsfhXqcMedwviu0GzvZLjqsIntLMMKpHowjhjK6DhiaGvz9ttN\no4Adzhb87MK/n5NEp1d+AGstVhQs7VoL1nGZQaLTQUdkZji50Wqabnay3eCX\npg4WZ7qGlgK+Pze+GO/COPQJEP1E/70DvG2ojnMw7sTipqJDyDD66qWla7E3\n+SqWDeuhfwOG16SFHdoz9K9sdkTKznNk1Yssgotw2tHxKfEf4TVnSiILVR4B\nyCXB0ldTe6TlCmNAJ6571os5FnCW35JqX1QLucGKVobgpvCc+yUh5zdYOC5l\n3fSeS75empJMCml+4nJKog5oWm11DusaiVHM9QTRdZBeQB195m0bEyWbtTVG\n+ebYxtJaGMVAXeEXdPBCk4NuktpvCpf6/2D07jU8l2HAX8cG25NlwQXovXNS\naurD\r\n=UQu3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aaf11e117977129b40621735137ac05e3aea419b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-27T02:55:00.826Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.6","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.45_1627354639001_0.5175254257612163","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.46-jellyscript-with-link-triggers-caca3a4f708a97f22698543071e6d1f2b48b55fa":{"name":"@balena/jellyfish-test-harness","version":"6.0.46-jellyscript-with-link-triggers-caca3a4f708a97f22698543071e6d1f2b48b55fa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.46-jellyscript-with-link-triggers-caca3a4f708a97f22698543071e6d1f2b48b55fa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e128646d09d2bbe7c1ef30799246161bc86445dd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.46-jellyscript-with-link-triggers-caca3a4f708a97f22698543071e6d1f2b48b55fa.tgz","fileCount":24,"integrity":"sha512-iUV4yecsqEWFe2v6I33spbRkNFkOJ1Z3Axz2PfsysL6v1nNufWfusXrw3CCgD4xahYL/DTd4jY0i++0kobyaaA==","signatures":[{"sig":"MEUCIQDycoK4QByM2Yrvniz4+tt2KQfVCrC6N2UVIzqFA9B1dwIgIW4BLGfv+jWSeb7h+QEWjWaB/Z/W9vJHRYf6XWEAuMk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhANzdCRA9TVsSAnZWagAA1lAP/RlsT0VktsE7cMVTB4BV\nmoc093FEBzYdvL7TKZcRewyhx1qQAAwiJHkLvkeWxhjdsobK7GjLj5Yyq/Im\n4ekqmmQ/qxVnIy9hMyDR8ZWq+9FbRhJ2EoiqvOiuHIR6MlWHvWJ9/Fc4BuZq\nFVsmyHpI2E+wKiyul08tMVXEZtGmkbO4EUlhTeqBDchs2ugzVCSAP3btcL5+\n+bdZEPSiu22nOV/XCDqLCqubnS2XDE1Xljwl6OlliBNFVdF996PRXxfIB7E8\n9gouiesKKsDEWQtP9B5N2Wh6BtsOitpjmBmRj16DfjnKd5iMU/+SLpxPkHKG\nWB3JFwLN0+SonuTEoiBTjQpPuYxUEN9z0R4URuaqw7XqvUuYdVXmvqyJvIOM\n+R+A6qMI6xuZ08ZAaa8TJgzNHvBlhatqFuYl8N9Pm/ZCTRLK84zRPOxShwPm\nxHPjOp7tIs+3u1QGwiZp6uSPIc1neTaYe/D/ApXi0uMJgaI5D/LFvdpeGCbo\nrcZZ3ZYzWSg0KVrzbmhZ4IxADVfRt81hraAaFW5llnUtN8Sc+tjl1RG8pLni\nME99TfC1qP422TQ/ZmkFP2T56vkk3RcbgW+vKFqZthcwQtqPsijXb5GUSN0V\nYVv67JtN7XKpTEvYQGaN2EyQ62c6x49Co+A8r+uHn3l4WSVoQ7qxdCbEKBi7\n6HOS\r\n=VMY9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"caca3a4f708a97f22698543071e6d1f2b48b55fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-28T04:25:41.766Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"8.0.7-jellyscript-with-link-triggers-4206601fccd3dae1f7e9dcc76f1d91beda9adf43","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.46-jellyscript-with-link-triggers-caca3a4f708a97f22698543071e6d1f2b48b55fa_1627446493151_0.09182172304308756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.46-jellyscript-with-link-triggers-c0e7a84250b2b11727d078df8bb6050c53425d96":{"name":"@balena/jellyfish-test-harness","version":"6.0.46-jellyscript-with-link-triggers-c0e7a84250b2b11727d078df8bb6050c53425d96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.46-jellyscript-with-link-triggers-c0e7a84250b2b11727d078df8bb6050c53425d96","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a46d0a7890a6d15db4e189b5ed8c89e755c10f03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.46-jellyscript-with-link-triggers-c0e7a84250b2b11727d078df8bb6050c53425d96.tgz","fileCount":24,"integrity":"sha512-Ye69Ghv9WeHhMx7sTT/QnnxjMavD4HXFUB88Lexz7GBzan6cJdk5hJ9SP6KMWfecOBhpHHc5sKs4MlI9Tlhs3Q==","signatures":[{"sig":"MEQCIGCrRLsdfYWxDSmSJ0LWd7PBdY5Cciv9vwwQEoqnYl9ZAiAWEJeT26yeAg7V7T8hbq+2L/06sr95O23E1BvX/RwU4A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130915,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhASG/CRA9TVsSAnZWagAAOAEP/iZ8RRcnv6dZhWWtA+bk\n7HE/wsI0PZy7RVyTV6jzNiQyJF2y3OxIts+ZW/Yzf8/lGQYWJLBsSwed4Kfy\nt6wGbsjROYGZT8a2QadgA/jRCVKwab+bxe6wleXjc2RgJSvXS/Fk8LkzymQ+\nheA2orjr0gIFuytahhHKstkJ1+FUCiwoKJngsoCxPzDwdB2CmmXdeMTB5uvd\nYjRnACWKnvWgLiyz/7yse+9FWjhAlRUAvl8OxK2JTDTI2gpsWkiZk5mM4pr9\nsZbHJ3iCJMZblXYQRhjUfCc5w8D0PbAOKbSFynUw7C9m5DJtOlls4uV+tduv\nxXju05qgMOXkNQiNDxTPrUeqolyCd5WQ9mDu+ho1NS3hDCC/Au1VcabQpwlZ\nUsl7yDfGZE7dB0xtVDjCVHfzXZDrdope9vmQVfWURIhEHgJkh6CxRcHoFkVd\nxLg0DYBQATk9GCEHE9Y/SK4FFsy0fY7dVCLAdOGOqeV83UobxusEVunJcUNM\nwVkRMFDXZ8Ybr+kR7rzknxbtl52xSLwUGMZzsdJti1sZhtnkkEM7cXCzWZ/s\nIUL91XNK6wR051qTBkHe8kPEMvUzWeaOfJ76XAQ0LuCK34nWafK8HxfkJORQ\nPASd//L+2f1dkjMDpFOKSwQYOamAgXJadInqpGryT5zDHhSD6uvpAPmPp365\ny+hY\r\n=xOnj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c0e7a84250b2b11727d078df8bb6050c53425d96","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-28T09:18:21.691Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.7","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.46-jellyscript-with-link-triggers-c0e7a84250b2b11727d078df8bb6050c53425d96_1627464127535_0.3709053914503253","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.46":{"name":"@balena/jellyfish-test-harness","version":"6.0.46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.46","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df89f2863929c576e1c03c59326ded9b1c0b0112","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.46.tgz","fileCount":24,"integrity":"sha512-XWiCLq/e+BzHbjlz0NgSwC5cU5pjmkcTY6U8SRn5D+ebZbqPDv6MrpdsKU9nZ6E1LaqRS7koMrZ9hY/w0wfz7A==","signatures":[{"sig":"MEUCIQD+V94fA9keQb8bnpGQOLSjdXb/MHvdaENmgzYICJRGUgIgR2Dx7gFvJK9qgn2ViJesGM1drb+UwWWWYGAzEnnlyCU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130843,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhASKWCRA9TVsSAnZWagAAErUP/ib6D8KVCk8hf4SkoUDm\noWtc3l6B726mqB/JuzPBLHSl1LRLOF/ept+h4XjpIjMf6n4Q6b9QUISMCUyI\nBL98zILAeG9wCecQY8K8oh9sNOtyb9M5HYXNvdb5HZi4AUY+iDXzJW2Puf/m\nMFTUnjcZbwRbTD+tpBAEuw3Z4j0qLCxrLdkpk+vQAZ/Fen9QRtrOwMY5m7LT\nxI44O6DF8g33UF2k0rqNaYMlsYrMfkYt2QnKTaT1Qsdph25pVsm09sVty5BL\nGFnuaE/yoSe6ETgkBH4lYNNqasEVLLt+ln8mhX1cyHbq0XWahODTTtAwwedF\njjVtGtMzPRbrCtPwvVPokfd+t/+7yko2wlq3c4y1d2B/v02TAZUc+sbPTJct\nQT4wOrQM/8PmzQNEqAhu5Wez1dXfmBat5Zj8asDvFwr/PUjejf+KvXnDa0m7\nAClhbrHp+yLomuxf2V0EYZwPE1K/7HaTe21cwsfM202JZ5oyxSGkId4XvZZH\nvpimjcP1EslYSFPVLLM+49k35Miy1t/3GmdU+ROml0Wlb9/bIniPB/a4t6Ic\nNCj9odQqT+jTX5kL7drbi1HrnFlXaks9vtAA0tdeSjWpA/mBKIj0B2eQ3y6u\n+CPN/IgxNyCjIemw+LvQIMVTeu2rroFXkQXyXsrnkpj25mW8cBDOpm+2ZqV6\n7qLs\r\n=ksxn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e49a0cb86c25899a5348b24d1297de9a2eb3d3cf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-28T09:23:35.287Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.7","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.6"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.46_1627464342049_0.02601328271154113","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.47-renovate-internal-patch-d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9":{"name":"@balena/jellyfish-test-harness","version":"6.0.47-renovate-internal-patch-d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.47-renovate-internal-patch-d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"67ffaf9acc6f934296d8a32815457125d6bf2cb1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.47-renovate-internal-patch-d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9.tgz","fileCount":24,"integrity":"sha512-saRY/PzkuAw4WecH7GpMyT4t18vUK5z47yX13UEEk0ENUC66u+dC6RYdC9xRAuKmGAZaqJZaQkL0YXvFxQ7zqA==","signatures":[{"sig":"MEUCIQCap4Twf/WaWOQZJ70tYKHhC7BdwFA/XeZhmRLgv/NT0AIgFU1GVwL8hrVLc29Odx+WgQGHT17DA/lcaA0jg6474R4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAgw6CRA9TVsSAnZWagAAhQIP/j6B/AynQpbmY8Ojqwks\nSL8llOV65/GXzkBC5F6QXZ6sFElEQ4M3oeovVpJVDucTmfxh18AsBmMc4oHf\n69j1YeojnsttUnbbsBMjEeLn2E/3TKmFEU/4v6lQwtn+brW4n4UgpzjFfxuF\nTLNjJ4IAenIaE2Tw0tf1CI0kSSBjhTTqAm0ePYwCffZFSLzQOPdnRTv0+h4d\nygAvVBXWHJfwFurN5askoAA9lZ096K0IVmj9rLx45ICGIT21Oi88mxOkmCSm\nCkciEokaISHtGDV5JoUp2gwTDIOFu6XTVtiI4Iz4/pfeBEYDuqW//IisNtaP\nnIdbkYkFwpA71FS3KKamxw4Hht59GJEVwsrlllr7FJ8+LC49Zi5XsNOyWGyk\nu6YvpIudCqAloZUDVzRdueCx0cuJTFnzJLQwsGsDJfYL6YgOXA5yGwOqxqfv\nH+GvHOLXnCB1Uz1OlsWt4kjCv/6GkcujMgk85ZAeH9lRyxqRy8TV5fhVaOxQ\nfpwUPab/EVPxOAP4X91FTBG22/9JPjgHHzLUoVGTaRXXhhvWhSFT7Spdpmbb\n5oMiO8YBNgyW1iawBUpvwDJlsoRJIecgXKC929KfEYK2BZPCj7iZqv0mJV6R\n3iUBMqWw9F6d0huLr1TKoNuya/y06m0RYnUjrp4NwKuGEa1wf94tG+m3nf0y\nIUuY\r\n=MJzQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-29T02:00:11.372Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.7","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.47-renovate-internal-patch-d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9_1627524154847_0.3110111521293619","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.47":{"name":"@balena/jellyfish-test-harness","version":"6.0.47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"200bc671225db5fa2a274815f11a95a0b143ffa4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.47.tgz","fileCount":24,"integrity":"sha512-B078JUILchaJw0FsmHQLBFsVoRRbEGmLvCi33l3XQJN3FWGntyApXcIgxC+qdU/NvEF6ovdyMjK/toPn4V11wA==","signatures":[{"sig":"MEUCICH6FDFfIWS+8YSDI2l2Iqa8Tqz1/SCAoI2vXHz4ck+vAiEAsL6sl/gFV0vK8IT+RzN/vflgE7IFOujY5a52w9oIIRg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":130948,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAg0ECRA9TVsSAnZWagAADBgP/jvzgEfgykURqIvkWvNS\nuxx01XIS9e8+kvYXv3S9adoVfCWOmph5btfAfUftn/28DeerrB2Ob8QcSG8g\nB4EKTn+swfrIMt5PqeceHJUSl6Jz/mSiLfU1iO7EanozVAB+hcJ6TnrF/2Cc\n9fCYLf/8yAWHMXuDhA2+k6qlWnfWqEpfyGhXnuf3bjReqfhkMIrM+Uts70AL\n1g/Rb/huLb9315eT7GZVCjDaOggDRb5UV5FQJFDG6Ip0IY68whBwv5drtwFU\naxAOFVN+Sm+kRMhiTdOSqjfbIlEIMAAyXwNVvgNja8JhbTtIAzqgdCcToZtD\nIUUKvmvCWAfMJLumoAGuvATDPGBZp36RVLZijbQTZw2WBMu5jEX1XWfH+H++\nvDRvFrpL697F4xrJn0pbI7K62nNQh2PM00VVjX5wGnWmLNPPyA7wlWdCUgWU\nz+f89/NPAwmCjaEVIHOND7Ln8jWORXHIjkqZD15i7X1V782Mj3gs7jXpNY1Q\nh0sv94McogAL8jgKix28HpW/Xz1jmTieXLqP0rPvADUiLvF6Ba34U2L5PjBB\nI8y+tntyZEawJp8q2iaoOYRfS52XXsp2fkml9hHVhjVkNjsrkO1SMiI63Pwj\nZKJO27Fq/Rz+uEi8IZ0wQJy3fvFEPsP8H0aaUVZzfoy1/S7PLFvA9LO+YeGz\nYoHU\r\n=Qa7q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f9e111b74b781698fa8e469134b281ffaa2992c8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-29T02:04:03.070Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.7","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.206"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.47_1627524356659_0.45470887441185726","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.48-renovate-internal-patch-16e149dc3e2df41ea7710f0e6ac12b91d406fab6":{"name":"@balena/jellyfish-test-harness","version":"6.0.48-renovate-internal-patch-16e149dc3e2df41ea7710f0e6ac12b91d406fab6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.48-renovate-internal-patch-16e149dc3e2df41ea7710f0e6ac12b91d406fab6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"84f5bfa482daed273fc290324c96392f64c72149","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.48-renovate-internal-patch-16e149dc3e2df41ea7710f0e6ac12b91d406fab6.tgz","fileCount":24,"integrity":"sha512-7ynnL8UOozjpwzgL6X0H0FCM+tgWElCtnrnX0Fqiygvbl4ic6tqRRfA+MmZBtOHjHnIRKjJuxrbwS8vije2J7A==","signatures":[{"sig":"MEUCIHr4hEp6BDwk7wqoTpzCgP6baPoLcgxGjINHAVKioZC3AiEA30zn1jXa1yTCzFZ08nw1yvmPicaCuxuMhKpC8oSZY0k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131125,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAhTXCRA9TVsSAnZWagAA/iMP/jUOgljXTxHX/bXJfhlB\nobPbZlEZ8KkYRwF/9m6W5WIeEZze0G3tNYzdyLndu+pMzk+kDTU9FkIm1cts\ncXmp+axo5LSbN8p85ncN3EEvbZcA7Wj3d2skicNqez/b5Pv4bijHCoc8D2li\nFiN6P2Nz3h20lawm1rXQMhq55mn5k0fkTtxoE6Y2AUIynV5eiRl8NdgTxC4T\n3M+g+YaMx8OhWxS/ELxwpjfjOv9qCYmY+X9NovOPmNw6lG5/TdwTaJnXrpjB\n78D1ZBi7QvBsqhbMbbJG2YAygcFRpEIFBEY0l1luHjndQM4bkF1Jf1WZONG7\nuOPaDWWdBFvaI15pbSoh7+7k5c0/zcuWrTCtmP0tBfWN/m/99ELEfq9/R1IQ\n+q+4HBOsobRN9IhcfQnimZmh+X44FYg+wRg4Z6rwhsv1gELg7Kj/j4YBJanQ\nqlTzqZ5fD4LbNzJhveByx2eKKRt9Kw1koGjT0O5ves0GZd3r2HU8JsQyMRyx\nCwyHqp1Mr7Gf/9LJfGkemTiHA5cjJCxMOaEXPvuCKDVMzdBkATLwSJ4bgAMh\nj68HVjSBwA+vTvQHiqK5DQAiiuAPDMBWBFUFJ8L1lGCOWFlOrPCixevoDfW0\nIzfmzomg6ysnEUBQREGc6kKctzV5cQfjUOPOFHMluD465vF58pDRG4RgfPe/\nztJN\r\n=dKbc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"16e149dc3e2df41ea7710f0e6ac12b91d406fab6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-29T02:35:42.190Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.7","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.207"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.48-renovate-internal-patch-16e149dc3e2df41ea7710f0e6ac12b91d406fab6_1627526359411_0.58556624595219","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.48":{"name":"@balena/jellyfish-test-harness","version":"6.0.48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.48","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e732058177c673475c49be7091fe903de1b1b011","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.48.tgz","fileCount":24,"integrity":"sha512-EvMwtSHCFlwF7dPDvM6M5ieVEQyx7uNIJphc6sbqqkHZpwkEKScUeR/fQ3OQseZVA66/waFZKcmp9py5F34opg==","signatures":[{"sig":"MEYCIQDCrkId0oXc07gno2T4nV69kK5okS/+/3ojwLGL70qGEwIhAM78VkALs/UTRaViEHMaQs6Q3HvhImXJc+v2PGS7+tJP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131060,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAhWQCRA9TVsSAnZWagAA9osP/Rbq54L5iAqBIMym253I\ne3AtfdU+nA2Fn0CtyUCMxNvXbYZpgFRrDEqP3o4EUp1jppafv7Ea5cAq4OxC\nnNI3RmqERSsJvYQZNFYtZHJit4naXaIKo1CEmR4kphE8raxTib4dP71HTIok\n8XSVaTFyQPM1DTc8AnbGwR/34YvCC4ojce6IhSur0KqB0Pdjph3gBoKYpEsm\nbBdgUqff1AsTpXDeFg2PxK6AxD1GL7gWE1cVdFMTUnVx4k9nIj6FP/tFVGqZ\n/ySSDFYeWFASxRP+1N+PsWUxYu51wB4Nl9cL+HsDsUf2b3aDxNbkvSQlOegA\nSYkFPUJikLCJbCSW6PRSfRC++vH3ucoC69raGRT79jboKkS230IUWZZhY6HM\nvKzXA8BUF/rCzP4XOt45tnfpbgM+IjtByv1erMM/pgTb49sdSfjAL573Y85U\nHisEgT8+ePodSKKh6ebUw7jVKq9ZRUo/i0h+rUJq/eUr5JuG3SU/R3Iyq3ku\ncRuYOEljC+NJHWpPXvVO7MCHmX0MJ/zrtCh91osLHJvyxBqWvFOMYCCWn8wd\nMIUEdXh+paggZYlMMVI89c2R6rYscbK77/BhS/72z6lR/TEki1OqPxQlfCc3\nRQy+y5YAg83lqsHUkMkzUJtsmb2qJJE3FnXir5eJSDDe4r8rK1tcynUnXoX1\ni2ab\r\n=+qSY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7727bbfb136a6e3a4e5a298ce063597d9ba2a078","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-29T02:40:42.521Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.7","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.207"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.48_1627526544098_0.8005990545986508","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.49-renovate-internal-patch-75f32ec598a7e451d5efbb2b23a283f9779dcb3a":{"name":"@balena/jellyfish-test-harness","version":"6.0.49-renovate-internal-patch-75f32ec598a7e451d5efbb2b23a283f9779dcb3a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.49-renovate-internal-patch-75f32ec598a7e451d5efbb2b23a283f9779dcb3a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"38228cc0c91792850b9045fa112f3526307ad049","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.49-renovate-internal-patch-75f32ec598a7e451d5efbb2b23a283f9779dcb3a.tgz","fileCount":24,"integrity":"sha512-42Y0lyVdCYtfzQ9EY5c7ZlVFPWMulNM+sVicsM8/y/nm2o9PdSDE3QetoyTBSDGbhgACKzad6vUJX6s1HXfOMw==","signatures":[{"sig":"MEQCIE1MJNt96FPRf1CsAX2KXTGf0uGJHafLVy7vmArWKJA6AiBdxBXpTH3K9eSrr+OOZYABizAqgyNqrkc8u+gyxV8O1w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131230,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAignCRA9TVsSAnZWagAA6i8P/j+44Ugn4UiMunoBl00I\nzDcy2H2Kq9FS5tRAGXd18Nsm/jCE0Efvns9Naa8vnv23T6qnvSi94yeU/7El\nwJAfca4B9cBzzzwtbulLkuZDVxQN+3EAJ67P5xGPI+o01sOAyylvF84eaHRg\ncVsfJHA+4DQparhHEpZlQq4xAHQz6rqqLyK8EgCi5SJe1VOybjHdhk72Abwl\nJobGNcS0wDyDCGqPTGOO6iVTNBXQBzbOdUIc8k5XP/ve7dvvYOECjg3gM4Cr\npR8cmiEMxbatvMhpsYILJk7X/BJSRmTf+19DTjLw0gBoZfOU4lIy5C6Eflo6\nYB5cfDTIoRR9DXuP/Npt/xXV36L/+GFxGQlWK0DcfzntGpUVcuUbIPJdevgO\nCTm6jQHJ4XXF3NULRCQj2ddYL1xOhAO5QGLq83hGelWFk52o5acvcJMWRec1\nhKj+pEW40LVZch3CutwaaD2eavaKn48ki1MoFwxprP+k7LTg0QIGdPnLlLzb\nAbJ0covxO2iNk6K5BtwDDFnH9dKGVUDhBB6zoAkwFBDN58JTInQMs7+V2eGP\n/k8JOHYbQ+YgWv0ZeR6AfkcHaA98byCo1WaeoO5tudTdst6ojHB15i1t3qgP\n89NqtSvlwICLqCg+xtVBq/7qjKwG64H9JGWMNfSFYC4JbhN8VkdtrKY/jf+J\nHCJ9\r\n=ID5w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"75f32ec598a7e451d5efbb2b23a283f9779dcb3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-29T03:58:42.046Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.8","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.207"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.49-renovate-internal-patch-75f32ec598a7e451d5efbb2b23a283f9779dcb3a_1627531302981_0.15811040363089712","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.49":{"name":"@balena/jellyfish-test-harness","version":"6.0.49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"44ce454019332db97e48704b3171d8217bc5fe94","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.49.tgz","fileCount":24,"integrity":"sha512-VQjpCx64eq/OWehSVo4Odj370WVz8XC7+KHKNSZUVFqT2vJ1BwFCzgVgGENspO+KF8WgPYFLDxK/C/1W5AJSvw==","signatures":[{"sig":"MEUCIALZtwprC6wpFftRC85DDc7eNjwmT2UnZRb4wvTSwB0FAiEAzefumyOO2gHtukcxua3GROJVeJK9RWwR7XJjE6k8i7U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131165,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhAij4CRA9TVsSAnZWagAA7wcP/RMUq1PE9ULIi0KIet0x\nVlnHR1nxrMK4bsh/sFYUd3oud0nh90BXSaWmrPtoAW8INH2ff7wngm4md6N+\nigyqy28U3qifLlN4KMEgiVA6uqaQn2I1E+AvPoL0i69CEAcFGAq9+KUX5A93\nPx9ugtbv89GoycapPRjY8ck9z3rl9Dn47k0ljlkryM4r+L69yD5kvwiHZ/mM\n79cNQFqQoC1UH2ytuKpVaxZfo3UZhV23FPZOMyGhIH6OlfAC8XAkCMRkuy84\nih157FCuz/ibzzxth8eP8VZ+SHSudQCmi2aN951a3QcaoA4xy9/okaRUj5/n\nadJoi3UxA4WHY+oMPIS3IAjIiO37zI7buW66Zv742Br6tNN9SjL4162EVfai\nuDnJVq2ptJgmx7N/qeWXoqM1XNfBI8+RvPKmd8tc/y0Z2qr4KLlBuO5b8q0e\nzCbIzdZJQT9ra6L/s7KDKl4FTDt+BitjO4bhbrYfBuyozJDQpXtbohW2J2Qx\neLciWac4I/QGItoNhOS2QOGmC9n12xB3GKoxxLMWaaqruWYRXhwr6zEhoc+T\neENNbegojUdLFcQMsuSm+KvVLT31QAo1bC10qkWwiXOyI6s72E6crXDwSquu\nT6gBmBS3/93s4vFc+lOAkby5l7m5HQ9Mk3Q7gb9GUGRDw/PDuYmbkoa76FYA\nF4ke\r\n=HAUg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1c0c629661e74166551e4dd48186a9137e3f3c73","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-29T04:03:21.670Z"},"_npmVersion":"6.14.13","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.8","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.207"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.1","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.49_1627531512650_0.3326095197379264","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.50-renovate-internal-patch-2ecebbd487b850df48953c258906cd827df12726":{"name":"@balena/jellyfish-test-harness","version":"6.0.50-renovate-internal-patch-2ecebbd487b850df48953c258906cd827df12726","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.50-renovate-internal-patch-2ecebbd487b850df48953c258906cd827df12726","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad95c65c982deddaf52810e1a97986660e9ff96e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.50-renovate-internal-patch-2ecebbd487b850df48953c258906cd827df12726.tgz","fileCount":24,"integrity":"sha512-WHBJmUo6OYUETG3OhAiXKbF+QUIv0oxxrYtJtY/3WAvpm4AqMKXI/LQnVTguBxy8xQ9Oh8vk1sEN7REq9F7nXA==","signatures":[{"sig":"MEQCIDGcuq/WHjZcn/Sbz4SUJFpWqROER3vYNj7neKCI6e1dAiBbn8TgUnDaBNJw2E/cjT2D1PciQIJrMabxHTKn74usZg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhA2DJCRA9TVsSAnZWagAAiTYP/04wP9y/sQSlMQrWErph\nffS2m9VP0MwGSy1RmZYXboi3JQQg4Wdd2h5Wvfg4hBSWBibU0jHtM52s1wZS\nesaDHf9jjL3BAw6mp3UjHxoj2aXlnhmIb+lrXybROP2aIrLD4AkDI5h4lttm\n0h/sl86bEkBkG3Hl3UP3O+U4UKm7/VFPOGpwF3H2F4Ki3V5b/l2Ha9XCpuhH\nT5kvQe42fOlq0SYZTMjqEo81v0RquTLxScLTRzN/sLto3JCIaFTEvMl1Vs9l\nPBRjbr/wrsMHDmBi3lHrTsze4gWnz+Uf49ymas2Yp6ankbw4R2Kfaz5Uyf6w\n+ln8pTl2Iz6Tj3VdU2BsyDIrbmmRo/9sgbnQPyuo5o473l2Jb2dl+Zf1OU/x\nmb8utDE2PBa8WvYe65vQbCQd0Kgr4WrDS5gVeXK2r0gsd283BiwIUzy0eAeS\n0zI3PABjKh4oRD+WDfO8TPHZ5sggCG7/HJrEZ2rn2aGlzuex+tTQdhF7hkou\nrGIYKy8Lo3OMRIGvmFF0QKLk9ziW/JHZbbta09uiYkXZBqkR0NLHbwccaHvw\nGrFLdAHM75MxyuaPn9a/hlfXsj3lUCPx31lDtR/W4R0W1KUn2tPDY0zcu62C\ntj8Rrv6qytofOpy9aLIMnoX55Np2lnqtz/I1XyI/UZtGeF8qiLdQMOjMB/qQ\ntemv\r\n=cVNV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2ecebbd487b850df48953c258906cd827df12726","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-30T02:12:02.686Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.8","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.207"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.2","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.50-renovate-internal-patch-2ecebbd487b850df48953c258906cd827df12726_1627611337833_0.9449552256616778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.50":{"name":"@balena/jellyfish-test-harness","version":"6.0.50","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.50","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d07709faf58916de5cfba7f73d7cc7b13cfb3a70","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.50.tgz","fileCount":24,"integrity":"sha512-dOXVhHNqaUBfrx+sd+YfTQWFM6FyG2vutJ9Gqy31MI4mFK5iZkkmqQtww4ctonic8URjQazbqPbquDW2oKd9uA==","signatures":[{"sig":"MEUCIQDSkCaxddAenru/c7na0CHOZH3J/iPsihmRBru51I7NDQIgeia8n1mkqX6Kz/Q4aLTQ+t4It36TCHMcAcWqoS167jc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhA2GjCRA9TVsSAnZWagAA5uMP/2BOPbv+BarNkcv91sED\nQB5TsfyxAurLSygsxcyccXzCUJNH8GOR2/vLyAP683SIZk2xEH5uoaDhXMC3\nJyeW/C8kNHjuBs4sZvEgLopxS+0yL3vg+pTLF8MCSnAoXPrTda9GcuyTgCBZ\n+bE7YJTvQ2x4k8iHboavej8eyV096AYYjyPej57ifyJG7pkFqMPwWr0vKgzK\nK4JVJBSq/BtA5/tEHJM+0asN1COwRZ4FSZ8HUP5ngqYyWPiCfZVN2h7H/gxO\nrIsaip7GzVPtv4fWD8aHs5UqEpn39zQN/8z8AVVYIfza4ny1XNm91Nvv4hzH\nyYFBhUZbWLxBfPHKbkFyrICd9kdejEwp4jvzG5E228CkDuhQqbprH1BIBfnS\n+UUBNXCij4jrkxA1kdT4ShW7UqeDi32MkTjPcSeq2GrGk7O5E+z5NEUIluy2\ng/ZlWb9wroTPL4y4VoofhTeRf2RO+2OSGYpYfaOEVowMrM3/Dl7QCgoZtFeH\nhcBO6ftJdzZwPOOz+fwaXyKL/ysR9qDf4UbAdXM3e0sAbkMXNkm0piq0ebAm\n/bJxtI/7r173KjVEG55BoTCGJrJo5RL3R9fn4A7jbbPPdKr1koXly/K/rNyo\nSf7ekSzOckxJ22paMCa2TWXp1ar82rnnUdle2YARNahEuaxbMFevsjt/IUR+\n6HER\r\n=PygI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"35509d226816a1b4476a6e7a19600acc30c731a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-30T02:16:56.492Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.8","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.207"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.2","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.50_1627611555689_0.08697876578567465","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.51-renovate-internal-patch-5633e4c1844aa42b24fded64cb434fe811e2b1eb":{"name":"@balena/jellyfish-test-harness","version":"6.0.51-renovate-internal-patch-5633e4c1844aa42b24fded64cb434fe811e2b1eb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.51-renovate-internal-patch-5633e4c1844aa42b24fded64cb434fe811e2b1eb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d78fdeb09253d9319b5927063ee9e6d774ccb60d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.51-renovate-internal-patch-5633e4c1844aa42b24fded64cb434fe811e2b1eb.tgz","fileCount":24,"integrity":"sha512-zVboc9+mfY8hm+csG+sN4QrpowdAn9Jo/dO0nvWEi85o+zYK/nedhZelcSyeo60PNOn4wWLkfR1hFYNsrsv5qA==","signatures":[{"sig":"MEUCIQDxl4c69M4G4rCjoLI/LzCmj5M0QbRx4sq0uIQAj59OWQIgc4cl89BVU6noMD7vCjHcfW8MI4yy28bYoeP06w39HvY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhA3xoCRA9TVsSAnZWagAAxLQP/jrfjLgb6Yvy/qzubA9X\na8Hnq2+lViPY//TkIUjptBOHqM3vB6cH/vz0K557mRzn0f/Jrd0ioegNte2/\nF+gdBfB4t4chHbSX7l0RCzbqQ5dGDRfLasY49BqQtyH82XF2E/SQ6A1WWYSI\nNFZAj1SSwsog6U4roh+Hrt6clC0XY5yCyHYj6OQtvOS7qRN3ErwEowdhcd4K\nw9L/0PS0XjxU+HPSnJt+paMx7FoaRQWhT5i0rW9D0cljzNstnnFBsYfKdZIC\nLoSPBWfeBRFrmouWaXmg8Cv851Td7H4Y4Bur7ZnN2UkG1bdLY7IzzMryiz0A\nHeKZ8GJly6l0Hnx+Wp9PZNMcB+KeVJPjxXQlqAq0J2mG61EAPVKa+4DF3ru3\nyacXbiSsJUynaOMMfwuj/dCeMzFVji8w1XfZLz1meURWdvWIjuN7rPZGAeDj\nhvLK4oMb3zuocfOzzjJrKTzfrcKALMdRJeZ5dCOxwz3HfKNrN9kKnBDpnEhg\nBE5Q3yG8z/YMeTqBZMEib1a/D28V84kiYUSghFyrJ8xxK9lwxx1zRwEfUBND\nH95E6qp/Sgi0j8idiaNRVZ0QHx6vlSExOHPt4Q2IU48JQ+G24AG2ejacVM6M\nt/TWVGmha/5IQckbz60g9uScIGXZS2jI+pWpr0N+J94demMjccbR9s7p4W/1\nN9qD\r\n=9zQY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5633e4c1844aa42b24fded64cb434fe811e2b1eb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-30T04:11:02.872Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.8","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.208"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.51-renovate-internal-patch-5633e4c1844aa42b24fded64cb434fe811e2b1eb_1627618408568_0.583383321083607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.51":{"name":"@balena/jellyfish-test-harness","version":"6.0.51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"99773085924da89e1ad3a4ad011228486def6127","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.51.tgz","fileCount":24,"integrity":"sha512-tgmDcqAJ4Z7FgFqmDnLYxkbckSXAAe6o4lp4wqlFgu2Eosheyly7QHqeJtsXZdXPaM1O26CP7tVyFQ7TK234Qg==","signatures":[{"sig":"MEQCIGPvgTtI6aFpF8xDKQNW7VHyqlEouvsiU8PhnrbBDjjwAiAAs/hKN49/OrbgCi6dST8Cph0m2qC76Q6uVNDsT52+rQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhA31jCRA9TVsSAnZWagAAClwP/jhxzkXiAUwUeW7/TnLf\nD7SkYbfm2/STk58X7/CVGhi8DCYirDL20lrj9zuAgCd2WduL6zjq+jo0AKA0\nnFIrUNHGxj5bYQj/9TR+P4rXSQ0D0LW+mfDo7LxWOXwagNEt3lInZo391wXj\nDMxN/P8C6K3+uXMsGzzOMuk9BFY7lBnkKDz8fqXgfLHk/iHudZyfRGtU5SbD\nmCcYG0BibEpJdu4VteypwR24qYi+uOJMprWSnz2fNiCqEIueDzgWNUkU+l35\nCb8p2IZlZWM9kKjtFCo9V0aPspu99A9x1ZrB8WMuK2PWC/FcUaiXp4tuV7ps\nuA7ihOsmmRSZOnnSBZyO/qXjk2DjfVHSCCYrJoeERJem3YiEzOoeuf0i7dUl\nx3z+5qb7e7pC30Vw+DK1HoY4DC842d65EfvXK/wFoYmOSMvcLkyE+K4oz3V0\ntRsHhi1KA66lwcMtn489BKE6Xi3+a9rGGVT9QHDwItiCecUb5GGpznwe7fUc\ntME7NQu8NsfDXiZp4BD6Bx3mi00nSiONpdVfan60niH/IiziBUrGrgh3Ri8V\nsQoVlSnJ3kKar/So2reA2zE+AMaH/CcSjVlfklYjfz4cYUH5aNMWYMOVZmj+\nhU4BLhjz8JFB3YnOp4/J+rAWx9doAz5l6S3656UhUBEOF+fVu4cg5SOHjqx3\nTYBx\r\n=Gxf2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b30fbdab982603149fe9ab4d6dbd8601f2b6d09","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-30T04:15:43.612Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.8","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.208"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.51_1627618659354_0.9657970132201603","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.52-renovate-internal-patch-a1a526ce2c3326da4087608121e764cdd3da807f":{"name":"@balena/jellyfish-test-harness","version":"6.0.52-renovate-internal-patch-a1a526ce2c3326da4087608121e764cdd3da807f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.52-renovate-internal-patch-a1a526ce2c3326da4087608121e764cdd3da807f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8d26fcc7187393b6b624ba94dee7d2431710e2f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.52-renovate-internal-patch-a1a526ce2c3326da4087608121e764cdd3da807f.tgz","fileCount":24,"integrity":"sha512-X2ZyoP1xQTjVQTah0hyDMedLG3FTrhAVYORWg01fey2HdCjqoFxqbZRDfwDOgILKWVEmmLXowhkKoN3oYH70UQ==","signatures":[{"sig":"MEQCICOHXtYrJ3ipGPJhh/CPjLyw74cgtQlFr0IFW6pQASjQAiBd9CgzN0YJ/QcBDxRlqAszD3swLp1XGG5tF4CnTC8m7g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131508,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhA35RCRA9TVsSAnZWagAAjRoP/0GZ6rd/j9KJjWPVGiRI\ngzOk+NxVixorh2aKMt+epNDjmA5hOaAoZ7A9j5PFj330mCeh22054tSZLCMF\nYet8WvR3WF94qwaNXMSC5q1WzopaeICILTM3UQT9z60KoYEZZVJoVH/ZSW7A\nYtuKdZ69SztFEDSIZ8yYUtJndFF97Yp5QTePzf/QSTmvGHE9z1YIbBkY92ls\n463yAg9v5kTRfzz96wyJvV9BHGMuzPRssqkozbumnPF/AXeIkhbl2B4edam9\nSySQKhPKycaXXeVrunOYXvcSNR3F1cBILoQQvuzKrVBlpegs3+TO7BOwFOQr\niPfyrrtYMklpM9+RgKHpeQxCqa5qQEB6y+C2jFsncZnZxo8eYC+xPxqwmsJ+\nOiJ9Fj9O2vkZIRd8dQZ01EO1CcpzG3/kPW+if3oDnu0gtrqcZ5moHNStMtw8\nq/jNCOPOf00ub5Iy8kMt5W8TKW/NUe8keIBXpKAwixOfTOuK92rpR0nOHGnS\njX0Co5AlEiyDM+AyuYAFcTuZYg05sxg88yk+QndctnuXWs/e+5nt2KH6IOXi\nNXd3lqtgV9KNswCtNvANXpECLtluZl5y5by7A1ADF9F8JukByVfU3HfjmKUH\nZ/VLsLUAKsr2+MvbvG0SYnZ8g8y6GMnlmUOtOZokxyNtoZWOXdfwtkxYz1Hy\nTsje\r\n=MSqn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a1a526ce2c3326da4087608121e764cdd3da807f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-30T04:18:31.992Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.9","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.208"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.52-renovate-internal-patch-a1a526ce2c3326da4087608121e764cdd3da807f_1627618897264_0.15121262845831218","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.52":{"name":"@balena/jellyfish-test-harness","version":"6.0.52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.52","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4405480341bf51a8cc91d613bfb94ade3c40b585","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.52.tgz","fileCount":24,"integrity":"sha512-SbXsPG9feMt77bHjsXFK9v3pQQrRlg9F8I3o/qIwehnpkc9/A38vRfiurIYJTGsa9Nd1ZgnRIrXWNbxCXB3b5g==","signatures":[{"sig":"MEUCIClG8gbRSrkjQK07NAxcOmBl2nOXX+PrCu0NzatKx8MFAiEA//+fcfDNWhAgQEUiUBnTep4mEeLlGIrOPjvDfrXK4bA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhA39oCRA9TVsSAnZWagAAypoP/iDdGaejAzl7Eh/6Orzw\nrvjMz7iyUFqEnos/8+os6XTeNaea9q11CngiOxxtiMBNXoNJvaLspIXiEzLI\nvsmpeJaz17imgT/wzYx3IYZOGU26wDbVSv1njqFbIUGMK0n1qloNnAExkI/j\nFyF1tpkDEGYxTAaRXl8P+E5PNLQKfQMKAkjXD+ZQaTzBNBoJ3x+ewfxedtRH\nQm7TAzfymcBg6GVWP4vKDaSavRquCaWwqHYP0yvW18mx9OIzh86XrK2aHHGa\nSLjLzhNDn6akhqznaoJYt+Fhb9s2qn+jIpuwLtigYTzdHgQPYnKA0IwdTzpH\n5O2QYBOuFhyjV+TrtkGwk2HEz0UN94gmerHRwWWDPWlKP/YoH4G6lJ252yPz\nwvIGKwZJY9LMQYGj5kv0iI/Ou3c2CgYL93+NGMdzyw5tOcrAxiYqBS/qPGDC\nbRbtqTgn2WN8J1a1WRbo1bs6XePeq43L4NBT2IwrpmQLQGQczzJbIFmLla71\nlU0BRujxV4/2F0kxHRvbBa7fcJKA6wWW/OKKLRXWzdM9pCcMvWVaH3eggdAj\nNtpLxJafvnlPtQJbmL64sHIpasmaCxaXCT9SKdl11AQH2izlcP99kBgUZtOV\n/f9UhWeindQkRKGqyOuyrFIOwlMXqDVkuDEq83uYgGKWNjQsyqalMNJ9trd6\nD4/Q\r\n=10qw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f944f82c903e8fd5221a2451b975d32d843f6b5e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-30T04:24:32.493Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.9","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.208"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.3","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.5","@types/uuid":"^8.3.1","lint-staged":"^11.0.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.52_1627619175922_0.29564291699619405","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.53-renovate-external-non-major-cef1801df035ec9bd66dff97c6853605050a06de":{"name":"@balena/jellyfish-test-harness","version":"6.0.53-renovate-external-non-major-cef1801df035ec9bd66dff97c6853605050a06de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.53-renovate-external-non-major-cef1801df035ec9bd66dff97c6853605050a06de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76e57f8eac336e22e81e562e75c08f2dc3cc7e1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.53-renovate-external-non-major-cef1801df035ec9bd66dff97c6853605050a06de.tgz","fileCount":24,"integrity":"sha512-dg92/jrobHrHGIwwqMBnI4jS/7jXe6gIbIMo5U8C+kd2cPmmnwnGSdxlADf4QUSHZu5MsxCEsYFqRKCbtcPdcw==","signatures":[{"sig":"MEUCIG93ZUCo+VYXGmASAnXRG6jNyphm6N9OlcoTQBH1VmphAiEA8/Czvo8w0HajtUQRLWP8iI1x86CGPITr+ls5ov58d4s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131590,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBKUDCRA9TVsSAnZWagAAvn4P/0XNhCmHVvA5hTSdAgrL\nWrmjkgD8yWBTVokyeKQ8sEOt2u9grIAGahbIWKlUTKA4Lu7eTq+k93wqkN54\n5PWP7w79mMVpGwjoRDP20pp0Zvl1fDnXX2ldmcGXWLR67ovL1WFYmiMKoQBa\nNGk/phxgIbu0OYw+m6B523sw5qFo+LdF4OfS0puqazUm5/f+9o8qJ1MYM2bM\nbS9htkOZ1t5IBmgIkn63C3Bk4sf/4vtEReSNHTenV8Xs0gWyf/L8Me1uSPuW\nKroXzICxPnz4bF9Ax41tI1wj98AijYvrQIZv3GdNDOur2E6sJLGJsboc/ZIx\n9bVw1oW1x9N3cGUDpklsbLnJ82scSdZPDh1D0OhLHoPkQ/GIStgB0G6IxIwz\nw+rWRIsVSoJgFknIEQmaEwpqP/mxjRVT3LHLNojfYYHveti6UiLGD1k/1+Hg\nm0RDbN5DBeZHekfAYhv6as63tb9VJkKslqyd4m9fPW1/uRAAJy6bpUgE0+8H\nhn0zdJA6ja+JP0+MVYI9/mv/TS490isI91/cAFQMOD0GCt2nOxNoWK3npgWX\n43bxBacSyLciureJoAKM8chik0m0zHRBVmvcJzGUOof/py1vSa7uEl7JzHmh\nEuOGbebjTanvUfNngti+i0sLdMCMaty7dEB6fH48SIZWnXzRVsTdcirXUdN3\nw+ul\r\n=I56H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cef1801df035ec9bd66dff97c6853605050a06de","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T01:15:44.457Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.9","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.208"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.53-renovate-external-non-major-cef1801df035ec9bd66dff97c6853605050a06de_1627694339319_0.5788743404979024","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.53":{"name":"@balena/jellyfish-test-harness","version":"6.0.53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ebb41f3a48430b831b6fee078328a3badea59521","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.53.tgz","fileCount":24,"integrity":"sha512-VTndjjiCNvqpW/XpFiPbITiVJxjdEWUGl1bMhf7sY+GMYM4HsK7qoHFDKJ1vtaJCIQJZtNU/4EIYoyeNPDeGxg==","signatures":[{"sig":"MEUCIG3s/RO3D8RmVAqCtTL1unduVeeQbn0itzb4SyC0vDuQAiEAn7Z6Qa6TjvJFBdBCmwkWCeykq07hZCk5wBzrbHcpcXg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBKXtCRA9TVsSAnZWagAAHUUP/0MPikpP7d4pioq8KBLc\nBqYCgCVZV6d/VNTKnnWxhyfQILBtIfBLJooc6pG4NaXNrQ0rL+g5a6vM+ML4\nWf1pgktGneMH0gDaUJn+TdQYWgPzqbdOs1A9WNb5wVaH1kVYkHRyHbC1B9RF\nAthUq5L4d+aYSw+rEiOyTI8fYa3atou/30ldNmFehQ2WQxTYAOlBaMK8/8qz\nft05FzRAzT3rn6DLH5yxYFycBJZSr+Ol/yw47Xjy5Rv+fIHcIYbPG77dL1hw\nM61Ze5NA87QzVg9AzQtqNNW5IUmau2fbSEwcsWTxUxXDEVTe+MyOgEPGJgD/\ng2urHiVDiCFlNf1UlF9350CERH0zYDrGU+SirkBcRK/Qqilej/OUsPdl0bzC\nicVCZMV/2+/7hheW4uHQHkpXc+PYM/vxqfNxKlYH3GcHjnL9YycepJuY4w2P\ncOVEB+v85fjpAUamUEmjUJCx2s+bj+E05OPQEDwtI55P7bjwKny95zchUVc+\n6T4zwNMvJBLLtFmRhSWHWVoQE4A4saPbs9qNC1R/6Y63G1L0aKQ1klbegyLV\n15LVwjU5swcoc3rYj82fwcZt4oYbCRXOEcImyDJXBX3ZYQlH7wR4stYt8+t4\n9Med8kOQIpCkoC/B3YqmujqE+LH9OHvyRkDMjn7BmDRW8UZCDgOLDknkZPdX\n/cgZ\r\n=7kNy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3da861d9b76857c3dbdb3dacd47ce88a27d3cec0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T01:20:43.351Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.9","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.208"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.53_1627694573233_0.658192077886971","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.54-renovate-internal-patch-2fb47414d4c525b7a53355989e21491a3a9da271":{"name":"@balena/jellyfish-test-harness","version":"6.0.54-renovate-internal-patch-2fb47414d4c525b7a53355989e21491a3a9da271","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.54-renovate-internal-patch-2fb47414d4c525b7a53355989e21491a3a9da271","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65f5a4b84ffd4f51b1c52ab3454088271f3ab613","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.54-renovate-internal-patch-2fb47414d4c525b7a53355989e21491a3a9da271.tgz","fileCount":24,"integrity":"sha512-/rQlSTaEAx9OtNLwnrF2d9y7N/6Kd9MF9rn+vC4nqoS+5hQE8w1chA8BbPmQJPBzvHhnZqPtHKfhhAb+f/yLPg==","signatures":[{"sig":"MEUCIDAg8Nz2RuYUynUT1pKP2ce9I12dVbqIsw6FamKh+d6qAiEAulyRuzTiwcKaaUGGRr9uf0RxJd4hTRBsgdz1bicppgk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131698,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBKbDCRA9TVsSAnZWagAAuqkP+gJGTNkA13V3jss6lGNu\nj9E3mxtcoQJ0rlhBCFq2exe0Onc+et/TwXoOZoUWog9dfU1djKGGyrX2Yu0J\nJcJ1y6jL9zNQ4qgDjgghjlz2vWA33RySudUMEM7MCvIFG+oX63dGe+1N6Lmm\nBDDTXPKeHhnyg+isXsqF85eUWX8DrYI3K0xxXE96SoIs9Yz6JmeB53YGGf4H\nRDHPWbVLCG71n8HDaqR0D0p0Eogt1+81D60TZLTGTS2k6NTRau6HM0sU8taC\nDZaNqthcOfw+RqeJzmyXwViJLS6oopeJeZ8Czz5UILU+ky1vHBb+B2o89c+0\nFRNCTEhWI5Crji0dk1mqtxPnsBR9NWPbFeaR5w4UxMmKEY4hDVf90GwrsPbI\ni1wNF8n/g+lqwZRa2qvt7zAsu4IYfXOSFs59e5Gf9jMcxm5WJCN13p2vGXXv\n+KB1YOvFVLZeRYCXNgIdWH8IUm7WmHq2cYRabsOM7w1u4ZRAdpWZO1XOKSTp\nS7/0TetjlzBVsifVvhDG0nIcAnYPu6hZpSYBwtma6gksJEYW2kqoZ8WHETg3\n6ZVOvrBSGnObamP6Fsl95mLX2LIwxmeyS/049M3h2p0bHdTcokTQGGKx7wXZ\nAP8Z0Zu1gR1sX1oF+4wO9Yi6Ff/yhOvxO4NNrmVLLLthY7olbDugtBdopq1B\n64r6\r\n=qm5t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2fb47414d4c525b7a53355989e21491a3a9da271","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T01:23:12.338Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.9","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.209"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.7"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.54-renovate-internal-patch-2fb47414d4c525b7a53355989e21491a3a9da271_1627694787436_0.6997747719245795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.54-renovate-internal-patch-9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b":{"name":"@balena/jellyfish-test-harness","version":"6.0.54-renovate-internal-patch-9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.54-renovate-internal-patch-9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"705bfe0e441107d4dd921549b205ade8b83b63e8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.54-renovate-internal-patch-9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b.tgz","fileCount":24,"integrity":"sha512-iLnJGJH0cZxi1eJMhn2yo/OIsae2ZYpSsYs/WQ2ktVwCP7TvkuGHKj/2eZFKjdez7Ru7g8dMnB40wS7p2T8seg==","signatures":[{"sig":"MEYCIQDIKWP2mxQqsPrhVho/G7lWfOcpbiIcGfqh6h+VaKbw6gIhAPg9Hi+oQOrbuT6c21syTVkpN8fJzUnItKEVFQzUwDt1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBL8CCRA9TVsSAnZWagAA2yoP/jPKi1vupa2/nj5uL2ms\nEYyqYWLHWbbIqOSnj6YN607L7XtF2hV0CYgsN5uHFfNUyikQxYwywYdybuAc\nhSgVqfrIxGNNG8RjkT74U9oCHzMSRS4GfwsXvzDcLj5230bg8LoEeBSvtx4i\nfnHW7Hc45k2Tp+C1JucqJmMuzhdUFfWGHgEm7thIkDtHGQ0hv02ZPUhACyTY\nb0Ts/wDCAMNOyaOky6Vxw/Y9zxRZc9DFSCyUeHxj0godzu1RMSAuLsG48bP+\nTCRtyDoHjALOvUmrVD5mTxps2PXxEpTOt+OloNjoLSORO1RBs/QOjxyo7pKM\nj7WWZGd3MjDIvFLULk8HPopaUUW+5MzWfsnWuG4HOhFtsRf6T4Pq8ZrjoCRG\nPVyCHb0ugu3q0ApjuHuLcIfIsGmQGPtACeF58BU9tsbXpU+IHTzWdUNyHH31\n7nUl+rM5pyqOWl7ZtIEvvRUS/SO4NB7lyEnTPrKWdeSGhDpOsLpMC3QzxPB+\nRkBatZtaphsYDD2EeZ00oZdJeIjlp0BR7pVQfNVGWBudZnarY+QDt9maoxbg\nChNXi3Ps9ImLya6rIYlokX2/SfSsdhJ3czsWJNIxM5wuTJSpBJpOK9KrKjZk\ncvw7bnQV/qkMDFaejkbbXA30F4jIsA3dOQx8phSy6QWoeBHcIUsQ4kqyjnkQ\ndAFy\r\n=CIs0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T03:07:21.942Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.10","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.209"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.54-renovate-internal-patch-9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b_1627700994516_0.42376662301784074","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.54":{"name":"@balena/jellyfish-test-harness","version":"6.0.54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.54","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"50c40171d05d224f72de66dbc2cdb9e8d82592a3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.54.tgz","fileCount":24,"integrity":"sha512-z0YAk0dxrcy/4Ocxn+30hmG6udIR7s4bp/IVvWcd5qEo/ubm1oPQGyLsoFUxDATNmURpNvKfHAtkjznReotjYQ==","signatures":[{"sig":"MEUCIQCSV9gZQaMCR52rrh16R46Ca2UP2tr5uJFpzL33Uam67AIgDlo7ZyUZt5JBZ9tYyc5tKTNJ2bwmIMzCfzLEDKFtDcY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131596,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBL/sCRA9TVsSAnZWagAA8rwP/30EwtbBsOQoLsjBf/4d\n7j6kVAljJDSBKGAnPphMJUNu1tUXR4KKj6h9BTS4WpBitScjEEtUmkSGdXkT\n4AsHpIecJtEjsknE+i3ptjaOVagKjHV5hJLNFoa016070HupLoNz9RoGPEXH\ndkBWctjawq1aGNBEp0e70z/bAabgQqHVAzx2JmfYWfLMM8PPsqY98EwnXR4G\nXny59S5u2EdJko59WX0UcVadyvtHnRoc+OPdwED/1G09krYY5Ldz4BaiTvsB\nFCTtCEIkCp1Th18QR+BSjJ2lOOMgC+IOz+kq0fYapMOoSV5iphUFJAk4SH/v\nZi/dvdhAHttiL85u2tMDoBeBbC8v7voqVRmpyoC0BEGVxvtLhwlITlWbrdpE\nT1ijEJKfWiEyyJkvDfUY+afDZIyDJ3bYiLPpWv+Mds/3BlpaFd5R+W0e6lD2\nFgQg6Cxk3avh5rKn2alJtHohxOlEIWF8VBkvD4I+BfpxpMCyq30loBkgSrBU\nilzyd29VJA8lNt+bqoxDC57qc2T0Uo9e0DIg9DIlS3dm1ELF/ly1JNK/GLvm\n498vYahv/MbAx3X1WCJTEFIS6GGY+CeOSEVZ9mZj/B//0SoTRuW3BHf1g1Xw\niHSIBMTwCm3eyjRe8kfQYCHAc2m2T9et8y3kaCGLAJWprgxxTYALJfDFbZx6\nr/xL\r\n=JDpO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d6b24f4bee3ca5fe94a86475c8a057432da50e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T03:12:03.036Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.10","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.209"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.54_1627701228038_0.6252190669460365","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.55-renovate-internal-patch-bf35044632fceb2a9d8aa0fcc20ae394454dda26":{"name":"@balena/jellyfish-test-harness","version":"6.0.55-renovate-internal-patch-bf35044632fceb2a9d8aa0fcc20ae394454dda26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.55-renovate-internal-patch-bf35044632fceb2a9d8aa0fcc20ae394454dda26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14f3c2089146d4dd7b49e845606c1a689e425989","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.55-renovate-internal-patch-bf35044632fceb2a9d8aa0fcc20ae394454dda26.tgz","fileCount":24,"integrity":"sha512-zj1kx84YH+reX5JfMvYUitO1GHxfzwGSXrwt/Hdv7ZSyo22IXaTdYeWb1wuds+iX4Jzq7k/N+jyUnRLCeRkDQQ==","signatures":[{"sig":"MEQCIAmRwwlmomdiRUoFk5biBxcadFDcORcE9/xpmou51BSDAiBfwkkebhLtDjbyH9WfKtHebcm/QDyrHesrURwFQO5U1A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131767,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBMExCRA9TVsSAnZWagAAvb4P/1W2HKL2y/1JKQWtbDWb\nHlwYxmWaLPGu30qLCiE2Az4O5vhyDo5xhaGBrwfUqmOzbaQ1qk0aLzAdFh/9\n3w5TGGC0YxTpIka+xSllhYGE0JyRbfX87GIfYOja1z93ERgtS+/KRp784h8P\ns0NgQNO+CnOG31w2Wc2R8xwR2hbs4wZEflq1PUPzC6RGRCxUHRqIF+b/6jq4\nEign+Tb8VTg6lO+8hZL3lhJyK6XKJmaeHa2apmZOU6DBqI2yGgU9Dmmq7PFj\nmMBOnMn5GT7JJMBUEVTKkN13XruEIDPRGAXdcyufufMMlRojWKftlRwFxFOj\nIQE7UDAhfvrR2LFY6JGDZMyChx379ooW4d2wukIFf44m7mxr+KhJDbXqJkSd\nKCpIfA1eHNcdupLtGw3dupbHMk2byLUesZ/JfreInPHlfGXhHIwpu9Tsb5Ka\nZJr/4GS3OdL8zcpWRaTXJjAPtHYVezFhYFBRJ9y6GKT/nQuLp13lxG2790lx\nZaui3JFLJ0Nk4fQDbmVAd2y/BUk1dCRWOYU4cEPaphuT8Gxk1KK+YU2u2MqM\n5hePWhIVxlN/tQ66f508FBKcFJLjOqDjkjFeFqdaPnBqChD3pnEbJT+Y5Vev\nzLXl29D+6jGZmpsolmn1PYxvFHJmImchHMcBwRwUDbWgE35NIvljip1o0L1e\nGnoN\r\n=Lipp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bf35044632fceb2a9d8aa0fcc20ae394454dda26","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T03:15:37.765Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.11","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.209"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.55-renovate-internal-patch-bf35044632fceb2a9d8aa0fcc20ae394454dda26_1627701553637_0.9324489397553897","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.55":{"name":"@balena/jellyfish-test-harness","version":"6.0.55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d2097af29354fec3b42ecf311458440b8831a9ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.55.tgz","fileCount":24,"integrity":"sha512-Iwigel5A7THiY4At64cVj+hoL1Jb5ZdQ+51JX58IynmExREkbtkklxWpbJbZISw3jUdLOBhUi1I4esusV1Yspw==","signatures":[{"sig":"MEUCIQDSoUMw8K3i9E0rTlozjzF2GqfJ0XM3QputgnoJI5NRugIgGF97e0yNRwzTmpP7LbcB64ErVdQZDfTmrFbSG1u1w5Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBMIeCRA9TVsSAnZWagAADqMP/AsXhVc6XhKk1N/qeHxZ\nwyhkkP02f1ZQLjzD3QGpSSuTBLl/KHrtBu+4X6gWkz+M60LamMxjwuR2hDeW\nnNrPTX7By4XgyTGEc1ncRWfkm4YRO2QYlqbhW/nZvoOQ+5q7WIjz6rc3vv4c\njG8akvR02MBO/2AmLaWrXyq3mVVuI8CF2I/pLm8JAOWxwy+ouMZ2inh0yd0P\nf2Uve48f9D0Rd6HqhvvsFtDuSJ0a+d2vrDcscwD0edE7GJhO6Z1SeAloPmR8\nnn59uj5peojuhZEh1uQ9H/RK0Q2ysO5t4AFLOSabtgqreCLvwDMguI70H8F0\n56WOYelgwFVc0ezb0hTOUNK8vA3fZxCqoZ5UnhT9jULL0veJZRL93CH7nNwc\n2VwmeDDlYzUHDWrFUz1v2PImgL31QTGijwrc6EiBFyemBnQB8HTu6fAU+r+r\n3NQ8r4Fb6jC7uuDoSzbHEdP9HAA2MyDJjhk8GBW8MpAAfuqDk/q4hAQTkDeY\nna/LjBJ4Yeux5OZnyrk5b9RxCG0bHL2eCmuCRo1mHgXIK0ivAzPukyvhU/gr\nGAotmLtZPohfm5W1TRI6K6eML+qWCZwTAMCC0ur9ezOgDa7NyGoubNQi0RlP\n8LkK4SvpvYf6qCa2jVrGynBiwMIB0ShOfF9xk+oS127FNt6uP/ueD8jMpJFg\nFXZq\r\n=rHFF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a0cbc4b3ff97cce0d3e5a0bc65d62c23d8792db6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T03:21:22.158Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.11","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.209"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.55_1627701790692_0.21635101037973947","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.56-renovate-internal-patch-8fb1f237fe9a8e4b537aaa819e684511d76c6e62":{"name":"@balena/jellyfish-test-harness","version":"6.0.56-renovate-internal-patch-8fb1f237fe9a8e4b537aaa819e684511d76c6e62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.56-renovate-internal-patch-8fb1f237fe9a8e4b537aaa819e684511d76c6e62","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a8e8695c97a8432554cac2013478b838c4f8f737","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.56-renovate-internal-patch-8fb1f237fe9a8e4b537aaa819e684511d76c6e62.tgz","fileCount":24,"integrity":"sha512-NdIjrrQO9HSVhAnyTIU2CX3GvKmw8ERDRKJ75W/MyiAwGeZOxKUkyhOaAK0X439Aubzz2tAGf09pLAXl+sEURg==","signatures":[{"sig":"MEUCIQCNys0TG6O8YK3NqQcq1CO3A/GFVBWlwXVP96qlUDbZFQIgLa8QlTWHjMPsS5u5l1/UqtagW+MsKjULGAlKFFvsPG4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131879,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBNzuCRA9TVsSAnZWagAAhLYP/0CJSd/t3yJFHr3kuyBN\n3cNQRvMsF96Ib1F6fNKdLPSj3/QTObTnOPfvIJx1jqgWaSV+KE0vp2s4qDPQ\nLFWWoCCt/UsJaZpPoB1S6AvL/AMj7lxHC/pyOjjGUROR7b1VrCmDuShY0rDW\n9ZCy/fkT6q5E6GAcQVa6XjBsKR55w/c1Lrsjp/wdHArj1ugAbgSDniH98dGn\nnpY2EbPaeFl5FywMRwXoD3+v5/1tHrNk3D0lLB9C1dRFhnrUIaji7EmaXjRu\nQfNZFR8A7RDFuva5y+ziSenLz91ftRUnkEfvYFxA6p6gBGRg97oFPVd61k3v\njHYLgViIQV2RynQV0Ej7yyrIJvGbADEK1wuFxiRkCqnABF5c19yPzVxdzjLN\nX4f7njDYhDf8pDR9AkPG3kSTW24vUFCwaopUvoMYyWbxe/rCc+cIrdtsOaa1\nhje6MdiLFU3dZE0E0Na4hCE2jeJIBRIwrrQLncKV60D5f+dZv/Bk7pzAroeD\nt0P9nZfZ2XSqzfHaTOdNdF0sq6ZGfFVWW4NjOuwzca+46sby9xFGhUjUzN+K\nF2IA6rSFuRQFSfRPxf4GJHiWDgoRXdTpxzQRd9CZttJCEV6HnbHIzZY+j0Pv\nfvdcfvQLdcMHExUnCzun2e3/Y+kdyurJMzsis05FKVv7FRTNHHOfb4itO5kb\nNh8u\r\n=j0K5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8fb1f237fe9a8e4b537aaa819e684511d76c6e62","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T05:14:31.753Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.11","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.210"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.56-renovate-internal-patch-8fb1f237fe9a8e4b537aaa819e684511d76c6e62_1627708654240_0.8910398497876846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.56":{"name":"@balena/jellyfish-test-harness","version":"6.0.56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.56","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9dcd2ea7b923781e154f9b654d160a2b726bd5f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.56.tgz","fileCount":24,"integrity":"sha512-k/JQho/V7dBEbeaVNaEC2A0Pr87xtcN5exZtnTQL3YOdzRd7tI7CiiTRJ/18R0zJMAKpaVCYvqvE6N3PcrUFpQ==","signatures":[{"sig":"MEYCIQCtbhukMJkfA8Jwp04VhgpsOMg5c3XT/TFP+vGP9lINEAIhAIFffTyuZqohZvKNCIpqLxDxa46B9L668HNWakT+1f1l","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131814,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBN23CRA9TVsSAnZWagAAjlsP/juuifYR5dMB7gk4UXF3\nEdmFYSzW6GnefwH0cQXermcPxQj4hdb06xHGEfbFDXWK5sHn0PqOGKyAeAGB\nMSJiCNqxFzKIb3zVp4Rh1e20Qu7+nYYBdXj68b8l9DgrjH/qBdPBzu0BoRYx\n9dS1mJYqWs+wbdcKBochbK4W/J/BFzE1l/n3adebaDD7hA5v/uCbPpyRwm6G\nK12waDUqCeYd/lo9mPP6px0Jfb8phOCkVA9WtZVAaXke4fSvr6asunCmuxw7\n94Ez2BQ1IJhh7Cye44Ne825oxTxs/SRrCtayu9JBbKEnrWnoKjbWgjK1RbEp\nfLqRrCvOANrsZ7AusWDq2v/vfQwenXhxwV6MK/Xr/LkIfyFkHurc7ERfKuLe\nT1Sd44t2nXGcaWUQij7iCqA+xu1Fr3ZbTmNWIDKo2z0QSGmN2delnOkhXp62\n/Zm/kMUm0Xr2imT+2wQNAS6+i1CdwuADS6m2wdnqE65yWpnWP0saeuCuOqVU\ndLmx00saNMcG1ra8zgxW35SsW80/qOhN3ueGhIQQG+J7mXD0CmAbNf1yD9Ww\ngGwcFvNd3lJPCUmRieVr5Qjkfa4Ik4Uedg6l67XP5Eu+0y2/M7lSbkSvl5TM\n8QnKm/RH15BVu/MFsq7tC2l6TGDYHE+WRWdx3qpNAmr9Hpz6MwSfy7DXKmyG\nfc0q\r\n=4ZMz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a1d3cd0f85b6370660a7669f306d500248b31cd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T05:19:12.952Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.11","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.210"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.4","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.56_1627708855078_0.9832925493774496","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.57-renovate-external-non-major-fbe31f1c81cd2c106041832d6d01ca04bd41982c":{"name":"@balena/jellyfish-test-harness","version":"6.0.57-renovate-external-non-major-fbe31f1c81cd2c106041832d6d01ca04bd41982c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.57-renovate-external-non-major-fbe31f1c81cd2c106041832d6d01ca04bd41982c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e9f157f0f7d88f123dc35c6880975aa3de73214","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.57-renovate-external-non-major-fbe31f1c81cd2c106041832d6d01ca04bd41982c.tgz","fileCount":24,"integrity":"sha512-lxMtTkAcfyZy0NWOx1mPYyCwlncp9mXH8lks3dIUVGKaCX1Nr+6mpxxZpq+Xe4r/PT50UZdzGun28/rRTtXAew==","signatures":[{"sig":"MEUCIQC8ck0OUG3yEPfNDgDJEbG0uVIj1k9cmUqYNfNSCQxdaQIgZMl9M5jP/G3Y21fJV4YnreNYMmfhlCDnIHZFPHhSNjM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBYgPCRA9TVsSAnZWagAA0xoP/2g/njUW+JYX2XJr8fN8\nUeU/xc56qZ92/qAN1j9cNwvp80f1xU9Etqlf+iVzWdZya2cdgj10q2UZH6Eo\n9T8sqT1HfJCCCiUBAtJCLBDCTIE5fmQ+m+iqqesygKtaIW4cnwlyc9RvoL/8\nwY5MjqJTt6HG8I26dXrDJpcrg/vbD2944y50KbAi/0XoGt+HBuwKHE2zjcvN\nwTyx5+AdGtx8w9TAaSVkrljWtla7iZyyjlMSVQXzN04t1/zReBhLfDiFxHhd\nu0Dd6JYw+xJWb2j2xAkIjVQ+xauc6OvWe0xcQBbGX80xfT8hPy/hNIPBABRl\nKIrsiIGk5h9rHAf4E8Bik+95ISbVCodHty5JXsgR8hqH2QCAfn/GjFyuOVwN\npK0DlN9Qvn4C7uHnQmszNk65VTFwZYHqUVfhRyAyNh61D+Z16VCBCeZsyC7F\nreKCpsdv4mQ4ZjpydlxZnu1UXg+BCpyfpB3WjlsmOmYzVXE1MByWWbEwUU5Q\nIAfMa/dLjM4AlhkKobUUQomkLrPU4dAbYGTRPCFfOroPRzwaIrGWfrRh2d9e\nhdM/hT+j85+RgkjV/sBd6SOik+4awTP8VssD8VggRXbk2nOlnNbzKPgYYx12\nPbudd3x08xHL6RZDnmTvc8Fmq47OOa6yvD6DKjMt6Xbtyv233L1Ao1OZPWc9\nreaX\r\n=TS3e\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fbe31f1c81cd2c106041832d6d01ca04bd41982c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T17:24:32.355Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.11","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.210"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.57-renovate-external-non-major-fbe31f1c81cd2c106041832d6d01ca04bd41982c_1627752462974_0.9357612317166248","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.57":{"name":"@balena/jellyfish-test-harness","version":"6.0.57","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.57","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf213ba0892ee6bcd35e72eb52149cf86fa27f6c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.57.tgz","fileCount":24,"integrity":"sha512-W9xpXfQWyLAT9Gm2wrsZmTWZM4qi7kX/YAo41eIMesqceRnsaeZ4AIaAb7AfwXiPRvoBXSgT0gwuRfdGQXgROg==","signatures":[{"sig":"MEYCIQDprs4fturB+5SNTJGPgXQG9tqob7GhqBtIIRSyTEfDpAIhAJGRRYQTxHm4AmWzSIEP2mQ/xCx6zVOEPCtE5J0jC/5i","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131903,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBYjoCRA9TVsSAnZWagAAeYYP+wXdclZtGJyk/64JwC9L\nSPAOHQWiKFHC/V2znRSNiHSaUKztVf+cvB5vZ5cco27hk77fzQpJrhPtIIIg\nP0O5ei3GhAXryavWaqMvjgDUY/a1wOW9dcd/AynHoUpO1n2kcSxNIUmPr//s\nTPOzyn5jdAa/Lex0+7i/yuFV5nP4/htDaOODavBoWjhHu1eRHBb3VGcB4FnK\npEogr5jSt+y1xJdpWPFUAbun6r4z3GsCRyoaKHgBVMR2R5IesjoGXuK/G6pQ\nEo47p7ngtIXD3+MfSVJMjO0G55jMK8ZNyOANiDU9mjhbQ/GU4SDW6I1SVxMc\nWyvxjeIAmI3U8nud/Kr8CGiI1srQR9OrSzlZQxcNQRpkgBHKs6o1miuVGx76\nafaTPOfx4YtCwRGrZU0WxMA4vRBleulIqcGvRQFSUrwjKihcVcY90BM5xHbv\nZSa76w1ENRISiVFbLqjCocFejmwdfkcqeQCvjw59cfTv0U30+1ykI2bOeY49\nsVClugD1OTMHZCB3TvGM4htY9vuSDgG/L3gqnPZ2gF+K1oeAh1y6USwaJW7z\nkfAshBCS/S1XN3w9e4JNo3Jw61XQKfpcxALUP4cfoFFGtA1XT4G6zM/jxDSd\n7PCI2Osw93Moro4AboxXTzdS+C+8eXfR9rH9O/rzD48ljN96NYa064drWFdg\nDuos\r\n=5WLJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3952c58e84631a834edfb3d6935046dbcbf5ec83","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T17:29:32.899Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.11","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.210"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.57_1627752680509_0.6356428597111023","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.58-renovate-internal-patch-60c0813302df2432bac0783614ca7e67c10f7b50":{"name":"@balena/jellyfish-test-harness","version":"6.0.58-renovate-internal-patch-60c0813302df2432bac0783614ca7e67c10f7b50","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.58-renovate-internal-patch-60c0813302df2432bac0783614ca7e67c10f7b50","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d0171feb433466d1e5451b9dfd91ab1ea305f11b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.58-renovate-internal-patch-60c0813302df2432bac0783614ca7e67c10f7b50.tgz","fileCount":24,"integrity":"sha512-UhEhHIZx2xDwgxyeEdW8Kh66Orx/tH5G2VRLc7iA3oPL2dbydDloyH27pVlMNsm6OT0CRVrM7YOez8/X+Gv6cg==","signatures":[{"sig":"MEUCIAX8fkDJNTb5qsi4cNEAIqYNQ+JNIfnoQITYuCBl0gZuAiEApCMTqVfVpvFvqgpFhbhzd1t5kJOhitC5Z4PfncjNIsE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBZp/CRA9TVsSAnZWagAAYzQP/1inNnE/RbRvFSaNtgvr\nWblV4LIsoVCmhx1pMXLWYeioWySusWdzqHkgiVESF8RbxEzLgEDPSD5scuhp\nchfDgY5akMl0b5im0Q1HD1CsBGYnEjMqHLdDqs6kxS5LtMRS0hqdnmoYYpFt\nzABtsoBwbaluUYsayoMOqLfbP46QA6EwARqwkE0xWsuw1ga7Zt98E+prlCzr\nqqv8haDW5UgpRLxz2RZCoGHJRdLr78FGmZJnELldUdsMYlJV95PSGq41cc4x\nLQZ9F7AS4s4s8vDX2hYOq5YNKVjpVCzTrPsmhr8n8ASlTzVxhO6bifsqCW5j\nnEdta7EOIv7dDFoRkpsF11ZjFyvYKuukT827dJX247FDkf/6fJcubZyvKBau\ni5IG2MuYoLZCwLPne16JtbnhExtE7UhcZgymCQDBl2i7l2COZZz4CFvEEofT\n4a6mTI4TE86DFGEuvwfIXUf/4DpX5HauIwwGVr+KpY+oE1SB5I1MthvIblMo\noCRnlo1YmIvmQtylHA2RlB1gNvxhg5hteVwPi/3ZHvF2eEWKdWDVMpaNnOkC\ncK9vfox8bLBSw6B9mieUjJZXZfFDZXhOWpRQV3hgf86GVrvpt1NszRcyz9Xp\nRiBfDyORL3Q0ue63A3zLdDWTNwoeqK7r7LElPxnD57OZ7FFoJwmSfIUsG0Le\nfTyM\r\n=NnES\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"60c0813302df2432bac0783614ca7e67c10f7b50","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T18:43:01.957Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.12","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.58-renovate-internal-patch-60c0813302df2432bac0783614ca7e67c10f7b50_1627757183410_0.25418340589973565","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.58":{"name":"@balena/jellyfish-test-harness","version":"6.0.58","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.58","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"432568342cca12a86958c6809cc1ca33f6fa9250","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.58.tgz","fileCount":24,"integrity":"sha512-0BriQGtxvRJcNcIUy5xQz5WRReK4mEzsM1dxH80efGPyklSityJN1e6dcQWzFc4fEHg9Dg0BHzPC1r2A3KuxJw==","signatures":[{"sig":"MEUCIQCNU9TH3x2TRsMi/VOmsX9PtlNtB50VYQj3PUAa7kOK5QIgFoFuYtBHxqMHAU8XmCxC0VMMvNu80zd7NEPh7b1PDdE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":131977,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBZt9CRA9TVsSAnZWagAAVjwQAI8DNBslCJNb3pjqoXGP\nM4q7XcG9EM7HDt2EaJKPSodymdmCkQ13lNFnNkkXjz/5tW1SNeog3mPt3vB1\n8SHkVEJYcCLRUUJHXFUAokNTlAPR1MftIoV/Dxshyp5upLPuzWG34NSqsCYB\ntoc2C80dLgRaa+bu2KktQb4+AJZ6La03BWl5+JchAqJNFhMwjHbU5MPweoYO\nUFCHCcFhPJM0TXahGvEEhis/qMBApW6FINqC8W9uqgskH+5TvsVkusBQpVBR\n/Z3eP2TIqvPUI1oMC8UXRkPKNmXKluKjY7dVi/z6UzBqA1ZlnPVQ7bYRx6//\noa+ryRu+qWOc4HH/w73j94l7wiaNe+vqlppJgpW/0qJv67REbsktX21V4nHU\n0vtVn++/TfywwvNUG1GdrcmnFSbf4LsRKAo4wY6Sga0W1vi5OEjTCwS57XcR\n90LPc/Vw6cYjsXb1S5Mvyu2yT99R3gHZqfmBoS9YC7sa6mlz3FPHhc+/bStr\nTpX6FOoT8/fqc0gF+QH4rSlmqahajenHG9bi7/uPx6MnaBgTFz+vorQYOOKV\nM1IAP7yv0//6pJlXqWn9Kua4y+B8+TN8naR1oC0guYcZjaN6lw1at2xJ0qEX\nVWjSq+gT2RCxt9D78+owS+a926SOVrU852GaJUJ7LBwVKsB+5LxA1VVFZl+Q\n7nff\r\n=/QFx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7954dad9c8ab1b4b9b7ced5c5e0845b1fd901a07","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-07-31T18:48:52.283Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.12","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.58_1627757437259_0.1335091266735844","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.59-renovate-external-non-major-6e614eb82f8e02d5322f9eed17f5145e67767111":{"name":"@balena/jellyfish-test-harness","version":"6.0.59-renovate-external-non-major-6e614eb82f8e02d5322f9eed17f5145e67767111","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.59-renovate-external-non-major-6e614eb82f8e02d5322f9eed17f5145e67767111","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f8fbec106f9d2011c47cd62d776741542381c113","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.59-renovate-external-non-major-6e614eb82f8e02d5322f9eed17f5145e67767111.tgz","fileCount":24,"integrity":"sha512-o80IVRfl8MBGwP5tuC8zjSsTEgyyYDfjDikfp7S/tGvnsWWmCuVhe9xuesLxqZE5jrrAHcwmr3bMsWvuNTjMug==","signatures":[{"sig":"MEQCICpXbjARPnPsYmfRqE0ZeATddqCDffJR/h1OjBIw/T1GAiBRBNx7aDcjtcdjanbKLjDLy5/h+fUHwy5sUWrIOQ6BhA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132140,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBqOMCRA9TVsSAnZWagAAWv8P/jzZxZE4dbPdaeXrZ3Hy\n2VDydNRZ6JI4ar/u3qfg1Jn8yrQFodh1xsuAVlSois5oVhRfrdtwcCXgIaO5\nfZJyhdxS1b3SmYTs8CmWFUtZKBEfvcUGtLZXiJk3EFroHjyHOjkOWYNTk8yN\nuvtXajg+6YUbSoIba8NUeGIOIaaqUXp3FogeYjVV/naXFeagEMgL5v3xS3wH\n3eTg9H6Xh8pJKNr8cjYuCmHCgLA4Nf/KbF+Tsh0S28iooxd/2sD/z52/cBzc\nBoA0CMR7QRJAkY/1Nsi7sDJukBycJdvfIkJlFBuPlF7cbpB/LS0MIO8Smr6/\nv4dFGMU+CUNNIRC8wBiUJxI5k2C1JibQo9AJQqDypOkGTo0UCHndprIkGyUW\ndTj9wDwJ7ezP0xDiHs1qg4B7w7U5I+MSohcjAvSoXN01sPXLf/A4qrSiQKZK\nsJG2Xgfw12vDdEtJ9i79hRlYw1eECVAeHP09tEKSnCGndbzG27Np1/NRPkhK\n20jjlSfbWW0SwRQAlTQSuIHzQjmSU654okjv5vFW8tghYDZCjBgyyPcUgNkc\nz6CgNXNrTOaX05n/9u+pX2uIcGdNc96kiDLj5tQk6vRT/9OhrOLPThh+Y7tf\nPOd3indSujk5/q9RKIZH0YI1XvQZUbliHrxKvSV350HJ3pomzsp6gPPPHosu\nKD/F\r\n=inIH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6e614eb82f8e02d5322f9eed17f5145e67767111","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-01T13:34:42.176Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.12","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.59-renovate-external-non-major-6e614eb82f8e02d5322f9eed17f5145e67767111_1627825036001_0.059786813848734965","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.59-renovate-internal-patch-27868303239d549c960c037a6246a5eed44bd003":{"name":"@balena/jellyfish-test-harness","version":"6.0.59-renovate-internal-patch-27868303239d549c960c037a6246a5eed44bd003","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.59-renovate-internal-patch-27868303239d549c960c037a6246a5eed44bd003","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"62ec5df224b4ce91e2a9e6da72ab6bc25ad698cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.59-renovate-internal-patch-27868303239d549c960c037a6246a5eed44bd003.tgz","fileCount":24,"integrity":"sha512-p7ToMeiFcSyXoKK6yk1D2FPiwyjICXuuP24Rd8q/wsmmLPzwa2puHBjBb6V0dXin50X+DcZaplPMXTIZgCYrdQ==","signatures":[{"sig":"MEUCIHjes5J4UmSN1VQovleMRloRBOkImuyWyualycMQ4dEhAiEAwkjBfvHU64v6gLiLCo4VPgelc/s0lsqQAWShrQY/j9s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132116,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBqPSCRA9TVsSAnZWagAA+90QAJ9exSWacmmrSnyCdKdk\ntqGv35s4mHnV57DACLpEY1dDFDNj8GVcgu3vMCm6dWHxlaujYFqpkTlXWiTL\nlbTYVWZbhilSXdp1S+mvCN47Fiq+2z0xqWC8CQP5FPD7YXsl53PiKSf5J+5P\nraW8ErIljUKq3glWhngbEbXr103hmdfjYu+C0Qg7gYCAVpzhZRDQQyTIFFBv\nk8HpuKzhcKkWx09Ho4riDI68GH3CiP1YREVKbNeiqy4BbstRvCg4pw5oiuuq\nE/ZagHw896SbAMylfcEkeG/sWVpiWXAgF9lOr6+Z0seT60IHNMhz12ERSl8P\nNscyZHptFgCgoAY5XspzwKD1vxwOpX4VpzAqEDTGBn96hHrDUNdJwP7o1kCc\nFEykA1boQJ5w0ez4kwDcTvH3SKawL3rQU4AbVcva/zBOTTjgo7xizMH/S6Cg\nYahS9cWGyP+TnSjrZZiYANYl9pHxTxS2KDn89ekoTp6f5zon59qbJ9ouU+vI\nVB1g0vSZEkE6OfHzXZyP1xQb6U5Nw90QvVNREySGGhAGLuaLyG5krfj0LHDu\nL3FlZUAZYiltEMsMT7D1xOfvvaO62LGwIqBGwGhbY1TvIZQuXwkovkob1k6L\nNG5jRXlrbxJuvPOIOGmCeTBYKCHZakPaQgnLOojqhlkO91neFqVmOQEHm18h\nvurH\r\n=oBXG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"27868303239d549c960c037a6246a5eed44bd003","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-01T13:34:42.541Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.13","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.6","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.59-renovate-internal-patch-27868303239d549c960c037a6246a5eed44bd003_1627825106172_0.9785793079517957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.59":{"name":"@balena/jellyfish-test-harness","version":"6.0.59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e570b086b2288c9b0c74525f610692f2e1a47299","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.59.tgz","fileCount":24,"integrity":"sha512-9IHoVK76UXiCcUMLM9nmmwnxpAVVnowORS1ndyGfXqhG2j5BFJSrY4OM92lnGsx5SYhdo2qTHkSDjGqLp8KCsQ==","signatures":[{"sig":"MEQCIFKdA+CdlEDO9Dl09dDHv4SV3wId+IZRR6xXwSH+uxN3AiA/Nnq2Z4ZkNgo/rm4Yt6Z72Tkxk0Bu1yuBwmy+2BPfyA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132071,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBqRQCRA9TVsSAnZWagAAwmYP+QH6C0SGQljpqWDwcoj0\n81ZL5GfroJksqfC5yWD7v+a1wNAeRPGkVUIBcMWKqwVmiq85kOXyPHwPAzHV\nYbkKipIncSVot+tbouN0z419bSy0tvDo/EmubdDFdc5l3enO2gP+PhoEqZGD\nah84J+yF8OKXab4kvHtpWqSrdOtiQU0HIypM0H78hRbdVdl3cZvvFAnC4RI3\n8YtC4jPw+expkRopKcUGpP9u+cHNupOut2jZDTrpGwYoq1PWIJZgVz5bam3T\nQ+AUNIk8NERlUFTzbQ5B/1f2sLz7445ehdMNtxxi0J+PBumudHuvFOmniItq\nznTYxvSv2sp61yjg4TNKq8VRErS+SAHB9QanUkKbV9jb3g8BFjXkNgfKvvMH\nztN4eOyOG7t44rhboM7bLecp+aINP/fswx8RI9blNZ9RIrdLkZNG1MAEaRVb\nfGlQ6UY3CAeftUCOtnRHRKTV64CqRFWhIYBtYMB+zbeK0m7YpaHcmKhasr7l\nt/gQevMTRN/WCjGjUUEZ/1MBCkoSjD8Cmp6IeCbGA3eyCQwPXLAMpPHlkODt\nNPG6DXVm99nBwLGiX8KvUB5e/05z5cHKmR4VAmu6ovbndXxhR9ZikxffuARu\nRxMP+QN400E1XcT269DOhOd4c5xyPy4PhehwWDkEj/jzEP+GlpqF9HF8OlaA\nEq5v\r\n=tHAe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4dfae7fdf0187b0bfd42f1c802eaefbbb70405c2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-01T13:38:52.872Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.11","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.12","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.59_1627825232708_0.8156283477596515","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.60-renovate-internal-patch-3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b":{"name":"@balena/jellyfish-test-harness","version":"6.0.60-renovate-internal-patch-3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.60-renovate-internal-patch-3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8144f4aef16e1543695c57012c843da42677f995","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.60-renovate-internal-patch-3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b.tgz","fileCount":24,"integrity":"sha512-aagfcnkDnCu88l85J68a6MQZcFu3aBfl/VZ8zM527bZZ3OIhHqi7l0p4FM8MtOCLjnp+PJP8OVaLdZNKDkiC1w==","signatures":[{"sig":"MEQCIDFNzuXJ75uPpbwvwE1s0IOqSvVHI/IgHviSujIbaMfnAiBJI4swZmEBdJQXRYtJsEhEj0lMSVWxNaDcWeSE9SlWyg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132210,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBqU8CRA9TVsSAnZWagAAUicP+gMT/42xXo29cS2awZKW\nZ5oym9yUqH7obFPdSMcqworXdKkr+HaKhfO1sSU0kFxcghCNPv1WxiWCftba\no/qkAkKONzMry6sleYdefQUfcsbjKJhz/MOxBt/twF/2qEkSNOrE//m4M86Q\nMs4IeA0pckdOqU9o0jInwK7JLl7gFPLMVUYNgw/hFq5WH0f56qV/elSGEC4y\n4Eco1TkGHd8rJF0C5geEoASzFrOsWCm8LwXLfMZxZVLKCciFK8W/tLOQg+++\nFbHRx3d/CxUrUGnkzzIS6ModN4mYClS/z3IHi0x7Sk44vBWLQrCnXoo04C5r\ngACyLldiGON2atWcYug/iuTFuIPteS6Zio1xTTJ6o4RvOZudLGKuCQ9zu248\ngpDSsWS5KTbaVfdVN63tMl87ineWH/y8W2SD4vrQo+KqTf6e9jK8u7Gpjhqh\nR1NrvY/8jLUkzmo5O+bMIYIo0C/3Sll3SfnFhsKqnqGq7PJpvnKc1dMmrh7K\nRBxXBQZsTNIVpequyt+38a4DEhFDZ59ghGOY74EJFz6l+9azz6GCP2dMYBbp\nk68nE+EcpparBGcX6rnTLxOslgdh/ioDXAIiXAC84RynA3oUmjmwaL+s9wEX\nZNscgMDAREvhJ7aXZwccKrqWjUUSx7sqqhxSR3xXETz4tq2xqb0+hSVgemo6\nwR29\r\n=zDXy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-01T13:40:17.892Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.13","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.60-renovate-internal-patch-3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b_1627825468694_0.9990595799886295","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.60":{"name":"@balena/jellyfish-test-harness","version":"6.0.60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2530524b0726cfea1efe76e452d82c549ac65cbd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.60.tgz","fileCount":24,"integrity":"sha512-45iuM3clrpvDfpdRaqchBOM3v1QfvdLBWufY7hflvDMVLwzX4WvByp2MfT9AWnzdY28aNa8UDXXlEHMfs/zLNA==","signatures":[{"sig":"MEUCIQD3yfMURMrHZ9NdvJr3pm38NX3hLcKWeJGKwXf+Jftj3wIgeLNlX2hblfRYKRdRcgb8Lb1FTQFh2rE9OS/DsytLiBE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBqabCRA9TVsSAnZWagAA7q8P/iEDBFQbJfKYX7Xhtwp1\nq/XuIzWXBIgJ67qgKJgsUo+Bg7s1FR/sOq7jAEYt6IgJeDS/cN5wcXrx0faz\nvgjUfCmcVCBEIpidQ7XgBhS8x9f3N/3RgWaX9iX+EOxELyvClb+BRv7gNIZh\nHUYhxkJW3WMswZAEYVgKZU5EKijjHFGbUHyrdr0cpZbY1Wmb1NgQceRPaa+t\nVafExbJXpDlCrrRcbml5CF66UqxJDai8j6SuyrjYn112WMw1ru0XeWwh68i9\n9O5kvcACvMw4eJSQujyYm7vEXQwhZpnd48n75jNLbtKnv7OOMvG0C7QF2VuS\nzeLlarmH7/MEM6nLLUhqpXe304hmdL03K5K20KggwH/PCbJ2VOAE169UeBLU\nPTLyKk68qHpsIVLZkvcwAjA0TBlhmVShwilcYz/E4h4H5lNPEYenb2oUU7Rb\nlDzKt9ERFDUtafz4CS1dhAu6z8vbDltrUYUwzvWifcGBRcX4vFP5EJIRzwcH\ni3LOX2iK4w2n5TkRRtuZHrQgrUD2Sz+h8WKUzf+evI7calf5F/JYCClyHU7x\nIsjPAYLt/Rc9F1OJDo3b1SqmqRiJmTGZIVehItwef6MEMHfxhBJ6xeZWuN4D\n87I/LiycO1W0Dyo8Stk2CaeU+LeJYwNbSPYlwkCQMUqQYzQhXoXbOEgnzQ1U\n7yNo\r\n=NrJz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"262ee519f2efa5f6c6a6dff8d438c454105e143b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-01T13:48:21.963Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.233","@balena/jellyfish-worker":"^8.0.13","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.60_1627825818867_0.33797408442078036","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.61-renovate-internal-patch-001ca5d1e32d153b363a58fcf9d7987f0921e8d8":{"name":"@balena/jellyfish-test-harness","version":"6.0.61-renovate-internal-patch-001ca5d1e32d153b363a58fcf9d7987f0921e8d8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.61-renovate-internal-patch-001ca5d1e32d153b363a58fcf9d7987f0921e8d8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9c8d9dffe91ce2f910ee2c0b182b0b5057ed3770","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.61-renovate-internal-patch-001ca5d1e32d153b363a58fcf9d7987f0921e8d8.tgz","fileCount":24,"integrity":"sha512-0ee1FhpJqRsSlZG/YmcpLXfG3pNuWgZeEgtUNfz74PN5Vpq3iuKq/O8EIwcXVb6wsVSUtOVcLF9hl0g4k80S3Q==","signatures":[{"sig":"MEYCIQDSz5KqrCNOgsbjq+uygJgmhxxMO16f3UVsmCZ6SdAMkQIhAJNTDgU6wFMUcxJjjERB4EqwoEYDhIbA3bYPcmcVYfv/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132284,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBzy7CRA9TVsSAnZWagAAzasP/iQAUYCnr6RS9mVQ7ecT\ntivkky6l3ip9Fki+EPP+zJO0lPt1+/n7DxFHAch6+8yNrjtySHTUYf961hIV\nzJwuxLNT1MJB0Q7WFOh2BR57fNKbcdcBuzAKhICSvX22js1Zt1CUQb8VICI4\n4XoZYlJMHOeUFpPyQ1QaKgYKrEpFzZFyRSi3gvFLxNoWheAhPYpalLYU9Tw3\nPVy5ehETiWCs8r1aMBLCdWUxw3n57GW9+y34qR24q/RnJ05HXmubSfD2Oe/K\nJRPq0GkSgvoMUmBjPk9HFFIauUj/rQuDcagXIct595PpyAV/8rpKjBzTgGUw\n+YxBHHicMN2NG7xLVy56g2GxtKN6XwErpw1wef/v4zBXGNPGSxgopigq3x9+\nQyQm5OIFQ1l5/RTu+ovoem9t6Fni9cSib5c/xbHRSLbWk+PeS/wRAHs1BDC/\nY4Bh2GpsHFR8aENXKP6ENfZelhbF9yyQr0nhjppDCdsyez14P2TO4ai0OtDb\nzYCYSDPjLdZg4Zx/Z1/leAvWWYTQsSfOZW2Y84X5Hj0dDvrrUxGZXZCoLTi9\n8zcr64YXtoObaMU/xRHOhpVkeDwpS/LcWj2mt5HmLxk9bosPFnUmN2umwLls\nSgddZS0lBKjNbgXim1NWyh/y2HYMLn8rgR7PRhaB5Jeo6X1UZfDl6bmfm6Ko\nnd+p\r\n=cwYD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"001ca5d1e32d153b363a58fcf9d7987f0921e8d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-02T00:27:02.606Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.236","@balena/jellyfish-worker":"^8.0.16","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.61-renovate-internal-patch-001ca5d1e32d153b363a58fcf9d7987f0921e8d8_1627864251515_0.8593380703407567","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.61":{"name":"@balena/jellyfish-test-harness","version":"6.0.61","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.61","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"356819a3a7b55415b9279a9f827fd58edae013f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.61.tgz","fileCount":24,"integrity":"sha512-tcUhkRMFyKjPMJYUefY0vh+AkPr7QQiQ6eious8GO30LzdpukjOokSoUW96DzCQDNevuGhcrCjAmPOE98iQCew==","signatures":[{"sig":"MEUCIQCon4jnlFhx2jWRnrrh9lUPCcW8r9zXki/PghUY+ol2wgIgAVJi1xa019TMFg+XYLfkmOxlalMRfjOzEgPR6+/o5iY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132219,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhBz3BCRA9TVsSAnZWagAAG2AP/RANgmKdcH0aP8deCMKj\nPpmPjXdBpqdM4p3VzPqzKcTgOxRmhckaUnHcySxEGeCNr3setN25MMjGwJvu\nCGfFkRDX3Ggv6xLpH3L2m/AZmhrAiA50pOQdcNiqDRXIdOQlmeHRRBq+UsKV\n8OvEkR858fXsdS49fZvmv72TG/nKx+0LU4QaplQSIH17i4iFP3p0Yh7CBe75\n3853dCruPPJBk4EnPZD8P0moAQITNxJEipASdz2hg//TXJP67SBP6dueRgY+\nge6nym2xdj9/H97mDjiftqp6Cz9lkOVE1mnxF5ko9y5i1qfOi6klMhQelcUo\nVte9I73x1x5CXVjU/FKbKHr2SaIVqnUfsKbbr9eh8rQYcgOeQxnp3tF9wroQ\nBrRTo51xUy50zga8mRuwOM9AKPblJsw+aIHyJlUldgvkyBuWIZB4erQ2CnZm\ngyaL1/MfJjhYabckCcIEVAafBg/K9YplGZkIfdjE757A3TwUIxpic7qwOxtI\nR0SoOyjSg7FuW8A7HOtyX+k4ZMCoqN5oDiSX+Yci44NXq7RcCVuUeMKkU8ef\n/tBJPKo2b4MtvrWoKNHrj64r5I64h3PomwEPDq2ZLuDJy8uyvwhvNTrAodvv\nE8Oqrj87gcmr5KWi0gexsEolDHskm9Hua+tNEHTUKZxUw0nSR7ZeqHWrd14M\nB0bM\r\n=e1x+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25e7c4e350fb3391e8ec1c3c7ab0e974e878cf74","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run unit","unit":"jest","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint-fix":"balena-lint --fix lib"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-02T00:33:02.548Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.236","@balena/jellyfish-worker":"^8.0.16","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.61_1627864513567_0.0811682791250623","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.62-update-script-names-a1bc22188dceb7e490b72e585a42fd4bdb555d3e":{"name":"@balena/jellyfish-test-harness","version":"6.0.62-update-script-names-a1bc22188dceb7e490b72e585a42fd4bdb555d3e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.62-update-script-names-a1bc22188dceb7e490b72e585a42fd4bdb555d3e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e5955522f0404ea71cab6b540748f89926260e0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.62-update-script-names-a1bc22188dceb7e490b72e585a42fd4bdb555d3e.tgz","fileCount":24,"integrity":"sha512-dITQ6HsP3LsAPKcCX/SHNjJcfgpcJBsoWvHyisEc3wouwyJMLxofCrHaK/5kx3NxY8sbCfwjMR7kBNMWh4crHA==","signatures":[{"sig":"MEQCIBrIO8RivoHWXXWK0iM5urTBpeY8zrsR6o2cdi/q0/rvAiAPR/Xws1xsyQsu0nzgbe6XLUPMPfnsMxYOWHhRIZMDVg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132378,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCyaNCRA9TVsSAnZWagAAKb0P/i9EN7oJcjETYAOEZasu\noHmjHAystIN0ulsPmC2kHYMa8vwHpKj2ardVT709Nbv3x+bsE1jawuwy4hO2\nwkiQ3qaN7FAt3ByPLfTG5fGdEZ/2coY5TYNtkeXosyqezj8OhfSVPciQVHA/\n8AH6bf/tRxdHizpIBPHCWr/+Yu2yPMSQvWPi4KRFCFEK5o2xDDkgQRsiHj99\nDXFhLsgYRuewast9smwX1MTeQzYteN5kmYZGZwyRZXStnmuG8opKQj3srBOJ\naacgHHcAp+W1bmgXwKAaeKKc/fED6yAiI+FY6JEzGbLCKJI1Ze8NR+gmHdAP\nua1zv3fvf+A32nV/6O0juh9sI4jzWCP6Twcfnzon8f8IecVYi/NsM4RP+1ZS\nPlLaV/TfIifD1oi2wwdMJjChC6bE8AdISccn8YllHbKSqhabHY0cFnMpdFcJ\nRGOiDbRhB9t55XOI0enaCwJSlvpw2eb3W3IB7pC8Qne/u5qL4g9dZ8bD8WVO\nN7/bU35pu4LyqMEYKOHAtvu38RVwJa6yBnkI/nc/esJudV5ut4iEa4eM0krK\nM8SXh+S+Gcm/GBY6DKe6g4zllcUbKzsuTHsRB3Gd4Om2Rqzt9g2UjWFtehL2\nkwuN3U7KZtvy6Ygn8l7XyxjMpJ6MVbSlaPfWpNIutku8q2trVXolRTb5G6UL\n0MR0\r\n=MBoA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a1bc22188dceb7e490b72e585a42fd4bdb555d3e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-04T23:42:04.248Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.236","@balena/jellyfish-worker":"^8.0.16","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.62-update-script-names-a1bc22188dceb7e490b72e585a42fd4bdb555d3e_1628120717695_0.3364171341263511","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.62":{"name":"@balena/jellyfish-test-harness","version":"6.0.62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.62","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"244f15cc4e3ed2820144d5c590d329c7945c50a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.62.tgz","fileCount":24,"integrity":"sha512-6fPnk8BDbRCHunDhit0rtrsNbBa3YAdELNad+BpPG8zvlNDO6ITr/Y+fklsuim50ctrgvadoWEmQ/CBeyYlOOg==","signatures":[{"sig":"MEUCIHefYc7Eux6+ia85liWKLuIbNyVfrw3vxyy/TuW+TvQeAiEAmDyBFXopCTFWNMegbDy8OV4Yob/mrYzyJzuoRFL7KuY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132317,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCyy4CRA9TVsSAnZWagAAJH0P/jCF2v/PxMKeUOPiu76x\naLZD1Fm+NoHXwNg9VPqSjpm/Lmvr/04NDNkJWV2zzU5R3QJ2uDUcFbWUzCDL\nBHPZiAPZXTOOZ7ZxW/DZeXlf/SPr0RSbKx6AQtsLzHpcMeUqs7IEGHndoO+u\nGcwuCBCnoq09wSoQFV4Y0FAPK5yN0u12XtjiWWPCbXnNbiB995na5T+X8OxW\n//s4AXyErvP0ZirhiP88RiuMr/PICG2HsvYm4N7ni4mPsONbvwDN+BNXNkFc\nvxpcN3SVxwDDGR5FpZLrkn9EF6zoNWk74++wJjCO4lOso2kRPw8qwuEDa2QK\nKldollY8WhUCGMWJljAC5HfO4NFIciwpP5n0rpOq2AB2w9I6bF4I2DM5Aogc\n2pNC8Dkv0DgKaBqbSYKZjULIbPh1jNj4Im9MQepE3VFvM81UuEZljU0rADyS\nEW7IE7cb1UVJsy7K9bO2Iaa+nE8LbQdVA358Ja8jGp2JAYFJV3h/eSQVAH/I\nNoKQSC0di1tSNtfNZirve1zp6nTvjP3MvE/cpUdTtn76l+ebFOpJULuPLDm5\njlOgID+HJ9WzB6LQvHMcK7T/OkvhkzO9S8nklpgg6k5l5jgu7CHu8Np0hGuT\n6g02vXXGkuOfsehRF3eJeO0hUO5KuwmSsJjHncu1CFuCaHb5cXMHy34H4RsG\nziHB\r\n=+e/T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"91b3ea341b14e049633fcc1c2b6ec90da8c3bc9a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:09:43.951Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.12","@balena/jellyfish-sync":"^6.1.1","@balena/jellyfish-queue":"^1.0.236","@balena/jellyfish-worker":"^8.0.16","@balena/jellyfish-environment":"^4.3.18","@balena/jellyfish-plugin-base":"^2.1.211"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.12","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.62_1628122296681_0.41501887050063724","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.63-renovate-internal-patch-d4252d9eb16626f3ad7161921225704292ac3b7c":{"name":"@balena/jellyfish-test-harness","version":"6.0.63-renovate-internal-patch-d4252d9eb16626f3ad7161921225704292ac3b7c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.63-renovate-internal-patch-d4252d9eb16626f3ad7161921225704292ac3b7c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b880b4e01aef344e721c3f7918140299aa94a960","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.63-renovate-internal-patch-d4252d9eb16626f3ad7161921225704292ac3b7c.tgz","fileCount":24,"integrity":"sha512-1cgHRrsr2uH2gSZNJBCJ3flplMMtzHRYC8jo+OYWA/5/tBD315iqGdcvhuS3lMlBa9PWzlCfDNE8fYl79rapgQ==","signatures":[{"sig":"MEUCIDCj9Ssuy3bz8uujU4FdaTk0GtlrnX10NOuNyScul6/MAiEAmyP/AxZdvU1lgKJTxuVBS8m63CUqtO6Z+R6mGAgu/7I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132456,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCy2OCRA9TVsSAnZWagAAhAsP/jMzfUC8XR3MH7R6j3i8\nrEnf5eISznhcEdvhk+JSX7OXmIakZTTL+5HsCKK08CtC5EhjwsYqJ7UQWTpO\nCr+kF9m9uUnNCQMV4Dzc1ka9UpBgptkU+LAp2/FVgmDSDmpzwSua/oBv3gOp\nxUYEs3GOLh8klGYyxzhAJWNmO6dnl9yiYz8t2wXcxGrKsKYLHoOQ6/XDwtlP\ngUnU2/xddi5KQ/yxBhikjj84am7gt9EWhV381mCG6PMU6nvrf5efWG3ZmRKu\ns9+jzSqDkllJfyPEkeN8aaHYqA3kQBiiL61GbeDZ4WhOV5iyGQ0xAm2qidIi\nBXOoF7wTlvkYzXe1lafSWpcQQDPJpX9e20lHNLL191dO3fSMyHeg1tjil+VU\njw77nHqkohC06DqQzKHxsqts5y7fKtASTz6SgO+dqxJFNNvUNCZU99yTg59u\nbSIoXrkmuL3h+kXK0Jc20O3oSORje+C68WOgxrWgsnv+OsqpghRhAbTgbK7U\ng10jweWIVOCyeSxYBz84ZUwLD6LIFMc0JMWPfjvUxXoig4U4rDVQ8UVizuam\nXE/bEDDsHdw3xz/i3K8ok6mHPiXS7lOtA9XphDSMh3CjqZz0bQnfJhMcnI49\n7qmkc2Qn2mIUo1qqyDQKA1IbvNAFxAlbIl+7YKQhHGPDSSQU4SuHjRnGrXL9\nprwf\r\n=2ako\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d4252d9eb16626f3ad7161921225704292ac3b7c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:12:04.338Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.237","@balena/jellyfish-worker":"^8.0.17","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.63-renovate-internal-patch-d4252d9eb16626f3ad7161921225704292ac3b7c_1628122510470_0.7803005106919216","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.63":{"name":"@balena/jellyfish-test-harness","version":"6.0.63","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.63","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd924eae8e16a15c7d21e4f0efedb730c6219501","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.63.tgz","fileCount":24,"integrity":"sha512-PZSp6k7htbsRTEUYzRu9xYdvtaL8mx1pgvFYofXYvO5vUheTXbmL+RDpECP4oL5CK4EgBMzN13w5fs09WBsRvw==","signatures":[{"sig":"MEQCIH5E9yg0dWEGps7rmaXY1BTZRSne/2lUnCUcJAGjIF6eAiAZsHpSVLI7oZsRJ9jpBGc9ZEpFXfDgpS4n9AUXRjZGAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132391,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCy7gCRA9TVsSAnZWagAA7gAP/i5Ivcn9gVUig+q76xTu\nTQvlWJnj1rqtJrn4Jwc7hyIBMwSWhydJcu2rTMJhD8Sa7gnbIahCIeUaf3al\nwmI3+DWpz8nsAsjxQ6Z3yzZCj2hIroB54XiQDyJmgs15GioFSTBnChp9Ct/V\nXzdz9WnJXlh7xVhbebE6gromcxB8+QahB7t5SbUUHDyHIHQwxDUow/uRnqD0\nfjkGkWOZdJ+UZev3cbHvXTGy1vYMLgiod+Nq8TWWNu3g3AxBnR1MojUA35R/\n8XSFJtN4PEw/0aGbzeLykzsXlY1JVeHYyFASHqLTaJHHDaVOwQysaPehvRDC\nc7m1au8xc6JRJvm9SezrUNzP4R9JZar3EpaNrFfQo3hxwVlVnVkx30M98c0q\nJUEpG3k+EG5xG18SxAGDnsJ8SQN+7LCaxTyvLLWhE5sIj0t41+Mqp2OlyzyH\nhf0/NaoEPo2DII6+72OezhD1C3cIS02A316bcfh64FSmy2lopQZ3/PR25y1n\nv8BC3sDGDq/N6fmBtbIbIGjNDWtSXyqdFLxqhYY/5gmsBos6spXOB2KL85aY\nt5KkEqGDBBqPddNkX/VmcCh/ejZYUyaL/wEkLQb4d3yleaa4mTu3+MmxV/NR\nGLmsBZiGQRmHMphnejGL/3Eubg5PFVO+8ZXFpZymmsccD+MQOpyVrEz6u4lC\nQSnE\r\n=D5N/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"64be5aed79eb98d01c0a06d5d184e916384ed8e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:19:04.021Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.237","@balena/jellyfish-worker":"^8.0.17","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.63_1628122848126_0.8153085604024155","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.64-renovate-internal-patch-2da29a45a0b875daae16bc53d533704f545dd986":{"name":"@balena/jellyfish-test-harness","version":"6.0.64-renovate-internal-patch-2da29a45a0b875daae16bc53d533704f545dd986","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.64-renovate-internal-patch-2da29a45a0b875daae16bc53d533704f545dd986","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6e54c5a483dae26693b19eafa5aa2ef16efd16ca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.64-renovate-internal-patch-2da29a45a0b875daae16bc53d533704f545dd986.tgz","fileCount":24,"integrity":"sha512-WnILyA9idSuAr7/+3stS+dwUfr0hgd9UALWffIAvhK3g0dpkrQSDcI7AsqtuA2ziPdAoP7dtzIdr1DjWO3p71w==","signatures":[{"sig":"MEYCIQDFYW7exAQnUv8XHzn/yXdUWB4bmKKiVrykYGHOrKwAeAIhANyS4vJP549Oi2Aibtws9HP8mpCD2P+tVPmtspJIWzdc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132562,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCy/UCRA9TVsSAnZWagAANecP/jSvZ0aLFX5Sov1Ik3nt\nXdxuL+LtzvNjXx3Wqg3uVC4cSLv6GB6ppwZc5QHmB0ua9CWkUStzPinP2tRj\nayuoAmVmfHLIY6rjPrvapn7o8yHhSzJdCywv/BuDg8GWeXtR1sbxKIKJsOVA\nNfitIX1+CBhDTJDu7AqDvht9ruzn1bkqRcKO0UKI5CUvez3F80LSRniRnNeB\n53DI4XhRDHJop7yUKApCbwgfpCIRN4sLgsqB081W/jX8YGuyNtzh7dDClMC9\nCrIKWZjIJ41nwEJgKg7/tZq1P6uDB+y+ww1LgadgigeCPqon7fAlwLs5Huhq\n+f6lHYCTzzz7rOOjdNxeeDTx1TDJ4jna9IPTI5mkEoZ0OpRfDITIAMkpuAUz\nOLnU7v5/IJ3xP1raR6ESrDILbqj+YfvpEvOdDt7qxRnjXJx35wG+MT3BVfsq\nTcQcW/G+61LvoMDbtyG9jKO3Ddi01YBwKNaAPa7yjeQRUBsLB4VDm/fIppJ0\n+Wv6xn9BA+CyPLDZ7cE0CTZVyOTzC+0k8zuBtM65bTKDTuZpNU8jMWmlkU6r\nn6dsdEOnWaze5dmODm4DRKdLHybKTY64wNSz7jTYKvEapeN4kJ6M3B3+sqJq\nZFU009fTMA2zgIa6dKrXiEcWc6i/0wFH/viUvJaXB+pXWJXD+xpXiMe65SRk\nzWvG\r\n=v0su\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2da29a45a0b875daae16bc53d533704f545dd986","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:20:52.143Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.238","@balena/jellyfish-worker":"^8.0.17","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.64-renovate-internal-patch-2da29a45a0b875daae16bc53d533704f545dd986_1628123091843_0.16727732486125713","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.64":{"name":"@balena/jellyfish-test-harness","version":"6.0.64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.64","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7dcedff2b11dfc8a2df9e7cee09d44edb9e4da0e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.64.tgz","fileCount":24,"integrity":"sha512-l0mW8eMg8jMw6Gi+NSE04wAThxywVlLdNXTwRKaIkSNtI4AYsrz6fxGfpEbIro4CUbmylmTQbEFZPc5of8NrOA==","signatures":[{"sig":"MEUCIQCID0bna3bzpSS2XOK4L+k1C3rT+6SBxP2F/z6Tt8cPrwIgNbpshBZyXea5/rZIyETRa3SRs2EN++IekngM2tLFF2w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132497,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCzFcCRA9TVsSAnZWagAARboQAKKS5SyMYyeg0shqxDcz\nkOyaFBKTb0xejR0dQO/l6cHdMe9d04WE4nadJ4pOYkb7Hwy8KJB4A9sHVD8I\nrdX24jOBbooHFofgPdUB99on18SQO9YBgnb6j6HaA2BV8m/DKKsTVS0U/4jA\nUZptnSzNRzIQ/Nv3yQAgjgps3UB2qWo9ikd7krUEfx8ESKq2s8lNn/voyySV\niWbDOw0tVtEyhi6gtx8vG5W/5bWK6mNExK+dMm9sd+ePNrDIZAXrEiSDvWyv\nbHxp4JIyjO3Hk0+RcH3jZTNi734xpFtwNqHJb/+OxHswzDsGF3MQai8LuRrY\nL77dRnf6DhUQB1Kx7jx+sK+iet8Gb51Cfx46dPHc0Erjx7wOKWFMk2iZ7BEK\nsbhrOgJldxAbDUYL/vkpbmRwL2ofBNIi+gq0W1ie/MJDsog0wkZmj2unnvCr\n/3z9HfnB/GF0dHTKdVBWzZ9KSfCgW0nxQl9oilkluZfKh7VS+ibAd9VHNF5T\n/QDEuI1Kgkf+DVj9jL8IlLfrgHeJNeoCDVl9Bp5NtdUU6RIWoepCaX++6l5x\nt5VAuKdb4EbN+wyFidDcpMfHXWtDqANBqQKl4bmRLf4JGbxtv9p7SzNZ98Aa\nyksSrDSiwYp/EwQs5gtjEg2MRsMHOxnyq6L/JBaCuYF9+qMKw9DYPgj2A3kP\n3nOj\r\n=diUu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1c3278b5390f272db6d56548d3e28986afd19ca8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:29:01.054Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.238","@balena/jellyfish-worker":"^8.0.17","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.64_1628123484367_0.9855082776141286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.65-renovate-internal-patch-74f834d6fa3bb65bfbd413f5138d74ebf11ba24a":{"name":"@balena/jellyfish-test-harness","version":"6.0.65-renovate-internal-patch-74f834d6fa3bb65bfbd413f5138d74ebf11ba24a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.65-renovate-internal-patch-74f834d6fa3bb65bfbd413f5138d74ebf11ba24a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d82ec5998eb6db4419d4d6cebfd827202bcd6d12","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.65-renovate-internal-patch-74f834d6fa3bb65bfbd413f5138d74ebf11ba24a.tgz","fileCount":24,"integrity":"sha512-SSBKeBSa6O7LZPlRokKYKXADcDkXfkaKOkJ4dYGybnzLNgEk+1iyNI2OTP84bz7FBWf/wupuEXSggdOPD8I7OQ==","signatures":[{"sig":"MEUCIQC76M+HslId22QupY4fK4sEBGeCX8IjtUhTU2tsigUOVAIgITLzQaFqMQKKIjyB0eHfZoNHnz0yEmob6dsBfObEyqs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132668,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCzLQCRA9TVsSAnZWagAAmLAQAIL10DgoBkA5JwdwiUZ/\nmktiqgW8QH2/vyddT60ctqJ7qJ87MkIg1R9qjZWHoS6NWOXTXg2N3geMPo8I\nptdQkJkkgNjZ70MivhpQyf53ngW6ts1SCdlrDm5hIdiSmT3OnKp2ZXT7VGos\nEWk2WOOE+dK07nyfVX1ES2GIDIFNN6OKvYSfRnljeh68Qeu/RFmT63gRZNtB\nG7rVvOqj82QiGsTi9zO6mc8MZibHe9NEP41oWfOF0FcSQL7792boF9KH5UAf\nxVRAiickzxIDNIUZhCpmHLp/nrqsedA+9ah8d6juzAOKtJ70wkVCV7dx8Zh+\nGAbGIOBN/TLJ3yF1GXBT4xpcWLJyNihMmDU/g5g86Gq0u6YCjtJm2LLNvWc5\nSP0q+Pp8GtrdV4GK2IlZ2DoIFPlp7UCTciR1G74cp+62av+Vt14GTxxqhc31\n4CVZH89YETW7heMu0GmIR4/s2SYtTAeRWnTghmIES6rd24laDRHvR0+DMg7W\nwtVSRQ435y8wnv0ql8/s9Vmzj7UErI4RzhHwTfL9bSMvp5AiMSiQJrM1X6nJ\n/w4EkSWJQu5oBsgQZExNNnY+u/yDElza7c5Xyfgx22SXxYjO7A1uk1THVGLc\n0SrZvWXFn9C0HGmQAJKqRl2agR3fU0C1rMQDSSgsavlG6OPEs+tpOksgrAhw\nFUAA\r\n=3Ch1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"74f834d6fa3bb65bfbd413f5138d74ebf11ba24a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:34:23.436Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.238","@balena/jellyfish-worker":"^8.0.18","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.65-renovate-internal-patch-74f834d6fa3bb65bfbd413f5138d74ebf11ba24a_1628123856182_0.2819924751404166","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.65-renovate-internal-patch-43110bcce3082edcbdead6abe2c9c6c21fcdf9d7":{"name":"@balena/jellyfish-test-harness","version":"6.0.65-renovate-internal-patch-43110bcce3082edcbdead6abe2c9c6c21fcdf9d7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.65-renovate-internal-patch-43110bcce3082edcbdead6abe2c9c6c21fcdf9d7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"afce23abdfedeb6f6549596ce6c8283e90422358","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.65-renovate-internal-patch-43110bcce3082edcbdead6abe2c9c6c21fcdf9d7.tgz","fileCount":24,"integrity":"sha512-wjscCXxJAt5WU0T1Bm52Eedn3ynVBS5wcl5cGg9/zr6qof0Tl7j7tA+MkiUKdimZFXLNDXbsNsNQSuOJkSIRLg==","signatures":[{"sig":"MEQCIADidKl4j56QaarmD1cRkz5z4diSW2j/CHfXMxfyazsbAiBPIfGZ2NF8wOwtvBWFjn5nguC8i+3M1k1E0JcjGVZ9DA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132636,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCzQOCRA9TVsSAnZWagAASbwP/07zBlvtobmzGdvPI+lW\n6GR+NeKGP1zCS+MWEmr+mrcUowLBC5WQemYUhDzkgPkcdrV7b4kEJOheIeMx\nCku2FKrNiSL17EDxSOoADyUIRtn+iLlUXa3I+4Nl57GKX/MXgOk1eapinAt8\nh2P4AaBaVJvO8WPjShqQ19SgY1mprEUeP+FyuRmZbhxS7w2OkT5FOpq0TFUi\nAM/3BRHa8MUL/A5p9UXzF6cjD8/Vq11R4vszolJRgapzHCprgJx3NGRszPTp\noMR7kq1x/Ag/0/95ytyOWUQERQdNSMpffzArcaIfkQO1Dy4NUKUSH18rOqTq\nYoNrhVZBoXDLy3o9cjYtUfzMW/oZ309mfPrwDkYJBp0uQEAmqyCkSa4Ca/wN\nKoEaqxNGZM+IE0NBprH+owaJN8wMuf/WB4O72AhQOWqxolSNZZjbhAP6AU2H\n3CBziwXpbjbo7MQ0aas03n08PTnvx6qIcLc30KP4+DCjWSY9yhiAZBBzj/r1\nz+0wOk9jdTlnBQr+ZZT+bLkSpZR3M8OoHohAZdv0RnWWsN+Ba5rKGzwqUSWZ\n7XJUMCkqUKO3DMUvfi06jd4SmV+Gsnqmr17sNeBNpjXOh5vAmWeLMOVYTQc9\niiJwXb2qTKU2DwtwHtvxWeIOJQBKRUmW8q66gJGD0CwQCsBFjyVCIZGD9QDS\n2C/u\r\n=hYVj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"43110bcce3082edcbdead6abe2c9c6c21fcdf9d7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:39:32.790Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.18","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.65-renovate-internal-patch-43110bcce3082edcbdead6abe2c9c6c21fcdf9d7_1628124174501_0.752807488639408","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.65":{"name":"@balena/jellyfish-test-harness","version":"6.0.65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.65","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"31316c437a9fd985cb70722eb9e368b3ec595c19","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.65.tgz","fileCount":24,"integrity":"sha512-T5f7E2UGXypSJFHJAb81lfXj/899YQSAhkfYkELlUYlRsCp83NOK7eB163zMecjUrg1Ojm5TNokjyiLeHQ9bQw==","signatures":[{"sig":"MEQCIHaIJoJpqbVVxMNZc89u7bvUMDv7K3Ryij1hu2XSyMBzAiBm/PXAEJS4/k0hFE5gklaJuL1TCizpnrskrR5/G/Jo2Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132571,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhCzTxCRA9TVsSAnZWagAA8kEP/2wp5mJm44ShY29voQ+8\n53gXJKvvxgvYRUJbB9O69lIQFYG2WYkRtzvJLZOuVlhi5U3Mce8YieOdtDKQ\nyemccIW5+U/63R9hpSdorrZPgNHcLwgMBGhoCB8iRZ5O7KoFdoeTzwP62n7z\nDy9/oBRLX+ka+Chqzzol7WellMlY0cwyvFHllOB3V3i7yUDMC5cadmTb3MVK\nDw9bn9ZM5OBkNPe526TqxztMha9wj9LCh80rTTOfSTVdRqfqxNsIAHHXpWYg\nwCXjHfhNx2Jz6C805ch22k8g7Jp242Zkl1TBnadmKDm6/YU4g6aZTsQdMPXd\nkF/lRCBhZP1sdfFqndPhT+T2ncKJn88SWxAEev7TKM0DmlQevgVmFns5Vyyi\n9Q3hRcAFpNO/rvGqVNY7L0qPAWGUHu/ukSsrYuS9xr2ZRYpKdE4zBYTt6ElX\nhmADlzAs2snk/iSW6n5SquuHlQTY4VJhL5hKL8tjnSykIYZkjrjJ+1906jJd\ny8CR4yNXkFZThf8z5ccvq0IOuaVoXxTCnTmlujYJTGvFDNGtkc/pYQYSYPEw\nyBjVPsdNgO/ArB61PTXUadgoM9HUh7ZUnTr+UsivX8/KrGfIu4e8LwAO8QlH\nEPx0qmkMzIKnh2bP6J01CIp4tDuQqG6jqw+pwIlUkNJq78gwsTjA/uQMIsWS\npRld\r\n=yhpS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ded35923132b41b5d0b5b419020e3fbdd5c7143d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T00:44:52.652Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.13","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.18","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.212"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.65_1628124401418_0.8929135831821284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.66-renovate-internal-patch-2f1cf78cebd3735b9c07826544975a9792e97b77":{"name":"@balena/jellyfish-test-harness","version":"6.0.66-renovate-internal-patch-2f1cf78cebd3735b9c07826544975a9792e97b77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.66-renovate-internal-patch-2f1cf78cebd3735b9c07826544975a9792e97b77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8cb0e39cf17bb4a1f2da0e33381bf3a68ee9a837","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.66-renovate-internal-patch-2f1cf78cebd3735b9c07826544975a9792e97b77.tgz","fileCount":24,"integrity":"sha512-7058qLyDgYlcqBkHavJJUDIU9UcXpp+xN6zGfL/CuiCVhv3LHl2IlVeXvt41P9LhnoXhY4LMCKptHVutSLAlwg==","signatures":[{"sig":"MEQCICZ4p/v2uC3DNvMjh0Mgkwo7A0YIcOHRapybDrSUbdGkAiAoXvTIR9dJuIFljD8UUzcP6nfBdqQOS6lPubcgJvKygA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC1WVCRA9TVsSAnZWagAAtr8P/RuKeNCGjqKYJIUM8X7o\n7XiYTMjivi2ND/nsGLSquABKP1/JJghqQHrcLHTOJV1MTcNJor5ctU+6GjHl\nJEXSCElV67QSaRHop9IFaqy5KTtUqpNCpfpQz1t0Xbh61NT0jHXwq0x/N+gl\n/9ZuzClipNTSmpeihkI+v7W2M2tMoIiwj68w0uE1jau9JaK7UixXHiW2w8qK\nSU2NDVogI+n1HF4/nLGj4Wlnp86CdT4hQw+MkeXk4OKKvQqhEwK1dhQ9RtCv\nr9uckilbBIAkfU0+PaqE0MlZVHBPQcg3fRp4SZqM4Q4m2sk6pF+kae4+Q2k5\nFRrPXRzBFFGQyHg7SD4h1RV8tFHDH98HJnumuEkqJOAByM8CGBkXSA6cUAK/\n+IKfE2OhbB+I/calvQHVixCPMu/stqKRlfuXQ/9inUhI21WPTXUPhulP0WLU\nqhLkm4yXGlvie1HqDzZaawefyOI9+bPxjXUAQAh3eoM6VHj3obVsOyJIOoNf\ngqpicU50Q0Xd4a5HgaeQdZGqj3J4iL9QmQmMvSdYbxOZh2SDYbV6dbyOeH5G\nXAVNlt6Gj/kkuTbqzzeeAa0v7td8ceH3qWX99+4i3vJBNLXtHD/pLP77Knck\nGVDItDH9ZsltobGA9sRrqz34S3GJFrxxPCaJiEJT+lGFoNr6sB/162JL2g8A\np65H\r\n=2ZMf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2f1cf78cebd3735b9c07826544975a9792e97b77","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T03:02:07.233Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.20","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.66-renovate-internal-patch-2f1cf78cebd3735b9c07826544975a9792e97b77_1628132757031_0.9207544267397285","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.66":{"name":"@balena/jellyfish-test-harness","version":"6.0.66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f80a962bff2d2d96f9834eef817362daa1f2fca6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.66.tgz","fileCount":24,"integrity":"sha512-fakfcTyKEY/FYDLKfmq67glHISYbVP1yEbdmQwHDaK1p7Q7xvGRIaYh6DIH/zSG9Q7lbGSM99D/Xi6k1E4iV7w==","signatures":[{"sig":"MEUCIQDfhf6aXfP4rHKD9Z58wtWcdqchM/fgPMhOjiI775r9ggIgJ8o6C4Qd4KNbY0lFD5Ueddgdaziw8TXi9HXNehQfWiY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132645,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC1ZNCRA9TVsSAnZWagAAewAQAIQjLPYSrh1+9wFbrbqM\nsTMhg6QZI0e3ru9HAAoDdLb+v79k9ZJKRX0wkfP1XZxvLj1z/SHnw33PJh2K\nUxbYcaFj41LRQVaU3D8m+LsDShYM1BGIAO4GK9tnSGYXXbat1PboE/cUGUzR\n46pN/jTkZsIL0M/nXcDKyPoDw0oV+sUCCQRI5Na7w/Hi6k08tN1dGwJM9cFH\n3wTc9y5LY8/+sVAW/o49LMSiK2h86uawPl5MiRPvhOAqz9iAOvFycdawjX5s\nqgf5n+r4+SpThVVeToADJz1ua6b5lWcVfPdn6wyBw3Vw0HMeoaiZnDs6OKz1\nQijcngpqlR8DPVFKR3Ubgd9fZyZbn9ZNp7cdBrO5mYf2yZoEcYw7+2ur5D+L\nvoLRXctcT60ezv9fXTPh8NbJ/EpIDcboADaIwRYyJk+i8wDfm5ae5+HAvcqV\naKZiKliKksRLzWqpf8KE3fIN6afNtWh6mhPUbWdi6+0dqfkQxRVmb2lSBqC5\n7Gk0VLM7YFI6Sy/lg6dUiJeB0zM1A84MFSLaRIvW5a8KJ0X80H843Mfqk6UC\nnLyH/eFQJWrv12gqfb7I5KZiSXTR6PBCcCUnrmhjqsM+qf72QUywhLuvX2Zh\n4hxOJ0v/7pNRX8XsohZRni8rDgAddAJ+d6aXCrc1Qi4+1yM1Gal9S7hBLNIx\nlGZU\r\n=32Lg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4c71be6f6938f9be97205f139019d2830d364404","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T03:06:58.653Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.2","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.20","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.66_1628132941494_0.49070330766527714","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.67-renovate-internal-patch-cccd2dcd09e235e8c42c6c160100de34aaf1dce7":{"name":"@balena/jellyfish-test-harness","version":"6.0.67-renovate-internal-patch-cccd2dcd09e235e8c42c6c160100de34aaf1dce7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.67-renovate-internal-patch-cccd2dcd09e235e8c42c6c160100de34aaf1dce7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"71e50c17175e4bead00be4920fcaf6ee0693c5e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.67-renovate-internal-patch-cccd2dcd09e235e8c42c6c160100de34aaf1dce7.tgz","fileCount":24,"integrity":"sha512-VDJ4/IMHH2J3xo7hCYYL+o7JNKhfmQCufpQOZvvXUk8/e26x00WK8YBcsklsMFo9tG/ZpFShJWoYltyaQrqqiQ==","signatures":[{"sig":"MEYCIQDi5Za4DN4L7974GkK/BzRiBVlndWXe7Q2Uuo/TDVrONAIhANxRUz6alKakqcWtxrOzc5BTsGdZS0jg68X8jLlcwcAV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132813,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC7lDCRA9TVsSAnZWagAAHhIP+gIYPn81DM3vmh97eY1a\nkG4fxUU2bl0MC2BCkp9ZH7HXwWvAjrV28A9WndwlbCJ9lsd5YSmo6BNwYzZy\nUnF98XZArgsuqhczWvuONamoAlZLoCWJ3o/UleozrkAnupzBQwxdkAPsAU3F\nPsCSV/t0LB1pDkL8mjZ/mCXSEkh+ftttcQB2ZYZ7ulXF0/6Uq4UO8MJMDeDY\n2z/US/r/VJ4H+5ivU8BoGnJ96PfnDwVTRi9kvgjStRoUTepCUyaeRhSRxYQr\n4jeutUwHTsFgv2v68sX7K/fVqYGrJgnv+7l63WHVMg2R5Ek5yWCA5jz3pvKI\nWMlo9W7eT+Hkmqww+a7glp30xhaS/5p5Gw2X9kph2qXIPRcLHjYLpMZ6FV1T\nuTL65PRmQEfPrYIbt8sivBWKmWvbjqMyvj861U93lFWtzQUnBpwPsKhWh50d\naS3dvPC2JhIBC5bCP4HxN2VAFeXvEb4WvHtyqSeR+w4Bq44f0b8Atv1GURfr\nJTgvrYPwLCk6KZ8WMeOjuusJYRerfzZ6x9RRc4//K42nEZpd6wn19RHJrGNS\n+ycsydEhQ+F1aWlQUx9p+5foHL/vutQsUQCYdYjqTxEugWFlTKeVskj0/c79\n1WjUtl/9yNK9vv2XhIVmyfAvowG/5yIO81oJS6I2ncTVu2YZnuND2kKyXSxK\nj8+6\r\n=rV4M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cccd2dcd09e235e8c42c6c160100de34aaf1dce7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T10:08:32.764Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.20","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.67-renovate-internal-patch-cccd2dcd09e235e8c42c6c160100de34aaf1dce7_1628158275385_0.08465051918804978","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.67":{"name":"@balena/jellyfish-test-harness","version":"6.0.67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.67","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8894b0cd07d7fa30f613b1679ae865ebaed2577a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.67.tgz","fileCount":24,"integrity":"sha512-zNlcE/Ek46riqWOR95cAvi2UAQ7fRK7cfTcgBR00Qmayo7MbxMeeRv63xwtyRFx6ZqfiABB/k1/OfyTPkugD5Q==","signatures":[{"sig":"MEUCIQDW4oEcXmvaYDJwZQ2mkP3MPAjiPiK9XTpT9ttf9LL8dAIgba1zOJTu0xSOm9gAJExspvZOlFJvhfsfwDErvZpjQEQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132748,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC7oeCRA9TVsSAnZWagAA/cMQAIxSV/pDDrYzMP2Uxyri\nXmdYYlyf4m2n8yTm01IY/8eg6ghW0K/hPzEOgQnXfkYXu1yLvDW5YglkMXGc\n+QqTwyxTYQlEY00ZXZUHiKJqbeHIiF7F0uW8N+wSynH/1NEVlQ8Y/JL3BQ4V\nwVBQfVfa0GqXXBSEfn5qmQcpVQSIl9UV0dRVnzzHMlDpe5gk7diYj4dXDzUo\nbNVncffTOvFAUp+CtWamz63n0SjycYHwlV+VhCRB8zrWDM334pHJZxO/hQuH\neITzOdk8eb6D1cWIzhBEAL9jhIV6yTRkFagOoo3x4Syc57VWXK+DpHRiS6/o\nzldTrcjNUMoXihqvoOO6wkLsUm5mG/gtSESiB9sIusydoZdRH6RlRjgdta6v\nkevo/8s19oFS1uTcPWB+OnlycmcRLOIXkOwqBYuW/lFThFZ5u9pxo5eTpSvi\nxiXu8d4Pxdwp9Lit3bFbEzH+zq+QkAleC5eigZPmM59yqEcj7czQY6oauh6p\nSwYrYhkS17YeuIxUqdepitd1tPVcxNeoaH4WzOVqUz6QCwxZ9/EnCjDQtps1\nymcsw5AwMNav5H99HnlYUX3ITo35G8nSgQcSvaV7KdEwY9SvhITIwMjkDWgG\nblJ1R+b8IZBu6K5bOWt8p7y5Fu4EpDzrh76WBM78rgzKsHq5R7e8zn1M92qe\nxCsH\r\n=jAgV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d8da16b3dd82cf10bd7bd0fa56b3ca15d62256fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T10:13:13.243Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.20","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.67_1628158494505_0.6068591394194325","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.68-renovate-internal-patch-85b5111456b1b05a3e24275865cd270922927301":{"name":"@balena/jellyfish-test-harness","version":"6.0.68-renovate-internal-patch-85b5111456b1b05a3e24275865cd270922927301","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.68-renovate-internal-patch-85b5111456b1b05a3e24275865cd270922927301","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"182861357528a959cdd487c4f0463e0db088335f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.68-renovate-internal-patch-85b5111456b1b05a3e24275865cd270922927301.tgz","fileCount":24,"integrity":"sha512-rU4d7nBfd4qFRBF/JJ7VznHSbHdYyY/mOr92fcZEW5hRiay6fashDmFg840JQAxvp+fehebgdMu1RL5fhdN5/A==","signatures":[{"sig":"MEQCIB4yIqc9jN9Tv1+Rfczvk+VYLGnWftj2nX2oflLmKF0zAiAziRqstV9Vbo9+zEzvWNOUxjsiS+UrbXPP6QsX5q6SFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132919,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC9JDCRA9TVsSAnZWagAA/6IP/iENEEWNYHY8mCUWDE8q\nnP+k9fcR7XO7oLc544Q7T6GG9Uzpx3p3pzza9WCw8xvmzTTFa6cc/mceVmcC\nnBpCPZfCAh33LBG87gPuR4PKL+gJshQZ6jMCGQRVLc55/ou7fw+rRYo3nixw\nNa7KHNIsVmctF2KbQuXX/pQT4s6LPyBu6Dx/R+qDEZ4IUdeyRel6Y72anz0M\nBiteObs8ky6Kfn7dJPsCXf0+Nb3u4jxSWj+4IHCzyBxvZ0WWayeOE8jdEUQ9\n8E7qV0zTKwVpWVpcXyRLoA7vhlMWdD0+6UlEtuEjbK/kZR1+oGIjs75Mi00S\nL6ls8ll3Hn245Klw98YnQHtTg0hyqt8PmUytWQcaABdVhd1f1lv33MHFDqt7\nAMpmjTz0WEHdfLHNOI+NOiEc+PESGrCuvVzIvrUTkCJWBmZlQmGl29T0qTur\nwUvWTxb0kJEDMIlZsK/ya4YxUsXgJxIcPORUAcPVTIjruR9/1YeaMshGqm6c\nNusVpZtI50W8n6KJzuQUoeVn8sYacRePEq10cdRwyMyHOzuXG5TeTI8zGJMV\n2FqSpJbXL4BRD0xa5hJlaWG0U9TCo4Z5QItc9UWOWXKxyTr89tdQ/kCtd1e+\nfSBFYW9wuww8gd+3cTZsM2EtdmVq4VmVYKMTqL4hl45TXY89ihEwaCW8icxx\nJN7p\r\n=44iY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"85b5111456b1b05a3e24275865cd270922927301","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T11:54:30.977Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.21","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.68-renovate-internal-patch-85b5111456b1b05a3e24275865cd270922927301_1628164675209_0.29091613815717277","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.68":{"name":"@balena/jellyfish-test-harness","version":"6.0.68","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.68","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"54a3448c23b589b2d663af01ad0ae954705cca2e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.68.tgz","fileCount":24,"integrity":"sha512-iTU3cYmcHMXZf9ON+1bILfrd1oY7bkL3vIrnOCEAB1U2TuxFd8JW3crY9hUs2xGA46dJyQXJAXiUJbHxsV+yvw==","signatures":[{"sig":"MEQCIFCDhfEXy634hakMjhoOXbmjrkCQ1UpgPxDiO5C8mRmUAiBMU3JGrJKFupenEAhYg+5P+1/hftbK9kTE09vheRtqMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132854,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhC9OyCRA9TVsSAnZWagAAzAUP+QAH+Cfg/bg5k7LtuQpI\nNtRN2X5aXNPVxIZyYwRzSOFdD+dhUftdEY6TELKqnHxPnZPlj91J2iZVY3YR\nYhpQJWmluibZPtqJiK+s8xqAtpqXi5P/OTQYWlshGa7+NKWVFTkXDRi9iQOH\nupw56K5HFkKO6Im3k5yqO66v1wJaecHhOKycBwfer5kWSnTnDNX4B/tIvJd4\nQ9dkgjsfYdYLiyjVgihbDhlfVlBQ3FAXFlPH1qq8X8W4s1bKi2ESPwHR5W7z\nKAsDka1om18eLVefT8SsICSfUnviS1eE5sLR1cF7sAPeG6NqZyVk7P0u+Tlx\nBSnAmKKnrvclVzN9jgek+Z5ifzAO5m/jbXTZc0080uM1VjnMRQk2TvEypac3\nc7FWk1Pc4qlAJfz4wQf/4qbY1EnFIgn+etQkICKPoSPaisfvnSw1MNCdstNg\nyQFRY2QeSrosoFmyNcrIlbQ/NFUYm28wb4+dQ6cfHvwDXsELu0nEHMWjJm68\nWxcCfGw39MdrWtxl73eaforlF1YurUL1KhSE1MaJn69sCvhcewKXWsD4H6oU\nbYTXOWPL7aA+bp6b+THzF4S8xPuKUKceNfkD7MeAYX1/aSMCPJFSVGqs4cXO\niFsmMfSWN19K40EFF4Heugf1bGHvRcM/4C/1Ei5eZ96Sqnw6FwMKqkuosIUl\n0eKy\r\n=aEIV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"337d618ba6b2d64ffa9b0b3b96017d670150417f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T12:00:07.051Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.239","@balena/jellyfish-worker":"^8.0.21","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.68_1628165042513_0.8590947151094528","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.69-renovate-internal-patch-14e0189ae4b383b5a4016f1206d6e19ecc70cb18":{"name":"@balena/jellyfish-test-harness","version":"6.0.69-renovate-internal-patch-14e0189ae4b383b5a4016f1206d6e19ecc70cb18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.69-renovate-internal-patch-14e0189ae4b383b5a4016f1206d6e19ecc70cb18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee11ef9466282611649829484e21857797351001","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.69-renovate-internal-patch-14e0189ae4b383b5a4016f1206d6e19ecc70cb18.tgz","fileCount":24,"integrity":"sha512-BwudHctFwf0em9BlPUIHnDw1fUZ/s+dXRmkIIc57FO88s8l0tOlfcuGo6tS2H/0PloBWejT0N4gA9NiG5YZ2NA==","signatures":[{"sig":"MEQCIELdGgDNLc30pS7TfOqHVkLlzGGBgLRtS3AjZMfhd5c2AiBxHKizMwdZlLFdDrupBQQUNbZseL+Waclyzr+uECUAhA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132993,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDHucCRA9TVsSAnZWagAAbNIQAKDi9mb5mAMbdzC2r6Pe\nwq+A/FFgK/HfTio3teh5i89OxS/2mVGTbPCp8WmIPwoN0OCcZBuCz8m+CGWW\nfVwjLQtbDW0C6hlBYxp3GgPijbXtV+4V9v7Jb7xtWVjeO86hMSIbGVs7o3+C\nB0rxmsr2aJgQDYHvWSV2uPXpoapvfCTQG7nubjqtnw+WvUSelNaujtv/G5Mg\n9OM6KYxuGvLcPsBYp3Fmb5uBQ0rWTW+bY27wQIVLIyugjNnlsOlweJW7CXcS\n5o6ocsbKV+IRl7ewTuOx8cV+0K7q9EMU4QSq0Vsfdx6E4OpaG4EUb4ABFM1/\naFT/sm+4aCBb0/4wSvISxulritG78/wxQ6PHvlwUSkjnj3oe1Vc47Ucn83Of\nvr1UB5TufaKf1H0l8zo5Ry3KCOCiFUO50LxaeOwk8ClqsqHo+F7TH/SVcpVC\nTX90Vt0Q8L60yxz3HpvoLrJNNLhMTyM/pOPvE/tC71JRKGPOkjNRbd0YyM9j\n2v1FXuQGn9JEZAGrQCCSybMrepJ44VH3N1em3Pi7Zam6n8VXqnviH19GaeKm\nhrQ+PK8iI8yF+FTK0T4BQeFXwRdkC3gkYjvljdLtXSpO0F8z3lus3XtWN/12\nySC7nrh4MhpO9GHoSmq6UNPRo1H3SMoIEcd9SZeZ+DwGHKkEoH5n4uzKoIsD\nAijL\r\n=MrCb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"14e0189ae4b383b5a4016f1206d6e19ecc70cb18","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-05T23:57:20.075Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.22","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.69-renovate-internal-patch-14e0189ae4b383b5a4016f1206d6e19ecc70cb18_1628208028075_0.029646028242319655","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.69":{"name":"@balena/jellyfish-test-harness","version":"6.0.69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c7fb352ab8d5315183fd45d954672254cf1b07b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.69.tgz","fileCount":24,"integrity":"sha512-VAKIrK6oYA6jAPLX79LXKb8slFkOfQH/TWJXdRWZsySQR9IQWST3CSy3EYgstYnD/3kKT+YtjVGfj6NwooITJA==","signatures":[{"sig":"MEYCIQDg8BX1Na77Gat01DHOECJ+P5cG2ZV2UtnkXPsd3QK6SAIhAPgo5cgo55qKq8/AYIVOt4uAHH7GawyaQAODtZ3lUf2t","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":132928,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDHxUCRA9TVsSAnZWagAAL4EP/2wle6vIFxAgeHuTwycj\nzOM8ToozK1GTkCmdmIS3M+WBjZmyWrva72zPvrksV5vLvGgqBUbX4siZ1VM0\nXLxy04Pcr/SzdEU6fT988nw1irAlCfF2VTiWHQxyEwWxOXDxMcoGtSnAm74I\nb/QnL4N5J0HNU0M9mdFBFsKD42ofjFeLl/BwKTYNNPqSy9iTlhblojZfhnsd\n89xL8EFcO3sd4YeUv7g5ffxCCNpk0qc++yhTTUO7N6EURMQsudBkWKgA0Rs2\nnScTKv5tHWjtgtLQdlNsDUjwN7nv1NaCqGndvxop/Vu09NFLJxgXlwPWgb1x\nnRZjK/z0OCQFXaMESoZK90oDQ9Q+IrZBDNMmtSQIGdgLT29fF/p6f3N/sOBW\nm3EwA8cw/hyS2SYJ0x+Ter9iJ8x+u+ANdxiLWNzUsNJHkNTTSm76/av5Y77g\nZuqw+5BnIQIH/vHCCByVP3vxwUcgSeOA/iIsITf1rPUaerKZGRFba0VM+ikT\nUPU1+fuvsxj2UCWDVfhPfi7wt5PFqOkxQpgXvaugiREXUO8djnCLH+5glwcH\nhILbFtMf7SaCnt2wWAUSAGvp1nuSCPnVTrswlE/QdS/0LRK76GYZrVV0l7vb\n5Z0abQpCYdcmkiIR9xbV1bprKa6dxpqsqIAChXnN2FIEW+HUf16fJLAuNygu\nDfK9\r\n=YurH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ce764cabb9b1a378da6668213c24029e0ab7bd70","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T00:01:50.305Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.14","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.22","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.69_1628208212614_0.012317203211858585","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.70-renovate-internal-patch-0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a":{"name":"@balena/jellyfish-test-harness","version":"6.0.70-renovate-internal-patch-0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.70-renovate-internal-patch-0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e53f571cb90a9eff7945e440effcf5cdb24b23c2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.70-renovate-internal-patch-0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a.tgz","fileCount":24,"integrity":"sha512-d9lETSTOSXsJFPpH//WPG5JY1IpXZ+jEmXXaEDpBngXNSFFi4ropRR6PVnIF+68dDFeStauiapAEllS9ENnFXQ==","signatures":[{"sig":"MEQCIDBYkYylNZ1Hd8gXPf2BaMKk5Ayu5raBpfJ1FOaySo2XAiBBJQL30wACUtGcKccHHrOUKXEOSnJwfXRyav2pg1GHTw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133097,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDISjCRA9TVsSAnZWagAA0L4P/2wZ7DyQMtFEYjprDEqo\nwWw5pepmK26fk+ZEd+rWVwG+jvWw1kbHglcy+8f6BpsOkiuUQwVe++0Ec9GR\nv+5WDmg8607HmEuTm/S7ZZOPG2ZZ60BqPqCWLKtJCepd+Hxh9LHLoifInSmN\n825Clcyk+w7Mm5ZHqzpXodDSrd9EHEbMX9RJkxHaTvjkZV+PHqwe9unyLmTf\nJHI3bAogIMd+srBAFa12W12Oxs6KfpUErQ82Z5wpPJxi1y51q0Puc8ivxs1k\n3TgvuUZU0Fjwp3Avcv0haq6aVwfr9SbcPAY9Ocy+4oDiI1qjac9lV5OuvGE+\nQ14zS2dWarJmtVtPyYODnXnqNeGYh0YipYeuk+50JcIGdlUlHbjFh6gwwvDS\nVmoEjpkxayUk0d12EV75vc7Quc6sI6T7v+hIfglRNsr3UypuOaZu4kgVSbem\nFWt0lnFd0OLUOq2pwyRWIRF4DJD8TBJ6gb8eg+XU4ShrUxz4z0t0l8UywOKz\nBykhi8QrNdD7HOLwX6pufMZagO0+1Rz8z16sWhKvTwgYvJVjgj4s8E85W+D+\nRl+RQOf6zZpMTD0fynkXwTiKHTEeaU7fVWs8r0bOylkqBND1IsN8XNJSZWxE\nPHPBYDD88u+g1hM39s4t1pofyblxhjIhESxZC84V57cDLcakkvLag7W6WTVB\nnbli\r\n=lf0H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T00:36:00.989Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.22","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.70-renovate-internal-patch-0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a_1628210339328_0.663557462046763","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.70":{"name":"@balena/jellyfish-test-harness","version":"6.0.70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"728495840911d24f46c6e4ca288e65f004b2da1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.70.tgz","fileCount":24,"integrity":"sha512-PQoeZWBPuKfbjaW+olW6EVLaRbL7rsGle30/xGv5r8FxJNj+02yFsflxkOl7YcMJe7TvDpjTWWhkXOD2SQNCMg==","signatures":[{"sig":"MEUCIQDVEpr2Lug63Jg8/ApmDsy/LaXME7YrG1clppsu7PStgQIgVDZGVjiJBPctVfPLlzjyN0MK8HSQdYPrzjgHmcWPES8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDIWiCRA9TVsSAnZWagAANocQAJxj2QwwW67BW8+JO/Mi\nwAesPyBxiO6rlISaW4fvIyzyPRk7RITIevBZs/lPny6W9VmtPvmrKi+UO7Yl\ns9Dm/fufip819EIp/eR/8u9GXFQ+WYbLKLOc+VeBSi8ygwx1zFa+2IlPsM+u\nA14NeFDAWtDVkPSQqNTnwXngUYn2p8Tqq9fh1jYyAFbENKfoxtCblWRQ9aJx\n4wOY2gkJwE5bs8YX8HMFNekmKeKp3KE77qqE54AI5ZgYkbjdYW2hD5cqOPWv\nyQIz/b74r5+eQR65BVaCr3MRY06yaPDdU7s+3giiKtR0eLMxii6SIgDh+MNj\n9s50+GN2622qnbDuCzaQrzJoxaRrbYyAvxGKTt8YJH274+i2HPvYRFUbuWru\nw9mH93ueDbaTLqPXCmK4upfI7+Zzc6PR3D5pooRMc+H/xh22kxciluzkq674\nO8cXekgji5R0/26G7V05ztP3RVp5OmkmzM1s6wUHSvdQLBkS7JRqDd+zadWT\nvH+yq2aFx0GPAifqx4hfA9MRFYTWw4AxnZ6RxJWk/9UoF0YQJNX064xsWtRv\nNyOVHutgd+vbUHcJMpagDhId+J/ayoqfqBbiL6EvxoW9LK1fQos0o5n8YUY8\nTaIIXd8FjO6jPHyZYLc38PMn5+nkTWbLuYmjpmnbCWXm8jnidxGytUP8VC/T\nXZy/\r\n=+ro4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cf182c6179a3b4c0bc4e62a0fb857a16d9087554","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T00:41:03.197Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.22","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.213"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.70_1628210594695_0.6571748726424194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.71-renovate-internal-patch-d57ae1a898341c56d1c989c3c0f0e63f631cf0ff":{"name":"@balena/jellyfish-test-harness","version":"6.0.71-renovate-internal-patch-d57ae1a898341c56d1c989c3c0f0e63f631cf0ff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.71-renovate-internal-patch-d57ae1a898341c56d1c989c3c0f0e63f631cf0ff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb5c17845b2828533f6a6f1dfba7dd56db7e3357","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.71-renovate-internal-patch-d57ae1a898341c56d1c989c3c0f0e63f631cf0ff.tgz","fileCount":24,"integrity":"sha512-30WmfltdlTewNz7owt2FHV/0O/VLCDe74ieUaq5hx32Zi90KnePKWAHkyr+wNabR2XOwqmvWyaBD1aDdFd19NQ==","signatures":[{"sig":"MEYCIQC+JxdL53Q8tVepDkp+SX8DaftOhq6wDpQO9ILxKCCF/gIhAJI0hEYrKH7xm3LoJY77p50HKoyUkePfIYzYlrUbEnHi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133209,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDUW4CRA9TVsSAnZWagAA87kP/3OfPnyE53iqxi1Dy2oM\ntGJv+1tiY0G9lnVOT5qdSRQ7+Uqi/RloiT5Yw659QHKMvspzNpBVPCfr7qlc\n9wDiy+HfmkxZqbkCCkFBla7rxzcNn7QIARDKFkZgNsJoQI8jkFt9+b5sWRMw\nDzg+fveT5cV2ZxCog6WBlJ2NaXBgHRizCp9FXUf7f3+lMY5Tvc36aLh0p5tU\nDkwYeLf8esjH4NABzvFPuDXagKOtkG7xa6Z2yNdGP55c9GhNCk5KqMTxeQs4\nVxIZj5xcBFO7GXCdc8rro1c3nzFw9lIU018tehVzPQHUQ92zuMgPno4ZrAdA\nH6JM0+6DYXeYz0+V0QLCJesXb3J4z5YVNq+zyzC0aPHzo+xgq3C7OCKHVjwr\n0mDBewU5oeWrQ0zxFLWJCS3kibDaI08CD1HIGQGLhajZXDk8tYVk1CvcS/6W\nUAyAA7L5qJsfgC75vvDOxPgfza611z0JIyFg7uEegbxfMPHLQzFwsqTiqm8I\npFXRGnElJEPn1IggfW7uQf4JVDW3KmXGLDaqCTkDbZCcCsw9DMCsF0J0W6JV\nEcAyiZuRU/sxHTv48/RpqklC1I/OnXJP/dx67rPTCGU7MbLYGkzdbrCmbQ7V\nc5/HzfwS01uvnMdF6Jdh5gpXqGrOyX9LtazGVMyCUqZ+Wy5yQf6NfiBff9k3\nXhDi\r\n=pVGG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d57ae1a898341c56d1c989c3c0f0e63f631cf0ff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T14:19:54.297Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.22","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.71-renovate-internal-patch-d57ae1a898341c56d1c989c3c0f0e63f631cf0ff_1628259768367_0.3252807650249874","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.71":{"name":"@balena/jellyfish-test-harness","version":"6.0.71","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.71","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ce249c46a21dc04ecfdde81f398bd7a56794c68","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.71.tgz","fileCount":24,"integrity":"sha512-vSGVqQ1NHp/MBjPsMIZX1LN8Zt9bbVpRjGhG4ofk5hteCPy5W/2oM8/NwTLMWIU4BOojpwUxaJmEyXkrdw6VPA==","signatures":[{"sig":"MEUCIEwKEIbkeezRE4xHEExK62fgt+yLAAWEdc99yeG58dsuAiEA8U3GJPzAuLZf7PfjyawClLyGBPk+zX5zU0G8vPnlEHY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133144,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDUabCRA9TVsSAnZWagAAAlIQAIMBP1gVK/bmnDRw9hOu\nExOPqvMyFC76ELXwSgppma57O1l0Te5umFATRGRe/if3izmWN/pmNhlsyuez\nAi5XPpEJ6e3JY2h1Qh7k6cESxyxFr7vwx3xz5FVvjFDa+Umw0k/P36VxslXV\nAfOd6LKV/FVZ77mbqawxRbgrTMQ+rtKIwB6Ioupuxg8c66FYVRZFkpnQzLJ5\nhztANv7yH53aVfEF3rD+A/Ri/amQ5HnMv0vzUC8A5ly8/0Poaj3cMBDkNkDv\ntDqq6jD6/Ag22adSq/Xvb4r9xMbt3oqsGXmvW/FzEzGbDISzNU0ITm6s3fln\nZ0gaikGKzRk0HpEEnw4DWA5NBlSbagGeTHUdeOledaxIJmAM1ickQcwmyNjv\nlpgQZKDBUF8M3CzoRAHd6me1OpZ8TgdkON/sWUanwT/8ehyWzget2pGXSnoM\nQDrhUtcNsp+w05RDI0DwhSByJioK10obB0EkpCl7eB2aXo6Me1LOpORFOL52\n55RuxM6MKkr4a3pU9rVHaMl3VwnHBdjncRyrppwW0xHjJ2b7rNd2SMZco1CX\n8B4qmG66TS3u6GxK7boNwsw5wCQNSO75CwU0w6Hhsu7Lvgvw+u4V2tb6uwKi\nIwmZaFdFrH6EfJevw7M3IPJgNsnBgc4Fnu8AWGQOjthDZLQqD5g4UEEJmGkq\nuoB7\r\n=CVGg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5fe2b6ddda1daf0e779b8ceac51355fdc0b60ad6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T14:24:09.245Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.22","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.71_1628259995202_0.9700384421390467","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.72-renovate-internal-patch-34df1de623dc972014bbcbcaa7cb1b1e86991337":{"name":"@balena/jellyfish-test-harness","version":"6.0.72-renovate-internal-patch-34df1de623dc972014bbcbcaa7cb1b1e86991337","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.72-renovate-internal-patch-34df1de623dc972014bbcbcaa7cb1b1e86991337","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a495031070cd389e647858be4dd2e96a2876f8b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.72-renovate-internal-patch-34df1de623dc972014bbcbcaa7cb1b1e86991337.tgz","fileCount":24,"integrity":"sha512-i8DXxkS9qbPTaSH+HJ2FZG5TPnivm/Ih5QLT19xG4iw2mDtLt2+X7VVPyARdPCJho27dslQaqXzFG8uWeRp41w==","signatures":[{"sig":"MEYCIQDoBuXxqf9AF9ENI7dm7mbWPGTza0l7KASTDywwqvb3cgIhAIQ9pTE8Nx5LXbAGThSIFfslAVlPYw3hHxsCIHh3Acby","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133315,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDWOlCRA9TVsSAnZWagAAdTQP/05BB/HgtJrkCKcFYgOX\nRws1+VzU5wuP3a1xZuyYI4xeQ1aGlj7efLykh3IfDiPXiZSMpXhEfyVfDij2\nuEsnfmcCZU2Ziz5WkCR3F00479AlMaY7xIfTFfHwEIYWLh8fBMoEnoX14euG\n8e6cuXqm2XihjvdJqWXRHQwkwyYRoelbqxJLGJL7vOQmEcKNr5W6RI5YfkjD\nXsgKSmd26o7JHhoRPMNWGKNjVnybArlFVaiiUFwnHzwCLVfhkWgDk8qN77CD\nGw+JiCRyNpPM02Lzen9G/uAsg69FWpptRsjqvKeSggNtXaiRgHlOexRfuk1y\nfV8OavZacWlpSyNbqm4UrZmSn3HlEocpbVt3eXxxPMIwb50shQvT1oxoRdwc\nP6BwuFwIEGwWfMAVFmJupvJhULf4NyXFOeANOsgyh4yZaafr0guJKzcLMc50\n7yq4gmvLxbBKmctYII35KKxVlevMCinF3tz/K5KWxseR8RYtUcsaLgAl+sx0\n2pni6ruI1RXvx3s9/IwBhz0M/DPvl6R01oST3UT65L4Gfh+jx32+KWYy68dG\nl8gZaTgZXybQUpbU29ta5i8dn8iIq/enHxkR4y6HaoAXRTjtGZAwzzQhWaUQ\nuvZzn9Qe5dT3B5sbHRnoAkskWZEIHa41KYgXczapSbtExMTZrWsa8HjHLIV5\nWKem\r\n=ttrD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"34df1de623dc972014bbcbcaa7cb1b1e86991337","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T16:28:12.803Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.23","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.72-renovate-internal-patch-34df1de623dc972014bbcbcaa7cb1b1e86991337_1628267429542_0.9852214058620796","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.72":{"name":"@balena/jellyfish-test-harness","version":"6.0.72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"44ae725b744eb350e5ee6337f4d2e7bf9c9ce307","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.72.tgz","fileCount":24,"integrity":"sha512-ys3/jTRZO0VrBZBbrEODtutFi48bJbbA4JXEcd5VV+qKPsmvxAC1FnaSHoUO8r9ArVy2GtyC6FMetkkVYCCkmw==","signatures":[{"sig":"MEUCIBDb0SNIgvG8MHHvDxAfCQ1pw2bSCYf+/+ydGZfwXoprAiEAimPGmX5bSFHB+b7PKU4+gvPtBCoZ3U/qm0lr9ydoJD4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133250,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDWRuCRA9TVsSAnZWagAA/F4QAIXZFga1IBgHzaVus/Uu\nTaIz/AL6YVwbqu8EpKmgINWB53hWbOGXl4MwEQahvBGlQS2zPJkkYGH1eaHU\nxWw247SxGwgYqPmatYFtpIrycmJY+EhjqlvoQ6U/GDBsZ5V5Isyt5ft1NXrY\nBWNmE/p2xzUXXVhHo9Fw4u/RpERa8HQ7JSEMdR43CdulO8pmCdrgrHk/9I59\ny4h899/lkfEGILfTRRQPngLyscHwKn5TtjxfuJM082eavmRzunKT8Flif2Ln\ntIOzW/Kvyf60V1gNfsJQZYF9SHHSVtuGHO7ZSMhLasjZ01ERQTTqMMNh6mKR\nOZQszeV1RXrfHVwUsxoy7cmZhTs3gXC5pgK6Rd0/eBbI7Zo6inw/5pTNQIoy\nMpGzZH3QS3ti4A9jb+8NRumW7ls7tY5xjtlr4UX6FqxnRojNbfj88Ev19FfS\n/UjwogVf0q+Vj+JOe/FU3tWd1NV6uVqINLuXJdHRAyY1YSkyzfeeJuEx+a0X\nzCwnzdbx6WdgVerU78y6uLwcNq9vq1RWUoyFHW5mutdNbOQYrdZkYqRHt1XA\nuHqxfQI18I85OsbxcYhuxYNgVkpIzMEvWQ92P8w7+nERhnwAM5TkU/K2k5X5\nQj+ThUKxilLete5OBta52fCoBYozvQUpEJujkCJWGwRZhP+Rmf3Y2XHE5pAs\n9ZmD\r\n=VAmv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db26f7146261fdb0f763b86492971cd97c7b71b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T16:32:01.955Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.23","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.72_1628267630603_0.4727487066107252","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.73-renovate-internal-patch-f6641f9f0e57ccc545ebadca10e67f7601b001e1":{"name":"@balena/jellyfish-test-harness","version":"6.0.73-renovate-internal-patch-f6641f9f0e57ccc545ebadca10e67f7601b001e1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.73-renovate-internal-patch-f6641f9f0e57ccc545ebadca10e67f7601b001e1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"813797faaf3932a09c289d6c81270fc74a6f5af2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.73-renovate-internal-patch-f6641f9f0e57ccc545ebadca10e67f7601b001e1.tgz","fileCount":24,"integrity":"sha512-RwSWQ7ooP/OpUDYO4Qqwqvbzk1XoY/lOLBZPETZfngD/i95wLHGW9yLvNzDU7PzsOGpx2XUFN2rv3ztojZNQAQ==","signatures":[{"sig":"MEQCIGUkONFRdLYes3O+CevKCDGb6myyUrm6m9/bUDkQVdiNAiBS9iQpg9q97QlQVE75jJhLBMfZq+fzJEQisiAxHFzfVQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDXVQCRA9TVsSAnZWagAAZWYQAIZmKsjCmPhtugai0Cmk\nTuVKnvtjnJZTFACLosm5IWOxnVY68dH+cUoSHYlq31ST88G7oTiba6rg0PfR\nBDbVaKQJ5qxWVIL6gRKVeE/T+mSy9X6DHgGjqdBpNl8x7SqqkyCx72REB4z7\nFV0jXQKeQLR3OcwtJiFy+t5/jv6rEM87x1POZZzXTbpKjfVv1HghXELCYGuq\nSHLMaDbJfwCiPsH1nkFKc5KW+1lRbSko+W7B2kjSUcHZgnOeERiEPNf59epT\nOfKouJoWJIBYG1R59pydCEVp8w7bpxBHHZTTswrDFRg+s5Wx8rc7d7x4WWRA\ng9gNVgv9lh9XASk3tL8hR45uIHzvj4L5OiRufV5O87WnX7kA+2b4QODdnXnL\nqE7Z1WXib3Ssv/QdusBAae86Ki1aV6D/ewuoM2IVu/0NvCUGGcN5uV0k8D6+\nsKsEYls5dd3tOraDuDreDxCtH0pEGrNmX4/q9MtoNYYJFVs54r9HKM36+Fd2\n5aUpza2V2gBl+OGvRzYaFBEYUQE3c5uTPIPwE2EtocN8PPlaJtf7xMnKuQDE\nzWOvFvoglB4LD6p9yff49VY9kTf5yn5NvM4NuARLKU70D6R+fqZ5sRDOzYZu\nb9A4KFvPHJspHcA9YRNSYgBbsN0pOA4nFSIBY5oENzqy5GXcN2j41y0SQM5c\nkmmH\r\n=RIao\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f6641f9f0e57ccc545ebadca10e67f7601b001e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T17:43:11.470Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.24","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.73-renovate-internal-patch-f6641f9f0e57ccc545ebadca10e67f7601b001e1_1628271952225_0.8508165245983303","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.73":{"name":"@balena/jellyfish-test-harness","version":"6.0.73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d3a019d048f3fa0d380089ccb406e5284078c74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.73.tgz","fileCount":24,"integrity":"sha512-EX2i/AXYPBY+k7omnx4gWq12De2JNThyNFV7HkB0j00ATH8ofgCjldQbSsa6kIkRdSdcuMf5xkyS+lDk3t8dIg==","signatures":[{"sig":"MEUCIGEr91g1Pr8p+WzjhMTn1mNBDO153yb+mF8PjCqoIuf6AiEAhyuYmQdIJKURfMNuHThBablvUvyruHvuaJiYxZeVI1Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133356,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDXYcCRA9TVsSAnZWagAAIvUQAJQhBJ7PWzj12HVgrGZS\nz1RK1RoWmjoua/JEwrq1l6FE51LSx18TZSZMQoQ97XbeYzdo/rA568ZJ7s5C\n2m5cGD9CPS1ImKdbj7dcRRGEnpHusl0x7YIAQmdbCJjDxWwQk5t/wEIF7hEE\nTC7Dz1i7h0JVQA3W/J2PYGxF1B/+Fpnb9We7fBv1sKgvTSnSDFG4WGRx2Za3\nRqRkIF8GxqfeKoZckEXmK2EcGUVXMVzvl2YzWpTutmXL0SZ/mbKyJ0X7jlUp\nW8s87/4FnYXaxY8XkFAQGtpVSkF79ljUOPtffXGtwjnZI9+gCPLpAcaql/ri\nnhIrmjhheCDo6F7+KqMF51+gq8D/PuJDxpz9bDYwNGXYdu0e2rvcAxZv82hn\nohth793W3/uhPeeMmrT79CUFqPOSHkvxUAJMTa0tI7S9qohRt2Vsjr926mYR\npih/tPvo6/SG7ai2ch3xYJivLJqvQNT2pzVOQXTpDESW4X5sPbFtYmUe1P9g\nEXW25wJ+yBGsleJp4az51SXCpHGC/P1FHFDHUJk+DrahcwcnGXW9OVt/nBOJ\nAug40vCYjrcbCBodTPkV5wmQUGb+wuZgh7Kyf+LZNq7eMMjYxJYoSuAda/lo\nXW6BbKXwCmzhFIW2y9GfrX2j3xRp/IOf1c8zuyFBgQ6Tzr8LWK29zKCc6aVH\nA4ol\r\n=3S06\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7f826bffa2de9fc47074913de0d1fab92abe6497","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T17:47:22.028Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.24","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.73_1628272156744_0.3035959323611088","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.74-renovate-internal-patch-4133b0f0984f5ba8fc25f701ad9706faca8098b6":{"name":"@balena/jellyfish-test-harness","version":"6.0.74-renovate-internal-patch-4133b0f0984f5ba8fc25f701ad9706faca8098b6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.74-renovate-internal-patch-4133b0f0984f5ba8fc25f701ad9706faca8098b6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bdc295e04fe75ca3cbee529af25c5b0b991722e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.74-renovate-internal-patch-4133b0f0984f5ba8fc25f701ad9706faca8098b6.tgz","fileCount":24,"integrity":"sha512-C80qWfwkkOqwy95q0P3iyqV19Sq/q5J1v03wxgNEVFHRv8ZCjXHX6PShqPNFJQMLXCVlt0oX6Jj1NeUeCV65og==","signatures":[{"sig":"MEYCIQCI6bVZLGaaBUC862c3Leo8+2Qhjxl8ZHzmAmPeAmcgdgIhALLBBBYJPbW4XTNKr+M3cyqJQl79EZPMAyIdpFCIrUZ3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDYhZCRA9TVsSAnZWagAAp4QP/iz/GVq1NDbnlEJXcATH\npm/pgSXWAmuqtHQ/3FpVtuPv5YIpiB7WqpP261JUzYg7rk0d8vGlC75EPhpP\n3GgEblTeZ087os3KIHOCrZBMQGqhJOnRBuAYvWYwwL3M6Sch/IqNGEcno9kb\nRx5OK6RccrvCPHzUSiAUqDpM5iZC0AhWnt/3EkAwu4hGwXeEKhnrQjADQpoz\nR+t8p6R6vJsnNhEZxjLGlbJ9rvpNFknVgD4rLHoAvkkzi94VKEfWV7icyZkN\n0uJh9AtB96D08cfhMi2E6K/DH36m7m6Tr8XuXPkuv+LbaOMXj6Uly9e4NP5n\nA7mpFHH/mddiewrX9KobiYBMGZAFhR9Z0G1MIgmq21Q1XekQ7m+/6vTR6NxG\nHfRCtTvw8GEU21tPrM89Z38fG8dFRN7CXWVaDqb753SumA2BVnBUO2LMt+uK\nyHI1G1nU7Qhs6VlT6F0ZJ6gdor6Umvj5xXI4UV3WsruXOl1WutVHnGiVqSMq\n10lmIzJB+HHjp2XRjJUaH0noRiQA6bSEmZ/ev8hYoL3cjDe2WEYn+OepfKVR\nBTjK0djQhJbQcIQVTVEPbN2OSJqlx9m5q8I4lgnpd3DnD6qxmQeSdGhrcSLZ\nRz/ScmcC3f6CKUJhTVT/kxuHkXUkaOCIw7ysVlP/EDUYnv6pxHgIaTO6wdOr\npaCu\r\n=Inm2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4133b0f0984f5ba8fc25f701ad9706faca8098b6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T19:04:11.755Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.25","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.74-renovate-internal-patch-4133b0f0984f5ba8fc25f701ad9706faca8098b6_1628276825441_0.8609565937239461","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.74":{"name":"@balena/jellyfish-test-harness","version":"6.0.74","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.74","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"349abcb5f8d8b8494fe70838583680650311c3fb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.74.tgz","fileCount":24,"integrity":"sha512-EQ4zQdYYj22YE9WORqycabAfsQKvi89npJHoPak4jJvfwCRdRIauw1uz3RcODxOrFD6+8idKB/ky4HFpuDt3CQ==","signatures":[{"sig":"MEQCIGAiKH2DYElcSlYd84Nu4QGdWTuXcFyPVIUIGQw2yXltAiAIboyCBNohWOTiryL+l9eZoKGz0pdx3jWINci2QY8rmw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDYkcCRA9TVsSAnZWagAA+PEP/iglZqhe42prflFFVw1x\nPE+umbQlqmUVkVlnG33pzuJmCQnsc6PMH59lqQAEep5C1ShslgKte2z8opwT\nerxM52hScSTTdaDoZnIgcf6EQRpe3ap21GoGy9Vu4idHEJuOCH0l9HysZWs4\nUCDiLbzFkfsdkI/eprTQYGSUDeH4SjXII+3cfcQWP0r+hSs9+qE5ybXcB0Jl\nT10RaBGCCy5TVLG0R5Gluezp9VgrcfXJEVp06ZTCogMlfEeqyEj3x57u6fXy\ntDGo1j+pfR3q/nPGkDHpLnZVnPgiUaB/Qd07U7MXqTokAgKFFQ7nuYMY+MpX\nQU9FHs3em70ZtiUZf02sCRQVDByuPy/vmSttt15Bc5wFJy7P1nanlgoUJ+zR\nivM1AVr35/rAhtIjCuD88TLBl+VI1q9YcmsJcwHI8P3dhHgBF6nS6+vJ9CrJ\nD+KQUuSlMlqHGM+fiw1wLcwG/goXT/NeiTOUtuaGYMK7/HBk65OavIhiaUzp\nNOLyYZOpI+E6jK5lv5BGJC8P3j7vpriN8jnBLJnjyR2ZatGPMvQIVb2ut+wd\n9j60BWdSZqJqg6azjibbz9fAHcx6MnknfkLeaDSc5+QhIpdUJi/WWvQ/7U39\nGSAo1lwHVdRbBwK8EcIJi533gQO2M/vcKq/5uaqk3YcggPigRHc1cLLwzaue\nczgG\r\n=oOot\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d6795849df20ca1689dafb19cc04ca30990e91f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-06T19:08:11.448Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.25","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.74_1628277019886_0.1676645602090836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.75-renovate-internal-patch-c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea":{"name":"@balena/jellyfish-test-harness","version":"6.0.75-renovate-internal-patch-c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.75-renovate-internal-patch-c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a27bb32ce8e21928ca2c2ef338673758dc8f125","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.75-renovate-internal-patch-c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea.tgz","fileCount":24,"integrity":"sha512-278IISlWF2PFeDoDKqYMjZoLzY2x2g+IvQjwJ7js1LpF6005fZnCb9Y0JtI0yprSSS0W//UBf2g7audvNUkHIA==","signatures":[{"sig":"MEQCIGwapiXcxWw/d3ixo8/r1A7QML/pGGTrgVDOzq2wvoWZAiBxSjgufP/aCVBaPqTINH4EkXiOrYqAt/vGDWQPLspy5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133633,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDc+tCRA9TVsSAnZWagAAU38QAIMd0oqmb0dRJnBu9zgI\nzymMHbrusin1scwuVlza8+GmQ28Ov3hIFTMeeo6rS3d8eAvaz0vAOJHtfkLW\nNgbEk88Wdk15t2GUsk5TIEB7WK9KhYlKSlJs17qT3G7EyjOdRd8FHLxr+FQm\nH1ytukvEJ1hRX850lgY/KOeo5iMMXm20vE3xCLnncOyYVNlPI/ryE//YLxzV\nQvwKIRkcRYH7Y3sNFbZRs95fnWNf1GtVEPsc/Nlltlv+/g2mEFxf822hDcyu\nG5WEstLpB99pvWBXhXfx9JcGSK0oLC7fzskXZ9MAl2F9R4LGYX+Oi4vcp5Mh\nO6p/2Q/OYBKOarpJuxr1XGwV+nYEk9IIL8GgyRiLs6p3a0NP3YXpRVfJKdDt\nzspJi9zRJShgME15uG/ON6xHQDhNAFaAX/c1Sv63P0scezwogRnEWXkw9kMa\ndlngxfcNUnLPDtmObJI514Gb3RqQQp1Y+5V0dGQK1PbqbWz1SjXBDv9SX4Td\nBKy2779zALcV6geQp/tsdSxa2QdHPoZJNeE7NN/wmuFdtA/IJZxAWZE7DmVC\nkk9rghO9IQUtu1iY+Q6wHkzBIuxA3Ou9li3wadAXMn/HC2HYVDrOTYUBtQ1a\noeWyB1IcamuMr/BtHlRBF9pxeCTXHFzGQP84iof1DovjqXIbrvTblElVKKdu\nk9Fb\r\n=mg+Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T00:08:31.284Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.26","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.75-renovate-internal-patch-c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea_1628295085088_0.8545232475478803","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.75-renovate-external-non-major-483542a9e57f46f215d9424065f41ed7df919df6":{"name":"@balena/jellyfish-test-harness","version":"6.0.75-renovate-external-non-major-483542a9e57f46f215d9424065f41ed7df919df6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.75-renovate-external-non-major-483542a9e57f46f215d9424065f41ed7df919df6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c112abef25a433835e41ab193dad3db818f3a59c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.75-renovate-external-non-major-483542a9e57f46f215d9424065f41ed7df919df6.tgz","fileCount":24,"integrity":"sha512-sYdZuiSEx5jwqLigT8GgN0L+gDm2rjrF9aNpxGUnfXGEOwsbdfOP4CeA8n6+zn7dXHmM4kotG7w0TP98IG5v1A==","signatures":[{"sig":"MEUCIQCMjhe4LCZnGmIRQaeCOVx2cfRIludawJBjbbr/9PmwaAIgMabj7eOK9G5a2mJ9Bx6LKip87PPCc/IZb3rg3NpUqxw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133609,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDc/RCRA9TVsSAnZWagAAIN0P/RVPfOmNKv49g9gir0eo\nsO5g+SU5jr/YONOoC9wchSGyMFCe6xSdlo9nPWedwesIhvRIr4FNGsW6Qquk\nZeHoG+k6fnkwnl+yida2WNO29OZNU3TsnAbSa3rOCGwv156UvOEkBVlWQL/+\nej10Y/i8fOj4W2/cLg9LTnDHJwGciW3evt9hulcLclXdwQZvibBjoV2tK0i5\nlvw4xOcO7LE2dx3ZP8eQYH4VeMvCg5FL1ll0/O91xuBQ+nsQ69z97qwi/KzO\n/qbGcugavKs1U74O3qI34RpEfONLxK3bVzzkayGELI91GQQIDxK+6N2oWXUg\ncSsxfgkt79uRWRpsJLsCqjIY2qWhCDPw2oV42pSkqeQ6HHmkHh02RHcgHo4V\ng5SGjQrBlWJdOnsNAqpHwQb3giGJWVGwC5F821cx9NGTXDgmJJ/L/r4r7Zoc\nBUOFoeFnwoZNieHWy/pFcnrK/M7HXphfPzUnOb2lY6wJdF47Ss3zYg8/f5HR\nJrkGZQgaJ8IA+bNi/+z0XCj02MTUxNFn9DU6gkEvbqFcN7k8VcYH5vGXEowi\nEO2xk9MjOyBPXz7P3rhlTqYDQLZfm0o+oKjG3zlNdm+JDBOA9rhzC3BXtNfq\n2OnySh9GTl8dvbroVq+3r9bSbHasJxsOuP4bWBlunx+jBuP6glpzqhy2th81\niVLm\r\n=vJc2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"483542a9e57f46f215d9424065f41ed7df919df6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T00:09:01.342Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.25","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.75-renovate-external-non-major-483542a9e57f46f215d9424065f41ed7df919df6_1628295121277_0.30836198678580606","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.75":{"name":"@balena/jellyfish-test-harness","version":"6.0.75","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.75","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"922f6eeef7c85293e20e9a01acb060dbf25b38ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.75.tgz","fileCount":24,"integrity":"sha512-mDY7i5MNVfuyXXuZ4XnthZTmW1S1zcvCj8ei3q0YGTnl4wPDzIgWD1zDcqpOW6imZ3REApPJ5Lu4JQhIj68MWQ==","signatures":[{"sig":"MEQCIE3zaw0ZPAuti9ZZeB69bbYnIQAvUa6aT2JsnPyQyg4OAiAtIVqcEtdkp2TL/Uwcmq8NNc1fia6qrCoK412p+ESm8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133568,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDdBZCRA9TVsSAnZWagAATgsQAIsaVq5pptdAoOtJbqZI\ni9eJcSR05HwduJwq6jhEWsDjJ6CXonfZ1dIt87Ad1lFX1qwJAOU7Mxf38eTq\nb04nr2NztEHjexuaQKYOdxmbI+xolWI8Z/yXpRdNvEU3M/4lkk87Rv+TceGC\n64nO845FfoZ6pnhPSbG9ZKXZrZTgAP17dJ12Pl48e9EWr++yWZ0NxB6KnMCl\nS5ZdUv8iXjOcCpkjS0pdaKslQxKflGJ8FbU5KDfqqK1a1+vdq/X37ZikfwhC\nU61i53VkljbPy3gfRNEvCJKgByFFHgiQUCxxYr85H33Ru9LDUCPP1KolmKb/\ne/1JWHoLVRabYbVu6jg1ODk+hiB8b2YZGcPMplO6Id0VA+5yHQmk9XcbGFEn\nt4FPahIU020Pfzxc+yGVEXxfj9Tij8m/miOtE8CPXI3sc5OFCxcWdXs95DtU\nE4AVuw1WesFTQMxLpLbbZ/Ur7I6yNzZ4gMVYkpoM6DNA4Z30qRU+vBiXK010\nowsvb/1e6DUc/2+kbHJKTc/ZTCDtTY4iLJOZq73QHeYKDHu7nGpsmQykv5sD\n64YrmKvEvWkJgaR2KwzjbnVOawD7MmCXP0BXVhSwdYtMUn3QTnPZkLr8Qyuc\nf9b/V0I2RjCl35fin55bowLsMKLGboObdWywIMxeAotaEd2LDOFAr4ZKPR7n\nbeni\r\n=bryq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"49bc8a44c43d96079e1faf12853b5f163ea0e4cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T00:12:26.429Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.26","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.7","@types/uuid":"^8.3.1","lint-staged":"^11.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.75_1628295257629_0.367396988513218","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.76-renovate-external-non-major-fa68272c1230545fd985751029f23c568e0d12c8":{"name":"@balena/jellyfish-test-harness","version":"6.0.76-renovate-external-non-major-fa68272c1230545fd985751029f23c568e0d12c8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.76-renovate-external-non-major-fa68272c1230545fd985751029f23c568e0d12c8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a94e003f277cfba3747dc0a55eff3715d5538694","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.76-renovate-external-non-major-fa68272c1230545fd985751029f23c568e0d12c8.tgz","fileCount":24,"integrity":"sha512-dTno3JUl9P3ebXNPjor0fLS6Ci34fZbg/mpjwEAsIQ9/sUFQIz6/8SANaZu94OueFNzuJdefUBly/L29P49bmw==","signatures":[{"sig":"MEQCID8QQRLVrG/QxCZflKy3jDZa7xyJgH8Gm7XL3fkJsVsWAiBMnS8NHnVIaS52nAi9tnlOxMwTdWjHC3wdHMWDEZGEDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133715,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDdGPCRA9TVsSAnZWagAAV0EP/1uK+1SEPSNZWcu9AeDz\nyAQmrPsFO+pB/D9Au/dTN4U8GRvnLkK5ByYX6Xtpzkf2pa3LhcUjOvgxmlFc\nM5fKeWEaJ8QxIXEqNjUbGZtsPtmLdnfgFICNxTe8pNk80/Py00A1ZG2+0h+5\n/avGgv35sChMytMh+Br3UAc9EUKIqidJr0A5uBlLkMk1GAaALgWfAFLC3Yhm\nN14pfSerCYR02nFlMzcei1ZxNDppCr/gsSXaOxF8FSQsoKtzMA5gMSwK+471\nHdY0J7pXy+kugbeltzcs7qLpw8uQ9Q2EDk7R5Re3HFmSlgo9PcvsUxu6zlxG\nCy3ebw13RehRlUsfgXts0Qm5aC9b81s7i3V87czxVDb93yeRYt9234ALUUyK\n9O1218L/EQqSzoG2agxusoaCCPTcfNlFb5X0QHc30hNuiryrqz9mnot1QJQl\nFaEIb6yqLVAyV9/S+8TpsNKIkPecWiSS/zgHhzdvhbkGp96pA2wgBazdv9/H\n/WyGhwo4f9UbpsQPCFGiSf2TruM7OKXJnevH5qA9NQIhrGkNOuzmjI2HBdqW\ndRuSLboIL67sMDRP1BS7KTRXFtmXja1MvhkYlFo2xAlDRWpOlTHTeiDo1cYK\nJEzMHnDU2V2FGUUJf5NbiaQQne5RGeNJxEMxeej2NNGTlrjC1kXAwBEYJMx7\nGG+S\r\n=pauW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fa68272c1230545fd985751029f23c568e0d12c8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T00:17:12.056Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.26","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.76-renovate-external-non-major-fa68272c1230545fd985751029f23c568e0d12c8_1628295567086_0.48204382208180196","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.76":{"name":"@balena/jellyfish-test-harness","version":"6.0.76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db9c2e4ebe010ed32636b74e349f47f598e0be0b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.76.tgz","fileCount":24,"integrity":"sha512-wP12ZhQsd0TUlKYdp7JB0aqCK/NL8vrvfbtZPTZwThE/lgZAyx244b1R18dwkcycYGYiPlRcl1pvean1DCGorw==","signatures":[{"sig":"MEUCIH5huqtnyaH8Z/dZWr12ctL+JWwX/HRjq7a4a3CFOhLWAiEAslKmhQGcT3JDOjbK/ZwkLaDooaaBXfAn9FNIxqAb89g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133646,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDdJdCRA9TVsSAnZWagAA7akP/2kp/NC7omZripD/dmd3\ntvZvd9Yai93aeH7lMDiZXjJkobDFBiNGpvTdCWtqiwk4QsDF80ISLvv238vs\nrycAk8cP4sCcszzNxl7dtHa2nRqEBbnOO/IDUgVeTth6M8x+JIDjSkpIw2/8\nnl2+utxuQiRNBc8OOj4S1qe/t4bf0I5l1owbtKIRpS0Xfed2TdKkP59NbPCW\nT3iaokFa4uCA313g6/xmPf48hj5fR7MJyLx0XsIEo394/GsWAXXEtXgqrS8U\n5UvLM6bJJ8dUZsn+VyNkr6Y+bVvIOT1mTemowNKqE6rWUa/6uF/5uhw/Ub5a\ngm0k6CZqF6eMBPm07iTnQDRii658sSGRz4XhPY0R57wJtDAYPSH/xeuxuGf+\n+Io2f3+gGkj2OnhzQn2cDeb6u+N/SVO9aN/7xLXCxi58DrYSs0Z3yIsJyoPC\n/QcHTgAAzUZGsjWKdUXDi9IkXYbzaHk3CLD6FD4isCdV6NKUmuvdYRe+mn3P\nb3Q8Ep1mlHSGRMn04zvR4wSVW8T3y12OHeOy5RiKvE1v2vfOSLf/F+pmMN4z\nVo0xxs8bv+YDh6WJPOxS4O3UnPX+8G/Uzw0iIkIWJQ+yM+2i5smmRRRspFwe\nkzR99/+phfUv5F/nPBu9HulzT/HWVyeGfS5ZVNmZKesdMpp3wwYgcsGXIihX\n7dSV\r\n=iSMs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"61ffac1915e07c2d6cd97e9268e585a7870750f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T00:20:44.631Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.26","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.214"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.13","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.76_1628295773585_0.7380598339445459","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.77-renovate-internal-patch-c8d93523c278ed9c6d271320992acb9c32fa9fad":{"name":"@balena/jellyfish-test-harness","version":"6.0.77-renovate-internal-patch-c8d93523c278ed9c6d271320992acb9c32fa9fad","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.77-renovate-internal-patch-c8d93523c278ed9c6d271320992acb9c32fa9fad","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2792d5de20d64ba33e521a9f1891720d72e0e922","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.77-renovate-internal-patch-c8d93523c278ed9c6d271320992acb9c32fa9fad.tgz","fileCount":24,"integrity":"sha512-rUdBoIvt8zIKmyXSgPegxYWPl9VMCcspG6qRwN2rMUwrDPR4gfT3ALX+W48pF4yv9mvVUisyTl221lvv2hcVxw==","signatures":[{"sig":"MEQCID54PrzA/WqPQxNPCH3dcTKlNoMC4lZhfckqksncZFhXAiAoGuTVLvDcsk1ZGuyKG72VSkagndh3YViWi7SoR6wwVg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133785,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDekzCRA9TVsSAnZWagAAJAYQAInx/B+3EoBWsfPVYgHe\n/8gDTQyryM4eZqcjrG7OMotB3DJZRRJTiVJg1bInjlAkQet979C0MmdArgjt\nco8aJJAsxUECUud00/J23bAIhddlQFMTWsxYIca5w0Z6b2q2CH2zDspVXq+W\n/jaMwxCgrAaolACm6z13WtP2MvijOTTY3OBrNvgLpXDfTrnjT7/NUQ/TcXe+\neU/F5gy01XN3MALR61VXxyANTe9fa6l/FkqkH2m6d18MEM+gHXsCOI9f6bW7\n8XLXKbpaarAJxlZLwIsvexMGVNCaakuxhMDu7wD7eg9/7dvNb+OioNmu8m07\n61lS/vdOjM7dG8Ps7t2Lm+z3gSBdeN/6dFgCRbn5iWtxs3KbiOHm4u6hSLB7\n8uB5KKZeP0eyhORrgsCROrxSHIy7J8P9aZQaE6Gp51mpPlL5zfMC2Adlurl7\npPGjdQyoYvoES+ZMSvRZhfVfD+3FxrZQfF7V8ybuiV14TXTYD1lm4CWKDh4y\nA15zKC109kePbEJy8XstxgCZFTezfeHW+0NXN8N3Cu807Idydc0m1QqeWunp\n5n++3RMEnuMI7FvQRp+g2aoISSX2aDlc/uEMU3gmjdU0pQ2Szt2CSFhvDRnt\nScoF31YJgNKXufm6WaEUWAvAsIiJWTXvURMtR1NBLLddhtyJheU8Xn51A5bH\n1/ou\r\n=B07O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c8d93523c278ed9c6d271320992acb9c32fa9fad","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T01:57:11.791Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.28","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.216"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.77-renovate-internal-patch-c8d93523c278ed9c6d271320992acb9c32fa9fad_1628301619593_0.18866193015170385","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.77":{"name":"@balena/jellyfish-test-harness","version":"6.0.77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e4e18c001630d8f447646c60e468f31b8ff74524","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.77.tgz","fileCount":24,"integrity":"sha512-ujTRLdGDZ2lqAwLvti7zkgdp7KYK0lFVOWcHkrUxQQ5j8b7UsrY9snlL5H1bYPIeDS79XGXiJjZoNSK/rax2SQ==","signatures":[{"sig":"MEUCIE7QmJK1U8ZK/A/Kxj3zVYno3PXbX3pDIpYoH4w0Sx1fAiEAiCl5VFyM5NHMBHf74/iwBPsaJoutccipoxMagKx4Ob0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133720,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDeoqCRA9TVsSAnZWagAANKIP/1Clf5GrNX10csNb84jH\nhsIpaGjr76OYzVglKzbsYd4QPe5sDhPEg2lCkHcHnRqjdiz70AFLIVM8+fVV\nd4FjRvpruhIGPBiKvFycFpcWdSnrxonw3n8DpYzwRfX4LMuYkYYSeLv4K8vl\ns89L/jODd4uM4cZZIQiwY9bvQqhumV7wY/ZQH2pG/YsP+6SqMi5UaJ0/aik+\nlL+NyGB5s2C/78cha5tod6JLdWTGEYBVx3t2Hrpv8d/w8Bgqeomosyk883Ku\nF6cuhO71gfaOMHQt3yOcZXV01AyrCjxk3qWwB+9/4cEgvNaYNkh4joOUrKgS\nL9Er9oY4+QukN9OTq/tIK9GEi2dXBLJjYenuJUtTf9IGXow8zbT3W6QepoF8\nHCAPzLNxtWvxZFsWnFs+fNk9x0R03ZswNPJj6xL7erOJwcibBuSlc1XJlo13\nG5/de/9myVwBXQqw0L1Twwtms2GvvxgnQaYggNXp3bdBKmu4Ya1pCTqyDBuj\nLATjTcMcmKh5UW6AwgLNLVlxeoj4ovhs0z+rA5VnPWIvB3xcJRztWhmfODc4\nuZtd4XXb7egcEJRst4BILNlIY5Xz3YDSJD23C/gMW3WeK0KKgW5mPEBjqxhE\nUreL+OXOpmKn+OaL34NtPqAN39J3nhPpea6rhlrp9y81mfPkndUIVh+OYDv5\nZdHn\r\n=DcpX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4fd4a51c665106c712b48679fcaf7ce5c0fad5ea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T02:02:06.865Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.28","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.216"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.77_1628301866026_0.18768201998492984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.78-renovate-internal-patch-ac6679c559ee0f114d37a27b72a696f827597ad2":{"name":"@balena/jellyfish-test-harness","version":"6.0.78-renovate-internal-patch-ac6679c559ee0f114d37a27b72a696f827597ad2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.78-renovate-internal-patch-ac6679c559ee0f114d37a27b72a696f827597ad2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1418ba12d4ef50459a8dfeba76a5c075b9b56c9e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.78-renovate-internal-patch-ac6679c559ee0f114d37a27b72a696f827597ad2.tgz","fileCount":24,"integrity":"sha512-b2u8bhiW0kGmeIk+g428D5I8Vn5wKpZ7GLDu0HgijtBQJNoehgwG49SV0VrxrsiZo9y/ccf9jyS5GI3b5q4BXQ==","signatures":[{"sig":"MEYCIQD/k7B5dyJMt7F3CJZDowy9GyvIslaOp45NRCAaAJTY3QIhAKLq/86IxueHpSRHl185gwFXOmISU4c8l8juQG0RFVot","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133891,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDfP5CRA9TVsSAnZWagAAup0P/RBOtzYycCTXiXTzQJWO\n02zhoha22n/gm35zyrn/rbUEcvBUcnK5ay9AhTD2oEA1jbgEq0XZ4sko0wVG\necry3daJaVDk6Bk1hKL3jTwW95NGFDBJ5oy52K31GRdgFQCB9tLtDABVfLXG\nutPp/ClDU2bqS/c7p+KVvZDPNXmKs/sGwGEUaUsr6BFn3dF/Zlo1xG8lyUgE\nS85yyKUxaGEYycQ/f7SrZqJt5IBGU/z11BtmACRiukA64sUDZuSAMOuCkSYV\ncuOnqEcENkWBYLbNaOA5Z/7BxCYZEP9mSvbwG6PxpIrfzpNmjOM30zF9b5QJ\n5Pwnw7G7H31FTLTCL8bFoI6riVe9TOMlWNioylFW3HtzwCT6Be0FdUdYojW9\n5gJYqYrLCbCyoMGC6+Tib8fQLl2/b/d7YSUxj8V+hgbPTxHp5PPW/dJlb7rS\n+simudk8bsPa9urzL0saOF1tsGt5gmoKuVMMmCbE9dhjUmvHnE6rP8cJzSjm\nwIig3vsY4OYDOos9TvOMiZnJjrpd98L4sukimoPM1xOCqfrkGkC/VbM41zXP\nlm9JoW60diGT6On+f4XNUN3m6n6TOAml5jZlSJCQeSLaBvsSig5G1iNvkwy7\naSjmmcAR0wPsfQr7MYKMWEWrtbNoUm2p3IFoToukgKB1bknvKSZv2Dm8YukD\nhLaU\r\n=Tvp1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ac6679c559ee0f114d37a27b72a696f827597ad2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T02:43:51.032Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.29","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.216"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.78-renovate-internal-patch-ac6679c559ee0f114d37a27b72a696f827597ad2_1628304377716_0.8981398713078321","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.78":{"name":"@balena/jellyfish-test-harness","version":"6.0.78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d33f22fffd742c5412196d6504c45b3c90c12043","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.78.tgz","fileCount":24,"integrity":"sha512-UUivSobPCqf1INlCiFT1tXf53rEsL6MecgimBy7jUscdlB/lT8OIRYKIx9XNzmdN5vLPnUPBJICYafrgyRqaKg==","signatures":[{"sig":"MEUCIEsNWGz+GcwovxJHOWz6ExtRw/8C3Ix3tcsGyeXF5eHLAiEAyZKbZd1Jx9M3l4cZ5lmkY5C1dbCpz9Yuu/GqS6d9Kg8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133826,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDfS/CRA9TVsSAnZWagAAdlwP/35oi30V52p8o4nTXatt\nuEtKEUefL/lz3srsl6C+2SPdST11Vl7e2l3c+89dfsNDgWrAQbxVPAu92dOO\nVRlOfEoJjL0hY2NX+8flhkzA2O4eISDVG97A51M5eOeWGWi6V2mZXr9pxTWf\nh6WzXnKP47WrufLqrNWDYwZvNsrLivHdTaEg4TYbiW7JJNdDW9n0Ud4uNbLi\nLeVt6HBI580eulLGnSdkkUxmznrcqXElXVio1wqghIju2qiUR8tMBCZoAYZK\n80Dp6MGvFpLsBUn5MMnbWqPT3Grnacq2twrCsjgNK8Kw/9O8w8BND7/1CONR\noK6Rdx4Bvy4VqISR7W8MpqS6cuvJ+aBdHFcICkM0+1AeJB+DwfN5U+ft9g5n\nz3dUP0q3i/n37Cw9ZvhZIF8Ez6z8JzALcVjlZebqc3q5s6XkkwGHEdePxvKZ\nYADHQDWDLvWAM4YZfmn58YG5xG2htj7L7zojNtcNtC/t/XdR1Lug1xzkJ9xp\nw407SL3bXLKHtOjtWWTye1K6t0vdE2oS48aPRkJX6MzqIZGbAo4QBgyju5FX\nV1aA0qqTNxk1iVz2VClv5AOUTXYkQoRNgkQ1lyQqNj2C0oC1CeaC5+cE5y2W\nyd08+8h5TTVPRFR55bcTfWQUI5ba7xv2eOgikJqLR0FE03TyOFhPX54x8IM5\nr/j9\r\n=6ZyT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a4e7792a18bbbeb9f74ce3a3a8bb0c9ea5b7f16","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T02:47:17.916Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.29","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.216"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.78_1628304575355_0.9382250559038525","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.79-renovate-internal-patch-804b012e823b616fa23c74136bcf0a5a17b7b716":{"name":"@balena/jellyfish-test-harness","version":"6.0.79-renovate-internal-patch-804b012e823b616fa23c74136bcf0a5a17b7b716","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.79-renovate-internal-patch-804b012e823b616fa23c74136bcf0a5a17b7b716","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"63e555f388717e5bd0ea34252a1cee185615192b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.79-renovate-internal-patch-804b012e823b616fa23c74136bcf0a5a17b7b716.tgz","fileCount":24,"integrity":"sha512-r3CdZwYOg2CUuzNGQRB5nTIWEkQPzhXmPV+4bkcDA1EzdtLdhIYBl91SeykKcTPx42/diBC4uWQvJqepRgz/vQ==","signatures":[{"sig":"MEUCIAp9ZpERzCewQmF5eZCQZ2AInNCUE/mujGuvG2JXUd8ZAiEA0Pw7oAyOfGNs+Y8cgkrjrk9WvreqAeZzVA9hzqecRlc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134003,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDs7nCRA9TVsSAnZWagAA3fAQAI2FHtAB9OV8bg3nMUkx\nOQO6XwKhVDhzQ2Gu4ii0ICYlAm24v98+hAEgfo53ACSmFY4KhWuJQ178wJ+V\nTF3OqMWpcB8+FfiFZ6zpso69BecgfF5HTqFtHEvGIX07fP3X7zdA5x9+bTmk\nGU3G1G8Y7MMb9T378yBegnxzAkZ4sfqPKp0O0cvef9bzWxQJZFjOwZTdhvSZ\nsB1fN8BafhLH9dgP8lccRHY8E0wJaT+CbRE3WltoJ8zJjj/Tr8JQx9iR6WEj\n4Z5keJQc2AEWFNKMr8PwhNYBwnNzQ6Mv/HO5A75wAIgfBEu+vc3oTuUuXgib\n70YEGBI6dggIKvvsnIkhvO+ETzOhFVe0vN45fJ24LOB/fw5ojZHSnN7JxrEp\nIItppHL/R+yt8J64e0Bm+Q0TgnxnlZUgFdLl1YAuUjevajCY70QH6mkOG+gW\nfpRkDt0dNGWkcnxDNImlc0bAktnAW/49H6RW9puQmrs9hWjqXXPe+gvtnTbZ\nPuh5JgpuxZ0Vcbp0sMVbaOacIxDhmin9EbhfbvMdCc6aVsHClZHGwU28Tf/a\n6hUsWhzDDuaTChG4LBO1QGppSvv0ShmNE4zF5bBlO5NiwZxih2xII/DOTOg9\nVj33nI+qGb/mRTxj7iA2P+0WnR7f19KX5ZVrKCQMUOOymFX36b22T+zAKPTg\nzb0R\r\n=mfq2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"804b012e823b616fa23c74136bcf0a5a17b7b716","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T18:17:11.992Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.29","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.217"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.79-renovate-internal-patch-804b012e823b616fa23c74136bcf0a5a17b7b716_1628360423298_0.46353577239284505","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.79":{"name":"@balena/jellyfish-test-harness","version":"6.0.79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.79","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f07540abc213ed9255cba61c6867f6333753e38","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.79.tgz","fileCount":24,"integrity":"sha512-eRmvnUwUAiskEznrUfeW1jKQgOM5eEgkVKmxL5Ekw6gC1YvBTVyxejihRur6BHbVnfXu15JbV/N0EKTZOMYLRQ==","signatures":[{"sig":"MEUCIE7vYns3/hI2cqs5AhyQnxoTUA1ymZo98MDwiEHkVR6PAiEAzwBAqMt6WC4ZsLa1/j6iVwT1KXIeI/0QZgZ27onh0Fk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":133938,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhDs+zCRA9TVsSAnZWagAAQ3oQAJuS0OOu5oUYOBdBy2Gi\n5BGYO5xioFCY+1QYnSi7sHYO3ur4d2nuLaLBMD37W4XRZVzhc0xVye9RWGDt\nDVSM1M+tHuQZxSv6C7HVSQih2jc6uMO8GRHbcXXvPFwU2/ePwJ9q0rrbs7U3\nihtVJahw3Y1YT55YqTz/i7aPyEzoMPMeC6EkQ8GtUJxM1jdmz5c+IE5XnxeZ\noOkKA42iBlFMXHbFe8l8/P+xjelCmi8gwvLmcuS8j/loY7JtyhmUwHYJkpWp\n0z4ong6tjzZc8my8eNXMcNVF4qNoDb32iqljmJ7foAGE29z+XYzcpNLL04aW\noPlXXnDs5Nu+BLnqwCH45uvdau5WQlyOY4NB9Z1dSkSSrviZ/2N+V1KraNsd\nxL0ysY0J7S8VrbdtoYOD5L61J5peQ0iAjCQVHfJ6QxDif5ZrE/b9pYUlREEs\ndEJcpJ08l4cUswcjES578EuTf20DxSPNCRzzZ/huXyeGtAv5LNT4iZfjF7jP\ntgarY17f0tZO1P/zRIW4lWBCM/lRFHkwo95zchhYZMTU0gZ70A9VvU7nDwhk\nWmfs3bRtJadxKJTk8NEic7EK6TBQ5Dx3ASNUUq5mPrkj+G4D/yh/I3NPScr5\ny6PeK867EGluA30GIDsQRpAAR0k7eI2d28crg5QII30/ZZgzuZQfHvi+vsq3\n8wx+\r\n=LDDh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2feeb19c89a100d8b253d5d20353222e5d93b75e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-07T18:22:01.308Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.29","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.217"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.79_1628360627494_0.5246433540551858","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.80-renovate-internal-patch-7ba2d4e84e3651457b981d5a212dabf5641d1832":{"name":"@balena/jellyfish-test-harness","version":"6.0.80-renovate-internal-patch-7ba2d4e84e3651457b981d5a212dabf5641d1832","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.80-renovate-internal-patch-7ba2d4e84e3651457b981d5a212dabf5641d1832","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"995e484d9916c27974d342ac998f362cfa915c6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.80-renovate-internal-patch-7ba2d4e84e3651457b981d5a212dabf5641d1832.tgz","fileCount":24,"integrity":"sha512-EQd1E9Br+wA2lvIzuTwgr6W6XGrzFxBE4wDUOwtzcSb5KEQA5zZ/km7WbeqlR3q6tZo4XbY2n9WU8Bsp/mGC+A==","signatures":[{"sig":"MEUCIHNtxChHv7HT1WMokDTRjJ6LfzeFL/huDtjRnXTzh4TkAiEA4DIHSVfdo/ku9RiF+4aKjH/SYEPgAdNDa+/KK87EVeU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134109,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEQA3CRA9TVsSAnZWagAA5a8QAI9/oB41suJd8e+oLuEF\nnlqTl+9QMwixyTNaSFsa7nZqD0qCyxRCtFQNkFY0EDJen8m8JiRe9xBy05iC\nm40uMo4sPxj7cNtumTvFJLTczH4AwXwU8BLYSrWzTt8ruwR7nPiI3/mcu/l7\nNy7pAaH90nZMMGEEIni7rL9ceSWMviwMDXMRQoMN1DTO9jTwmto1Z4pvf2Ge\nDVqbByMVjlpIs4hgk9zTYcqHccavsRFWxisy8uKEdIrZxHEgIFXutBGi1Yco\nsn1e5pxdSSUrSfOv5Z8o+JBVBQASUdXLQGxiZtxxA1Xwg4YsO3r7cAkAgKVW\ncIdrgPwtO7n7PBhDcRasxzO3IDrbUPQepJY7VEtuQv5FUTDvSEYtyzxL3M3A\nWb2C2xJOMCuMOV8Zt/1kLF4UuSPqNPDUxX2OOk77g8gUgWn6kIahBZMMYjLe\n78qpGD94OJVNl5hw7iB56PMIO9tFSVU1JGv/XG6ddh0FjL4VAK1FJ2fcL5of\nVF9C5hc9gvZ/70J9o9IGxW2ObAhLH0VB3IbYx5oxotUN/79leNPVnvoYAXYp\n8CZMJsGUw50zgpzFHmEorqMqI3P/az3NEKIY8OwEY+VtG0ot/WExWK03C48A\nAgijsuyWvxpYUO3Ckd81LXemmb4vOyIse5w5fXfubAcpDy1JiEUWq12TTSo5\nsif8\r\n=G90U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7ba2d4e84e3651457b981d5a212dabf5641d1832","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T10:12:11.383Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.30","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.217"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.80-renovate-internal-patch-7ba2d4e84e3651457b981d5a212dabf5641d1832_1628504119068_0.25584177490903626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.80":{"name":"@balena/jellyfish-test-harness","version":"6.0.80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"929e439a1129c1fc3b99248ba4cb81523cd845fb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.80.tgz","fileCount":24,"integrity":"sha512-QJlFejU6C55YUg/ogXMXM17EOowuMPxMQlpolaE3r+udlFO9/H6XaGB+XrFol02Jla2Al4kHJokBJhxxavNwmA==","signatures":[{"sig":"MEUCIHT1XFB7Tf7jptQtiBM/X8TWGf4ukPfA+uhXzPdFg613AiEA7nNFfCcHSiNJMZIj/faAjlEXkM8ReimAETq+szGPjSc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEQD+CRA9TVsSAnZWagAA6VAP/26S4mxkbpLQRmvvQkwz\nnhXTxC0lriNlaShIHWBNP4fQUBqpJ0cu5PPDv9bIefO0E3yw3VqwXRuyJwRn\nLJ8uB0+zz9xvTTMVK1N1yhOvn+5ipN77EAenuM6PORyyVAzeCsyfpv2QDq0G\nk626far4eMg8jBRIM5newJnfozg4ZF/b0PymdH2jWECMa/5jeqVOt8c6OhvC\nd25m3voPA7Hp9nBBOoL1lZ2BKpfX35PYG2EWj3BIWPlek4yW58h/2vfHHy2P\nlcs3L3zgkw4Pno62ybHbKj7FEayUCkPmzJxI2+CIy/b3XzUD0ZWxuVD6+4/Y\nkC5aI634vRLiQBMlNNLkDMrp/JIVZ8Ue0M0U9KVkNI0Z0H9ipbZvVhXUVIL7\nJ3kmzpBQ0dzM1KTow979EdvZerAmjZYTu+XMHecDB+WnnfgK+G339Y3Fjjhx\nQ4jwpSTBwHyF0kRjx1Z5RN9MhdKztljHy8EbeLH7Zj6yOoLxB+XSgVcjFTlM\nSj4k579C+zYSY2PLQ90Gfu5MAdECSpnaVKfWWPCNzDX8Qokmjkq9UPFvZK4p\nN5RPhuZgIuSV5kQR3HZvEoER68zE1nKJFL2qTglaVwgvK7OvxxKwVbbN5WG3\nf+0EmreuhpAv/iX7ONQ2LGYW+yUp+5nzjKTeQmFWm52qI7r2cZWRj9nDMF5v\nzS30\r\n=cbAR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"102a4c5ac7938ced258f4d3f2d86b4bf2985f843","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T10:16:36.066Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.30","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.217"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.80_1628504318738_0.3595967532336517","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.81-renovate-balena-jellyfish-types-0-x-161696863228dd79d90e5e5e43cb182cbadf850d":{"name":"@balena/jellyfish-test-harness","version":"6.0.81-renovate-balena-jellyfish-types-0-x-161696863228dd79d90e5e5e43cb182cbadf850d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.81-renovate-balena-jellyfish-types-0-x-161696863228dd79d90e5e5e43cb182cbadf850d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f4902fc866d0649367b74044e5079d8504feccab","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.81-renovate-balena-jellyfish-types-0-x-161696863228dd79d90e5e5e43cb182cbadf850d.tgz","fileCount":24,"integrity":"sha512-f6orCiqiKfLQ+ncZGfcu0SONtKc4f/WSahXfJwsPxdTOghDx1ueIrmA+Z9c5vc7mmKyy/MOF0hX5cPoCuJZV8A==","signatures":[{"sig":"MEUCIQDnHEVTqq4TW3KvpUC+X0QtW2AYs6aym6o2soo0cpl3xwIgSH7yzViiE91kxRXcXiZ3nMmI2lvvzG5OVZMqJbmm1Kc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEQHyCRA9TVsSAnZWagAA0iMP/RO8wS+xQ6N3HPiO/NKh\n7VIxUiiRJnGz1fH0JzmI8LvOjk83+3K90NiTvXWqeN5paRNHiOTvEjGfMRud\nJOnLMjtaN/k+SM8XVcqO0GOT1qeqLz6PooPTZ+UKU+XJlAKedlYlShyBJ1A1\nV8SMJNO+I/88yrMwmOZ4FKoyUUTQk46t/kE+sf7DLfNB8OLTCFuhspco/h7F\npJrqBi1dSiab+mTkn8/WMArs2nE82Rq5qIegeFywSz5E53C0wj3y2RAu147H\nOJ6NNVJB42du27dk+g6FFFY5MbIVY+4CK5ChRDoA64fMu0UqvpgRKTcm8iPn\nBa/TjacUuUQjSm/IbObb0ns0RpPTE44PCAcOaHU1ShgqJRG2JCSWWx3LjyF0\nsL8Ch5CmxM/o4pgjiJouCCkZeEwMuRXr01HX8csV8zQj/nKRHXeBm57OOqaM\ntaaZlp5EOaEp3vqJPNxX0fHTAOs05A0Eniepuyyv84MDZu85tqtmpeBFsYu5\n8DtpXGOiBHiCaP0bZPJhjWIlKgdIHl+AYPACz0HpsItShaa9qo3/joLvdMJX\nfP49EAFV4mY8tvh+sAn3xfJmVPmA/XQbcaR7wvK0/aniAO67w5K/lpBCLwFj\njK34wbikHSpfGwnfhP2Rw9qauo+0NlvPWe7eGW0pYJmSBmXTi/2aYaSneWQJ\nfjrW\r\n=rm8f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"161696863228dd79d90e5e5e43cb182cbadf850d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T10:18:37.289Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.240","@balena/jellyfish-worker":"^8.0.30","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.217"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.81-renovate-balena-jellyfish-types-0-x-161696863228dd79d90e5e5e43cb182cbadf850d_1628504562803_0.9417737642092301","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.81-renovate-internal-patch-30942afb7ab575c0e7b891e33c1a0377892e65c0":{"name":"@balena/jellyfish-test-harness","version":"6.0.81-renovate-internal-patch-30942afb7ab575c0e7b891e33c1a0377892e65c0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.81-renovate-internal-patch-30942afb7ab575c0e7b891e33c1a0377892e65c0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"55c0696eb7a9ba8480726b9e64d9456df8c4498e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.81-renovate-internal-patch-30942afb7ab575c0e7b891e33c1a0377892e65c0.tgz","fileCount":24,"integrity":"sha512-hRgWp8Sc2QlBhLiujhISsPMqkB7E8QprjxMK0AQKFPQd49kY2QCrLppoVnf0YwZi33ktN6ydQsdQKHWwU+j9jA==","signatures":[{"sig":"MEQCIG7Io/ovTjpHKPtEWypYni3A1kmL/qSZxOOo5AQZkvomAiB/JjLDqJnEBAEPm6tLu7wvUh/trdwbj/R38SSwiBc70w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134183,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhERZHCRA9TVsSAnZWagAAK1MP/i9Yg9JpHUtFsfSndY+y\nQlt7FEuG5JO9CWDoUAM/PH8P22lPCuWeM3cXFXvR4bS1Q2XFEL/FMiyKtDcs\nqgimSTPjcUJEfSsX4Dg+shH6zrQrcj6nfK1fCYZSU6hpF1KnUwi9F17xzKqz\nbd/7x8h+tO1/9xZrRz/saM396FRPbEVpnSMmZGhBJOBv72S2aKM4SAEenyFm\n21E8ggpzj6nNYu/zG8ayP6iAmi883dWWz/P5YGRZuOY2OptoANiiiTbWz/oL\nB1v+ZJX7R347xRO9dChlKrPMEu2EOezb/n+MxfXOKF7w9QubnH4+UqlMlPo+\nxBuLBErJ6RmIErOYjWRr8mX47qCFBCYe9xhlozyifLzOjdadC2uE9TJ15nB4\ngMtzKnI6b3lscYklIiHripumfPLgg+65XdBp6rDdS16hwWbE5f6/S/fNa4Vr\nB47HmtKGFKuTKNyOdSFybqi/evdzuWYk6pkrHvgD4hgf1s/VGUUtFi6OrWMy\nPeDfhPIeDTihJlSMQ3t8/tY8EdIgAUKxF8EnFz+qssOl30wxaiiKHhKCWsOz\nyEXKIglPrF4yZJMGEI8aZtm+qBx2jRnrgSXkwp4GsfWVJOTfDJWzZO9tBYjv\n2VOyYmWcfsrSRB+AqbNpkOvswJCyEGfjUos/Mg7ru5f8jMGF2+3pf1RpBd6Z\npgSF\r\n=SRcN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"30942afb7ab575c0e7b891e33c1a0377892e65c0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T11:46:02.156Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.242","@balena/jellyfish-worker":"^8.0.31","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.218"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.81-renovate-internal-patch-30942afb7ab575c0e7b891e33c1a0377892e65c0_1628509767504_0.9226317827707686","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.81":{"name":"@balena/jellyfish-test-harness","version":"6.0.81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.81","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"451bb0817957f91a81d19e1d5cdd337646248bdb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.81.tgz","fileCount":24,"integrity":"sha512-D5839sOOX9+xG8th0ELjcadTpNaMhH7SXNMsOsN8wRlytDcmdW6G0P9kxh4O2agzY1ikVrGohypUrYOPDWq8Lw==","signatures":[{"sig":"MEUCIDMnuwC1ku29ZNFOI/inLsuzHBkeVy3grNm/6iBnZJrpAiEA1CYwFrybBR7FtI8TGniAHdgnUaC0bxdAH9DlDIbIci0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134118,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhERd9CRA9TVsSAnZWagAAS+oP/A8XXwtDUIZVUNfDyajR\nc+bmv8NbwZ6hpdoR0h2bseP5H2jiyG66ogQG2+toXhTSK9CH/6tiXMe/pH7P\ntI3oUU0NglqKUqsyRjykGN86wVKekWHLzg5c6VRq8bIA6YBYiyI8yhOnSJx4\nSkAPPwY8PsOTCmRUxdHWkS4js5wa8//uo7pmCQqtdpGfbR1BMjKU2HPIsPRV\nJwL5yjf1CIse3vR3cYueYqc/ZmasyXjCdmt8b+42WRWkdcjJ/SEU24kKnONe\n/bUu/TF60RTBrhLvqAlrfDp1V7qjrRmPcGDcfIHuoqRB3Y1Ry6s7IkkfB7IH\n9F1vHTmtAGmKoQ+ZX7LZHZY/D6/hctQXbkHUWrujtEbEsE58FrZOIIRnaI8V\nGGNrkgszlGaZcCcNRJy+2P5WS1YCBTNSijNFwjpTuPdVlHduWuClX419jBeZ\ngzZgwF4u+S3ltRN9eyZGGxQpbz1J3dKe4vYJZ5a/eUEfIOhlNLpy/Tnb7Hwu\n53b5bBrWN7QoHifPgxKQE+88euaNhcASHPI2IKb20iScy7LmSBGWN4x4ENem\nFZQv4l5soIHP9slZEpAB8gL5EcolEPIvtjOOU87inlm/7O7u72gBvJcts/r1\noaaS1F0pqJWcbxwjL4AovjTqqLn9pAEA7mXEnrCLEwLoVYLz03UsAgUpOAea\npeId\r\n=fLx8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ed27e106a7aa49b7bb3e09918b917df56c1f31ed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T11:50:38.791Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.242","@balena/jellyfish-worker":"^8.0.31","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.218"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.8.15","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.81_1628510076949_0.07849724376730327","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.82-renovate-balena-jellyfish-types-0-x-2c9086e9274a8e05bf38fa522de3aa10fc35a05e":{"name":"@balena/jellyfish-test-harness","version":"6.0.82-renovate-balena-jellyfish-types-0-x-2c9086e9274a8e05bf38fa522de3aa10fc35a05e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.82-renovate-balena-jellyfish-types-0-x-2c9086e9274a8e05bf38fa522de3aa10fc35a05e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49da16268e8c71891ddc335075c0f39c2814f633","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.82-renovate-balena-jellyfish-types-0-x-2c9086e9274a8e05bf38fa522de3aa10fc35a05e.tgz","fileCount":24,"integrity":"sha512-8/MHHxR8B8trEPcpfDZMVXc47CdzH1GIcHNxw51NR+Nt5vPjOel8TRY+yUQ6aEi4MV7xIONyCQlRrthovu8hEw==","signatures":[{"sig":"MEQCIHDKT6uX6MvxpirMcVsTjo0so9XnBh3YW67ez/N/bK+IAiBsGCevuSmu1R+wJSj/YMjYWk1yaX74qm6kQgWyCa4aDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134298,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhERgmCRA9TVsSAnZWagAARnUP/ibObnarGz+sO7Dj0RQ/\ndIG5VxXSdGiMEkp0O1sPNLftEQognOIgAwSy30fpgzjAQgaxBX6uTRFyfyfY\n91VUxzTp7+RK6/F6ayP7tzlUm2Gz8se2SDQHcKbHkLw9AS8p5+Y26WNoxLhc\n+N/248h2kDQ6FORR0GEGe8CSPjZfMe0hX7sAc00WwyWhcnMc9BUx6+ToLNrd\ndEQMfXv38RILlDfJ5SGT3eTRJ/VasGC+SQlVEpyv0xFoiPPvLWyYGhzsvHTi\nlKgkVeXfE9vVHmLAY8YXKfQ7GthY0QrHFa2MNpa4CmmvcwjB71pdURmC0aJW\nW/FZBpmsG88qmD3UODni1RKKP0/9+jb/e6HA79cc9wNPAcUhroe6TZYAar/C\nwYkgjVJqNHwuh3NVQWfmUZAML96l3kvKsKuFPcfqVUPi0InIf/VllWb/UsC2\n95SSeJGr6KIu3R+ZLcYYKTkDdeXBh+6HQ9/PLLlI5FDSzGFnqpTqx1A/Cn39\npQYTb8H2CKqz05tq4Lz2wDufnnecpQCxmjZYhfTDgRg4MlGFYPzDk+QHmlcX\nPNFke9q+W2w7f+eqxv5Daxnf3Iah7CrwFLpe/HwXS1EEXKgcwBrvTlkQZQtI\n+36F/UGfQ+bxxYtIeTjEKHhB3AWuVqL7jElvuMgkRYM8/E62RuxSrM7lAilx\nteU5\r\n=tTbY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2c9086e9274a8e05bf38fa522de3aa10fc35a05e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T11:54:42.043Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.242","@balena/jellyfish-worker":"^8.0.31","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.218"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.82-renovate-balena-jellyfish-types-0-x-2c9086e9274a8e05bf38fa522de3aa10fc35a05e_1628510246357_0.8658814652962437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.82":{"name":"@balena/jellyfish-test-harness","version":"6.0.82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a99769506f8def2c7749ba7812146e49c1824777","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.82.tgz","fileCount":24,"integrity":"sha512-TRwdpE4Z/mJAzPg3YF97GpO5RYyoi4S5GUHTZaPakvoWx7hqoeeU3XH90ZVscHCa+nKxzc0hTl3GerNEM42pdg==","signatures":[{"sig":"MEQCIByul0ulCqpFMbYQ12aIrunQtQERS9yJ3k2ZFJu5IMMaAiAGkeInmIpvmvQ6haMOH2kq3sfrGWqKvwriwM4OLFSi0w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134221,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhERlXCRA9TVsSAnZWagAAofQQAI218Kb+lWyueX1v2ubQ\nAjIjX2d6p1ERMOBEWYPX8reXCQcuvP5yex18EVZtAbqTRkKYf0y5UWteWiVI\nokOtUrcatm2XmiWtxuRrE5O/AG9zrTQfQb36rAtN8nd/oM9gc3T4dKxmJzFz\nI/CCvrXp1M7KkKSsZTekbOd725aMmDq5Terz/dWG7+eysj+s/AIPqrX5IDYF\nrbvK9PDo+LL1aAYm8lvNH/8ygDERe2nG8erTA88DFRYezGBglVKj/+dzYXw4\njPE9pgldm5rNlrE7G0BK+Pvoiromtf/aObKg+tk5iwLpM6hT9Da6r5S1MPbO\nZTsN9Ml/x1M5jbofPUfpBMFt0l4DOOrxg7VA4mENeE/x76cU6Ib/Euk34rkL\nc1s5CCWaNOYImb5XSJZUln7kqTjV5mkX3ojZ9l5bUczVgnNCUZHJhdVgbf8O\nG3DSC81L9EfFvetyv43HHoEB+poGH5e2yBeAvkdWyZONkFcpovYBrs2GCrRa\nd8jvvXwsUeSG6RiiUQBUGDJfUG0W4DxCaJbzaF7+YRCr8C0R71ZxyaZdeyby\nBFNK8BtqVEtqvO7fiM/3AJ+YoTBDEfN5uqtjmmFlnws+P8LHpJrMTQD6ibLy\ngukatE3tl1eeMkU77IPf6KxoGQjV4zf9TB00f3pGZPhu0neMuQoMI1uarZOT\n9MFq\r\n=m8du\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c98bae4ce09ffbbf73ecdfa6e99bcad1bb840904","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T12:00:43.484Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.242","@balena/jellyfish-worker":"^8.0.31","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.218"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.82_1628510551481_0.09246084539324717","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.83-renovate-internal-patch-ae89dcae32ff9a8646fa6ff353ba1800ebad41a5":{"name":"@balena/jellyfish-test-harness","version":"6.0.83-renovate-internal-patch-ae89dcae32ff9a8646fa6ff353ba1800ebad41a5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.83-renovate-internal-patch-ae89dcae32ff9a8646fa6ff353ba1800ebad41a5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6de95fe7729cbf503047529a58ddc0f5a762f85c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.83-renovate-internal-patch-ae89dcae32ff9a8646fa6ff353ba1800ebad41a5.tgz","fileCount":24,"integrity":"sha512-26KiUhEel97rMnqZCHxmQM0P/nuk3m/GRduLlV8/tMPox/aoUpdQwOa/3bJmCNS3ulrIxoTf5Ofvo8pT53e/9w==","signatures":[{"sig":"MEUCIQCvKVWG3tYttuF1WOJaBmP5zPjYdD9QgK1cTTyiBC3jgAIgR9XjWGOoRtNne3wIq7hOI7Q+vd98D7/O1EHKMPOXSyE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhERofCRA9TVsSAnZWagAAC9QP/AqJGdmGJObqBmS5UvRm\nY97KrEcQpxOvxkn23iw9X6BE3q0bIMZlnA4dpBPCrt0qI00iR80jkcs33mWt\nwunFY3PXcHjdYWO2OlK+IiZhJnvkjZeRZf11pQwYEYfSQHC83MErkOCWzHVa\nBM0iLA7bHVHbECKZpMG6jP/Lfi/5Tqv39rZNVRMYY5Cdp8fyfuSaPho1Lta9\nr/N/yaF6y1GahlbD+HEkET12RwtPHVrfX9s2ad7mk7mQsHQ37IK+Be0dF1+8\nZEH2WzJKqsiUcWhvcGG0rNBLrPq6BFSVemkRl/U9cH33sROp51gbudF/BA0f\nIIWI78hmB2XaOXzN5zDzcM5VijVd/+KI7XwEK1ZV5Ee2Dc2sZMowViOcp47s\nWWTDnIUiWL8H2LaAwSZ6Y+dAJ4rqx047RhC65UATg6YEW4WaM1V6+p386IW0\nXjc+uoKjxLlc6vZFqjDSYf4P9egGMFFp4uLoVg4Thfg8eAvUB2IwfGBqnRsd\nwAgaii1KcFQ7E3RfVG86Ml7K47mL9owUwlu9UvtfyMBdO67k5atSl5zj5L4u\nckWrNfWK2VCbuurn0Jrs2WwfBvMfspv/3dnKrmyBRmSz+x2qycSdIZFMk6JL\nQupk0a8mCQT/wfiYXIMEf08+i3IZ89EguslivjgvDtwbJWQKWHTK7boDTFO8\n+v8e\r\n=y7Yf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ae89dcae32ff9a8646fa6ff353ba1800ebad41a5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T12:03:31.481Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.242","@balena/jellyfish-worker":"^8.0.31","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.219"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.83-renovate-internal-patch-ae89dcae32ff9a8646fa6ff353ba1800ebad41a5_1628510751504_0.5973712725167013","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.83":{"name":"@balena/jellyfish-test-harness","version":"6.0.83","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.83","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f7bebdde9e0bd27b83fc363ff016ecf7c41c551","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.83.tgz","fileCount":24,"integrity":"sha512-L5f8pqq43AJdBpEFyBP9qNdAk7MM3TVcfLnx1L5L3e8S+hZ4gIxVD47emx0xOgRu+HN3aPpScJg87sAfftQoyg==","signatures":[{"sig":"MEQCIBbneBWFvQlgQxYAMu25jeGAPMDpq5YnFcnMCKjKViz1AiAiagWEMOQwcWPwsAIOpKfN27crtZ2uQy/3j9R56iZbWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134333,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhERxICRA9TVsSAnZWagAA+8wP/R8TIEpM3sk6X8eOHwth\nDXHn/ABzUXZ4kOqIiANKSoMDU8XqEf3Vru82PH2asZzQ8RXFpomNBKYw/U9Z\nLiRFbDowe8OzpPzj22QUI4TXEEuT0sfp9gYvff/NWORG4F8e65yrO2RUZ2NN\nualJSDcnJADqVLq8Tb9Hgi90khN1nWsSEfTsIeBEjXo6Q5iUHI6a7fhLv2zH\nBghcL6xnD0LKAnRnWKoGmGpwSo4IPuNYN+2Sp9H2PRsysJqhfukNfccaV9Kx\nJ9kKE5rXz+/hF0Zqs+Xfhp+gt3dypqTVmx6EuLlIjeYOFn27pgKgU8fYEbZq\nMBSDtJwcQbfSI9sXTTRBHRcBJOanygs+pwKNpKXXxA5WenJZf7H4t0gcYJot\n2DK5qygl+N0cJUv6JimQxJtlcjf6dQA1xQjr/F6QwaU5ZPVhwqLYzztNrbVa\nd6E98WEgqG23t37hX/G/G3r2byqgK8BUVT6WVL4lcSm8WZjTg3FmtAF7oAvJ\njVcnG8f/SrkkWfufH4rjB4/GgVtuSHzg3ETkgW38NMLneiB6ktVZGk6PivFe\n7oCFahtD5ASJh4o6bhGr3r96+W38OJa12xQ0yOQfd5z/1JA9cd/K39bb2slp\nLLeL7Osh1p5DhagJo6Y6lg81BbiqwUyB8j7VDdH+g+SSPorhAuukXwNqtefI\nwGqX\r\n=gNne\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f55f0646e426a1fce7a005aeac66aea6a001c557","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T12:12:03.817Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.242","@balena/jellyfish-worker":"^8.0.31","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.219"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.83_1628511304233_0.28014837756775535","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.84-renovate-internal-patch-cbe34c3b3e62378f99476388c71279f000d6a922":{"name":"@balena/jellyfish-test-harness","version":"6.0.84-renovate-internal-patch-cbe34c3b3e62378f99476388c71279f000d6a922","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.84-renovate-internal-patch-cbe34c3b3e62378f99476388c71279f000d6a922","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"58f38d5cfebc1baf0ad6e87f74afe50019857b1d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.84-renovate-internal-patch-cbe34c3b3e62378f99476388c71279f000d6a922.tgz","fileCount":24,"integrity":"sha512-9QnanshmXMufvjoOBct6u8ZbSU8u3sVC+xWlXjyDVmJU2DF+2RicXAp0weSsxgMOAHUZk5Kha/Oeu59irNTpyA==","signatures":[{"sig":"MEQCICiv/IwFvhPh80UqUcl//nkg6HcjHdKPbS1V0GM4upASAiAXKeaX3TwUKjR/IofM2IDegdIIpDB1XULptX30CitsBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhETf0CRA9TVsSAnZWagAABb0QAIpGCZZ2e3HEznMtZ/78\n5eGNxRJS5/YUFkqfX5gR4WcHV0749Yy7U8gQLL4dYKDoOgpGp8nNQBPHFDHR\n505o1ZWHvwTUqOTIn55HcQWBzwD90s9zq+xVqbm4lLbxJcZXD89Rm68Jo1mx\nWSi6gOdPnpdLikxZsfTkmdibj4MeXFEJurBUyIV9ZYHHszfinHNd7QLlWEzR\nXxN8SNFIqaIFFlTWMhn2RjEpDs8ojlKtizwt542cKk8S3/k7btLM08k3NH9A\n5EOmbSUofXVWJeDUjLcdc1VleMZ9B/CbGqOltHBG6/B5eQ6EjozyUWRHk5K/\nwQCyXMlUESeL2A/lw4YRrJdaFbj0ZtejzWFJq21rbvcl8Ta2v5OcmK4N/7pR\nvw7dPfGqO9I5Nk2gGATyu5988YB7kkUni9xZAb8HqmL2bObUy6hWq1GuNEd+\nMmuUno+lVGsUFw164zRzf+AFSyAcNOEbDwnUrQsRNLeB/V8tfsJjbnLcb6ay\nQNRptMcvHMh0H6I51SYQD/h70y8IAKU5XqmYNFUpjMFYuWnbKkSTPaNqAsaW\nr3PM0TGbCiURdyf0z+nf+QUe80tcNZ0RpEIeK2yRHwNEKA/MOlkfjmAkBk0E\nm0XLnKi5Q2W+iPROTdY0TxwOmJNrRiDTJ4305JqfZXFIaZeoXte7PQEoFqQg\nIJrv\r\n=W4TO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cbe34c3b3e62378f99476388c71279f000d6a922","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T14:10:41.857Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.32","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.219"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.84-renovate-internal-patch-cbe34c3b3e62378f99476388c71279f000d6a922_1628518388525_0.7468124093385218","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.84":{"name":"@balena/jellyfish-test-harness","version":"6.0.84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.84","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7ea91508f38a2f6a442dc7789b88b22c26b7ba51","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.84.tgz","fileCount":24,"integrity":"sha512-1z9CfalzECK0iCrAimiVWqV/XlKJXgbGkctrXKBCcbA/kPT2WPKQCQiOlYHiozDumEEPV3zLnXZtEGqFEkbFKQ==","signatures":[{"sig":"MEUCIQC51QHzxP3+0dt+ssCL3KtJOp2cD91fYhhry+OsAkAzQQIgVCZhoogeaXSF8MT4060IH2ReD17fu2jBmBzA/VqZ6XU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhETi/CRA9TVsSAnZWagAAM4EP/RCFDScTJ9Yjabc4BkWz\ntt2u8z7+vMUZ+eJf4tuQ5hB3Se6BX46zngwJm8C7rQeQJH9Vm5SDkDpUs1po\nm5l/iUTyNe2iuuWMWKs9XOg9hWXWYm7NyELOyBUbNOjbMFE5ulWTnVuglDQo\nK8oBmk0Z0PMiodl7imPSIHy8/waOLVRLIKlD7YSfo7nP0IDzqGsEl2ZDUz6o\n+yD8BB0SBfwjZSBo6XQHJKhBfZXcob4xzUcOkBBVN7e3FEzSPUAajeXgwl/0\nT0IxWXDZblShbyQB0EAWe53eiH3K5IAOjkLYvvUToLjpAOwDVNAirLGJRSMx\n4jwtvyNO4Hf9+TZVZYHRyKznFnR2Uuu9P8msnXEkGu605HdaisjINhzjxggr\nPRpgnyOamADQXteTYVaIGQi8i0+nw7XM/ApZQV0EMwVeETOlnQ3/GbqB9KY4\njhkxbj+iYM5p/Kc+aQlLejck19ULasaPua7ynXufdVHDSREho4t8xaBGzHzx\ncIor3TsRppvKh/ctkgZz5kVEFEm9DBWtS1rKHVwSvJQzslaSDysAKM+dMXZX\nM+1igIaeZEY+O/Q8fP0hsnQCuaoIDuVZ/Ov3Z1CgHO0M+VMLGW2z+jEqDtqs\nePMXp9ycDTX9IcrtBWxm3PEjF66hxyKCkaRq6pL795ObQL299d2POiUAkYcb\n7uuO\r\n=lQCy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"45ac03c97e10ee3b63f3f098e96b2235e1683ad9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T14:14:07.242Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.32","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.219"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.84_1628518591510_0.37387067393489937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.85-renovate-internal-patch-3898cd6aecf3111bb2f0fd67762a6169e8010b4a":{"name":"@balena/jellyfish-test-harness","version":"6.0.85-renovate-internal-patch-3898cd6aecf3111bb2f0fd67762a6169e8010b4a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.85-renovate-internal-patch-3898cd6aecf3111bb2f0fd67762a6169e8010b4a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"71161c3271bbf2c5627f2b6deeb73bb352fc7b34","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.85-renovate-internal-patch-3898cd6aecf3111bb2f0fd67762a6169e8010b4a.tgz","fileCount":24,"integrity":"sha512-m1T207lZzEG/+Jrh4PQ84ZFAgZS01KNanFeQNOVKab2Cq86oU6bGNpJyUe1fziWPOUsaFOubyBMFv1QDc2IfYw==","signatures":[{"sig":"MEQCICF/rodtFE3kQJkS7fgYDqe08XVeIkzhlXByfXZdSoBfAiB+o+370rJjGGURtri2bHZQoiqGkHzSZDjAR5HuFPiuWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134578,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEYezCRA9TVsSAnZWagAA4GAQAKFSQhildOcuCs9316US\nRYbqV/qRwAiS0M5skjHrBg/6DZD9V6IM+OKwz+7DAFfXkz+RTiKrLOf7cMm0\nj8eR1UKGHRyYQV7E7IhQlqKMeJyfyznzm90UbpwDsb+pPfRqQGS/62xl3lTX\nnE80bLZh3lpJCLHC3d41AV5szWIraU6UqSgepHiva1yPHxREyk5TIWG0vJ5T\nmzK0RZiJjhvMSNlWzX6680mc0MECMPQlVH42SH05XVc4Pg/iDAr+/AbyVqD9\nm7yE5C/PSwa38Rz4h9yizHxqb/T1cATfGV0oqQcgeI4VTAJfyoHZCWlMimsG\nFrDJbu14WlAUO0UTvnaxIy6tMWM5iD1b/vA9daT5DOiXYrnkriQyR7niEKnJ\nomqq5UeWX81WyK4nDxNS7SsuaIPISri4ooMju7JpVOmrj42BQ9o9ix99cp3u\nNhf0piYdrtVUV5RjmkTxVnUnBIXQHhizbo0cM/syrumeBcrBaNVFnPjR31SF\nJ/v88kEB8Er2JsqQELRyj81vCti4TXv91tblIkxoP4Sxy1oGM+e1txEuGoxp\n8ZX6sC17A6RuxiTbAhd4kip6M/YDnTP0edHBKRJDSehys8jEgC/R57dSSlt4\nbRsoIuLrI5F2tNMPBwShvPmpRY/7VIMIDLRmCyZleQ/rrTvwUFzzep6JERw0\nw3FJ\r\n=t4Kf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3898cd6aecf3111bb2f0fd67762a6169e8010b4a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T19:50:00.535Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.33","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.219"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.85-renovate-internal-patch-3898cd6aecf3111bb2f0fd67762a6169e8010b4a_1628538803556_0.65812391247755","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.85":{"name":"@balena/jellyfish-test-harness","version":"6.0.85","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.85","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fa05b65ec07f69b8afe029458411ddc8f650fd21","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.85.tgz","fileCount":24,"integrity":"sha512-m5FaturPxtjl3Y/OIsLb19KuT6D94iP1xlPBbOHh8/PSRVxgMso1BmHj7NbiC0yOkQn645aYC3xgnVD6tjsGUw==","signatures":[{"sig":"MEQCICySp2MdFT3Ga0jFCRn30sm2VeAjuQUOZfa/hO4+1fXhAiAEgb/lzfXmmx2nrxXCz2rxSlz2rcnS4CdRpqsNJAJkzA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134513,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEYiUCRA9TVsSAnZWagAAX1IP/ig28E4KCEHGICrECbb7\n8QwpnYf0GF60/4yEUFEz+QkwO2QUp7UGM8il95cTWIoXhvfXb8LoEINB32ns\n23fbmDP8jOK+fxw4XtVgmkVPg0O1qgZAxGLUbwTcVdIdg3ysiEtjeeYRPK5v\nwDPQisEoQ7UUR7m4SZzZT66AL11QszoamDQEwjgJWTciQy6TOjyeklzrUYBa\nVlkpfMzYw1U/2u7vVAyedZviNmzRN2wAHNQRX/IC0noh0W3iR4lDFdiPSQgz\nDW63QidTND5RKcbfczWXj61Cy7OLfOuhiUL3vNx6XKXYFx35xSXmjkQLvkbT\n7PYn6GSi6RTKlaErKWuar68H1dvEK+OeJrrzUuh2phAJcNw+fdNZgKcCx5XK\naXE4qT3Jt4RJgZ9+ui6Xgu8gEgc3he0jzHmzJ5bFKy7q2tVeRNqx235nHMzX\n00wx9FXbtUU5TFoib1f3JltfKlDRcyL0vm/hqU77/r7T4jRDyYpAuS1R0ZH7\nu5hHczsIcwpA+fYY+dlGyE4zNfIbm0Aum3CK493zo2FB9FRCrOAW8QGv96QO\nOSnpVn3Hm7IbZ/ozX23ONLofqe3/6nldQDkwuyPdzGvPgLl+uxBg53hF4bBm\nwHheWgkI6K+cye5Dq1WTo0KT6ROUMVTM2vHZ3gqa6W7gSvjGKOn3IRN0LUh2\nWjVh\r\n=HX/A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"09f3e9fda68adef2fdbcc420fe8dd6330967ad82","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-09T19:55:20.926Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.15","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.33","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.219"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.85_1628539028490_0.010504972469603135","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.86-renovate-internal-patch-2f1307bc5735c077fba9d11806bb732213cb1843":{"name":"@balena/jellyfish-test-harness","version":"6.0.86-renovate-internal-patch-2f1307bc5735c077fba9d11806bb732213cb1843","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.86-renovate-internal-patch-2f1307bc5735c077fba9d11806bb732213cb1843","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"12bcb5ade57502692571f87ae633382ca9d15cfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.86-renovate-internal-patch-2f1307bc5735c077fba9d11806bb732213cb1843.tgz","fileCount":24,"integrity":"sha512-V072W83Re7Y2hKYtGODfAktZd7Qdu4+kHS1AiSGd34aDLHrOm2KmDs2Hmm3siblT7imcpXe8a+RlMHPZe+Nl5A==","signatures":[{"sig":"MEYCIQCiIBvslVUB5GITMFJAeSJelDbW3hEwpWEA7/i5nTI1mQIhAJh14ubLAw/6xWYjXNvqaDUbaTVPnXSJQSrwdn/xxOiO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEmmwCRA9TVsSAnZWagAA6vgQAJbNK+Fxm+mEMTxU5Zu8\n1r1XUawVnQTdW3EGJ9tceFbKCjh6v8a2YLLxSm53O7U1gUyryPyotvCMDWbN\n+AcTfVeb7zuhfidk1ydb9MOhIA3NqfUKBAfu482qmjWUHI4ROkvsrtZ7TeNV\nuVvgI2w57upcZxZnt5xkIBjZw2uY8IAg4d+8HvPI/U6X41Q4Sqft6mKPlWrd\nKcY291RsBfS4g7N2wX8qIMSJ2fDHtlRZioBg0psx9raAduB4KlmyIbysNla0\nBpd+6ehkBWGRYKe+Rxg8YwNRvvaO6/fOzXu8L9AHkkjJYG1OTRDv7AP4DUDQ\naWOahi3F+kicIyOWsCwpCp6DRMNLJtf9Sg7ptYiusWUJJzotEhFwIaT+nSbW\nDupz0vrKkYLOPsHrBmLJRbHioFAyIvN8nSsc/v5wb8+smrN8dGMH6peC3JDm\nvxiXSioZKx+teyes4TfIWqEXkewGpaXqp+tFLbVpXiH3TT6fFYdACT3t5096\nuel+R+1BHHgUYQ4jDnJUxCvrK03l0vzEf3KTVwp5clMl1pq5JkGeqomtcgEz\n8k5shCnqMvzCaPpZ3rVnJ5/KIZmiluVm3oZafx7ts0SRf7WKWhVjlgKXpjXJ\ndLtNPI2PsCgz9NA1BhAfT+z2g6HfTX9gMr4NDwNG8UFHFsZYJaLWZkopm1ju\nsEbI\r\n=yqJV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2f1307bc5735c077fba9d11806bb732213cb1843","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T11:54:01.589Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.33","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.220"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.2","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.86-renovate-internal-patch-2f1307bc5735c077fba9d11806bb732213cb1843_1628596656413_0.2033652734608089","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.86":{"name":"@balena/jellyfish-test-harness","version":"6.0.86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce243464fd5a0e18d3bd3e96dd41d798b48ab843","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.86.tgz","fileCount":24,"integrity":"sha512-KG22OS624m2cQoyak0nzXaL8DNI+7hLMx75HxZ68pBumdpsZzvYfF1Ydb2NbyZVQtHzyROc4wnpAWdk+t7at+Q==","signatures":[{"sig":"MEUCIQD4lVoRH55KcjeC96uG+87gpX/XtZaFs7RErObNLMUdeQIgUM5UpC2MNUpPr5b8Kdl+NQhnNNa/PjT4+RboLpS5G5c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEmqyCRA9TVsSAnZWagAAmEEP/RnIZiTmkpgqgxthvbpp\nj5UWe/nndqiVluzqqy9lNxbculoiN+TiiisDJP+xq8w5x55erbkYRcx/f035\n8sqtOadfTDWdLsfe1TuTEqIY2rUQB3IkkWd3/pVprpAcmsviTi7b9iQf7SlL\nA8svUpj6HV0nPBpwx5esWoSecSW8v3lUKbvZlYvmcNpeRX0lH/3CMDLydn+k\nvxNbuEjGgLRDEpKY112K4Fev/xWqfaAMs3GmQvWVog200ZvTQ9uoFx1vZyQR\n/NSS8e+ap5LI1IbFu7pYHzB2DjOSa/RkRvmRa6go1DU1+o5rZ+WKN+geFtkr\nnvMmnQ0A/loXLRx/3qAsKXUu6ZfMfcexzgdU3B/XHdCnSAKE3NtXHBIm/n4Q\nUV+it5wYLUTaBLrsh2rXBNauK3G2y6g4YrC1MOnuNfQpTrbcThA0zZqZHBwQ\nCEOqiKfanStC1WkPp8Xxasr07FlzzyL5z2uQoHy2w7Wobp02Y6kiErBweFUR\njINCRijhVMrs9RVgS4WOUgt3COspB0N/mpn5fLHYYIvVJFgZfQgbHfIyNFKA\nQRXbE04P12a20yc2L9ZaHrL4802qO/IxotuaI86hpWk6SVHpmE/4GKwEKkA5\n3mDUrkMWUOqnhLoXnHIKmJRMSj+yuem/stoIknJNqPDNUPQagMwC5PE4+7K6\ntBVG\r\n=1y2c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c96569d3e6e52e7cbc4be5cfdd9e35dc128d9cd2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T12:00:07.632Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.33","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.220"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.2","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.86_1628596914020_0.24606882667577779","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.87-renovate-internal-patch-e6edc45482d5256c0ad9729b28813778707276eb":{"name":"@balena/jellyfish-test-harness","version":"6.0.87-renovate-internal-patch-e6edc45482d5256c0ad9729b28813778707276eb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.87-renovate-internal-patch-e6edc45482d5256c0ad9729b28813778707276eb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a8fa158f423b4119d2408542f1d2799326cc77d8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.87-renovate-internal-patch-e6edc45482d5256c0ad9729b28813778707276eb.tgz","fileCount":24,"integrity":"sha512-kP+toVqVZuwBJa6+nCM3EfX29hqMtcZ08zCi8UlA+anBYFaW0xOidAtmgh+S4zOneNSfpELuoj9Xlm7A/+yh6w==","signatures":[{"sig":"MEUCIQD7bV13oLIQED1MPH5JEy3kAEOq5ywlBZqHgZvjyz7XyAIgD2OEWcTyCVoS97OBKSTEaOp9kiNwastsFwmh1taWLKY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEnqxCRA9TVsSAnZWagAAkqUQAJFVSD4JvPqi+6iYqUY1\nkrmB2z7rnCu4CcL8WuGSrkJhkdq+6txPze05TmvX9HEZWzplseKMx4L2lqwU\n2CCWsN0ANnqiZ/vsqxSfGRFuflrQcoynFCbuAVmwlsK6blNe5CGaaOxO/3gx\ng8PGOpChrUhgv99vICA9TN3QGHpWs5JcyUiCyjlSSswv2apIWMUm0BcTO/Yz\nsaDPRSn11mn8p0GKEC60nYqLdvs1z0q8B68UNIZuqJNj2SYioXfFsak6b/FJ\n+zd8+O9m2McI/5aauIJI8iBDJfSt39F6AgsELruqQ6Ty9+wyPd5UjCa40EIw\nRu955lzGrTsz/n4FuoQF0fL2Gnku6Go0kIplv8GQbGkjNJ/MDcowNaGgPSjx\ncBaHb1AxtpRqaie6ZojRMvikOra8uWVrSBuaZ/IbWFddbZzz1WR0odeWE/LL\nAwX1Z6UuGN++5+8ell58i+uYo4E1m0eSgQifHK5VBk5cbUkwvk1/Y/QBt1q1\nis43kCIr9VRAxNKgz0WbJk1ep0GLh+wMuz9KTl0cpgX3jsmiNdeeaiaLS1nu\nuc/lLOPZQA+XQSbIBshuqeA1RUT8RhTDzNmD88ui75vpSlZR03Nfm/Mi1qVN\nAG09nxKcV78iFeZu/o3RbxohyKxGzybbVtaxGOCIMH0c+jCag6gZXLbv5Qyq\nzyRf\r\n=dM44\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e6edc45482d5256c0ad9729b28813778707276eb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T13:06:49.320Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.34","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.221"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.2","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.87-renovate-internal-patch-e6edc45482d5256c0ad9729b28813778707276eb_1628601009590_0.14432118800576044","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.87":{"name":"@balena/jellyfish-test-harness","version":"6.0.87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.87","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6bafad6bb30d4193aad6331646d9124d81e62a7c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.87.tgz","fileCount":24,"integrity":"sha512-6/Z0iJVm5VRIQGu9Mp0b2EVAyIXdipzxJIOMz/KQS9gApP6vck/QcTzopTSV9tAdIVSGwrdywMwSOUc1w5doIQ==","signatures":[{"sig":"MEUCIQCrbEhQrurHWzmnxu3c5LdM7V4b4MTA2ojJngkDUvTrOQIgT/UFizFRY0z/l4jKiZrA2zR+U8txYaMSH5LH7zRSrlo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134661,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEnuMCRA9TVsSAnZWagAARJYP/jDNjUghUvCJMprz1qtm\nMSwQY6XmZsKQ6JEi4YEvSa59k26fqmxaAiuU9KHVhOKxBdOpqDOnChH1r4dE\nHUNR68OC79bXi4iG0B1g4qIn5oSBeRpAhojG/3XL0a/cWb9432beMA+/5OVx\npPsOU0fu0FRtS9dc8G9kdGrwq9GbdglQFimmesih4kG3R4cmhRdz+BHTcMyC\nVKqGXvjJs2TcqsEo5S//aP0t3dENpV1ZxHC5JEek+BEJv3bVP1hIn/szvztP\nRe+VuxFCi5cr+ELMR1CWJv8bCw7JRonBYLKLa2iQIVohEpO692k3iia9KRqw\nrX6eWaVpaCUU3NZSmnYk1n2J9sqtIuES3aoXa5zoAu2TazJUhPcTHEL3ZTrN\nN6P6gCpBNXOlEVLAkohOvU05myCTvBdgt581A9gVqYzWIjJoiTQgLYkOS0zu\nyenODf5Xz39G++97L7VAn72xV5/6tdPJyxRWH/isbp1BFpLBeLR15GClXtQK\nLIrNk5MqLgEn1hrGF2+gpdIA451W/vwDX6OfTE1wZ+1fOStuxe4/BQKkveg+\njYnpvqL2ggc9rQ7ETQ97qrxueyDDpmpQn/zFdg3SiHomh+ugt87cpYAQJKxD\nDt8UuV//zOb7U5Airloxtb88bArbuCLxljUUSdyZJYvd5eWonL2vECd8HWFT\nrEtx\r\n=vaY+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2205d2c56158abd8aff6ecfdae5504253a8a05c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T13:12:01.809Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.34","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.221"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.2","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.87_1628601227961_0.4629648898147436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.88-renovate-internal-patch-bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f":{"name":"@balena/jellyfish-test-harness","version":"6.0.88-renovate-internal-patch-bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.88-renovate-internal-patch-bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f6d949dc8193477088876fc06cca0779372f3e76","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.88-renovate-internal-patch-bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f.tgz","fileCount":24,"integrity":"sha512-sUa1O575YWwp+o8fctXFamBzssv8P4SUGh8uz0sr5SdlbQp+0iBR5/PRZCO6jEYHGwGo0uMISk19t/qD9E1aKg==","signatures":[{"sig":"MEQCIAiemf8LMT0XItGLnqMfqwe5OgufU6yseZwi72flORF2AiBS9iAOgLXI981H8URReVmwT2hSBWuxH1Y5Ee9Jg3NnDA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEpCICRA9TVsSAnZWagAAF1YP/074YhchUqvuoho1iw0F\nNayrVCziBZCEclO9sf7tWbUMab5qr3rPxZEI30/u3M0wENjZsHlavEXAthXt\nHw2RhqbyBr9hWwm6E8j8q6pKnZASefnbDp9GbhwZ498PWHbf8wKJPYzPWeBb\nOPbi5EaW0NiI2dD33SoL4s2W4ZlGjqqare0r+fK7T8Q9ztiKoX6R+8Eo+b97\n1IA53FhyaHjQrFRLT/KP4RDioPrEV8fFWU6sRSyHw2j2PSydnuEoJQve/FEr\nCZy/Etx7MHcwBEZByUjuqw3I1DUHfX3QZ9tTYdBffm8J3KVC9UQyXmjmyXDE\nRsh6YoJjkRbBLBmgiZm44Fo7vxjCwA+5sx5kWzGEd3XYutEJ1PMWbU3Ahzsz\nDHI8qARZqn4k5Vh5Yyb24E85tE18CeG2iR1J3aDlKKMTZfvpMpp7eWxewVu9\nDKsHkP78Rv9EZiLPVU4E+pRdKCgJjFUeqsqnFYEH9PbrydmPUPBDFJQXyrRq\n0SZGEjwWEEZgxH4AIHDXFoVMsl86yEMUdkrmpjrTBXqqhzU4IknfQ8HhCTq+\njKJACRTRGwIQHTAP52DBUxOxFYiUhZtTZ/0LhF7TeGdrIPbPhT25H3Lnbrhy\nU7nmUMsOYY5kmjCUVYLZd2flh9STnZd0cYDGbscEDhufASNpT5PDK+TAAH8/\naskL\r\n=v6AC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T14:39:40.491Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.34","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.88-renovate-internal-patch-bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f_1628606600474_0.4155249604153599","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.88":{"name":"@balena/jellyfish-test-harness","version":"6.0.88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.88","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a86d3cebb09220b089bd6b6133c0f4d59717fd64","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.88.tgz","fileCount":24,"integrity":"sha512-MHtv42V8LRRcd3Cioi8Iuvh/l08w93Y3VhR/RtKRqukQv1SV4yyaEs6jL9mbPEHxqwTVimMktJKG1A8h05DfAg==","signatures":[{"sig":"MEUCIQD6v3CdNBYu6hEM0NTbMBENcQp6PU5wfOtMqna7fcP1ZwIgZYaFahTDPgqBg/Zmf6X0UXM6JvzKzr3ZGB9HrPqdj/A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEpFnCRA9TVsSAnZWagAAtxMP/3RWfIZlKFyymi3uT+43\nuvLKth2pse8ZXJ0ObA/4Hw1K6crxETdpwqORFj4Sb6dh0meLjonglwrX1IFM\n6kz8bXjdvOe38EQHLA74cWLOl/E2EH5i3JGvXDl5O7nQ0uZ1p1J+sO9+ShmN\nK75pcgkQkKftVAKWAgEsRjU7B0JB5y3AIivi/fK6R1apQxNh/qY5FTqA2+r2\nRLV7Rc5K4BVp8BVBSBTXtVxyKdt+Cz1bWnGI0P/XdpR74kChtSjQ1DlButj3\ne6vOF5K8l3wz8QZl9ybyNC4YjwtEvVsJUmGTzFbgjmZOmyGO5v0G9YxaKLRA\nnDpxqYugSyspvUxME2FSH+Mr7Bnsokx1sEKXg1GLFlkhJwFcBM9o3pQYaUIH\nO/ZULEJ6bvEPU/rBChiUYGZ/1qnq0ojWSg+Whfql+7LGr1H3HLoLFtlPBad5\nZe8I6Esrc+qAz0J6g1RhWBmQDDxlNI6Otl7ruxkEK9fQXk8tFw3dLaqVohww\neZNf2g4JNnVIBkQ/vBPSIRG9E/K8Uxy+NOaG98qf0iQ3gosRnY0hcSfL3AD/\n2xvpk4u1H7q49a0Q5XkvpiZ8YNoUMrNCzJ28kmXlCnqwkX/aITUsfj0WkY/A\nOow3cbljwUetnmXbZ8Wr4uBwlCBLjz0yGNHvGQFvmIJ7ysPZpUiHh2oD1Zcv\nJKpq\r\n=T7mP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"631b5976af760ea65e432a8ec1f2ae0dc0ed3bbb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T14:45:14.138Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.34","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.88_1628606823230_0.26975082368988046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.89-renovate-internal-patch-7441fd7f79565ca6290118a748e8dc2caae9f86d":{"name":"@balena/jellyfish-test-harness","version":"6.0.89-renovate-internal-patch-7441fd7f79565ca6290118a748e8dc2caae9f86d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.89-renovate-internal-patch-7441fd7f79565ca6290118a748e8dc2caae9f86d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8213b35d6b32567b5304a2d50e9ed9b56228c803","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.89-renovate-internal-patch-7441fd7f79565ca6290118a748e8dc2caae9f86d.tgz","fileCount":24,"integrity":"sha512-rRs6RJFHoDt5wsrKzs9tzvRIP2/S1fO9nacV7jgbHatXxITCwoqFobZ66AZ7vRp1ygtm/N8hP7QZhvTVN7ocYw==","signatures":[{"sig":"MEUCIQCmvQbMx83GGKpHwfv55aXLU0uYGZfDp1s4NvBcH6+l7AIgKisinn+QzWFMv3/BpKKNyktkDLL/PwyuE4kIHjvbG5Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134906,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEpIxCRA9TVsSAnZWagAA3zEP/2igFaITEMOMKercaHMf\nqIqhpFn7DIooSyfo4kYkbVImV72aU3KottR1rdwy1IRzl4x4b/oPRrNfDGCN\nMRkecOlTmxAVW1FxiLKI+fwwTaBTBmCL0ds6Nfh3wZjZoFx2ZOvFn7uQv1/F\nUhf0togs5KXMev18hNZej3aLaj5PCsYpqNv+VNYnKdNOAqXnIB4/fFlxBplY\neyttwEEU0k3Gpxkkaqk8X9Eap/pV9uKF9FO0/qPANR8bouUbjWFhfMpgPS3E\nmIMT+uxWmm556Su0CEl+3MXVeogBLqtvzqQG+FK2TQxyY9b0lZ4yfYsqE/a7\n4c6qO/zjEn6jo8iatkNAZnzRtu17hEQE1MrSVO5qTFC/6B0zq0UqAg9NSgVy\nvNlnnPVd7yQYtIv3+F0RtVmjMmCsS5i94sIlUC2cSB79EHoEJcvc8NvOsPoq\n//0WVqZ3XncWAYXLsZW7kfrhtn5ztTJF1ytiCsiJ4NbycSeIMFqw4clXuA47\nMLidcWRLMvqEBossD64Be8dmQhvybzSbR1hmqRQmBiuDihbQTa7YTZ8KTRno\n0shgl1kBJUOIKZLVTaCdRgo2Ycys0P1jLbhBbGY5y886nrl9yHQXWYJdiBzQ\nub5f6DSOdNUxG1jiTHozJlKSJKtl0jMF5ZY/sFAM/oOP7cxNRmEIW3TPOmTa\nG38J\r\n=+BpE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7441fd7f79565ca6290118a748e8dc2caae9f86d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T14:47:02.554Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.35","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.89-renovate-internal-patch-7441fd7f79565ca6290118a748e8dc2caae9f86d_1628607025089_0.32181186657383454","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.89":{"name":"@balena/jellyfish-test-harness","version":"6.0.89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.89","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a56f9b3685cb6226b4b01156f7450f4945fd1547","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.89.tgz","fileCount":24,"integrity":"sha512-Y28NaqA5iWyzlnI9NWjOR/btEkEjLVxKzwX5WObOB5J3lH5rgYZxn+W0bBQ67+MyPQqE95iLp6tzwGHIW7SuQg==","signatures":[{"sig":"MEUCIQCpJuk3Hcl2+fxa1UQpTl5f8bRlZVf8/g17DT9RsJKPggIgKswDdOTc7ioyoo47vOux/bujF5chKkYzDhW79FQDGt0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhEpORCRA9TVsSAnZWagAAiG0QAJkYe2UmA12w/BITnic0\n+asA22vSa2wIHPSWzjyfv6j9Bzg0jvriuMapIZNenmqs93P9t/083YG/U7y8\nJxVSua9K4JsFbM3N8BewA5XjPLsxJw9dtM2o1yfMsUdkFJoHMfOQErO2xXMX\nNz+aS4OtbCHy8unOpNsHUDSHOo5otMW+D5Eavd6t5K65DEJ4+ktNbi6N6/4Y\nFqMDdO3z6zjHB3jiRd1Lxt2usxJRECrYH/KozzfCZqlZ6F6WPyvHmJyWE04q\nyujM+X21g9IPxPJda6MWY1oZeNPs/eoy3NWBWqka0a8bfFQom+mYMrUXm7E7\nH73dn4XI8dfnGLhrsfQC36jYqUvufMW6jWwlTW0HlfaEpmHrJ96Er0QYFg/E\nJqqFiPLU6Nyln6K0NEr0SmojTKNPKn5NNmX+AlPXyR8wIdmF7jJNCimXUG+B\ng0dX9l2b4xD9lWf0V8cOJ0Tty5Q+uWvYfROt1BI92xbgZnaJwegwH8T7WBPp\nWasXA79EylOFuIJbnw2NqauJQ5TZwtkFy+VVqrPinO8oiubecm4GPEiEakRv\nP1FwejAAeidZgcEM0uNZAtU//AYZBj6khp459MMOfnoNSNr4dri1BFa9VdKa\nQj08PjlXqbtosjrpAvuxL/N7cpOXHfxGbOYQdObJ5I2saLbDxCGoZucROKNs\n6hvJ\r\n=EibA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"03f282ef30fa49cfdd9d16d0a38fb6b41d73e658","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-10T14:54:31.490Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.35","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.89_1628607376968_0.24836325637665846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.90-renovate-internal-patch-792448cc1a24f98633860688e29f6c57b19943f2":{"name":"@balena/jellyfish-test-harness","version":"6.0.90-renovate-internal-patch-792448cc1a24f98633860688e29f6c57b19943f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.90-renovate-internal-patch-792448cc1a24f98633860688e29f6c57b19943f2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76aeae0d9d8e9023267bbea170d530ff2870b5c9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.90-renovate-internal-patch-792448cc1a24f98633860688e29f6c57b19943f2.tgz","fileCount":24,"integrity":"sha512-nb1aNCLQfeqzMGnMjS5sibxs6uA5CKXr5kBQNwK3MF5eiKm9A9S+zMZIuKAWpDmn3flTv7VWLMlPjWwL9Dl0TQ==","signatures":[{"sig":"MEQCIDmIKWovUxWxuSVr8y+3ExLul0TWpnxJHT2+Ihzrqc5jAiBHht00fI+ADkXqcMuiDf0lFalfmGpgPqIslQuk2lZPsw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135012,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhExcvCRA9TVsSAnZWagAAz84P/17HUT6LcgjxNtd/DzVf\ngvKDiOTS83NyBExPEKiRiMwxpr0NR9oopoa4ELYLPX20UjfuuYPAxC7Ixutu\nUirnIOMnWAv89M024NdmXnIwq4JTFI1De7Err2YzzBKq9MFiSeo5LyS8OqWC\nmNnnoL6V8UoNGsztYucdm5ptml5Ku8VoXhs/EbW8H8HxxAAWr4gGbpXTaN71\nibPnm/5dO/5hnR5lF7qacTncCjfqYhecnFPMq87LEiYIUZCRHzOS7k9gwkUR\nrIAVAr3WJ0Dv7iRSf2X76k8DNwz7Gl++g3K2iAgv+KQqtzLrhUwKBcmVI6oQ\nHiuikifIbhbRBSwq4IDPQbBBOfAK0NrrncKmGiL6PASGJKMyY7yRtiGe1Hb9\nVfhs1UjIaFDgax3a5kuR3FRWNNsrCTnqwaTQ1jYML5867SyYr1iQgBpC3tU7\nsg3M80DTiew5Hb6fmtJCExbcGz296k1+aubyZm6h9JJDuzmBMhRgJG7TBOT/\nGUGsGC3PBfcCxf6PZHNs5K6dXSSkWh+tHvYaoUcenp4zJYDcZ00M78B2pGwq\nHxtXhqWreLkrV6vZ22apPwF6mOHk6Jn4vPIsxcCLnXYg3ORl4o1OR6LMAM0x\nOmIa/GBSBYvZCs5FI3ZecmzzDGrpbw/jMQIHw5jMB9jHukC4tcjWHSXLjwsH\n1i5P\r\n=iD+s\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"792448cc1a24f98633860688e29f6c57b19943f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-11T00:14:51.153Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.39","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.90-renovate-internal-patch-792448cc1a24f98633860688e29f6c57b19943f2_1628641071220_0.8480332074880599","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.90":{"name":"@balena/jellyfish-test-harness","version":"6.0.90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.90","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6fb905224bd7976424b02a3a0478e1af1b77db1c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.90.tgz","fileCount":24,"integrity":"sha512-paO7Zyw/r1l0z9YOtGfyjMCW61hF4tA245Pv68jWq/KlV4EKIFqPgpOcwt0tNtLHI4Q8DL2h7sEiBJIcUDSnJA==","signatures":[{"sig":"MEUCIQCBBRr6kSJK4reg5btQgGTQUDysNv6gbrGgNoWyQPLESQIgHAEoMIhIKyHkrNfYcTy+IGtZ9OCJCMZxB3Hq3idJ8Po=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":134947,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhExgVCRA9TVsSAnZWagAASdEP/Ak8zE0q7rWtQjLmMqQi\n/v1faO9xpZF9x7qWjgmkTgrJLuHOCnKt3n9aVt4tzx59mB/IoWhQhT+7qxnt\nomIvjDYuR9i6mf7thysfOcTxyb5QMXn3ZjBzoawM3dVYyw7kkhq/Eoy+yLqz\n451m9Z6KqraEsWceUO4ILgUcobIoRx1RBq7tkT3sVOFqX6Id8uvUQle7yh0Y\nP62JQ9YJLiQkUbqYQ13nXbuB9beyomk7s7wF5HQB7T3GgONmYQCki5Nd07hl\nl0qylW3cgGj11OWmicDqHA7ON/vLK8HNSZK+phGuFuUhURtAAHtkYXuGgRjl\nylogj3SROqHvWhZx0kkzlO8v6WkqM3Y0QnKNy59b22pz4D/zOYOKEOPv2wOa\nEkeEbltfhAIEWt7gom04qGqlKxbbKdekXVXEBlzQ1cT6U0C666ch2u7pGpZh\ntRUOC5W5Y3R+M4dDkR4ZZIuxNIBYRD9vHhp6FqfkEs+AiV6hoVhfGQFt1kU/\nO9M2tb82N9d3KqtmSabKkkkbE5DToCcSKu44DyC+rDuxSK8qIvKfATcZ719w\nF2lt1wpuPDCe3a+8GR5X1kpHin2Ygwu0+Qvoh7cfaSb5gx07W6W3xRO6u+jy\nb2NhCoOu9u+99nhM9WgGhpHBg+Oy9kBQbJhlbQ74VHIt8uNBeIGk7eDDq9Wo\nZyg2\r\n=HC9w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4b2dd79b80583b906c7bc792a433c3f53f8ba207","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-11T00:19:52.022Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.39","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^26.0.24","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.90_1628641300990_0.10886255740925144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.91-renovate-major-external-major-60591aeee983c4df283bd396a7b9c80c4df71ddd":{"name":"@balena/jellyfish-test-harness","version":"6.0.91-renovate-major-external-major-60591aeee983c4df283bd396a7b9c80c4df71ddd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.91-renovate-major-external-major-60591aeee983c4df283bd396a7b9c80c4df71ddd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f60819e049d86c10d74cc8ef9499f6d69ac06bb6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.91-renovate-major-external-major-60591aeee983c4df283bd396a7b9c80c4df71ddd.tgz","fileCount":24,"integrity":"sha512-C48KGHJxm7PNVI/xjbFQR3Njbv1d9jec3+UaZWedBqSVMd+UqWwbJ1gtTfJkObisFJD7p8Pvh6xXzrW+LxgAKQ==","signatures":[{"sig":"MEUCIDkqdfX24wnK1dlElkNiIpei0I6CIHDiilEAfRamLPC6AiEAs1nywP9n/NTmlAUiIZGnOuzleECN2py2qBqZz703Nu0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135106,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGHGZCRA9TVsSAnZWagAAEyUQAJCKUv0h8s4VEIjv/zyK\nvrqApB329YePNvypxQtjRp9GHnp5Gn/n8SJIOwN5PzKJ4bwm/X5TfbtmIWih\nxQ2UTTAzw+aNDazO2z6yZIahngotd1sKeJH6HHsFIYGG/T8DgXpADq2REkDq\nHvUUO8UpVImiJcBm2GA/8yvrTFUEZttArY1WGVWfVoxqk6BEkk7E/N3XMEdU\ns9dvd9EQu28jt/o+6TXGN4ZuxcWnO+KUr2tMbml9oMKkKohFcx6waGgqhIXm\nDA41dA5zPyUKYmWCDgIsfq2c73L4D2a+owzAEXITFWoAWbjf43w5tFOB48BM\nzD8slImt5l+wl3JGRCSLptE0Tn0zFrc2dWNuQ0HYR8mGbVTTCMIp+TR7sE2M\nVEbE3wBMT26HDT+2E86eFSUF7bjLwHBkGqbggDcZtSjKfurO3onAjlMAsQ+K\nFH4W7nY4Y0nWLd/FPaK+w1KI0OdSjtsolKwZztIXMO5P6eBupB8mjc6clvQi\nbDm14TEG3n8/9QBa/x/CKlVTWTs9WH/g6LyJglQqiiEN6onF6XA3ONrFPrmt\nvVHy53PEsBG/31xDijL9gkl0jnlhRpRiW0sbdI7zArAglNxFN1xiMql4lJNz\nS/K5su6I4Puq2bFWZAfNnDXFNW8CrruacEazn8PKhjnldhbbMTFzJ8SrWeER\ndE9m\r\n=CeEL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"60591aeee983c4df283bd396a7b9c80c4df71ddd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T01:41:44.886Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.39","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.91-renovate-major-external-major-60591aeee983c4df283bd396a7b9c80c4df71ddd_1628991897031_0.7807157476936311","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.91":{"name":"@balena/jellyfish-test-harness","version":"6.0.91","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.91","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88727a2d8e5e0bf2554dfd17717ea624c0206789","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.91.tgz","fileCount":24,"integrity":"sha512-Z3grLwhUAuWsncxD8SUUdr3qCF/BbTlVJApa/mcFdXuazHs2pIgHeuR1Gyl36r7+yILNsRTvYB+RQ86gyaqxuA==","signatures":[{"sig":"MEUCIQCeYGmuC7+PxRJ63rbqcTGsqPFSIrzUJqKahxp1yKRwYgIgMkb10iqI0lZQDGKtLowc9t8KVbswqxK2yAzyRrXARC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135035,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGHMoCRA9TVsSAnZWagAA7dEP/2N/5VzM7kGpbsmIceSm\nmrG/uFKPsiokebe1jS9uckfLv00YKBRZ6N6W3BkRVPC31O/5KeipaDJcVfi6\n9FfgQXWK75YCdxw15WIHfm+DudOZ61MyKTH88No1toq/v5Rqx8ZTa4fLMsBV\nJv1AdH82Wf72rf8hHd90AMW1ZdXEkVrZ6LXiYpL0XMrf0Hdtb72vYeHlrGIC\nsRNngzvl3vSWWVLxBpGLlvHFjdeH8yHAd6wqFwXvQgtsNn4P0u2pWVHAFFR9\nUn2+JZdp0FBvkZKcF/sB70gMIN3fveg2rJwKpAgGG3ftTSabuFeUQz5+L9uG\nnHea9mFk8nJLXoLnAdvpqnpBgnr/zDRy0Zteh5SkEEGmazGkAnCGV3v5Fe3F\nwAgVUgNJZAQqKumNd17qISBOl0hS22lmFVh1IQMlLjD0ghNRpgMX0XXcr3p3\n4hIuAfWKV9RJQNq8BlFE5LL7FGvQH4JScfQYx5f61YEN9RNt8x8xLPRiqRMD\nO6bPjXBJ4Q7AazMhxu3QfJYVy2f6MCuIeNj6SpEeCyNL2+nwDh16N9bu24Er\nNH0vfzqt7kNQXF1d0RCmaRzb4UeuA9NCqw+JU+mS8ENILjJnvGFPJt+LkXQa\nTdayDgA/QaZkroRyRzutl86DV7Y2M0lm6c+GdRe5SHvJYGKv8wCV6rmnx05o\nX+I3\r\n=Fhmf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ccb2451cd5a48941bf95d1ca575042079ab6c583","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T01:48:53.939Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.16","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.243","@balena/jellyfish-worker":"^8.0.39","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.91_1628992296121_0.292465967043694","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.92-renovate-internal-patch-94ac7b7018e61c382ff7b1055570801623440fe4":{"name":"@balena/jellyfish-test-harness","version":"6.0.92-renovate-internal-patch-94ac7b7018e61c382ff7b1055570801623440fe4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.92-renovate-internal-patch-94ac7b7018e61c382ff7b1055570801623440fe4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7268e4af8fc522e404590bab4526152079d3f0b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.92-renovate-internal-patch-94ac7b7018e61c382ff7b1055570801623440fe4.tgz","fileCount":24,"integrity":"sha512-VI9Re7ZKdNWeOcAZY/oo/ki23BKPaTVeGsaprmHeDGBHJp0JDsg/WTb/O0GePugZcxJKCQcw1AOJLsbhi4ncSw==","signatures":[{"sig":"MEQCIEx6zNN6MEncgZ88FfCov+c+9AID6WoG06NeiubrTYKgAiB6oMIeSf1fEhDoZXF/w+5Q+y4q90/7W7OCS5lomEKVHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGHRBCRA9TVsSAnZWagAAbqUQAIjq4Qs5YPsHOYLT9bpZ\nw5E9u0cX8WiETcLA6cTIm6mI4u/pQR/xX0CS7MeIO8Uu8mR4nnw8G9nNfkTB\nhv15gCTHFnTWgZV/zjylYn3dF5TlTZc+B0Mi98KrGGNw8ORazaBvaxdmIixV\n4ll0kodXXRflDHbTmAoYaasaw++9rZbyTk7ugTvROS1JvLVHy2wE8/F6Pghu\nOG8IHsXxNH5Ax6zZ6+s92dRV59D11m3M6W70hJEIoA5+CSjr9JwHR7kXSoXD\n9J4WQ2vPqxX10w/JCpsGS+w89xcMcHqesuYqky+CxkKt5NZeGCOz+RbkshP3\n4bOabvZ0Aw8EPfArVchdmPVTBcpfnGx4SRbb328RtnR+37+UFITh8zUIdgAq\nQ4ow1bwoKImBTdSSdutxb1P0BMgHQZiPbp2n3w5Muo4fqDGrgUvTx8kk3wml\nd3d9O0IbA0+aGr8WsjwRd4GPX3t2I/AhGxIUrEv9ij6dn0xn3qDvfxlVfHwO\nGXZ6eEKsMpJSdADKYkrdIRfwd0ROjFujBksBXsWYTkl0/n91fsxSMzO7qpt7\n5oi5hG5fWr00ncV84BqIO6O3DVdKdpWj6RKi8cJ/WX86Lg6YndBM1611yob1\nzsD62isN0uoJr6P9piKrltv6wd1cVgVu/QaVpyw/fBKOk/kpzKNo3gBoRwIH\n70eC\r\n=h3ZL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"94ac7b7018e61c382ff7b1055570801623440fe4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T01:53:05.591Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.246","@balena/jellyfish-worker":"^8.0.40","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.92-renovate-internal-patch-94ac7b7018e61c382ff7b1055570801623440fe4_1628992576904_0.02893620131546837","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.92-renovate-internal-patch-78c3f6537d220ab1a1f53d43f8578b79c58f5b28":{"name":"@balena/jellyfish-test-harness","version":"6.0.92-renovate-internal-patch-78c3f6537d220ab1a1f53d43f8578b79c58f5b28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.92-renovate-internal-patch-78c3f6537d220ab1a1f53d43f8578b79c58f5b28","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"82554ecaef5a9d84987aae55010810529e1289be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.92-renovate-internal-patch-78c3f6537d220ab1a1f53d43f8578b79c58f5b28.tgz","fileCount":24,"integrity":"sha512-V/eVvk6OZ1WNkispWMPqi7huNN9Z3RbOPIsZb67AkZ3+wGdwsj9R6YK2WU0tnFvaO6LOHv+OEhtm7Tf+htIx6g==","signatures":[{"sig":"MEUCIQC7jdo92YKB5YxuYMfKVSRRG8MBc445jKl6m98REeZm4wIgQ6BEGzpXw4Xvkx9OQB3v5lo0uFlqRsufQoYYUwBdq/c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135174,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGIs/CRA9TVsSAnZWagAAy0cP/0wB2PVg2ynrQoWkGuUF\nYegCS93SsHIfEhsT19LW6zamrog5aQjrxPng8Yb12vdJtdAGJpYX/YsqlPbS\nQdqL8Lo1FrdFwxwYGsJiKvSLQoK0DrjaKJE2F3Uxhlkx/5ftG5srp5oeU2mk\nPv9sdqGcvw/6LD3SSAd7uLhKIZ4cHSRq6xF0N1dYwo4AMVSFrPycgn3ohQL7\nJWWoI93OpKdxBIpKf3WshmsEvYNAuQwdH2Tm5i4h5m5Cd8WEy2nr0qdEr6Pw\nj8NRfLzcfw6Yuhkgj6yCgzF+Rr1CW2kp7LhZGSGFYUMq9RsNKGYxZvcjN4WM\nSQtkeXTy5tLrKKk3slt4iYp48aWqhRAU1/eu0nt7iu0HHKUwo/Pu4alrFjcn\nvWBauZ3/97o6DkZ7+IRLascFzGgccEl7C9ddn9n809E9YL4Ad5keKBylv2LB\n80iATy12UKr5JwIYQrPjOC95pa5eLD56MSkKN0pP0Jj24QjgSSMJ8rK8slQx\n66Py5KNJPfQf36LsBVnEMSuBt+glWyK81rN4eWelhYrcgzkguxSIgfRGWvrD\nrjgzxUC8JcdlwKUZy8+CgBB9k2IHO8iZD6hS1tfAEIzGzkgYjuC6KJdfajBK\n4Q5ZZreiXKwPosEvWnv7O2VmQbvFXJGLM4DD0kS/ngyFMo1SVCLwu5XKmn8e\nSLp6\r\n=lexR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"78c3f6537d220ab1a1f53d43f8578b79c58f5b28","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T03:31:01.159Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.248","@balena/jellyfish-worker":"^8.0.46","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.92-renovate-internal-patch-78c3f6537d220ab1a1f53d43f8578b79c58f5b28_1628998463687_0.9911233944276832","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.92":{"name":"@balena/jellyfish-test-harness","version":"6.0.92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.92","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be881eeed1333837dee0368a3c16a641a181b24f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.92.tgz","fileCount":24,"integrity":"sha512-1/MVtgtmhDUe2st5S6gLUlkiS1GyHUu7Z3fnnVAX6PzFT0D+PTlj3Lp8WI9xTGi0Ffc1Pk5TvwnOsGO0kmCtXg==","signatures":[{"sig":"MEUCIHMp19kwuRoqZxU3RyQbKk+vtsZSGNGWH+Zp8IjlAwXCAiEA8o+U66V3WjLMIf73uJhpSpVKgGhoengVAbFui6Z+PX4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135109,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGIwiCRA9TVsSAnZWagAACogQAJxU7LViUThFKsiuw28U\nH3rWO/Uo333BhF8078WXFwQZ5+EbJeAhtvlgA8E8jZMyVdhzVgsKUba9shbJ\nearQrv2udafZ0Ceo8av8Tw4RzNLJEpi8HQ+5Zz2gAR42HwCMP+b7Qe45vWLm\n8V9kYAUR94UZDqZwvUYbm1ltNNPkYiegnn/7t9CJ4+laVhghY8F29gGje7p0\nBN7VYEDwvKu23QbK3oYRpzUyxofNRxLsnxVqdnJ6e4ZaxbKL/bWU4YntDaQ9\nhgp5nTUpIu9KAlDhyvAnoTXxN7wUcBLahWbe7xP1DmQ/eucFcTj3vFm3IZnb\n7+4wOXrl0fecI7WgzQsdf0KFSKFZd6ZOfoFfWUtl7Ub/vT6N2hUZl6SKZxSk\nM8S/xcZ138FvMiMhlaTqOKspVsVGf7RKk7uO6cR1rL1XtIpoMuxE4X9eei3O\n9/NCQM8beR3Pn1x4ScWGTtqbo+9O1HOkg29XutcEniumxSX4UWDKvmVwyRgs\n34T5RR5qbbE9hWLttsSDNLykgJAbI/BLXbZ4Fos8DlDtLJ1s7ksbMRTVKRdK\nKNcnRzZwdeOOjCeJMTE2uWoqngV4xfa6mi1HNUHsub00cfI+pzCOT1jeAN8l\nq00X/b4dt4SJqPZPKeI9Z11ITVCqDsCwZoGLHuKAGVLivWw3rHGaqeA4I12m\nfduT\r\n=RyAu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72d8b34388f201b373cfb6a32f436220c74c47ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T03:36:21.138Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.248","@balena/jellyfish-worker":"^8.0.46","@balena/jellyfish-environment":"^4.3.19","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.92_1628998690190_0.6466606105445327","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.93-renovate-balena-jellyfish-environment-4-x-ecb73e92a32490097296e09d4454bf74075088c9":{"name":"@balena/jellyfish-test-harness","version":"6.0.93-renovate-balena-jellyfish-environment-4-x-ecb73e92a32490097296e09d4454bf74075088c9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.93-renovate-balena-jellyfish-environment-4-x-ecb73e92a32490097296e09d4454bf74075088c9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d5be5b4edd5444830bf83df9f190f8d42e6be02","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.93-renovate-balena-jellyfish-environment-4-x-ecb73e92a32490097296e09d4454bf74075088c9.tgz","fileCount":24,"integrity":"sha512-n/BiwiQI2EhvZchFUMer/robo9hCrRXQS55byqUCLmNRvdjQYHFNK4QAFv+o0G7MFx8vHh4Ah2mnhLgh06/0Vw==","signatures":[{"sig":"MEUCICKBQb/qPlUSgBTV9hMryrB8ZksQH4cMmW4pQaTeGKbkAiEAwMhdobAlGTWO4vARvb65JC1CKqn9YAkXoTrm+s7fLhg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGIzUCRA9TVsSAnZWagAAaY0P/A8dLNDQNGtOSdPR2LLs\nadu0mSN0Imukb1d9MozIpGhPZrTLNJdQg8IgCsIIsSw8zm21djvXxqGlbqdf\nb7uN9oZ4MV3tpBl4Arq2smR9fRwFJaPFivSQRd5Kw7OVbUc6XnHyRRNGq8lI\n75DOrqeNXDxCEtLTESw0KZHIcm1J+NtimWJdkChaeztYY++SB9lE2djh8BCS\nV8HYnQ3k5rLoQgD4NJEih/coytwKtgUqlNzwEYFQcKYZq9uv3WJdwqzOHAF2\n24MmS13BaMUql+QhkK/lYr3lGLtMsG/X0mPG6XIN+tm3yghQLwH3Z/xpRVQG\nwb/PNlpbzeUB/iJe3QCqO3LFeIMIiZOtuCwBwc4aPxLNklL09JKMD3tjwbDw\noBZWiI7uEkCItVJv024kGWJ9ipnQ6C5KG43Jha+M+ZESo0GTgENw4C+9ILq4\nPZYi1mAEiDV821ttMX9hI/zYSeFtOVcgubfR4LZk4Jvm741meQ6Wnj0hrtPq\n4kpgb4ZbC1gUFnC0leGYov9wvWsx01hXf6EieXPua/6PwGVJgRugTzTi1aiZ\n/7tzifn8oT/zmxL5qEZs+uMoOP3TaRH2mOJnbAsgFvo9EXz1qgqSxAsCSlzE\nlGbN+nfJ3EfZrp3zXgT8xR3EMIp2s4u84FVNgusGyi0nKnGfV2yUjCj9XSV1\nnDxW\r\n=AnR4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ecb73e92a32490097296e09d4454bf74075088c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T03:37:51.368Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.248","@balena/jellyfish-worker":"^8.0.46","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.93-renovate-balena-jellyfish-environment-4-x-ecb73e92a32490097296e09d4454bf74075088c9_1628998867871_0.8747210964473511","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.93":{"name":"@balena/jellyfish-test-harness","version":"6.0.93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.93","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dfb894ec2de16d86e03e98b2cb4872e822357797","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.93.tgz","fileCount":24,"integrity":"sha512-iNExTN97/bKRv34ik0ATL4z/oYd5iYbgGOVaG1WZxneiCxq334aZ0LX8cm9lrFKcYothT+Cf1YX+Iw5iLegCAA==","signatures":[{"sig":"MEYCIQC9wY5h4KmHg0jbIyd78zDJfzxyxpMzdAbUcHCmc5quEwIhAMus8hUVzNTesFu/IljxYBrrI602RsQg/3LG3OjfySAC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGI4mCRA9TVsSAnZWagAAci0P/AtwrPcCcbSdDGDk5zCw\nvZXFMJSbzFf7JaaHPm0NyqUIQguIjYF0UYMoW+F2xWtNBuPYQvChJp0xo/O+\nsgkx7MFR2Oj/aH4PC5JCxrlzTihfLzSvXLzoSe8NApafP+NixOn4t+oIz4Nf\nBd5MlYa+9UB+D26AA280oXfbGG2NRUHl8J+ugug6fTc627xdqTWrb0dXcuZ0\nZOqNfnm4GIy4C3lAf1Drt2KXWCYQeXpJTfAqZWzjUUxXsIhj8sE7HU4Hoehh\nDDV6a9t5NUzo5nHQPIDwKOHOeSktooJjp41hPmvQSXuQI64uJVevvdZ6YxBd\nxkD1ls1QHsgzPSkV07DAgIQ6rGw5YSRc+tFnmk+tupOo1asDi8Jw9ThU4cAT\nktlcmRdpnmvhShljWrdXIT9VqZsGLlDtq7eS8W46+VsMI/lFSlpbyfKVz2AX\nNA7oBsBVyieAu1sNWQa9zG1BCiGA8ZcG35crB59cRKhvnHZmaL5uFMLlkACR\nd7WlQmq95Q6jWux9OCYcUSqJbUB6QE/XcKJn2WN8KceKYsi+6pALmfT4H87S\nHs+4MkvWT9w4qtrggbb6NmGaZ05vhZOfD4/fCcQI5txohOBFvGg3Ncj+yvpK\nL/E1GpYd72QVzOjLgRr/jzlTGS0jMk9SRdEJxO0cMflT7ZA7JvHQmOgBZdDM\nX3+z\r\n=vcM1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"39f29baf81a387498f3e8b2781153f4982cf685f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-15T03:45:02.097Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.248","@balena/jellyfish-worker":"^8.0.46","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.222"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.93_1628999206018_0.827776098382855","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.94-renovate-internal-patch-5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502":{"name":"@balena/jellyfish-test-harness","version":"6.0.94-renovate-internal-patch-5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.94-renovate-internal-patch-5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c28c3d5b5a059328930c36f3cee329535f5be9e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.94-renovate-internal-patch-5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502.tgz","fileCount":24,"integrity":"sha512-U/oj6HGaeiPotr/Q46AGu4m4RIEdIM+/ugBlOwN0k4qt6L/hy+v6/BAK6hguxFIb6Ot3KbZjlW03uzEMXEsk3g==","signatures":[{"sig":"MEUCIQD7/5K3j0rYZgP0QJi8/FEfISlBcQU+chTjQVGo2pgTwgIgPB3STIZvnKgRkanor/q2gCVblf1Z7h9lRibwUj6ZKnk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135357,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGdUFCRA9TVsSAnZWagAAEpgP/RREsv+QMLFdg6SFT2Uh\nR0bnGh5Rry0I3andvTB0sU1Te3DaxDR2UF0M1DhlooM+ki8etQfPOxZtKdth\nHLxMf1CGa5GH1GA9IvW7r4A1tQh7RUyJpaKfW7/WMVQHpqWQwly+loa0Cl0N\n0iYInvL8bYVSz80XPD13MpytQs/fBAUI/BBaRo2aj/ea2ufgHT3tBqKk4B5s\nAbzRRWQetqxnmhZdpWNi6LWEsbgUwi2FEc4ULrESDEF8U845QDWg3ZwSEA/C\ngf9kdO7MqSG3V8MTMgBtnoRs+7RKKKqtH0LligxV6Zuh1m3owYP71L92DUVv\nH5WoVfbpqCFGV0USVf1SklzkK6T2RhibK1W0IWuWHX4WXTqQ4PY525p6tCqH\nXoHbDL6T4gdNyIONSIdYBc+XdMx6HS0J6iRN/Am9HHA7qNex/KphlV9pgie1\nG7r2y+GQMrZ2ZENUYAKetHub6bm1KCKCKGitGx7eXURnPHOYji/yRh1pOoyM\n0cKfK1q8WxIWJgzBtYEElcePIJzIZFmNC3HKNPh0u+GXx6jwSwysRbZuAIK7\nlbblGjjW0PSdCd8bTUhkIyzY6FTbggDaxXSB5Yalscd2xnWxb2jgcTPwUr1j\nfXBNr24zVoy2vlgmGa4XrtxPR5V6guCkh972FxEvE7t1aDDkcJ7gRadGHdth\n94Ci\r\n=I2Mn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-16T02:58:41.038Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.47","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.94-renovate-internal-patch-5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502_1629082885729_0.8558707486670636","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.94":{"name":"@balena/jellyfish-test-harness","version":"6.0.94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9377db73835fdb2091f9c3ce23f8d7a8e25282cc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.94.tgz","fileCount":24,"integrity":"sha512-Ug79Hkbl8ddSilR4dvzRSGM1C+mZPfYNhBIT/lpJZOmqkd5R+KtZ1kzers9EdvMweTzofgq9aFn7GdiHwHRe7w==","signatures":[{"sig":"MEUCIBOoqguahHn8zD3qerW+vqjwFQUSpQo4QChhpmjUmfyKAiEAoyizqBASkDgXxc5YWZ8lGEDRXmfBw13OpCSkbNYRvik=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135292,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGdXSCRA9TVsSAnZWagAA3DkP/0crNldjPgmR1xIBQ+51\n2ddUi1SS2EwrcO9GVWtTGYR/7SCKiiK1JDzC6U7PhbDVcQbjFVDldV8gXYPN\nLBgOkpS7eXGuoKh3x8+E4FNerTG9ajX+JWKzJPJ32OGaFxE4RE6eDgNADNew\nJkpWXNpeIp9RGnp+V5Mvr0M05Dq0y4FD7K3bgExckwJM0DpAJPpDCmBEmUYP\n+erc5t+rQS5eMsGDqNqw8STLHi+KDhRL46xBEVggekX7SEDAwyAwTu2pXlox\nSLqeWPGlHXUDn0xWwBtpYP1+tQJ2Mvkt+sluJy+JVNFvMUtj3ALI3sae6nFc\nF6sUTJMerbvLs6revxgH7gC34tpdjEKqu5qRLqS51nWglxtVqzRPbsGrNwh3\nZlX3RCT9CQkqlZ3W7OOsPujE2dgtsI8iO5/ovw5/EuBbDdnchG8Ht4viM5g9\nY1iXGrFnlud8wziwuzrrM0YpBAkPqhPFf5Q2DUWsf2DCmeCBcSF5dsR34D/c\n/aSwqGiOAo0uLstfI2p2D2nUxFPIDu91KI15RcW889om0bHWy2OgozGSEZdo\n9NVcBciOGIH9dSrtlm2NmKwe3d8nx9iqUgDVERLy7iY43vpIDbUW6ySJWqjt\nw21QRuTD11A7V4yoiCJ3wra98rr8PStqHJk5foXpO4KB6iADBt34Zg6u1yCn\neNQD\r\n=fH1o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a5e45823aaa2438292c7311b1fef501f1da2501c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-16T03:03:11.183Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.47","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.94_1629083089928_0.16267785467197826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.95-renovate-internal-patch-4b4bc7921ae775f179830643faa5ccfe8700b65a":{"name":"@balena/jellyfish-test-harness","version":"6.0.95-renovate-internal-patch-4b4bc7921ae775f179830643faa5ccfe8700b65a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.95-renovate-internal-patch-4b4bc7921ae775f179830643faa5ccfe8700b65a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25acdb3d33cab0105f5f8a551f8fd94740036301","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.95-renovate-internal-patch-4b4bc7921ae775f179830643faa5ccfe8700b65a.tgz","fileCount":24,"integrity":"sha512-mfM8I9fFwXqCE58pMiKjBwfQ8hyEqZpWsKSz77IN/n9bSpvCo6YIiTFOVi7TMy/CR+YSj5ET/QVxHrhWe1Pefg==","signatures":[{"sig":"MEYCIQDaJ6o8oWecsOR+jaW2q3UlBf0mN9GeGyQOUOpFBwkG9QIhALzODmYZXsOYSa2YUNapXh1DhJY2GW0Qyvm52SF52Zdy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135463,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGgvRCRA9TVsSAnZWagAA0A8P/RJcJRkQz5ruy1Mr8ugS\naYj4EOJ2F2uraPShGoTulJwhvdb52bdCIrOlsZV1BEJhwJb9MpNspCVF/6qz\nx3fnimohGxmuTdBpDCPeemzq+8MyiQcWp1DEUITyqKLkDKGeDhXPZb8YIM/8\ndMUpwrvpwhe8DhPWB0Ko92DyulJPTkzk+Dvs0l7eUxFISSg56d5x+iiwku9H\nXelq0VmO4sYnZCSjEU2+hZJzaVoAn+vyRygHORu2byNZ0yvlOf9XQun3NMvI\nPzmz1CS84OWUCWK2E1UhgLRrDhhhz2Kk1IiFRRPECntafjmcLXFZB/QP5lXn\nA4LN2lCg4X3ZC0AAPoEXQd4Eq4kfadZ75sdyUxd5I3gNuF07ziW+X5AwMLU7\n/31zEG5iHOd2mCSCaDMzq1f0gTGx1c6es+tbU/GLAlhouFMoomwPjhy4vjAS\nu7SQkgxsfzdHP6ADbAgZdW5d6wYv0yLPyVsGamSfi8Z+lCS5SVY+AEzEHiFu\ny7KweWqKGZ2DHMJkzRR4KIew1BqXDJ8m1RAaJ9v+QbnrKWgnIGVVp/lgKmab\nndt1PWYipFA2okquTTV1xaV0dRBxVaW71lHsW/7OTWnMRpoCwNp+S1j0u52b\n2F112f2l4YSopXY0haSUt89jr2djQBNMWmxHBq3zoK4OFBlHp8snzT6VqNk7\n78LZ\r\n=SwiJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4b4bc7921ae775f179830643faa5ccfe8700b65a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-16T06:52:22.061Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.48","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.95-renovate-internal-patch-4b4bc7921ae775f179830643faa5ccfe8700b65a_1629096913625_0.06464880984345123","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.95":{"name":"@balena/jellyfish-test-harness","version":"6.0.95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f9bb3e557f9ade5f67a5f175e90afb1c357d333","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.95.tgz","fileCount":24,"integrity":"sha512-UKo6xoSgJxA9D5hZNVmFSrVhq7yR+csl5V1LT8sQKqeyAYeHvu/ny61JI1whSx6mQZS8eyQyW1dHqyY7AVoZ0g==","signatures":[{"sig":"MEQCIHIMFkaY65xcX/euD1xD5RrRlr+gOKuQfqPneAIEW/KPAiAENd2lo3pvBxGwBR2cBGq4kE5J19wh/oFeyBTxESa1mg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGgyoCRA9TVsSAnZWagAA/64P/jYeprtRwWkHR1TY34XV\nqXM8JgnnJ+TFSsmW6eXvJPjoseTVdRNWcR7CyMTLWamRJ61UKDdzI0jeNQrp\n3QxFQBMMs5jqoTJDqDd5klsWty80aWnqi19EtAsV8zOklKfJ0Rhj35y1vFcg\noHor5Z7CYXB9cor1ahqhNgKZ5UqPmA2CHtmwywdxcuYQP5Gkpd66uZ3KhrLG\nRhZUKGSw4stxWCN0T1YXN9SAb4xFAyKKWrVnEsy+h2LsJ7VhPT+Wod9kYjSU\nuWEhpQpo3JXye8K3C8a0lquDlQV0+t0kw4DB6rEs+C42akfVSlbhBNhn8mW9\nn6wBPGgxOEWIgbqkBIxtZ6L3DxtRHUXpy96gd/R83l69z5Jn0swxLFmwerYi\nxAp9XhGeo0OHDO1TsPS2GB9J0fDBB9uIkHxy+vDUOF7LlowrQEAH1t7saI2R\nWIksLvMfQd5vvlMMS8n+RMcMrjlUgPUXMJIL0uRLlWJT6rn20UbgH7D2bTn+\nX3EGGTfx9EVpK9DFb377GrknwSTt7U0CVe94Oxrwe1aRD2oATAer1VASG2uz\nYaf16wyBcnuYdVs7My4erdx6kGwY4ivaHvBC929984hlSCa/3NUVKgm21oNM\nU53L7yyV41fYAImCFuWd1MjqNob/wpdXd0KeRUlATCOzOeigqUi5H5ZZVh2f\nZCAw\r\n=FUya\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d7ba447b66917ba694b59f5a8d85bcea36214af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-16T06:56:40.164Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.48","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.95_1629097128267_0.7615895966187629","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.96-renovate-internal-patch-6100e7945df3ae8d9ff878ba7855dd901efc6d38":{"name":"@balena/jellyfish-test-harness","version":"6.0.96-renovate-internal-patch-6100e7945df3ae8d9ff878ba7855dd901efc6d38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.96-renovate-internal-patch-6100e7945df3ae8d9ff878ba7855dd901efc6d38","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8a4907fd23aafe44e1f9fb93327266cebebc90b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.96-renovate-internal-patch-6100e7945df3ae8d9ff878ba7855dd901efc6d38.tgz","fileCount":24,"integrity":"sha512-mUjR330NzZ9FwEjjmduIhO6vKpz3ZBw4KRuJyoAa5jyfPyz9h9kUHosxabqWkkSCjjZGqe2XO1KC/5OYFexILA==","signatures":[{"sig":"MEUCIQDpwCZaen/rSEYOj4vYVRT27G78i2Jk2eK3hbv+fdQIrgIgDM2JFGlZYjHrML8NjmC6KZ+IIB3AfyAyKwl4ezMU8/U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135569,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGrBcCRA9TVsSAnZWagAApd4P/j/WHTBFMVz/nSF/fzyz\nHz3sNMPYXXleIfYK9+juwB92tZeFwuWSn1bXx1NMMtvpp+QDLekp8fy5sYiw\n8fXRJ9zFdRz7aG5ypSdO1F8oSq3+F40PcYCMVHfHw0bs9xALIwX2iSzLScO5\n8ER9MoTSeGYGw1akfKFOYChHKqbV7Ve8yIQsmYgwt5GYWPgImyMlon+sBnlT\nAC1cl0UE6zlU3h0NE9PYvZlaX+Fmg/Lgz6d6tsCVFwmp4DdJzIKVIvCDnIMT\nhotqrhiN1YL/58nZWiKzV4n9AbFSofhPVzTNVUwHobQEfBQ1/bw8o8NF06F5\nvOVnIhDfBfLjh16KNoNp3f2YwtacHbutpkGTEmdpUY3QdNMAHB7EcZ0siz23\nqlYgIiHv3ROjvstCN7hBOPIYo9pm/NhPNQ01O/1dD693cGmwCCKLIx/7uztG\n8LaRffawwBEcpm1hYFKNyVRZq5vYUZ0TauaQd2TNappppIIu1+7uTAu8puwe\nCopu44xP2BWw2NnYL5qJcH0WkXM2QX8woa/6zSXrnLkoe1x6kJAah6vWtaNh\ni26+Wa8+HIxBu/TjAhUgUj+oTbelHRxTuTu1HKTqmo3dPk5i0GbeMUCgsiYW\n9zpbb/HWOnLHL62dbJZ6F3TsA+Ya/f7k45vT8EevGI/mUc2QzSsmJzpbMma+\nkWGS\r\n=I0Qx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6100e7945df3ae8d9ff878ba7855dd901efc6d38","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-16T18:34:11.880Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.96-renovate-internal-patch-6100e7945df3ae8d9ff878ba7855dd901efc6d38_1629139036201_0.060455171089019766","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.96":{"name":"@balena/jellyfish-test-harness","version":"6.0.96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.96","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff87e6745aecd7cbb1c8ca7cad4794974dd7d038","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.96.tgz","fileCount":24,"integrity":"sha512-KpPJz8t/Jty88QrA687pkq4tG4qQ1Fm7f4pDvpS2lKgdd5NUR/MQG908aUF8XQCylTbCsSsYvgM+7GSQiCgHwA==","signatures":[{"sig":"MEYCIQDjptIG2ZYdVmZSR0+Ofgq4rWb11/fqoD6EKvHGfnUObQIhAI3s4lp/lEpyikavNXu3vrBhqgN4wLLyTVGh9F2PrOcf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":135504,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhGrEhCRA9TVsSAnZWagAAvxgP+weVB8nZR50cuer0C71o\nj+BTHFI4UCUoFmdBl1hZZWLWCPtzCYHwmi8+tolEOJqc3T5cZTCPKVUKX69x\n05oWTivv0xtKpCHX7jORPg0oYd6rBmhayEjeub3sIa9dh7J8vp16mp0UZh8V\nns8qxLb6UgIZytFXTijNndZAG3vHrs88GtIXPQe+uAASTJ3l8r/50DbnbB3m\nzWWjeYr2WJxwWZ7Q/sGO5ldObgx1uok7edKuIihVrJxBHCwyYw8hesvewkQh\nOYRoLr6GmqSADF7LU58v1uAom1DaHOdIh+kWYfye2npsR+eug4Z4PLaYUXBi\nHBRQbLQkcOyX7ui+Uqq7XC5HgUCIY1uoGwTsxEQKVHAGNme0XWoqJ6V3ncJx\nkBllym1uwuq3lohNRVNjFzfg+CP7Dw1ILMIvLTUZr5b5m4CXDl42qhXRCyF7\nNh98u2CZwCUEq1GBJWZOT/5xdFWmMvdxg9oKMUgmYoTUZuRBzPf3p/3l//QQ\nYXeCDMEuArh1liv3OTN0AuRxOk7JInLtopJEkPys4XMWJamTVOvH+qFQuH/+\njNlKw7+WpASfhtWeQqTUoNkF23CWg29URz/TiVFyHApfeTvKp46f4fz/SbYw\neiHtGPEmH1CFCSy16uw+pt/FEDTZbJZWuKXLZHrXf1Yw6bsA7omPmtwIHH0D\nlkJR\r\n=UcRN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6ac1cd1e98597b99e45d1dd5431a626754adc873","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-16T18:38:51.191Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.96_1629139233631_0.8575761942810958","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.0.97-pick-variable-750d17621b1f0fa8d60a50f8fcff12aaff4fea68":{"name":"@balena/jellyfish-test-harness","version":"6.0.97-pick-variable-750d17621b1f0fa8d60a50f8fcff12aaff4fea68","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.0.97-pick-variable-750d17621b1f0fa8d60a50f8fcff12aaff4fea68","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2206f3ce5ab7ee60b377e8f9b1ddcfe026f056a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.0.97-pick-variable-750d17621b1f0fa8d60a50f8fcff12aaff4fea68.tgz","fileCount":24,"integrity":"sha512-jrR+ZnAsNRKtnX4FzFi/M9gxuVl+dDI245VdZvGVcxIweBcA6zo0XQmkvA26Nz+8TUVdQh/qWIu7B8KVWiX8lA==","signatures":[{"sig":"MEUCIQCV6qFGpe1AoiUWoWqW/QaBP/uh4fUGT/uWpDHktG76xgIga+QBA9hzcWqgm9rze/9w600Wz6NuaGT290fWpntLATM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":136678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhINAJCRA9TVsSAnZWagAAG3cP/jo/9C5EdCyIqp5zgxFR\n1nKy1DA6FXf0KeMbyvzzVxsqrazJi/0C0lgZruF78RacGJYsgO2jwFT5PWAG\n+hyfYCfNm6gJbnZxYe2qE9Y0iA6Owsmr29PfNKFT9mNyG3lsaNbVKla+uzRN\ni/aU19hTXi+HYBzSdJXpYfA3gWIgfj6VibwETpfDLVBPP1gB/W1Z5K717mwP\nry9jbptKvbhBIGyT4lPnMqF5uLROwHRpO5BmuZYwgkIoHFvW51E4lNobpU+V\nNj64Yt1lg2OvUYqOsPGUkmx4rM1O8W4KkFGaN6YODhIjjSZ3MZmJY/CDomcF\noyKUxYyoFl1c7wffIJbk8fdV4yOiP3RuhsYC1gDTSyx6qJHMWkBQGI7ziEKo\ncv5dQ5Z7c3Dk9sLMrOfS6CvjSOUplpNOhU+3OWkDuJ5siuZ69X2aceID2bTN\nUraj0HzLoksK1dTKTGM2vUl3ILMDwtHkCXkdwADm02JXA9ZtGEA2HwGSsLLb\nkB/pVtU0I9Y8cDmUX9hWb9+Gtr/8n7Fujf5yubrtBGgIA1GF5siq30uF5WkF\nQAqm3xkdtD27AtYIYScuNydmS6rvWG7nlITRx2cFDrbiSCOqRu+VA80heIp2\nxtHyz6Tm8CcdjVJv5H64dpeMzenXZ117sXajNfbroEzS3QXMGmAcN5LndT68\n1Nqm\r\n=tcGT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"750d17621b1f0fa8d60a50f8fcff12aaff4fea68","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-21T10:03:11.672Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.0.97-pick-variable-750d17621b1f0fa8d60a50f8fcff12aaff4fea68_1629540361113_0.7567293136280542","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.0-pick-variable-9209f2570cae9bcfe2a5885abcc760f21d64e011":{"name":"@balena/jellyfish-test-harness","version":"6.1.0-pick-variable-9209f2570cae9bcfe2a5885abcc760f21d64e011","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.0-pick-variable-9209f2570cae9bcfe2a5885abcc760f21d64e011","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c21e3f2fd41ce4b312393d20c0814f296ceb6928","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.0-pick-variable-9209f2570cae9bcfe2a5885abcc760f21d64e011.tgz","fileCount":24,"integrity":"sha512-wXdhApTObnQDnNOqgoDyGzuDf7lgeB8qtFiLIxtjQ6LBn7V+gB7wuupItfR6y3ICXHYpt1fByPsIbvud7HmRkQ==","signatures":[{"sig":"MEYCIQCb9BKW+aZtIm842qXc7a6rNK2J235wbfeG7mg37fKRxwIhAJ2/5psl+TZ4/e3CCJDKXPVWt9l24Ok5EvhUHr6vPbec","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":136671,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIOaUCRA9TVsSAnZWagAA92IP/0SgIorYBMU5GWtl72IG\nJ8VABhFVrwns9R+OphU/Jzuud6AE87eyxFVe3Pv5MMxDXfYD/ivd1oKjpVy5\nI+idWUhEfPbkf1nXkMR/NiNcqGLwzqRJpa+t4phBbdJhLsN9DWs0OVs+NJEj\ni/ptXH35+jD1efGbGYTN7LqH4vuF5xMkJucWR8ZTwQ5ljP31AF1lUvnHkQ6c\nUtzttu8j6JSvn0QVvoBcTHft8Bu/aKoP8m7rm4a91w5oSqUsMKbfHu3OQluw\nf8RfIDm4woR1/jocAVTvtKrhXKXAYXNfd1i9gw65A88dq2F9FOzZ3f/vfMQm\nXzRjyaDWLQx7CbT62XS9WPHmXP0yP8IJc+jWDZHA+na6rDFVf282pgBYgi/g\n9y3s2QUukJFxfqMFhKfiWZpoHt1d5Rpww3MSmu/mxTkRqg9AxX6ZvP1C/TrX\nhpLDM4F/MJHHCjsf53uPunIYuXHW301qeGxa2yIzgGZL3qKzH6NRQtb+nda4\nlOXyilIHjhS7iDEm8PtO7yLlaKAhMPEiZ1bRNQl1hLfGgmKDtpqK8dKuy1sE\n+C8iBmqUpSFe2i0C2PbG5hp3xQT1QCi6EbXidXqvSSoG96d9z8M5BM1z6gwg\n5bfd7wjqAl59wCec/2ym22T5G4bzHr0W2Ic0pd94dtff85FZ1HXPTLE6EhgK\nfonn\r\n=MXvy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9209f2570cae9bcfe2a5885abcc760f21d64e011","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-21T11:39:41.091Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.0-pick-variable-9209f2570cae9bcfe2a5885abcc760f21d64e011_1629546132123_0.028611450096430513","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.0-pick-variable-f7249b224aa58e817b8fd986b08431b1ae86213d":{"name":"@balena/jellyfish-test-harness","version":"6.1.0-pick-variable-f7249b224aa58e817b8fd986b08431b1ae86213d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.0-pick-variable-f7249b224aa58e817b8fd986b08431b1ae86213d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"258d19bb9cee84bbd3a73c4dab875d20f648d074","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.0-pick-variable-f7249b224aa58e817b8fd986b08431b1ae86213d.tgz","fileCount":24,"integrity":"sha512-zXwNXxzugexHXW87fcOCbJIDanj9HCskWIoL3CUvBdIBY/HssLNWcr4hANYLuXeP4Uqk47uM2mLT/9I+BoTUxw==","signatures":[{"sig":"MEUCIQDf1ZTOYJBu8XMG2yvYJWX5xvoRP3sz9wDt54MVxQXi/AIgXptn+Wbgc5nbi9JAxY7nNncr2KIj7ZJV8PG0VhRaMYE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":136607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIP1iCRA9TVsSAnZWagAAfiAP/AtomDkeKAYr+2AI4e3V\naHXxrWBZVWTuHCLQgWd5svuipg0O5hS+w+3xgDWMvd8gvbHAJqNt7BD+y9v4\nloVRhtIAjekqIKCNVBUDui1LSE00b8u4CmeTqCHJqoljWt2rYzEiNtxOFSy0\n/FL4YOYDAGWuHzvWWWE4r5X97DIoxMXG4iJl5Pwjp9cHBS8Z1NZ9RzxMy5bF\nSIhEeORyit3X5rJZqcQw8Z6t4XWUD3pBRV5gBy074aZRU6t57GsZdQT47pH1\nYR6VGkC0ps4RWXA0YHtymSd6ws00sYFJY4pRNDkisbGLZZRZmKdC6ua9U+HV\nC3jYib2jc1S3W5Y+7xUnefwzmjuEpDuayj01avOzY2ODb1cHrNwah4OjCiuw\ng9SBfL0Zwe6/dKuD4O112hPqKv1ZFtXlQVXWoqu2CNQga4l80O503u6EJxdX\n1BBGJ1ro2EhdwTyTvLlIFzKwZNH3CxdMqzQSExvU2YChaluRNBDHfPiMclr9\npt/xGo8f14HJQbJ15VM99qnMNGAHQ+eWZqQaHTBPeksXvqryrcpgy9ZofAgl\ntAxmRgc7fM3wT8ex0mTDzZBftYHLezBtAy2vuOST2UQqrgJ8Y7MUlFBkJGdV\nG8Z3k+zCfq76dc78f0cRJbovsUV1z/4AvJdJCi8/UMd+sgIjLIE0rBF1cXbJ\nxeWU\r\n=YE9z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f7249b224aa58e817b8fd986b08431b1ae86213d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-21T13:16:31.298Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.0-pick-variable-f7249b224aa58e817b8fd986b08431b1ae86213d_1629551970257_0.5235890630596953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.0-pick-variable-c6c2e8d50f672a57b42744f7bf66967946e74c2d":{"name":"@balena/jellyfish-test-harness","version":"6.1.0-pick-variable-c6c2e8d50f672a57b42744f7bf66967946e74c2d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.0-pick-variable-c6c2e8d50f672a57b42744f7bf66967946e74c2d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5068fcf44d0441fffc0112a8e3d099ef13d58228","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.0-pick-variable-c6c2e8d50f672a57b42744f7bf66967946e74c2d.tgz","fileCount":24,"integrity":"sha512-dkzitqaHtMXttNdJ0UpXgLldGdXH74/1Fd8BY9h63HUxfyeQPlQaFjXEaHUGgMFtoD87Ekrfgor4aBgruOypBA==","signatures":[{"sig":"MEYCIQCVTkP/R0id/rztAfApcm+8mSKhR5RVcTDE0n7KkVA2uQIhAMtq2IKGpNpar8+Rj9YVfkYNdq1npcul7yqB6siWzfom","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":136650,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIQJVCRA9TVsSAnZWagAAVW8P/3vflzKaP+2a1ZU+LIui\nSAvCofJ+o1WsZItmQiAWq7jiJlo/8F1+hgZ9VTI0rBZZZpbOGd1vgcnbtAy0\n7eh72gMEpVKPfvk7J3B1oZ3FwwL/8+MTTvn20dWleBqhzlSDQDv3b7BpWhl1\nOzsA9RtOrn5Ija8l1kjH8L3yOIs3483xt4nmbnro8+F7ork+uZE4GDrqyapL\nuQSdsRYJKKFaEdTOjFVkb6eqQ5nIIqVR46f5/g2mBk8eFQac12n2qQ9W4Vvc\n/EytimZ14jx62xtXxakhWa+4Pp8xgT7OUQql7++FKKVlQtTsat6Y8lrBovMa\nZyFK86dbF8dI+OklTaqw7NAbJ45uhyJH1hvvW6FX7ys2Pm5VXrGl9EY3XLcE\nunTClFJEaKPYdOi5nPgHy1Obro7Qh44IJScx/4KD8D4HNE5pws25pOsKMMgy\ni4FQUgrKBsic3FwF4UFAXt4C/zVzMsR/+CpUHJ6Kd8a3LGKXq7U3cqEPBMMj\nQbO9/wXAkXmIBoz5PTXvWtYB4yJuztECuy7X4hrn5pwhatGoYO9MgzIGsgsy\n5LrM7w9n9gQhRMgi9FS5oDmzsNq2yTZ8wJ5eVUAgWYvpye9Ob+1bf8BRrNO7\njDZqluFY8NBPNnMjbc8eBgrK9KZbUp4GnUlz/8OTfCSzIXdjEwhHVjqo4m/+\nxnck\r\n=avs9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c6c2e8d50f672a57b42744f7bf66967946e74c2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-21T13:37:30.677Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.0-pick-variable-c6c2e8d50f672a57b42744f7bf66967946e74c2d_1629553237211_0.28417630200666455","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.0-pick-variable-01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022":{"name":"@balena/jellyfish-test-harness","version":"6.1.0-pick-variable-01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.0-pick-variable-01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"222b04683b376e8fb0d2aa2c34f8281b25c3fa19","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.0-pick-variable-01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022.tgz","fileCount":24,"integrity":"sha512-3MZXlYCkOX5aW3I/YW0KB0eRd43jEt39+OfTRWSm5z+cCSiBgUSVIcn4X63rCjOcKvuTRtco8qGX9mbjtBNIeA==","signatures":[{"sig":"MEUCIQCOt2YgCFhpXTjf0ByzITFHtOr9xOi7siYScQN4WVuwlgIgClk5fnNAkRKSDwWsP0fnX2qXW8Ng06RmVozA5GA3Rsk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":136607,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIQtXCRA9TVsSAnZWagAAfZUP/jhG1xtxrAbactuO5/Vr\nxiHuq8zohPx1X1XLqYGpf5zlHUD6veNHZ8z7IOp2qvlEanIutHXwNqoMOUWu\ngBjwJMtc98a/pqiLI3s+P7Y9IZVB+oxQ5ytM7VULfxt7Hlw92ADllCz19kiu\nN7pkBLzahjKC5f2RWw8gEZNZh70MYvuBdxOUHYO3kXTx72wAWe1hZgmK5MZD\nJnynf7qJtlgAWmz0cAp7oJ3OMtFZvNpVlvHBEuh2u1AhKsvet5Xb7qXSuyCE\nrteG1h8aWDAvIknTDZRNx+d7XE3e5JVOsySGON7ZUUuAuOSMzvsfIs0lpuBv\nwC55REvraGvGDBvTUglXECZ4uijxeELDl+kW05cLPvf+V15POX4cHJ2baCXx\nO8lQLYVRqgXsLt/sEy1EHnr/uWo/beCAMbgEHW418S9N8CkoctTzbtq3ZFD2\nMoM8dfYrbMMHoMsDAswVNsUDrzXKEG1YtnD7TDSthKhdt+u+WTjVMuywzy6C\n5ILMx2BMtRCDeb62a7tBFyDv/pP28XF1FgiuPr0saJaV7Rhc74Bd6pMJPzWW\nBJsv/awp9iCEkvdR8UjZO0BHEA4ZrVD8e4aqPAR2ezZiQ6yfaZCchjsYB6Ko\nJokduJ6oPy+aes96AWnmkKdq95jU/dB8K0HEh6U+f3B5JrpWf1Jswk0hdz/Z\nOmQM\r\n=nh++\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-21T14:16:11.384Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.0-pick-variable-01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022_1629555543259_0.055204910998537304","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.0":{"name":"@balena/jellyfish-test-harness","version":"6.1.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d4a15b3490beaf9d57352d2c66b133f2d2b1e86e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.0.tgz","fileCount":24,"integrity":"sha512-Cmnkfe719MO0knbEY6Ab2dJCsx2EoXqLneaARD6IXUQwrtcLuXIa8Cmm+OQ9uT9+q4jRuvdJp6iycyioHOfQYQ==","signatures":[{"sig":"MEYCIQDrrPOURGklOoX8bgCbZydJoQONVVFISs6D9JB/tW7rNwIhAOWgBquq85phMtyw5djgtIguzuMFLyuV8r9UuHXevV1M","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":136552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhIRk5CRA9TVsSAnZWagAApsQP/3r7n2AZLVC6jTdbn+eW\nCiNR4PMYWhl7VJyDhLK6PSQ9YMiyIHYWt+JTrO/CJ1fykG1Gock1C4hPe8oZ\nq2diK04YrnJumFAbkQ6S7z4xqXzZ8GV3m6abRpriIQ36VxhTYfOnfJz/3Lmx\nPFte+Bp9RCJMgCxxilRbqA3kvqEuCEtCOK4QIUMsc4YQBcCCd0O0nm/4sGz/\n2OhlGrw7LX0SzNNbujaxe42ufQO/A8NOuXWcIETi/H7NnGCru6mR9Q9FzDCK\n+H8u8K0YQS71qnB8GJIHVRZfcyEVhEWhiOtuPn/Iaki0Sx4r28OQKCABd3UL\n85HBiiCLlV6l7+OPBfs0naYBQwf4JyMEretzS8RTSbTGkhtpC3t6ibYtb6ME\nvb2JWMMHI+yUIE/ambvDs92A6/0T+sUeCZ9XwXYRs//at4AE0CRycdnF/EGY\ndms4omB6gv1Mtua6Ou7AJAHFRSZGk3NVI2iZiqLAKijRIBfjbpVk7SuKDVdH\ndK/0aaGKYFIYEqeN2rzcArkLVeDEnqmlx8c3CVBcwzyQ7qWWLj23zmQNNAcA\nVrVrv6/+pi82N+DqDN111Uk7DpbtSJ72DHIO4k+jaJmBMkV/YFsAvroJfQYK\nACZdt45rbO7PHBXCXcM/MnRM/ImOBdiw/7ikiFfaGK75i1fIlCRq8wmV9azh\ni5CN\r\n=nDP+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b9c2ad2275bcaa93fb98f16abd4e0373305827d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-08-21T15:16:31.418Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.0_1629559097766_0.4132523236249237","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-d27a3f6ed97c2e598433c0b8bc7de90f090e143a":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-d27a3f6ed97c2e598433c0b8bc7de90f090e143a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-d27a3f6ed97c2e598433c0b8bc7de90f090e143a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"11ea7120f07b1eb6dbc65debd5a4d0fa8d7aec72","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-d27a3f6ed97c2e598433c0b8bc7de90f090e143a.tgz","fileCount":27,"integrity":"sha512-/+RYAHknL2LeSfSiDt5nSUu4kCBbmocc7xZyi2tey6LD3S9FXutxY8itgSXAsdorWKyqFG93DZVO+DkKoLnxTw==","signatures":[{"sig":"MEYCIQDhK5IssmdIh0aku6Bj4y3jIPT/floC8l9vKp6cbCvBXwIhANF2sPqd3Bj8+DqUKs2WTlaeBssCRGl93YhTPOa26Cal","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":155627,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMcfECRA9TVsSAnZWagAAwEcP/3pFVvystfSv8LNFvQ4y\nMM2gz8sqVOpBvHHZyP+R0yEz8hLjQq1QtmZQSPPqfG/V9vbm3QxaelvrbJAY\n9I2V2t62Mw+gqN3bnOSPLut7fCxTrFfU6sawAhBRAVEyvwVj3c/7x03hl4PW\nb9Ht3Kx/cJRD6XX3SxOCRbESWYPtbg9kx9CxCkdkSbDQk1dUSxDnNKYuplYT\nHQ7KG2XEdpDyP3O2PCSN2sBv0DRnlKk9+I21G4qu7ZlYhsdNWIi9YgdmtaCa\nxOd6N6zSnD+1vTuTWpjYWctpgGrarSv6LFgDGLavfUdtJGVcBUNSNG4NvWsW\n+iXbm5JToDfJ6HdV1aZhd/2eIoq2/9wolng+yFBOyWLIWyFh7fcRdxNMTPnd\nOPUfPuv8n4hF+4I8f7DBrPKmF0T+R3TLlqAUbFn6W6ljK7Kt2KfKHJ03KOiL\n+qN88DxeuGH0Sp3dUw+InMZQsrkTwszrJJ1knvzEnMNoQWI3kVu2JLtO4S+P\nFovayECzeb6Ik6cKe5p0PC22gtg3gOoDHie6LMzdWr45hQdKF+zaC0rRYI8V\nQh0aiEroVRTDhIdPwYbrslRPglR1tRkyw8XQX8nqQEKYIT69SgjoXmjG5j24\nQDtY8MFvGtxsFCtjYWd7kVC2cJ7Pq8mQd+/IHzyNsKc48CLtsuZ2+UPOFwur\nKGzm\r\n=BDm4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d27a3f6ed97c2e598433c0b8bc7de90f090e143a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-03T06:56:11.587Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8","@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"peerDependencies":{"@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-d27a3f6ed97c2e598433c0b8bc7de90f090e143a_1630652356548_0.7608091119463227","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-336150699801721115096809498069e0a8a36876":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-336150699801721115096809498069e0a8a36876","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-336150699801721115096809498069e0a8a36876","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9a70ba9f1d73c4c2cc0173dac94a351fdbe114e5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-336150699801721115096809498069e0a8a36876.tgz","fileCount":27,"integrity":"sha512-ojObTk92EzeafTiZXp0nn5deEryEVghAgPUoUoxy/BwClu5PjKxiNw32DFgWr0nRuIyuSY4smr2fR+Kdksjskg==","signatures":[{"sig":"MEYCIQDGYecYSveMpoNdnxQ3CDyy1wz+Q5Y+RUiDLtk2N+TKMgIhAJlSGzQvnN+cR6p4sxC15mTRpRQ9v7C0rUBisMzZvVdH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":155628,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMdMyCRA9TVsSAnZWagAAu0AP/0IQxJj2V6nrIN8jNFPA\nLCOvol7CQyIdDS0treJx5f46AT8+4GivlfKsQWyMCdyHdkNbK7oGuGyhwJKk\n++Fn1uKJl+AYVYHe6hWPx9lGJewwFn4GgvBFJNLCSS5i3Fc+Gzlo7NehaOBP\nMwLSntAWFTxa+1fzQDm/c0TQk3cTHyR5jlsjapTmujhmDlMBUBjm5w3Vp/2M\nU2AZ0klCPo0aCdKJ0fBwpQ06vRAd5abtO8kiGsx1VyfnrLUJ2Ve6AgR6cQ3a\nLs7rLOAX/JjeUmDBakCNrjo22Dny/v1rXeh9nuLxXzf0DTTOJ8Ivm8JlCSMy\ntD88zky+KcJoCEyVtW28B1wHWmTf0OaJpyOVwkCFHnADE/gU9qfMXcq3mgQy\nsMoR3EZfH9Tb4+IpzTH4GcmzWfFSfmpm6EF54l96+3i3srX4V4i3c5ohr9c8\nqagtFYdy6nIoNn8T/KP0glrK4t480jQpFE2DWaA1evrj9atLM9OQvJFaM4TG\neVPQbmhgzmHmonTL/j7X5BBQmWIxqm45hBh75zhzGJ/iTYg9bAOXDWSv799v\nhyt3Qcwv4yoeA4FEkcBPXW3iBGQZofytMuEUH/w5bWd9f9CbnyTxs2MAGGa8\nKAfAFLARurQbyS5QBK5zUNdp0EU7zMmtPAhByGefRsXPB64V0ifkQu8vjYi3\nPru0\r\n=tbov\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"336150699801721115096809498069e0a8a36876","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-03T07:45:32.003Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8","@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"peerDependencies":{"@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-336150699801721115096809498069e0a8a36876_1630655282544_0.6017690083630161","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-d04ed8c9d903c02f5024ce93082bebcd44fc9bb3":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-d04ed8c9d903c02f5024ce93082bebcd44fc9bb3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-d04ed8c9d903c02f5024ce93082bebcd44fc9bb3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76bc14c176d478d5acf2d20b22ce326b4f81ea03","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-d04ed8c9d903c02f5024ce93082bebcd44fc9bb3.tgz","fileCount":27,"integrity":"sha512-9wBTupqF4WdvlEmECG47DiZiNGZfxW3sovIh++Qh1XJDSh8wXGtqn2O8g+ytBbgCSDUK7zGx4zs9J+10UyisZg==","signatures":[{"sig":"MEQCIBCuA26Qh2YI3P8naRmybMZ1pkT1iOfMhJK7IX8+zVDQAiBuiPB+m9/wtAPQ4Q0KOTL6H9tbBI5y6KM7EJFD93G0GA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":155800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMdqUCRA9TVsSAnZWagAAV1QP/380FF/6gdDING+qHRD/\nXkzHsD4KlvfCEE7lGsHoLTlyCjpUlVw/ZqS6sBdkkyqo0SK08oDhJ/6Ba0kb\naUcxXTLfZW54SIVa2crVqSpPMpavgBIwEqVt2Zje/9PrsfD9KL2F3DfFqqhY\nuTAIaezVWrjzSSXJpRMpDdOHi9iR4aiSZGHFxK9nnZk3vGIdz3/qqU0u3Jh+\nv8c+NcPaaRc+VtW78OkugQVthm7Cl4fa3AIspuaWLg9eTFIBjJH4pgXHfDec\nRfJjpFS0RlpUv4/Nanat1V6QjuBMiBuLb4f+eaV5oH+YAbW3CECx5eqTsBHr\n3TxvZfAGzt9YPgUhMUftAEUYwBcj7nsF2yhlG61S59YRtnrMTfMWxmLBBYKI\niZrtQZbp5971Vo9W23eXOwmNLZxSnWkE5u4c/t2QS/zMdjBHlqYnnrd4AoTn\nQ+Np7w6LH8dfWCkYomc8d+LFLnoAZw7NmngvaOMD12PbjUvG7OSiBq7v2hpD\nPvkoJwof7pYjyzt6Ymw+RLdR8ulhwH1v0AgNACUQUHVKL55My8BPYc6t3C4E\nkD+LH5/cK+JZPjDakdgzo7SIoj1gFSiTfttgOQXtCqdcJVVEoaGo4xW94ArS\n6P5vjA5+bmr3Kh9bzwTPArWvuUFncdeDxirxu/qvfLGA+qvwnKL+YkU4mAzL\nOXcq\r\n=AVvA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d04ed8c9d903c02f5024ce93082bebcd44fc9bb3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-03T08:16:51.475Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8","@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"peerDependencies":{"@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-d04ed8c9d903c02f5024ce93082bebcd44fc9bb3_1630657172752_0.9335196814071836","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-98a1a1a6c6d924f12bd7861e4048dd0a13008354":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-98a1a1a6c6d924f12bd7861e4048dd0a13008354","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-98a1a1a6c6d924f12bd7861e4048dd0a13008354","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b086f535dd47db4f91cb17f7017a2eb1c979758e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-98a1a1a6c6d924f12bd7861e4048dd0a13008354.tgz","fileCount":27,"integrity":"sha512-3q9DH9zKmVx+V/Z+qDtghFK6nj3wkZTnqpuVSKXJU/daEV7WdUBdl0O5s/K7IU58POxKRTc+OKqhqUMRKKrgKg==","signatures":[{"sig":"MEQCIHrfZK7puigTgU7Nbg6jV98HntCbug1fDVp5X8A5v/wEAiBFqZpna9IpRKooFZ6bVasKe3HhBxAq3VjLgQz0nPFKww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":155811,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMd3JCRA9TVsSAnZWagAAzx0P/1nI5Eejrwe3exQZZF5R\n63yQGQ7jA7nKzYqEvce7bbL25zr5kM3niq2NvZnaPU/CT3G391OPMatSE9xA\nKBIzqrXl44LBmeWEW4dwudMagtJwXv6IKR5F7rTL/dhoHlAVi82hmSGhQ0MW\nKlolAAM47wJ3efAxx8ksfK9Gqk5c7VyvJ6wwuCL3c/4VHQvCHcYt18XFzm8W\nOxKovAFCY3xM2qChpbjmrMmYlWf8NefdcR50eG4KX0t2AKawMA43xLmpAUtP\nd0ljwuQHFIj78AteaIq75MMZi0ojzoSPb3L2O+gWSL/A8IoAe9NcxhCO21Q6\n5L1stfK4aTqgXxO5WJ4LbRgMFk2wHbA49rfQ9xkql15DOXXWKFm+U7c0OYaQ\n9FPSKFIVqm59An9S0bNjPVYAM+GTmdshmacBE33daa0RrH9U51bSQM2QWDOk\nbmxnZni1XOlV/V6F3YQ1wIcUmQUkIjYVvrUKisnFuB9Cwpag4DsOCWzKmiBB\n8ser0t6Ot/eFPm0sRO+jw2XfQsbsYXe8a20xWkL/O0BzKicIeSoFPhMPgKwZ\nhPNkFHTk2wjVOiEx0KtrYoiUREHPvDl7ryS7SqCJPBBgSNuL+dRI8Y/oBSGo\nBGotBwm7qj8qKuQYLJFmtAkMNHJ/qlOtLjD6RLeDZhVaXExl+HYBIUl4ZYWO\ntMgX\r\n=gGib\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"98a1a1a6c6d924f12bd7861e4048dd0a13008354","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-03T08:29:51.357Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8","@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"peerDependencies":{"@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-98a1a1a6c6d924f12bd7861e4048dd0a13008354_1630657993259_0.19083045915214747","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.1-drop-link2-on-reset-730475f8158b991fe9ed46f4cbb23d724496bba3":{"name":"@balena/jellyfish-test-harness","version":"6.1.1-drop-link2-on-reset-730475f8158b991fe9ed46f4cbb23d724496bba3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.1-drop-link2-on-reset-730475f8158b991fe9ed46f4cbb23d724496bba3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dfb4255bf0ed3300a710284732f6ef5f6ca322a3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.1-drop-link2-on-reset-730475f8158b991fe9ed46f4cbb23d724496bba3.tgz","fileCount":24,"integrity":"sha512-gvjB8NB0kgE9kEjKJtS5SZjvhQUygg++iM96jsAZ3Or4fYa1Eb5fQ4ZWJ3Bi48SnnP+tXM62lXwHyNDUTBrsBQ==","signatures":[{"sig":"MEYCIQD86pP7oecWMBRhYT6fHem5W3FJbQqaGM3hrG6MEVWy5AIhAK1EIqcRz+7fG1GWUdGy5KBPWl24WGc2vVErB+4voEpY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137382,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMri4CRA9TVsSAnZWagAAFsQP/jzQ4YdwSdAxJHhicVMD\noOTRs5tXirlURELfumY3DRlw4/qNGqCINHwb4aiMsicN0P/gXKaTpqQgoCn4\nBHiNFdQ4GcNLL/gmBADwe6PhRuPJ1Bkj8ajAi6pIdf9A76hQW7bAZv+ygUbW\nlvlHo1nS5tFYU89vLgIZN4LaVkTdgqGtp5R/gtOOnqIDmU6feG9QbTa58wG2\nQq2shD8aRYqrWlXXJU7UVYEbZ9kfAyhxs4IEQ3LqVMg/zXDmx706foE6cWc1\nc6o2Db4ZUYmQhlI6KU4kpVN4uRl8gkgElfVowLFWYRXxY56Y6W8FZn4tsV/a\nScIJf/1JaqyXvlMoV3rwEbcWCot636MQE5N4rQGCl9+EYXg61XEjFEQfH4fg\nLqpEkTHLngZJfhm1aAjqiOMnGqGg3EKz15JuoODmvLeF3jc5l36HGJ84xyZC\nIrk7qa/PhhiIti7FStEnDqpLYA2m2llmH6eCOxOX6sM4+cKHQIqiicZZO6xw\nN4tu/IDg2a3vk4muFP/O0irGkB9qou9aw/8ooFyO7iu2fsdG9MMOhPS2CbW1\n21cdZvyiAp6eP4OJwBgYhi/RBOX8//vCuX0MDKJmnVLDs6HzlnziNRdwnvcI\nFMkBcqZVk6j6U3enY5A7I44bEzaMRx/Zs17o5G4f49x/QgbUI6YpJddyH2sk\nGTD6\r\n=vT0G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"730475f8158b991fe9ed46f4cbb23d724496bba3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:03:47.632Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.1-drop-link2-on-reset-730475f8158b991fe9ed46f4cbb23d724496bba3_1630714040472_0.6460909365497087","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.1":{"name":"@balena/jellyfish-test-harness","version":"6.1.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b6ab1b6c5dbee2c3575e1bc92b9a9335699179fe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.1.tgz","fileCount":24,"integrity":"sha512-WJH8GgWX8DIowBqaH45HM84WKo+3G9l1S2n9L1XJiSJND/v05e9NDm7xCi//cokYP67ajM140usvkRvhL2E+Gw==","signatures":[{"sig":"MEYCIQD9jqdojG/t+jv5NsQC0QTzfFeZJMMGGqqxkJGqbQmhagIhAO0T6xRORpch3d+OaqzmbASPJWIND2oK7PnOntgmClrs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137321,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMrmbCRA9TVsSAnZWagAAncwP/3sWeEW2qGoiMlU86LzT\nVwRGlLg9gDWGYwPe0Nuo7g1VyiESozqDtvbk36TmlShjrYfiTmKML+2XcwGJ\npRyyAthdCx7EhbqCsl/fGmORrnD84+S6FVng03S1KhoHK4bbdYynJpzx8gvB\nk9hTWWBQgZ4fmmqIsvUXD/KVY2/ohjZwWYuQ6tjZ+QadvHMDEX9Tgsw8WoAS\n40OvorwkO+1wnA2BLM7TwD1TFPBxN61Abz2plMuGY7BYeAT6ykl0+ZgdOKnl\nLFDHzCRY1oyaHSsr589LmYRL84bSygrLo2x6o+76tNTf8FnmG6FgXOCJn/EM\nUD4tDU4rGDeo3RCj0FSV2Tz0sGWg67aHapRPwbKyGK1oZCEpiU0y0e+CWMOa\nMLreBwzweO+T+uAo8Qb8uBMdPV1SZAH8yCxDcXDR8zGWb4WlX6wDsNCBl6Tw\nYttAK2X/vhqWftvHph7URwSKXJhH3IfSyCK6j+lZDBNDSgV5dCc+2LhL/Ceu\nxdg1/+Aj+MAKvX6tNc9Q4WG8eBQ8C7d/Ub23A52M/hQdp8fWM+KlaQSYrx6y\nr1jH4gDHprY+uIhLnbe4SXA1rTuExgrzukGLL/RHgMpl97Z0TOdNk12xaiKW\nXIZ+HwNWgqkMaxwQec+6fpdDIvB1H/SeDxN8HP46jPy7PfvCJ17x/Djww4K2\nk6fj\r\n=QUTA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"535d9f0515c679ed2a265811fb02a1a1216efba4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:08:37.943Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.1_1630714267339_0.4201063284769575","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.2-renovate-external-non-major-76c7e6122baea6cd3a39f0060eefd3a581c37d73":{"name":"@balena/jellyfish-test-harness","version":"6.1.2-renovate-external-non-major-76c7e6122baea6cd3a39f0060eefd3a581c37d73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.2-renovate-external-non-major-76c7e6122baea6cd3a39f0060eefd3a581c37d73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"130b0c68a71b5bf608e9b48e88bea2ba95bced81","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.2-renovate-external-non-major-76c7e6122baea6cd3a39f0060eefd3a581c37d73.tgz","fileCount":24,"integrity":"sha512-y7I7pc5KyGlN7C0fqBjaINBGmlZsn4keYOSuFH/o6Thfaxata0tNFyz2yyofIkB/0TSV5MlgufwA5xW9s3dYUQ==","signatures":[{"sig":"MEUCIQDEXi0VmVEHu6l084SkP13a3ljiTv/TelLICrWm8ro0xAIgP75tKNgjwURbvLE2yg76esLNZhRRZWz+dKXk3bf3sS8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137468,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMrsXCRA9TVsSAnZWagAACnwQAJEhAW9WhXWkZI2ztmnb\nMAqWxeTOkykCKXfqkoLQ3OvkYLR9j3H7XL9HeHikJL+Jco5xn8tEfgp6pu9R\nIBToM/aZBkK7Q676625ajL7rcxyj15kIgvIupd7HZJKbX6XOAeoZPDTF2Ril\nrifLDNhjOtkP4lkjEO77yuLQqgwTuA4q4XVTvcLAPX3FOSh78Jp4Q6+11yLj\nGpTcs7X0ltyKXLbICjUGNCdgjxb7tPJYQiC/vgqCODyOJYUBSlhERuYJN9md\nTBFhlfGcDov89X2hFPwu2IexnBDo8k1fLJbGmK7KzhseRMSRMao358yKLC3o\nzREE8qVD7/lqXCjL77CQcsW6DFClRy4RMWbhyXduQxZdO4aTzrAFJXmuL6YJ\nz2uaKI1X5JV2DaPEu1UR/IUlaazNRvnki9oS6zvw0+VItP/dIm00Apr8opTe\nZKThXSq/QgPbsPxkwL/J23kZERV7e5CsqyfZMnvFaWN0yYKQM0cHE+6H9QYS\npM38Ehebb5hBu8sPfNfYGUqnsNpIsKEa2CTPXmnT7HOEAhatRaBzcpBDSWUf\nl3sMs9HZdgKXI7+Gvkql3B9G4ElMiZhSrB+gd53YswKSjSSpDpVD8ngPqelg\nd6m3HPkZa2u/sr18TjFZd/WQSRcdZ+kI38fFlfbC1QqAQ1mLmcYZsaOKLoLc\n1lBH\r\n=TQey\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"76c7e6122baea6cd3a39f0060eefd3a581c37d73","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:14:12.508Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.2-renovate-external-non-major-76c7e6122baea6cd3a39f0060eefd3a581c37d73_1630714647279_0.4805361021080121","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.2-renovate-balena-jellyfish-environment-5-x-cd6602bea70a8ae8a25ea2913f0562edec5be302":{"name":"@balena/jellyfish-test-harness","version":"6.1.2-renovate-balena-jellyfish-environment-5-x-cd6602bea70a8ae8a25ea2913f0562edec5be302","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.2-renovate-balena-jellyfish-environment-5-x-cd6602bea70a8ae8a25ea2913f0562edec5be302","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f2c642de2049384b9f5a1a22e8fbe29ba161e1e5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.2-renovate-balena-jellyfish-environment-5-x-cd6602bea70a8ae8a25ea2913f0562edec5be302.tgz","fileCount":24,"integrity":"sha512-T4cQoZiGDi/uSL9WCuawp8W8A2/dZLONDat3UW9FJYN1wrnNMvV3aVfDdPKTVc1qEheidMfeo4LfL3cVZaNIZg==","signatures":[{"sig":"MEUCIEVIhtECMEKhnFLhnFLa2fd+D23GdjDoqbEfsOpKXbIHAiEA9Iq0B8Plc3SqPcv1ybCj55qQ+aVJUbafdu9kfWjD338=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137509,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMrtFCRA9TVsSAnZWagAAHe8P/38Y8v3AScTzunvNjGF8\nCyULE/zGpoqJz0qgXgvSofK5B8V9DElzpl3BeNjw7oQTOZJ33gVDQOqB70nI\nlshRBW3ZqF/EutkjxKp7XHOtUbXoEpDqQACp5Uk0J3jvoXxXnsq5d4GxjmcO\n9l1NJahC6efh3Ga9gG+trjceGh63FABBhAPggiVKNcAHCm/7FnmzYJSajqv3\ndxlN4RGXRySpc9urzuqNr/BoHDqtRWuznpEeCFE+GBTw/l8UN8fqQqNJFJAZ\njx2TDzrYvxTomcNhlveWsKjzvYvkub7hgyzE26aKB8kehUQSDdp7r76HvMrS\nsNfLaRh/CRW0fTaqFvptg3fNpwL2JyTcluXhLtWWxObMXI6ilOSLtNYB06Xv\nRje2IyUC0zjyMzccHL9rIJSt3BZFUgMBl3BkWlZeUVjqbbeVes35K/5jOsC3\nq+sQ96bJbfaCukL/mNG1ZxMtF3sBKjEp/wRyXKuGBu4cqQEbbmGD/FcV1w8M\nLoz/Q3qRi7OZ9y/CVi734XT47v4Zc2Dbutu293CmiEmOIrIS9xOHXW9Vdrx0\n6W5pwWre7s2u2Gk2sVa5gxfsVuZdvJ8cKhPnBenVNR9pY6WEuZpdnuqxgAOP\n41tpRD1MFqRQ76caiSF6zOXsuAPASpHE91U2IXPJJ18PxqiGzd2bpkIsYCmc\njw0B\r\n=83UJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cd6602bea70a8ae8a25ea2913f0562edec5be302","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:15:21.540Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.2-renovate-balena-jellyfish-environment-5-x-cd6602bea70a8ae8a25ea2913f0562edec5be302_1630714692978_0.0728797009124249","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.2-renovate-balena-jellyfish-worker-9-x-330a02eb4542cabd8ada8729111109aed88f9912":{"name":"@balena/jellyfish-test-harness","version":"6.1.2-renovate-balena-jellyfish-worker-9-x-330a02eb4542cabd8ada8729111109aed88f9912","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.2-renovate-balena-jellyfish-worker-9-x-330a02eb4542cabd8ada8729111109aed88f9912","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7de1a61efacf6d61966cb2214f915ca820754224","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.2-renovate-balena-jellyfish-worker-9-x-330a02eb4542cabd8ada8729111109aed88f9912.tgz","fileCount":24,"integrity":"sha512-RRtmOOrl1aciZuB6j+yv9YD6JtBc9TrciUCG2FJBoU7wJeH0ft1p9kD1zEIYbTmuVymXNeEpKy1rfQmC92TG8A==","signatures":[{"sig":"MEUCIBVFUvV1OW2PQqH6wOF6MZ+YdBUyqu3Ii0iZRyH6bVgbAiEAnq6xsSca9VgTHRgCqTiWfin8Iy4ABiPvmqtHrvtKBSs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMrtpCRA9TVsSAnZWagAA+FAP/0KLHQWum+zH0/CCkWHJ\njKkg/lYPXj86oQ5g/CF5bpDP4jWB+oDrLJ5pVGgecB45CkXk0r5FPVUrbLfr\nKuNsBtUoW2qH3DVmW6HHOkoDgUYfbHrzPbiEgNicZGUCCU2fgrnP4Mt/L2wX\nATl6dCfBrdE9YJCPHw/oGHAj3EhyNogL3EXKDTnf44Zyu4bPCGA+1UVs3NSG\nyVkzzvkOaqnharg5o07ZO0IK0Vv+NcHKQMgUti3qop6oV50t3EqAv8Hu2v/v\nS0cRZKckc/lwALBtTzAWGqZqcvVvAEQ5lM8/QHFkTcd1ilFlzxTCUvr/IeVe\nGsxudH3LR+wSV0BylOBfdAN1APhuThFu6MvWYtXQxMJ1Ip8aLsvZ9VWRDWmx\n4/b+GPPZVSxscKiuuBtYOQ4PN3llt4uCJ+LofiSOV3jqzM3fG/9vyqUkE/It\ne2BP+PgxdPT6aLOnSPrSiUgTDRRdJ34Np7NM+4FdLljvBgnfd0Iqpfx95PoU\nKabyh9XKvK0HoPUyqhI/HhUCtqHsI0QWB9Mjz1raDRq/HEGC04RO9OSpD1LO\nKQy4iQ8ZuN3gdjtEOd/oXta6o0mEQ/atOYVlHY732k58SpcwFFk5UdZGFKEL\n562v1wT+PuSLm58RdYnjsIas4yRScoPHkC3T6EvUOoQ/x9Dv4sdYKRF7cgrP\nISS6\r\n=inkU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"330a02eb4542cabd8ada8729111109aed88f9912","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:16:12.183Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^9.2.3","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.0.6","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.4","typedoc":"^0.21.5","depcheck":"^1.4.2","typescript":"^4.3.5","@types/jest":"^27.0.1","@types/node":"^14.17.9","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.5.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.2-renovate-balena-jellyfish-worker-9-x-330a02eb4542cabd8ada8729111109aed88f9912_1630714728944_0.60821729246745","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.2":{"name":"@balena/jellyfish-test-harness","version":"6.1.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4105fa8eedb744d6e59f43283d69f96239db6a92","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.2.tgz","fileCount":24,"integrity":"sha512-Cg6umPnv6eNJ55ziVCGyvfuy+hMM2ZPPBsyEk/dKuXz6t8C7Se6URjB0igUvPj/CRemKlm9Gvm0r1WtNrRmbOg==","signatures":[{"sig":"MEUCIHeiSBuH5lPSIPweFBeX4ZkwK4XdQhCxxqTEG4CfgBs8AiEA6NDuyerFwcl58WgrjMUaf5XRKxpF3eX3Zn+SKhwBAd0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137399,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMrvpCRA9TVsSAnZWagAAypwP/3zxpgk5NGC6qxn2ydau\nkZdbo7myScH7SBFgw/QU6/u2NiV542FtkyDfgM8RCSfCcKPfQsKLw+WS2rLS\n/RKj+r/7JUBT+vdtM17L07JPlWfUD2qw7SmizW7ijzFbPAZ2X5fzU2isi1C3\nE87sMs90aR5xlieLbIRrH9CIU9aNUIdsp+3BcX9T4hqQsO7h0V5YNxCa1PWX\neCyZKitpyMDjbgw4zM3wv9OJF+kEg4TjoNuoFeFT3nGxogQJLWKYjdAoj0v9\nwOhEUuxZTM5MPk0HOmEN5374auQEMY8Gg91ovmiGbwNfjmyguzYu/GWp3ehH\nyMN/C1rZz9opgeVh7F7wlSbQwpbZGbdT5cXJ8gwZQwnR/HRWcg7T+DtV/j3Y\nB4MYC0A5NrzkIobCZXIMtbY4xJvJkRV8jsj7bRtCrtisYQOFjLdrMdfyk2mh\nfwaZ/JVXjGG8xLw5YC6LKChXzG2PBgxbfgWV0OMtB+5FyKYOCwzg0NKW78tx\n5rj/4YKwq1WLwHrmPWsAS4XXd4BL0htVxa3wCN2f9xc6yHcSyLDVpselBRtL\nvizRo+MXcN4sceHNUVEEyUoZGIA/vtDvuZ+elFORuKGFEshUd117+r1m39pU\nPPjJTpTSynszEL3QtFpcf87mNfCouBPSs/u4mbNOW5iq1TyOfCsm3JV0WAAg\nQu9N\r\n=qsjl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"068a3ce41fdc8c365cc740388b4aa81eff50776b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:19:11.655Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.2_1630714857024_0.02644465617227998","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3-renovate-internal-patch-dbd6787df7164c20e1d6f6c69c6f284b2849e514":{"name":"@balena/jellyfish-test-harness","version":"6.1.3-renovate-internal-patch-dbd6787df7164c20e1d6f6c69c6f284b2849e514","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3-renovate-internal-patch-dbd6787df7164c20e1d6f6c69c6f284b2849e514","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fff625b37c4d2763defdf495a1edc8763a67e7c8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3-renovate-internal-patch-dbd6787df7164c20e1d6f6c69c6f284b2849e514.tgz","fileCount":24,"integrity":"sha512-ALGDBF32E9pAAo0fuEO4rQjeRWRTRfUKSC3Cx8QUnSoTXYFandmSpDIdEzNda+wbpXY/wJAkShlwrOlfoJqqZQ==","signatures":[{"sig":"MEUCIC7FSIE8n7EXMJY9e9AvrfkYI/FmfHL7Wwz3Ocd29+zQAiEAvJL0e0HrqM8e62CHNIWrddPARl169lDrLNO1H7lyqrI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMry6CRA9TVsSAnZWagAA1iQQAKCZzPxHmUXPpveRByTf\nau1ccXk2Irzb3DtBcgMqOdZRnMmERv8odfL/ccxCBb++nBjpKtZecOm7mLnL\np/DvphYPz1Z5X6m2oqGs4UibGcJFc5OiASFIGianfqh2b/byGxXD7Frk5GGp\nxZwybmdKZZs4xSO7LvXap6B2IKfUPzoCzLMpxiV0ea2qvDZNnUGRWipSvtP3\nUcGsFdR0j4VE+eMuRfbhKqtGg268IO/rez8FPcTkENRoxa5C0bDRlYgAbp/8\nrtTf9nKCiXdI75w1psO+ehuZ8X8RQQiktA1xKf5KxxcmslmVlmeAd3LutxIm\nAbnwaJLrQLU8/nCfVKP7r+YLPagzf0G8GZm7sKpMXEOGhb7BSIj9uj+ik+fJ\nTUzA9V2BsV8U9qduCNJm560TibR3GY8mbh4LamwdZpcyGuyvPGry4VC7QPxn\n+toHCPbbrIyHCMQAQBNIUK+u8J0E1BOpEw4j0VeSLE2lCyWNQoHJmHdONN6/\n5x/p7TmeJu7j5XoU0aGf51g8frMOG2FoevHIyps6iyceAShK4ZYm4MSbOuKJ\n9QuzCVS3ByQOqmLn1D3y5gmQPtHtpAIkwFqAHpIvnZcH1zJzphvE0skRo2/l\nO9hmdO2NCGpz61yrUZQYJ/SaQb0mbQQmegBrDkdLSy8y8y4aHk70aMHMhlqe\nH9jF\r\n=ehsv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dbd6787df7164c20e1d6f6c69c6f284b2849e514","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:21:22.047Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.15","@balena/jellyfish-queue":"^1.0.258","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.234"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.9","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3-renovate-internal-patch-dbd6787df7164c20e1d6f6c69c6f284b2849e514_1630715066644_0.29688955075701573","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3-renovate-balena-jellyfish-core-5-x-1c47ede92fe8785e9785ad7e50015c4d99e7df34":{"name":"@balena/jellyfish-test-harness","version":"6.1.3-renovate-balena-jellyfish-core-5-x-1c47ede92fe8785e9785ad7e50015c4d99e7df34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3-renovate-balena-jellyfish-core-5-x-1c47ede92fe8785e9785ad7e50015c4d99e7df34","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d88493e4e5099a13bbcaa88f131e40ae2bab41a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3-renovate-balena-jellyfish-core-5-x-1c47ede92fe8785e9785ad7e50015c4d99e7df34.tgz","fileCount":24,"integrity":"sha512-0RYXxyvCqhJA2Njej7iHw5YdkSHFVJp4RAGkDUhIb06eYHLESr3rmJTtBRyOwwbhwz21MERyt11R0yEimYMUHA==","signatures":[{"sig":"MEYCIQCGhCyr5PYczKOPttfStqRoZs/ZNVP4KoHBkGVRvL+uKAIhAIxn6ChKMVA4n/2pcr+HS7HJJVD/0ZuyN1Pqem9HgqF2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMr0MCRA9TVsSAnZWagAA33IP/1SMUKAMNVhiDgPu1t/u\nIR/EyISCXP/6MDbINuUNZpfaZqCkk4k2mW2WG4u5hzqFGOkcQXaz1p+NicbU\nDOgNplF3YzDDSfNw/109TtDA39oXINdUkJAALCM9CgksFI2Z3kbUdYZZuqYM\nNUjdIv1lJDuLldqrfA1dFxXfp1l4jpvcfv89eALAjhySu4e7V12dF71cW565\n8urt617fAC2193LEH49YBYB1Ey275TmhWXHS75r+x+FzeJKCQ9WGOG7sumrz\nZfppV5EtLMDugzrLlwVt0R+jV5+trGicLVBqPLLzKGmq0vf+itMYE044gNfF\nBG05P5w7Dhf9CsabBE6ET2StxmdIXRrJgsVM9JFjcWRmk7Nt6OvpGp60ztD4\nVEnhYNARKELPFAq7HciOPzW7e1iAJlKk4ov0LQ0OOlX2JsVOCu468WMk5aC+\n/8OxJH29WYtDHIC463/wp3LQilWq1YzOzAVPaG22woPe2g8yPyvJKTPHXWfp\nmZg7gdfC7SQNUc9o3t5rYlIlG4OORdPf+cmZn19wtLVXaHhfHu7ihin0Z0kS\nmiek9xgs0M2Z2qE/tvGHImqyDs7BUKfLqFbfoF2IkYaBAVnXcUkDfDr3FZeM\n8ALf43vRDhafKzGbEG46Qfg0hfeFQSU2e8yqE1AmICLeg9CGMpVlBeu2jjLR\n16Sy\r\n=yoz5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1c47ede92fe8785e9785ad7e50015c4d99e7df34","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:23:11.934Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3-renovate-balena-jellyfish-core-5-x-1c47ede92fe8785e9785ad7e50015c4d99e7df34_1630715148319_0.1807453803396044","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3-renovate-balena-jellyfish-environment-5-x-b731b53181e73d77f95a412097e07a88c273d274":{"name":"@balena/jellyfish-test-harness","version":"6.1.3-renovate-balena-jellyfish-environment-5-x-b731b53181e73d77f95a412097e07a88c273d274","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3-renovate-balena-jellyfish-environment-5-x-b731b53181e73d77f95a412097e07a88c273d274","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e7a6d9e253680dd0e0ee4ebafa3abaaabb02d6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3-renovate-balena-jellyfish-environment-5-x-b731b53181e73d77f95a412097e07a88c273d274.tgz","fileCount":24,"integrity":"sha512-NR+KAHV4BGOxpKwIO9cT8/wT+52SChF5+TNmPS8nSzAfPxgJBqVWEf0M3oHEXiq1HoSgWyp5EJCzxQCdG59zUQ==","signatures":[{"sig":"MEUCIQCuBWQSjVxoxJAlArndrMOoyY7uoCRBhVaVJOz3eo0vIwIgOLIIcWAwrxKPeZisFG8ejVZO29kTWY9vhufyBIuW7DY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137587,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMr0dCRA9TVsSAnZWagAA9U8P/1D+R7yY7Dz4ULe99PSI\nCDspdTr7qo4YMQCt49H/2owKGmosPje1Vxo9Pb70/Xmf3QWW7NijLoDgiwlG\nOjYKvbxwZoU3rh0PAw1QyB31rNVZpneKMgitmEIvvQO43IQMo2WK932kfNj+\n5bA3my29mC/Ryj5HvYlY6dvSzuFlQXZ8ZtpzLZSonf8l4876n/cDO1meuPrm\nLJ+R/ebLOKOaUtWq9Nw8Zajr59ouVBBcpeaJwUQl5Wm9NjYVPgjh3A/S4J5w\nC9Z2uGruYx4CeqvdkcA9wXceZykV8/Iz5TRhIM7iR1Cy1RmwSHBSDMmNyjUy\nRaLd82qsazWk5h85aaOKw7QSXx1wbD+1TNWp5cqltfQs4MzGuaQZRxRQ//aX\nA61rL09mHq2u8lmMDTVBnkhdB+Tzg7XJcjL64CbtYukTEBQezl3XjvGxiQOj\ngYrxRkJ3jw91RFbr5EuAEveCBkXLvRRnQ8MNg8RQNwJVrLsWltMxrlsth2KH\nuxCXLmgIs8eeKFzy7Kncd04l16noetLyTvyehTOc6Pf2sSK/M/9Lds8T7jOT\nxCUotO2ItpN+QGy3FPyicJKZljgGayQ26CHLZLfh2sNwXcjeli6CtxD8fslG\nXCg5ycU3Ivd3Mt11uUeOgjkW1jWqtar57LoNsKWtij0EuX2PkG7szfPCpBNZ\n7px0\r\n=JbJ+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b731b53181e73d77f95a412097e07a88c273d274","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:22:52.325Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3-renovate-balena-jellyfish-environment-5-x-b731b53181e73d77f95a412097e07a88c273d274_1630715165164_0.6882068681110272","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3-renovate-balena-jellyfish-types-1-x-704cca1ab130072d952905856c1abcdd6fd18586":{"name":"@balena/jellyfish-test-harness","version":"6.1.3-renovate-balena-jellyfish-types-1-x-704cca1ab130072d952905856c1abcdd6fd18586","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3-renovate-balena-jellyfish-types-1-x-704cca1ab130072d952905856c1abcdd6fd18586","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"844d2a2faf8be0cbcb812578c0b90d2c202aed6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3-renovate-balena-jellyfish-types-1-x-704cca1ab130072d952905856c1abcdd6fd18586.tgz","fileCount":24,"integrity":"sha512-cbJwAHcTPtGn3OvBYTcqDJR4FgN78XwAjxcrGH3TccHzLb/YIVXx0S0O37T6Jc0dt1pWw4CVXCtjaXmB0e5vSg==","signatures":[{"sig":"MEYCIQCOLsc0wrMXPx0PuMojqJ3vtRJhH+554smVXhgAsU3H4QIhALQmB+5fbdZFzE6aylxRW6C7undD6WPFEnwM+l+M2Z/M","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137575,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMr2lCRA9TVsSAnZWagAAuWkP/2UoqKDMAFjbDWIu+a6w\nuoYEpwNTNhIBm72O3Sd9tt1iQ2gD1Btg8FKu0CXHXdcJGpysx4OXR951yMom\nzvOUkFkXhbywPr4vDE3/fdLTlguvA0OTiiAScquMsw+8EY9frNRrHj6T/M7t\niAdhShSW5gYO00uEMLAgddeQ3VdXC0WQiydS/OnstJD425d9UDC1S7n1sIXq\nfqTK4hOv8JATN3Fa7aDeugplv0NFjVGqvhyRGOP2wid5HHgw4slzYbofJhcX\nvFiubWaQQJCzK8sIGErTKu/X8tzZVCETVPMzrOzJmMwK3nD1xYqPcs7rAOG1\ngaiH19xdYZdzwlJjcmCTa2JcqPykYOM1iI0SDfdBCvjNdU5X+lovEP8OCw7B\n6/+JhyRIlA1QmTwZJOU32JBt5W71uDtGmXvJihUtm2IqWXlGAiXrFu5LvE3b\nKqup28n8ACw12GGi7u1UhPZwPgDp04sTS2zvEwvcJAX9lnU/7SjPViJvCqYN\n0AJXcxKYZ7x4dImscUNTYl/Pyy7iuRMpXp3D61Q8+rjEF9HmnVm1gMKfBId9\ncOF1v7j21Y76MUa0YmjM4c6wd16X5xBo5QqMioXkG6ezLJ4UDU5PG8is3bZQ\nI6uXmVSqk8gPBioJjL1ze7ZqOqs1TFT9uZ8/Opn9+DkTuJRGeF7wGDc2vK36\ncUOR\r\n=Tb7v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"704cca1ab130072d952905856c1abcdd6fd18586","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:25:19.356Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3-renovate-balena-jellyfish-types-1-x-704cca1ab130072d952905856c1abcdd6fd18586_1630715301148_0.01485183264336376","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3-renovate-balena-jellyfish-worker-9-x-5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e":{"name":"@balena/jellyfish-test-harness","version":"6.1.3-renovate-balena-jellyfish-worker-9-x-5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3-renovate-balena-jellyfish-worker-9-x-5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01e578c728c1a9e4efa6bfae7f45e9b83a3b26bb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3-renovate-balena-jellyfish-worker-9-x-5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e.tgz","fileCount":24,"integrity":"sha512-S15KxTOLQoQizVJ4p7Rqboro7VTn/T/YaBj4QZ5gMNEpcGo+I/pg+rlARGrtHWmNBnwPghHeP0K+Nt3qEgfUFQ==","signatures":[{"sig":"MEYCIQC2VJlU99OMW++NrV0wDjXQqN2mbcK3m2Ika0du0AvxEQIhANHD4zUswpQ5PQT/KmhFh/Z780eCzM2Zo94SBbbLkuoR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMr37CRA9TVsSAnZWagAALVoQAI+YB8sDAsOx0q19FlNj\ngiCaB6HMPMnVtzxMgmCc1PaZxCRCbkMsSPW3MNoVQr324GqScW/n0+KOXn0L\nCEImiKcAT1PdgHVJzEvRGNtBuElq13U/HhjLxwvmB03ELnI4BU2vA3O/wvCw\nRA+FMvqhizR126Sl1RU/Q/wIPGnh336e8/S9l+c9cJ4sHDr4DDoqvVWtNICB\nzB7Xi7RDFw2L4rfhX+s+w7NnKhHH4RUtK9wCdzM1tdzPPSIoG5n7MmOKitWp\nuWiFM0xw63ekUjjx+e3TdH+vFIHxJ8mtbIakrlLwuG/WYTatkWQqZEIVShjM\nEyi8t6ofAv4cmBuKWrjnC5P+cbBtfnld4r81Q2odlZl8ClxxQRmz1Hhq7vmL\nhNMMrbq7vOFffg6WVWch2moPNVpzlw3kBpAY4nZfNxl1rhaYz6gnweYfBnxr\n3vGOJ4beHOddEnYD5hd4OB5LRShVFkxwUenbKffHqSsFr0Ue8NkOPIsdOIU3\npRP7XdueZZtxr+Kybyn9+wR7etwj83Dpt8LwcEmcYExGTlHyCuaBIR7Ar8k2\nzzIGGwYgaYLtyAk6Xyf25+Wmi1m3OIytr5Kv4jClfp5u0zrN0MVEWJir8AYR\nyWVk7AYYuZDsa0uqp/yD1UqYt7B37qn41mHnVz1KlhCyliEyLnt9ux519Ltg\nFSid\r\n=Jx6k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:26:11.858Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^9.2.3","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^0.9.4","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3-renovate-balena-jellyfish-worker-9-x-5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e_1630715387274_0.722620417817118","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3":{"name":"@balena/jellyfish-test-harness","version":"6.1.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da9c9ca6646cd3beb71adceaa8aec3653b21f458","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3.tgz","fileCount":24,"integrity":"sha512-M/XrYjgTR3QLYXurYGTuAmjtnWtwhGxMmLC1VQDg7E8LsSaSccQ70j7LviYfYGiWmCO14PbeyyJweBHUrhclFQ==","signatures":[{"sig":"MEUCICuY0fbryDW3kkH15pJO892K1TTUx+qcIqdzHXmuG+w8AiEA2/JHqL8EqpKhqOkmOC5dAt5/a/Gb757y7wBWh/J4qr0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMr7ACRA9TVsSAnZWagAAcOgP/RvGCVQxHWU+yld2g5oB\n/kOPlUcnNtwl57Wv8B8lSxzXf2N1N9NKrhWrqjM2F2zpddiNVgPfEgpWyDVN\n20XWmJRk2s0ZU12mrt4nTAwYulA+jw5NoEshlMRRqes9QLfYNzBJWDgjmdHl\nISGI4jvceHXDHuye/Dw4GRRgHhmhPoZ4zZCZqt3AaVaSdIGpaHnh1PJceKK5\n7YmoBMHVaB5WaKVOwu2hpWlO/goBBlcjhyH8rF5hzh3pHDlokGDMdJM0ae+s\nq+rKcYp8uGllCVF2LjwIernUYqnec8iqlXQQGmpglvAX2WcBh7tQoA17HarK\ngosgRqoJmP4gkmfHjPP/QqS+OzkkzY/0xiSkwOw4CwwUFJfufE3YN8NwhcHD\n4JytFwWCcB8xl68qiGE5WlY5BbQkseg+7T3UNfk//aeEZF86hJIJDP2PqseY\n9luB9p4qcQ+H/PtYmL9FxOKCC0GElmB08IZN5L69Qcwyc7KKWq9fO2IXj+qe\nyvRHyZM1XXSpdruWv/KnSutoS5Pmcpnd8pSehL1RlU6cJN1IQaMq65gTHukw\n4KiCJWJn0D6tmXeISR8DDqgWs9+fEGIIUY3qADGHE3tlhx6KhaB6Z3zO0Wvo\nRvZ/mCtkU2bd2cQyFktSnZLE4ld07gJGnqzmin2DtitUA88xkmx4hM/pvuQR\nAoPg\r\n=WUMv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ebd315115ca0ff9ad53042ddfb1ceae622446913","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:30:09.398Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3_1630715584647_0.7015844716094828","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.3-renovate-internal-patch-bedc0aae5aa3a2964aed149589283ccf357a319b":{"name":"@balena/jellyfish-test-harness","version":"6.1.3-renovate-internal-patch-bedc0aae5aa3a2964aed149589283ccf357a319b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.3-renovate-internal-patch-bedc0aae5aa3a2964aed149589283ccf357a319b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30ddfb61c6725f5c7756c17e8c2203e7ad3a5816","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.3-renovate-internal-patch-bedc0aae5aa3a2964aed149589283ccf357a319b.tgz","fileCount":24,"integrity":"sha512-pN86IRj12lmIgkvFeUN3o/p9V+nLhowuQpuW9W88m1M8m5tnIuIpIVrK+41+tbVMpr9yQiIzj54Ob9Qa6+jcsw==","signatures":[{"sig":"MEUCIQCMlY+6byKySItG1C3r0/hQxv8ls04Ml8bsgUvmvGdShQIgYGL7mdIEG+VSzDqc3578T9K2iigYwE08412/rdf0W+E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137610,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMr7VCRA9TVsSAnZWagAA/yEP/iLTLolNNx+FvXZ2T3ob\n5uWdF/5lUrmdUngFNMjBCiibcIxTPMPO7I86vgDwwSpvOeQ2AM2XPuk9BzvA\nVHuE6jq01Bk/lLwoh/k7icS/H9U7RrkqfFbQwPlwfgo6Pl7DKGQdxUSL5Wrf\nLArbzD0OVAynuqf5zSLnGj5mX/Pbon4Fj4Vlv0oxmdZVNW6/EAUEXoStE5sl\nNelxrbbARyNET7zxoMmxYCjPYdkJTvSsQwBWwQ2p/p9nxRM7//eoPe5ENotF\n/wgZOgyLZ6QEGYfcb/qunblHd8w24WRlfe/L6ZEj6TG5QZ3Pu7PP87B3313h\nfhDAw/9nBA+ex8SGDU7Ww8g3iDXrSNy8lfBFK/nzd1FYcMmTEguSE4tbhdXQ\nlQVXwlz7MybU/79e4r3F26l0wtgwVwHaYWNUYdhdARar/y8VLyF7NhGsu9kE\nHNy6YLlJCNJZkjAfDH2Czl1nu6RN/+VZ2k4kKpSNm9Hx7xIF4Q0Y3P4II1QS\n+Bx7KmugRiODSOeDXcwOtqYxX5K3mFBWYaujNmaOsHA7jJxc/AtVCUezFjlM\nh7l2MX9X/a1x83/6N/d6PqzPxqyzPMR3zrRJrtzxRXcLoZU97dqKcV4b0yp4\nqYGse0Zc6TRF+wYMSJ6eEva4Rglw/6jkYJRfYBjoUx6101+4FisBC7aEG8c2\nRJG4\r\n=LCE9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bedc0aae5aa3a2964aed149589283ccf357a319b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:29:52.373Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.15","@balena/jellyfish-queue":"^1.0.258","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.3-renovate-internal-patch-bedc0aae5aa3a2964aed149589283ccf357a319b_1630715605221_0.21084657929702155","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.4-renovate-internal-patch-361b01d2c078224aa2371a17d2d9a9398b5cf6b9":{"name":"@balena/jellyfish-test-harness","version":"6.1.4-renovate-internal-patch-361b01d2c078224aa2371a17d2d9a9398b5cf6b9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.4-renovate-internal-patch-361b01d2c078224aa2371a17d2d9a9398b5cf6b9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8eb4dee3cdd673dfc3aff3e625b4a2fc5d987d45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.4-renovate-internal-patch-361b01d2c078224aa2371a17d2d9a9398b5cf6b9.tgz","fileCount":24,"integrity":"sha512-+0EBE+e/xtxZbcqkUe7u3GqX57V8RRqVF2GNyUAggFw3ymfT7y/QdUaLzdul0LITTLy1AFDL6Nq7ZLkIQm9NJw==","signatures":[{"sig":"MEUCIQCWcFVRU7lir9n8zbvLoYKG5SJZJCqsUMjxk8U2A//b0AIgAIWT3ylIqH2kMHBDqBmJXu9LEtYVhq7Dl7RCNBmd4aA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137637,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMsBTCRA9TVsSAnZWagAAYLQP/iIg0NdYcDCwkz549Ja8\n8bBYo54JllK7cGiLlrqVfihwzAaLSeUKHRws+eefY6Fw46BCPWUNYV9WOyzz\n0Nv1JB0bZA5aFCd2r6ghVKif1NzfkRcMqi/cXVL/AQFg/+KrWExxiNIx4Na1\nPNLsMWCzGsYD6wlX2rZGhtGoFjsto4d40kmVmSelvsKZHQ0QEbs7hZ58xjyH\nyErOnroPtghSiQZVAEyPI7nnhnleMQ8Rgho7rIlmIKX4iprGTby6t50eIHqB\niZTEMe7xQiEZNha2U4uSJCtX2Osiyb5eCkDwZmahZxXLcnScKMk3scYFmk5X\nE4j8P/NsvOMVGJ36WGHHk0bUPoLfk0LkBv6wetT0a/HBM7bHBwx+/dwjOgPb\nCiOUbVVGPQEhPmzPVoTCzzWMHWbk6iL6CB1FOUACF1jtHSzbktmajVOL43wq\nXKHFlJc5PPpIOTOWUUEcnpQvOvqA9Nt1QI9S7fnjXDZJawo+8RbIcwXz7m1o\n2WkQye2x4yKEIFpVN13TiEUzRmoX3PU83DMio/PScsLi5E2DiyPmsOok7UX6\nNPFtx5sBgfII0l2C7BVGVnMreIpxxn77RB8UC6vS1lL4ZfWKp71g0B0ZoeIh\ncI/Bo3bkKlMjrOEF3zFPV6PyBAmqMuKVdrEmsHXh4bt8HZ+Y4QUu09RJ3hrM\nyoCA\r\n=D2We\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"361b01d2c078224aa2371a17d2d9a9398b5cf6b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:36:03.339Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.15","@balena/jellyfish-queue":"^1.0.258","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.4-renovate-internal-patch-361b01d2c078224aa2371a17d2d9a9398b5cf6b9_1630715987739_0.19145225793117504","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.4-renovate-balena-jellyfish-core-5-x-c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb":{"name":"@balena/jellyfish-test-harness","version":"6.1.4-renovate-balena-jellyfish-core-5-x-c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.4-renovate-balena-jellyfish-core-5-x-c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c8f12e8c873a2b5d659613d3afa987a5f882622","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.4-renovate-balena-jellyfish-core-5-x-c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb.tgz","fileCount":24,"integrity":"sha512-keFc37B1DXNEB+x1ks6yoKvzCuvdtblm4O1ZFnCJL70Z39mOGnd0AVeCxpWpiMlFY2Biix9ZiiG17tAqGim/fw==","signatures":[{"sig":"MEUCIQC8fx893PF2mAcqtn3Rt1lPwfOahopGNNzeB4YVVFHb6gIgMthaPm7kIi0gSxb+yzL/ZM+3WGBd2NJps8fCgcc6qO8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137675,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMsBdCRA9TVsSAnZWagAAYh8P/A8UUO8hnFW+DG+fBAeD\n0C5fzUkFrzPVbQPbqrRsNaODlmeHq5vWtWBXCCzqcJXCs0ASzFPChn/b2jvK\n9NZKAb9upZTzMVw7C8j9ZQXt1GbaP+J4K4mbwANWzI/y1kDv6tnKJxBj0E9o\nzQSSbaZpX5nbziOS51WJMDhdBEoEpLXO8lWjr5wqu8grgS9AZva6dL8VVEB5\nQWhi3DSL+j4UrXTPrgzM6YdOKEx9OVAyo3fu24mIptYnApVx3mLEslmuVkOD\n2q6W12f9KTobHVOQls6qpxqQOJELag0RwJm8fkyjGGW6oQmjQwAITC826Qrt\noB9GjusE662wfiL3dR8A59y8Lxd8POEErZca33eNZTrd9RoXurNL+ig2ecY6\n6nxOs6LUHAVisSXvx21wEVSfsb8OBlX7EXRN0r97YFk5jOky1QyYN4uUqrSg\nMISgfHZS3pZ6weDIAgNm7TfcguJf0RLf+j6hH4QUbpnUppFP4fCsVJFCnxJO\nEbcCJHB8MjHuzvmvpUI/JoCjk39NlMd06MBQtWMGqDX2BY0HQtSqUN5tH5gv\n3wxVLbLaNrm168uaUw6QhUD633cPms4zyL5V0fY9PJMZZANMQYuTwgKsISGa\nWLWpDgwqsnlu2qfpAS2xa9fNEbnCAXLovTMTo52LpD2pFbq5X+LiPDka+DLx\n7UBE\r\n=TKSK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:36:22.158Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^8.0.49","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.4-renovate-balena-jellyfish-core-5-x-c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb_1630715997124_0.6912521103182252","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.4-renovate-balena-jellyfish-worker-9-x-72db0931eeb34613d52bf3d268647bfb76ad5b66":{"name":"@balena/jellyfish-test-harness","version":"6.1.4-renovate-balena-jellyfish-worker-9-x-72db0931eeb34613d52bf3d268647bfb76ad5b66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.4-renovate-balena-jellyfish-worker-9-x-72db0931eeb34613d52bf3d268647bfb76ad5b66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bae452bcbb45e4f7f479d6de8b820792ee6bfc68","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.4-renovate-balena-jellyfish-worker-9-x-72db0931eeb34613d52bf3d268647bfb76ad5b66.tgz","fileCount":24,"integrity":"sha512-2qr6y3D2dYBDuvSWyDZatKNG7SJgI9s4KWWiQ/YpWR9U8VLlVO+Bkc+2bfngkQRP0l71hYIpqLE4zRVQ09PCPA==","signatures":[{"sig":"MEUCIQDZzhwkJaypoiQ8DGyfj4CIfPpZyMKGn45x7s32wOMmfQIgZiTY2opUzUq86ucRyY5nZuwPwOi+VayFRaTZA6wCffU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137675,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMsBwCRA9TVsSAnZWagAAgPYP/RJx+ilcuzUlk6gARVrg\nUkN6yp3kewCBdK+NBpxIAT5ERtWrD5JNg/nk2G531Sm9HiNG/aInxvlXDJ8E\nZLQgT+R7I9Mi63aIGGGcgLYXpXT5gUF6lcS/S5MHNPnIZ5zChexwxibj3qhy\nQI+BpQtdjI/5lxwPV8zZXjRgZUCN/enlbqjNfIdcrt2hix4Kt+l+0Dv4CluI\nwxlHtAsWvdkiCJ0egTNcIaZoI3x4sYgdv2gfGapsW/ssUMabfG/Mx7Od4hIN\n2wRDIOZOEuaQ9WN5ZorYuQ4WwXkSmE1pr/W0Wvhls0HpSUF05TNZcdFZ+nSQ\nb305o7ygPHC8ba3S0J+vK3uujHh8W/wm5sNJKByBFvagL7sP6r3d3/08Tbt+\nsYk03yKiR6YBkE9/8aQKK9cj8ace8Vymo7ApT0GTR4ByBOGNEVBAWUeKh8zg\nCjww3B3PJIr8tszYOuqPCom4NjCscFW+C6c1PBgZ/sOnsJG8Lg6ew2IUjsmU\ncvi96/X/2Pev5HnG4qSaBcZT71xRRW0hWNgdVqWwlhH76lU0Dwspk3vi3day\nKwlJ/to/DDigUytaOkrMHjq2Yvo4O45TQlWQWy57AWwTMm1zcuYyC3UH+Xbd\nqOdrI8Aa0lTnKBDUiPgExGylk/f6SF6EizTitzdNzgDNthMqZFqiT+uoH/sz\nYxrv\r\n=cujL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72db0931eeb34613d52bf3d268647bfb76ad5b66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:37:08.496Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.3","@balena/jellyfish-queue":"^1.0.251","@balena/jellyfish-worker":"^9.2.3","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.223"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.4-renovate-balena-jellyfish-worker-9-x-72db0931eeb34613d52bf3d268647bfb76ad5b66_1630716016186_0.010637282865007869","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.4":{"name":"@balena/jellyfish-test-harness","version":"6.1.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f78421e88c98ed075b977e63e00ef6bf9fce11d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.4.tgz","fileCount":24,"integrity":"sha512-enn0hlKz7AsAYrsz9fQtu020HmSevhUIB0CerWvR05kNPbtQSbY9Z+eyIVMZ9Cbeski+PKhODSiE66bSaitT0w==","signatures":[{"sig":"MEYCIQCSXGqngOWsIUSDCnpu8LmLx2/gcXrWSf1NZ6tiOsNsRgIhALHqeboHDgEn+vUdLGaufKALefjm2Z+545nBDa2vMtKj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137572,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMsF+CRA9TVsSAnZWagAAlNcP/iMaE9hEI+HMNWYpjlws\nO64aCgXazwuBgM2eGW4Q9hYXtUqVMP7oPbEU+EWb1OYmBr7s2Sqe9divOYOp\nmbDP7ahQu1mk2ialuPCnb57DU9oXDUAiHqic6y5UWo7hhNDT/+OhGBAjXHYA\nfRgyMNhtJ6NwH8t/yr4ci2xk2yEQ3OEAVqslhbgHI61mVBeomcHexZAZrdqJ\nQ8Jd1sBQV6uhe33LcbEQdZg4J4OPaSfb6Bz645F/OjHs/NSncUVFXVl0cjfp\ntJcSeRoy9RT7OD7Ky2o17fhzKYm69/b+mXHbeP7oJypnuaHKIF6mLRpBiqEC\nfgqdelDSpcLvy3yBAysn3FzEPfspj7lydL4xlqFgRddSfabKIvYUweybrLMc\nzNtpcUjvjQ3sgCkRfoXWqVHIML+zqS+ay98rUN+fAQKeDCpSa+sUkQPeNxiJ\nM2oxgpAxbqdpwElhnyMscd9EO4Bk5TQc8TEgGq39GuI/07aBA2MrH7I+mL1e\n0ujSEtlkD40Pu2c2G/e+dSZkATVpcmrHhwIlw/uIri6SNJzRXlWWubcaj6gx\n9ylVIdYet0VAfUV+yCVEwVFzemnZ6XLjb3v9Drm/PZ7UdWHf7lk8VFABm/jv\nqcSB9ENskY+lRs+JMTVIVTwrGbyaC9RqKXYYEcZx9CCCeoEpwrZpVSBH5W1g\nb3+Z\r\n=/urW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"01d0bfdd8e742d1c175f8630bcaeaf5ce8785bb2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:42:52.187Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.15","@balena/jellyfish-queue":"^1.0.258","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.4_1630716286361_0.30966712017408127","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.5-renovate-internal-patch-5d48217db2cd2d90669295d5893a0fdc4645fdc8":{"name":"@balena/jellyfish-test-harness","version":"6.1.5-renovate-internal-patch-5d48217db2cd2d90669295d5893a0fdc4645fdc8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.5-renovate-internal-patch-5d48217db2cd2d90669295d5893a0fdc4645fdc8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c80b17eb15fad3827422ed13aa9631df58219443","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.5-renovate-internal-patch-5d48217db2cd2d90669295d5893a0fdc4645fdc8.tgz","fileCount":24,"integrity":"sha512-aWqP3hmS659K8WPvhMoNADDpbHdt52Yv6EQ/zOLGa6q7HTI/N/rfA6qMntbshAerqwe0WCxhbeAol4Sozd4dOQ==","signatures":[{"sig":"MEUCIQDDo6O1S29uilRjhmujTPJ0WZH8ve5Tfwro7qYDAHiR+QIgcFv+bz8zmfG2C3yT20EvpYZ0JCr2YuTZQQP7RNeI2dk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137742,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMsMiCRA9TVsSAnZWagAASIUQAIAKKuxv8Ts3u2S9WHmA\nODfcKoPdKWMg2AoNXTjZ4R6tl5+hF/BqSEENB8+UaAnUzoz8BOQbpRFrUCaY\neGmncH+Ld4BWRmOZ49DVvZypiD3ltRMA6xgfvSn7srYPpzYS8vyw6Ls5FBVy\nelHPjHlTCd5Duxw6n3dU9aCBR7ViyAsBB9KHd/RPiOMcVvwEwGyzacqLxg4x\nMxn+Ae5gE1NXvFMEOtuzqT1HCmq0hqXtYIWTckIuwiCuSWpgdK7OQk0htMt0\nRcVAf7D4FNJvZfbJJRcjDGk2YLaU6VxBS0K0q+wtqg0aIAkhp7KRHT2f+kJU\n3zzIZNf/3CvjG8TCyY+aBW2XP7BCKXXbM7O/QpQ2l9Ap4Zf/nyBdHDrxe+Cv\nGOhb6tta/4vit0oaK0xog9/UFqTH9lf0UqC6jwveJ700ANhjnlFTrsPneBNX\npRC3zjd6Uafh8nLm43dTHA6BJlyS9LqfwV00nLVebyRS/YhUq4KGuNpNnr8x\nTdaEp7x7ii7ILEIn6Dj3FYdY3Eoq1VktuBv1XrU+PEdNa4gPfE90tjSffHcl\nnFe3slqJr+XS4zKpRyMXZpC8DNYifkUH4HW65DiV+jUu3qwkoFUqP8v0N+Bs\n0nQH9PQFeiVN1RSuDmtIW3jMurEStBWPsBMDsSRcNUdkMqc80uvw2w3ZuU2J\nyRZC\r\n=I9l+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5d48217db2cd2d90669295d5893a0fdc4645fdc8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:48:52.219Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.15","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.5-renovate-internal-patch-5d48217db2cd2d90669295d5893a0fdc4645fdc8_1630716706400_0.2524785480969256","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.5-renovate-balena-jellyfish-worker-9-x-b6f949810f5ed267323384731ecf8a324c42eb0b":{"name":"@balena/jellyfish-test-harness","version":"6.1.5-renovate-balena-jellyfish-worker-9-x-b6f949810f5ed267323384731ecf8a324c42eb0b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.5-renovate-balena-jellyfish-worker-9-x-b6f949810f5ed267323384731ecf8a324c42eb0b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f9657b7572be06b81ce84a986b9fe6b6e2c6ec3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.5-renovate-balena-jellyfish-worker-9-x-b6f949810f5ed267323384731ecf8a324c42eb0b.tgz","fileCount":24,"integrity":"sha512-Auj1/CKzebdSOBQGxLHrFW6rzodCM8ADconPg83oti4PefXfcq9w38KOwKoAH49nYmQuTtyD/bSxpOLKAaSsKg==","signatures":[{"sig":"MEUCIQDVX5ynR9XIDuuSa+xGzFjKivomJSk0uFaRWahAgZg4XgIgYosluWi/t24mpdMNb/MpXLJJxEfvjqvqe3jivPAdnAs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMsROCRA9TVsSAnZWagAAdBUP/11xur92MfOVMmupud/t\nX4z39h+KX8KFz0ASsXdZWK8Vbaeuq8QFFP3q5wXyujg9lWhE5QXCZJxlR8G8\nyMVGbSb/6CF2oNZM26/B7tgP+4CsNu34R23IkeIFrCr5EbMlvYitaYv8sq+C\n9Jx8axOLeFws8BhLqN2i+rItQlasTybWHhSGDobOXYn2c0jGQBryLx2q5xJs\n8R8ce5yLhdOFzKW6G/MCwbiIwCG3uDw01k05gP1xKQLcYob2uP46E8YrFN3D\nkQQZEPCMMQX+01gJN1dwvB5rKYE87N0zwk4WZmfFKHtxmq6YM8EXoFhvXKan\n/jW4nkqwte1KFYcHBachLSTfLt1nXQKQebsYYcBHL1kabCD5AYAq3YChd1G/\niyKSsPGWa8H8LYBhA0aumtxEmZrNhu9ZJGSzxFXyoVfC2ZNX7+adEVf6nEYm\nq6s0+34J/z35dROzjg1PQVJQySMD/UcKeSOGDYjnbIspIMai27xLZBCF7Hno\ncDoUzc5MpFa5orBLYZ3H96695aYpV3208Sm2tjfWSGE25OW1rikU8mw/+OfR\nyusiQQYo/WzMztREmr2RLvIYWSeGAdFMCZYAONazhnFzityjxHEEnmYtAe4X\nCZSbj6p8Mx29gm0LbVgOuVtjs6J3DIWxG6ehDiGn0TEIyC6VQ1lnqZPviaS3\nyUA8\r\n=MQBh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b6f949810f5ed267323384731ecf8a324c42eb0b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T00:53:12.121Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.15","@balena/jellyfish-queue":"^1.0.258","@balena/jellyfish-worker":"^9.2.4","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.5-renovate-balena-jellyfish-worker-9-x-b6f949810f5ed267323384731ecf8a324c42eb0b_1630717006110_0.831615546208921","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.5-renovate-internal-patch-de049406c455a4578a307f00a30b6b220f2f9088":{"name":"@balena/jellyfish-test-harness","version":"6.1.5-renovate-internal-patch-de049406c455a4578a307f00a30b6b220f2f9088","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.5-renovate-internal-patch-de049406c455a4578a307f00a30b6b220f2f9088","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"35c3f1c4a0badf85e353669d40aa9131a10e6f64","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.5-renovate-internal-patch-de049406c455a4578a307f00a30b6b220f2f9088.tgz","fileCount":24,"integrity":"sha512-iFqDb0u/7T2dAhzIglSAQSfjCcsY5nkAX+E7Gt6jtxcTw+nLqXnsUIwlMrHQip8RmhseAk081PiYZi3N54K+tw==","signatures":[{"sig":"MEUCIQDaAvsTfg/f71uoy0JdfWHPUBEKOocHR5WMMledkejyLQIgCYStVIH+ugo4DMZqrYPsOzL8Qsfk9n2GuKDeGvs1vrs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtCCCRA9TVsSAnZWagAA6f0P/0bibAcDt3DSA8pxsBEJ\nobWL6KV6a1f5pEN+ABUnAEIPzbLg+YjHJMVMBYp72yEterFu7dsp3jGsVSCK\nOp7qpHSPlRA2kMVXSl8ZyyWmN6UGel3kwqPvypD0QKYR9X4WqJjqiQw7sdmr\nlMVXGMp2D9y4wdZduYe6/Ga2FHcuUrDf2dlCjXdIPrd+SSyk7ri0gueqh1W7\n21Xnci14011xLMEajc6Z3R5c2Ja70eDHChWwZnayTHnhvYKq0EntJ4dLt+3+\nHXYI2s12lIeYqQdSKGwSLxtGvPAQOaCV2Tn9ro0FcZzltQWhaXzwX0r1JIDN\nei8ollbquF1X1la3EZZR5Z8Kczuv6wEECcPk9hkaNrBnUGkUlYOgHYhZaEIS\nTbghCfbaTjJ2VWd7t7WJKM/eHBTmbqhz/zVK3/H15mDFc447iaB54cerM9t3\nDikXtMNDD0xnUHRfMkZUKrYRMJUnMgoNfGD9mpJ1Pkc6FRae6NjSPBNDM6DE\nPt/pBVZ1L0DIKq9xvw+pF2HMY5/efA/lJpOJqCjQoxW79c6ESflOc9jAbCDp\nX5ZPb5dYYsg7YDj2i6S082Sb2vjD8rslkrDry/3cqbl/runtbKLZpFxbMe5+\n2egCHf6iiBxfBcdTkRJat3jCMuUGH23bRIUKc1gdID2Mx/bvXZiQW68Ya38r\n69wD\r\n=VWUz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de049406c455a4578a307f00a30b6b220f2f9088","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T01:45:43.793Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.5-renovate-internal-patch-de049406c455a4578a307f00a30b6b220f2f9088_1630720130541_0.4085549147189602","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.5":{"name":"@balena/jellyfish-test-harness","version":"6.1.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ae00f20221ab3b082b0b0ca7523a46568c13ded3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.5.tgz","fileCount":24,"integrity":"sha512-Ddf+GuhBPIVDDyUWL56KcjRDhnpLNy4INqBcXXe5gJpgBBbtXR1hfQkugUbmpgWMgNW9uiSZNt/DomCFMeihvQ==","signatures":[{"sig":"MEUCICkC24iugClVooMNcg2LC3RBoKTnL06S4kIM9eWoHYa9AiEA3TpK7JtfL9I5pbsfd9gZqQdoT340oMY7dxF1NwLoSSE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137645,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtFcCRA9TVsSAnZWagAAfMQP/2pioxyOhTL97hraHNFZ\ngQ+Cxt+01E+vq0YQ3FgM2kw72LB+4JITdyjom0y3DSwdU3Ii9lAyUERpmbFd\nQLDpghcs3Knx76ePJIg4cgC0qpLFt74svRJixR7mLy96GIMkBykuW6F+6j52\nHWg+fx6vfyOjXTyrvneGhoWUI063MSfNkcQhPLQIxxOtQQn+6reLMIiUcOHu\noF9D9nBEtFSrxFxda+h8LbvbA0uFzoZWLWsajPvQ9HcsiQBoWsVFERFWwQ0a\nFRS9N0krDAIvyA15f1FO7pYT1ylg8JJfF0I9MWIu8fAzIH8eR1miWtHWdAMF\nreubKGwa3aUkNeUA2MAxhjld8RHUu+DAvgjgIqfU0S1QRvDsWhXha0QxnDUH\nOEmMK6U1nVfmGs8jI1QLXUZhoEK/n6iMvz/2JQUrfPro8u75rJEzLZWD/Zb/\nN3C1tLj3sEgvQlyOmQuyagoJkUoCXZrK6qtK+5R1RjgPBSnJo2mQjkUdFKNC\ncIJ9miVaRTrdqaL4DdQ64ltMjSEDeCTNy82N2PvP+hKgISvWdl7uTlovsfnS\nfpWhwOyRNmwckgrotj9xyPziGE5Z5NzNAwdp1TGygsOFTDKiMpIow6yJaywG\n6VQ0jOyEwoZZytRAmzaMPYvKNYmQM8RTiqZlpyWbsw8DWmY+He1KqtN8egos\neY8r\r\n=Kpvx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"315e6efb914c47bf012a392697c7930007906d0a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T01:50:41.478Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.5_1630720348684_0.4746663520920238","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.6-renovate-balena-jellyfish-core-5-x-03fb4f20b6fd2faa18a97fe004b8c2d1311208e2":{"name":"@balena/jellyfish-test-harness","version":"6.1.6-renovate-balena-jellyfish-core-5-x-03fb4f20b6fd2faa18a97fe004b8c2d1311208e2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.6-renovate-balena-jellyfish-core-5-x-03fb4f20b6fd2faa18a97fe004b8c2d1311208e2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09994e546ea22a78b1dd0da65321851e828739a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.6-renovate-balena-jellyfish-core-5-x-03fb4f20b6fd2faa18a97fe004b8c2d1311208e2.tgz","fileCount":24,"integrity":"sha512-XOpjGZFotSwDdaS9k/QtqWNOT/1g+d850phnippzQW7WFZWOGS8tQYtJ3udTtmCpSw+EB8+A6vQ2yjfBF7V+Hg==","signatures":[{"sig":"MEYCIQCERc6WVYeG52QM8yLQqnR1mLDx2D9NsLQ/9CW/07YFZQIhAM4YmqYU5OvTA3NS6TlY3oAmislWDXjH2Mo8MZNBV420","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtJTCRA9TVsSAnZWagAAHGMP/2m9dN5/v0DtifrOrG95\n2zq4IcKy0QQLSp40XIMAAbWs1C3p/ceOxDXiTXyW/Yx3JA6uBVYixYfzpLfU\nJmAeahs6BO4AOJnO4mQotIiu6a0LQzl20q6uCT0jvIMxsasoqZTsI3odgrqC\nnolrOMPTOvyqnTV1TwsYms/U/JAMhJaHldodyZSwYa2eHlUf6dCYp9w5/OGW\n1jOXksbx3Z9m3AgwjgeWXybP1fWf1Efq8Wx36/0uH/zkWYinH/Lvg2dotwpi\n24WXx8nXn+aTJ+f+5nlVv8d+RmjlPxAC5xPpJd8TQHMtwjKu+kVZe/ZAXcAc\nz9BxsQ8f4ZkFTcMHycl5Pd6/0OZ24jkezae3D1WV1xwtTOcCQGxAznthhgDs\nhGDi2xJ/ep1V9yV7srbEWzf58mhSRtEP6enyTsX0yeBgt/aATfxbEwNBJHJi\nFoZqebVBRwpwfOynzc1Z2J0QegumLzDYHzB9SExl8rIgG0wSYhq8XXSvmSkB\nUEDVlbkAa/NSYxT4B4uuf02eFfa1x82ylnHgUlAxwYwfkeueLQnSa16kn/9w\nO5HmT4/I291LxLEQvN768cz2SU76pnVDbYxlyFcZPDGcFTCDmYpK/9N/5ILO\nmVmXVTBtbS0VDmxWFwPyoXMa3LyhAJ8eYQH/kH34du3CrI4jdJmz5skiYV6z\nP5lM\r\n=WS/2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"03fb4f20b6fd2faa18a97fe004b8c2d1311208e2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T01:53:11.715Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.6-renovate-balena-jellyfish-core-5-x-03fb4f20b6fd2faa18a97fe004b8c2d1311208e2_1630720595356_0.2528372581824576","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.6-renovate-balena-jellyfish-worker-9-x-f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2":{"name":"@balena/jellyfish-test-harness","version":"6.1.6-renovate-balena-jellyfish-worker-9-x-f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.6-renovate-balena-jellyfish-worker-9-x-f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4afa6c0ce93dea7bc547c66bdfba1f8ecdafd1eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.6-renovate-balena-jellyfish-worker-9-x-f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2.tgz","fileCount":24,"integrity":"sha512-iOJAZnARwVGsv7WmTlHvDmetPMtU7MiLAGjWmyK87sKb8tsuQykV+i7VgXt0ymH8sh/Thlt5x9ug7jJAIdWj0A==","signatures":[{"sig":"MEUCIQCu/JHk68LdVSUi+35JryP6PFvKBGLkc8eTzdbENdY62AIgQ8xXyOeLTf4n6ehLUjOJSK78FoRpdDgrSvBjPy5bqP8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137822,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtNECRA9TVsSAnZWagAAsSIP/3ikFm2VCMjJzkJ5Gp92\nPUmjulMidc20Q9OZLcNPxe8tLZpbvqYlaoBhh/Ykf3Sw6sA1FKim0UJuCifq\n+iHH9ccXlsaEtl2dCis3hoz60ZRVXz4o23plUlZWm3E/omBWfm4G1MFSY0L7\nHx2hkEpvXSeDghrLZ3w5CXMa/VGxDdJvnS6kp7AB2sfFAANwxTS5Ira68WlG\nkpCRUCdftk2DWZD5rMA9VszafEE4PoKJyHIEYtyyM3Ke1PqP4MxlR1tMBcjd\nFzjGFQVxYFeGqV3pNQ8chAei1AfHyZBrp29MGujvPClxqQswy/ozvfoPsxb/\nujuFuIyFNBWQ0BYhpwsa62ryNaAhflDcYeG7mSvzs0nhl4F0IN4XFSnOvW3+\n5g7HzvBllOPHLOWm93VKTM4XRugkv8In7OMbIVHK6Sq3C6BMG48ddGMRUOTd\nQqFaIiKl40nWJBnOnUOlCOSQVWDwxxw1zizt7wfQm5XQWZotez7aYDEfLe6z\nHcmd612txRfGTI8XmyxFa+bMyR9UQmzNZCG6b960LrwWbNEERkuYvcZinokv\np4oHdKTmgHjM2BuLhQbdmsUyu7f9jr2qdlxCAucb8w7NUF6PHud+pbHyOtky\nZ3Ul5gluXWKRbRbUDPR3n4G9QYfZ6WlPzU6p/Xap+4pfqupQclV6KB9WVRzB\nfveu\r\n=KIWZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T01:55:46.615Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.1.18","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^9.2.4","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.6-renovate-balena-jellyfish-worker-9-x-f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2_1630720836846_0.1533543488158251","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.6":{"name":"@balena/jellyfish-test-harness","version":"6.1.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56e083c6f98dfa8cf092851b71f529e103dfa029","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.6.tgz","fileCount":24,"integrity":"sha512-ugSZCfhhh1GNfQ54DpDMgetFFfic+dJBq9HO/qnqaQIt9L33URXstZMTtvtgDwpLWTr/1RHYQOlQsyNwochzeg==","signatures":[{"sig":"MEUCIQDlpasDcQISVuuGTSWaHH6GIXpa4SK+UQTqF2aoPd8BJwIgIksj8JOkC74ukAPWNBdPQuzro1p4ECJExDbReterdqU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137746,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtPFCRA9TVsSAnZWagAAYsUP/3cZk4fZoOf95VAzZdmN\nfX+TYoXYAr6D/iQ3rKdcSI5ic4jTwBzqtYGxBYvept1iubHA1B79d1+8rp4u\n4drvm61krRPk2L5LWB6ckKkBrgwB9JaCCJ9nsqfeosw82f42Bcy6v1q0VX8X\n/CR/kjX7HqSScuEEr2zPwdVi9xoWOCwBi3ENPrUKqLzcmFy4li3pTvXKsOj9\nnoSzr5GGmzPxC15t2HCbF/hAfa6LXMbTfjZmO+UzOgq1zH7xKpz2YGAQ+Om6\nai9U0GdznaFNMcNVreR0F4RXxLO+YLtgXMLwEzgf6CobEtX1sQPaS5waEACr\nUwlURPApSoUrXOh2QSC+Qf6vsLLaR4fIBRq3y3DeRTkO/9XcxPv4EsluPori\n045VuBQXCTwXBQqMcNAQW0UU9QDeE3A0z6mdS3M7YpaTz8Qhs4M7b+qcUCA2\nA4rwktOZB7KcRqFmVvs4XWd2VlDFW25ZUZLVA7cd5dzQMgeXpLBFYcJh6bMa\nQebcQSF3tQAgmUKpHQr5QiWGvAP5uPbAyCobugTFcY8gU+a1NhbwDYiIdA+1\nYWPTj/XsajITnhTvWWJ3MP8XQJ88ZxuC4ltjHCxgKoEboSOTrtAbcMc0wyV/\n+ieA+SwFOAl0u7zMYDA6gtEsXGQfvVSG6oQtUxfrX3tuTKntq1SryZNGYkOY\nMYlr\r\n=wmXg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"98829bf9fe44675c659cd2421a44a06bd9595f62","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T02:01:00.849Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.6_1630720964458_0.24009817350277074","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.7-renovate-balena-jellyfish-environment-5-x-4d01a017d5838d4e7dad95d7fc307a433bec6645":{"name":"@balena/jellyfish-test-harness","version":"6.1.7-renovate-balena-jellyfish-environment-5-x-4d01a017d5838d4e7dad95d7fc307a433bec6645","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.7-renovate-balena-jellyfish-environment-5-x-4d01a017d5838d4e7dad95d7fc307a433bec6645","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d1d40e34726feca0ed4e6464343fdbd572a5e5d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.7-renovate-balena-jellyfish-environment-5-x-4d01a017d5838d4e7dad95d7fc307a433bec6645.tgz","fileCount":24,"integrity":"sha512-6TRiv4XE9uRxiFvznHze4oRgbjIksTtfVa1OleIlIrl9/D/60VVqzQ5/FD6qsLy3BJj2nUJJPdVmVvtahl8J8w==","signatures":[{"sig":"MEYCIQDAFwhIeLc73BHAO0yh0CAWeFmeWWu+XRrJEI3WUMbGGAIhAIAD15whjumyPpa+bZZeKpu1FzjeHavPm+HMktvMdXtO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137934,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtS6CRA9TVsSAnZWagAArTAP/1Re2cNSGA5Makqscq5g\nmg0VdGzTVwSKFDXLiKcv2KMUXkz2KDReUqmNi49tMOAgfVUKZ6IiiI+qnCJc\n1AokVqjUpW6XkyUhcQhzapWTt0WrrN2zlNIHjxgl4ODXftqqjTn4ZZHkRNxD\nNllaR+wKrrwndFvq26U89fhHRCm9mwJLezrdRRXoG4I6wta2+88hPYx6YRXw\nySyEmEm8HSVUpq8BfmHgSJYXmGvrTYWoPsmzROrtBIv2iZNX4RdqWxsJ2dSh\nGBdpMJrJVicykRRlC9MAL0cEUWF47nVeupDWhPzv7gIBxrYNebh13dk6pP4B\nM+ftfDns5rKPMWQFqiAPnzQLIpnUa1KPQ0JmlkgKtKpWrjayIRIZzC6uDzI7\n+mKS6DGrD814X61eVGDlRyVQdqmjKJCdoNxtsQsRX2uTYddn8AaDCGyi4Zvj\n7/JMa6EAq+7kki0ceFrQIwmXVw0ZR2/gsPBgq7suWOfS7Yvqi/9WLIPOmIak\nhKr4KiFxDRSSX+MtZ4LtLwwuXzBpin7KZX4xDBS15ElBtgcd5gHwLGh6Htga\n61JhJ6TMhArlNdTkinVuvP2elS4GHeEvmpdtHnoXL3jqFJid7Aq3KJFOYB4S\nxR6IcIxFE2tK1J+QODOsolupBPejQLD4I1A+QYxAr5oU/HzwpYuS3kAb7jpQ\nkRPn\r\n=gX3m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d01a017d5838d4e7dad95d7fc307a433bec6645","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T02:03:06.306Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.7-renovate-balena-jellyfish-environment-5-x-4d01a017d5838d4e7dad95d7fc307a433bec6645_1630721209988_0.28591669829465793","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.7-renovate-balena-jellyfish-worker-9-x-daff3eeb39f862810e0320e8847821be8085abfb":{"name":"@balena/jellyfish-test-harness","version":"6.1.7-renovate-balena-jellyfish-worker-9-x-daff3eeb39f862810e0320e8847821be8085abfb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.7-renovate-balena-jellyfish-worker-9-x-daff3eeb39f862810e0320e8847821be8085abfb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5adc0242cbf15cdc6945d8f730966e1f2f7b07f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.7-renovate-balena-jellyfish-worker-9-x-daff3eeb39f862810e0320e8847821be8085abfb.tgz","fileCount":24,"integrity":"sha512-UKaoD/e+6kTs94VkiPGZ3ltdMCrV4f0l3Xt7FR2/+sEeLzT0fjXFAODJ7Ub7xmqPNCSRnslDKA1gFeVgn3oY0g==","signatures":[{"sig":"MEYCIQD7O9OYaI4jbgjnNXEwkBDq52oS+8sG1HBfo4SCf8PZiwIhAPyihrASwAzbW4U2AGWrJlQGXzkQ1tbaWSv+gYKbH0NA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137923,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMtWUCRA9TVsSAnZWagAATUoP/A8e0+dtnmghmH5wuB+8\n/PRvYlCHJFbCNyp2Si4ft4usf3u/YpDuuytBMZjRj8Wl54DMfwYgEK1Dot08\nem4NIVZxuPxkssqTuElXZvPmZMO7g/M9EPbZtpDat5/Szqiq27yfXo/OESts\nM1DX/5QVjit/Nb4e53wdpSA1/9xsEDejYNmGjt7FFfV5Wuln8bcIRjhZN3q+\nRk9F5xOC/lY5Ppi9QYHqySZt2X2LM8vrgFL2OPVFDKErMhnzkTnm9LsrBEJO\nwWNPNP+h2yWqrbmouRg6HrbiSNlXS0af+el77JA/5ToFGvkpl5zvYKDDlR7n\nqhUBZAYMPTrtwG0i6QGlpzFR6FIxRGBkkrl9WJ4nX/o5wy5dHa6MhtnFjIY/\nJfvEMA1WzeX9vIiApMJX6TmhQUvMUPFTuGWFm3LuMHqUipGBrdV6NF+LXmhr\np5zhZUjgtgFPEMhCqljwHWYCvPLQijro9R949LM2A/N/z/apGU7loJP7RFaw\nkerANSOfyDcQ6HfffAJqVLz78/LbbnWDAPWLwScgbwS2qzQrLhCYZw5wq8px\nxO9ANvQsS2Z7ZwDtUROq6k/1t2338LII1JzfJ5GPYM7Es9DxoMfgZ+jrljK4\nHQ4fH2qne5KbejuaRGq6m1jYU8OsfHWsoLafYvw1UwJ6+92tc6sworiEisij\nZdNx\r\n=guLy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"daff3eeb39f862810e0320e8847821be8085abfb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T02:06:22.563Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.259","@balena/jellyfish-worker":"^9.2.4","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.7-renovate-balena-jellyfish-worker-9-x-daff3eeb39f862810e0320e8847821be8085abfb_1630721428467_0.6117051037711867","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.7-renovate-internal-patch-c98d8589d08276b93d5859d070039527701f312d":{"name":"@balena/jellyfish-test-harness","version":"6.1.7-renovate-internal-patch-c98d8589d08276b93d5859d070039527701f312d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.7-renovate-internal-patch-c98d8589d08276b93d5859d070039527701f312d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"758f777503c2c049e83dd5afa98578c77319b290","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.7-renovate-internal-patch-c98d8589d08276b93d5859d070039527701f312d.tgz","fileCount":24,"integrity":"sha512-pYxiQrCc0mI7bV/fRgY9l5K7Z9qwRVIcQJM5h7EP/mChxGGZ6CiJ4Xm0elgD4TiKCGDvjKOlnddzH2DGqiQttA==","signatures":[{"sig":"MEYCIQDOd98zYzQ5D51gk2AhiA1zqhl6dQmjVEV8hAd/hbF91QIhAIHPKcL7BntRl32sKra3zxRN6kaLr0S4wK1zTN2H0vRe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMujbCRA9TVsSAnZWagAAIXIP/RLVWOdCwyPf7UM3Djki\nIzgEws1tBmqlJnXPKcSqMYr6OtcdgOCC/DDn3V7dW5XFRUC/r4iabnvmz9J+\n50ZzWrq+MoWeCywelj7X3rPe6muPup7XoqkAQYSJpqrVBFh69fcknMitkgtq\nsGrFrJDFYpLgHM9MfrgiG/z1uLIlOEJAlhV5uJUgf3DXr3IZDAGZ2JtHFhD3\nqnI9x3ReAtTOrPoQlcteHygsmSempRCUjZYzoDyjEZLbGILl4jMW1EVEhh0m\nDsqyPpYLMDHSzV4FoT07MkOwPrkw2sMmHMeWXL30VJgougC6v6C3muafjQku\ndiF/kWr0mrsHQSm5lcLcg/RPPwyq2a9DORo0QMOWaEhEWV5at+qDcfDD95ac\n0vOlcrnTErQgbiNMvHhay06rFordd2/c3tTs6wlHmERpPOLuaV0iRWly5Xpf\nbH5804mknkvaZU1Vf6U77uaHxmN+Y6PtOkdSEjxMwubi8O/SZdTkV8yWKT8J\n4y4WMlWjenadwFwswBZX4ygwXmz1v2KAZLJXOkozBq9/tOJGoJ/YuxRW+UpX\nZZDPUqPfjOZECvvfQvq31XlhSlgV/mFEMeCzJZWUhfwW82I7R0VdVZI1fAW+\ncRu9xOw87mxCcqL89W5Qp6KxM4pJur//9ahUQjK1jC0aUsoazrLf5qzcqfJX\nbok+\r\n=9FwO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c98d8589d08276b93d5859d070039527701f312d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T03:28:51.697Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.7-renovate-internal-patch-c98d8589d08276b93d5859d070039527701f312d_1630726363699_0.3763722018532718","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.7":{"name":"@balena/jellyfish-test-harness","version":"6.1.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"58e6ce8e5d6b05a3d5bdf95cea5e41926abb38ed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.7.tgz","fileCount":24,"integrity":"sha512-IMcdGMMBxG/PhDXuaSFJPJHm2vpWMfXQq+bzXKQ0kB4RPPVsuYV1swTECiEqmqNSlay8bjf2DZxZ0UzfCZq+RA==","signatures":[{"sig":"MEUCIQCXic+f2oW6BEpgGpNjKVouin7KlM9KjNRE4RWdiWsBzgIgD1Tzxy4DCwyFO9CcB7MCpyUxy9/AP9EfLsBGBYvU1Fo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMuoHCRA9TVsSAnZWagAADucP/3mQrZhZzPST4ZD0bJyp\noqnA/6ZfAZlahnSdau0s/x67bz+7P4fvmRTtxh0ZfsjX3YC16bg2ZgIBioxp\nqRdnYR4hrb/a8nPMc+kEbh0p2RsjWP627sK0ue2r7xCqktVIdS/oZTDTsIKD\n0WZCkRpvOPOXza5rq43XctHXCfNR1RN1W5/lSwr23Cn+UDX1LjiLSWh56jd1\n2487N50VtRQW8+0hCECM63wPn1mmvvyzxtsI0j7UinS4En1cfRzfGsp4RUdy\nYRAd50Cfz+eY4Wo6erM/fbXcbR4+WVK4ukzpM6DIT67xh+SJ7xN82L08ihyu\n4cAHTBOMV6TpAcaZ1Ro3TWiyP2PJMAn8oQ00TPWBnF5Ptp4pSS6NiSfwtjYg\n+Mefqhu5iUAgJM3b02TyiHiytMv2rBuUQQdHx3UtyWl9Id8Pja8wWf2lvt9+\nhjauBI0xz7AensWzomSGXceADC5nDS4ajqpI5leCZ3VOqD8soZQhuxXI9C4S\nLloMuARAMLms+EQ33oVcO1tJUa3/iszv6uWLsC+JEj5tox9RULQseroCp8GG\nszWa8IPbdpuP2g04/tkP1BCoXN705Dl0D8FFeIzM1ZbPvXVAkCFy/Jq9XIP5\nDJpy4yWNxcwi7BlD4914JgamAEaMr9D7htaFZ6OeWl0OErMG1w1rBXGoxtCW\nXfBO\r\n=qgcq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cc7fc4b178a4717b33a8863b39262659c17cd07d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T03:34:06.929Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.7_1630726663224_0.48225225346713496","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.8-renovate-balena-jellyfish-environment-5-x-151b3b6ec6512030f8019f4e216ad17d9ce03721":{"name":"@balena/jellyfish-test-harness","version":"6.1.8-renovate-balena-jellyfish-environment-5-x-151b3b6ec6512030f8019f4e216ad17d9ce03721","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.8-renovate-balena-jellyfish-environment-5-x-151b3b6ec6512030f8019f4e216ad17d9ce03721","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab0bfd30b545785d6f545bbe6619ae88252e6e2c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.8-renovate-balena-jellyfish-environment-5-x-151b3b6ec6512030f8019f4e216ad17d9ce03721.tgz","fileCount":24,"integrity":"sha512-YCRZlRm3UV97m7d4XHbKc9D5o7VleuCxSsGLh6YSymozYS/dtrPkywG4E9bEw1YorFAeDB1esLSp9vGqNIObmg==","signatures":[{"sig":"MEYCIQCSZgCzGDnmGYxx2yLs7lEub2SWgew/833x/vstQN3pxQIhAIDnE94bgKJHg6NIoxwEGOIS7QkmZ1oVredOvU11LGw8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138039,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMuqCCRA9TVsSAnZWagAA1WoQAJEwoCia8aRZr7Lt6aG8\nOYDmdhJ1oWDBheWcYQm54QdBGfsHrebGlWof76R/R3j9/breZwr7zsGnCw8e\nae5mBmJ9PoSf4Vw8ZqtvT1Qn29SEzJU5aU/JgvF0PIb4smooWH3gRkMGNG1M\n8gTX0M+YeVgD1VxqlWIMkx8Cy+tRtDP/7uRcliOgSt+YpkyN1pbL686x4BdZ\nMFeE5eGF7j13MnNVUSfZHFC7l47ieiatIyBRmVTwr6v9rhdviNUKQh3X9sVB\nKVNCuCeTABFPSMem2Y/eaz67KU4fPTuidmVSV8cW3eM28V7ahnpPmXlH6UsN\n12+lt+/PCcnUhygKgKAwizEe12zHFQX7YjiQ7Pp4YcAwM5nqq6saF1g5Rpao\n46c45K/sgy/qBjH5on0Eg8phu54J15Pesnw2YDDjx+B+W6RHNShyWZWx7LLz\nyBuzy8X/bnzHn2sBZoCXGD0P3GNgQ1leW3TjB5YiUb/X4msJHuU0elxYo4OP\nBIAYSa8urvXrhEVsXqCrcZ/nsvF9E/T/VEcveRKiHoVRqXdVnZFwo/83uIiT\nKz77lydKfWVTJ/M/CCBERYWNgCOghF3908FkaW1A7VFbk6SVcj9lDOaTwr1f\npxL5InAJBN+0mxlwMbr6NOYOCcqHWYVXhslrfRJPf3GVzZcIhSkFmqlCz7Nv\nJcC1\r\n=p5fC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"151b3b6ec6512030f8019f4e216ad17d9ce03721","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T03:36:00.614Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.8-renovate-balena-jellyfish-environment-5-x-151b3b6ec6512030f8019f4e216ad17d9ce03721_1630726786663_0.37394201999713705","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.8-renovate-balena-jellyfish-worker-9-x-7f7660abbc8aefb8477dbf2c927fe3b7af0ec542":{"name":"@balena/jellyfish-test-harness","version":"6.1.8-renovate-balena-jellyfish-worker-9-x-7f7660abbc8aefb8477dbf2c927fe3b7af0ec542","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.8-renovate-balena-jellyfish-worker-9-x-7f7660abbc8aefb8477dbf2c927fe3b7af0ec542","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"edb8bd818da3c8d843e3853933c557870bcb006a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.8-renovate-balena-jellyfish-worker-9-x-7f7660abbc8aefb8477dbf2c927fe3b7af0ec542.tgz","fileCount":24,"integrity":"sha512-mNYSF3t2q2Uh1R92pXT8Cto5ai8ceL02FOA8vgeSWglVAKVGkHlGpNi9bxqdCgh3vJgVPd4zzDlYICxZLM8xCg==","signatures":[{"sig":"MEUCIFURhe1SfcI6NazXkcaQS6AiQowwidZSGMqQdwqAkcm0AiEA7Bu987oIQtH6YnlVNwGtoSOvds3fy8dgjxMrky0o2yQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138028,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhMuqvCRA9TVsSAnZWagAAkeUP/2WxXcwP0ykOv8vCwVTm\nG8U67y619f3jmcOVVDElJAQ6R5aUclAiNlj8m01HJGJHgxA2p4PJQF0ZzhBL\n5AOSxQiOxUA5VfHqEbMc9xmzLx+v9WSeg1gTpwsnmGQlJqu4Jx9cbu0WcZAd\nnjfSQCs3rMNONhZjPPhieU+xZDH2/hdRAAs7h969pLBOBCKOewXpmHpyMQ6x\npxpNC+w+kBuDx+OC3bk++6e9MrCbK/UHZ+5pNRR6HBWiob84zp72Jrrw8TjR\nIMtQiXeZonaTUgGZIsv2tTW7jPEMvTPAxwvY1sa0v69TvpZXX4ECY1VbnOTA\nIY6MMjrsfmH/z7x4nmWDu9YEW6Hnxvltnmg5xFMKsicl9nianAIon//qrUH2\nPoSXH1ZFVp6NAq6ztM/mbc4oddQ9gGEPtFavG82+yheq9nDgbFyVUN16uwPU\n5Nj5O8qq7aMtcq59nWSAJu9tJGqlPNWTKW8dXEETWiHMie/BQsmDGJjPuu3i\npSK+SuGJk4BLK1utiU9afj+NOVgh1GVMWopGPlQMZ4gGtZ0/ig0WgXrfSecM\nHRJscIA4zHp7dII3BDMY3Dszi/UmAMlgB4+N9Ka8cXL4vJ2C51TlCNndhbyM\n4vSvk7OqmHEKKxMTPGmaMsgSafJu2Mryr32eO2gakMDuUoxCggnlP7NaGPmR\nB0J6\r\n=Gdgx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7f7660abbc8aefb8477dbf2c927fe3b7af0ec542","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T03:37:21.736Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.16","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.8-renovate-balena-jellyfish-worker-9-x-7f7660abbc8aefb8477dbf2c927fe3b7af0ec542_1630726831610_0.04345909458007524","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.8-renovate-internal-patch-b4471ca1adb35ed67434b1f243f2fd1fded9176d":{"name":"@balena/jellyfish-test-harness","version":"6.1.8-renovate-internal-patch-b4471ca1adb35ed67434b1f243f2fd1fded9176d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.8-renovate-internal-patch-b4471ca1adb35ed67434b1f243f2fd1fded9176d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e32be27f7c7cc20910d8625a34588feb3090949","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.8-renovate-internal-patch-b4471ca1adb35ed67434b1f243f2fd1fded9176d.tgz","fileCount":24,"integrity":"sha512-218+3M8pD3sdVflbRjD0dVvEKjAonRPQUr3Qk8Z/ZJhdAaBOBYWz73+s46fm/FChli2O15CvbxYGGnE7sWHB+Q==","signatures":[{"sig":"MEUCIA8H/oa5stdxqGkXcNLI8Ntb0X27k4uyKbYMEIccMV7zAiEAzbZ4gJxyKOwPjpumll/mIeBfukq5npXb/IBdEc7mS24=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138019,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhM5M4CRA9TVsSAnZWagAAfWEP/RI0EeUnskDi5VBfORfV\n1zmLrNHmLHY6g1+YO2PpybNc9En7+taEIPis96Hfdy39yJGqVfYUMpvxr9dX\nALqeusFFrxeYtcA86nNucKekLKpYzz33by6hdwvg17WDqN7ZLsfXE4wJRTBZ\n58kZMmI6FSMg6Weaogx0pvRmHIB2OmCOHSXCfv203SKP/E6A/rDc7q21d7ZS\nZ6c8MiaxuQQ9x9FYKRiSb8Bo5a/WpmdiUeVBYJxzYgXZeZszsY2RtvW5Yr8x\n1Od7wsf6f5POdwGfqYKzJRjZ6uHEIyQ8ajXNIVV/6EV/TkdKIbLV0yI5mWUa\naYYoH+3b6ECdF+WL2rvIYZOxfB4p9fBcFKzxdOo4P7EGaCcGcxfGeBN0P6N8\nS5jvS9oQSPm7BsPLAtD8mz1jAUEOVuH29W3lKFfL0Nk7R0s55FW0muwQrB98\npauNNMUtT8WeMjbhFzmJPxV+d7m9zTl8f5nRv0z3vGAHhfmRgaGxSLzs1/xD\n+jGg4EpO+dWgmJdTa2SVRbnanh8l1etAlfUuisog7VYo+Ew7yXjawGY1rmtb\n3ZJYF0k3YtSJSAS/fZJ8mcE2k7zDnQC1VvgtXO5Va4+Cm+NuH2rHupH0nAKV\nFOL/ZTeA2JvrI/cruKts9uauzT9RLsDUcLMO+MFAnDcwRTiwZfapmYd9JZAg\nyp5/\r\n=/3RX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b4471ca1adb35ed67434b1f243f2fd1fded9176d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T15:36:51.333Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.8-renovate-internal-patch-b4471ca1adb35ed67434b1f243f2fd1fded9176d_1630769976404_0.10429342203450931","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.8":{"name":"@balena/jellyfish-test-harness","version":"6.1.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c58c0c77358a584c8ee4232a0e3bbfcedc5edf13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.8.tgz","fileCount":24,"integrity":"sha512-qsjC/JsiPXDzdVPdnKJq1lk6w0E1+k+KOf6Y4EBPzfN5sMH9FKqtq2GUr2HsfpxO8ksRIROji8MD/vb5UaBPJQ==","signatures":[{"sig":"MEYCIQDohhZaHLK0RFdzb2ym0h4rd8dF4R74UIcBV23EnyIPJgIhAJA5uNXFeNWvIPgpgL7qJw0LHYfKnKwJROZXaRzEah5v","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":137954,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhM5RKCRA9TVsSAnZWagAAwTUP/j15IjfkoQ9RaCKjITKu\nHINoTgocIxr+IoLoVehMI1Azb5/1VTBq6cxp0BqqsKwGadj+5aSPtPBy7Pz6\nUbiggKsHqFITdO/W7L/GCC51E4oO0NZfg8Tgi0maU27HGucmkSAjaHXBizGs\newIK+jzke7DVBqY4L+UPUF9eF/L9FSk4glZ6V4AWUXw8CJ8B/i86ZLjSilew\ngc5o8OqsIp27SpubHHMnspOH7GyLu2/z5rZRdfqshwD/hFWRZQenT3a3wwsy\nt9dEoHQZl9wXrpgcW7Yt8eLE7Xeegwu29KrySeF5cE1jmk1/kSAHGIYF5BZI\nSa+49E4S4s5apXnTHm9Fr7gqv3/XTFhegdX71GUqIM5JqTSHbUGXI8oeN/c4\n7NbBSGvl/CSBkhN5llbunNSxlwxaL2DW9HLAvR/BfAGF7YZYM4V9IROABR29\n0fHR+rWHLY5vnZB3JG05Nw2QOj8JZEPqcxSujoMQDN9C38gmm4AR24+u7EM6\ndO1CsttY3ZNLSWeSQfrvYS7wsrtexZb2szZ06bUUSE+hn+G7ybfP79SNd6CS\nWFp8Y7h1r0al7kKi2uoKWhpmNOOycb8z6yyETVCTY5JaEG9+WtDlN18WnWif\nGUdHdBt4PxwPwOWjqLfxuOskdAGJ7IZuQv3Uiv6F2TwjdmWFytnWZAM75sdX\ni6FB\r\n=Wvwf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ecd8bc3999eb4306834aae2a99c2154f19dc914e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T15:42:21.214Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.8_1630770249967_0.25608077752035374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.9-renovate-balena-jellyfish-environment-5-x-7c3cc57caf5b00d765d9ee12cef604184b902a8e":{"name":"@balena/jellyfish-test-harness","version":"6.1.9-renovate-balena-jellyfish-environment-5-x-7c3cc57caf5b00d765d9ee12cef604184b902a8e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.9-renovate-balena-jellyfish-environment-5-x-7c3cc57caf5b00d765d9ee12cef604184b902a8e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aa2239f13b35b16e750781f418add3290f5a74cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.9-renovate-balena-jellyfish-environment-5-x-7c3cc57caf5b00d765d9ee12cef604184b902a8e.tgz","fileCount":24,"integrity":"sha512-x7fyFzRQt/DCEvVUd4GcTuUUz72rmVc/dxxRzrEQHPl6Tp5ylXK0uDhwq7A6f3ZZLrrww6SrD3ddJVydXRPcZg==","signatures":[{"sig":"MEYCIQDRhqarPRZHr4xCtqS2UqTN2nq3LLKzUE8U3pfKnATxPgIhAMvebDGAO2kxsYoZjI53WCCrHRN/GLZKTKKmF3Yfwzhk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138142,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhM5UYCRA9TVsSAnZWagAAx7wP+gMj826AyRCvLxWgXf+y\nKLy+IxYmyRH4/EJ4x3Gmeh68SDLrk8af6W7EB8N+4sR8KewrHj9gXQWbNA0q\nh3RPD2wjWpdWwpmSmSPgHWWRHoXftu2MJyYlcVfKrMtvkOK0atRRvGFNph3N\nf0Aqf5kcJ4HyegyMD8K+ULxx4O9rorXGFYldnATK3LFpC/gQnEmDmLU5eiPO\nTHm9xYD6rAV0gMqj7/yIWd7sChksetlUjr+B2QnXixYdrNg7Ck+rJT9sTLPc\nSp/1FIPitntwvE5wyZ/zve0MGVdwKLwjvFTr2iT9pLBSLv3XEPFXxh2CuMIl\nMUMZDRy1JtFLQmhYgBDW2H5yyk/mWDqBoVukD/XHpOSc2Vs+Jd37oiJZzqen\nsYcZMUZte/mYm0PwxIEM/QeQTKsr/+zTVFDoQbTb4a2IzDJOSE4vc7jEaLxY\nq4VV4eATUKBLFncBULy6h0yFd0lsZ6leM5MVWau+0FUiK1dQGO+wQtR60T+M\nb0SKKnpkP6b5EMxvVb17OUwdb/Pz/HtM2H3bcY1C00gco0X2v0wGI1527Nw/\n2K5b3Y1Wo5VBYuhDBiDT2d4HmD+YFn85X7z2wQWmTWM9+oiF+OdG03WXPrXD\nQgi8d+gJM8nLz8Eof7PWk8FHR26eXeDUAjosVUytSzdPBxIN3qA2bEf+g/8M\nIlWx\r\n=8JXW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7c3cc57caf5b00d765d9ee12cef604184b902a8e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T15:44:21.269Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^8.0.57","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.9-renovate-balena-jellyfish-environment-5-x-7c3cc57caf5b00d765d9ee12cef604184b902a8e_1630770456358_0.2892260537561384","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.9-renovate-balena-jellyfish-worker-9-x-acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169":{"name":"@balena/jellyfish-test-harness","version":"6.1.9-renovate-balena-jellyfish-worker-9-x-acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.9-renovate-balena-jellyfish-worker-9-x-acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4697c411bd9d8f4fa2f3f29d77140cdcebcd4277","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.9-renovate-balena-jellyfish-worker-9-x-acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169.tgz","fileCount":24,"integrity":"sha512-TFtLI1x6mwS0UVFox4jq6NCVaRC5BwefqKprx5JiDEyqZByrMKsdzTeZo6MB0bc9lWIuPlZcuXjmEvmUOQ3Q5w==","signatures":[{"sig":"MEYCIQCshaqFDVWWUkMon7c67763e9fPNQVg/+6jocTXO8aulgIhANXYBdXM1muKXQhlpe9EpNmGOZcqG0nNJs2uD5JcGCqR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhM5VBCRA9TVsSAnZWagAA2MoP/3W8l+H5rl1RqlVIEb6l\nYbqyEmiRWClUTYqroSCG7/tXYeCoIdR/3PeLOFN03d7ID5Dg61VPFFWtycVR\nbjgr9LMsFTsKMW2KolIzG4YKFSgaXTe5R70ki4XabaFP1g5G5hzBSVsc5o/1\nLQDZW5yA66DsjGXWZiZMYZu7G5Qmjd3Uby77wpB7TaRKz4aEie4TldF/bleN\nNYCeyN+RP97PTHXHl6kJqCsyHCf2lrMB+BONHySAKJqxDhgrhRSTtzha4snt\nfwISvyV66dh+7n7NJGeq3NjgopiROZaOEJqE84ey6Yl7Cll7mqL7UkrlCIHx\n/h0zlMry342/sUsoQnmLqQUIOypZV4/yv3N0QSkZb7ibI/u8voOorUDjmxYv\nIvsUUuoZCd9B/X5piieINzJ3VQJzRIdBUA2JawiaY6Qb0uD0P5SHJPwK3d6u\n8zj0/qUyoIk0DQQHAkdm1jY7qT0l70Z8+pLyox7kKIGtcIOMlg3S1UsvywqA\nZvdfwdyq2+4E1C9wEC8Bk42cj2nuyIg6vg3Vo6q0hInO+Pags39KoyIqXc6b\njYP1Cl6p5+iwDsZpUb2EpbzHygfsE2NFb7O9zcIZuVcYbFmc/WIyaeDNYAEX\nrDuFAeOZ1+8IMsUBwlvFk+IxqzK0c0vNsXCJ6mVrWZhNeVnor98wfcila0J5\n9VEQ\r\n=HNhz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-04T15:45:01.007Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.9-renovate-balena-jellyfish-worker-9-x-acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169_1630770497181_0.9940041197838945","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.9":{"name":"@balena/jellyfish-test-harness","version":"6.1.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9cb1dc1eae0463dff835987370701456b212864","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.9.tgz","fileCount":24,"integrity":"sha512-SxIbnlPGP6NO1ME+FyINcRFyjROw4a1tNwWtH/hN7ovXpIfxgDDVfJcpNNEh2vnl2EeWmqHzW89jhDQP9yvOXw==","signatures":[{"sig":"MEUCIFzpoXBREkvaj3zs04rqlMZGHjJBebQAGu9aTJVo5g8vAiEAzc+4v6U3lUZtufKCth+nQ4XM7gfUlcBUFTYCIh1tXug=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138053,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNC0kCRA9TVsSAnZWagAA/hkP/iWGHAatGvwrD/0+CvVt\nLD+NtfiqyTom7/ZEebRxjAga0/61RdL2+GMtGtLJfOLTaG2dXIe1Jp00Ff7B\nJQhIxgtHoj2wbmBLZDUp8zUXBkwPO/e7NvpsuG3qWG/IjlZKEESX4zTjsksj\nVBN/1FEpQGo1ApoIAchjdxSbwlcRuQmtr9pmRfFc4Vm1MpF4OZUwUexFB1Hl\nPT+M08EilCMJKZcI/4yzH1j6VQmsFCZv6B2Sn7UhbpMrTiqs1VukBLelukrA\nKkUf+qLdkOl2bKVfkbtpreJ2u8oWTwPKhF779aNZSkfhZt1Tgpo1LoXKgPau\nbi3uCA/HUIDn7FQJzLnCS8AhYI9cLmAjNfQoLupfdkZxa5bUVgJEXMA0/8NR\neWbpmmyseuvqAYlVac1ArYoMLXgCzKU7Cq+tDEUAG7UIo126jbgvqkG/Azqn\nZQAdwiyp3KnUoExz8IDwuBiBImv4dzuUAYnd0WGok18ki3REEp8SuU3y6pVe\nfKZy0QKxMGJn+ORhq8FFFyLkPBIlO6DYexfKnIdEUgN5d2GnYi87b1vgnLxt\na7RAe+sykfTcrPrppnz5pcNoHFexBp4AYXk2vjJi85x+v3k8kTY7xFq+U+Gw\nxNYWl9EcJG0guv24V42NSICf9VfC6hlk7h1MW+aW3bwJ7mtnD/2uR5Mvq4cz\n46Z2\r\n=m/3l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e8fa783688cb1386182870054fb6fe15f2f11f55","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T02:34:31.340Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.9_1630809380048_0.49904155699185404","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.10-renovate-balena-jellyfish-environment-5-x-9ce9216412ebc44afeeeb9de5c4e57fea8c984ca":{"name":"@balena/jellyfish-test-harness","version":"6.1.10-renovate-balena-jellyfish-environment-5-x-9ce9216412ebc44afeeeb9de5c4e57fea8c984ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.10-renovate-balena-jellyfish-environment-5-x-9ce9216412ebc44afeeeb9de5c4e57fea8c984ca","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"465007b078fcb9e962ad1f99324d043f3cf10f6f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.10-renovate-balena-jellyfish-environment-5-x-9ce9216412ebc44afeeeb9de5c4e57fea8c984ca.tgz","fileCount":24,"integrity":"sha512-VDPPv52xVNYzKFzIhaCFPR7eWS1P4D59xrPrlcJ7tMjiC5WJUVl09W6EhtvloMU9D+zMvdjAmFy8WcP7qNHXPg==","signatures":[{"sig":"MEYCIQCCdXbiKZTwkmZaU/L9uE7GPdHnL/DHwfEWnR8wAwJSqgIhAMe6vWfxFdlyv/rVy8Ogaa7kh0igf+IlW157MGNVFP2H","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNC3xCRA9TVsSAnZWagAAK3EP/0tLM3Zu/buMxKwjjWgq\n1gZYxl1X+oZJF2SDq5IKUUFmQpMFNxj6dZdLZfL+tdt5BMKt4e3uNpbl+XYV\nrzktNgLjh5FcJPWzZNf5cHcVjgMk0n+QHHU7FD4s+s5Tr6cluhybOAOzXTw6\nTvoVXPyOeMVKsAz7iamg0tjayOmmmsq/n2uxfqWPGkxsDQ4m/lzy2ySDB7vL\n68vrsYP3yuM6Wip/PYedJTuJ0asHUk0tLPtT83lLur7JUB+c35npNbQCkHwt\nz6TJNByiNa8Z+3HWON6vGCjA83eFBd0thj2dB3Zvcc+M419/bLd7iXjuiqXw\nBNbort2XKfY/LwhzKH7vwBQhJS6ER35EPwoB/xqQ9IWhm6xBdvB12wlQxO1m\nVfrtagPBfLbCghlisiTKdbbqOGgve+IPXVsiHvzUMfbRUFQXtt4ABRrTwAJB\ntMRUJA84b26r/9+Ru75lUFvjSwdzKWgXI/gPq3wWpCqB7OggG7lwC0MgV0QP\nZIvLR5gENfs8XUCCQ2cp/CFc2g8nqWVlsLZSpGZa0SBRqCNIZeqBabW8BNwf\noucaoawzfgf3JwcVvqOtxiuq6lak24FGLZMJSWvWXCIw3uH17xjZfYsHI5h9\neUBHba2/ylQMjzu2mbxQ7H3GRqo8v3vZEWG2Yh1Ndn+TpFlLjQNDHpvLMtE8\nGQY5\r\n=iK8q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ce9216412ebc44afeeeb9de5c4e57fea8c984ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T02:36:17.941Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.10-renovate-balena-jellyfish-environment-5-x-9ce9216412ebc44afeeeb9de5c4e57fea8c984ca_1630809585720_0.2598054804291354","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-be3f24c4e0bdb393a382fff85ea0dcaec0450c80":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-be3f24c4e0bdb393a382fff85ea0dcaec0450c80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-be3f24c4e0bdb393a382fff85ea0dcaec0450c80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"265cd9b564dd9d988c862b8204a39e6ee00904f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-be3f24c4e0bdb393a382fff85ea0dcaec0450c80.tgz","fileCount":27,"integrity":"sha512-nUppNSx0mATUZRNarT6jSsCTzsKOqFzkPS8PBQHIN5vVNVBS3ZkIxgjdG472I8EdQyG3NYX/JhPK9lFZEs4qGA==","signatures":[{"sig":"MEUCIFAU6Fh4VjTg7uptq0uqs7R75cPUic6QPZLUsKuBoTWgAiEAipnqrCFlxKvU0ACm2P+KUg31Jj3HzBXiwTDufrf80T0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156821,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNDADCRA9TVsSAnZWagAAuKwQAJqOvf5F0hxrMWfVt7++\nLVfPsueqwMU/neAEja7T2rFFBw312NUUOW7OzlI4k8/ZHGVkgmYcfXqUnu0Y\nOHT54qk1S06Dtv1BVltBwF5Jan9GyhL0YURFRPljDElRE8NIB1YIbNOuBfUl\nxRa3bfuLLf6gqnXwtE599ta7DynbcCDRaL2TddcM7gAdibqxMJ8xQ6/yUYYs\nDJ2zIcsilKn03Q7pyNEP6yk9Eb88WsPgf96sXlGbS26ohEabU4QpFXrBSlMD\najN6xmtoIi3QzfAPHgdII1rgD+TqgKf4OmwlvjuuAxqyEgQkjaQZ4DGemA/4\nFN5jeY6V4pEeMU2nfGijlOcjDM0GoHZvjLSB6FTcO6YL6nLWt4DNfm5yMd5F\nqQo2QIueIjmdYtSUlzUV0hqlrKvirDltN1MespfecFjzYKCePjFdh85H0YFa\nBljyY7NEY/B1rImEaHHdsifD2vN6K1mMUtN2j6nuFPOovXXUVfJOian3OjG7\nKPFPhLwjSadEz4ssGz6mGcABLUt/yTei6oijVDfYXEUEGoazL/+2ZsbwC1GT\n+zJUM8qHwwWid9FmfuUHFgflKf6R/47YpXMbJ//O/LQWptmNw1iXet3Xk+UO\nuTdG+FLWdu1MJlhru6i2qQL7Htd9Z4q0jEiQPXgzVavkT3iM91ZMbFykc7IN\nabwJ\r\n=RzvS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"be3f24c4e0bdb393a382fff85ea0dcaec0450c80","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T02:45:41.847Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8","@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"peerDependencies":{"@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-be3f24c4e0bdb393a382fff85ea0dcaec0450c80_1630810115655_0.9289745452982197","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-8f496d952596c10a7f293a68a71c2c2adeaca62e":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-8f496d952596c10a7f293a68a71c2c2adeaca62e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-8f496d952596c10a7f293a68a71c2c2adeaca62e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f6fc378bd8a67fefd5b54dbc50917528f9ff3d9a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-8f496d952596c10a7f293a68a71c2c2adeaca62e.tgz","fileCount":27,"integrity":"sha512-ks3+tMdQJ/4W0DhO3oszUoWWct540FF5nRV20xc8e0h5aBHjmQm/UFlW7VLP7e6GDdV/1SLS2Jd1wkmty5GNHQ==","signatures":[{"sig":"MEQCIG/Xir2q7s96tdkkPNMJwgZfjeakqOev7z7vQoxgLYZRAiBKPJ0+ed+mISL/8ai6H9Ui7CE0D/uRufEEQ6aI+NeovA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNEGRCRA9TVsSAnZWagAA+8kP/RPddjHOhBSk7cv5ccBz\nSlJHU9MRB18ne91yOatbHogjpi6EiriPX8ps6vJce0IalyghhFKkQbpPbStF\nW7YJ/6+3mazSyTw646hJJnGMUmWhWqRzRSphZ5oL1KBXvSxaAMlM7P6lWnSV\n2wa5TaBEzXMm4cNAof5uaLcdYV6jkfve6xT8XEreue5CYqyLqLwWi0HVeS+k\nGTXHVJDGyBjqQIQhZdTx/iBHUk5IayEnuX3/XbOmEy3kE0lW1q6M/TvHGG8I\nihDr2ElBLQ3ZX5kPEqfyj5SdnnMrPnh8kEKdkaVmZQUoFpLqNpNUVe44JQII\nZaZ9n7VF2z1gQoBqCOyrPOiji/fv9CYGev2Da0T0+1Sr22Q8KSnDlDrAM4yX\nAO/g69MpdFemIeMltonTSkq6Y0WLLvNEBETn7hxGqno7jVQClcD1cqWBmF5O\nmBiAYONo0qvJ8Bzw01c5NVgtoa9jHmUrsvv/AYfaCFIoyNQXmvWdhBlQAgpb\nSt3jycCJGmzcgjV4z/0ZxmXeQ8aUBPExtWmz0LQHUHlrGq96JG98IoYlGkyZ\njR0pC/Yfu9uLjtWFfmdq+cvHV4Z5hgf/Kr3jW2B5aW+VLG+RtXwOCUXl49XQ\nsyh1rZUGqvPCgNNLo/JnY8yz7oF/c7DhXE5BVaxldj2Brw9tsQIkfidQUWEn\nDuZZ\r\n=z0zO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8f496d952596c10a7f293a68a71c2c2adeaca62e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T04:00:01.537Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"peerDependencies":{"@balena/jellyfish-action-library":"^15.1.37","@balena/jellyfish-plugin-default":"^20.0.16"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-8f496d952596c10a7f293a68a71c2c2adeaca62e_1630814609243_0.36342170552426367","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-0edcbd6e7835bce7b225d207bab82e0a451166dd":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-0edcbd6e7835bce7b225d207bab82e0a451166dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-0edcbd6e7835bce7b225d207bab82e0a451166dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6534b3d061ec05733127592d94f48fbcc59804f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-0edcbd6e7835bce7b225d207bab82e0a451166dd.tgz","fileCount":27,"integrity":"sha512-tRC4Jrym1HdfHUvphpWWnfSd/BJ07bhMAHOEXRjQsbhp2zGPwL1mzM/4ifC5pL3ZvH87C47dMw51I8NxIiM/sQ==","signatures":[{"sig":"MEYCIQD/tl0Ou8nfTaOtEU3Sv6qpraa/hdxgkDXkAuUgxaq9xgIhAMg7FYKS6RMUsUuipKeTJOcnLEPh+VLkqTBJMSmoidqa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156878,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNELeCRA9TVsSAnZWagAABwQP/A81bpFHxMO1JVfrFRQd\nn848rO6xFwznspKkqxMCZHX/fbsRSmlIG3gfCJiN38MDQpoj2qXDWxOUFxOW\ntrMNUyXNavFDRjtnC9jaRo5lZJwfglEwphYGiBrdrUd1QN2i0F7YNDfheLxb\nToIeYnbdGiq5m/KENMl+l/6KK9oMDvHZQqqmxdCtSNLQ/0xGs9Jc5emJ0OEQ\nf1lzYJhKjiGQQnLvKn6DxLTsnTd/h38kvB+OFRbT02D0hyHIO7WSopWF5pps\nlLEkkiAyehaxykoKspJpg6yVPVYqD4h+gK4CjQd8K5o8Av/LRM9krxEU9Wfg\nNPEuumiPYdsJMVMrj7qwK/GhFrcUSnOcCuWBjHBY76Gsb+HRHqVJFSaplNP/\nSy800yPYFQRTdyUYaOkGV/+/f82t2NqHbtqG1kt7+xSD3lqwUrd2Zx5nRvBY\nAaoPYfthRlje/NItPdf7uZFU9Cfpo2cCgzt2Mk46jCRt5Gcf/QSQ/4cXHnR1\n0VzE3xEfj6qBIRc3xDaQaZ7GXME8UFoMTweTf1DRECYEfu5aQStdmqYKQ4FS\nZIa0O8Qze+no6JJdqHCUPFrDG15h22a20O1MWPqNG9gKRiuws9u5Z7Xn+BTd\ncQErHgu/s7eSLk6fVJSbuicKnl3G+dETNMw42bOtpexn6EO75ciE5gqhrgFW\ny3VF\r\n=oMSK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0edcbd6e7835bce7b225d207bab82e0a451166dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T04:06:11.524Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-0edcbd6e7835bce7b225d207bab82e0a451166dd_1630814942051_0.7234983564068611","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.10-renovate-balena-jellyfish-core-5-x-874f01576bbebfe8d6d09dd47c7322a49cfa0e21":{"name":"@balena/jellyfish-test-harness","version":"6.1.10-renovate-balena-jellyfish-core-5-x-874f01576bbebfe8d6d09dd47c7322a49cfa0e21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.10-renovate-balena-jellyfish-core-5-x-874f01576bbebfe8d6d09dd47c7322a49cfa0e21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c3daa67c2eeef64a8b7272c63de8e0b82056d26","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.10-renovate-balena-jellyfish-core-5-x-874f01576bbebfe8d6d09dd47c7322a49cfa0e21.tgz","fileCount":24,"integrity":"sha512-ERxNtgTudILAsoyWzQYuuBi9skpybkCzFtIfanCThMRRP7KuLwRw14JPRNMn7b4/9Mxl1Qv282+SCd+sB+Wj1A==","signatures":[{"sig":"MEQCIGrA6ibKGV6ShM6FIHhPaEWcSJ1ULnNlL5k+tOJ7fgDRAiATWn9RopRrLh9wBofS/YD14pt6ylxk710H6eRlXhoYwQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJD+CRA9TVsSAnZWagAAHaYP/3SyvUouUUixszXpxVkQ\no8c+OGba+VmchdIZCIcXMC6qYbCVKRc1t0qUzoE1aGNGsJNQbpY5FYcixGnq\nztlMJZLhy79KWGXzZbGZjSGmn51WSDffCdUNeaWZgtbydkY0/yW+1+4EPy1C\ndPOUIA0O8JyL8fj62HJyjashpzSAsA6mQ/CTllaaZJOq6y47Bq2RMKePS1eJ\nltJjG5HnHL1V4g9bHapc3wOmNqWuViZyUTgwIhlu0PpLZEtMxfsw4NyCMOUE\n9lxjxtEkW8tXZjLIf8CQpuf1f6vmGhz4Mbk9EYeC1uLgR2vZJ5q3STOkdpJk\nBWSbpRJJTcK9yCjcbFJ34EnXAOdhNrGbs4yAMUVksez4VkygFb2XxGx1LBNo\nUjQS194+ddm5WkTL9b79xtDCqReEeC7EGtV7IB8mBx9pFxdIIttsv7QJ0Krj\nmtJBEu0KLmQ7o6p0dNVKvrkezcKAdt5vZmPO8RKs36Tf3s0FmR52wKVU6ekc\nIMgg23tkbwyq3ocwPx98Z//ou79DnrtOUGRH1e6KqvmokkdMM88fVO7U2yxQ\nNkQDBr2hrJO5DX3wkCc3hovCabbpIT2nPOI4PScEVH4wExce7kboZ6spkhv9\nqxcQKd4ssn4x1UEl7k7yMcf5JbpNvH1LepCmZqIXHgY/0cFRRQVeihDveK7S\naf9T\r\n=sQ6N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"874f01576bbebfe8d6d09dd47c7322a49cfa0e21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:38:23.810Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.2","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.10-renovate-balena-jellyfish-core-5-x-874f01576bbebfe8d6d09dd47c7322a49cfa0e21_1630834941999_0.2464299550396818","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.10-renovate-balena-jellyfish-types-1-x-61277055fd6db2de4a831afc2dbc46ce04baa7e9":{"name":"@balena/jellyfish-test-harness","version":"6.1.10-renovate-balena-jellyfish-types-1-x-61277055fd6db2de4a831afc2dbc46ce04baa7e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.10-renovate-balena-jellyfish-types-1-x-61277055fd6db2de4a831afc2dbc46ce04baa7e9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7d7bf59d2ba5540061e51a96c8934ad4e46c1828","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.10-renovate-balena-jellyfish-types-1-x-61277055fd6db2de4a831afc2dbc46ce04baa7e9.tgz","fileCount":24,"integrity":"sha512-5NlpSm1LveF3FfLG+SMYr1TbZ53eer4p+e3YulIyCPKtDElezfgSxMFGv9mel3ljr2b8dc4XubMW8/5Xz6yYCQ==","signatures":[{"sig":"MEQCIHjZFvpxjhRviEqG1KP5d+LJxrB8R6+L+9t5Uj+bFQqCAiAOUrryG+zpi9+Qr1yXFXhaTctsqxbACpiUAv/0PLMDnA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138235,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJEqCRA9TVsSAnZWagAATKoP/3a+0Mmnjc0jz8J52T68\nbsaG9JZxtpBzvsMKmrAc07mvYefy+/HG2Cxmrw307H6Q/9dYOh1mw3V96jrk\nFE5YKToqviCiI8E6ClVu7FiDroNIBVHRaoTmsIbe/f5N7Q5xxDI2ysCSn2+B\n8VYBTywz2GWKnqI9i7oEuIoeXMtqi0UQK4HpeL1+h9kaHG84NaY8yLdxoHus\nqo+dFEJU9PkNhcsu9rKNLtqQKZBDUOkL8soBpWfb+ydxWJCLsgAiaTO8uOjd\nlMqA4x/5xe3a5NnTwxwqhWeG40naGN46wg1rHtcfN5u5ZiIW0FuR7W0+mnFi\nwNlYMUIMT2HL6Mfvx2ONZk/+BywvH4c5udcsvHXQgXRzClXERdhP6ie2WLyA\nKvE7ZsBsrxwk9XWu2dWJO6AE5JEkCNmSy9hWBKKm4fOucmzzXfy9WvewMarU\n5+S/VQfRR4KAQMhRMKvcBuk5znNWKtY2EdYAPZ+8CCh9EQbjV5QTQUvgXY7/\nZQkyKopZxw6Khk1vYQWx4OQExQ7IvsShxy20cN7l5Zdf0WBvXGfe6Z7lEko6\njNfKy61nCe3KVkxWSe9a0YM0GnFUMJKoV4h8sJxIDZ9eDtfUBpvpyBiei6N0\npBe+6a6Jbvw+ngu338sjYaclroQ/iQDYnJ6o6Cb0cEc21eyefXIx8JeGlZ0s\nDzS/\r\n=4wYA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"61277055fd6db2de4a831afc2dbc46ce04baa7e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:38:50.892Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.10-renovate-balena-jellyfish-types-1-x-61277055fd6db2de4a831afc2dbc46ce04baa7e9_1630834986343_0.8010413266208201","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.10":{"name":"@balena/jellyfish-test-harness","version":"6.1.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7bae5158da3c00c4be30f99851d0e6d79c1194be","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.10.tgz","fileCount":24,"integrity":"sha512-Qc4cDaqcgTt9WXngPZKpuhVgVK1w2uWpzV5dZ7qGD2ji571388NS2kwQTiFmbVhrkDkLbdv2IGBKjNqKu0/M0w==","signatures":[{"sig":"MEUCIBGk3+8j/yCBFK7U+UIgaSuLxKHKW609NdSuShaRQ6DrAiEAszccCWlvkeToF8gVJR18dtqMZKLa1nMHutqzU0cUOek=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJHyCRA9TVsSAnZWagAAU4EP/jNQrLe7cfgA+vHXkkA/\nviMnGzjV1ZPvjtsIR1gLdcB6KsBhpVzedhUobh0UKwMIniz4zMpDf5AauKEd\n3DXztgHysRsEueVMNoi1rPp/FW46+2uoQ+dZ6pF/30e/59rLZk6YWViCf/1o\n5XeCAHO5Unp7DXtc8I+IolxGpUIpeLIRQRtOG75ARmBBpy7ecq2g0H3rlV7E\nFLS2Qx59zgITKI2leV58ScnwUJj+gDZGvN1rTrsQ5PzP0A2OwNsfL3ZWGLLS\nVRXNNXSwAfIipbAdGMpsstndqH6CA70w7ACoERPosQx6LCsfSXvu6UMm8V0G\nWxaNJhe8MIsGmJS9YXf4WglsIcnZIXLbIco2jSSnaS2JaFGYbwX+EqBQw5c1\nglo7fZdBPhvdtvfWu5DvQaE4PSVXDYWSSA2a1ptYVYnQjQkpkexKk+dX2Mgk\no6F/yzHwaTNtR4voJa0pTzqkplX3PpdD49NvFyUmQ3LV7aIjRe9gE1T0AmMJ\nfw3S+LC4uiYKBAebTiafC16nnuUahOiR7GnO4jJMMWbj7v9ugSjluoFXcTb1\n4v+oWXHzc63W/eLm6Ysu8AIq61fpA6lIRF/mjlzgcM4Wqnh+cfBm61vefEn+\nZmzD3IHGdTYL4rFZJfv5d90VBK4W/Njuqjxj+4JcHmpTVtak8npFfpvQlPcc\nqoa7\r\n=8WLJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dba3604027e5f0605c71b19dd528af72b4b6855f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:44:42.865Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.10_1630835186699_0.3650235269982951","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.10-renovate-balena-jellyfish-core-5-x-05db676c97cb95a7929e7df23798f999ad575d2e":{"name":"@balena/jellyfish-test-harness","version":"6.1.10-renovate-balena-jellyfish-core-5-x-05db676c97cb95a7929e7df23798f999ad575d2e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.10-renovate-balena-jellyfish-core-5-x-05db676c97cb95a7929e7df23798f999ad575d2e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"139b43e18d6383dbd360534d4a3a1aaf1f807947","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.10-renovate-balena-jellyfish-core-5-x-05db676c97cb95a7929e7df23798f999ad575d2e.tgz","fileCount":24,"integrity":"sha512-1dSw6DFI7zolm9j7PBJmMvjoA1QgIfulIs4HhSpGWzWV/3jriQZC6kstnzVgu3FeS8eEJzt5cgzxC2ArvPD3Vg==","signatures":[{"sig":"MEUCIChbIe9AE8rmC4ibNsnJFiPY71C8irl2JJ5A1XXody9GAiEA+OBXqdGH76ePNCaPYB87OmISfUBiEGPJVKaKGq8A4lc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138233,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJI4CRA9TVsSAnZWagAAAwUQAIJRv/hMNejSb5c33KnU\nLd9Hq5Qij7fH599Z10HhrGGxKmxqh/DHqYE/gVpovdQsO2ZIDP8ymZNh6hC8\ny0ckW1zLz5bf6FHHOC8pvUCZ0Tu+3MBVXi4Et/kDvar/UeW+13D4CjAChr1q\ni8giyhxB5LptIeal3TJOvZTSLodqFqNs9PwVX2+Z5Ahw6s1cNSxhqwOTTlT4\nwz7INrpSUWhISzqQ58ByBJnBsNeO0eDKZ/sn+gLPUmzxOf4A/kU4iHiNytQX\nnIWhZOcBC2lKqhH1tqJXP6GuxVj0ZCSMdjT1FMBOd5SDH88RPzclEfCGNXpp\nbD7O0J/UMJiy9bE9eFclGKHs8hSCeOsRkYRUQxKeq0nCel0Dy0EgEAMEp9rM\n/CrG1uZh5SqmkX8SMkaw7Gn+2sfkGa5Xbo/6BQzyu6cMnSwkXLbLNG5LMVB0\npxxATn+6hIokb4yBkVPYn9Ulsbe8rh1Wk8+4MGNYdO66p2J1jY8u08K1Vl91\nMvSriVewhagYJa5y6+nDZfaCZ9ZkI51J36owA35hbsx/BAZJGCQDmBTzkpJJ\nKNByByO/Nx/8+a+MOLaJbQsEeRAK5msTs60htc4YPwcC9Txf2cgFIIcRq+zF\ntHKpfqs9SfRFUFlClsZNFV5x1e4h/+YKt0yGow/l89SFTXFS8+KOudpnGUqe\nxrPu\r\n=qV6m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"05db676c97cb95a7929e7df23798f999ad575d2e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:43:44.105Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.0.1","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.10-renovate-balena-jellyfish-core-5-x-05db676c97cb95a7929e7df23798f999ad575d2e_1630835256659_0.7774010760460979","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.11-renovate-internal-patch-7bc541171c7fe5998a0d79a063554e2a1f2e2191":{"name":"@balena/jellyfish-test-harness","version":"6.1.11-renovate-internal-patch-7bc541171c7fe5998a0d79a063554e2a1f2e2191","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.11-renovate-internal-patch-7bc541171c7fe5998a0d79a063554e2a1f2e2191","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81f9cfa15089de1bf777755e1245f81cbb60ff3d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.11-renovate-internal-patch-7bc541171c7fe5998a0d79a063554e2a1f2e2191.tgz","fileCount":24,"integrity":"sha512-+uprltsquSIWTxMxNZjCisgQVzock4falinyHruGMUkblOu45+sIIG9vPWmy6REAfj8NhxBAKPhSG1jRl11AtQ==","signatures":[{"sig":"MEUCIEi/+vhMeOI8kCS3jNLMzi8RfjRBLYsHmzKaWaziZxm7AiEA1fyl5pbg72aaNY8i6OXPs+vk+QvHo01Yt3HvHP/ik/E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJL4CRA9TVsSAnZWagAAEcUP/1a3yjHzcwTEOSSVQhuw\nkcgsPT+tYLCcespttOtiH7ynzBLZWp5FQOEeMAGkwowpZF8AZZk0UUbEzMT6\nFlOHpAqg2a713l7F48dAEXOIIHdqjXYoz64Xz5ubYo1H6e73uEpLN9WeAkFt\nPUjW/Ick2W8azlnKRgxeYJvbJVPTe2KL+xahXjnkGHbp/zrWOVK43lkVfV7K\nCFJnQcH/haZSlKm7DbPIfDuc5eH0HQCPUCYvxSDaJCfe00a3RD/uUMitOmQ0\nhSAMBvGZFXuYpq3sBVpDBW+MmhnomkDUCB/dHxlR0ABkmVRLUAIZsxayCXg2\n/rieTyU+z/XnRk6pWDclvlJB5+bf8frSausEpjqcJlU7U0/9rmOjdSZmRMH5\nD9tiMlH+TIKPsW261MEe1szfX2RhnXj1C3mPWwO0HEEmcNBU/LsVdZ6kAfTh\niXr2IC88z7aRfqSxD/7fIzyexL7r4Z6E1Gzd2xbNo4evlUXulfvoq7ywVH8+\n2LMoITzN7sj98DVdWktNlTVi4g4ZdHkxDR1KO8p/klmmiT5kivmR9vFFox04\nvShkbGSBaxOB5xRxkXLnd5Bkqd2ta/StasyUGmyKVzH8vvApLdoA2ThafX8A\nHm+4Xr9IMXs5RelILgtwr0hkDYeEBxnFflqA6meaXk61RamBodNh3xcpAkR1\npuVu\r\n=mhsw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7bc541171c7fe5998a0d79a063554e2a1f2e2191","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:46:43.286Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.11-renovate-internal-patch-7bc541171c7fe5998a0d79a063554e2a1f2e2191_1630835447662_0.248375912030544","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.11-renovate-balena-jellyfish-core-5-x-0c301964e12bd7bdb9aebdb4402e3982387a4986":{"name":"@balena/jellyfish-test-harness","version":"6.1.11-renovate-balena-jellyfish-core-5-x-0c301964e12bd7bdb9aebdb4402e3982387a4986","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.11-renovate-balena-jellyfish-core-5-x-0c301964e12bd7bdb9aebdb4402e3982387a4986","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e9524e4075f7b115b381f2ebcb2bc2f074e4666","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.11-renovate-balena-jellyfish-core-5-x-0c301964e12bd7bdb9aebdb4402e3982387a4986.tgz","fileCount":24,"integrity":"sha512-PgQh6MBr7OowJjkFFOwBo23cDdpLK4/t6Z68NDK2EL/Fo623h3p8yR4Ky9oqrSvhD4S8TRFOt4m7ofGUB5UcSw==","signatures":[{"sig":"MEYCIQCg9nFM1qmNsmAo2SiUwnBSBx97jr2rIlAEUV/+sj/ATQIhAJzZ9aD0L2diIQ7SG0Qsent8N8w/K1AnZSf7uc0e/bZd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138337,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJM7CRA9TVsSAnZWagAA78kP/ioCoYLb7799QN6KxS9u\nEHjfjqdv0+x3lb/EFoQy5dgcsCTvA06B8MNUQBKaysBy7mEx7trPD4vfIHe3\n7IeG/1nsqnmqHClMY4x/cKZCK0nEx+9ruE5MvMJ7GQeXZdRUa8q0qQjBK6+j\nHH68GOeGJjG7XAwIdYDAonErSBITzcyJ03dAsCKc1Klw4ro1/7lH0saG6uWQ\nJBHJDsh8Uyz4sRLlsqqavqeEoeZ6wpRhnz2ESPhDyb+7EbyaDvR5uela/gH+\n9pjsUCjGjbjJdWijtGd2BaeSEMeFqS6Tn7nD+Tz3BINujJzOZykmLzN3z8++\npqTBE7L5KQ3eNVmFJ80yrnwmN5la6y2z+rsax32VhV+q+g04ni4/HZotdvpN\nXmUG5ZDHAlFhz7FyUxrO5Yu8KBNPfpJJ/X07s0wgQg3lbFLnEh+6k//49lJ+\nV8bW+nvbrHPyE9mmE/xw/5+QPZpO7oUtlqd2EJYLqCaOzuhVX1a3nMyhN/So\nVtOg+KtFpiey//RL0ho6x1myVaRTJjL42z+hIrJxJKzFO8RJCfuVomD+h2UT\n0Aj3gUCz/rrefN1PBbPODpbFrWPrqTfNU2QG2wctvlrh9mkOOOex+Wpb9X3n\nyNiL4FS0ZbSJKGQL+/mJkSaFKZkC87adfvphArOZCQmEZajGTG2kKng8DE7t\n9+Xb\r\n=D5rJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c301964e12bd7bdb9aebdb4402e3982387a4986","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:48:32.410Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^4.4.0","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.11-renovate-balena-jellyfish-core-5-x-0c301964e12bd7bdb9aebdb4402e3982387a4986_1630835515171_0.6410528261681068","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.11-renovate-balena-jellyfish-environment-5-x-8a53a7514acb1aa43c68d22124fa51bd46cff29a":{"name":"@balena/jellyfish-test-harness","version":"6.1.11-renovate-balena-jellyfish-environment-5-x-8a53a7514acb1aa43c68d22124fa51bd46cff29a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.11-renovate-balena-jellyfish-environment-5-x-8a53a7514acb1aa43c68d22124fa51bd46cff29a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7dc4b6eb001d099931f32213252a183e62887de","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.11-renovate-balena-jellyfish-environment-5-x-8a53a7514acb1aa43c68d22124fa51bd46cff29a.tgz","fileCount":24,"integrity":"sha512-jnqfElp1V4h31wCSw3Z+ck0cnMwC6FYyw3/xq6g7KBbKUuoH1uPe1dpKWM3GNPkArkewNkpF2AvwB513DOFLBA==","signatures":[{"sig":"MEYCIQDUPBEJs1yUqqazubzVLpO9bFnSJCgAnOZoojgzttosIQIhAK+c4BLm5Xu/m+boPEcQ15vCaoUSdHsNXBBokjs9FRy9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138347,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJRhCRA9TVsSAnZWagAAzeAP/R7mvsNYxogiJAD6IwHl\nVip5KJ9M/rHA+o7/lonaeVg0w1OihJ/YEZ/G+bKFhZRhpf+rXNw1I7Szjm+J\nUBgCzxv4Ea+T5uU80iQi8cwg2fszr8Yozib2BAUXhGdT9QeUy98M0xJC+o2V\nMLuz+w5IcOkM0/vwQBSY5NNFBYLkv6qcXnhKzEQnCNwsZchUSSWXPXpBe/cU\nEMwZd1iSfRrsjD7FrnDKFXk46Y0MsyRGrdXAl+j3bcTJ9h8pIQbO7gw3zUJ+\njOqoTDFx9RwWN/YCevL9Mbvyp66XjhFdB3Xkey03o6K+E8Z0jpLzj+BGu6+o\n6+ekX198qx7onNkvbhmEy/TThEujxWC5Y0NeGrvil6dQva/KbBG+k6FZsxoj\nO3AW6aMUo95lP70WerHhgndaiVP9QH2lOFe8QfenP7S+2SGK/iZoAJp7uAmx\njkRKUXLwlbTOpHiu6RO1HuK4fc1RzFCv1BdtIUSEfK+ZNQwMBOVx65hXM14n\naG25jt6tjg1iHJlTe0PSS9aofx8VD8266Nv5SYuL+MhLGJk1VcE662LsIde1\nTVbTliP378r3rboZctEqlA4STWWQHFgJKko4aivFXMoGGNVJIaKezCO7ngr4\ncsy4MK3gTZNYJMQ3p/uxS1LOqCyYruN2phWokxHTpR6QDhBS0D9XY0o7Zcfu\nq7zx\r\n=m7ex\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8a53a7514acb1aa43c68d22124fa51bd46cff29a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T09:51:56.135Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.11-renovate-balena-jellyfish-environment-5-x-8a53a7514acb1aa43c68d22124fa51bd46cff29a_1630835809841_0.4957445715496167","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.11":{"name":"@balena/jellyfish-test-harness","version":"6.1.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2bb4e5d0546de2e212b286bbc3700fc242ddf685","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.11.tgz","fileCount":24,"integrity":"sha512-VflAvakqV9o7o6yXyYBhTl3nTKF8OBdt2xP6NU3M+r0Vs0OvQLHbMBTKUJjX4XTbBSBiSkfGxjH59VHLMsxCcw==","signatures":[{"sig":"MEYCIQCDSt1zYwxQSlegXPQZDnTmIsfxuD7XR2kMdDZP4EtxtAIhAJtXU7cL6FTjVEbnqkdG6gePmUftnUTPMfjKdPXBshuY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJezCRA9TVsSAnZWagAAIGcP+QCXcQr62QBWC8Z2N4uH\nbWb3Cx91j0w2TzOpKtCmJz3fciyik/QBOhDL92KEDCM4IqHyX1fXshUMVY5W\nWmTsTjmf77EcP4HMzC+d2syuNiceuVUyBTX2IbYh8VIy5USaL7XMvraA4PQz\nmWhtc9iTo5ZJn4LWMhaYqxMp1KmvinWWbkx/EunfYEl/XlNocJaWtkHFc+AF\ndfqdqXE2iEbu89MJMJJQ9voDIHiWHR+AsChWefcrhFexsfe2aQ4ZEpS8DOLB\nUZuunT2ftV3TuILS/nYJ+9V4Sn+qohqavXpT/X2CZXF9HoixP1vz6+BdOSES\nLkz13hJgn3OYJAPR/VgBpxUZ/Gpy+8LRdu0w3GkOrMLosncGb7F/Mwn/Tshc\nCPJu6HfSx8lfBl3dl2q2Kuwv2qEqGvP7OTtJ5OB8/USO7lDJzOEdXo3VY9gz\n4AJNGWc9eAe4TrVzqVJRIDTmUy+q9M9X/UztVsmFOkf3JkWqzeKY9Xqj0gUe\nL1AMqxC0z4CrGhZBpWgtHWI0NJ5fGaqRX+Pe+J0Uv0vgdkrKNAyqMBAvWlb9\npqlnTReXjRmXZpsntfsFch8kMmMbo+LJ7d/IuZqWDDTTCqZrL/wurbDzdPTF\nYf69TPkkcfQv3GwB7Rddn6MNnN0Yav7IwkXwQ2MraOcqE2ugnz/g2Y0jVN0+\nOmwL\r\n=LnZl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9482cca9bc6555b810c07651bbae065e9a82ee20","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T10:08:46.215Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.11_1630836659156_0.4018869049111222","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.12-renovate-internal-patch-0150315bac6fef2f3f7e4068199bee8735263518":{"name":"@balena/jellyfish-test-harness","version":"6.1.12-renovate-internal-patch-0150315bac6fef2f3f7e4068199bee8735263518","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.12-renovate-internal-patch-0150315bac6fef2f3f7e4068199bee8735263518","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"af315f14adc438656db076e28767c0944a152457","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.12-renovate-internal-patch-0150315bac6fef2f3f7e4068199bee8735263518.tgz","fileCount":24,"integrity":"sha512-ZFOVaSt0MOeea2w0j76Uv9eDLpylG+4sZksAUN9FOs6u+nImMyfo288jt2lrvK+t9WNL/a/JueKpKo3qT/uXmQ==","signatures":[{"sig":"MEUCIQDiqD9YY31qARROW7ZZtOCGPMvQ4MijeRzE/Mffm7TrFQIgQL2B/0hU1xVmlZ+t8E09bfSkAtsnMu9jIBu9iWeEVEw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJijCRA9TVsSAnZWagAAuNcP/3iRzP8TivGiQKq5segI\nfwxXzNZ8CaytPoIyObFzCg/fe+8eVNy02ptH7+Qmr4kFzD6QTKXWZrF48nYm\n1xZbVgS+upYctcffNjIAJgHq8iW0xrgK8RKgZoHpalAOOM1+Q7XswqZNnxQP\niWhF0cjWX6/KsMfUeOFI2xXQPAh6DnPuxTh5w05TKB50uvd71l4q7F505+sr\nV5i6HqPoDezvii3cnC30WSz0KOVhWs9VuHheO+sxY+TwHgwOzgNtam9HGQY1\nPlj8r1ZWLvJdA0n3WnV71ivPhIcPyEqKdbSNY3U2tsWvpLXynPcM81SwMWnu\nyMhyYwqt+2qFWsbEAaURDnWm2Wykj2p7Z8LdxFPtzIUCFoOp4i4D6FSLkttC\nUCdW2adjJdHTIX8MKR7KN6doPFLlpZ2OOb7CgMhWWlXdL1x6pw+zDNjSs8cH\nohAXs3mPZIGk7XJrbXvA3qelNnVvu+aS9xlFt8Xm/sw9AUUE/2usdtDSe5Pd\nU0desD9RGic9R8faauMXPvXiVl3Ehsawsw0pU6fIWBFL0uJUBaAlnGhV00h+\nvLD7XTxNZs7VoX4/Y3FezWY/LzPpWFejNJvEZLvZReGvWbhF6+yiX5R+Y8Of\n04IT6lh0Z5IqkaT5tajAVvL8HBGVue3Pz1ymQ+slIk2SdPbdepg31/dVpfo2\nivJ5\r\n=9btR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0150315bac6fef2f3f7e4068199bee8735263518","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T10:12:42.766Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.12-renovate-internal-patch-0150315bac6fef2f3f7e4068199bee8735263518_1630836899564_0.7536577143867436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.12-renovate-balena-jellyfish-core-5-x-177b00bb2d4ffcccf3498fa3edeb6a9e098f0841":{"name":"@balena/jellyfish-test-harness","version":"6.1.12-renovate-balena-jellyfish-core-5-x-177b00bb2d4ffcccf3498fa3edeb6a9e098f0841","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.12-renovate-balena-jellyfish-core-5-x-177b00bb2d4ffcccf3498fa3edeb6a9e098f0841","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8331e4b20b976f4becc8ca9fa28297cf8979c70a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.12-renovate-balena-jellyfish-core-5-x-177b00bb2d4ffcccf3498fa3edeb6a9e098f0841.tgz","fileCount":24,"integrity":"sha512-s1Y12HxExniBt4N9ymb3hYeHgFX5cQRY+NptODQ/sHUlIYpMo6bbAuwOo9if8gx3oUSlkmeq7yTzufuM9DXJVg==","signatures":[{"sig":"MEUCIQDZenC9E41m76Lcw0GTAIY6zNCoEH0s81ZSj6Gm3NDW3gIgEcKW0YVZ2crqBnP3bhkLN1aAY8WH5U/+LG47pT12YLY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138443,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJloCRA9TVsSAnZWagAAFDEQAIkAlwAsRm4mEn7ZiLfq\n2AvapH1RyIIZ8qdIT9k2pItY96VycdVL3DLaUuHpj4p2R/Rb0CVc801ELSym\n5Rtn3eCgbzrRvSzhJYENz4qMU1haWdcl/ymwUzc0u2QMqmh07E4N7ozZImLQ\nrERQdI/2TfdwM+lqtArJBgsQrIghNykxpFlg1/Y/vAFb1XR63NgcfFlJcNnE\nQb4jINmSJutNWUe4EXyolR9xTJoq1M6gwJ652DUAc2D3MGM/XzP8PJ4nyMfO\n1LKBFui9Y14jB5tv3tykcHWBfSZLrCW0EHEHzwAuV4drfQ9xD3w0Wwhlt5qy\nFGM/GJbJKko97U2933FXJlEydoObTD5QF+l2lAvfbNL/YdbARw+QMa7cyVTH\nOzsBjUQQjHmFlrjEFvW00DwY6pWJiqthLc8rL5l3kt1mbN5ftvx0gkW7n8C6\nJ0FacAdIoWIHcoZtTYCp1qiMKKQ4Z/lOv+HyuUO1teCIHhyOA5REIdM3XCdr\nzlYt45zpzgZ2z3eGkpWxOFU5MGHdWAkd7pnDaX6XypLyxj3qAUznDLIBxNXK\n0CI50Cx5IvZgfNuXYYuGBAni8jZZtr5U/yZ6BpRFyyR0qRfKOemMfqZOsc3O\niUXjsxX6Y0Yntheld64vwWBBTXL6g/rDF7f0Yqslj05BDEY0App/JN8T630x\nRCzZ\r\n=Q0fE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"177b00bb2d4ffcccf3498fa3edeb6a9e098f0841","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T10:14:51.137Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.18","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.12-renovate-balena-jellyfish-core-5-x-177b00bb2d4ffcccf3498fa3edeb6a9e098f0841_1630837096519_0.8249749256718821","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.12":{"name":"@balena/jellyfish-test-harness","version":"6.1.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"676dc936a6ec5e3c97f7d9d76628a6bc6118fc8b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.12.tgz","fileCount":24,"integrity":"sha512-jaSTnV8QPKVBXPSAeZcBND2w9Seepe+uDdCvtfJ5JvX7g9dzs5gd6HLatMARNd+8qz8CH3d2jp3rW/aoY1B5Vw==","signatures":[{"sig":"MEUCIQDBH/TRcTPp63l/JzNrfbV8LCBLg522YC3TmVtko7jpdQIgeHp1ZtP7aTEMBtTrXE2GFnI9hBQZ3U85KytqLjG9F44=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJo7CRA9TVsSAnZWagAAoBoP/iD9CLOzKOFub0NT/1Nk\nuY9XWMpMOr9LlblaHoCaIFjSt8BIW6+VZmvEJ37PSjwkamhoJtyaWeNqWGas\n9dH9Jw4rDxLKbp+ZVvhuprEQ46XUYN5ZcOxaLasMB6URd2g8ALW+GZHYVbSo\nq+cquD85ixJZnx3CZuCVooZu2OFCXJoK26Lco1l2QBvpD8cri3vIObMPHNY2\nixVi0j6v6u1v5m+e8nayD4dHUXERUIgRi95xxp+YD4As6qqIg08DjBHwpsbX\nwlhqACYf2eqvos5kXYCUldtc7g2X1K4CoErxtcZNh/B+3ndpg5602DB5qUyL\ny63NXyrr62I8jNPQUp0CRG4PwoCJrF+8VLzB0vEuF91aVdYvI8rn2t+WEZwZ\nLCC42RlunJX7yM6R/1LMg/410+CBRqKh3veigkVDHSOEQa7KA2HkcsHZLP+h\n4VOD4Z+CHl1/JLX0L17PFcueXm95S+Lg5KLQ6w/ltJs/waaXMOxSIk/OcoDa\nuxydj7OqWFVqd5WXB2v20jqnupySbV/PeACGL/iQ8IF8+rzBsrDaDZr0qjyx\ny5UmDOksKtVx4HsrLtmNpuZURTdZjXXBg9hgxJQvN84Ts7U1FSdTryFLJwio\naq1l7C9yN3CFxpV7UU5D6uxVKxvRcE+PCO/UqdFKC0Wy1Psu76G92WlAUurt\nVkVX\r\n=hrzF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2e1f11e6cc6847c51a67b31cf7d5615abc118eff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T10:19:54.651Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.5.1","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.12_1630837306871_0.6605439647877618","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.13-renovate-balena-jellyfish-core-5-x-848cefa76847215f5b33e12945146ae4b1ede04c":{"name":"@balena/jellyfish-test-harness","version":"6.1.13-renovate-balena-jellyfish-core-5-x-848cefa76847215f5b33e12945146ae4b1ede04c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.13-renovate-balena-jellyfish-core-5-x-848cefa76847215f5b33e12945146ae4b1ede04c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a20894eef0141d5b851931e29cbaa46949bd7128","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.13-renovate-balena-jellyfish-core-5-x-848cefa76847215f5b33e12945146ae4b1ede04c.tgz","fileCount":24,"integrity":"sha512-0EAjSDzLGvZreqdU2oo2cRhCrpGRckd8IcZOmyKEjzOGe/uiHBPMX05rhx3cfmrOIFylI0h7gZ6k9YsqnV8wtQ==","signatures":[{"sig":"MEYCIQCd82zRGX+Q7EF34qCzH1Z4GPdBuRgCmk6burEHdi7tFQIhANVkQokyyilhXjbYRVF2HPFz5dw6Y7jNfdmwxqGhm8kY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNJtDCRA9TVsSAnZWagAAlS8P/iA/Z9Yal5stf3AsjWkw\ntphOJ//zmgz/MAmjvULvy+MpFQF/d6WJQBqqPjMIvl9lz6InprFQyCDiRrIO\n7dvtxZDVbUfCjJZqvtDPoZMyuovMTELrm3Ravizw+jZxOlU3PmLMsd7GRvqf\njZuQ8daVjpeybndHy8QMjSFESewNXKIgzkkx9QJphgQrYWSe9evuNj5UqOus\n/1R0ebxIUqNEuKim2afXO2E/EpSqYLGKdABAjNciMkpMYIrSlwUuDQhIA3uf\nggh30vegNkUng2Cp2TgX4Vk8ZgesDW008tUjQYy/pyBHmd+/zil9w2lb6VPc\nRRBIfrFpCeUEz2G9NkB29WUe4lEeRUpnlyx2BLME/WlpjvKkcz+HFbPXG6F8\ngAkC9SOVj21d2xGwMpDOVRQDD2oA6tZY+Hx1UUl1VhhSof8jpillsu4ddk6S\n6k8l2GIc//B3Q2Rn0cD2hyWAxJEwG5dNAEK4yHGpR+Lfw+8mmtKiMJImslSP\n9sXSxcTTuPALbY5xuwdTNEhu+PrsdV+aHerThX1d1r65oPRQ0aOxLoTo9CWR\n90KA2aceM2K+YE+C4RHu39hVsaiM4z7n4PyYglK38Kotbn6bhU1USQyISi+W\nuufSFtswmQXvEdK/7pzZEDcvA1/zI4q22Wt7AudvrvVtVHrWxVbukV0MXkOb\n+NEp\r\n=CfT4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"848cefa76847215f5b33e12945146ae4b1ede04c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T10:22:04.111Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.13-renovate-balena-jellyfish-core-5-x-848cefa76847215f5b33e12945146ae4b1ede04c_1630837571206_0.28801953497277477","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.13":{"name":"@balena/jellyfish-test-harness","version":"6.1.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.13","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ec62d4ea8a1591bd9377f72b76366c10ee16d6d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.13.tgz","fileCount":24,"integrity":"sha512-i+kINrXy+TwS5hhmxYPZOQuUa5xqSAHIR7NNI+z++8sLaKu57XAN4Yn986NrVsF5ydfVSYSuX1ryavhGIxfGvA==","signatures":[{"sig":"MEQCIDAUmUJXS/LR/YmWSNV1gIehR+YQ0F6uqmQNkqVMlwLXAiAGo28DGc13vcquc/gVmzEGrhVdcG9fVVKmCN3+PNRkJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138441,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNLMUCRA9TVsSAnZWagAAEnsP/1bbX5cGEQaaBP0T+D5i\npINpogImpwAVefVCGNUIjBOayrn3l3mA0H9GsHfI2YVhRjO9sdPXDVbOo3IG\nKgqB6WE21C+GB2jRLBJythrrgw78s6olW/QId38I3fHZV4iI/VZvIt1U4oh9\nAFg1NbbWKfUYV4NVzA+lsWBKwm+1jHngGJ3GkwSSctXaA+QDp3M36d+lfY9z\nFXGBxe/NEjnvr6odM1xK/RY31wM26qHVG09yUl2JyMeXNs2+dr601K7+FPfv\nj0cqGq5i0cApZbKuxi4IMcYqS5wURvJjD5PJnudcfvElKB+8F156hkAsY5P+\njry3K45+orP2joFIzyKhv9D1Nl+NXd37FKoWmPF+2JGPDCTNn3HSxj5q5i+K\nE+KzNVfLFIZPWoy94c9hWBsj+wfPsDNbTi7lilWo8lrAHvjhZKDgtK/5q0lF\nMCq6zsqSFxItnrwzyyO2h5d6PRAMSCWgYq+g+K5G6DFSmaAq2EI8+xb+lVGc\nU7fBRE30VgEGrXCFx3VjxwSFAoE5jPj9jlgZqRTqB6ZLhir7Ln6jy8qEYThK\nCl8sz6J7b2NTiGSpZcYVAV5nJVNsQkrwYSfZ/labRf2Zdj4OELz2JmpQKX9I\nSnadnMiQrYeg/co2qi6mAO7jRmy23NNIeLVwuW1Brl9SL99/aN8T7z5SDyiH\nFTap\r\n=tJ5w\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0e36f89c1065fd54f8a4b8e40754b579750a74af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T12:05:42.586Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.260","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.13_1630843668432_0.3514801159490659","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.13-renovate-internal-patch-255820da9995c57ff57283f05f1c616d32903dbe":{"name":"@balena/jellyfish-test-harness","version":"6.1.13-renovate-internal-patch-255820da9995c57ff57283f05f1c616d32903dbe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.13-renovate-internal-patch-255820da9995c57ff57283f05f1c616d32903dbe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f94a2316c5eb354970d57a1a8ce88c951c6a36da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.13-renovate-internal-patch-255820da9995c57ff57283f05f1c616d32903dbe.tgz","fileCount":24,"integrity":"sha512-6M/1lmLwHurWU1FZiGDY1m0EoG0S/AB3Pdm2MM1nGWGiqWO6E399lTkqIvfNt0fptsU0DUfr7KV0QTTz4u5rJQ==","signatures":[{"sig":"MEQCIF8TO6UAldIJMHosBIoe/6DoADyH9E6MfXliUGY7Fm8tAiBlaYsV0D7iQlHb1LITINxJEarkxOXIaBmLsbXDnromsg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138584,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNLM7CRA9TVsSAnZWagAAa4EP/RR+yhnPZXhvSQO7s1cm\nSPD5RhQEcYojRPVZrsUPM1o98MFbIm9yY75mGBylns+Sh0pC7d5f/luNh2z8\nHnQ50pfAk4bvADAOMSXr99eCLFDCajFlTUehJgRFyY/P/EkBJ8CI61Lr+ToQ\nFBArRVQ0mgZs/D3kPBg21nR0eJIam5Sv2/gw7si7hUBsRVBumWteAseuNVjK\nkz7yoJUavqGG1KPGbp47hxDSwZQlMdyfS1bmD45/m++SSPjZJKmZjRIxA91u\ngy+5ljSAdUuAIUtLtEJK+iB0MC7gxi3L+L9ouoHFDjPrAasVGLwEh1Ti2hv4\nEGUxqV4xvIj2OmDVs2D9+DpSo7elhY3LVDj21vHDJ8+PLY1QalCk+svbm5wk\nZzPHted9fC+yDqE0riGO+4fSUgrA0fKCCQBHMkxIne/LDCAocnVckmTE177V\n72GRXVUopHabsQYcm6P+uQpikpWZZLTFcDcc7eDew60TdrJijA3mbUzIVWE/\n161OTgYjP9SpsBaESWAdJgnlXC5O0/xOHkx00M9vsd8DbPV0dfdbLM83Llsp\nMF3kRghyygXRB1k4TyRdP7rA4Zc2hM6ZwVONT2chztsvtmVKRMFD85jrpcd2\n2P9xocEg9vz+Lygi1d3/CiLEXOlIppXpX89BvoSWPbMUVfrCOK7RtWGauj8R\nE/ZS\r\n=Fb/V\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"255820da9995c57ff57283f05f1c616d32903dbe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T12:05:01.081Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.13-renovate-internal-patch-255820da9995c57ff57283f05f1c616d32903dbe_1630843706880_0.15551003598284718","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.14-renovate-internal-patch-a8cce6a64c35d26c2bc3217c95857e5736aeb2e7":{"name":"@balena/jellyfish-test-harness","version":"6.1.14-renovate-internal-patch-a8cce6a64c35d26c2bc3217c95857e5736aeb2e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.14-renovate-internal-patch-a8cce6a64c35d26c2bc3217c95857e5736aeb2e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e519de0bc601f4c738139bad470a5950b201871c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.14-renovate-internal-patch-a8cce6a64c35d26c2bc3217c95857e5736aeb2e7.tgz","fileCount":24,"integrity":"sha512-4r4DlLLYys4wN/RA3zbdLTrvspdEzMwg6AhQfMJGWqGNKzHiUjuHieokfeHNvW3SjL8JWUeD6laupof+wklGhQ==","signatures":[{"sig":"MEUCIQDI8i54hvgyesnng7EI9k+N4y2b3n6fj2VwZ1k8jkwnXQIgYgf3xLjQjwRZAhrNcDXGLzCUyCIB4SBqMTN6/IQ4BC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138612,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNLO0CRA9TVsSAnZWagAA0zgP/2u3m518sGS/ZP1h9ZKV\nxsUwvoME6Z7x2XrglMOMmJTVidNQwz1vKfQ3/3TybZDNeZCxQAPaWAp/G+kr\nOIv22t6wqXryLry9JV0eM3aXrT/Eq0hTD4dHc/JFTE0wFlPxcRvL70+SHwFP\n2+euiacJNnWM6JC6bYPsQipXtAUSi33csHhfTrBhgvmiMeIXcu47G/AIQBwm\ngAsV0/ty5XwkrXzUvaUk7sAaCTW0GvKC6ZQ2RV5AqIfKWum1cttqrjVmScDv\nBI0iwO5/zWfuNLEtxYY5/ymZ75tVnqHrBSLuVaenNcz1irJo0r47GKXj3UAQ\nYqOoJe1aYSs8c5XMXiqoyRpb3U1f1+Sj97lu0k2sNn5RP7sfhQPfeQ93XkaT\nIHoIS+dZO3viZuO+vOaGrUlZjuKWXKL0lsXLRHcn8unspRzTwGNncicen5tf\n41H0cNyQ5Idg/WEFDm8SmM3YzgHyPB94RXqL8lYwmv9qYVNamn1mObUu0c3k\nRAjqb3jlkr4Szfyq/vb+wee6m0K03EUOIKaYirUDvOHKyp+juo78qsVcifIt\nr8IN8fJP9/wuhzY7wIt3kMI4gYouoeMYHiBHnQCGuzt0Ey1RYHhQ6OnDAIj3\ns9Z+rVDsCpmFq27EU/ru0/Kj+Xy/Q/IkQMjvc0NEZctYbRzMqMfJP/EAAwX+\nAizf\r\n=muAB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a8cce6a64c35d26c2bc3217c95857e5736aeb2e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T12:07:22.278Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.14-renovate-internal-patch-a8cce6a64c35d26c2bc3217c95857e5736aeb2e7_1630843828324_0.7159738381191951","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.1.14":{"name":"@balena/jellyfish-test-harness","version":"6.1.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.1.14","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f898a200b7cd4de95a1ca6c8d2a73ec493dc232","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.1.14.tgz","fileCount":24,"integrity":"sha512-kDilwygx04O2kcf815loljNDJ1Ef5NCkONNO+bXV6d+Fb2l70PjFTgfpM+zfD3PHlMHBKowbQEYOwnKf0cXKyA==","signatures":[{"sig":"MEUCIEn/cf4j0RRVfHmgkK8CMl/IxWZ7d45ez4BbW66fJ2exAiEAmyBWU7igmteAeNQBju1Z3tcan6PCtS47xJQl9S8v3dM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":138547,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNLVECRA9TVsSAnZWagAAlWEQAIu5A+o6zNKS6l1EtC2y\n5T0hQA3L86h5/MBGf/DdEbnClWKLWu+trgCQPT4F0oE9hIYew/qvkY0dI3y7\nSQVkEug87McPFXSsLQbyYWhRQ7tBxb9Q9evSh1a82NbPjdoN1xzFwLZp0vIG\naZhKyVTcTzq3IPiwPeU1Cz1xvcWIQiG3y2AYt9Q7dMaNsjhTOYEW+w0vxChw\niGD3J5WwgRroVtl7uQEa2E3l62xHO8huJ1Wjgber0zmG0x9XLDbvuHEbc+Hq\n+wYoDZEeUr5+QDREQ+6j+MYaDLW3Y+KCJnz6GnnCtJ9r91OiGjx+7xxA0+la\nypzdRyXmgDCwBI1HjCzS3Ymn4AaT2jSstUh8zZXCrfv1vgqOX1m6c4DULbjh\n6oMvuHmTYjnVcuxE+FHzgt3iXdKCeoYn3YUEj0iY4UEqsBmdUkAfOxScnGuu\nECLo1JUvYSGh0F+03sfNMYvBC7APsCJD05NiepMmfddZZt0Us57v4BkhhnSn\ndmYWjWvSO5HfebHOusGynKk/I3RLaXsUa8eshRTrbCyZyJN4D9rcail3m8Lt\nqIHMqYuMC/9wVudv/NIBFQjRQPsM0ToxmUJ5gzCjcIwb13897oyqe7tiZO8C\nz10WyX7AT8GFYgVHZ1xo+UjgFdhM7cEgXkRGbSihAmyVN0TcvJw/ReuOBUEv\npimx\r\n=CbI5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f40e029e7243be284cb7adc9acf4e59454dd0dc1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T12:15:04.566Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.1.14_1630844228008_0.8656992364671972","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-72be5444c2901a833ba8b241701bb78f087309ba":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-72be5444c2901a833ba8b241701bb78f087309ba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-72be5444c2901a833ba8b241701bb78f087309ba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6a287154b32e5bd886c39dfe2c2ab313ef7f9aaa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-72be5444c2901a833ba8b241701bb78f087309ba.tgz","fileCount":27,"integrity":"sha512-bF7MAxyAAkAZhp4Zy6VJw9j3V2SRwbyuEp07HG5dCNU1M9rLuuyFeqZ1pCcYi4s3AQgLEmAIfYNvCdjehmUdkg==","signatures":[{"sig":"MEUCICNzdA9y+oaFPPJa3UCvSFJBQk8i0hrQx8j/f4po5bWlAiEAr8GUlFN4Mi1W6a6Orh0gEFCWSUjsReqjLRhCwfROPcg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNLgQCRA9TVsSAnZWagAAGcwP/j8SgFtq4Zh0hb0w8H4y\nLhBimxlz+ykpNQ5FY8o2TZGeX4H77rZu4gt+wdeEcUb29B5YC7O+yxKjqQbT\nHH3L4dLF4XCpH1ms3gjtf5ctYS8IvDUIjhUQQTfYM9LReUYr92kldurS2Whv\nnEja1mY1wQ6GGBDpdkQcEPJ0bitzkUl0kvPYSDN9JwYN2tlGonzAaxi/N9yh\n4Lv/dyYgpTq/C2CLHmyfVRWezJGQpStz8Pl3L/JmcnBNMEt1G/NL6jsCa0Ry\n54R5gX/MHk+kCptc/zTSpFncaiohfCSQJNQM3tpeUkq6w6Neb42kU8O9SMsj\nsePoakKyC1nWVHkc3C+cD/LtLTvFDqdF+ZL3OQCVy8h8ic9B+nwN63hOWzHo\nb2kdr6RH357pd30edohZDWc2ySMpVKEurQmQk/GoxHKxwTzbYngLR9Ucp0vi\nUTNSj1HOcmoe3f9S1EjzDS9AA3XmJrmbn9SwJTy8xBZZd1bevfxHH2Jm75+Y\nZG5D1aZ1c3h4rwZkE33hmBC4j84DmkKkDSfd8Iz3PS1TUnnD5wbNCm1SJGSq\nsWuhEjROB7I/x2vbC9v+9ea6oxj89UNwjb67+xRXI09BDTIGMFUJrXo9fBD0\nGNsWsQhA/WMGmWXnihlD3vAQ++88CbjDYXokF4EdwXCAiRqmil8AKJRLDx9n\nF4Zc\r\n=KNtX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72be5444c2901a833ba8b241701bb78f087309ba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T12:25:51.418Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-72be5444c2901a833ba8b241701bb78f087309ba_1630844944124_0.4350361486594787","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-889c4874457c23c08868ba9ab86f322fbc0fb9b5":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-889c4874457c23c08868ba9ab86f322fbc0fb9b5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-889c4874457c23c08868ba9ab86f322fbc0fb9b5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56a5a001fa6e0d9ead5aeb677ecabf137a129887","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-889c4874457c23c08868ba9ab86f322fbc0fb9b5.tgz","fileCount":27,"integrity":"sha512-I/zrdKSh/G6nPP+YGSfFU1DobhOVrvfhM7pE1ScRTkQKcJLLN2Vp+z6J3lFUCnsa3EfLwoS2m5XtxX9G7zdc5w==","signatures":[{"sig":"MEQCIE0FkS0uwUmv47fj+tDki/6OKaEe7roCCR0EZUL1+Yj8AiBUQPvDxfe7oICcETEj5lTSymgB2yBGrToYVZCLuEF+TQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157460,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNNhVCRA9TVsSAnZWagAA/EcP/jtZlwxB7Et0T2luM5AG\nvbyi7s5GZI1tuHCJpYCFeVspEpoNJ6T01i+U21h4pBNdB37rA/5NMD7pgEBT\nosZ6KxX750WBjqY9iTsPtcRpzXWV7Y26P2gbuA8u85pnnJqByss9GYppIXAC\nVbZjVkYgwRgMFwLwS9HshiuHjoXxvwhv0qg/w3nEd+bn0upmUnW4rpygT4mB\nd5LVUFQIlzu1/fjHYWgTVEVv+YPjzBhmYe1YRzvdp9PZLbv/SyfU9vED1iMK\n1t2h5CsS0TVvk/UkcQJXbLzIhjaPLY2OdC8uqy4A3Yh1sO/ybFtiMGE7vKB2\n+fpij1BVVXTxSHIIZLR8jR/6doWUsZkRtXZHGZewsTCRrTSN189gCTkFjvSS\n818SwdWBRzx7E9MKwpbjfG8ObQoBIkqilXnLBcx9QweXHgeu9x4RdvR61yg2\n1+lf4VXxZGRpikbHuaYvH4gEsTHQsquG7+aEtw9KNKpvSWIOLEyeIJ8h+mb+\nE6HeFasBcG4Z3hsMb1Zl8vWkCAo3Ek6DWy6PGR0Dg1hQtEM3TuQfvGnlLBCd\nOTGi4+ZNqiOaXD7g5bPCpTF9w+KEiyDlAcyE80tWLdldiKykJfw8uWdStlGV\nQD+Gg9UPDzUoCcqTX6gVy2t8CLSjZ0hsLkBGhh7Nt3mPSbGqFL2FAzSP/74h\nzmXb\r\n=k+id\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"889c4874457c23c08868ba9ab86f322fbc0fb9b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T14:43:31.125Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-889c4874457c23c08868ba9ab86f322fbc0fb9b5_1630853205182_0.2802918155732532","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-d580fdbfe83a1ef85930cab8c40891e9686f6045":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-d580fdbfe83a1ef85930cab8c40891e9686f6045","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-d580fdbfe83a1ef85930cab8c40891e9686f6045","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a3e022958f14738e239b1795a02f012a093b606f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-d580fdbfe83a1ef85930cab8c40891e9686f6045.tgz","fileCount":27,"integrity":"sha512-cRqTyWWF4d721HhsQhVKw0mp8lHYqjAyrdrtTlBnM4rmjred9IHzIfgk9VVUu83w5QAwiHgR21wRdu2IKPOtEQ==","signatures":[{"sig":"MEUCIQC6SOGbBhvHD68d811Goa/8DcRTv2TQB9XIONUyQ5NLawIgPI3KcnpTVMx+4AN2x0Ek4gt/qPp9ng3jtn2puK0fGKI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNNnwCRA9TVsSAnZWagAAyHcP/RjuuYKHAzqDl8MYcMW+\nZKVP1AJfRNj1MfbgDd7CiaNoGeJBdK1KJnZSjLrQhHbwnkDKgJGYfhhe70mN\nG2bRghfzIIqQMMknWXNHhnI3zb6qnoLRkYGwF9jGFjXu9CoHSmGrlerOwoQj\nu7XwCeODUbwsoAIWFZ4K051+JIeXMnVy09jK1bMqUExTnglSOLoq7smZT2Xp\ng1itnsVpjjFewwvLbi9pKlMihDq8vP+Ux1YoNl1d3eTqJGqTY+MfhrroVfe5\n3o6zogKKC6hQyfAttFsZuC2mPoNwcM0ejFb7UZgMR9MphHPu2H8up7+MecS0\nxJyQkAbPaoh8U100AeGZV2Sy/IdJtHOC8idPnsLo1/D6119MdIO36/q8zugu\ncphG0NYRBF3BXzXO2IHCurPM7JdUIduBgUM95u076AP1lr6nEHyccB0df1eB\noXJft4AzckkwFwSJHHbafSBZCFDqmVGXmDGybUWAH5NJWpwnjveV745pPpQu\nsIMjZNe2FssU7cSv1/taZumwgtbeqKpJslXTA7Ylu4rXAeOjIpFGUviUt1S5\nd0NgyLCVVVaf59vDSuih2v6HWBXHq48hFfekIc5Avj7IvgPiatXOnjor8MLH\nkC0qS0n0iHDkA/sb0m/aGdEM7JmCTTl+4Vxx2ub2qjMMa+HaDnHHRZym48jI\nOODm\r\n=nqoP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d580fdbfe83a1ef85930cab8c40891e9686f6045","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T14:50:06.569Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-d580fdbfe83a1ef85930cab8c40891e9686f6045_1630853616754_0.7452027118916018","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-fbbd92a490c7ba86c7fd5945ea118fba93479452":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-fbbd92a490c7ba86c7fd5945ea118fba93479452","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-fbbd92a490c7ba86c7fd5945ea118fba93479452","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81580e656e8ee35face34d39c79ccea24665ac7f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-fbbd92a490c7ba86c7fd5945ea118fba93479452.tgz","fileCount":27,"integrity":"sha512-kvYcDFQ6DcP697dK27d7Nx54Dr8BSeiiPl5Xndcj4wn5CacZxsjDyqA+h8Qygkhjg19ahYRU7IXl3M8csGm1vA==","signatures":[{"sig":"MEUCIQD6zZRnXDAtU+eutm8pprrQz5CBxzyTun+e4i8UEFoCJwIgfTQQOdRGCfPHXTfj9TF9EqKLJ90vR70r3GqbsPyP0PQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157449,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNOHVCRA9TVsSAnZWagAAQtYP/0GYW8WdFYLaWO5PRrdQ\npImy6059+z3BH9gmqFfGiWfDxXcQuU6hUx5PAvgJ87vORaQaJrVTp55RWWWk\niXJKH1eHVRUc6wWMYcIDqF6ET0+c8DQm81UcI1GXGxBSqaszj9wemL5OmqHv\nPGo7Ct65GBVXaQWcIII6I1T/zSAmxc7fwUUha5Vhh1cZRfrvpyAYAclXTvmN\nnakKKZJ2OQ1W+0QH4rRPIKxceRfOwRu7k25j0WreSIfR0AZgBxAEhHDwVBa4\ni1P+ZAhytz4Te3OS6wbfRmkGMI3I4SEw+vXGwHovX6h44K/Kjs0h75r4JaFr\nxzAGhwAnN2dvlgY7nCmr7X/atsI8taFewpwLFOZrHopcHF7pONap5IoGOFsk\nPsxGUzBbACqkB0l/5079fRDgBqMKgKU+wc/OaV+1TmYWz/ESNBwy+Y4qdT3o\n2rahQYrgxR8JRuOcCFdA1vTFgdDKQrLwPgjdigxCet71txQf60c73l72St6O\nvMwpF7xsaB2cmC4YN8L0+PkTd+t8y1UKDGFaM8LywLsd78gnCRKzKqnCO01r\ndQpkVbrTlgiGskJpbkJCPGb/PG2/C9z09cBxvs2+wOkf33KVE4/IqDUOLczS\nZvv78Qf86IDwNjNzOLMczRsvHdXfhd7iv5OHUjH1Dt5sQOLuM76TX/QcLbsy\nxvAs\r\n=eNX/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fbbd92a490c7ba86c7fd5945ea118fba93479452","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T15:24:31.561Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-fbbd92a490c7ba86c7fd5945ea118fba93479452_1630855637054_0.9903606043539024","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-e587a0ed46bf503a45ed53a781a353256ee1b965":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-e587a0ed46bf503a45ed53a781a353256ee1b965","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-e587a0ed46bf503a45ed53a781a353256ee1b965","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b33ebe5a964a9496c2597e1a1a7f2ca212b11788","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-e587a0ed46bf503a45ed53a781a353256ee1b965.tgz","fileCount":27,"integrity":"sha512-FQMUfROyJ0V/KhSu+fJlVjYJikDxXENQXNNTC9I6FcoOGrckid/+rqjWlOFFD1OM4Pkf/RCCymYtezXzVD81Ew==","signatures":[{"sig":"MEQCIC7IDwICwS1PsW3DAw2JsCu35Gmj99Tgs3ullncNfFDuAiBj3j0DPFSN3i+76GMHH32OKPtxz1VrPsmHyrUtV/sLkg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157484,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNVTaCRA9TVsSAnZWagAA/VAP+wZWnIKfJwNiTj9LtYnp\nPW6nqOjPgCaCkEupkkHmLMs/PlxVHyEy2QTyuUO0LpoziORNLgV8cWR0UKXV\nrzoZfE0Jc6KhDjyCgvrd/Dj6nfYj5/CAv9kyGRJlqWuxBWTyJlBrMBC5D73H\nuQa7d4jUhSGtlQd6W60HyQ5/jpnTpdeVe43Rdqr6jjMPBjAaBLISAaoi/0fL\n6sZOTkOKj0VbluHx+BH+t0U+dLAxthQD0fiSmjvaG3+Bpkt/giYeRuQyNdeg\noK+p7p8ttMGX1jpRh28vWdafLIRdVS36bLu9CrVXy6b9XQjf31SDPvnY0xPN\n8lhuzIrqu18z30udwiRNQnEK3eEgaN052i6AWc61TGqMReskt92Cpoh1o5ox\nbUiQ7Ar3a8af1+8fHxa4vY5EaSI2vUPL0bfK00komAhlsTyvW8E7TtFvBOLo\nX4VfyqcnrqWVnqi+4xdu8SZyPtEFi51nJocL2b/3Y0iMCA3f5CMhG2TBg4HP\nZwLhISioy//Jql1My6G0NaUfvNXl/sHFm36aQM8laNGGbMnb1/52XFoItMd2\nrwJpXmFlrDmcPHou4tRcvrBt+Equ0sOfj2hlGLIW08HSUxJQei4Z+QZe+b+P\nSNmE+3Y3nsIzEGVq2UeAtFyeHJsiDZ+EPfBbF+bfYIQj4oOtulxw6qBzO/9d\nJWRN\r\n=ND9Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e587a0ed46bf503a45ed53a781a353256ee1b965","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-05T23:35:11.337Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-e587a0ed46bf503a45ed53a781a353256ee1b965_1630885082292_0.09952381460520843","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-5fec900bbdd30506645c42b3386b0a202c2eb7a2":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-5fec900bbdd30506645c42b3386b0a202c2eb7a2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-5fec900bbdd30506645c42b3386b0a202c2eb7a2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5aecbf6964ae046071a856963aa0581e9784a97e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-5fec900bbdd30506645c42b3386b0a202c2eb7a2.tgz","fileCount":27,"integrity":"sha512-cktCJ2a0V97h2alGZN9eEMJWfvH3LvJ3kTZGkegEN6iOtdHDBHMIXE5CAdYzeToInfaxZTET2dZIPdhXHb464w==","signatures":[{"sig":"MEYCIQCdrkDjn0hRV3KR5/hmUgDu4B5oERyIEA5xCXuFs5op0AIhAOm0MARrc2fmDOO2rXlLTpZePYO4FxW0D3EQKZWO7l/0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158012,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNXBECRA9TVsSAnZWagAAx4gP/jZqDQgSMd7E9Sa8Acis\nTxIz/IXK9Bz+6Ki1eQEb2745SwDu3mY+wX9JozR6qRUkLAPFJEWCocCStYk9\nAKUWZbkF3N6xp4znZSg9qT6YXlUaKYZ5UPDHu/NhhxzxiXN7A8HgE3hFcoYC\nBVlvk/4YLSGxfsmGUNChbvdug78f8pAVNfy6UdD6b71uCV0uJnQ3rrpA2Wp7\n0HonFd8zPss23CwK3kXu+zCMYR32MzLG5FB9DlWqsVaFGGsLRVB/sL6MFmDN\noVZUxyHs1hsDbLMsqSO0iGLNUcQVQmDpVUspRh2uaNEIakvZO8bTNOB5Uu3w\nGYwxJYx5aGkyUjxL8kK312cVcERRRfn8doa/JRUlu2ZN8rdno34JSFrH2pM2\n9wUJmugPwYnLnf67RkujZwdNbxxxZcEeU2qwSRKn04dElmBlWXGtITGW39zm\nPq92lbnW4ptgAxnwfTb7NPgDpZFg+35wrRHltZzYlbEIFRsN/JczhWVhBPat\nzcPBYCOIB+5zsP1j1folD/zGDbCgD7nOPg+tnxoDX7H7Mmmv7nECoXAszp8O\n8afE5ebf88446+cynGlDVonzWZzJEvyoXam4xVVKhGu7nd/7zKxF1LBvaFeu\n9dNwYO/4N4XoGh7vr11mLTx1fOwykf9jE53iTlvibGi2QqXbOxTblTqQ/DEA\n0YaD\r\n=6le8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5fec900bbdd30506645c42b3386b0a202c2eb7a2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T01:32:01.164Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-5fec900bbdd30506645c42b3386b0a202c2eb7a2_1630892100763_0.533605998622781","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0-add-backend-setup-04495174739e6279fc7baf0530537ad1d13c1ebb":{"name":"@balena/jellyfish-test-harness","version":"6.2.0-add-backend-setup-04495174739e6279fc7baf0530537ad1d13c1ebb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0-add-backend-setup-04495174739e6279fc7baf0530537ad1d13c1ebb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddff8fedc05b35f7c9d26244ec023102c938d19c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0-add-backend-setup-04495174739e6279fc7baf0530537ad1d13c1ebb.tgz","fileCount":27,"integrity":"sha512-JgZciLZOKmj/XcXzcnN8R+7EdH+AfNgHnpi24Xu6XjXrNQvm3gbVVoPCLAykkh20a5IJ9ncar0jwnrgf9+HCaA==","signatures":[{"sig":"MEYCIQCbTmqt7tbFUayVvvIDi4XdggnHdFj5GXsi/eoLyusrwgIhAMK3SX6bKRLWRD1ktDTZ+R8rDH+4FS566dKXBTSa0sLa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNX6PCRA9TVsSAnZWagAA59cP/2oSceWWC3RgtjQOLVpD\nHPqFG6pN9v+TsWhvLc9/TB5uODZMzrzLTsY+GtiKCstRQsBMYLCRboK0EnoL\n1fMTzMUSmb4VIr397s636gebw406fc3Gv6TZEh+VYX6N30ove0fmoZxPghDl\nrfgsRXcu4GL/iFFayPH5RmGFecn1ktGJ6svE2xOFaF24VmdgoJr6xkRUyQcn\nX+/yYzYKJsKggE6OWaL2n729u+zpq5F6OzPJvZF9R/fVVjuZECp8JtdlLx5j\n4uJvKom9FGYlqdqPuXFXqAWv8GusZCe9ZCRkB1Mqr7jR8paHcyNa5wg44JUs\nE0F48kTWXFfM8isWMcYAs0+1yLYSioFAcl3qRLmxQYIriyL645VBbXe+wrL+\nVEQlJK2t6EEm9Fo9pf+hcihpXVR4jXBYZSCQrwZg82FWa59d2RCMeeFD7cd/\nqWFnnPl6lWPwtiIuzG0BWrypwpMmCZ4o6wMZaGJ/+c/hrFEJ+82tbXQ4raiH\nhS3+hzYMpHPZaO/kguEsPKa15p7i6QvdRk4gOgB78mO21M1hsAvKdDmxoth9\ns3ZS1etWmEK3/2rxNuaIf4wflFQgy1cZh1qWykYvXOXB5dSPv+uzEzrcN2UD\nHGe2vYhbBMvD7nHMpepLOsBae6XnC0GVUi5oQmU7j0PMJsKTEsZlGvHIeX23\naXyY\r\n=YxW2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"04495174739e6279fc7baf0530537ad1d13c1ebb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T02:32:51.416Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0-add-backend-setup-04495174739e6279fc7baf0530537ad1d13c1ebb_1630895758883_0.6906644989392949","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.0":{"name":"@balena/jellyfish-test-harness","version":"6.2.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da618ee128888445d768d7796babbfff99f56527","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.0.tgz","fileCount":27,"integrity":"sha512-8VAYrEdp+QAmcJQyNa/GGbwjK8pkGQNvdrg+86VTqvRbVOtq5GorM7eLLYoGv5xKUjCVAHZoRq0dL58LBHcpzw==","signatures":[{"sig":"MEYCIQD+Qximyi7pw7wT0m1ufG4hvsyLQGM8yqoMXRXodrkCUgIhAIJwafHAGiqJdE/tdowXRA/z4ajx/8kH+jGA/+iDrPoE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNX9ZCRA9TVsSAnZWagAAWKoP/2/Qt2pX7TeyzOmauv8E\nT1KwHIOwrgn/gLv8EvtAC5pne06MI/Sb3u5vhOfWstkGNamcbW1zcEuurDI6\nUatStYpdolzczILsx0XZQh6TOUA7ijO2ds3OBskhpLeNvlxkfS+jF7M3jjM6\ns7Cp59LNVGZ4XgaWjZtSQBbuVz51jDVv6prcakjyZ+cjXIPmVwHjiGag4QpI\nrXEdA3heQgvJr/wa9mG1SchyATOPmnrc8E4BeZL3UwKXeyp5ulM5rKzjMojg\nHRgn9K71CmZx+VxcvFPkNplNi+/6228FLrXeiHmW/6wA6DKidOfLzNZkCe6a\naSmviYMBkvyd4b71lWCSKUUDEeQaJ+9bZ5wH+Kv5M1CJYnwqwzxL4G+ItAv2\nR+MEdMwLjN3dXG/MiZegVxrNTKcS5reKeU9nEMfDRymgBlsKdfUgg/mBccq7\nXcrFZ6JCEl2xRQmbBAo5ek23eL4fQclVLz8kHOXs++0HO0X1+e7qNi6EWkML\np2xULWE/Gc4noFXpt0r+2zop7o7LxjffuJHWIQWgxtAnwU/LuMRVA/IgUSWT\naLOs5dBXNQ/DBMeBFlef+9rFqPjT/hrLpEACCPN9ll7GWI4RwZlQ4tQggGRV\nxGOGP6MVf0qJhTnX0TUM9gR2eqOVIuZn9KvAFnxE+j4tXQmsiXJ0KJlMcnHU\ncfq+\r\n=aF2X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d2e06c9c5aa3547516dab719293c20569cd85702","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T02:37:17.241Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.19","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.0_1630895961417_0.8474553911555891","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.1-renovate-internal-patch-2529ce6e020c094d950397f14dad823507a61e98":{"name":"@balena/jellyfish-test-harness","version":"6.2.1-renovate-internal-patch-2529ce6e020c094d950397f14dad823507a61e98","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.1-renovate-internal-patch-2529ce6e020c094d950397f14dad823507a61e98","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1378922cfdc14b6acade57302266d1d74ff641b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.1-renovate-internal-patch-2529ce6e020c094d950397f14dad823507a61e98.tgz","fileCount":27,"integrity":"sha512-nqXQdUUK6OCAAAGNGnXgUcYrXxzvz6Z7JU+l89w1dIPqCNi3cLWRGrOvvH6zVaUjQdEUuCKrgAxAcETlvxuDYA==","signatures":[{"sig":"MEUCIFJreTJiWNvKLAg58po4emq8wVZJfKg7xR5dE+7gSriwAiEAg3Id7LX6yaAsGvbxIDCFsUScZFWteZjUccuAR7RTQ5c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157985,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNdEgCRA9TVsSAnZWagAANB4QAJk0zOEj3RyZqjgEDTeu\nS7kOemFQLSmsGSXZFzc93BIm+IE16jLbcfCq2LSa3hvPFLy3148i5dzZyVXc\nCJinFpmbYqWjG2cMm6Dp/2arxEhPsCMfgPmh91pw2s+hDMFSbIrEq0tJjaRB\nq3t/a32Y9WHOzEVJtMRCPIN23UDUJlColHQDZAecDiNL5oLjCbHt1WV9RLeN\nzCvBRIo2q31B0+tZdBeMG7s9cOVF/8MbIYkdg1+5p5c9dCxrwYq7BoD6+1sn\n6OztlZPU2/yGcy2Y4Hrr+8zr5aiJ74e/RZbD8NLdbIFpE6xwjQUeqv241lWG\nHEfEA+jG3QC/fMXF15nlakqxBpRmyCg3SWwLhFFCIQYvJ9m6x/W2o/dSjKc0\nXkCF45JulzgA+lCSrNyXY+2idh41hhLh44Orpf+MpYw/LvklnCqnC2pvfThm\nhBfuIHRIq8E+WLWKU6NpUwKosbQeos6PhftXb85zzUDzfrZN24YU8VF/1DWz\nZsnHRPFunv0l6gfy0eWacreISXian6hb100a2/xGvYUQFGc5NZG0ELFnjud7\nnxNTuNtF/1yLnqsZ2el5a4XtecyKCkedUqFHoqYNU0TymVpx6QqVf1EN7vU0\nPIu7FNBXgpShD/ZG2EWQpZrd0XrHGN+9+8Nze69AqWyZ0PMm/s11eI3mZIXx\nkACV\r\n=G3cX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2529ce6e020c094d950397f14dad823507a61e98","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T08:25:01.544Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.1-renovate-internal-patch-2529ce6e020c094d950397f14dad823507a61e98_1630916896590_0.30905458177221234","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.1":{"name":"@balena/jellyfish-test-harness","version":"6.2.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2327e698e7fc13a539e4c05511c4c993a49b2b3a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.1.tgz","fileCount":27,"integrity":"sha512-ftT6pE6WgXSlC9ge6PXaLHTbO4FygyICN2/3dMxjyUh3NSRns9+CCLNSc80+JeJihy7VJAdq1Fhk+55kXcgKyg==","signatures":[{"sig":"MEUCIELdKQxYtA4Mmdc8H/SxKnwvWPVLAcwixfqkdUaF2mhrAiEA5MbQWQ6hWNmeyhuApHSR9JqiFST/VYcCFs8PKmheSNA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157920,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNdHmCRA9TVsSAnZWagAAdxUP/0esjH88xDEAvdqbvT2l\nqPVtThZPT1Sj7ba1omx4xhGlmIWjAcY7LsWr9v668zVo8wcXkfT0In+WyVw4\noThDQ47vgQW8zaxm1O2pzkwiH7smM3a5AGIUtkMDIPe2uGSzuH6IgwtQBfjc\n3GyR+CeY5bCmg9ycqfWaXjzahVUm40v1LEbI57QauZn0OzZWVudzWQMGNicL\nL/bmW/CygANVgKhaOYe2JFCsbw+hY2gjATFqpHynQZwD5Lcub5Bf0UhSruUA\n0n5056ag1WD1wcGpFRCmaPrZMVyRo10Pnp66zqbwodv+97iUGtOhc4JjzHXm\n9LcA6kJNbrDP0FttA/qv1MY/M0YUSUqsAAN3hLtZBdsXrIlRslWmBW6KYzoT\nRY3kWgF4jhGeYAWsTjXfz9qYjQgsB3rz7jry26jQ7payJ1knKF2NzbBNiqfL\nqgHXYQidRLrvmhDZ+V1nBFpUFJDKmVYQjmllTccYhhagwbzt0b9PKRsi/FcW\n0qnHLvmyqZfonuWC4q1pV7iKl1+7lzvfJv19qnXbZxliaxFGUU+SpGD6stWS\nFztmUTnkyTTNljvwXokWC01F7Pf2GlNvawDc3TFvTYL7hM1kOc8E+/Fu2Xnc\nY6LHnhc+Cm84geTF1BOilKXdi4XyjQKPdLOy7Za3v2l8P4urDV9jqSa3/N8K\noy35\r\n=1XJ6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6048d0b96211662bb0135f1973c54fa48cf1f1ae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T08:29:51.543Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.1_1630917094597_0.17682687632895466","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.2-renovate-internal-patch-453ffa76193e0d2d3bb5a064d69a76518373f4db":{"name":"@balena/jellyfish-test-harness","version":"6.2.2-renovate-internal-patch-453ffa76193e0d2d3bb5a064d69a76518373f4db","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.2-renovate-internal-patch-453ffa76193e0d2d3bb5a064d69a76518373f4db","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e60085ab30679013c2853bb4d7143bf15a9f992","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.2-renovate-internal-patch-453ffa76193e0d2d3bb5a064d69a76518373f4db.tgz","fileCount":27,"integrity":"sha512-vV+OO5Lcwdup1gB96OLPqqf25vIB6WLg8ULQn1kcgWt0qF6eNIZGkOphax1R1qxR+N9Bpo5G8Z5jTULRbjfHNQ==","signatures":[{"sig":"MEUCIQCmMCYCXziMALHpsMegZguMzpQvT560tEZXHGpUdfielAIgTlwX2cX2VX1db3v52O8GPSzqk/L8rL8a9Be5nuaXVPw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNeifCRA9TVsSAnZWagAAYIgP/2c/Mq67okcq+5OrtRHr\nJDlY8rx7aO74K5GjTJ3Wy7ynTSgpREiP7NjtnAgSk/V9tiBtY9XoVRL+4Www\n9WBnBSO7kEgfqpt3FdxFQBiaJ5CxgwiGEHxaicivE7mlOtufbpHPfv/PRjGw\nJjcJP+WyCLTuv/ytYWNpcUwM9CXfhzO4kx++eQXvoF14+M8WsZI4c4FzMwzJ\n242pbS/8Cl2p1Rc6u60bB6XhxhvAaX5Z5oai7830aWDG8uPfABBTxztEbHWC\nR+1R/haDidjE7tWlM9ljARSULc1VnzH6qvMyB8d+I1g28UDxCXUrFktROkUe\nPjXDt+wWK4xFST6ESfeAFNYcylhlt3fB8W+NDqJz2PlqXFicK2MJj0LMybz5\nVi0YYrQ+fzfgBRhKrUDcNaRRrFiDtc3438K8mXqCrxSx0AObg8/oerIbZBn7\n08RQFuRLaE8IsO10w0ZPdIuVdar2S8EaYC66ekc8fWJoSeqdx9h6ydlrB5BC\nb1hsDXrVHxDrm5jCMNpNFwvZy7j1aEli1rNZHa0rLSCYATiy1L3rlBJ4ObyR\nOG0hu7eCIJNF+O04bmJBJxiGY38Rnb1rK9wVKG/+taeX/lJGgcxJwqpzaoKR\nwfbB5uOKxlKwGe8O9i9ppiQC4fXcQ31qg0GNU366pv+72DledJ1CC09pTZZr\n/wEY\r\n=6h8M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"453ffa76193e0d2d3bb5a064d69a76518373f4db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T10:04:47.889Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.2-renovate-internal-patch-453ffa76193e0d2d3bb5a064d69a76518373f4db_1630922911550_0.013848269072607833","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.2":{"name":"@balena/jellyfish-test-harness","version":"6.2.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5bff69298c8bb4aec94b3e31942dbd0a0ca11a82","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.2.tgz","fileCount":27,"integrity":"sha512-YWTNUgkPCE3uy1d8we3JAArtcyTizqbH376NoPzjrCLLrpoWdpM3h85oaaahnZZQ7E2MQOSAQHgcU4Ctrq7PeQ==","signatures":[{"sig":"MEQCIDq8PQ38KlSUPQjBCG5PWwhEDQs+yrx50n86uLdWn/r0AiAO6f3pySkVtjwjsWjCZqsHNnrTmkRH8bAoOq47jG3Rhw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158024,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNemYCRA9TVsSAnZWagAAuykP/1rdNkuViLSoO2VqoiMk\nDSTN1Iv8B0d9di3bad550rRbiej6rwlrXfPVrFr6ZJtek8Z2uHp5tquSOBHd\nnXVW2R+2gNn5FiooBT0ovJQ+ony9R/cf10bAZbdepgLCTbxD04BMFdW1nqVM\nDt5D+/6OkHPIwi6E0zotIv63pRZvs8wWg6fR083AZTMfW+xK8ztKQ+lOe/L4\nPBZ/A5NDd9Da3AVAqL+Im/cXrSlwVimZ1HE1odjQIXjbhdvz0mzFEy1RkXFK\nOVIS/j9MoLZQJMOPdYqFwaJ8DeNAuAZKB0XRZFsTdBkZqRrSVTmQdM8pHipL\n11K3Kv/GPuTxlpdJROTTHYp1JlBiA2C5abMz9neo5etNAXv1RA/YSO87e8qP\nrtAJsibLVZ8pkYlSl/QEik9ihnMwGdjdYebZIuhrsfDjJwZRs6SW85a7KmGf\nOgSTw1La1XZ4XOs2V8hos136E4kTJl4dc1MLd4o/DgllPVM9aHpy3B2o6XWU\n4yI/GaV1ZJadWJ1zUw8ZCYq6bHLViPn66DP0mIxYB5h0nPjlNIHqrUsQEJpJ\nfZICmVUXkntbQ7r0bHyBcG235Aa7nYQB7fW1guL7qptXYdgz/XnZ+uaaWPUl\nlwT24oRzdzLhmoKKny3Mipa2xJnYi7S2wT45kVbpim3UHZ5Pr67DPVujewZD\n6omV\r\n=gCFl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"861a0ba7c8d965b3e311b03737692681540c2cae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T10:10:34.270Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.6.3","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.2_1630923159906_0.03300341685876185","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.3-renovate-balena-jellyfish-core-5-x-592fab04b20791d0ee023d57dab66c78eaa93a9d":{"name":"@balena/jellyfish-test-harness","version":"6.2.3-renovate-balena-jellyfish-core-5-x-592fab04b20791d0ee023d57dab66c78eaa93a9d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.3-renovate-balena-jellyfish-core-5-x-592fab04b20791d0ee023d57dab66c78eaa93a9d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f9eeec3bf0b2db5a2640e62db3618e051bcb823","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.3-renovate-balena-jellyfish-core-5-x-592fab04b20791d0ee023d57dab66c78eaa93a9d.tgz","fileCount":27,"integrity":"sha512-M1j3DXiruWLRJFIsWWNJfP+H8mEiMt7vAAQkCWJRXf2bASgeKb6U7h7RJSpdXlww9AtCIT/SX1mXtdOd4o1tog==","signatures":[{"sig":"MEYCIQCxDZv8aUvY+V/hzPs+kUwTJRvXgDyf81HP6e7Shiae5AIhALEmTnXIJYKSG279O40RrULdKf36DQWBh7goVJmwqMZa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158202,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNkIWCRA9TVsSAnZWagAAUacP/AvyedXd5pVC4g7CGPDL\nVZyVJR1rftSQwShNnGJ9efXeVGk/nlEjgGqvl/JG2GSNZUqfB9sRmFNwVX/w\nKLZfxLylA8EznHilvSi8PgnN91nkfy7zauaB5q2bhsrWuCw1AzWHc0HP3IGu\n84ulvfI2QwmmrbaMLax/+7jHGjna1IqL4j/AiwBcyi4CO3suA4U4G8jb8qdK\nnoMA8GT0JALAo32+wRtpt0mNtmdiCFq6+KVBXNZQ4HG+JypztCHPSF0GJ0G/\nlPjwH3AjerykRma1wggOa6s1WxMIAKWLyTNNpEdXj71ycLnHh+cWHqhoX8B8\nD/F6ebzzG3YkplfHnrHLNURsybPMSTHdWk8Y61RuHB1clVRJMdBn4519ER0x\nWKH0scp/I6Z7B9XfPXiW1roRnMWtLSQ4iUJbp4T3i6U0+UweT1p6djOQnT3+\nrAFzA84TCcjcodotKgEk8tSPDMmh3lbmR64TiwDZpA1I8mGb0y5LHQ3ViqGZ\nOo6EEn/RMlaP5QC/+yUODxYSqPNxtobBi2Y8dlQR7SIAFo90njg8/jYrF1te\nIOO8qGi4djtwQrlUVDKkgKogRipIwCahl+1c7EFMS5E7z9Ya2I8xLZOYAyFC\nPnSxCXwmjXnNLWErRQDBpCCuV3/PkESCVqCOLTS4+vlPZLyAEeeL16C1LKSb\n4j6k\r\n=CogR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"592fab04b20791d0ee023d57dab66c78eaa93a9d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T16:27:12.106Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.0","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.3-renovate-balena-jellyfish-core-5-x-592fab04b20791d0ee023d57dab66c78eaa93a9d_1630945814207_0.008578868139077933","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.3":{"name":"@balena/jellyfish-test-harness","version":"6.2.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a3eb70554a5cc26f1a3abe42948fbb2ae20ad5b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.3.tgz","fileCount":27,"integrity":"sha512-nO/9nCPfMtuLjwyUi7lliPVHdVXe9O0/E61l1dBb3IK1R+u7e1YNSD1JPMqhEoxee0l5dP8LoPN109VwdpRl7Q==","signatures":[{"sig":"MEUCIQDH2Gf+G5qEFjXg2cJJdZiexjnbN86vKVoeb10gwhT1lAIgFwkLr8vTdWDr2CHFxbPTsvhFrKshMPwRKX7OdRJhPdk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158126,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNkLdCRA9TVsSAnZWagAAdaQP/ink0Aa/DoDqpdxFt2Kp\nx22Th7INU37HO2cNHGEuhmEp4PfQTWMhzuymGE15uJ8yKKj2HwcRtshhghv4\nqqFkUSHytrks9qPzIdnj+6KkxJ4b1LzZPa8d9oSjmXlw5C7X4xcyFDinvzWp\nuBm6gXH2omWIcmaucO8zsP4a44llZZU4E5+4VNdbPJ7A6dNOGYh5K1FqmTK8\nCAzJUYJ957WKcHf46+SWh7O/Xpc5GTkQevZQq1ukqio/oIjoZ5B9KRGvv96P\nNzB2LBP3shSptbJEUN0yjEy5m+LejCzBJPoDsuY5pTi/dpP1VQXglsufDLKQ\nhytlHpDJ0DuBReQ8SffE8GQlb0flBQd8JRIlNCklun2vcauWEnPFyiNbSgf8\nQxUipERl1xZqvFQP/TwS7sWebcfxXmXwBkCTh1TZvC54EnIdmKpxQLUGs4nE\no7mC29MTWpj7Q9EoMAZIDwD4SpcKntie+zjTOEz1pmIfrDKG0FtG5Ob4oFNV\n5Eah0DTEn7glA4+EeBpgtYMdC+nN1yAyePORN7q9SnaENLpLuYXVGeS/kjOP\npfj2bfV60zWOJdXQJV2etmo9ssTJcQnzNLtsgk3IeNU5fJuOpFj09Lk2jWZa\nEf/WyVxgYmWguoGES5C7+OsckQIHBk2nII7lFqvs7Ih+P47uqJsiQg+CF2ea\nL8EL\r\n=gHLD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a7e1223bf510dfb6729af29924fcda655e923c07","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T16:31:41.394Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.0","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.262","@balena/jellyfish-worker":"^9.2.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.3_1630946013389_0.5303961998749953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.4-renovate-internal-patch-de007e8c2e9d5dc0e53e7206cb7b65b67d931b17":{"name":"@balena/jellyfish-test-harness","version":"6.2.4-renovate-internal-patch-de007e8c2e9d5dc0e53e7206cb7b65b67d931b17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.4-renovate-internal-patch-de007e8c2e9d5dc0e53e7206cb7b65b67d931b17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8cd66614a1838ddc3078f41ad79df88e91bb7b34","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.4-renovate-internal-patch-de007e8c2e9d5dc0e53e7206cb7b65b67d931b17.tgz","fileCount":27,"integrity":"sha512-Fx6NIfAI2XzZPRKr9fRcCK2E4FczwCSU24k7Z0JdNL1FnHiBAUueH4lnT/6VwofFD3frw9Ebz3r34720pQp1rA==","signatures":[{"sig":"MEUCID0V1brWI3G1PHtZb2HXOM7ag+LMHsw3PSD0eKUXeqogAiEAhS7T7IeX1IOb7eIqWxSEXXFxeYA4cq0QB4Xw/DyVcjI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158264,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNlZjCRA9TVsSAnZWagAAx/UQAJyipI8LEANJk1c7Fzzv\nNl8DkGIcDUDbivgkj73ET4jXIIrorXwQqDUOwrLjraVHS806WTQInMxmFDGg\nZU0vLQQzPfwEhNyRwVsHHhRHvjBEXNoYzV8riR294PSghDYeTGGoLiQdWFd7\nvKwRBd25WGetI2UCMyQU1ISfOLIuq2InytQQSQXDIrCPCqR6FXTxN5GAR6Ir\nZSRvril4j6Dqgok5jWq60k+k4Q2j9Kb9iPTrhiffa4C8SSv+9ERLZdR31mji\nnARMIGl8j1KuioSDTt7NH9adz3wDvcl0TdlbSIAsXLM7qwGGe5kGmnIciE2x\nk361nSKv6ZnZQcKONrd/8kVaDyzR3VAtczqx+2Z69JshkMDz1irgD5dqNCS6\n7qPS98jV/fJwHqUYCVJ9+A/iq1vWt+chB+UuYwqtqo9CBwXQHTk2bTiXIvuo\nLOPVVeHiflosvQhfbpUeUrJEsgFB89az4PolUX9x2ll2A3Wha/4cEAzc4Oxd\ndk3XAU3daR+3ghilDKcH+8Vd+fIHYxAINMULrNP0RiZd1whgLWxugAz/+WvG\ngWR/tQfv+3Iq/P0okLDlh0YmTd6B56pCGE6n3ouriQhNiBBxikTQCZk0c0qr\nJhOXlMFuKue+53nEf7MpzJXLD6TENot91oFYBWUY3uKTGKimYj1abadd6DSe\nEWNY\r\n=YG0+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de007e8c2e9d5dc0e53e7206cb7b65b67d931b17","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T17:53:12.312Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.1","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.4-renovate-internal-patch-de007e8c2e9d5dc0e53e7206cb7b65b67d931b17_1630951011268_0.21106029627058898","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.4":{"name":"@balena/jellyfish-test-harness","version":"6.2.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eaf972be002f3368a1d72b4f052c3f5192439eb5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.4.tgz","fileCount":27,"integrity":"sha512-986CiOUrhpAL4E96MHQ/lsjEUM6T1iH9ROgRU7PS014Y4LIIVKpajJIzJtw7C9t3Niw7RzULPslKQj10a7rXHQ==","signatures":[{"sig":"MEUCIQDWwSdmHjeRFZ+alVdy7gn8xhiw+l2K/vWy7WxsQr0ZyQIgbZxX2pCgjkhUvHByLSrHdtcjuLH4ZiGT5IKKfC2eHwE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158199,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNldVCRA9TVsSAnZWagAAviEP/2YQO5qzMRuj+yse6TTk\nURAuc5jFEvO8afZNJENwhsgSwNGcQ4ZnG4nDGIRl21pw3e38UgAZ0k3PZyQ9\nZWOpreTf6gXJqP97ZLGiKR8t3RbfSVyFNpUmIKKwjXxVDoPujw9AD8Yvibf7\nNaAk1lZupy15Wo4l4oxt6lDNbj2iBg87OrVJnbJ8sN8KoL3vJjqgla4XMSDm\ne/pq3RRwAQLcT3GKeRDhJ44yB60Eb6ks9sXt5usAseMteA+q7FzODSNqyqwf\nxaaGkLGgV/+FwZPfz3mBkZ/tDl4EohAoM1I5vQ/mKK9pLA0PBZAOjMcAVLYU\nTo7TEiTaMStjAPAu2q2lMARQwTvH4s0A/if5bpEI4+f/5/YTntsvpJtvx0Ib\n7/6OCelgg2DEFPu0Abqj7GvfjCGCSFS4lO3U066X5qtsPZkRXBHpgkUy9O1X\nraSTRqH9GXBynbCBpm88DxxWeVR962ka2UcgdXYfRqtxSAeY978YQoKPhoGM\nnmjakJ1x3t42Pyx90ydRXA0xinIKVgCy05kVBk/6mmEQCQICJ46CbKSbEGF6\nPPccNmYBg5RpaD6T8kw+Shtpq2W/eqtgYLd8Lu5dijxhQ6XE8oW/03so4voK\njvm14lZkdHbPGEtiQruye7DQKb42zrRugqhW1OLRPEUJCtwiCdjugXh7iT46\nGYoX\r\n=vpiz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4b9098dc0295d557225b06f543809e36800a618e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T17:58:06.954Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.1","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.4_1630951253764_0.8093610557257316","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.5-renovate-internal-patch-f0417ab7f03348fa24ba659935b4ea7841309874":{"name":"@balena/jellyfish-test-harness","version":"6.2.5-renovate-internal-patch-f0417ab7f03348fa24ba659935b4ea7841309874","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.5-renovate-internal-patch-f0417ab7f03348fa24ba659935b4ea7841309874","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5ec1a1ca7495fbb3c0b7a88804bb17a3f3e2747","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.5-renovate-internal-patch-f0417ab7f03348fa24ba659935b4ea7841309874.tgz","fileCount":27,"integrity":"sha512-9olvdPnfEul5pa5MR4+0oKmMGe7nNWVUAiCYey4f1CmsVA8qELsD/wLCIIHkgoZL613lLOSVrCjufSv6dygeeg==","signatures":[{"sig":"MEQCIBPMNY0v5i/Jl/Y9rfnhzEWw4Z8iyhgL449/G9sJxy5ZAiBzfPqaWnQITVVv9To8ESo8RgIikYhQpn3JWKQRT7Kx8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158366,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNoyjCRA9TVsSAnZWagAAMB4P+wRM4EjAuEC+lU//Pga0\ni+i/MLQ/nYm4EenNajhvMD78P0MTFgA6LLAXuG9PK64MtMXE3pl3gQ7M5BCV\nqFOgBjyZgN1ilLzQ28X6GXmZi//78hg29ts4xu8lOr0U/x5wJTLzWH6laKVU\nuocjgxhBxzGYXHuk3oMJbNexhsmcZWLBPWUyxEeeYe+6ZPX11YuayEpxyk+f\n1oc42XQ+H8lfTZV/qWMkLjwUB76/+tsabFY7nHfOOcLkDXA5lkNCtmb4RLf2\nMBCcf7bdcdNZepdkJBjweD3XdFhWcHbul3JIyC97irOGnB3C9NN0Z7ufwI2w\nM4dtK+Ktu44z99WeEncK7vPWw+b8j+XCuaBE42vvlBwi9H1E5Jh7DMmg9+vI\n2tG6nWCMeO15UBZiQoAFcFae3CpBEpDt/xpoJtr0bPsFLIZewOes/vQYbgYk\nwAG/etGagl1+VWkxA6mra+EstqMXsO0nKhWSXIAd34u7ci5rQEaKXQyLjN8Y\nAvwxJbzI1t0RRQUDN9iBgfhiXbQMTaG5UAkoLpI5oZdBZv+mUrbPu7erEi/x\njk37CiNtNGeyYJyB97r8AzszVPdrxEOOJGGdCWJ1uE9jh4u0RKUy+c/NkO0X\nsqXEvJMCAc6dDyMkrhH1TUHl+LE5eZZ7RyvBO3fzZO7HPq5UDLe9jbqF/3mX\n4iBY\r\n=rM9U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f0417ab7f03348fa24ba659935b4ea7841309874","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T21:44:32.323Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.2","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.5-renovate-internal-patch-f0417ab7f03348fa24ba659935b4ea7841309874_1630964899855_0.5117859771550719","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.5":{"name":"@balena/jellyfish-test-harness","version":"6.2.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1e8fc6c4de786026155df0bbba18330bc0d9d30","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.5.tgz","fileCount":27,"integrity":"sha512-ppHUYJItP14I415WsmNJ098ARojm79vG9KnwSARfdj3lVg73DtHIBN34yWwrolzMZlHUQlgchMK0eZn62wanww==","signatures":[{"sig":"MEUCIHJY8m6tz3Va1Q6jTry++Q1sytlfK871c2Vguls7R7yyAiEAxkL1pNNa9T2DFjDnvEZjdDVXl9Vnhc5Rf66uSOQfcTA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158301,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhNo1yCRA9TVsSAnZWagAAD1YP/RMuoOHRf+URicbiGFdR\nt3V7cmZgY3EKsXNzuDGrfH5ZeEUZf93HnjuXlfoBAQW3Wm0ehoDd1zF4G16e\n+BN8Fg3W4pRaFEuYeIiO+kQJVcQlAzKr0gV0UQPGHY6gvwuX05eoo4zqU9UH\nWJgBGDzlBYHJWlUBpdQwA/ARopH/z56avDh+o+jX6a19YxgKDA8tdnuHaUfv\nrT0YKQUpdGvFoXfJ7+JyIqJ5v4VFBj4cgapN2gHJxP/ZwnjX+d5yyq6WZc5Z\nlSKdPD9ZxmcVfdDdxmtIIRpUCyRCnPEvz1ScVsCpiGGGRBgyktYYYVCPH5Iy\nZbElveK1505NFs6cbkXrdICccYT9IDKnMQIcRlQRaIrXMQ2OI/sPFNHWBh6y\nfNfaEJu7Tr/Z4wYgq7xiE8URWSkwkv3FuDCE9tBtYLjltIPciYihPb9JJ2PJ\nR6aHwvfjCL9RFqD1q7JlrpyVv6QiuPbQkk3ts1ASzw5J+DzTep93xuU/rRGG\nOgJEvzihlKKOAqVU2A6wDKi5zc8dAjKKp6823TxCHc2aakCwBQhfn7euKSFV\n0F4DQ5xB1Oo89GxkPGOHqcGMx6aPBDMAlHqOA7Clvzm17mIyufBe4u0Fh2Yk\naugOnI4FulN88QNlfgvdytdY4adLvXaHsqxSK74eFwHQiZoVxWc4zGyqQX/r\nFQay\r\n=gK0N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fa4d9824d54bd099b09d665e02d1be6c18c8cc1a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-06T21:50:01.463Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.2","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.5_1630965106667_0.5868964921087392","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.6-lucianbuzzo-remove-action-stub-b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d":{"name":"@balena/jellyfish-test-harness","version":"6.2.6-lucianbuzzo-remove-action-stub-b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.6-lucianbuzzo-remove-action-stub-b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"42fa38e993925e1fda0004fc4e201b95a32b5128","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.6-lucianbuzzo-remove-action-stub-b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d.tgz","fileCount":27,"integrity":"sha512-uJh6HtsM9f7LnEUa3P7Br4u/sM7LqZBeNJsOvOYAabiLQu/OXRUGllPT7Ewecd8M2FuQ3ib/4l3Ph2RzNkimhg==","signatures":[{"sig":"MEYCIQC2/RdDM9hF4NqABdLfglxxqOATIFfyrNVf2FfkPFOluQIhAMltTQ/b70J2VN4ci9+d8A3LVqOfmtJ16SyBpkIFjGks","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156526,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN3SgCRA9TVsSAnZWagAA4RsQAJ/FUUfkirXql0G2QmX6\nQRXZOoWWNreCB3SIAbduTHJlIvTmhqp3K2H02Pjn1t+i/gb/POinyK6i82WO\nA6Y35bVVljwHx6w4yJYgKQS1Md88UZKayz1cJuL3bYjogdqMKQwnLPClgEVk\nA5eGircD1rrOsMgvqusSujOQD6C923UcBHFDoEF6o10BbH0O3bIkTUvkqBwB\niRjyYHOBlU6Md9+0MCopGmcfyJTPKtBdSlh7tZ104wGFx86n+6/KylsCMIrH\nroOib+EvNtv0VkO2ktRAMcJWaacOUgW+6hqwuPTVxjze/wD2d45fJSQrc8CO\nSiShhEZDfvpSwWNuHbHjJSrAQFZ3Lo1ejRz+o+0MLzDRFyL61W8vCIzufyax\ndlghON39/jteyhO2owrpS24KKIbJBr9QrphHJklCxxddzvuHjMNaQCacI6EM\nx0PJ0b0fik95DecnGjgG9VNiy5vboPhqKWfKjs8VnN+mjAH/a9HZe8crBxUB\n3Anwry2Uo3OJChTB7QOysaIRqF5xPpOJackedIk/hFkcsDPALeYPiDK0RR+Z\nFRVGQ9HmQP7UlSdMyfv9Mfn7lnkkPCYZkmilw5SWy6auH0SaSnxHnsBBbGhf\nmFIdmvV4VIIe/YzrAH9aWzK47BE42cAi+ywFED8fNqNMDR6O6FEHuubw8AUu\n9OY0\r\n=h4pA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-07T14:13:48.926Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.2","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.6-lucianbuzzo-remove-action-stub-b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d_1631024287905_0.6270519719421404","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.6":{"name":"@balena/jellyfish-test-harness","version":"6.2.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bbaef58bc6a9d109562682be490f89aaac38f607","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.6.tgz","fileCount":27,"integrity":"sha512-+IUrzWxBsFJDJolfnCCaAujIYJaMDmwH+vCl0Fpa1apW4r8mlbWL2v7DK2PAbLh/W1vV8MweMVebu6j3KKllwA==","signatures":[{"sig":"MEUCIEfQBSx3s00mFzl8+xbKTukeLdfMrZpZUe35ROl0xk1tAiEAqB5ovYk1CD0WDyDrgxP2nZVyZxAHIJrOgEbsqPjKgyA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156454,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN3XuCRA9TVsSAnZWagAAglMP+wakfUM6HUY0M7ZfPQjX\nXzODmPrCfZGbaH4KOuLz3diJn3u+ls5yJ8G1txa6yJh9b1lRrY15UcWqRbaL\nhxQArVyH/1bPSxuN3K53lzFWrP6JCTJSsWWnv+WHP92fsRzcLxfzP12gW2G+\nangM74KwaB3QbZ2BPuc5aDWb5gf0vL7EACqcga30sLH3oQ0wXweNyBaHF7s1\nYG/cCdzdrMJcnnHLx+TxmG1hg5OLwJ6K8AFMh1dZU+lpZ/CNVEwHW+DM1sau\nGhvyVJwaXhtKM2xLoNGxBIt9juUKi1D3/40KXRF0AZ2HeRmjV12K4lcW9up3\nvOKghLicYjb+3v5GjwlWuPU/dGEb4Sv1MYA0dVaZoyHfB88fO2ocuQdYN2gN\n4UMT9GdHM4V1MNJzRtiGU4Ope5tTB8M9qMJk6UX865BiycYAddDn9+819f+i\nkLMz+XW5jFGayQ1dCCkiG0kQN1P4Gw/vyY2JpiVC90q/6w9PhTllKDGUfv9K\nCrdianGKIGxKAWDROOrh69HTFBpga/Ly4rBeTIo9vWFRnFdTf+XJnBiR/R2C\nSAiMn711VWpNfiHWJdIH2oGch181+DVgDw2aqnTultQN4afp2HlFFSwEyOd6\n8xbk0DJH+YL3GG5YYK7nnxFTUW7/iO2p8QidMshbJku+eOstidozweaCG7S2\nHau9\r\n=hjrx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7d751fb65d2750e2a7d7e1700c91bbf3e64a27ef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-07T14:21:23.509Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.2","@balena/jellyfish-sync":"^6.1.20","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.6_1631024622488_0.24600050932154693","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.7-renovate-internal-patch-518cb3880e7d7941b3ddfa6a6f27741ee8da42ac":{"name":"@balena/jellyfish-test-harness","version":"6.2.7-renovate-internal-patch-518cb3880e7d7941b3ddfa6a6f27741ee8da42ac","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.7-renovate-internal-patch-518cb3880e7d7941b3ddfa6a6f27741ee8da42ac","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ad9163c8a0384b840dcbca882d3575e96828dd4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.7-renovate-internal-patch-518cb3880e7d7941b3ddfa6a6f27741ee8da42ac.tgz","fileCount":27,"integrity":"sha512-QjXfw0zLLX4CxsAd4iMUCLg+T+GZvXbrR7bY/zV087yve6ILShu0xoCKlhUQ1ylOqrbx+ucLYu5suIXvoin+TQ==","signatures":[{"sig":"MEUCIBKIBTPHbEefYkRjMfG64ocT0GY2sBPPtjcu/A3+GZ+CAiEA0jjKX85zAV5fhOBt73kOQF6B4wVpCp217drEgfSyajc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156592,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN3dxCRA9TVsSAnZWagAAG+AP/RZkEUkSRyu5d5joSokD\nH7z9jqHx2+0ESPYs/7pwTTCYz7OLWhUAzMBfGPJ6wqtfgg1oiyoDjAZU+zj3\n8oGoXPWjOndTzuuepkSIaQJ2j/EDcmNGjGnzUdcVcNMwEJ5jMY52yFQnTvur\ndEmWrG8o8DiBPwhvidfCu/dTUQYN4kjRyt1F3opoQNjCHnbaMc+AkXg2q5cQ\nZBkLtAQkIWTPvhbtq5onOTx21nMjikzg2zOPNoUsFWJ40K6MOm2OlFItMHB4\n4e56j/8wE7SsRv4foCg8Gwx+1lQxGfu6ESVD6H8MvnmssRz2n7mJCjHPlS7Y\nPK1vRrMm11fNSdcuEh6FOdQHhLIX6+XZhNC5OGHk67wOosmqDqGtDueKJ9xt\nss3zNROvprPH9R9cdO/nKYiI1eCXHt3ufE3e8w2Jikm0Q8WljUBbwUP8cIBo\nskgpgchXP3AfTnVieDC7QihgIPyU59bIL59OOkr7+JWv31usvj0yOJkoxqst\nu/dvFCN2VLFt9cg/oBnG50ZuRnAjQHYeU4KwL8+iyyW8XgpowDL47jv4jYjA\ntyTqDz1zBJIrg2fBMU3IHX6vupfyrxyCZm3V4ZHywps+oElNb3umHsFXlgiO\nCDtwLk/HKCfo/RX9FoRAN85CvqLY6a8uzkiqHwPOy+FNVYa41QBy02Y/qJ5H\nksSk\r\n=/Dol\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"518cb3880e7d7941b3ddfa6a6f27741ee8da42ac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-07T14:27:32.487Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.7-renovate-internal-patch-518cb3880e7d7941b3ddfa6a6f27741ee8da42ac_1631025009085_0.6286685193718369","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.7":{"name":"@balena/jellyfish-test-harness","version":"6.2.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"090fa93dc8a34a4f8dc05b920d8dd4e996492209","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.7.tgz","fileCount":27,"integrity":"sha512-DRBZ1evNkcLoSyEEG7fctkfrOrP3u40qpSca2iQex5aWZTqJCji158UOr1bda841GJIn+qVVKYUkZfzrjNeKKQ==","signatures":[{"sig":"MEUCIE/QQDORzwnPIuOpv95APGefuS8F7WFWRvnM6F2yj2YWAiEAyyEOfcr/A+fmP3aJdfhLxRaQX9t6Eh8HxtPp5czm5/w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":156527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN3hKCRA9TVsSAnZWagAAgjAP/1DOJMLd9ypiAJa+nOOJ\ntNSjlSBnL/vTmPUWAOGD7+c68b+pZ6wuApZ7aeWC7iSbht3XlGC0s+nBGC1q\ntg5aTizhNan4VOtqru9Yn33CX74YcHzuiHU9Z0AE4YYj5aKep38RnaGZDssY\nfzr5LccSjGX5ySMi3bgDAvlYxh+vCa9zJjXjCuV6jy8y1lOrcmA51HUcEwWO\ndbJ7yNmCEIk7mz0hGEnJSkyfbe6Dt0LhV3g9b+yJvDUTQ1kb4ONqPtVhmCKD\nYl+RFTElXf4Gr41JgtnX1aohtQriJlFm6R2+QJFD/D390RvopdgOPBi4QYLj\nBV4IqXES7/xhi7vtBt86UN7tRO0H/YmW6cwP3HRux7KeOjcUiThLl11whJab\nWHWwy5XP8LIz9nD7vIczZfrXbBkQ1mcx2YrOuZBfM6iJa4KmUSyDKHc/cLoh\nsPeMgwPqXe8jaWj9GCKkpLAmaQG9zPWKylcjx+HF+R+dtW96btMlTvY6TRnt\n035wp3Fae341lZVWzk6DdwACemh9jMStG7W8aC+JofFG1nZVI7/2ycXMG90U\nGD4ViN0xeXjiAycR0y2tteM+fdz3f4zsKkjqjE4sadTlXODZkA9iP0DdZ5hn\nKAwfjDLVxNBZYusxqJOn8CvOK6si8n+v4Ba8A4AI7VCEbOegMG1f5LpW5qHV\nSxDi\r\n=iGPq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a2e525c51dd46ee82cb5e726809ec229ddaa3472","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-07T14:31:53.005Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.7_1631025226028_0.2180958113719953","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.8-lucianbuzzo-bootstrap-all-plugin-contracts-f8068eaa9773b7cf1016f9acdaa3bdeb759962bb":{"name":"@balena/jellyfish-test-harness","version":"6.2.8-lucianbuzzo-bootstrap-all-plugin-contracts-f8068eaa9773b7cf1016f9acdaa3bdeb759962bb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.8-lucianbuzzo-bootstrap-all-plugin-contracts-f8068eaa9773b7cf1016f9acdaa3bdeb759962bb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e251554cdc8121c27504fdec06eff456eace1cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.8-lucianbuzzo-bootstrap-all-plugin-contracts-f8068eaa9773b7cf1016f9acdaa3bdeb759962bb.tgz","fileCount":27,"integrity":"sha512-B6WHZmEXkrIy2tzc2RAjxkzpU6s+ao+Ns85T9gM5dputwtFixY0894oalNiuxIuIfvUzD2TQpHibvgsNG9fWEA==","signatures":[{"sig":"MEYCIQCZLBl/deUcjglKVIpTsuKpNN2t4tF8JstBI42aHiMoSgIhAKz3tBMwOJ4C4sDCMCTQ9NBg6CBcSoMvK115Gl6M/wTF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157627,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN4fRCRA9TVsSAnZWagAAbPwP+wTUDcfwULOAYJ/d+StY\nwjIQsjhBeaQDKOQB6gyg/T7n9y+HjNkC4klatLZaieWvT/PKpc955L9Zrz/T\n3F2f/xO3sihmW1PB/502DE+EBW4TvG7sd1SBPuqdfW2OZHob56XauVbFlIIP\nQAIf4BlvlEmJHQEZvoGba2GdpNU2BIavlAjQHgCpv0eXdLcXz1C7L7nAewX8\ntKmCz3QGuxqt92cpcgmaluPs9w7sVZZjGr76q5kE6TpG1SiNFBzbjNSxQVRO\nn2naucxeS1QWReun3z9jLmLBFFFVIYqUg7EtUdGE4X+CwMbzwh7Vdh+op2f5\n/7If/VJwMqiLxMTu93+piBX5+5jibTgOXZ9zdAk7TOU1RvaHCUGMvMDjkfE0\nARAh1lGoDytG3kI/1XSilapw8cJaXH6Jn7I7mkDRNKZS8U43PXSAnnjwd7B/\nKnyOM3q3usGsAPZUDo1UpYMwdhSmOq3WsWDhmT5lRJK1GhA6KZtr7hNPaFo3\n2awzP4HXg+CpUebOKntIQi4dYP4MZF8PElcBb7BZx6DFY9JUC6rplDs5/Xp0\nOgXlIt4Ta+04L72GXDbHLJK4SdBvOv5EByPmzdHWHtCxTj1vIWZ6KhyxglAf\nlFVPWveh4wqW8vxklwSRIKJ5pfUQ1Dd+3SmCmY/i/q0sPLFioB4Ftt+9ygVc\njTn4\r\n=d6p0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f8068eaa9773b7cf1016f9acdaa3bdeb759962bb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-07T15:36:06.512Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.8-lucianbuzzo-bootstrap-all-plugin-contracts-f8068eaa9773b7cf1016f9acdaa3bdeb759962bb_1631029201542_0.6431777679021002","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.2.8":{"name":"@balena/jellyfish-test-harness","version":"6.2.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.2.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56e2dead4f4241201294ee6a45dd0eb8ab8c7b4f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.2.8.tgz","fileCount":27,"integrity":"sha512-AutW7uuItSM5nlC9si8lO2EksvP3KtVwBp3x31ZC1v7zjy48jtJFWCJbAK04vVoU8ROAkKsRoEVLJjhVqu2G1g==","signatures":[{"sig":"MEUCIQD2q/M4sOV5X7sn7YRcxe6X+qipxywehPH94w4EWm9KuwIgThJrvvd4rbWApA3UJ6RijPwT3fZRWJZxCZI76umGobw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157543,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhN4l8CRA9TVsSAnZWagAAjaMQAIgLKaAanF4dwKEG96WL\nH6p8rDdlj6LP6PxaNQmewB2xxXAzt9c74ToeHMfEj9rR4vMmlHMkZGbXfCYT\nti5hH7hANvvbQ/+JCenXJE0vhjQnxQnPoiGaxMnWkduLb62Q9wMtGLlzEehW\n7S1gDAy9LAt34uNvdH3zlvtm6zZI8gtM2FV/3zjFSyQapChr4VhFSdP/+4wI\neopATb8ndxpr/sniuj4z0IZ2l1+QyYJkWA/H5+XnmpfwlNkbkgEhSZhvDMdB\nNaD3rSpOKkuBsxPZBp5VjZk4LW47qmPOiEvRNuaAQkricqusyi01mmwQ45v0\nhzVHnEPKYSoLj7dI6LutzvKkJYH04Ne0xNAWCX85lqKO/iH7kYFcICFBLDC4\n1+X4duElh+fe2rVfOXX7zJDTytJP+jgtKZS/Oe0feCMM1pfyGlmmAm4+9jwh\ns25WZ00IDheulW8dmJVEi+azO4Ms0Uj29eVdgA/79jQT4MJSw55AFTjFJPIP\n9Uv1RLktv2QW1zxmbW3btgEDrWPW7zkE2lUNDpc3lQyQjg8s5shvqYjzGi9o\nzA0E4Gc6+Mg2tEHzH5QZd/GNAst/LPllkyzqu+dDD8gyeLXmLV1SoZNZVxcQ\nqwF4KxtlnWpl8gvWLIeWxA7AFDAVWsy4nVkKaX+EmBtbgeh6ngsJOOMIaOx6\n6HZF\r\n=nPFW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8414829777de2e00cd17e20d3b565378e7ac1657","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-07T15:45:21.402Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.2.8_1631029628386_0.5539464743208715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.0-add-sync-9c866b37b9ad2abb21db85649b661842ab5c222e":{"name":"@balena/jellyfish-test-harness","version":"6.3.0-add-sync-9c866b37b9ad2abb21db85649b661842ab5c222e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.0-add-sync-9c866b37b9ad2abb21db85649b661842ab5c222e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc6bdf5d831622de4559d49fc3e203aa75f0498a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.0-add-sync-9c866b37b9ad2abb21db85649b661842ab5c222e.tgz","fileCount":27,"integrity":"sha512-xRRy0TTLueg1kubsb6vOhw4ol1oKuGcCCIBQflLbPDEUTJV4RhJLIDJCq7/qgzFM7/LjkAE+Nfh+PAlCIknLIw==","signatures":[{"sig":"MEYCIQDczASmoyBO+zbNvX0DWY0rYaLmJYFBHGlSoVg4938nJwIhAKzCHEqC4Xx25o9yyhfAaunhxzOVby4Brujy5e5o7+1Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158021,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOG8eCRA9TVsSAnZWagAApykP/3NU7FQ4H2i0dbvxSl+A\nl43H2QLO/mSX0WQllsNVd3PMiIYCjfX1IVDsZqdgzdKO6DJy0WgQOnRkxBjS\n4Pc7RQxrGP0+V4LssU1lArvBNFNm7kVCFv9hnh4wZBdGmbM+1YXiio6Mf1SC\nOR79xmVkXH75zq2JY8t9SZS05nZHamSZ7lVicb4/cI3zXFqZrZSHYg5D58D5\nnJAfzIj0AqU/HdlorIq88TLiMav7M7nWeVouhslKpbNEP9t+upmkPbngZ517\nvb/ll38X9G7qXK2xnR4URJrTrXNY08d8iVOsCe61qbUsDqJjXWiLyNrJkyLJ\nPtFyS2od5PuSVtdOvCvcuVcIeROY3EVVvFlGKAaHA+LcFA1iNXJbR3hg5Et9\nsRVuPq+ugqkafJVeqQPm80+wtCQx99MYbEig9XjgNbWzurCp+wNOxZvUruvt\nvX+W+9u/q8CjSfI8k+78seieLM+ZkBaNnvoC3+9opy3XuiZRvukiuhsdxnmz\n4JBesODR9XH6AAXOHTDrj/5hGDP615lW/UerXWZFWcY5Qed09KRmIV9sQUkV\no+oO/AB41q0H44IDyd6eZx0YxFaB3TQFw9hnVePhJmqldOFfKNSjRxa1PIE+\nYm5sppJBbdzHUwKstqqw3+UtTs3Hl1YziSJrO7bzuP5zaKDDxkhQfRxZiB+g\n7Y19\r\n=4yGE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9c866b37b9ad2abb21db85649b661842ab5c222e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-08T08:03:41.082Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.0-add-sync-9c866b37b9ad2abb21db85649b661842ab5c222e_1631088413833_0.4969557231313937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.0":{"name":"@balena/jellyfish-test-harness","version":"6.3.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9145aba5356f2c23b4480fc0cf9eeca7535e4cd5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.0.tgz","fileCount":27,"integrity":"sha512-0CJU/NMwO/iCN8jnKDMd1oDqMPW7JBXLykku14cwxxzniO+mwwiRZYzE1Xb0Ype05vmWiA6bEtK/sHQ6CjAHSQ==","signatures":[{"sig":"MEYCIQC8s4uReDMFfR315LjqfmYa1vm58c0M+eGNRPHMPONHZwIhANI9BE8om+2opZLm2VGa+14oLu98Ydyoxr5ZbMRdzqTJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":157971,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOHihCRA9TVsSAnZWagAAfusP+gL7zkO9dc+HaE10YZkI\n8F6GU0E6hvPEYTPAh8AQakJq2xJY80q5LgIK0X32oBHq/vRMYW6zjbKpwDgA\nG6mNmVAmkJ7oKr7AK0U1NBdNlxb/Uty12zMII82Q0BS6PKsfULMSMDI8ObfU\nd1JSQ7jUwG78aFODSkIF1xZZpBmqa5LkuXIh+xujyRWdp3Q2BcZiSeRPu5Cd\nX75n31RkMeD4fGPEiP9f5sn4wo1vK8rzL6m1jGGc0ltMOjAq4y2ZDIb3M18i\n6gm9WzryzbSvGtsJnnJgUdwH2FZekzZ8T9fdjZqR23MuWQ4PbnFHvY8foyXn\nIllbjNj2tPIHSYpRqsIU8qg+LQymLhBi0VnnCBThx9CXXnU9Zhu3wJ3ADulH\n+SW58Z9bXX+t2sdXhvJCnicd/QdMhV9YKlY8DXiS4OfY6i1XDwf5BC6hgDTh\nTyaxgwg7alzfY64/da8FNmYwxV+mObGPhgnx/Rv62bfu1alZWqE5nFDz0ANW\nWEXYrCjr2qy7+AaAspptBWmXHm9RxVE9plvV2nk2l8H+1N99xIOGoweMvfFJ\nupFTbGRSEZ+rhsUR94mhj6tscQWOAsSuYlsGzjuL48uxpGKtmfdPhNTDPi8I\nRvMlxGRj1Nfk9fKzq4aotv7tODFxwheZI/tIIdRVBh7FXzTCwtvxDs15vHJB\ndTGf\r\n=8Cqn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d502775a2683dc9d0883ebc1f2674ff73705cdc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-08T08:45:15.952Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.0_1631090849516_0.7890223685626869","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.1-update-get-sync-integrations-352205d3f826ca3303fa8f16d163ed1db3d8580b":{"name":"@balena/jellyfish-test-harness","version":"6.3.1-update-get-sync-integrations-352205d3f826ca3303fa8f16d163ed1db3d8580b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.1-update-get-sync-integrations-352205d3f826ca3303fa8f16d163ed1db3d8580b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"27cfe75c56ee6f94395f9806b867d01c5ccbc7ac","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.1-update-get-sync-integrations-352205d3f826ca3303fa8f16d163ed1db3d8580b.tgz","fileCount":27,"integrity":"sha512-kyAuuaBWdWOOTk4Q4CYDnvsQGwjJrMdXq+jPAKA4t9+rrJWcwdNRaGZsi6vFNUdcmvqZKP9wkESGw4a1J8rcHg==","signatures":[{"sig":"MEUCIFpmaBA8sMib19KKMQaQa0SCk8Y4ePxTe+ISjAx7jPsjAiEA/p/cSOEw1l6Y/y3SI08IqHYndtHwHsFpnSsv+FGxOa0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158131,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOWMkCRA9TVsSAnZWagAAvo4QAJlWv/kK/WpeC2YiFyhi\nP3nv2LSwwR+lbG1hDj6rdKmJFrrSdkFwt7GBCv8dtY7azicPcg3Dusjg8Gq+\nFefuXgwXDz0gS8pqtR9jeythu7HZ8oVYuUMoLYG7KdhOfrHHtcRKeM3+AXuI\nwANlpVJCHgK+otoWc+ikbMWS3FjuEssxHZ+tynwyNHsqJOvdNxpUOTCxQmP6\n4NDjlUCbs/wlVgAwGpejUSoJ+flstZuSrgNm8kOqdVy+NAAwba3TdlbxnTh6\n2THhNOh4PBRzQR4ue0CvrmhVBEimUVi7/WCP5kMLGsttK9jXz31aqMYLEOIG\nBw5ecSxEGcOJwi2hf0B0ylJTjUQTJIVyJRa+cSJuulaUXihQZSr4gFX3UG6B\n8ZgEBU01L8fdVYNkonQCoBsgL03V3evFMpJDKqBXCOga6tC7tDEB2owdYbPb\nRLiGlNxo5x9XlrT4vAzmZ/sLLA9VMafsW5sQ7uVlt03Q0d7+FC1rQ7gTgkmB\nq/5hPsy+MG//JPVCqqc3zaITnyOUBeHpGjxQ3bI5s5T4FXauJPwCIsb6nLSO\nKKcXDV31oDCN2o4hchComoLZTNA8KF2SPFfCNIiU3x5/0099h7tHlD8zfeES\nZvJShD0vtz57V/Qg6eKmyjSm9SEkWVAsr+X/thSXc+atUiP8Ifa6LsdqsMbi\nJ0Ux\r\n=5mCk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"352205d3f826ca3303fa8f16d163ed1db3d8580b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-09T01:24:21.590Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.1-update-get-sync-integrations-352205d3f826ca3303fa8f16d163ed1db3d8580b_1631150884141_0.4605940342182675","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.1":{"name":"@balena/jellyfish-test-harness","version":"6.3.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c39d29ddbcf03c66ef6a0a911dfac27eaa125839","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.1.tgz","fileCount":27,"integrity":"sha512-bHxLJUH3253RoDH3ZtLNQTfiYayg7Afra7qMCbTEdDzK81MaSE0YHBhuUr/gQqYGKIx7jz5GPqzHGGI71xuNgw==","signatures":[{"sig":"MEYCIQDvk/XEIRmVZTT9nwQQT1bvybr3eLK/V5n/0oBhw6/xVQIhAIGMglqXU2+pQnW2JVbFgDBGEP0ZwOD+8em2AqhjiQT1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158061,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOWPXCRA9TVsSAnZWagAABLYP/itNTOKCRn9ld4cqOZ52\nl8nSycYmV2hqdYvDQ3B7Kywq0pTRgBvkhs0eYWHNWmKkQNJ5eNGhlsyWFkCk\nScjS40ihGyRmBiS4NhPA1artXw1JF4ivJTeqSlu//zYAgFqjzGmEoNHoNFBk\nCNyj4WxDfCm6RsaSVXYGqGYDytsEEXn7AmF9dDRu9T0Xfb7NhbEr3Zx7ZcNJ\nx+ozHV1R5N/414S00261B37IWl6ikPHGJ47OlZRDTdJcf21vtilyHVw/vvni\nATxF5OkyRz+ys53tbHts9FceXcFM1ywOPAsFYaAhbBxGHNTcfaD0TlI72g/X\nSwEidwnB0x2oHGT5DAafOhKFHfiK6GtJMWSGlHBMmbSYuvMrnfQpfH/zJCoN\nljvEWCBKE2/l0Szxo+OtQSFfDrvNBsmmd4r+51SFqIkEOjvbLdIYyM13Ed3H\npQUxwaNiOl969irNs7TaEMHlLvArZOig77CVZFXD1HVenwaFdG7/B7uH9oC2\nojgtmKplQaYFKqaCPb6Ez7GLuFhUchPyCA/o8GsH9VuPJn0sBcedtFSMTIeK\nMPBY35hh3QUMmX6KmKuR+83iKyNJxAcU7ir8MEwUKTUcrLZRWfoUzwHIdO5H\nD4eFwGAg5jm1SZ2kVafa8seZUSk5dik2+Bb/5jdIyAaPas3nng22rrH1iPrG\nC9nz\r\n=LVRX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6ff1fc9935b4010b050d8b90686d648c3dd57110","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-09T01:28:56.041Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.3","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.1_1631151063103_0.5601004287828775","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.2-renovate-internal-patch-8f29d706d39ebe19906b9000578e47c8bc8d9af7":{"name":"@balena/jellyfish-test-harness","version":"6.3.2-renovate-internal-patch-8f29d706d39ebe19906b9000578e47c8bc8d9af7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.2-renovate-internal-patch-8f29d706d39ebe19906b9000578e47c8bc8d9af7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f31be3e02faf793a5c81fce7fef1bf377a09729","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.2-renovate-internal-patch-8f29d706d39ebe19906b9000578e47c8bc8d9af7.tgz","fileCount":27,"integrity":"sha512-CZJpUlRMGgiJke0XQggWu+Of+RjcqHuSfEcbuMUCFwbQPKA1gl7qnjdzUTCAuYIV32OYghB/LCSjeolWPWPAZQ==","signatures":[{"sig":"MEUCIQDsxYhliEoAlNdn2UUhb9qyHnp9rLUSRym4F6/dyBISCwIgXxW9uRiTbQ4FcrhKLaCQ2khk6cHBHsT//d6kCoBiy40=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158228,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOglUCRA9TVsSAnZWagAALKYP/R4ulf/R4FcUogRzbsWZ\nJ3ngXixgwbQmiOqu85qnYr0dv8HwzpreaeHMsdbcCIoaWYCbUGFn8djejY2h\nJSOXplAL8tW4VFHyplVjq00lndS7QcyZBpOCP/u+8CeJJErSdbMlP0PyszIh\nHrQENE7k/SJNAl9DoYvQN8ptcLtv8C7W+yujCtIH09fpYnhKPR5gCpH/Q/0R\n6qIeu7aMPYNfWW4Dxbz+Jta4FXby40Tyj63L1tXWCZCimAHsxi9EWqbdOLKt\n6moBUOJY/pzYeCtTdmsUrLjZYgq8z1dTEPpVu8CJ9XM6e3kKdUJ20BQxZfIR\nLcz4oM3dSjcUw8gxXALsWuuqGKC2W2EmjUqynCRTHNDObjpZ7UmOnEGRf3pk\nJSrvAyaNKP/biUgf/+r2rEJmJrNe9aG8Q5bcV6TSsaLomNxJLsAkm/xSpKrv\n6vV3eES9iiwq965FAWbmdiM2mwi7TIAfiV+5pFJtIXFUHDMKjnd+7HUxfqxg\njO6qFAPCCuNAzs/oZODPxRCI4qbekNNTB28xan3ItbLKtdrM9ZjZqp/fX6Vh\nPaUMcqxGIk+Ou44Pz9pCHDe+HGVLI8VP4ehBfGUI7WDnOJNLLxUBE0QCUkAJ\nrn1/V2i2vhNGIylHg2xXPhk3zEfi/NtCOz5d4lFRX+yw0Shc5Pkyf3q0kjTc\n4z7w\r\n=n9At\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8f29d706d39ebe19906b9000578e47c8bc8d9af7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-09T13:13:57.398Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.2-renovate-internal-patch-8f29d706d39ebe19906b9000578e47c8bc8d9af7_1631193428510_0.43826840771910236","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.2":{"name":"@balena/jellyfish-test-harness","version":"6.3.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4105d14e7463af268a56b183849cc354bcffcf97","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.2.tgz","fileCount":27,"integrity":"sha512-9fECP9IHkreI8gMykaG3YN2b0x0RL68i3rgEZ/6nYjxHUFP+Oh/LBWlRosvl+MAN2J1QDK6W2Rs4KQlAsygALQ==","signatures":[{"sig":"MEUCIEIBjGZPwQUiZQOIKzcrWE3GlRbRc0JMEtljGxeEYjBHAiEAjr/m99+lhfn4UJPcupclgI0byJ4AZUvIBBvVuYBWdeE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158163,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOgotCRA9TVsSAnZWagAACUAP/1VashltYV9moeQra0b6\nQ5G+q7Pr2uAPhUZl+X0EDzzg2cIwAfq9C6udBMXh3clnMn5hDLa5ez3p3WUB\nVmUYh3mKLsbWHRPMp8NwGXGevNwzjm53sZq8qKFflazierj9At4hg8C+llD7\nljEChS8IzOltvX8hpfOphl7Oun/fwjY4L4TAbAdnEcnv3sP+9EWSWL1ehq3A\n9Py0tKTF6nr/lRGewGLnDVXMy+b1fWFpm436/DH/xwTiVr7JZLNCV2vjdaK/\nzHc1kJ02z4DsoQvzi6VIH0Td74m6ya0SRAl3q9EJdI4903nmN7ndMz/vzc2q\nb5/LxKkgQXcI6kKVW6lT8W8KX8HaYb+z4SRpDRL1lmCkE5ADnxF5qcMRNQel\n3riGP9hRNvB4KYqTWjxPP6c+GhGYGRmB/nK3vc+/Msy2OJzgB3YBkuzPxerX\nh+R3a2EvvVyAx6s0f0TFdyNxPWsHSh6E1d1xruHWOORaMsdFx48RwqyzOsRh\nki2n6JhrZmD638vQma+VOY0MPS7kZzvXNLAGb6nm7fVrEDvWgjTdYtiGr4Il\nCFcrq3isy6CX76JC0IWTU/JobN8dFf9CI+j7ZpuO+oDi5Jo0o9DhK5mlQwQc\nN2IaaE45T4ciQG3tWd2yEsZzleeJJbJYgH2zYFLOq3wihIP4LbL02ECwF31R\n+NKM\r\n=awgp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3cb7f928e2d9c1d108e35fa4b665259ec81ac5c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-09T13:18:17.485Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.235"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.2_1631193645097_0.7972341695406235","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.3-renovate-internal-patch-c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee":{"name":"@balena/jellyfish-test-harness","version":"6.3.3-renovate-internal-patch-c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.3-renovate-internal-patch-c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dbfd480c5ae3dc713c31d2d9f7757ef6ede9133c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.3-renovate-internal-patch-c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee.tgz","fileCount":27,"integrity":"sha512-CjfsYRbPH/j52snSLXytV6IjjWJ2LQFwyd2vcN2Fj+Kdoj9vl10t/16wGuMM3FAUIiUg3aThPr0yH4F/Wk8gyg==","signatures":[{"sig":"MEUCIEN7E6KVnFVkFEubAqv4sEkdZL5s6ZBL6mipq3lGNK0OAiEA4uUWlgBPrBICX848IOSwrOQK8CwAKoF14xx9S2WGyZ8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158339,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOxbyCRA9TVsSAnZWagAALjMP/RZ0D7rYHIfWfqhkLSv/\noiz81PUwVi9Y2A1SUTUiQSq8+0VhsfpLbgDsYYYqwYTdSV75Q4KW8zsBRAXY\n7t1RyRhi+Jgwx1jNu6Xqjk8BPE8i7Ib+XMVqPVkDSALZ8t2Iyrxg7LrsKzoW\nawJDPh8Ra5uhOObngsmQFFwIXlc33YWz/RZr94abyqXMb1GDYvT6zDkW8jKF\neYhQyYYGDJnUulzdqIB9KU92E1whDS+VmYdPTBCe5wePXwkfyQbDLSUsOFI+\noFbNPBGrvfb/7r71l4ekXMVXG+LJ5YUvxXrv0MP1gV8Wr7DEkn+4fayTgEfd\nC69yGvLrC30HCWXXAJ6lmz7fOPEIqr4+aDORm0a46zjUWmIVlqmCJRyk1uZG\nfusvcP4wmln8NIADAz3vTv8N9hwuZUDFG0nYh0JDAJYj36iBhp8q96SVSi3B\ns287M8EB7vajsURYkRXz5/9hsFqVOSf10e8oNkbMF3rO2oi9SuyHHU5jr87T\nJHDEVvZEwEwz4c9LogcZlJPTukcvfSMzXYkmc8pL79Lbb/LdYLOksVVzCC1r\nE5p5ckWGXVIIPi3k2oxjPBFNU6CSyJBmnPHWKcNKZzJqHSTOdmZC9yoxQ8Ky\nHGEFwQZIm4qjb3W70AThwHQYrfGVxAk55uWjtP5AlQHoQ4saq7aQLKQ3DYJn\nVIcN\r\n=81DZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-10T08:24:22.434Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.3-renovate-internal-patch-c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee_1631262450392_0.4478536287162165","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"6.3.3":{"name":"@balena/jellyfish-test-harness","version":"6.3.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@6.3.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"597b27f2e622235e9bed356acf7f7ab60d6cfd59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-6.3.3.tgz","fileCount":27,"integrity":"sha512-N01KB4BYfnmCN9ZRnXD8ZwOcHAVFtNH1kAXfAzHy7zcT2wnLCAGadU6YD0g5G4T9bicXGBJkEmknOlhYipV+XA==","signatures":[{"sig":"MEQCIBpp8riDxjhFy4VG0SkL9LXorIHMDPUNT4vj5e4uK/KdAiBtiUkCSHrfUaFJEIIfYslknYe1BVV6k4slgwNspapQZQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158274,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhOxfXCRA9TVsSAnZWagAAh2UQAIi/hjzfM1h4zBbG8Alc\naKH15PQSVQgmkWS3XtuVXBStEcDHd98Ql5gm7XtFVHHz4WVVK7z/SlJsCD0y\n6WqQ5hiap0B5utinR0lNE54lrQP7Hesaz3eahb9++X2gcXGMqLlH4fXBF/9E\n2eUGNTgPnhU88ZVcxRuDdTxebgG6O4zePH7IVugnkckVP7xvZhUcN1Emtk8J\nknuG27IWrqr5X0G+nanEIPr4gaJbeksmnmB1mB2hjO0EQlviDkiBdXozTajB\nk3k50VfnYD4CewkOSAISF3qoZgy3FmZn/srNgGjbvQiXMI44miJSYtGHcWnO\ngDC3obTWEkPTyntrWfFeiMgz6KavA91buAf0hWVxzbfpwa1oDENWw1oJO0UN\nxuLtCEJuHGqnJbnbZzEmfyHMaRU3hhS5BAqkBoEu927/y2lVMe/6i6XC1Pln\n2UCtSfl6VyP5a4LwL1oK8DbB0BgMVozN1fksO7w0wKdcov3uu3zwQywW9n3V\neNeh43RoFk5bk1ZiMUDKYOg77fEFUk/qzAmzbIElhcXM9H1e9rwM1r52Sx1x\nQLq52hG7nXfyz5rK/pcqDFEdVlZqjnhePWcy8e2Xg7qWJxBA/s3BVesj0aWg\nL9AqVgrCHLHbaOoWYIULQDIWKBPgYW8+IrL2rS9FW0XtsPakoOksG4isQ0XD\nfAzL\r\n=uiaw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2810c629c70c0d0b866c93c1cb4ffe1b207cf183","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-10T08:29:33.799Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_6.3.3_1631262679561_0.16238444010994857","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.0-drop-links-0fca4ee7df6024d9440cdec23c87ebecbce36c9e":{"name":"@balena/jellyfish-test-harness","version":"7.0.0-drop-links-0fca4ee7df6024d9440cdec23c87ebecbce36c9e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.0-drop-links-0fca4ee7df6024d9440cdec23c87ebecbce36c9e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6398c14614cd9dffc3f5e664fc107df589c70f9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.0-drop-links-0fca4ee7df6024d9440cdec23c87ebecbce36c9e.tgz","fileCount":27,"integrity":"sha512-YziZiGKxVAGnTSd/LdTgs15+2xTiN2pqkxrC8T1uYMqfo5P6xXvN8GDh8/b0vh2jFKxp4xoJYQ/SN1TiQVrZHw==","signatures":[{"sig":"MEUCIQDfodoCSuiVDHELJ9Fkw0gA+XaMUz4rEwiSQiV+17ZCXAIgHxHjV6BsIaIvB96pgzj+Wmg8uwHlqUt5oroZbrMLNvQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158282,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhO0daCRA9TVsSAnZWagAASBEP+wUA83kHAx+utv/sqBcT\nRR0z8abJa211fX4qQGNM3gpRiDXzbnIOrRsiUJybYnrwai9lms9yTQx7CcKN\nk/bUDAdzXnwtFe91vKTare7tkvCBL20Jxs3yDc9rVdzJx+qSfChgXwWc+HOD\nXV4SylZNuIxqCAXeu/5fFZvnG1lOcx2jirR5iEsHTY1f7WfmtGcQAJYuqthp\nc/qzAZMHt0Ad74zl+Xz1H6Yz4/lYzqoRvjfGMPj/A/F38S8kdPot9zp5B+it\nDdDaXKbcMN/ebhEmxLjAC8STOtIQAY8w/LIPo4yOzSxQAeLSRi4/k6GsmxpE\n/04WTQaRUeD+Sn8KrDVflK9i+v9GQqNeXS6awn6ryJLy2vrormyYrHZpwN07\nFj7Er9KOQS72+mtF2vwO1uoh5+WxdM37Brg3Q01LEvhdMuDwjeNQnot7BY+q\n+rVhfKTUpnxSVahYDViDxKSObRddEITZiKsfHlX5tbhUjdVeo7GuVtbHigrh\n1xBhU+7kkQfp/zMSIY1Rfdsw+wJad7ZkISqES0AzEYjDo9JCcgTb756u9082\nq2931TNprP9+SZbxT0jiFl4uVXQvbGXpxc0oJu2l7TN+Ymcke6vhcor2p2Yi\nnZfdHDexH/5wUx+4FKCNval6rCMeDmq1/VmuoWIk1WF63ygwLtS5LqC5TQ7K\nzjfF\r\n=ywUT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0fca4ee7df6024d9440cdec23c87ebecbce36c9e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-10T11:51:31.197Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.0-drop-links-0fca4ee7df6024d9440cdec23c87ebecbce36c9e_1631274842514_0.6705366002479809","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.0":{"name":"@balena/jellyfish-test-harness","version":"7.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"56ee3099362f61fb5bf0fdc0d312e101417bd7b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.0.tgz","fileCount":27,"integrity":"sha512-7Glt6JN2AFDyGj/QCIYOcvtuHthGXe8y3NlVsZvzMQjL2ILQuqRjxqo0dwGlef7gvLyhYWjlFYkVc/aUY242Kw==","signatures":[{"sig":"MEQCIEFztSNdCGZGedHWT2pwYpWPTvNp4hRaRrQof6DgBV8AAiBbtPW+jdbkwBTyf9FUjyMgApGmXuEOjUNy879VNdheDw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158230,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhO0grCRA9TVsSAnZWagAAcg0QAIUo/gR5HwMcGNzvhPEa\nAtkZvuIBtwoDvfnnUonkaK090UVEywl0djR3ku4RQqfQwA/lL3cxlSyJ0V38\nVZDIfncwpcBve4qNoklf/jmpimU0C4rGNLzmCciOgkr7aa611JkN2YHbYZCh\ney40eC7V9/7129UkC5xjn77pMPrnN6TgdPbYlqQ9sbbbs7WuH6P8NAF0EufW\n9QHp+jhYXpVZkmD629/tEaUiLeBtB4bioSQhSGwAx78CGmginY5fcv8b1jkt\nGOPClUOG/6NfSPqWJHL6TbTgqz1pGVZFgdhBoRjvKentxb2pfUeD+cVLB6OK\nhYMwRDtWLmTVQ6sByDlFanI4x29j/yDgVW79qtRXXs971rprJXsn/Mq219Ww\nOQx+/TqXANhLH7dhYBI4b0LKtdy9nrOUT9gM6YRglwnSrJwKuGHv0c7JWxtv\npT1KbZKn5kDTujSNMPL1l7zeZqqe0rr1+MJXrJCDTf46pqe0O1Wal9c3+Z1y\nNMYRjfxPhPmP9BDAEZ74lmuDDvMIRLO6d3u4AAAPFIWP04IO6tMHU0UU169u\nuRsn3ZxnoNaJJfKxDtObXYzmja0sb839aAciHkQ1kPloFhLfKV0hTx4S4SU9\nDa2lMVzoDyhCEktIxck62XgHdERz7nfvr04VIs7hdOCwHldjTZGwB0oMXjs1\ndlgF\r\n=2rdb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"df3cedfa9fabf2b85bde3125b58793e63e992ca7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-10T11:55:18.173Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.0_1631275051595_0.7799009122588003","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.1-renovate-balena-jellyfish-worker-10-x-cd5e8dba175df006545a644bf83a0ddbec4b8ff1":{"name":"@balena/jellyfish-test-harness","version":"7.0.1-renovate-balena-jellyfish-worker-10-x-cd5e8dba175df006545a644bf83a0ddbec4b8ff1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.1-renovate-balena-jellyfish-worker-10-x-cd5e8dba175df006545a644bf83a0ddbec4b8ff1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3a2b5030747f4f37751fc6d935b5887d5cdef5b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.1-renovate-balena-jellyfish-worker-10-x-cd5e8dba175df006545a644bf83a0ddbec4b8ff1.tgz","fileCount":27,"integrity":"sha512-Gjfhhm6KXMAPDycg3UL1y2BnTrAc5eCKLGmA4d5Am21gzmepCrAE1QTHEZ9D5nBvkm21H+l+Tils7N2q8BcXag==","signatures":[{"sig":"MEUCID6XI7ByoY4uT8bDPJ2jTbZejp9tpI5UKo2jSG0u8OkMAiEArnUlRhssBEnu/NSpVoEVtgAeLgDO185J/CW++mzb87Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158411,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhO1g3CRA9TVsSAnZWagAAtXIP+wZMWuSjewciVBTJ+ndI\nESM9+i/gqi8VzG3CmzMCiUNUvFF4/LxBwpeDFUUYnvKgUxI1HwCZhlyxDPLf\nkRlM4wQHrvH1N2OS/vb6OIxS9TtrS4xAriJ8eXDZYsmiB6aEPTe2Y+dT2bHC\nfZCUCQGABVsOuccXzjUHuTpx30BuUtBj39GPqO5l34hNQ6Og/0hta2GATN4q\npotGchiPQWWu2UwfihOSv2WODjN4r0S01Qag6KnReS/kdnFLACZxSVpVVL2R\nDpa4s6XokPs0CBLKXRzk6Pdgiy5D2rukHyhucZComIOVhz4FwNeHU5hN7OZ7\nczxTJ9S+3xWZC1eJzdj5TT8TkyyKWJQd4oeZlNooxEJb2vOOuCLLk5hpRKdn\nHOVQhjQ4ucFqmW1kd+r3F65SoKBqZsBJw279XNp4NONYZV+Im64nSO4YWOJQ\nN0wUEQ9K0yXfndmTaEmNRlK6nkWsETwyHjnVST3c5IliSqFpMT6CD67BwVwu\nRJn+BlWEGSgQPScDB8eYbwXlvK97mBWKIYbri63GxFYy0my+P845pjiM71K7\nbwoRTEJigcExAW3AH8cZ0nkRfkxXm0tqqbWDv33HIPh5u3HmLgcvsxouewcT\nju29EQMcbRwlfRxiFJenHPil2zBrrW5j6NYXQvg5KbP6JEZWWAWqdfBO3ZLj\n5Uqw\r\n=Vdi8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cd5e8dba175df006545a644bf83a0ddbec4b8ff1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-10T13:02:21.265Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.1-renovate-balena-jellyfish-worker-10-x-cd5e8dba175df006545a644bf83a0ddbec4b8ff1_1631279159046_0.3168845903779205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.1-renovate-external-non-major-6e67c9d68bf3cb9376d0c14fb72468649e548a30":{"name":"@balena/jellyfish-test-harness","version":"7.0.1-renovate-external-non-major-6e67c9d68bf3cb9376d0c14fb72468649e548a30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.1-renovate-external-non-major-6e67c9d68bf3cb9376d0c14fb72468649e548a30","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"69aeaf85d6bf429196c0b91931fc600dd8d5dece","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.1-renovate-external-non-major-6e67c9d68bf3cb9376d0c14fb72468649e548a30.tgz","fileCount":27,"integrity":"sha512-hamvXMnyFEIVqTtT/aNoUQePPyAgR7lpr2K99fZFEDo6R9V7xqb8a0dUIgWz4Y0139z5Q8aZPMr2m+nMBLkESQ==","signatures":[{"sig":"MEUCIQDNKcEH28pcBoX5i/eFVJg5FpPDar/n1Cd11sXtf+PTogIgWkK/kjJmumGxf6ct3zz79srifiiJVUkj5nQUgxXTa4o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhO/cXCRA9TVsSAnZWagAASvwP/1HHzWGgg6OeLDWEBPhU\nkO4+D4Ubigh6Im6DaRWnj4KdOK7+k8JGEbrx96tz+M/K7qn46C9kVioyJVj9\nNPJQ0GNce1Jzj7BXBa3QQqdz/JsyPCmInEm7bpW7AFL3pjYV3628lR7LpgVB\npRhqlKLnMg0QF9DG6nQJNuZqfD7bP9A0mZ9/zyK+KN3XZHY60AOlDONG9yVp\ngPAGKePXyrYln83D+h9aq2CLOW8N0YyJhc2HriTwZhI9VMQczr1EVNiG53UY\nf8fez1kdmOUt5CBBP/dWmoGd8HL+mYki7SW3PZLt+TOibd8XoJO5Z1w6Jjs1\npPQPgN0z+rQbWT8lO/OL8ZjSRCRM9KbC29dt1cMceCPXN+g5bcvnpi7ig18i\n3LO/h5fL6QeVmFEEO7UqxSsNfex37MIPPfmThxWLuSFV/SlGJHZIrwREbYzq\ngrWWbzebKKIXgIjxSPFTFXcAC2NuPJJ3iSMw4fSjgVk7Pj40K2B1/e73pFpN\n43rohqEApXs9ZQtSQexTwHccj3gaScjehUdBvys/HBpZpbOUf7YE58sVsE9j\nhe32l8bIwJVhoBPMPkDibqXjEGmQxFgiq692ZM/WtEImL0eircSAyLA0MXzM\n9jkosovUW3xTFq2zmOFg5sPMU4u1Jm+6JelQhjJOjpcJG9In9rzYi3sFNDHc\nBCIo\r\n=mXZW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6e67c9d68bf3cb9376d0c14fb72468649e548a30","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T00:20:51.136Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.1","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.1-renovate-external-non-major-6e67c9d68bf3cb9376d0c14fb72468649e548a30_1631319831812_0.5679799104614298","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.1-renovate-external-non-major-cc864abfcb3031bf3276152ff8b7d1a614f43368":{"name":"@balena/jellyfish-test-harness","version":"7.0.1-renovate-external-non-major-cc864abfcb3031bf3276152ff8b7d1a614f43368","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.1-renovate-external-non-major-cc864abfcb3031bf3276152ff8b7d1a614f43368","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25ac9428df2b9283526cb5e0e11512dccb943cf2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.1-renovate-external-non-major-cc864abfcb3031bf3276152ff8b7d1a614f43368.tgz","fileCount":27,"integrity":"sha512-Etw2xOy2h9j89yJt0dp+KYpY8Xlcya/ItnhfCgAr2BIFpvfsI8NmeZxVqmsUCfLpJyks0Bk90tjxpjyM+OrsRg==","signatures":[{"sig":"MEUCIQDtSzp7nxAJG2oWw1HPGyPvxAS53R2BnyIiLIqvOIqClAIgb/WVEKWmpNdRwmjwx1zF2EikUxN4n5Bim6xrhOIQ07Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPBqDCRA9TVsSAnZWagAAH1EP+wbIzeeHz+naaI6A8ytw\ndR/RxeLqkRo+kfRb+cK8tSDsM9WNcUBCUV3LQwiKbrmkGsx6LI4qbWZssrk0\n82sIHA0JAgtR/g8E+cEuLfplRDkDHeCJaefQvPqwGSK6o3Os1uV/Tq/OLsCC\nE+elFiTZoAMBj/m9RGFvP5preMqc7vDuFnRD28+BESBLw8Qks0b01VXMPTtS\n77rI2JnWycYI2A2dvQZEEDZwrRpYevRNage40fpL6RRfa0pPwNNdW52wH8kJ\ntzxR3cQya68bxhISc9lpHzAD4BSahH83Ma5vtG/yiUGeu+LenaSw8vtfh5P+\n+mH04pBvrh3KFpc03LdHkH52ziAogHayximwgdzN4H40AN07g4dhQONVXI4U\nX1bThWtRHRNaobZjyaOeEhPjHHQ2sL7OEQuKTozzUqXkkldDuzfKq4Phw56t\nIC686PchocbmDss1U/DICmby0wSH1ESlLOhkcf4PXR7e7Mmm3g+iVNBF11Jj\nI8pYPFmoCl7tj/M7vs2TEA+C8ghbgsaSYPYeGrJR6TfKwLCQWQO22IFxgeXA\nVEZyffUUDAvPcG/lURK75WBOKeu1QL6Pay/s0VsWZ9NBi7C9VZnqStNjhCnK\nzCDt85C7PzuIvZSl+bMvOXSNzFY6BWn7s1P+VrIjPgX7e8Vey/jMS1vEyQun\nicsI\r\n=1Asl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cc864abfcb3031bf3276152ff8b7d1a614f43368","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T02:52:21.260Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.2","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.1-renovate-external-non-major-cc864abfcb3031bf3276152ff8b7d1a614f43368_1631328898877_0.9504539781515144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.1":{"name":"@balena/jellyfish-test-harness","version":"7.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"47ee5fefe4a6d2dd012649ba4abf63dabc48168c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.1.tgz","fileCount":27,"integrity":"sha512-/n6l/lhyBOJnED/jhQVHqWpW5dLirWuu1/gxBpco4nB2mpcKPB/Yf64koM9bQw0Ny+6x2pWmlQHNu71irXmwyg==","signatures":[{"sig":"MEYCIQD6dJzCqpyoDSE5G2qQng8FvttqfwcZLCxa8wKlkHFjXwIhAIwL/64tgp0UgZ+jR7xcsgD1nj2yTU/iiHX6H4yrcJtk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158332,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPBzmCRA9TVsSAnZWagAAf8wP/RanXgfcQ3gdURhbJIqa\nH0CwkR0psKXRiIc0qWuKLrNE+8Btui4oEtv1rv/UgJZGtiA8GCIqcGuC5Nuo\nyA7nyma1x0a9vNHmpO0KT+24h0kH8qI6THzeRD53Ya/RZZzNEdSIZ8oBnVsr\nW4OtXOI6qGH+hRIUjvTZhyKxI5QE9MxV5XKo5S/yuaPdevXwK9F8rFtGZzg2\nVrsHQXSeW+ZbRXrphCH1LaRJ7cYbDDTNWjxaLTIuurntTrI07CroKpNUttWI\nNBg/wxjlNuhb05tnMN7jo1qAxsf6LTj16JGZAJr4KQDJTpVODJtdzq/gyf5r\nFzHOYxT834Xfhus1W0dM1HRGdb+i9+LX8CB9sptbVTAGssb0PmtN/b50o1N2\n8d/HmiOMWZK8SMtOiyw8Ri7JtZf1fTuKM/n7C/NYLTqPB+PND4o8f6gCMO/o\nhc/ucigw+f0/CyCx28XE2qddYhT0YaVz4G5HuS07EEtkIMqIFzGNJyyK+9RH\nbCXegZu//f13n4JsDjAWs1CTKECg4vYX76V1e54NizTfiXWadq8FlnUEvSby\nHf5oHscNWcOyfVs5XrZ3+O9xW+SM0WKkrR86M5OZq4WcVDTOrXWoh4RC07qU\n2+i2R8Il3ofvQjfkRujkLPNDlr8BcGWbMSXlb+TrX3/wSbIVNsQWEf0lkPNy\nfpI2\r\n=oQAf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3bbb3ad851950a80ddc62234688356bdaffa3339","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T03:03:12.617Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.1_1631329510317_0.20226576463576684","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.2-renovate-external-non-major-a67318f1c715a1c505db1354d67a27d45677937d":{"name":"@balena/jellyfish-test-harness","version":"7.0.2-renovate-external-non-major-a67318f1c715a1c505db1354d67a27d45677937d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.2-renovate-external-non-major-a67318f1c715a1c505db1354d67a27d45677937d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"66a9f4ec021089dd0b1b0338b66f4ba0d517a791","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.2-renovate-external-non-major-a67318f1c715a1c505db1354d67a27d45677937d.tgz","fileCount":27,"integrity":"sha512-iSicjRtp/CnwMbW4f6UsJkh8Vtnp+HfZmaGFh0MF6+df3tuG7A2abc9EKJkXhzpDEUNEKmcnzy0y4IH0Hz3MaQ==","signatures":[{"sig":"MEQCIBixTe4+D4zRKa491CXNFPj1GVNJx5KDCRDIaOqxf+8SAiApxTcJ0Gw97HJzUFlIwFuzNR9kXANRXYxBenOebNoCOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158478,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPB3ACRA9TVsSAnZWagAAXdkP/1clXlmMCRYRt+HVkyTv\nVisTnLFuGzD0dJwub7QbEXGyUOMiMSHrb4Ou9D7wj1bNQEty11S3BJN/BXA3\nsM57QY5QNjAWj8TW5zycJcONqRo//2/34w7QQJsdlu5yo/WLDVgeBv+OWVKt\n5XWesZYDTR4BuSJ0ymfpyZ6E+lP0W0OlV12zuA4DW+ubCvZ0cRjj6TdLLT5D\nhTIQAJ51PPgQomFZM1uKZScFryKaqMjx2n0XtDMUha/SKJYmzdcA/EbtNXC5\nuofw/zU47IGUcakhYmfzfPDJV4UEoiiN6l06+FRIXFpI/B/nzyZvrUsbtk8h\nIPsgdzEG2ar+hPzv2cThVP9lrZ9eetHIvAmTSdNMqCNqmlBbRhZQU0naeFkC\n0FLyhuIIR9P/cQ06U5M1q6ey29NjemTsDUbTvZWFWM1NJ1EljYxd5QZmOzJf\n8CxU1vF49zp0xuzmFPuy6DoLwX8wqeP3jbYWqTUeYZYM/Tm1JyJuE3l5Btva\nf8cpgebXQwpDrqkRvIWCcR8KDjWIVwZQggr55OfkEmkOLrqRUAojpfEmXagY\nwLV2DsJSEESmqvvZjhKMVZZwiZIpdedovQpuEv0pnDS6CSLrUv6ANSvMOx1l\nkBnhcFBr+LIF2DwNXyffiTWWOvucmZLzW2a8wO7ySeeRTNOtwtOc5liL1CLW\no8m/\r\n=FP2N\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a67318f1c715a1c505db1354d67a27d45677937d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T03:05:31.717Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.2","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.2-renovate-external-non-major-a67318f1c715a1c505db1354d67a27d45677937d_1631329728484_0.0040505875085286025","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.0-add-more-helpers-130244f7bac8001ce1bdc61095d15e74e4a69693":{"name":"@balena/jellyfish-test-harness","version":"7.1.0-add-more-helpers-130244f7bac8001ce1bdc61095d15e74e4a69693","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.0-add-more-helpers-130244f7bac8001ce1bdc61095d15e74e4a69693","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8e76ffd77639376df8e2833a668b13b27b3753f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.0-add-more-helpers-130244f7bac8001ce1bdc61095d15e74e4a69693.tgz","fileCount":27,"integrity":"sha512-gM0+2Kgq6ZXxmOvp0mdhAy3DBrmEB2jqO7aDlQdkS3id9HsDiMJZXptf2UgdLZuJt+WQIC/2PG5yzeTbsL/sFA==","signatures":[{"sig":"MEQCIC35KTbrSu4txwT4YB0g4BzPjl1vdfNyefeboKe1nvpYAiBUb9POCfqKfmqdEkY/dqXt9orVz4FyOmts6z6S2aN4cA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":163537,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPCWzCRA9TVsSAnZWagAA4SwQAJsTL65M/vW2YayLncsB\nzn422uHhJSQcJoVo7l3JMpGeoBLD/ybwipDXZd8la4BufgkvKUBzEZ98YXod\nDHYiJS5azCjiV8JSvGbb4q0CBVxzYZ++fwHn5kYObw/o3I34+/VMH+cOp69y\nenotu2NkQ2Z0Ki/9a+OgbeSoc4wJeOHk69oU1Ssw/5MyH4wCo9IOG285wRlF\nfDanEABFUGaby7FW0N2HV+oRrMLIjDSBeLYFocFFEb7nYiS8NrpQpXHlmbVT\nqyYp56v8uuYrH7f9+tPYmnv064vLbEXRyfFdtTFL5Zp3UEwpKj5zlBrPZd07\n7MBhnn6TDbTaq8b6jj5iR8SbsvUuxD9TURT+lJiglllwoJG/O/sj6yLiCwL8\nkuGmFx1z/Cjy4izbIsQrZpoJIAc++wMRF51K/wUbmhFNFKxhk0WCcJ5W7Zqb\n7fO9V5/KGcwUO3pcMlzJK9tLpab0ga9H37z2h9hZXTDCiOivEL8Bu0pRZqnw\nZH9WYtR6bzCKc+J30l908+ZExISO/B7KvYHHBFKAtLcJhY3BriydtsRSLQ7k\nGAFkA5XJ2tSdVNLJL6UXXeLl9CO71xZ7nLPZ5PQegDOyVxkOihoEoXQ0XZ+d\niEvvmqYOQvxFGdFF469wq5SIxjR1quQAX7lffQaYp3FX0A4tgyPQzD2/pHnt\nzenn\r\n=IPHG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"130244f7bac8001ce1bdc61095d15e74e4a69693","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T03:39:18.937Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^9.2.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.0-add-more-helpers-130244f7bac8001ce1bdc61095d15e74e4a69693_1631331763727_0.06938939327216254","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.0-add-more-helpers-1f263fec0dc7f555ead390ef8fe44e0521a1441a":{"name":"@balena/jellyfish-test-harness","version":"7.1.0-add-more-helpers-1f263fec0dc7f555ead390ef8fe44e0521a1441a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.0-add-more-helpers-1f263fec0dc7f555ead390ef8fe44e0521a1441a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"086f1e2c02b21726bb9ed6402dd93dfef3b6d14d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.0-add-more-helpers-1f263fec0dc7f555ead390ef8fe44e0521a1441a.tgz","fileCount":27,"integrity":"sha512-5wQUxl2bQM60uTxmOLwtCNHa8YwkydHLgtcZqkjiO82lfbJanr1Elsgz5hgpfzu5GNtifeQ6K3B+l53o9RlUyg==","signatures":[{"sig":"MEYCIQDhvIVqiZHbVkJT0y/BD5vOydiklcRZ90/rVQV6tJd2VgIhAPrb9pXBNc7cW5mU0ipq8wjqXpTGgumM86T2CwrMWhIe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164532,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPDBRCRA9TVsSAnZWagAA2NYP/AoWVNjIYfbOWByeDuKL\n8R8yCmSbs0m+RNN1ViGqOVHrQmvx7F37OcfkV1xtrsr9uWzZH/8elTFaN7IB\nvD1sXQqYtgU24glEnH+ZhXs7i3JKV4Ok+b07cTMsfsdjFTeLKbuh9Y3AICAo\no15jzp4bNKS3DUFtJOHvlHifl9WYUNzfkLZXTfCbmcYqkSELZYeTH60hCfpb\nKksaHRwwo0mx3Fp4EXLbE8f3DZXkBZn35f/vMM1570uHMnmbga2nceFwnvNA\njGQ0wH1MkZCrZYKS1ihi9XfewJK2eZRRpE/Mjq2aMuvSa4UBU8yluuflUfEI\nmDEP8YdnLoLv3YTZ+zrgR7wzW+muLxA++vxEGIXnumP2u+If0ibUgivL/j9f\nCGlJlWS4WQ/qgFNsda3KWvk7cvCciQje6raUg7ZBSDG9k3j9vHSvbGR0F0XE\n5IfNvsGxwrqSDkCmE/UeBfp3VBSlUbqGRLHDtm/yH441S/B8CaxMxfq48JOA\nN0MCSyboUshtcvxwC/sf2OC6G/QEvUg7larolb3gyftgQB/NJCJpfmYBLf5w\ndX7m5bmahJzw5n0gL/RxNPttsKpousen+7CDj2yX35BUK6xE3vKyj0A1kPKL\npL0lDCIfKZuJRzCrwxjIMO9dJFLqqEkXqK8AFWfMV7QJBvI06+mZJRheYghK\n6Gjw\r\n=8NXH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f263fec0dc7f555ead390ef8fe44e0521a1441a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T04:24:35.190Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.0-add-more-helpers-1f263fec0dc7f555ead390ef8fe44e0521a1441a_1631334480942_0.9998818232266617","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.0-add-more-helpers-22a7c30811be8a572d186eb394930ae460e518ac":{"name":"@balena/jellyfish-test-harness","version":"7.1.0-add-more-helpers-22a7c30811be8a572d186eb394930ae460e518ac","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.0-add-more-helpers-22a7c30811be8a572d186eb394930ae460e518ac","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eed53e39639ee0611b4cba8383097cee3b274046","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.0-add-more-helpers-22a7c30811be8a572d186eb394930ae460e518ac.tgz","fileCount":27,"integrity":"sha512-GaB+glNuqqfOvTaE1u+i3eBdDiI12u3u7GJtrO0GTI58psBYAb8vFW3oUS034mVn8UGPoijq88A18gpcPKZE4A==","signatures":[{"sig":"MEUCIQDUS7LfKqFSF0hsLeOfY/CkRW/zY/Z5zalhferJwVk0pAIgepBeVmlj3N3NxWchGc+5elqBvaWi7t8rhkrus0FF1I4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPDvLCRA9TVsSAnZWagAAB18P/0oXQjA59Es0HQ6V9sJi\nQSgE5L0BlZv+B+djzoVsQOLjGuKt+67V+9aqW8LOtu1ERfOdxAORrMm+NYit\ngM3v7iSGWYAG4hx7Xf6JkWGja9sYL4vVk7vvmhxs7wIX1WkUH2LzTc1mAJ9d\n4tLpO0bC4omwdKEEiS8YWfyaGjem5lClUJBLC46q+3TjOxZ1/i1B+yxfA1gN\niZNUQ9JtiGo9sTw8Y8IKz7njVdnW40xOIAuMpXXqgEGm4ht9KJU+qtvmJxBF\ngN/RzuisOLS1SklDjBP6m7cBHw0GW8+fJVzi5vQ/SqH1Xd9aKxJ7umZDFOey\nMhq3gp/emlb25J/qiK4lM5x1Ctzs+tLE2XzFLXPiBYsOU35xDA6AOclx3BGv\nXV8kjbhR7PapD7wXomuZjwvw10GwOvAR+QWi81ZGaR3Oka457qWouASgSEMT\n2IoU+nFUyAqhG7I0OVPKPzAJ9kl+IwduRDKi/YeHd9UxEOK98VxnhixHhDhH\nAPlvbzIDk7CzmKHvH2XrVwyh38n7vsI3YoAs29wCtAyX87Znn15nAURzpIai\nd4yVvzk0HsNtb0mbFrEsnXqZHtQEEu24Xmbq9AkpZ4FKleYRqQ3lJxaQowpk\nIwzu0iyQmh8deZPAsUgXR5OYJ+DiMihGIgazpAhaYUpmE8XZbrS8WqVgPUMR\nYph0\r\n=OL+y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"22a7c30811be8a572d186eb394930ae460e518ac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T05:13:51.100Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.0-add-more-helpers-22a7c30811be8a572d186eb394930ae460e518ac_1631337419400_0.7478720818420175","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.0-add-more-helpers-cb753ef0fd81293310f6c6c145af20e78332c3db":{"name":"@balena/jellyfish-test-harness","version":"7.1.0-add-more-helpers-cb753ef0fd81293310f6c6c145af20e78332c3db","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.0-add-more-helpers-cb753ef0fd81293310f6c6c145af20e78332c3db","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c16cf0e28ed401870f97cfcc509c5fe2f765ad4c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.0-add-more-helpers-cb753ef0fd81293310f6c6c145af20e78332c3db.tgz","fileCount":27,"integrity":"sha512-HpybwADgxd0YHv0F0owWg0/n8xpXXY90XvEOSu0GA0AfXm8ZP7r2NQNWzfSPXx5LnRvA7JGyAXcYmGTPJSinhA==","signatures":[{"sig":"MEUCIQD5c6Q+LsUytMPEA5EO8tbUT8FEKc+74nLi/iHOHIB6owIgGIHjqv5I/V/bTBR/8YzMpU+x4dlYgfreOtGbYS/GyPo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPDyjCRA9TVsSAnZWagAAuccP/RsnYX+19OT7lus9QP14\nAaRqu53JZ50imZGXDqyjo2CktNTgLfRXm/ixxbxk6Ot4o4OoUqPpZpNgVCkl\nMOWPaqlFFKN930TE7wfW3xmPx5L3aw1Gl3MrahAgiohB1p/etZ9j4Wr2ScCY\nHdqzCzwif2YBlX9vEfBPVF8fDtBWrrtNU9bfw5pIVVyC+67FLQTaTGundwLN\nBi4sANhlKOaxva/u6tQQnPIjxXnjb2ZlQWoX4yD4K3WVzyAi/tDtpSE/TYds\nJQPPE7TA/dRBGo7Tf2In7FklAOK1BvP+NLEr4E/7Ls1KTXtOyGt6i6CYJgJ7\ni1TUf3OCZT8zbKzBOTgIBHbEd8PIa05hK9vCJHyeD+DRHt7fgWORz45w26pv\nD/sCWwxA7d6lJ/ardaqnePWaZQL7wIPNOMaHcWOrGul2iShpCnX7sd97LSAm\nh+IQztbfhJ3f4FDaT3IHgupOpQeh73WoS1yROjkfN+hRFXDHBYmsC58PLhMb\nSqQyU3d4hGe3Ugs6e73HGTVWZzXCzg91DS846iqWA9+QsIOZHoXf0bN2tCX1\nTGu+0iWZJvCSEL6gpUmsYyM0vLVnv9an/t3htZkAiqp3d3EIT0c9WED9iabN\nAR13QxbS+BpfKHJVdhG3B6CkNe12Zgqg/sNo2TSMNurdOnE5zFarvxl7+oba\nMT2d\r\n=gNYP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb753ef0fd81293310f6c6c145af20e78332c3db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T05:17:21.522Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.4","@balena/jellyfish-sync":"^6.1.21","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.237"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.0-add-more-helpers-cb753ef0fd81293310f6c6c145af20e78332c3db_1631337635192_0.48268737194754086","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.2-renovate-internal-patch-681b28d8ad3b139c485f9646aaba07fe47f15214":{"name":"@balena/jellyfish-test-harness","version":"7.0.2-renovate-internal-patch-681b28d8ad3b139c485f9646aaba07fe47f15214","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.2-renovate-internal-patch-681b28d8ad3b139c485f9646aaba07fe47f15214","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8ae5f83b5085c9b4dad56a2e32e169ae48d3c4b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.2-renovate-internal-patch-681b28d8ad3b139c485f9646aaba07fe47f15214.tgz","fileCount":27,"integrity":"sha512-qQFRcdCjYPfveG9r2b8Bqbb1zyzSFGRdG4E7cfGvoWxgTPesqiF1G/6KHpLX1zto5A/o2B02uKAaKS/H+P8CeQ==","signatures":[{"sig":"MEQCIFtQBjTODDXFo7hRggtfVH7+3KuTMXy+KzARbGyCPDb1AiBVAfU2076pBf0M1uOrD8oW4IzlfbMS9D0A7IZAfZy2ww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158470,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPG66CRA9TVsSAnZWagAAI7IP/1GQjqhnGjMShZTnhquL\nvFFBKxD6aixr0zK6oAth8wx4IaAmkIZSg8pGRf9sgsQmwAiZ7Bpr+7r+2H3k\nQFhL+xphZdMQeW8/Ri0Y+pylukPr7g1qFgclOeoOnF8EAyNI6QLZ9zBjMxWk\nXdKbSz/xMvSoPCyQ+YEXp32RTJknM0YRSt9qZhwtSqdGy4MHqtAYGiZvEpP2\n0p2Ja54i6tPKworUvkgv56i+btmIHGBcmSvQjLl8F09Lw/V/ku0DoMHa9xMs\nMY/89TYgZjJkLVQASRTQqxorLnMM3QRvowpz2DY1CX1u9LFHmjRFHC0KsJN1\nx0Iuk5CH5FgqOk+p7sEghyg/zWoRGRIg+9W/ZuHmUxVU0l7A1JqQoaZNGvoz\nV0MwkL8qxt7p8cyVXOXdtKlMJWusi99tFjaJ6FMiiDYsQSVNfp3FdKqR+pS4\na9mTASOwMAGs7dJye6edtByhBXNQ3NWgM3hkZrWiT9toeuSdiOHnZNOBspTZ\nngq2//7j/PVoQTYC2Y4y1DE9l3+oaiQwE2/tT+SjrIY9Sg1fCv8hO0QzCJOj\n171qk1Lr0C8CZcDEd906vIaM/gRwzg9n7X/Ru+FZmP12g/dcNjIEUs28/yM7\n9bXUjMGOTTfgj8D85tLOxggFSMYaR9rHQryGo9M1yWecpVI3gcEVuYGt7iIf\nukq/\r\n=hHPt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"681b28d8ad3b139c485f9646aaba07fe47f15214","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T08:51:21.305Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.22","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.2-renovate-internal-patch-681b28d8ad3b139c485f9646aaba07fe47f15214_1631350458007_0.04021464611337211","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.2":{"name":"@balena/jellyfish-test-harness","version":"7.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"182fbf93124459dc238ce1d8cdab3b291a9a831d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.2.tgz","fileCount":27,"integrity":"sha512-/AkO80xgxYAI1rwZQhs6QMnznkpA8ZXForBJnAQjtjONMrH2KAP+pblnFvjDHkxfHKDgxBl4GCC96FCZFZeDWw==","signatures":[{"sig":"MEUCIEoyBJgpEjrXe87fYbCxWJ3uJA51XhqcFGsHpLKOfLQ3AiEArWzy+umAaXeRJgOTT/Kx1D4yquzWhTcmvLFHxVjUQag=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158405,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPG+PCRA9TVsSAnZWagAAELwP/3fqF8LgsybYcq+aRNOj\n3q1ZsloVouIJXasUJ1KZVQucsjlYagsnt0XzyhUC3XU+WPvY8Q7fQr1cnFzB\nk29Jy7vt5DWw/ONlpSVFEWje99yvBmuwhOkJPPKhqNjjRJTAUchTym7tu8a4\nI9AafsClQeAVjjDd1Ml+67q46GxYIsBrr27+HlA506IRXvujgR2z6s9HAVxX\ng9odaMHbBIU3+r4tbeUWhiau+9z/Svp+coduG7UojQQsejqnDWrnRcvDkXKK\nRToP/AdrfGKTBoeICawK5OhWZg+ziezteIsgEPZYopXmyDg+Bf2uIaFrvncl\nCWZol4ioLmym80hHkFaKv2UPPsvMEdT2OtyT85L4hON556o4mo7AD2dR+Uo0\nYa5SyoCFtIGMWbUPGc4byqMCrVq1eczl0+4lTebut3fseT8t/7dONpHIK8ob\nx+Hx7KP2npjkHLO8unILSVGsdQq9F0FRq4BK7YOSKZTcNAzALtPFrDZFK/Q1\nnEJSpXwZsbM98eTwVQQ3vNNpCPvEvfBJ+q9+etM8qur7i+OXfCuD8e4ByRDH\nGL9vZfWpENVNXyGEgmNt1g/9RdAidjIGUaOcr8LSh2JAUScMH9418m1Lpztt\nfv04HmzGozk2+l5JGBH6Oa4T2zwkXDGuWEv3jeJtfy+y2F6mIdpzNlHD0Rmw\noS4a\r\n=fM3Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3e5bce31fb3034ef73299bacb2565e422b57fed6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T08:55:49.575Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.22","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.2_1631350671407_0.2266272721502478","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.3-renovate-external-non-major-b0fa001c2888f9c932883b8097cfd83aeb3e7c62":{"name":"@balena/jellyfish-test-harness","version":"7.0.3-renovate-external-non-major-b0fa001c2888f9c932883b8097cfd83aeb3e7c62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.3-renovate-external-non-major-b0fa001c2888f9c932883b8097cfd83aeb3e7c62","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ebc17247dcba6a21ac4a1dff427a62c9dd1a642","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.3-renovate-external-non-major-b0fa001c2888f9c932883b8097cfd83aeb3e7c62.tgz","fileCount":27,"integrity":"sha512-dp0BMWH5HQ/ooF3ISROLK20aRvmaxR6qm/qEGx4MBiMjZqGyIExf4wLhJKbzMEQo9ahKWEFJv9DgcvMEIBGbnw==","signatures":[{"sig":"MEYCIQCzLV922vdC5OAyi2EBc70emM9m7BqbnYlFGAl+CHOBugIhAOv/iPU6cypQj+v4udBrxoZfvjo38xInXrhmaQCbuzmu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPHBjCRA9TVsSAnZWagAAQtkQAIdPshHVGYwavYaRvkH6\nZRS4OyyPIUQAB+bUsR3kiKUPerssoszK1AZiezmbIqqx7/64KQxs5uCU0nx1\nWxR/TFm6bCMBnNJieqk2lIpvWVShVEgTODyIDmXmtf7p6AT136/0X6/dKnoi\nhSqTY6HLrRHu0XUeesPE9DcbGhXIrdlylbcLqqvSW/NJIsCgDFnVboMGrX3w\nVAe0LQHJaIn/QLR0j9wzA0N0z3ahf7D70yBJPMZK7yjSV9Eyxkg5Poif5wAd\nHUYAt32HScSQG686JtC2bJdA5zQBB2TDtBjB8A4v3Uey6PEJPPprnNN011zu\nJYHmlVKr7f7yPJyWDFxmBmfZ0kZiryT/X82B7u9+Wc4FksXr4Trh116ABotu\nKOlELGg4eDeMuw1QhaiB+M+2VCbe9lScX1jqjN9kf3+KBuVNuaur4pc0REHR\nLGH+UxJx07xwS/FeC0zrK6F/6F9kzz1gh8aXxes4cqeFhezQB6acApM+trjk\nTVk30Yik2Vxckk8Km+J3nIR1UkqLmg6LL7Y/oUv0amDp2vUXf0CJGaNNVj8p\n91JS44+MkDctCRfHq0ihnWmbNbUKOiCg7SpABNtZSR+78kAasCeCb8eveOPp\nhbzzd2jIgahyjs/Iw2Q4vU8ePT1B+xLzQXawD+A3IwZbLvUqdsxblo4EmcLI\n0+QI\r\n=lI8E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b0fa001c2888f9c932883b8097cfd83aeb3e7c62","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T08:57:26.935Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.22","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.0","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.2","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.3-renovate-external-non-major-b0fa001c2888f9c932883b8097cfd83aeb3e7c62_1631350882824_0.008585306798580161","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.3-renovate-internal-patch-50ac994e971043000df570f38ebc0c25890cd43d":{"name":"@balena/jellyfish-test-harness","version":"7.0.3-renovate-internal-patch-50ac994e971043000df570f38ebc0c25890cd43d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.3-renovate-internal-patch-50ac994e971043000df570f38ebc0c25890cd43d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1cc313830db5f8d5723429af14783fcd36c7986b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.3-renovate-internal-patch-50ac994e971043000df570f38ebc0c25890cd43d.tgz","fileCount":27,"integrity":"sha512-lfAYh+fBS9vbj1RLsgAk27RPaLYrrrXTcfsDgpYlDfUeasIWXwUdGO+NiWd/5LpfBTGxmMxiOLeWhPbbyvtQzg==","signatures":[{"sig":"MEYCIQCZ1oxULjFMsgeqscBZ91c5c63FHkAXb8dD2lUCGpda9QIhAOjPO7sarlybfekQTKpvktIzevkhws+t3dmNShJV20LY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158543,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPL5PCRA9TVsSAnZWagAAx2IP/RrntUdNK/3otbhxsaa3\n+KkTZPzcpTYHb5Pdrkd7AucSVbu6EowrFc2Vvo/E9/FSZnmhUwCns8ZiDz5J\nv+w5kuIcI5OYuoaCOqn8DYIquR8r4rLyuMI4VuKcHm+8h3oNXJkFuv52hgej\niiUgmTgeXjYpa/jD8VCr0AJZuPSg3mIG9Gzd/R16VesOjutUxwVoFgHRcbm6\nlSeSt0DKnTr5/9Bmrng7GBLl7aRFUyEPxzyT45cJB+tEqrpR1NKrzheFt7vM\niT1/mp/bsyGf8ix3hUY6mMi8g57o2vkq1b2nLjrUQGUp1Sh6amKEH9rdOkVa\nfNWBEmBv98d7QQDSDAcS0D1rWTtrbG6LaDnvVdblt5fj5o4AXwsXAumed23I\ne920wQ5cF7go3NQN2I4CrNtV7AvmK+qfZF0WhGwC/4i9C3fHsvLgxYso364k\ndGFZn1SLRVWDU3D/Gef1yzc5zye1lNXkWAx8M/6TLRz0E6uZQE6T/fJHaxtb\nE+8zn1ZnPPV2ok0EqQx53Los+eW2o/FiINdQgHaiNXsxI/p8nhKVNwV/VwXB\nYDTD+eOLHGhLZPVlyY4b0/c2TALH0vxbieGjNDan1ZWLPXTDunjxKBdEVV8J\nJCnv3qk+d0v+C5EfSUem56b0mF/zZEvE9fZqBgMIy+mgX7ivd6sk3MJWNyaG\ndrWo\r\n=ShPR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"50ac994e971043000df570f38ebc0c25890cd43d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T14:31:01.623Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.3-renovate-internal-patch-50ac994e971043000df570f38ebc0c25890cd43d_1631370831141_0.36392973353195046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.3":{"name":"@balena/jellyfish-test-harness","version":"7.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fcd064f8918144c97c39cd5ecc138b56c5446ee5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.3.tgz","fileCount":27,"integrity":"sha512-e7nujZ354i+lmPdenTLMVhEuA2YkM+n5oTaE73y7st6Ws6EuqAiiJNApspugMXlR8efnZ791JWYQUWR9bqTk+A==","signatures":[{"sig":"MEQCIFJmzCWRd/sFg2fMxYg3iRIcDcyibOTwhrQGxfDG/rHkAiA5Nm+L/DMxbHqQSXv7Znl5WW3woREHAiKKBQxdfjQ9vw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158478,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPL8mCRA9TVsSAnZWagAAb4gP/jt4lrZUkNuaNcmvPo60\nZ3RgTfLinTMAepKcLQELOw2XUgeyefF9bn3GgrM1T9Qp0QgTNvGDzRUgf0qt\nayN/cTVMRIqIDqlV9cPxL30h7tL4Ci79r7REZsKQ/c+WVYvfKteJWYCy5EVh\nuPbcw/rU43yoc2qqjfWU0EdeY40rQfXYWu3dOVM5WOcQ10ZUcZqXzVUOsxf4\n6m/SJdkyyGqZ7RXG5rrDfdfLfRH9qNr/OwixY2hb/dfNgkjohooTdb2Cyugx\ncGGXPA9AcLMNCISrd9woJu/Hu5Ftypx7hL1jToVqFEIUb3051qa4D0YXW7PW\nyjCP6nz8mJzXVeqPMMa4HM+6RML55Xay7xcM5vpsdq1qzk12nG4W4NKcV6Mz\nA6RmHmQK2kpUWvtMLZwD/P70EpGwdnL8iRUjVHmdUuheNTs2RfMF/TZ0fC7z\nbXE8Z6ZHsIs91iPDqY85Twd3Kq2S7XVRUtr1GoqAcpQxA/kWC2RTSqFdC79i\nZwjKPE3qpnMikPx2iOFSFFoYL9wfRu8hKbf0xaOO3sW4v/S2zeSnEe5doKGl\n/oMFq2VzdzlxdErrOFWZ5w4lNzNTQ65Ob9y9CbFAm+H5zMs2raPk8VMV2GHr\ndIzM5cUqyGCaUeMVmAV1qYTRR6lRVqTLN3ZsE0lQeWT/6/xSTwWDd3yGzh47\nTzrI\r\n=Xz4J\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5be371fe3a39c5c5a1d0656d47e03ab18eed43ab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T14:35:11.427Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.3_1631371046024_0.1899595888766119","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.4-renovate-external-non-major-9ea9e04f28181051cb282e8823b3f074fce41d5f":{"name":"@balena/jellyfish-test-harness","version":"7.0.4-renovate-external-non-major-9ea9e04f28181051cb282e8823b3f074fce41d5f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.4-renovate-external-non-major-9ea9e04f28181051cb282e8823b3f074fce41d5f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d29a7a50daefa0e8daf2b2c220f503667939e76","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.4-renovate-external-non-major-9ea9e04f28181051cb282e8823b3f074fce41d5f.tgz","fileCount":27,"integrity":"sha512-DmsznxnMxtApKb6jtFiEn99nFBMMJqUGrdfVDwHnv6H4Wia9OHSDI++PWJH9tmuPi2F9y2wOpR0NUME2IRGmfQ==","signatures":[{"sig":"MEUCIHzrDCCjBVdKtMaNmJikkyhLPi/Qd/Ut7xzMqEUSbNWtAiEAvzhgambXpPtXqSvpX/T2f4/pXicvHIY0su+MTxMHiQs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPL/4CRA9TVsSAnZWagAA8agP/jdaomu+crmIauS2yHm0\ntzvTIN9x2DBuQDMmNvxY5wWSuzo9ULLSHcNIFTWTETeEDprXeXbvBUPvTVus\nQ/13wEt8UTxaK9+I8PFmKbDZ+409Su6as2OzE7cv4GtFlizN95v5uGp0JiZt\nxk3ksHRGNUrbXuWNFzZxXDXiQEewRQyxGjDpMN4EW5XOjXbCNv80WRl3sHJB\nAfmq6OzbFuILpRCMZtQvqPSchyk+UHU3dd7e+pDBFnc15QtD8Ecsr2d4ep9j\nOXXOJbvEozqKR4692l/r9IGw7POZO73DOnMH4X9STKhRfpmQEp0HHeBZcHrE\nEllOVaXYGatHZnBOT7JCH86LsRV0DlqCeL4myodIj3o7ye2eV1wjb+ikK2h2\n3BUt1+0h+vDI/nt85HsjhPZYTB+HvXYpS1RrZeTVi9lA0EArUqiaovOXvchY\nBCWosdo9TNbU21MEtS8bLLpFcb4ajGo0yZ/8n2AqglcZ312heZf9ECBpvcWp\n0fpZu1kxEGzQH8XYCj1Sv/oFV78NtOdOAHJtERBCw44SpWenWy8WwxwYA1U0\niMrJWLIbEdcxYcE6ZjlSgS63nxXIptCae++ip6dfIQ4X7lDgf3WBnb8KE5vi\nUtdQDkwMvvqMacOATDxbrGgFMxXS/Kl3gaSblbqH3uyEhK2qX8RUDSwr4+In\nPG9B\r\n=D7zS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ea9e04f28181051cb282e8823b3f074fce41d5f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-11T14:38:02.855Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.2","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.4-renovate-external-non-major-9ea9e04f28181051cb282e8823b3f074fce41d5f_1631371256197_0.4831315629708779","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.4-renovate-external-non-major-395259ffd93e4a27865cc1cde795fdef904c70a0":{"name":"@balena/jellyfish-test-harness","version":"7.0.4-renovate-external-non-major-395259ffd93e4a27865cc1cde795fdef904c70a0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.4-renovate-external-non-major-395259ffd93e4a27865cc1cde795fdef904c70a0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"413c73ea0ee0fafaff87ba6e4e4b534edeec0cba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.4-renovate-external-non-major-395259ffd93e4a27865cc1cde795fdef904c70a0.tgz","fileCount":27,"integrity":"sha512-XK4RIPMrmDvz2MNQCJmtPRqLYKhy98i5ng5IpRjR751IPxXtueCpdiCp+fzXqkT4e09s2BRonrod/SmiBWffgA==","signatures":[{"sig":"MEYCIQDIuN6S6nStjLMYzz0lKp54pLn9ZMI8hi/YeuysjneHBwIhAJq3Atok19i9wtop2odIFnZEzfgZpmKVbhHHHqrAn3DE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPYvdCRA9TVsSAnZWagAAnQEQAJ2eAw79HDaksEVkoG/f\naBIvAR4nWpn/S4bZ2DM6ma5HyigE/Capk8L+1aGscl1QtwkpyewPFG2R10Mn\nwzZpVsYtU1W2V8IVNOXYKI2OvWuXihfbMbO0CFXLCO2qV6Tk2DPfb7d8PmIb\ndyMCHcYscdjoXnjEZNI2T+LE1IW8VM+/fazRkMhSgroNbvpV4GpLdP5KErtY\nqLNyqI8x8tft+1RprhDdURp0sRMUXNyJcRJRl80JJaZWJSFytDX2oHfcNbbB\nvCTPCJTruGNTEgw+jL933Huuvs/m8LLQ08W8p7/0wRIIg/BM1QXJ4PyxvPxK\naEBHrYlnD2ndKQIA7T9xCYTCDQHtov9DHJlNiuDu6MPT/R/JrjmnnNr+WkLA\n7+MkX6tc1/ZC4Zpu6kL0bq+Spzn23Axh9j5iW2Y54D3Q9UQHpW7Lw+HT2LKd\nbufjvfWGHpAUt03/pt11uH4NwuLU8T6G3uP99Z2CYKIsduqCGPcVSTxm9Ajo\nX0Om5ozCbFTX0NJlRV590DEm1qp8Gtn2E4+orxNLxEFGzMuxAvX5pUyH3kB0\nMO2jjqkba51v6S/mwslHZ6BHVZzv7nxzkrYzxvd3Qz8vp2R4GfiR7MmGKo+H\n0RrvDVM5zCs1uo6YYIBHVeipuoVgNN8vppWw3iDWKXb/TKSo13K9prfxYayS\nR/09\r\n=rXIK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"395259ffd93e4a27865cc1cde795fdef904c70a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T05:06:40.531Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.5","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.238"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.4-renovate-external-non-major-395259ffd93e4a27865cc1cde795fdef904c70a0_1631423453099_0.872303472086442","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.4-renovate-internal-patch-2395775a810d1d74d11932452e3cf291a6c91f3b":{"name":"@balena/jellyfish-test-harness","version":"7.0.4-renovate-internal-patch-2395775a810d1d74d11932452e3cf291a6c91f3b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.4-renovate-internal-patch-2395775a810d1d74d11932452e3cf291a6c91f3b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"faa5ac2a4f89d9f4749693545c61a2591127eea0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.4-renovate-internal-patch-2395775a810d1d74d11932452e3cf291a6c91f3b.tgz","fileCount":27,"integrity":"sha512-9nGtt9+tbn+TrnZTiyQ7SETTTUyqhd3D6UktnqkktQBM8zdq89WtfSlDapuaFP8Wj7MEJiq1zJrlBUQaS+OFSQ==","signatures":[{"sig":"MEYCIQC3bQep4sGCa5LGYuK79pBTs5TRs6M1ecJNyA3QPUn1QAIhAOoPNE1VsZGCppCLMqQt3EdQLoWhefv9C1ieh8F9DqvP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158616,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPb+zCRA9TVsSAnZWagAAEjkP/RV7Wl/7+SZ7BP96YPou\nZzx81jIOPq7FGFgVVa1uHKkiSqMqpWdDGRNvbo7JMbv6itJ85Vk9gY2ov0Au\nCUp91uBrpJBpt4/C2ViN28NmpuuB2MN6U68NV5frhcr8Gv4k00LIOmWOQGCZ\n/W1nm+5pxf669aEgSYwvjAKiLz6cSemzfPrdizaWzI1ZsizJrseETLsieBOQ\nNPuLfCP/TwAzlrVRV/+qnSjjaToQO+lccqAxCJ6jj8IHjOvfldDNJh2jDyui\ndRo8dzK3q+wz9sZ+iI/2a/RFfF6oDceTO4yBY+xc3JW8v9vIsPih1BsSKDoy\n2iJRVIrZQUneq3/zZG9s5oEx0mLoUgo2YvTeTxz+jX6UsqUyu4vUl6jiMX+/\nPcA4qv25XZcMRuDvJn3ltXufSjv+eTYvOYnFV7AfjTCQ3i1eL1l6D+N+nepY\nrd1AHzQApkzjZS+c3xw5uLZoBa/5GPPcGkSmdYgZaZUwmfvXHT4TvgnDnjI3\nZra1vhm3Rl4vlpllBKddb/rL8+tyjo/wKHqNJqx3ysWVnH4uZJRgpMUeQpav\n1porjKWW7dAK00fzR/MOv3IHqw5OVnjH/RSTtlZ5t4Tst7CE6Xg6MOm/wbek\nhvwGaWqhXCyNuWCpfFHbY1y4Ldw8wYe96BQ/aIfmkdtUSG1LdM5xsNfZAkR4\nGSdQ\r\n=2gLU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2395775a810d1d74d11932452e3cf291a6c91f3b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T08:48:41.996Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.4-renovate-internal-patch-2395775a810d1d74d11932452e3cf291a6c91f3b_1631436723432_0.4703586388415337","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.4":{"name":"@balena/jellyfish-test-harness","version":"7.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d49fe84d20051366d18b9838f6482966f38c49e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.4.tgz","fileCount":27,"integrity":"sha512-qQ5FJyRsVxtms8hp5ARHm5vXMKE5RcdPuAExwpviWGhkiaaGu2EqbZoIiwUyB8uw+3rwsXEVCoA1HkXYKIXZsw==","signatures":[{"sig":"MEUCIDy+hh41hVgp+4/cLMS4LZY5DwyV7WwdMZ4OsuY9TaDQAiEA8mJIQGQjakhELYQA61qJuAlOJSvfWLOq+XBAnLUKF9E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158551,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPcB4CRA9TVsSAnZWagAAyx4P/ia0qVyjSNn3Rt5jpAIF\nn8v7LgSKVT5eGoA/eaUD6EL33a+tTy8T1Sh3Rzc4bbM5vNRTIhxw0fH/EDHC\nGs+JAqX0tOzlSB8xKkwNxBPIwzGc1hEtpMHyHPoSkzNOSUske0YXRegHJEU7\nL98d8Tbg//3tceujQT0goHmDH9On8djkV9hOfLm4X74zSYfbGmsFCQ6wSWG3\n+apjspjd8vw0fPFe8qQS4SZjplA3GdBr9vd9m5btwQkpGN7SBxxy8M8cNXjs\n+BouOdD5+D0R3gtHVfjpS9rrbFHCvwQclvAOTRuFJhKNecBLKUHUnRevqE+q\nwPOhp48PnH9K+2CD8yUQb+R3PpHDHPEX5tzn7xSjWKLHN13f89atfLkRuxQQ\npPpOlvQjv5avs+1vEzmFxQPHnAX4Vb4b1LeDgmJtbshwjg8tqk3NHIjiTTT2\n2t0TU1oPYpHm2Hz4dv8VAzm2+MEW7IPCydfkG2jXk32jxiud88rQlGcyZwRp\ntKnSQFSv0RCdOyT0bVOcwEojk69ElHQMmTE0hC6XORgtmtSZhVEQeQSA7r7r\nleH0iQFVbiNRyQHuY0K5IQ+89ji7UXrTuueUQ3QXAYHM47FcGlPjo4WLPUtb\n2bSBTUtIrvIM2Rl3ZSLDVrSgRKFwYQi5lCor/D7T/fWeuCJMooiM1+PGEH2n\n0eDt\r\n=k5qA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"407bd0eed2488a58ab60f9dc9a6e572a3ac7caac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T08:53:16.591Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.4_1631436920389_0.9070958322672644","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.5-renovate-external-non-major-6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5":{"name":"@balena/jellyfish-test-harness","version":"7.0.5-renovate-external-non-major-6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.5-renovate-external-non-major-6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"16ffa933f174a3c50a01b6c0e66fa49a579d6225","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.5-renovate-external-non-major-6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5.tgz","fileCount":27,"integrity":"sha512-hnQvjf/xxB72MmkvK8VMzjOPdZ9LfqTjm/MbGSTiTaPh+PzWUEbPhN6ZIndD4vlK4TbRjBkdAEDfWARItehwPg==","signatures":[{"sig":"MEYCIQC4K8qmxVHlu24PB/l/KSJ3ZW+jreyiWC6BJQWeXPYLCgIhAK3RRM5MIKQT5xvTJf0hgk1mxaUmHDzybc0/q65Jfw5d","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158697,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPcHnCRA9TVsSAnZWagAA3iQQAJT5lGmsBjijnVce+TR/\nOiq5tjg+GjD9ZPAKdqtFtjkFfHfYD2sZeSi+E3IXkC91j2I3sfa5d4ZN4ajF\nCRY8f+GzehOwRNfyGuFEoC9Z0EiQ0Q1LYExjfJf00MRcwY19eWHFpvTl1ZHR\nKfCR5kUUBcuRXHR+tyjGBUCSuNBJQOQpPf8gwDIV0n0P4f+NIjmqfVI049QU\nWYBGkVT3zaLLg7p7hmzBmxuWXtRZS1G9JOO3rD5y5UpdTtgxf2JRhVJu8SZo\nArH2U458ctUQSoTyTILXlHdeig/hIgzdVav9kH+IxZH2Vs5gP+pKzQa3yrrw\nwckUf8AtNUPJ8je8p0BScYoQ3FCNfClSkPLrR3NiEIoD4QtTSZT8PhLfRpM4\n3ZhuEmOduKhdkuINo3b7RXTDNPJ36MztDPM532fAH08yhWYlQvHQ8oYI/2dN\nAxRmHhnKDx581qN8jtrZ1MvOWkpjhw+uXTkKbZhPGdBMb2+QtoCZNuimZslv\nfJyA6pHObPbyEhXNPkr9it8RZXSr7mc0PN3jmdBOtvpHpUuS97XTEIBzWsAq\nCwvAEzqNcsQQjMQsbNmhW2doY33BJjb2Boc/6MbXLMfvfHry9wwigv2fGsny\n0gbnLv9bQiLBAvrJ5lncIX5SAd21oC9MWD06YtmS3k01RwMg9+HkrcvdWGFP\n5yW8\r\n=CpV4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T08:56:07.008Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.2","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.5-renovate-external-non-major-6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5_1631437287119_0.5096581608701296","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.5-renovate-internal-patch-0b819284a29f1ef0c2e42839163c74ab03c046fc":{"name":"@balena/jellyfish-test-harness","version":"7.0.5-renovate-internal-patch-0b819284a29f1ef0c2e42839163c74ab03c046fc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.5-renovate-internal-patch-0b819284a29f1ef0c2e42839163c74ab03c046fc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5ed30c51a066f393bca5f34a3ffcc09887c547f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.5-renovate-internal-patch-0b819284a29f1ef0c2e42839163c74ab03c046fc.tgz","fileCount":27,"integrity":"sha512-k3MwL5EPGqDCFygdDevKm19jZVf+3lKizttxLy2LE+DIHDFLfiy32IdY/rTNWqKKVgGA3gIOH16ht+oPFPMQ5w==","signatures":[{"sig":"MEUCIQC5EBSDXBxkjfRjuyVedJhTM7fZ4a6Nq1qOqgYKCK0wagIgMjsgVL90pYlv1cn+9ewhtcv1i3XFfzbAK4W0RwI80Vo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158721,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPeR5CRA9TVsSAnZWagAAS6AQAIvI1bgDW4b9TyY/0o3m\nEORTirY0noAzMxF3GoyzK+KSzVkdqro8s178ZORYsQPZgWvAPNIh87x4dbr7\nI1S6KvLq59dtGrTWHV4lY6yRnhUT8euD3aP2cqXYSgvwUBY7MrWLnv0045Mq\n4CBjy08Xk7G1yTPBbPOIJcA0GDzhVfAznkSb0CZ6Os+JkMle/U2ut6KrpchP\n3et1tpupbJWTPCKJRzglH3V7mNqA67Yj0sKEOr15vTi/xYsIQRoD3xic4hRC\nnb5n1W3FfWlKXHDAXOfg3jdd6r4mmqTxBAhL0Saov3O7sV6DOu95/ijglZWO\njkwT/ynVa/1o4cwotlMvdE0U65mQgIq4vNgRRCe9vPXWdRVgQkChB3iMx/HW\nn/bzGE507RFTr4OzSkibmwMFBdRPdB73W5d5sjUDTir77NYBP+z9ZclSSdQ7\nXdUkXPa7ECUiikV3A8q8w7SfE13C4mNeupOnKQvyRLzC7b+udIvA7bLC100N\n7g7WITeBMYvh5WITlJRdwQ9V7NYn58qdKaHE0gKBl/wj5qn5jqV5xBrFG+Nz\nLV4SfomNwAOfw3GgjnCcakgxUBZj4jHx7atrjk2BoC3a4o5gEFLB9Y/1qWs/\nkSoBWg7U+ayJO15kblIa8wjaOYxiHQciQN59lZoCIV6jNs9JVbAr5DwawxpS\nJq3S\r\n=oFbq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0b819284a29f1ef0c2e42839163c74ab03c046fc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T11:25:50.146Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.5-renovate-internal-patch-0b819284a29f1ef0c2e42839163c74ab03c046fc_1631446137450_0.9444536554772518","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.5":{"name":"@balena/jellyfish-test-harness","version":"7.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"68d0f239112a4b7b224644afe7f6129049e3c977","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.5.tgz","fileCount":27,"integrity":"sha512-vVhnYRD5S83keP66kV2xT9UwzTGLCNyr/x3JzCCi3HYRcHzN7KTzzzS3XDGvBrc0GtmYpmmRLlvpB66dI8X4NA==","signatures":[{"sig":"MEUCICLvp1gp2V9geom2aEsQHv0ncZg1frasdJkDHoaG6v8hAiEAx7dlqdmUdYJhCF5GMgwwmy+D2w57W4QwE1onjkkZ0S0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158656,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPeU/CRA9TVsSAnZWagAA1IAQAIOQWptSAONsHmhP6vNW\nvI6JGKzZua2E3k3Eu0g7EjKQF3Gdd6VQrOge42CSZRCE8+fsuYJ5plHPM3UR\nfBG/kFUTdkI1Tx/UkFz2A2iPmskdsRyG9lWJ18/gcmZQeRhZQwBOHO7qEBtj\neFvyxEqwCU8UITOFm+ML3o0DEJuNmbb1ru4F18h+qF769zqRF3JWqvWYQ9Ig\nUCxkzq2OJHF9dnvfDzUVlXEQivd/R0y2Tda5/q5fXzYww8UOFTaB4S6oqP/y\nHJEmgMy/jIuKK8A4njV4dUoc27fg8oU4b0Re0ZErED2XAhSS4yp/CxJr8iSl\nlBWvQOIdfs9ZU5+l9UErvkxsZ83d6jAcJsU5EfyKnpJdnBGpiBR/oNXnvwWF\nsFYI4qp5o1KTu1N9IYyuCn/MAAOc81EY0ENZNXAJlBq8C2QDfQRv19ipFuho\nPp+FfYcdfQ8rw4pKoZwk+FY89KNJ6hHgG6XOkuoHCbRYj2EOKOy4b5XYriYg\nULWM8pZhWK+1bAFS53IXKVYLZ3trsGnMHRAXBgD+1m/d2t6nTIXACwlPCXEW\nzNMLBV/W0xafybpMa3LCx+GvQ73pv8u95XiJTCurIiNGR/dbsUnbhm3Ae6ZN\nSoA7DNce9XCHi6vxk8ZcViuo8pg7G0cv+dVbpm20EJC7hhY0s26urOJ7lgz7\nVbOw\r\n=n9Li\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"91e70c97e50916c3cef3622ea60aa818502dbee7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T11:30:21.110Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.5_1631446335322_0.06578245932890714","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.6-renovate-external-non-major-a3e8892f4e07c4137aeb2a01492afa3de4fa5da3":{"name":"@balena/jellyfish-test-harness","version":"7.0.6-renovate-external-non-major-a3e8892f4e07c4137aeb2a01492afa3de4fa5da3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.6-renovate-external-non-major-a3e8892f4e07c4137aeb2a01492afa3de4fa5da3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"270fff13787e9ab3494a6331942081c778ab535a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.6-renovate-external-non-major-a3e8892f4e07c4137aeb2a01492afa3de4fa5da3.tgz","fileCount":27,"integrity":"sha512-F2R41vPSXKIR3HWfn+cEeslNtTwe1j5FGUbDHi2p4WAgIMWLFBhhBYerntGkmNlnrdONSlxKprzZQBLC0J4PrA==","signatures":[{"sig":"MEUCIQDJ36pIXzfJfl0uqgSa7W82EEcbNjGhEZanHKPC8ebuIQIgVoQm2Ls7muGmvyzubCUBFZrr7Kq+q6qvKE1DHDzF1LY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158802,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPeaCCRA9TVsSAnZWagAAix0P/3w+wCDQLxgAV4oCEgKm\nvIFM3nFEJN/zNoCweSk+MUGkJSe/yYrLBkJHI546nMOdHO2HZeE0ZUxBHiz+\nktWZ94PoHr6n0PJxleixYRqicBbVsxCHK2bkxwa6Eim4ga56TYZ2I+iCx5SH\nTGS9KOsd6LrSvpyzvEIWbuvSRmVZE+CWSb7JCzjXlyOYawlbpbXohGlca0dE\nbU2vHzrbcmIlg92Z+BLMnMn0Z7hM2nFEj3FRC/UJFFHUs8B6/h4shoMYk2Gw\n3yhnSc2LsPjV91p8LaBqnniCakqWxLklgF2WqwnctbgTdQKf0bAIKT8hPPkE\nONFu7cpD/3BA8aXqGgX+eQoaRW4gOTSqmABJc/UpVrKqayYQ8CgSMRyzOwSj\nITA4vRc2DfweL9WxABehySUCuSZHdXXnf+rB8FwCGTNMu1P6bJZaJaCnn9w7\nM8DxJmpBRYNMNpALsXeSVxFOCaQ3nHIeC6j87jJeskXJJ+Mgb3mm6exfXHH4\n5ngq48iq1lLnngf2uwA5+lyfM+3INGdLs7fe+rFa8SowXRpUQrZ4+fOdJ4XW\nlypQ4m42JzOZ3WUVKb5dgVOQbLN0YINkPfVx5byKmm1O4prXpksouRGlkyZA\n197ePayv48XBm881kiNWrb7OnUcxLuSbdUY59nIiY/F/4kTskRqQ0jxw2Qls\n6ld8\r\n=R+u+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a3e8892f4e07c4137aeb2a01492afa3de4fa5da3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T11:34:41.602Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.23","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.6-renovate-external-non-major-a3e8892f4e07c4137aeb2a01492afa3de4fa5da3_1631446658291_0.7660804315079517","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.6-renovate-internal-patch-dfae797e229417754c8528beb7fe6f28a03ecde4":{"name":"@balena/jellyfish-test-harness","version":"7.0.6-renovate-internal-patch-dfae797e229417754c8528beb7fe6f28a03ecde4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.6-renovate-internal-patch-dfae797e229417754c8528beb7fe6f28a03ecde4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cbb17fd0379250e62335fdbf3d7371ea91041748","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.6-renovate-internal-patch-dfae797e229417754c8528beb7fe6f28a03ecde4.tgz","fileCount":27,"integrity":"sha512-eEOyE0gvmyEqHxpnjl7IxBRFxhpvyBNHsPCQiHIFJ07X9sHgURjzR0uitwyQZGu5srJChSxByTxuvrnPNr8nng==","signatures":[{"sig":"MEQCIEsdtwy1GSWke/O1lXJlq/l5kVevFjS7T/YV2tum4PDhAiA84AaUubeV7oe32+8t+mNKOyXfAWkI8XzvLKC2TtKz1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPg0FCRA9TVsSAnZWagAAB8oP/3EWxupDmWg4KuEfXHkz\nFZSaVdUUCVi5bT6xtZybhJ6lMai+uVzWph0J5sr0n1w3kiR8KKIhBjFJ28S3\nklYRQvAsY3bqbHZw5lsGgu+5qn6iS0wJQR9zFWM85gyqSLGyIIYc+BZUsTTn\nBGMvUCByBxSrZU3AVjThcb+55E3sdpXsRiORFDkfNfm06/XYJI+zsj0YzwTP\nXfSGiZX5lTJf7Qclm9ynUKGNMO7+ipQVXeAu4egStbQRp0BZVpYAiLxZ0EFj\nlKf9UMyUmNhtgPMJYKrOJ/y67OigzXUhpz8h0ODn8jKMF4cf8Q8m391HiCJ8\n7Sl2pkAUzf2Z1DtmS6BuUYKUBys+fPEgb/jFT3hCQrcOBNXZirZChsP2We9K\n8qMdmsXs7p3gQy/kUuLK8In1T+ia2z54xTHs+lsoA6YSswEptQmLyUmduQqM\n3kLhGFRFuGppbuiQ63ibggD2nItH+kPG30tSJvaV7QmN3o2XTlQZawj64d8N\nx7wHfDdNsSJRLLNmVRTIhb4UPk4iwqyU7+h32J0vufsAv6xbzZrbx3F/mOpi\nb4Azhq528+MbOS87uLF8Ht1QRlqM9r8kjkp/eYMXZC9cnKv6zQUNFUjKirYM\nU27Cwf6KoLAIyyOZVidfG1xniHmHBG444HHEhOMXQ2odh/c60Y9wN/8oGRqR\niP1o\r\n=wVzl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dfae797e229417754c8528beb7fe6f28a03ecde4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T14:18:37.400Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.6-renovate-internal-patch-dfae797e229417754c8528beb7fe6f28a03ecde4_1631456517481_0.7494553294634894","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.6":{"name":"@balena/jellyfish-test-harness","version":"7.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b0dafccb385e43eefd663f045b4b942b1a3f2045","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.6.tgz","fileCount":27,"integrity":"sha512-UB1jY4U40pVTfNalLdZ976ThRN+Z/hzL8be7sOIxjR5eCu1RYS/B9eA2yWig4f7YBkbAfmkyeFVLBCsbzSti2Q==","signatures":[{"sig":"MEQCIAiBJqtmrOE/gI53WdmX6W4qmZgKU9CFER0rc/5iLE2kAiAJMuBOxIgpPQEk7P3zVoCouHhpLNPDj9rt1idlPypoZw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158759,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPg3wCRA9TVsSAnZWagAAu50P/2aBufwKWgfZozJYw2UX\nwETWoU70hmXhq/L5PprN3VnbdAAOA1gBdRp96KCIX4EW9JMH8NNQMe2XWXQQ\nNpwVVSjgahJsgGEITbhVVVNarjs2ba6gQkxMPv3wkqbYwlQ7G3SZzifSrGPb\nn86vB+U0OOQJL/gF5DwAl/uU/ekHUJfO+k5JQJRhNhPsXGAtp/p5WC7IT3CE\ncyfZ7OKA6GRkChBL0Bl5q4PgoPYVhyvQgXDz8QCijVAJYbdayc0lvvbk5gf5\nz8mbU+qjsPbJpEQT99ZogvBofNlwhPFv0xlm1ci/AzaKnyafpJ0/wauJEAuZ\n1q6bsb6UUrdCueT9N1FLNHPzr3KPpWIZdSAZsrVe45QRsDYgZQjwcgNAUEKN\nJL38v70QeeRJ97nQqjD5C7wUhQRjTPdSPOodhBpBTZVdjMBrr+DLvBn8V99Y\nzeca8svdaxQ5gp29sUi0t0lYKzOC1cDQM1glNSsF8clB6edks3l7jdVweS0X\n7OU0KfHHswENPLIRBLcXMqbpP2yMM4rbjc563L32ucgcUYL2ldIO8ZSUXkKR\ndVO+4+FwtHM53xgvrMNPt0CxbRCSoAWjvmISao3HF6GVf5NBUnq0sPYvRYim\nfrqgodVuQECKak1CXFuKQrxgf5CIj9zULkW4vKzJVI/wbAfVfMumz1djQK1i\npjI9\r\n=yyNs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d42a10ce3d8afd843dbf4a1bdbaa970f8326c32","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T14:24:02.075Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.6_1631456752134_0.5840290551834149","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.0.7-renovate-external-non-major-a17316c86436bfc13eca4c62cafbaa7c51c5d811":{"name":"@balena/jellyfish-test-harness","version":"7.0.7-renovate-external-non-major-a17316c86436bfc13eca4c62cafbaa7c51c5d811","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.0.7-renovate-external-non-major-a17316c86436bfc13eca4c62cafbaa7c51c5d811","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d875728b54087b19551a00beb335cdb3b76caeb8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.0.7-renovate-external-non-major-a17316c86436bfc13eca4c62cafbaa7c51c5d811.tgz","fileCount":27,"integrity":"sha512-Gc33sxCPqyUkT0yt8KfemAou7NS73WfbvPp3OKDUuYeQwDv4+sstLy1zVGWAMdzgqEgemY6+SYzL4hbU+qdnbA==","signatures":[{"sig":"MEQCIDKKLI6xh5hzhxGSOb4jcjikgP+uvHMHgf4/lXDKTRGiAiBG3Hw3kgxRu4I41KOR3XDXZut4HId5g45a4btU8deN8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":158905,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPg6pCRA9TVsSAnZWagAATw8P/jIPNPduchqi7Ynh5uf3\n0l/HtzAojS3xksC9QB1aZlV5zHPFtGBa2tQMgfQEKImunriAH304UQu0xlb4\neaWu1tmyua6gRd9IMKiQqpvky0FyVcHguaa1cOFOHtamzAmY2GFwA4UyHq2i\nKIhra19v+Hgo16eT3tp986m4W+XpaiLb2RNBy30QZlyzf5x9HPlbqiylfHqA\ndlE7ghWVrUfU/1jFQcSI0YyeWqrRfinfpWSkwGmOizRi/NER0JPgrqN5+AlO\n/urHQT0HisHn6GawmHl0k73Q2o+CRp32D1rYJsz6XpWnpIPrbIBvpcvRrA0+\nRb7uKip0w01eyxy0pdHXPT1TLyjR73ZuC7WrYvhBJbF6Bf3z2lP5K/N7qWXZ\nYVnurEluh012BzWtgQxuwLTvQ/GlYXjfKzJAwupu3Thx5P6vM5u2DogQ83Kt\ncEw0Wv+GgXeC0YLh9fchp2KC94dUEUuYWbewFC1wKjqia7o+h7EAzr6eCLay\n90UVDXbv/Gkfzv4ESCDk0vJphis1IKZJ664NQnN5qSVhaIImS/JxrpNrzFPc\nbELmhvDoptWRQm+lToB3/TR58aLw3v2A2R9gbEdmdhulU79aYgxES94zGXTh\nDMCAHassFU5nx9YAZ/vVKd0plls4uuGREeOmswjVYuLCfPjcIa56BKkN5jVF\npPNp\r\n=ig/1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a17316c86436bfc13eca4c62cafbaa7c51c5d811","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-12T14:25:38.064Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.0.7-renovate-external-non-major-a17316c86436bfc13eca4c62cafbaa7c51c5d811_1631456937593_0.9071931044176125","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.0-add-more-helpers-a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4":{"name":"@balena/jellyfish-test-harness","version":"7.1.0-add-more-helpers-a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.0-add-more-helpers-a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"60b88c079c8341a49130de9e8e41daf0878ef382","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.0-add-more-helpers-a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4.tgz","fileCount":27,"integrity":"sha512-EmZvHUcOfEccTsuTHCJSk3HcbRUYpUzy3+tWCQSfSqASla4Clj38f30TZVMeJUKKy8ZYmhjPn0ec7BaOV6rFAw==","signatures":[{"sig":"MEQCIEbR2ZykUFWIbtZOsAEtG2ylsGOy/GzniE0XkXVUybMJAiBOqvgUezYN1ZWf5wt9i5oBCwjNxO8dEGcmDjF57R83Cg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164988,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPwdtCRA9TVsSAnZWagAAp/cQAI4igjtGbrK6vEDYsz7I\nyj21bGk0oLm4OfaTEj6NWZe6b3/WMbKPBkr1Cmnmu4pHRi345MJjOFaGA/2m\nZ7ESktYkDIFBxXzE2a/3SgBtmfWjIlkEHo8+1uyOPZCRhXtb8pxPmlf5sm3k\nPfecCuBoS9+R+ugYXIyse9RmF4W3nm5qQGLVxy/PVRskorFc7HJITDABLjfU\n4k+0p4fUvmHiwSl0aUbhNMkwcV8ZWMUMEGOy9ncxOvAb44/t4T7oasKVvzXU\nrGGFpJtsoByEwfV7tOnv3BoyWmwcEZ37Ujtac866v4hdECBIWCtipzP2hP4C\nZNClMaC64xBRYiPJgQyEu2HXq8eD0m+oPsbSaIvPfZ6nhb7K5lhc2fHfcoki\nBqJg+kYwATZk5tqkdi3eBGcB+YwozDwLTiTl+NlSHlRl07nP9QyEHDxfQg7T\n4RPolhLay1MCnQVyE93Mu82jEu6/CLoDytPbZRiFs9dRmVvJ/ytacgIsa6I0\nM0ewmObCbmA+/nZ/7wo1bk3yQJDXRKvOSM2Ai0DR/e6AD+66P82MlZy5RguJ\nxpqmtykq3Dr/e8kJ4J6BpT3bBcTed6BRl6OKUPYD20sPhnMX5MmKHe5LKvMQ\nN+49/+39LiB8zIvk3nsBtYLX9daKbNtbpfc5VvZGipof/tuGDiSYyfAeAkaz\nEHuT\r\n=3/Tb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T08:07:31.195Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.0-add-more-helpers-a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4_1631520621374_0.7634952479517194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.0":{"name":"@balena/jellyfish-test-harness","version":"7.1.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e51298535e65b3132cdcb067e21c90ec545cf803","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.0.tgz","fileCount":27,"integrity":"sha512-7KTq8Rzfv6ttpwU/9DcXoMy9xf4JQPsl1s5qhTtHE7oI0ug7UeHQbnWzhPLiBQ57ADp1tvtf3W8gzZNjLylzpA==","signatures":[{"sig":"MEYCIQC+RsZCK+/w70IXQwbyDg0NzQhskr7wV2vbORmghKo2XwIhAOkQygl5S56cgCprfMQpCqAZZvm1rQUx+rQDxixe7766","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":164930,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPwg8CRA9TVsSAnZWagAAhQAP/0+c4lRhftT5HBMFuLM+\nTs5rMK3VVlGXGZUyzFE0WQhaYSwym4dXH4r2BsrjP8xz0sFY4FZVHyx4av6K\nOBiCIEx8dMJh6EhHUSPrmdtHpQbO4cZ7sWbttlmi/citK/si32PxD7ccLWZt\nlKlwHxRxosLTnTd8sCLFffS2QkCczXce/1P5sKoeSTXr4/Z17daoFAwAfTWh\nK1jTAhj+FSGa7guOYmbGhaPePPEeNI2LWhSCcbmdB6Vj/2NrBdVcUD2chyrZ\n6yZRacKH/+i0RpcLlu0t63azOJ2LEhg3UaSwZGQ1vc7ECFPXLPylm902Dw/t\nHJv17CjIPyFo6+noXad9WYFEvdCixqmTAGcL/hUIwHaGFfEn5x9d/dj2M9+9\n90HOENykCTfytn51kJW0sjBKrhKCNoWxfgUV5fWMw+pulAXH4xXvMpJ4l4hN\nTQX6aV/GB9W/0xxUlm76uN1kFoJMQyXVcMNlv64WVE9ZqLu5ag3EkXLZ0Ycq\nxOnjxC3DF6ZONGk7llE+RrOMkgVPtE8H47znw1G6AZzAmhHH/+9/iJlIwTI6\nZoDYd15Kn/f0N5oKe1EpP1Fm6ZrARy+OlaBYRSODAmrKCVGw9yYidZkqcjDY\n0iypK0oTmzADgxl4xvFzM9Xz4Zek3134yn0AlXAOQFfaaigpw461xRqVmhXi\nOnsS\r\n=B+LG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"965ff7175c9ad97a2a2169a36fa502507280d188","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T08:12:01.620Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.0_1631520828844_0.7081257342354599","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.1-renovate-external-non-major-9a3326894c2eae6703093f6d718bf08f28e64ec1":{"name":"@balena/jellyfish-test-harness","version":"7.1.1-renovate-external-non-major-9a3326894c2eae6703093f6d718bf08f28e64ec1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.1-renovate-external-non-major-9a3326894c2eae6703093f6d718bf08f28e64ec1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"357f7ab02fb148eb15f6e2f3cc2c174e50cb309f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.1-renovate-external-non-major-9a3326894c2eae6703093f6d718bf08f28e64ec1.tgz","fileCount":27,"integrity":"sha512-saYGDhuTHtrjskq427qEYYAIdJmb2hTpHPvYX9hbJyGHCLbuKQaXRokvYCYRXDfLJR+wwqFjpFaP3a/cmY5PaA==","signatures":[{"sig":"MEYCIQD5A5O0grQsgSXyR9lId93cHQ5fvDpTCZYh97UCle7PcgIhAN1ZQOvsYTR04sGEkv95Z5CTll5miHdUW2eLAaZAceq5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPwlGCRA9TVsSAnZWagAAAgkP/Aud1tR6dmSrDMNLMgWc\nXOavHRHONzYAk2nzVg5khoNO+ajjiUiHt9PM1iz2IaU+lxD0HPtR04PDz6Nq\nW4XYSI2r1ZESw+RxWJOwR2HiRF8HaXPPAqeMTMHa1gRLVIsJ8YNEOPkOk8sh\n77Om1U/AUedsCDtzo/pTDwMdfMy8iSSTFrdOB7GFtXtxnDxs9NdyDqmgPRXu\no7o/p6n9snwpBWbrwLJLCrrpakANDXpfX9/U025IF1XTERbA8YvYCa+5zpIa\nwDIBi9EuCDgM5bASkqBrZ5W+imJde411tczxaRWtnVkmhW/Rjwi0QnrUMbNF\n7E7b0b+7gK9Yr/ZOqsPNVG5ict0jh/GPrjyObngf6kfrGNmPo6FN4AZn8Brh\ncW+ZGbh/8lWBEECvSiLfhQAfuS0xdvmNg+ijfb+KgrhpaPQLgeR5RyaZ3MxQ\n1HttQt1mGLr3mGG6pHjsVmErHnBNH1c7/ILlmTDbQXAA2733qLLpQI+rkZwi\nqeAcp3lP6EV9S/yo04smWKsI2ZFaSrtmwCygdUrXcdBCYr3ygBVpNHA9WHs9\nXLkNGxO5TYgDjUxtjIS6VBtoafpSBF+0eVUAVaHU48aL1CvrjWkrnq6x1QHb\nFmFrvqvpRg+XWVsoUGCRyIajm/CLb4lrxFPuou8NcNVdDLqCo3/8czwOxV/R\noFsf\r\n=wI+R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a3326894c2eae6703093f6d718bf08f28e64ec1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T08:15:11.192Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.1-renovate-external-non-major-9a3326894c2eae6703093f6d718bf08f28e64ec1_1631521094710_0.6372114043257742","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.1-renovate-external-non-major-9217db39e19d32866496d8b81c2ff8b3ba1b3e11":{"name":"@balena/jellyfish-test-harness","version":"7.1.1-renovate-external-non-major-9217db39e19d32866496d8b81c2ff8b3ba1b3e11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.1-renovate-external-non-major-9217db39e19d32866496d8b81c2ff8b3ba1b3e11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e79a4cf73e443db488c6715e270a303c3290ecf8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.1-renovate-external-non-major-9217db39e19d32866496d8b81c2ff8b3ba1b3e11.tgz","fileCount":27,"integrity":"sha512-4xdQsrb+PLnZnW7RpTWCIy5RPQDAmZJ1Hl8KUxWq+F5KXLBmRHuV292ZzXeK6CK72HXv2IZBCVV+TKyLCqjLDg==","signatures":[{"sig":"MEYCIQDwMXOtX1bK1W9k8oxDS6XJ6IaYFu3yUWxM2QW3lHsmSAIhAMotpfOOEQMXqzs1otzuVb2jkryFGHAHZYW7BdzCUOcu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPwnSCRA9TVsSAnZWagAAX4EP/i/eDRxKrha+vvSeNGct\nEhsmwj/oTzwVqipxDG3C14soKu467GBxXprCoboRWQTD8RZH6iEN7hoUaFOU\nd38bKMXIsR3eBx5w1g5PW8PoAnUe0Hy3vrSCO64COUbQHxJ2+p4qdCCnFOWj\nePStcZ1TUM3v2X32ANCG4TGLjDPZBLlzHkSK9gwUl4CZz6AHqzRXHtzpp3xa\npPPq0wAxPEPICS31if9qqo6hVC15tvxm508ugFx+zqQzwe2PQncdrNx3xODz\n6sLA9u5k1jst7j4A6iCJwMJMId8FYn5b4gdYH5VsrbA5HqPIkIouii3QhoQw\n+vKfFji6Bu8BQCs9pJj5dAjqCx4WnOUbBqlFEBF/zweD9foWyEsCYKxuTVBL\nNg+HQT6eUV6KunL+iI0QVESMecfhXNrfWLt2SR2mk1x+DlkJnOg3PoyvVAJa\nWVO1dnQe6dEIKQiJAtm7JSbv5iwQaDL4B9ip07QN6WrFrZI/rhukOaRudn7L\n72pL4HZdUEizz5UYHSwv2scBwb+04LVeZq70+BzNvc1gpPcu0kxL6k6DthM1\nxHRvjYCRmNsSR/mTNJbtrbrlc2Dw5lM1W72XbJDp+mjhVCeuLsOr+y3PvR57\nh5CNVpfogsGBihU3peVt5zRzNHlmfd1FP67WT7JTRh586ph+VFVBSJv/6Kj4\nL/I+\r\n=NT8R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9217db39e19d32866496d8b81c2ff8b3ba1b3e11","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T08:16:26.766Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.1-renovate-external-non-major-9217db39e19d32866496d8b81c2ff8b3ba1b3e11_1631521234660_0.006234505392163081","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.1-lucianbuzzo-table-cleanup-21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55":{"name":"@balena/jellyfish-test-harness","version":"7.1.1-lucianbuzzo-table-cleanup-21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.1-lucianbuzzo-table-cleanup-21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93071fff1b7d771afce0d12fb4cc8e866f9e60ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.1-lucianbuzzo-table-cleanup-21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55.tgz","fileCount":27,"integrity":"sha512-CcWSkVVSzR/CpDaa+/ImZD/rrZbc/hqCG5ocknAHzNuyJXkkWPOhTUttQcrKgMzLF5e0VJHDzSeei33g7bx1cQ==","signatures":[{"sig":"MEQCIAxhoJH/xHO69sHdX6rtN0sdc81ZOiiTN6wOUV6q2BcOAiBQcSv9eWP8zx0YrBaTGeFhq02pOzq3z1a4G3TJrcw9Uw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165450,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPw7KCRA9TVsSAnZWagAArK0P/Ry+i5gnAQRgoh5HV659\nTQweNj3I/4luR9qlq8hwiU2+6o9g2I5oSG/tFCXZz212UbqP8g04/FNm2TGH\nm2PJmUG8aPRacLcO/pIEcbcJ6eIjBh232AyUygaWSeAX78r/FWzlMMzE1Xkk\nC/qyXgsbP+zSOmXzXRtL11l/S30MUqxT++u75Q6gxbtil3xQlNPfyU9Nqz1q\n8fyrCnGV7LR4XfRmK/7fRGirC1nOZlZ83PWVIYoYJeEotm+ySatrAMGmbWmg\nrJ22oXdW0Lc8OEgAptAEd3W6/WSE+Rrx37FYN974tlvyJ07aVEHnXzNc6w/g\nEza3tEbCDhKlNy8s9h4vfmvNYrwkkoE9NaRLbxwVw+buCY3/09BUUdhPG43i\nTm5YhGb8l9v4fixKkAha1OHhkBgdZ3vJjm3LaQvJhQzNKrtun8p72s2CFFFj\nIfWnk4tgalBoJ2mRM740zO2kFXqev9JokOY08+Y6Nq8r0y1KR9g2KGAMggbP\n2YjMZ7xtsonkMKatjzmXu5ZrQbvzj1O7vW8D+hTrklXPEklz/vuMSzCkoPJL\nHsOXZC32htP0bgInpTaujDzhfB++jaBJqG65Ok7DOTfwyv9u0W3xf4hNjxGZ\n4L3d1qYOybPMCBlizHDgqZN5+FP0Z78fT52WXqI4FWmBGllG4boxksDvylh7\nEE8s\r\n=aYj9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T08:39:02.380Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.1-lucianbuzzo-table-cleanup-21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55_1631522506763_0.5092070194914013","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.1":{"name":"@balena/jellyfish-test-harness","version":"7.1.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8f0dea43274bae457b0a8d3a228b1c2c789db889","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.1.tgz","fileCount":27,"integrity":"sha512-3PIsIxXmQjIhAxXZc89pwfn3BnvMPrszUIasixL+w0Upbr9/yYWaYlW+IzFA4fT4kI3hSg4EKRQ+yrSvMgVA7Q==","signatures":[{"sig":"MEYCIQCTOo/bMcW78XrU79Y7cOItOdMeHlhavccwLJ7v2YdblwIhAIBOa3NovVHBWUEqaxG+IOs+f2W53LeCgkhGsbq/crlG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP1PiCRA9TVsSAnZWagAAhBMP/R/dCr9/Yb5jbeC34VOT\n/vPsUFHUjUcszPpsk41jSqDOlPWa6Kk5+4cpk+pQVrLxe8io3h25zWLuYBfP\nUPm7C9M5Mv8BpuhMx2+o8cstJOcCaZWi6q+FZU5KguIQ/wv+s4n5htzSjLFE\nzR/5qX5u8ehzmSiP43WAtxaMgYPEJoT0zN4tmKKcqGMiuSLAe5RDWSrCXLrd\nYF/wqeXQK51maAoVR6QN47oVs5xqYZ0GQZaTArM0GSgPOIvVhP4RVmIaGsr+\nhGexw+2k/A99IS0UwL4xmusappZ9mUXD6BoA36wm21oqvY8VcxS8LY1U1ji0\nMdO5Z80ZQx2ule2ztLq9nHkucG8q7kYNr1r6x4xrl4rP4jTAWZGqkWovmP57\nfISnm7968vWr77zoAQkvEanf1O8B1wuIwWf2XsBXyxzI3TadzGU2A+J7f34F\n983S5NgSTFyM3J3nT4RvcItzvfuR5OuArErkv0qRNXKfdqEVzwfhW0ERiZjP\n0+HIX2piP5c4699Z1sng4L7VrSHFDLDsewUEpx8yrTXSkCFcu9qj7EjJqFxR\n3HY96ARg2mtXHXIAlIgFqqDvvLqKD5tTNi0QRCKHB8NDtzrmIFmJnLl/ONY6\n2J8Wcy561m+CTg+Kw9gw2kEPX/rugrqR3526KY229AdrvMifpA9t1UKJ7vhi\nl8xP\r\n=kmlK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"843c67617f3b3e9930f07589dae862cdda762d62","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T13:34:22.824Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.1_1631540194257_0.36093803770614286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.2-renovate-external-non-major-a38d6fcd5a2450c09e45af69149ca0f41372716c":{"name":"@balena/jellyfish-test-harness","version":"7.1.2-renovate-external-non-major-a38d6fcd5a2450c09e45af69149ca0f41372716c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.2-renovate-external-non-major-a38d6fcd5a2450c09e45af69149ca0f41372716c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b524667d5f7e50f984c24e1557b9080cf03c4b0a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.2-renovate-external-non-major-a38d6fcd5a2450c09e45af69149ca0f41372716c.tgz","fileCount":27,"integrity":"sha512-Y04C+kAhbGjW4Pem0IXUvJZ1I6jN3sBnvwXngAOS6TfWaveB8dEFGHJBNImVAigW8E0EXwAcV6OjrCU/gcgFkg==","signatures":[{"sig":"MEYCIQCgXEMfiw5FirSphGFEcd2fqonWwI8DBox2tWlELR41wAIhALY9YTJOquYa/ZQMM4/lNg5l+DULpRSOITlbysQ/QzQY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165529,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP1V6CRA9TVsSAnZWagAAeC8P/2jzsTAkCT10mdgfJinx\nWYvwlZeD3BKp2X67wuO0CpvHpFnpLArQMYDr9tuE5rMqt/yNHUwrErBge5w+\nh1KqDKrNi76AsXpfuuuW3fzDvREfLiasbi925Xh99TbpL0FJDT+KfZkVsyKt\nTabtbDos44AJo90lgnMadaHE8vE5seiIuu3tp9fLqTARKKOl8E7RW4Jvqq+Y\nM6UeGN1Z9dX/DxstiPcJJGkMHcJt07kBJG5vMx7mTf7z2YhXRk9TQviIGNIJ\nTMzrRwy9PdBk6ORWQQNjd9mK9oR+a17Ta61Z7Be2YxLyh6S5grrxtCJgKJ6w\nDSTM4Xhz0WtGM1RpaJ5vENr5Ee7vb6L8K0Fz6PzFKpaGvcIeiCFvnyl2OPV0\nywCLYZWz9gabofd0TEOB32i7lQNZIBo88DT2JLJUua45AzwlGIggbuRxFgzB\nYfLmdgUKJrUBZarylA0fcL69RftpKMdO0cvIkvQ1788sJ7Lh5D/bbxQB7MAF\nCFCK29Q1jts/5nJgXMmHwtbAnYgs/Minp6OXDbl9lLlI2ZPAvUkfboaHGDvN\nNIpyi7CPNNTKJ9gEfTlKawH0hPOEPFuGiP6hAFTLXBx3JHMOZCtVN/yfX47A\n8dBQTfMDxI9hU+Vi8QqA6L33wpqlOyGDPND/v5Xe+EDn052DiaOKlh8x+LfF\nQXH4\r\n=qc4k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a38d6fcd5a2450c09e45af69149ca0f41372716c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T13:39:31.997Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.7.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.2-renovate-external-non-major-a38d6fcd5a2450c09e45af69149ca0f41372716c_1631540601929_0.8776923685907483","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.2-renovate-balena-jellyfish-core-5-x-23f59fcd007351aaf63026fb1497af28b516b23c":{"name":"@balena/jellyfish-test-harness","version":"7.1.2-renovate-balena-jellyfish-core-5-x-23f59fcd007351aaf63026fb1497af28b516b23c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.2-renovate-balena-jellyfish-core-5-x-23f59fcd007351aaf63026fb1497af28b516b23c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"abba55bc8a8d274cebf380674a9d8e1c4cd02f10","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.2-renovate-balena-jellyfish-core-5-x-23f59fcd007351aaf63026fb1497af28b516b23c.tgz","fileCount":27,"integrity":"sha512-8treGkV4A8Wzzn6SDS2a5f1ECNX3Dwh+0qALzRENsXcG6Uzm0ZNAXAc6xnT2Lbv9f+TNPx27/w6AxgWsuegJUA==","signatures":[{"sig":"MEUCIC3XP2TLRRzdumP0Zlps7hkWfIA6biywTI5vTwjyWa17AiEAmsVFTG5UiuPqeeG3AZr1L7Oib6f5iB6rtBrbMNeFe9w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165561,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP5XyCRA9TVsSAnZWagAAF34P/2QQL7E/uh/sIdbi5q58\nLSmGJror5baTmRZOT57iUISYdvAT4Mw1mxKw7LlHvt7GXmna19pbuHjghoaB\nZWMts1nE8dvnb2YXJBVrPtG15UxKvU0m2TJdrPTBg+kRd8BcivOQbxcBulHt\n1LrSvyVGhd2sQAQbBPVqR6IzzZndyJnl0Z6kc+Zk3PN2HFM5d26qANB288pW\ndfw6IvzYfSAhGR5zcXkjm73/vq7PkY6CrhUS08wV+cMaeECfRylXiNrkKt3D\nHOtd07/4xJK6+w2ihBI9J1+vkAPfh6tweWIrgKEhA5jOLjqhwJa6IXpTrMxv\nl/tkx68dEWMZP4q8hauVaYGuGhNpE/cVQY9SqhlVKN0o1RkeiJhVh4ulmrzS\nOHEN1Xdh+1cU3z+rOk5QMjzrJ4pSJMBdvh6tIjzIEyjxVSfyhdR/678ik0Gg\nx0JcJPsQI0Bk+BaxUQ3bwitqY27UHunxEmF5drHbdAmWoVtsQoQDHuJO1iRq\nvnMJFt4I0B5L7qwjAL4cf6lCANqpNMl2v7302yqFR2iescWmtXwPBLezIylE\nGtKc/h8bCj347SsB1zMIP+uPudnIvpMWn3ZuYI3W07+iRijtNEc8wo4MvyQ0\nsBgJH/19vKrywkcxbe06IBOA153taCjVI3XUXex5fXCfbh3wGXGgwTtxpfy3\njvMd\r\n=Uug3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"23f59fcd007351aaf63026fb1497af28b516b23c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T18:14:41.967Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.8.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.2-renovate-balena-jellyfish-core-5-x-23f59fcd007351aaf63026fb1497af28b516b23c_1631557106602_0.23566016655022648","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.2":{"name":"@balena/jellyfish-test-harness","version":"7.1.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e502e0e3b69778c59fe862d13ea38b42b1ff4f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.2.tgz","fileCount":27,"integrity":"sha512-wPDJT6LRVck6we1dGoGL5XQRH0hN/nUgO7HQOaj9H4qfYG+A2nXUxeau87+EaQVTRdkUWGfmsny2X9SG/pGxDw==","signatures":[{"sig":"MEQCIELqB81+EdP3R8HE3qXP6Gudkk4WvA5Nyyp3++oFeRYgAiAbwk49dogSq7AnHEV8jW3Ss9Mwcx5URf/JOzZ1dx6iiA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP5boCRA9TVsSAnZWagAAZu4QAJasnOi6kOnz/kOvmElE\neOOZ+jhAV/nlWACJWSzMTBhP36L2L7wUchalmr4fN8k9KgZl2cJdWOpzWzhE\nOCC5r5LqfxF9WBCw1gpFEJq2JbFIDXL91WBjkgloCmyBxq0ftUgsABSVS/JN\nOzBPwCSv9+J9JIalQM+8jlJ0AOUsRdCQn2tpQ92xPhxwMIA7CkPJ9LsypXVF\nnmvMoro9gjldF8mT2DvIo9ZpayuWtNvZKfi5lRe2hQiel09IKMs3culAzVJ7\nXSndltbp86b0jk8atYsSfmkvDeRQLW+pWSeiTnSh1GVui9qtTKZnBvm5Ae9G\nbNVc+y/zaRgXLL3QbEsfcMVSzZ8nTKWbnQvaFF0/+ASNZiaBpsD8GWDMwVD2\no5IyjDef7O21OIY8bcjNlZBaPxTh0k2FrVyqznhBbKEgalAqsG+Z7+UXxSGg\nXRGeORacAiVDP0kCUUnch2p0SaP/KlAq/UaBy1k6tox9bf65XLrjW0iZCv1l\nLE/NAQ5JYk2q6i0uyV3FKUolIyjDAW6diwwVdo4KIYWf7DztU+eCQ+/Czy1n\nZXu4hYtf7tiVVQz1D4J0cTB7JnrBYgQY/rZWoEeFM4FhBni5pzssZuAlzglx\ng1w7+esXczW2j7TjI6MojYbztSs6mS8s1GFKH7aUZfO64ADzju/QPtp0mYP/\nvXKl\r\n=z05T\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1574fb6000978e40d0abb7e728310ff66b2fc0a5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T18:20:42.367Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.8.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.2_1631557352131_0.94173421797937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.3-renovate-internal-patch-0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77":{"name":"@balena/jellyfish-test-harness","version":"7.1.3-renovate-internal-patch-0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.3-renovate-internal-patch-0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5ee67abaeca5e687e120ca6a5dba846c5decabef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.3-renovate-internal-patch-0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77.tgz","fileCount":27,"integrity":"sha512-GsLDp2iex3Y+4kNsxfiynJZafH8ISttN+tpmg5LTiCS4Qjx/LRgHMiu0yAhz/aVmWNbB4H0YgvE3ini9w781tg==","signatures":[{"sig":"MEQCIAdlr1cfraYikmE8ZlZfsDwK0nBqEKKcGb5xIyFVNlo0AiBq4tHkYFaFG/3QJ6aaKhDMF+5GmiZfiuBstB/L0uFZdQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165623,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP5ftCRA9TVsSAnZWagAAIHUP/3BP+pRw76BTjleuj/DL\nzHkVl311l+aGhpkLrgWUCdT35T0j646+OA5Lu/JNWH4iojNkdTJuyBKpzPj6\noAvk1RNpEPZ2JMqxOIjwuo8BvJwfSfUEpRc7nqiT3TVC94f3fAiNIeRxNAm6\nXkujIhIiRJbKJDBB9G+POFzp+lpLhJpFJ1Yemvh5OUmVsnrNwX69m65gfgYC\nFq+1Lg6mqBcWLF9IZnfGY66mFUEpe0uFD+Wzscn3zqdNn5wNLH+xG8Tzvj6P\nFenFbBz2hMCvRXkqDw1KJ73sn/ZER+H8Z5fNiibaYUAI0nM2lQyYGUTlM510\nDzsWiJ1bFe38tfVG3qwvBskm1x757iYnXZoLKTAwRYgqzS3j14Ql1061tKQ+\nm7nvmzLa1W6RBEeEjMqL9G31fsfLieYjJqw2Crkj43FqjET97BcXBxt43gZg\n7F8Oy99ZqGqCeXWgL/9Te30mb7YOzBaqZFmI1KGWvF/H2d3xHeQKKMzo+9YE\nhGr0C3gvHIqawIvkaKm9VBp0CAJIj1kM7vj0y40GnSeSgA/tcHumOFkjTjJx\nhQEBp7YwHVVmdnSLhElmlabU3L6gYO5WvwlM9RDZ0GIjfMMNyc8Gqeyuh3fM\ntAEnQGXrvlBfDXK48HwQct3G2ssVObYqOV0OTPkKRHag9JV5KWbZ+CI3YrWL\nO5pL\r\n=M7zI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T18:24:11.503Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.8.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.3-renovate-internal-patch-0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77_1631557613046_0.5658570110776144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.3-renovate-external-non-major-e89157ffdbd803199e867a10d03a94c345d64b03":{"name":"@balena/jellyfish-test-harness","version":"7.1.3-renovate-external-non-major-e89157ffdbd803199e867a10d03a94c345d64b03","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.3-renovate-external-non-major-e89157ffdbd803199e867a10d03a94c345d64b03","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b371f16e7a544da7b71e891bba528312526a3aef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.3-renovate-external-non-major-e89157ffdbd803199e867a10d03a94c345d64b03.tgz","fileCount":27,"integrity":"sha512-+k8s/0p87HSH2Dp+BTfCAHB6a1owV3omK5eXDaYaDE16Pe6ypUM5OCx7sihkwb1NQk85XV/y1Fo/1xEoXg8j4g==","signatures":[{"sig":"MEQCIGNPn6kbXHeW6t37TACYZLmL+88gDntfW73KjHW+NaA8AiAc8zu0xzO5BvvjNAyeZLC0XqmrClQbRRihQYWUAH2Z1A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165631,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP5hkCRA9TVsSAnZWagAAklgP/2KYN9pfH/42ETxv2nXi\nnynJv4H6KCfyfCUL4d9oMnzo91coHnBMwhZUe/f/AL+bNd278GtP5xtOGgwp\nZ2YgRadGO6EQPTkeeLyDeCyx49biF7IrMCKCY3qMimiQ+czodN74KWQdZkCx\nZF+WKUUS8jisObX4ATaS/T52EAq/XeL4AemvwEa9dh5MUzWxAo6pkPg/9Eg5\nrgbiznP2AwsuOVo8UPCeeBjrtEOXjGYoR8EaBc/GVREm+8XDgMscYpsyGXuN\nYkFDDI97CdHIei/Up2PKmnKHCHNUS61VkvMASvWiIPsMPIclMrI5eSXwzYAW\nfj8z6vRzNqcdxlbIVcGczLzDlkWCPWSVqBb3q283UuX7OsdrFPuHpAz+ibCn\nhJscMRvOKxR9nvYYTcp88GpZE0Cr1zNKnVUazrYrUKL3ni/FZV9ihYb3OF31\nMn+XBUx+SZv6NcRdS6n/9CeKFYOB9BnWHc1RJtUQyeOdF9ctEZpVAqGw1BA7\nR0tC7/zQHMsQ4PTa4vyKBZwdMpS4gBFXL87aeT+6WZtza3frD/PKY2E+5XF3\nCf3sgaEtAFDAHpbZWJM7SApnQyTCmAGy68+IlypxD9KHqFpSrUuwz0TT+vdr\nu8do3dGBxWX3tCv0THHyNw86sdHQhD5IVPtf77Y+BkoDv3u+6f8tKTgWDyX4\nLEzB\r\n=0RpU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e89157ffdbd803199e867a10d03a94c345d64b03","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T18:24:51.283Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.8.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.3","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.3-renovate-external-non-major-e89157ffdbd803199e867a10d03a94c345d64b03_1631557731641_0.3015818597319826","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.3":{"name":"@balena/jellyfish-test-harness","version":"7.1.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5eac526951e2191189ab40e01bce0ee0880a0a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.3.tgz","fileCount":27,"integrity":"sha512-tvBU14XU6noifb/5YgZxy7TjkF+RZJbs78ow4G2obKu2pVdGCx4eIBQjUS/qxxA8TiVz3R2WsisiY6MHkl2QlA==","signatures":[{"sig":"MEQCID825kTU71v46vqC0sDzM1msvYQl7fWXhlDYMiP/O1B4AiBx+OBUDT0Oc+EmmXhQDBdAakdjconjRJ7dr09sD5ajTw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165558,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP5kzCRA9TVsSAnZWagAArU0QAIyjqWX0Ivt0jeReykQF\nKRur9q73cqemAtcTxhdUPXbAxC2RJgsqDPy5/AEvo5zkJ7rkVOLk6uuznMWK\nl2dUZav6LaRL7nGC+Rn9taSAjIZUyW/bB7Gq2F6fplsNE+8MajMoly0eUqmw\nnpCNuKu38ykNNJJiuLbpUE2/ULBwvljQ1+VkbieLFWHHEodqjodMfnzDsPM+\nKBK7RDiHjCVXN5IeBrstTLhcJfkwZHQ8tDDUkToIXWAk1j2H3mrJL0t7C1bX\nnErRSNiSx6wdtLwc3tJWLtVIykPXoiQ1mJ3QyVzDQpb6+1+7xp2wWql5HXBL\n8qGnhWOL7M1+3t+cvgBEAPeWTC3xVwaPTL3w3nTaCHazwfqqGsQL2EciKFyW\nTty06c+gujADzh7UwosqkcnLm0o3EOzoBCi8k8gLzY02ca4oHerw00yrURd5\nzwomOhAk06OfqtTui5MQubE4re1f+dNUUTUl4oXM53is4VewnTTblER8dCH2\nczL8FubGoHQjiH+kj1Q+obXwdL22yNKepQIH6f9olsJGRmsyEPBlaCTOc2tb\ng2INAYmg3TKdS+RS0U15efgSGNk3lP2yLqk0GDJ92gvwPYK3sQWMAvxOKpts\nzqtjQ8jTCmKCOVAdS9MIHhhzmLLKABmURmIdfYtm939AIVXtOWJxgftXJXcA\n16+5\r\n=Qi18\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"296bdf48ac8b4af8970dc93e55d95ff06ca8d6cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T18:30:31.871Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^5.8.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.3_1631557939621_0.656862066040864","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.4-renovate-external-non-major-d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0":{"name":"@balena/jellyfish-test-harness","version":"7.1.4-renovate-external-non-major-d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.4-renovate-external-non-major-d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b98deb3df203e9b5c1ec09949ee7693d28407305","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.4-renovate-external-non-major-d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0.tgz","fileCount":27,"integrity":"sha512-A/H+I4vgeYbu/tiVcEH3XQzygQ4cO2ojISeBOwZdvHgB1r5NujqF3sTR7DHAtZ1iZcFEmLUwwnGLkRbSsjRv9Q==","signatures":[{"sig":"MEUCIQDGOMFqDjd3tyQtgO6sWeCBhfca0KE8cmhE/6kyJBYEoQIgVwYvFcdlTnq8fG1TkTtCvO3K9cee0p5hmU3iD8wL5Zw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165704,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP5oOCRA9TVsSAnZWagAAoBsP/j4H4RtfKwgZdx2BBP9G\nL81vcUyJiMuaid1fIaKVL7BgPfykzBOYevYbNY7e8sCty2309uuoiwwvGUZA\n/AoKelGNkXmHsF7wyL0wWz8dfQFxbEeSPnNgsyqi5qPdg+54DhKucf6tRUt8\nXRIwdJmkjmG5kJGZny+0tM7oair+vtzPHiAKRr3MFqLMdIbvEvsTd2Qxj1qs\nAcsnzWqZH3vgZ8IwDJ/7ZznjEv/gyfzETIk1EnLvE1b9ndXE9GRlKHMgczFQ\nstz5bQguSXBaACWYQUEYhTXrw+L6zVR9aadhOB+xclQZkn2J79WVuv98JIfq\n5CIEPiLlf78Nuelj32vNKq2qBbBTD3esXJWpQKk/LvWFBQYXkS9FWFYv2iyg\nNJlV5MRihCft76uM6+bZTOM93924l+b3/0g9LwMoO7xJ3qk5Ejb6KF1bHXih\n090oYJavAezN14TyEqDZKblgbcQBDpYas+rVE0nh3S9Eq9bvmJ7aMCHdYyRv\npkCNLsFnjxlJfNMBllhntFyK5rayGtKaa+Aoehuxqttuwn5S1rGpQuz2Diux\nSsClJVHJ+6xU4/5KWOPc+VObU4T1zBgx0SUfh4x9d4kK1JWoz1WxHvTGEuXa\n7gv7PP2Q/uiOo+GAnmqbm9f19Y6PgdOPyreYqMRJkE/W3ENpCr72XFk8UWlK\nbaRu\r\n=lXPt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T18:32:12.746Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^5.8.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.4-renovate-external-non-major-d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0_1631558158278_0.5622392807460499","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.4-renovate-balena-jellyfish-core-6-x-58f44339003ae41626754e7f633f529b23d202ba":{"name":"@balena/jellyfish-test-harness","version":"7.1.4-renovate-balena-jellyfish-core-6-x-58f44339003ae41626754e7f633f529b23d202ba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.4-renovate-balena-jellyfish-core-6-x-58f44339003ae41626754e7f633f529b23d202ba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9f9613f4da831135f99fcb8524cc4c871d589e25","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.4-renovate-balena-jellyfish-core-6-x-58f44339003ae41626754e7f633f529b23d202ba.tgz","fileCount":27,"integrity":"sha512-/a+Otpcj+ngLmNlwt6iMVHjahwbY/rfbErXaKj47mWeo/E7u5SxyAzYWms4MU88pyOzM74Ydvm9VLeoksqOkeQ==","signatures":[{"sig":"MEUCIC/X20VVciPbhREvx+3ZvovNTwsAOoVvL2KOw5BZu6F0AiEA+q40uTYGsygCp4Q4q+OqbAeefegnMABNMFIbXMj74sA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165732,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP7NgCRA9TVsSAnZWagAAg6YP/0i1dCxIwWIF+pOTgUQm\nl4IN6Pg9y80iIWi6bw95WltqAM9J9sTJwJTTJjMoppZ1o+I6EdMZMqRQtylZ\nXO2+u7LNmjubfaL0Z5KTsq5YQq1+zNH9Ve0O3nDV085H83BHylfcK7QSetaa\n2Ux4EsxeTS0Neg3RBl+aPBl/pZMN4TMemG2jsybLC7dos2cEthLf6ROIGq8p\nRToq9EpTeQCuwOBlxgFzuYJOC6VWMYX0iWdkz1MmBon+NjesJBDvu2TzS5EO\naQ8kfu7sksFFAngPl9qO3QNJVSG1DHy1U0lqftC8PmRfp1/7wZoHRO8GvBs4\nvSHTxt1liophAVglyma6h3q5DqNczh3/Pk/eSg0OMepEJ0Sm3LNmgjDhJYdp\nyzAvEIVQb8FwKUklUlesaDYjJmI/bTboJWH4JzXO3fGBqsPx1Qc4Et4lxx8y\ncyPIZjjxMNJJ+HTneyW4Ss5mGSaPAFIgJ5ohBHKfxM03C9jDUNa2d3iP+nGc\ng+zR2UNoswcIVz2FGuMZW8N8NnEtQpbEBMhntkH/0clGUTYoJPwGNelHxLzX\n4SwtJduYEPed2D2qr9EkVwyqCBm9niLvWgD0/H+rJYn2Y7nsyZ7GlJdIy70F\nrmRMUkpC+D1NofL064aE6ewqRwORC+0HWNECdwscNTX4g1XmpDDxp1SXwXl3\nL7we\r\n=I1nk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"58f44339003ae41626754e7f633f529b23d202ba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T20:20:32.145Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.4-renovate-balena-jellyfish-core-6-x-58f44339003ae41626754e7f633f529b23d202ba_1631564640571_0.17800287852613228","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.4":{"name":"@balena/jellyfish-test-harness","version":"7.1.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7fb97c8e9103e64814639f22c7033d6390944644","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.4.tgz","fileCount":27,"integrity":"sha512-5lnRoaAqqrCEJ1AdCYQF+H00P6sKR/hjFVPDuzcQ0H1OO3ojxZgz/jCoCrGKKpKOdV4iUlCabLvY5ys9l4kqeA==","signatures":[{"sig":"MEYCIQDbyLpr8Cw9eorf+hl1RRunhuRlUMoGbunXPq207fOphgIhAPQ1dL/JIqE2ybtlKr8SqWbvIo4cJLREcAsmblsPyV00","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165656,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP9q1CRA9TVsSAnZWagAA4vYP/2ZaYOFLSJ7gZeRnGhuy\nTiKLss70y5AuhUIkbOf/3FBtIj9rQ9nlzWozddB/EvKrxUopOPg7cv8jI5eH\np/UiO1Lb8GYVxiok72fETXLrqGImqoOR4hXs72pWFGLMQHiWT+KBuXZQsy1I\nitS/Yzj/BWl9IxhNzCWJ+vdEw9/2BI7aU4g+3Eraye1NzCnjCldtHqM8XWeO\n8XnbG6p2mCCNz+7Su/VlwBiwArpgkSRHxNng3trf1um7X0tiLlpuMzZ9vL5w\nRwLMasMfHOVYxPrJlUbAxM7mkm/EcuY41pm424SxpyTM9iBmvh+AvPrKeYTA\n/LaKrffQFlXv6LSnB1YTuGUdrjxURMX6tU9w2GS9IPyVquvMnkiZfB/+nvuv\nL2++/bJw70fOFFCNlB61Fqk1QuuHRuTLrsqphpXxbGexkGb7FiP3SBaUWzAC\nOO/nVZZOoh6BMYJkzSGijuokCVVxPMVbtKQ7rFBs39VtYzb7SDFW4fuhazQ3\nZ11FpYrCSSm9wDszSu2ZqvT0/Ee7vQ+u3S0LbqnLXcEeI8PZtcQL4N+nSOd1\nhFKBaiCAcaLDhqSTSXR/KjucASH/PN5/VRU5WGTl96QemsZ0jrXSq88tM2ke\nevvc8r36lNSZSIe3Zycx2vDD34INd6qG7TGya7lELRC3jbhq6zNxvTWxR/aj\nPWVX\r\n=FuMX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"100e62806ba3be2b268d0885a7ef4e92c942ee42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T23:10:01.870Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.4_1631574709592_0.6220129097486842","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.5-renovate-external-non-major-07796b0c82c2c512ad3fdd33cc4a589b796a9620":{"name":"@balena/jellyfish-test-harness","version":"7.1.5-renovate-external-non-major-07796b0c82c2c512ad3fdd33cc4a589b796a9620","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.5-renovate-external-non-major-07796b0c82c2c512ad3fdd33cc4a589b796a9620","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ea2138d08555fe285d4c7731a3a8bbf2fa38b9a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.5-renovate-external-non-major-07796b0c82c2c512ad3fdd33cc4a589b796a9620.tgz","fileCount":27,"integrity":"sha512-TI3JKTya3MrdxyHEZh9HA/QfQYiOU4c5VpvG/UQuDBVzgWTKk2R7RlMfhLKqoKqSDpl0cy66arsqNhZDrrtEFw==","signatures":[{"sig":"MEUCIQD97XmHAOgnk5dsfb1Zfqs/AsmdRvyg14O9ulH8J7M5tAIgDPBC8Fu3lBE9QuIQzGWvIrtaw2rSJ0nWsavQ4+2YyMw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165802,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP9uhCRA9TVsSAnZWagAA8VgP/iCwgMPNuSL9Pd9SrKVy\nz+kReE43ZPYdhMtaN3WH80uPM9aWpJMp/JTFD755CidZtn8UT6rHt0Rwl9xC\nMmPppZTWN+uPqw/ijNFwluCX1GswZvhv4q3/Q9HSkvIgdPOwmPlpFY/h9Ik4\nI1zcO7aAp16hr8AJqY5ganQ/rMb4hoHSPrGeavcZfD1tGx/7aIFIbmjPJY8O\nLD6ij/mij2hDhKjT5sqW1AwdZgE1AHrgu/90kj1sOdGtFa1/84WrbWJ6uiut\nHkWOGjQ2IAHhzZI5GKucdYrxKcJ+uDv6aWgA/qgxJq/bg45dJbfzFgfUjXZu\nkpRwuVIFXqYlQQpBScH4Zi4mibVweUkFHQ148FStfrfwx3To05T9n8wBQyGY\nyvmAmZP/oPqxsJslcwEhlKUmMQLOmXx+Yl2mWwDP3nEfEM8hmPdWjd0LdtAM\nd5+QEwP6AUpYyCYZySUgDGQIal5G+hrhHSjQEUwq1km+0Ph+xl+7LMJm1xez\nSXFZJZBynbOfpT/7F6Mh7YpVHOWupmQfgK1QP8p+zJxQ4l3bTtkNaaCPfUqN\n238Pt5QNu+pQsVNjPMZYjS8f3AD8tkrimnI6TIgQFOOGDnLq9u27WquvnHxV\ngNmcqixl3yhpl6WJz58+el96EeKhuinH+13as6xmqbM5+g8y6q0MY7QwNQ2i\nCaNh\r\n=D4eX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"07796b0c82c2c512ad3fdd33cc4a589b796a9620","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-13T23:11:37.345Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.5-renovate-external-non-major-07796b0c82c2c512ad3fdd33cc4a589b796a9620_1631574945242_0.39594752078801365","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.5-remove-links-cleanup-deb12291770d8768b328edc7f76b7ce0fb1d0fd7":{"name":"@balena/jellyfish-test-harness","version":"7.1.5-remove-links-cleanup-deb12291770d8768b328edc7f76b7ce0fb1d0fd7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.5-remove-links-cleanup-deb12291770d8768b328edc7f76b7ce0fb1d0fd7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30ff8075811b69f2aed88be40ff6814fb52339c3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.5-remove-links-cleanup-deb12291770d8768b328edc7f76b7ce0fb1d0fd7.tgz","fileCount":27,"integrity":"sha512-ZfaqFDMRcQIIFwrdo+IF70FWTfE/b1nJYKqqOT/JjV+Ansgh3F1zJg80V847RMY4RJ22q3YAr5DVzqgcDcldMw==","signatures":[{"sig":"MEUCIQCR0pxGXbSLSDuvlKSEnP4I1Hgn20I5F8MzNTeHpTMgMQIgYLuviaxXq1hTmC3+0ycJLUC7v2byTP59VZXykBcJp4M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165524,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/U+CRA9TVsSAnZWagAAL1sP/ii7GYiJCAH4SsS4KNg1\nspx6dRXMR3mVGQ1xH13YzqhF6VrCLI2QXgi4WPoFh8ZDyGTXDimVmL/qIaSy\na4xRnTcC10yrD1XxPvMiCfZRUGPo58NCGbhchbPHA+Fu4ITapWy8NYeVkf6Y\nPvANy6kVGTcRblf7MmdidPK+dD0NiZ1hCpDGe4NllcNnSnBEl8otNl5LNSis\nvtsI6IHHe/VS7jXJsmc9qJpMIMGQf/uyf4TRiPVq15dpueMUqRJuup67KThd\nwSxls5BX5vQ5qxqS2qXD52oSXvHFgP2ti/DE+VuthHcIeu/PEgA0YJqOoRJx\ntCepHNolpWLKc8gJi98aOnPL5ueyB9DuJmVaY5VRWsOm+fCpKbJnRs4NOxNl\npAS9ixtCi3LHBsxFd+I9YVIIxK3ph77bt5ogBh4NEv2qA+EGQk2KZcTOqZX4\nWUaqcxIYeE7b30/xcMKohFPUobaPSMIiu/PTaDLpOi3NxDJfUzKT1zS504Nc\n2DxGPyqceXhCEQt3qZY1/7HYXGU+AAtFfkdo/Lajl4kacB7napAy19ldYhyg\nfOnD1Z/LOSJBkwhLE3Dcp6eruy/A4cSfdOZOR6ogCE7zV5bwdLua6+Lbwluh\nBWasTcLQR1i88TYW5geSNvoSy/govuZwDQP0oguEYGEj9DEhK+A0WBoLS1bt\n3AWu\r\n=oEWy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"deb12291770d8768b328edc7f76b7ce0fb1d0fd7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:02:01.235Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.4","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.5-remove-links-cleanup-deb12291770d8768b328edc7f76b7ce0fb1d0fd7_1631581502410_0.2362828862449171","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.5-renovate-internal-patch-095f454ae74d1fff952982ea82b99a6a2ce0a7f8":{"name":"@balena/jellyfish-test-harness","version":"7.1.5-renovate-internal-patch-095f454ae74d1fff952982ea82b99a6a2ce0a7f8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.5-renovate-internal-patch-095f454ae74d1fff952982ea82b99a6a2ce0a7f8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6cedd6ebbdd75567e0c0de9e9720b1f23157e05a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.5-renovate-internal-patch-095f454ae74d1fff952982ea82b99a6a2ce0a7f8.tgz","fileCount":27,"integrity":"sha512-IvjFrre+MEJewiGhyC3R0NW8gYhTTqGywi2mcr7XAxYLmETrv9z+n7dj+B3a7oBUQv2to297mmf7UNX+DYLU/g==","signatures":[{"sig":"MEYCIQClXEqB7imFMBDqzueUC2mAGyHG0+Utrrqc6t9yTNFT3AIhANRzvxVe22ptfl2XKodP/LAXpdgKSstxNk/aeuwOqJal","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165826,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/tCCRA9TVsSAnZWagAAtUsP/1aDxq7lQ6T520yGajqf\nXehi93akzXCkG8DFT4CAHHjop1XGP4ImgyJQFXhZLovJ92cyVFcJ8xd1zKu6\nLMIbgezzcucpPi44s/ixYD0LZXsOOD0TQAx2Fwp2YUIQ6/MHNjle6LbopeIp\naqjTmei9ILIrrOvBphYI4H8leTxUSwSdsQDPJG8OW4f3NetP9w3GdnBFRjT/\n0znURnlTt5HrFpfPEdbAuRqNlQG3RLwiNMNyQRlTyPNEclDgm1JlXt1vubgE\nXYXFFu+Z1qGtrq3G8h7bxZaeEm93CYjlk4/AOWHKM02B5ybxA5iASrCEnTqy\nQ8emjKfSPf3gpqcHYAFZng6qLFiswpNgyFgRLVjcq1A6E1Tn3tbkyct+QW0m\nyn/LvTiST4FIXKZnv2K5PLjbT0AuUBVPSLuTlJLJyauP5LZWXVxJs5Mmm65A\nlqQj/xlFtI7gcO5MOmDa9kEd8lUO8VCX9un+B1hLMTxNrmQejl73+w2F4Q76\nUSTk5SAozNXNX79DpK0rmukFbbNDPd4XiVIKJ68eoFncEey6c5GU4icNpabr\nJrU6Q7vy44BeoX/agtFDdFy2LR+vS1OR0dTH1Hw8MAFAVbBymD0gsiTZH4Xs\nIfD731+AHsrQbf0OFBj/cP378CRCXGpf8qjSA+Rmb2c4gBTllG4H7Lmwzlrh\nGkF6\r\n=uhWd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"095f454ae74d1fff952982ea82b99a6a2ce0a7f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:27:22.787Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.5-renovate-internal-patch-095f454ae74d1fff952982ea82b99a6a2ce0a7f8_1631583042740_0.5846052603896437","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.5":{"name":"@balena/jellyfish-test-harness","version":"7.1.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"210570c88868e3185fb93762a0e0d3a9272c39a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.5.tgz","fileCount":27,"integrity":"sha512-mZvPlSYojQEZKUnfDa0Y4rXpUUMl9Lf8UOc+uYOKgQYO6N4Esxe+25H+wrChz+SKrp3oaYMjYystPlfV+4fXOw==","signatures":[{"sig":"MEUCIQCCypP5E629l82nwZ4lIArduvewhvYf1mmLdGqv/uFoYgIgI690hB9DKwPWco8Y3FE+4jmD07F2ERZR6WDk9taJVEY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165761,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/wYCRA9TVsSAnZWagAAG7YP/3FAzCKyYyyGSG+xd9z+\nAPLt7FWpDipbeQ5ME1aSz0BV9VzINh+akG5lmvSLFsV1m5pbu4xk7XRTA6Yc\nvhtRIhBEdAzvo1rRzf3nd8lP4Pv7aTk7SJhUYvy2/3sHGN3eg/Yys4vb2nPf\ngrxGenKAWIWupgRFeLELWnw6kz+NcR5nIRyZrDNRlHi6J3ugJUyDeG+XF3EJ\nuyRt8ibscsNqSmYWxtlaHA6lVuHaWn0qd+MZO2DdCdFYwLIXFVfEbd4cmzXN\n+29c3nExJUXn+UtDeZok3mADHHjcuxuWAGD6jiEZooNPiUBcEbVYlNauoLRK\nKcaaBCMihMwDaBvHEXpZVlOYX2gLyOKbAAQP6x5sbz6f6An9SjFo3YWmmomH\nXKDTnq7B4wVLd563PHh8pBdOKInfbX4Ec30jcs90gPDN/3dJziCbGAzbYA0W\nHz6S42HMOdzGj7P7HMiuWGdbddCJEqSzhnbpQ8nlJxnYD+FK9ns0Hk28kkB9\nxhDpGZvcy2D6kZHu90GZmkurhGwUpe0oN6+4mE4j15m+M3hz5yUjWLeE5z0u\nCPEAJyjHv2CXrPaE1xTGNKNH1syWo+5x8URkJ+ozhdZVGyoK/RaBXgEJw30c\nAz3PmPHHRnvvJqJZZ4CAgHT7cWMhzPWqY6XzMlox/Ceo5pFWCe8ndnCCgRbU\nCusB\r\n=6djV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ec5d4fc76306df302e80d156faa647f2d5a1a06e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:32:21.291Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.5_1631583256223_0.0722454999363824","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.6-renovate-external-non-major-010d85d88ddb3c9a5f82db3d3517d4ae4f32e215":{"name":"@balena/jellyfish-test-harness","version":"7.1.6-renovate-external-non-major-010d85d88ddb3c9a5f82db3d3517d4ae4f32e215","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.6-renovate-external-non-major-010d85d88ddb3c9a5f82db3d3517d4ae4f32e215","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6a895e781dc3069a542dc9f9305d53159b15b19b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.6-renovate-external-non-major-010d85d88ddb3c9a5f82db3d3517d4ae4f32e215.tgz","fileCount":27,"integrity":"sha512-6Q5zVAi0cd1ekUGCSfeYVNB1iMtCcdds5kyFlTbnh1aLnmY4oLjuLbZJNqehPGviU7/PH/k5cxeM2MCRGfjnBQ==","signatures":[{"sig":"MEQCIEtiQuYCmcS5IQFAayKCjkkJA82+Xbb14VfiNj/z5iQYAiAmmqK62eTBNlhhJZ7SI0bRlmSuRJGGosQN2OGlEUNapw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165907,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/0KCRA9TVsSAnZWagAAH5EQAIWRPmNmCGFFm9dOsV7r\niKK5EedZjPWvV7IqxgFEsWNQ8sTK1atr4oX7XdpiCa6spkcPi0FSpq4dAAV4\nHjTOjrhNa0aljd32hoP+Tj9ZWZYoEnMITEtrD/jUeUl1CqR+Sm1QDmjkkP6e\nTcuVTk4LqypWj6kbWy7ek9aLdDJaVF21CdvMM5t/Gv0eSY0KmBhdxVta9cWm\nNitUTdf0e2CtRJNODzr18Oz1nW6sFySpI9Bnnm4xrzykejqjalxICQxRfqoU\nwupmOIaM/JuRBX08KC/W15q4/QIzJdi/Qxq4ZaFwh6z5dSyIj929+tllveBa\nDEm7BlXKlGxZMJu2fdBvFtvR75XrTz64DMEVzuQlVtAQ9/kHjVqcozn399Vh\nK7b2OF0THP0+N0zJE8mIsjGdL9OMWENZtV/LMCmCqtbaYc5u+ezxUtKEax/j\ngIKoEpCicSuSfPvwZuosoxY1CJYn/CSdoU2+UkOOaa42p10PxWHf9eeWO04v\npUSE6aAvqPg4yfXzxZBx9tyhaa37J0lwK+c1ui4xMavrmxRquY1PJyPnzjpB\nZzl8OWW6Gg1CGq9DBoyyCoh+dhUCQimzNPfxyHAnODsTQHmG8xypjYRR/bH4\n2yC5AqZdAy7iApe4pJy6ll7z1zcaVY/T+JLl8EKQ1o4tcI6WmQe+HJz8BpOg\nvULO\r\n=nK63\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"010d85d88ddb3c9a5f82db3d3517d4ae4f32e215","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:34:02.688Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.6-renovate-external-non-major-010d85d88ddb3c9a5f82db3d3517d4ae4f32e215_1631583498267_0.19840546591175512","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.6-remove-links-cleanup-5dbd21cec34c7ae29b2318fa249a53c69b3c359a":{"name":"@balena/jellyfish-test-harness","version":"7.1.6-remove-links-cleanup-5dbd21cec34c7ae29b2318fa249a53c69b3c359a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.6-remove-links-cleanup-5dbd21cec34c7ae29b2318fa249a53c69b3c359a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"91a6b16a133ba50fb396a5bafa8448f7086adcb7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.6-remove-links-cleanup-5dbd21cec34c7ae29b2318fa249a53c69b3c359a.tgz","fileCount":27,"integrity":"sha512-9l0v7AX7KzCOPvixY4uAqQrC4NXrA8C2hgtZaFD/y+0ZsvNBZ9zjpPSL93e8BwR2AG+nv//AWQPjLHsfJFJGrw==","signatures":[{"sig":"MEUCIQC1DLiv1uNRsfI3BQOTROgas9FPpUnxmTGW0vBT3gr87QIgealFr5Vj10uo0MEMzpB90NRzk059tVTIxDfKwhdwAEI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/3/CRA9TVsSAnZWagAAm28P/1/m/eiSTRLu4w831Scd\nqmbV/15D8/eU0+BN8O6zrIhsE8p27FRH8PuJ5yys0KYFFs3kR2wfsYPXc2cH\niqzNZFpY6iYGDUM0mBHwPVHoBcqN5tIV062WMFE+q/MplGIAdb9qn3/xwCkX\nGB/OqfEEapWf7xOnmP2gBXlBQGa4mGcWsVhOcglr/Oz1YvWUG9C1+JSdDvje\nMAXj3pw1x2+8wSt0zIWoIi+hxJFitc2plmyeA4/JQBD5UFWV4f6vlnCT5ax6\nF1a7HyLqEhCcIvS4nBp+8LnrNHBu7AL5eUozM5n6EYuh9yG7BMee2Focyrtd\nghEQ6D7P0/EFctI2smQomm2cjK4odPtonoG9m74AckJNvn8qJ+Dn90p7adS0\nTOxFe0VuXfZLw0MtkWsR5DPHyH9YgWf7LxXVNe+eB0lDaCPWKd1DfV6mnsUm\nfCwB8xag9jesO69Ej+hiAHAnaZCiDXViBQ8G4ny5JlXmjiSskDDMU7O9N/S1\nZcp14TdPqG6q5NOkfqo6FOp1rAGl0KgvBotga8w+wu10N15zcsnJ64rYY3yB\nZp9Dzg/dcK2zMWFPMwJmrEUp8LSVk2ze6T7Jm7eUk02C64scyxwzV9ulQbDS\n7lIhBmJXTi4zPap4JPj9ZQGHgAi0vH+bd8jz+uNYatLaXql8OMbh/CbJphZ+\nBbvz\r\n=g2Um\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5dbd21cec34c7ae29b2318fa249a53c69b3c359a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:39:22.217Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.6-remove-links-cleanup-5dbd21cec34c7ae29b2318fa249a53c69b3c359a_1631583743389_0.7550892639551645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.6":{"name":"@balena/jellyfish-test-harness","version":"7.1.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc8a27b8e961026513084b700d3a65f1c1d52696","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.6.tgz","fileCount":27,"integrity":"sha512-cHR4Hc3N2eNGnf3BV77VIc2vBWyjMywZH7fuMK+frI5DxCaLvNBvTzM/A6YZRHsxJOJYwFCr7sFJ3ZWXMnAUDA==","signatures":[{"sig":"MEQCIEbMZE1iOFSfEaAqApHo5/CqeToR57cIU1gBDBunraK1AiAZp4uGylKLXrSCJOjoPkc1JAdDh9/Ia7qSXiTa/fajgA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165567,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhP/7aCRA9TVsSAnZWagAAWgsP/RZzcsg57MPYC+2FX7K0\nhrQ/B0RdC+pVn54EjbeWqqDWas+/bs3/kvFYnD70p/rOb02s8Q4jatlI/62w\nmA+upMscfLVZ8WYy3/ThXzwqZxl5kIByZ2d/9EPcMTho8d4USaVuhJZ6+QRp\nWXTF1FkFJ0erVQIqgZxdSQuvaBUVqOtIwAzlggvt9ZQqLC06RFrPIoE9jlbw\nu2XOa46KKDoGe02iNoI0MIz7H1pHYKbjC4Jsu8SYI55qdi0AGC7guyrfAYcP\nbryRWcp201f80Av+09FhOE0eekk5KbLjLhxpaVPzxR+f1qYz0KgEZuPP2D8O\nP2IqTb+Zs0ei4CFa2+pANj7YzudUGcVW68TNwBILET1lblm0QX9y3C5oHcjR\nefHI7LV/iqvfdT3A2b4ZS8FkpKShoQzc0xtH1eyusUlWe9PE3J57v8rdDaMW\nbZUdcX70SKIxltSirBRSM3nf9mA3Km6OMsISpCR2hNsHdENSfct5GtBo8Ph9\npADZA0uv1Y/RZeLqbOD4YigK04twLs0X+JT0J4dQ4jBKhWb/K1CWw7GdNIqo\nFJMcPIUSq/gOWVlItife5Ef4ACvDk1feOaMulMjTYzmVDzi/tcrO/e4Z9pDZ\ncxpIVi8/0BOfhaK/WTzEEnF12UKm6Ltx+Q+83vL5JhrkhS+Yv5sdSQMu6olw\n0tTv\r\n=vM+v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"629552988974c3d075ffc3e631322c6a2f9c745f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:44:11.557Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.6_1631583962130_0.3693504049961418","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.1.7-renovate-external-non-major-d8f78ab3d9986f1c05a54ca0058613e9d7f90a99":{"name":"@balena/jellyfish-test-harness","version":"7.1.7-renovate-external-non-major-d8f78ab3d9986f1c05a54ca0058613e9d7f90a99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.1.7-renovate-external-non-major-d8f78ab3d9986f1c05a54ca0058613e9d7f90a99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"364885f894736070cb47b152b044ad332deeb8b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.1.7-renovate-external-non-major-d8f78ab3d9986f1c05a54ca0058613e9d7f90a99.tgz","fileCount":27,"integrity":"sha512-6zOcBe0TzZvNInRXqOLTB4N1tCIcODUNrbX6xr9z1z7vf02IHjfH7KdrJ/AkpWUkgRGcOIlj1MieKKyxQEZrWQ==","signatures":[{"sig":"MEUCIQD1qvqQN7IAVNa3wsDLPNvLy71UbBRgr4eOHiF0jhGSAAIgJdYJBjqu2Han4kVKay+uph5NGgRBNw5HV4KFqTaZo60=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":165713,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQABKCRA9TVsSAnZWagAAF1EP/2t5mg4GkPlF2l5Y7TSU\nd10lmqJLUQKfj2p+NE4ivha5mNE7R7xyC9by+IhUor3fPGWpBj6oGM3aXrFD\nYjo8pL97PPQr/KXRrE1wUCHi38mk0FSA+MwknG9AtCZLJ58NHZO7GZ3qpXP0\nRCGra8Hohndg65ZppWy9uxU5Y/XaPZNFhaL2dmilM5tHcmDwFfO/aUdWOHuU\n61Z8hU81uubblzwJYqECn0JcgsK2iHP4p6TIN5cBvsrHPtkTbagTnBwUn8sI\n4R1k0EPcA2S7YW9eA/er0GAUpMI0SktWqj0u071K2c2qeCTrQ4xfTpyMbCob\ntiudUfJPMV7TZ0U3p4OrZHwcUwaC5uARoK9U71BCSO7zS9AOEd7lphxpvaFd\ndpciPkKLi1Gasnu/yhKSh66ps3dYNkAOY6WWDfKdUTI90GZnOWZcbECT+DK1\naITBrEMdZ7Q5SNFypL/mdro2fWu7OXzO34KyUxTCbdpGQfn4m9W1KS7TLyI2\n5vHSDuEf0mKOJG3W3oapf652ga8y1nNP96iylmJvxX+boQot+rwBr3s8axTx\nQH27+Wa7CzLpnHe/b+bKS0VRLM9EOqctBw6UvW+xOevCQ1SwIMLCFVJ3dgMk\nnPrKwqkP3hTSQLVmDLaBVKZQMJERDa3xN70Xm8AV9AICha1+aKJsZS+fKYV4\nv4Io\r\n=tJs0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d8f78ab3d9986f1c05a54ca0058613e9d7f90a99","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T01:49:51.837Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.1.7-renovate-external-non-major-d8f78ab3d9986f1c05a54ca0058613e9d7f90a99_1631584330102_0.1950686538169053","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.0-add-helper-create-functions-8602a842238d140e27ceed0a63d6187aa8de979e":{"name":"@balena/jellyfish-test-harness","version":"7.2.0-add-helper-create-functions-8602a842238d140e27ceed0a63d6187aa8de979e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.0-add-helper-create-functions-8602a842238d140e27ceed0a63d6187aa8de979e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e69cfb1d732c3f588c5873a84151c5ad05e41190","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.0-add-helper-create-functions-8602a842238d140e27ceed0a63d6187aa8de979e.tgz","fileCount":27,"integrity":"sha512-FfuNW+zTCX0hPVoKWGkVUlBEv7WRWnkRtiXxfMqS5kh0oQ8gPPjkssFten+z+mTwQlMxn+cDYpcnnfFFMW0/iw==","signatures":[{"sig":"MEYCIQDBsU1QSq9b/awdNIpmMneM2V9Tl+oBOSqwYxa3ng9e/QIhAOgc42fSciiUZq90G3R1rWroXY8pMx/CCnSZ4pnRSOrY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171572,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQF8TCRA9TVsSAnZWagAAUtIP/2jN6RsyAr1nz6SuqAkj\nblHF4ssStFu2TCL9n1CFruR5r6AniuhzkyXy9Yf217GGPWr17XS+Gv5GrQGc\nPTIfSgeHbct3xlFbk+hH3GvCx16BDHeNUiyHOsEUlyWGz5L9WWk+uRiB+mpn\nAry/Kh/bFgFJ+RenTQOHx9w4P4bhJWgQFzJReBs4o6RfGamYXorg9RiTf+iw\nszRdt3k1EL96Rw6//i2dN4TCY/IzM8WAiLAdWU25YzWHoOOiyB3VmcJdMXGc\nXeCnokkNZI8fmlJlsnPZ1TwWrn+FGgcK/mlrlZgpqB++AskwHhH5j3Zqpg7X\nXO++ekoKRVhhcrREUfhmyqifXQqZtooEtyYYxK6WNV55tLkH27dic1KTx7wJ\nmoh01FSprwG4+Jx4ryhcRy9kNmHyTA2F0M7DG/Ll9taJchCUyQb4ZdJ/lvA+\nbbdcag87wiwlCx4NW9xtt7DgsTQyJl0181XvoT9D2UXftg/NeO4sBYsS+Gm1\nANJnOaASERW5ShprDv5bQN/dYiRoylZngi6WRrguZGdhOCsPnZ1Qimv5/PMm\nDbCVWKVZQ903w0rkhAfD8WDDoo4apniYhJG94e70bmtc81YbfB9zOABmCBkS\nAoi8D44NqtyOOqkzSF8jIv96vM2CmF62zhE8Xu81I/cFcQD4QgYo9h9a2mgt\nwZ/q\r\n=fSDw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8602a842238d140e27ceed0a63d6187aa8de979e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T08:34:11.581Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.0-add-helper-create-functions-8602a842238d140e27ceed0a63d6187aa8de979e_1631608594841_0.06456742261525261","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.0":{"name":"@balena/jellyfish-test-harness","version":"7.2.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01b29edd7f17c4778a4e1bff961aa5a777601778","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.0.tgz","fileCount":27,"integrity":"sha512-JWq43LusxNkIumagEMj/1KKMTqu3aTxsH68eTT7G9U2YU73VPiFHAQesrq+7go2oxbqBOfqAdsObgMayG0WgBw==","signatures":[{"sig":"MEUCIQDHUv4vjafS5iEbyXjBBPSbp/h3Yg5k4gkhxk2rir1DugIgMO9B9MXT0wSngmm/vcJh8edfYcHEB8Uw4g1PJYNqw8Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171503,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQGHeCRA9TVsSAnZWagAAzccP+wQzYLVUeYlenbIE+8us\nVVd2xUNUG4NrLGgiguIjBlWVLmbcWPqlI1QSWDgNAfZtF27oXEvGFC0Eros/\nSXTpdugh+YQUwHHBE2DIpO6PyhKdHsubcRJNcAxldqW1WLSDEgX+6la6+wys\n7klza8mw7Rl7pzvx1VIIx08cHQ0KMPAV0EkvEzD7Jxk517ir6u7cpxC0HtzL\nO3cGwXXf2FtaNk4DZFWBENYyO4SjEx8GbqV4TBsRA7AMPqs1DI7mo+L2w/4S\ngQDf9qDasoWmJBLdUj+W1A5VA4bgjbU0RqAMQ8nNXVipcVPVsxsUk4CeH5lF\nFAz7V80Hcu1YQ+LUXNfKQngUwv6wzLve1GkUFBUTTw1iCLP6O7crbomuc7P0\nEKDliTo0H89ZC9cY8hdthh1HEuz7JE4oJlYRQEYBdyf8+94Fz83R9Kq6ksKq\nBMdZM2W4x78HbisKA0827Z9FqJTocvCmqRvF36nirnGgyb0RS9Ff+gtcNzVg\nDBTNu2/qLwbzXyJK1KpIi9R8BaQQ0ZVCpzyuoUQYl2pHYhW1jXKTJ8FSGQxr\nXkSCJoPg14CCH7jBCPZ851ehdsOYoUSD9S0Qk+a+ZdbB7lIAdKqHVS9vNB3N\n+9PCD3yfLJlh5Z6dmcWI6uk8HrfV16dQKH0lFdU6HPFEK2aN2tPSHi5b7tWQ\nocHG\r\n=12rl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"24476636876dbbc292c33e4b6ae1869f2c1aabdc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T08:46:09.594Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.0_1631609309990_0.3511137837266387","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.1-renovate-balena-jellyfish-core-6-x-a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9":{"name":"@balena/jellyfish-test-harness","version":"7.2.1-renovate-balena-jellyfish-core-6-x-a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.1-renovate-balena-jellyfish-core-6-x-a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25af1312a3dc88d7df5445c31369492ec42cc1bb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.1-renovate-balena-jellyfish-core-6-x-a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9.tgz","fileCount":27,"integrity":"sha512-4wwUwf4kZxl1TtOKkJpNalv8MWJo+8YkbZwCIxlF9ZMDZWaKP+wT2ICIDMlOhQTLx5gAGqAiXng8P34qyzDCOg==","signatures":[{"sig":"MEUCIDXlH1/aUvIyK2ok5PzdF0pfBd07JDNkz11DG/bTOwlPAiEAk9z8H/JsTsI3/95AqV2CcPjSoA+Y3SbvJXGoWiJfunM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171681,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQGOGCRA9TVsSAnZWagAAsnMP/2lWqssYKEuRZgshJVE8\n97bm4X0kwl3mrRW1rbP8FRVllwB+pknEb21ODatbXgpBcdbjpYZCG5qiiISY\nvOCduz1ViPTQD0P9xlKACE69uJkb9eWIjCO907ouzaIQMspQkqNKOEBlWXQQ\njS/aa82Z25CVsy740zBZF+H4YPcGQkJmkZQkeuzGSmjjlb2Eil6ex6HgaEa0\n2BS05Uvf6zagn7qWr9BciQGFp/ItT/O7iWexoq675oyjx+MRQq3Ec3SMPc/E\nCIxPXo5hH6n9PuFEg0XE4+VhLFv/ATeXMkblVXNXR0XTcYioBl+NyDG1YE4r\nPT4/tcLUm4xd1KKuFRsh1suwE+tUEyfan5hXfHv4VSM3/mQH//aL6i0djaZB\nfmJUusvC+fC3QLX/fH6H3KTXDXsUngmQRATab7+NEnj/Y8UyC5rILR7PXJCk\nARDJipPyJXHMtxD3p6tZGIxzl3AakQCp5+cdF+mFeJdkuhJkHcSapPiuJ0TH\nr0ZLKlhDRHdsqyo3UsSSlvy53e8fNkSAQT9phr8ZoYKrBj+jUt8EXdIbvdgI\nRac0WJDZE1QmmePLtaoNKz4t28MlTmnwJjsQYw0MnKAOJKcbI858TAUXN0Wb\nxPX2RHvqM67LYo2ceeZqZViiEBVtGgVr54ijWim7Hy0e7roEmKPLEwL04jHU\nNnX/\r\n=3HPV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T08:51:37.512Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.1-renovate-balena-jellyfish-core-6-x-a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9_1631609734382_0.6220404209608617","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.1":{"name":"@balena/jellyfish-test-harness","version":"7.2.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f41ae453d4e8d402f9ad4697400dafa8e3e7aaf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.1.tgz","fileCount":27,"integrity":"sha512-IiwN00I+9Awl7Xs6+Tyu4GxGXdKj6H+SuCzkUY3JNsUqpHeZyuAhhT2x+11pY7/alqksEP9S38VTVvevPw33ug==","signatures":[{"sig":"MEYCIQCmvWQTppcTCzsk+OjWUD1m1AgVfGeUYft11IO2E8i1MAIhANtercNe/Rji+Q6sCly/2vUM3wtwUF2FDfmfd+ybH2eh","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171605,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQGRqCRA9TVsSAnZWagAANK4P/36RU84Z++UM59CzaGIH\nHnZcZ2MSsPL7P5b6NjbdbN83qztM88Rlef0hwbjXsiTBDUobX4d7vy+zXcHn\nhW8uDeJ06FqfMBjM1mPu6rcncJywEeVogbm7wa2kgFNUcyayRUCGSLLNxZPy\n3JLhOwpP2wn7NXNheLtweM2+hq/FdZVGUogW9O3teXxzt+9kzsxUj/e5Ba8m\nI7GOwgbX1YCmzpXGPCyGk1PSWQ4uSDlbjxQ3a3AdTio170mz3OrW7J0UPnHm\n7bh98yEcCsUmIjEyEtZLuN33JKjqUMkRJAfrN6twhXxxcpZgPzBhjnD1MPme\nypEkMLvhGITHoXLVsOBwmIqb+DHlSt7DAhhtSqXUPkLGeiTXky/qMM9cWbB1\nU9y0QURn+txr3K96VdWsIo/X+75LmzMe0/dp2NW/6Lwnef7IbGlVWsi1IGnR\nEawOqnGllBfyf4pMQd2fB3/t44dsmdvqRVOjj1SiyH+U5T8PhUudHKFsaPIJ\nG8ksVBZrKPh5dy3zX6UESCSzNjr5PmnbEk8EqLYLrqGNr6OBf32ez9+2h+og\nkW8+t5UwPjqu4oqISnWKEXDhKHmO4i5oBI4L2i5fFNRBYxN9WrLRGQwYnuJY\n/pfrj7Wh2XAWXSLtv7whgt41chAPgWLiHaJoM89KptwoiGeZIXKmfwkHnnb+\nDF6p\r\n=eeWE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"114630d4aa728967b0534bbc9248e82c073e08d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T08:57:21.481Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.1_1631609962181_0.3471307322716033","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.2-renovate-internal-patch-b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6":{"name":"@balena/jellyfish-test-harness","version":"7.2.2-renovate-internal-patch-b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.2-renovate-internal-patch-b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d2045448a768d7f5d0032328443701a14593a341","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.2-renovate-internal-patch-b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6.tgz","fileCount":27,"integrity":"sha512-m2STPuja2+zd1cpHCceaGYtWTz17Rj8Ls7PSYNebk5jyPtoi4If4TypQ4mmVonqWn1c0fIDNaeaaCbX/aOJ8bg==","signatures":[{"sig":"MEQCIEVu9Sh8hK/qCulHwmU85YU7DFFP+gL7ucHpsOnBK5heAiB5s/ED7mt/qnVp1VmrsDeeFs723yP1lEeRFMgw8eexOg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171775,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQGVuCRA9TVsSAnZWagAAqvQP/04OY+99ru6CthXoRc86\nWeeLAQ1XbSiuN+NanAz0Sn5sTcJteeusxC2kptoNxUR4WwFu6YSlnYDG15WT\nNLn4Q/IiwQbRq5MKQ56mXx8dVbylTLyX7aWzDf9yyiaKgbzzRBta5o9oQSiW\nLDI2RvHZyUCW5riw47MWr/LYAvO3cp86ifoIuDmkiTZfCIGFIV/2muoM30XE\nDwwfDaDEhWuLRkQn7Nr2ZRxuueboBPrAodqeZjS+DFZ+Ted8qHyz9HlO5NFJ\nyVUpd6WpXuPz3u8aDY/XEFMh8krciDckRWYPaJmKqFmZeYqhQN/Hox03zunT\nOWegY3ZmcT98hD/ghpwr1YQaNh6w7W1Gm1G6XWc11Gk67enSulwSdgAO2djw\nHyuITRN4LzTfvpTTXDA8y2P8c75fi+Gto5qy1j8HV8GkepCk4PV4zpYkQFH6\n6IVVRr3JfhHVrc4WlFv7voQ/3NG1/feqY3TxciPCFsVdoEjHyFCzN23rnnl5\ng3faKXPKaRQVoLvw3F9ZI5IZrWvmLgWZnipmeQ5h46xxlHmUF9aOdBdscRKg\nHBzXRu9gFxZsW519kXsKwphlCFhdTBPWbGph1xZRVh7VLVkilmZT9aSyYLME\nNavpAYqtWbwVLCTC83Gh3toUOJtyVXrrv62k7F1WuFZBrqaNlhnlRiAPKV7x\nFGlY\r\n=ECoo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T08:59:33.434Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.6","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.2-renovate-internal-patch-b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6_1631610221957_0.8247546015999669","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.2-renovate-external-non-major-1b1c9525fd82d573c57b1fefa888c35c99b15e59":{"name":"@balena/jellyfish-test-harness","version":"7.2.2-renovate-external-non-major-1b1c9525fd82d573c57b1fefa888c35c99b15e59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.2-renovate-external-non-major-1b1c9525fd82d573c57b1fefa888c35c99b15e59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"111548492e05f7a935f3a272c8457523356f0b7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.2-renovate-external-non-major-1b1c9525fd82d573c57b1fefa888c35c99b15e59.tgz","fileCount":27,"integrity":"sha512-UkDyyc3gugCdLfpdg0AM2OMHcI7NuvVG4CQ26CED65ghr7+0UkGMme0eY7WdlNP1LS1t14MgQzcHG3wTU/sw5w==","signatures":[{"sig":"MEUCIFqrlZ6tueQmmdJxbvXaklVCC291VLF3JRNMCu26IlurAiEA3Qb+aWy5px1TNYGm21N72BhMLIAE74B2FGL0TZPy2OU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171751,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQGZCCRA9TVsSAnZWagAAkGMP/0AoILtr0Ww+T/6AOtwm\nw15JoChbXULgBlTJWtaUDWR2r8OltHisQbrf3g8uXLT8antEOPlbd1hqv9LK\n44sSCv87Hd6+SroFCe16W/LEEPNEO65J2zjtJBjeBh6ego7eJLqAFFTKyyMg\nWWV/BmbpjtPDtcdMMveLDhjzJwBbITztogyzImLesyYEPN2k7Qgqh7k3U6mD\nR63XuPDZc089TTy+UOO+zPOf2lN1EwFirVBQgy/pw0q+ljCgNbDkPCgXt+MO\nGCtyJDxiBoB688MtDZnX1cTxzb4uWnxjFY7qMI4b1Tn73DA3262LDJQUh9pP\n6GN94PUhItldJtsHDiZ8HxBkuXxMrKa/rOgfpD3yymyS0n2ICpsG3qBI/G5x\nTApcL+M5CIzhEt3RLJzYHcJmtWchaZcUgG+Z0ZS8O9QDnSOU0Iygi58xMf+E\n1TGw7f4RzfHpIaoCgk+gKxQX2LTx+YYFM3Ha7h1RKwZ3U7Mb4w7xNdVhywni\n6JTAVZSufJB0DF7GzCpfW7xBecbdoPxNER8nZpZYbyMxZjBypRUQWHpvOsfL\n9/bbfNN91FMFQVwBxsnW7Y5u2PDCycGxU9aRsdPDVKja4fQULM1JrmO3OM+b\nliijMsrSs3i9Tr6UiELh594nigl7P2zPdwOvuIvSQRhIXslRLSPFt6tb9FF+\nVieZ\r\n=Vp5j\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b1c9525fd82d573c57b1fefa888c35c99b15e59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T09:03:26.184Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.5","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.2-renovate-external-non-major-1b1c9525fd82d573c57b1fefa888c35c99b15e59_1631610434579_0.6866788161025115","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.2-renovate-internal-patch-f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc":{"name":"@balena/jellyfish-test-harness","version":"7.2.2-renovate-internal-patch-f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.2-renovate-internal-patch-f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e3010e90c2e9398d9df5b1b6f3efb9b240c18f5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.2-renovate-internal-patch-f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc.tgz","fileCount":27,"integrity":"sha512-A0TAF7DDhFhXydU7AEhRIZf0uDGdlETh8E0Imw6BzE6s8BPix5kNX+X+slWuNiCuCcVsLw4BTcTyjKL7+aRuzw==","signatures":[{"sig":"MEUCIQC/ikoip3BHQBTcPbAcqhRv+tnNSUCbTDvGVr0GsuMHFAIgejYcmWUHxH3P19pExnXhH7XcObwPWRQHIxA0DTUVSwo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171775,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQHQFCRA9TVsSAnZWagAAzAUP/1zevQvL0Jm54onQKz65\n++teCLSEPcstSUiXWdfZmioW3GkP/byflmuud/TjBL8DgFmk8spM+LDK6bVV\nM2ehFbhi55vokhoMOiq4l+eD2jAXQxlooFuBpopLZ4Ld4Q6aD24PRrfsKcIw\nnGXlFqynltMkEsqzacn7NJfB+BBhv/y+QRYMwNpxFpA1WRXJv4GxZhTNKqmw\nzYBlvIlQMp/yS3CizYW7AdE8MW0U31fNCjeiCpEOwRoF7/sVgLYzLlZTQ2Xv\np5QwZ6Knb7zgQawbgfeJu7F0eQ6p2THgmLjeg0o2nIgJncxeWYAzgpG37jtg\nvWb7DpBoaPQojPJulkqjmVc7hXTOiTZqPIw55atneia5vHJquqLN/m4LMZt3\nHqmvVNXc/tcIVtJqBLUvwIcwwNvBg9yVrZ11p/vtkDpt5KKj6OVmrHK+pFHW\ngPvG72o+Azhi5z3V7odxHnf9QMu5RSVhajQiMv57XoQCrWa5NX+bkWDwYPea\nq2ne0O70yc0FE6D29DrU88XhVbvoghP7Sa/ktf0ZcKaHMBaaAfjUcSMgDZil\nnE4ecMQYOyoTDMMEc+pQgijKf9LEIxk5nozKSQBoHFGfMhv0qjACV714uWEs\ncRT0fZ/uRdabsi66EQHVTw5gOWaH5rAhae3kYv1fd2w/DXfqQHRu8KGUrvce\nFOfR\r\n=9yKg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T10:03:01.513Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.2-renovate-internal-patch-f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc_1631613957209_0.19491917054680052","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.2":{"name":"@balena/jellyfish-test-harness","version":"7.2.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79f21a4bc9841bfc83819e5c747ae4793f30e681","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.2.tgz","fileCount":27,"integrity":"sha512-TbW1t2ZSjTo4zoroolkrgTaSFlFt9HcFoWM1hJLsns6d2JXtrkWBSONp5cdOZGkSKzYAjtf4jpGjRbxNFikooQ==","signatures":[{"sig":"MEUCIEXbmw5DQ7VcVYUdDbFYV3slmrsjUWBauxnD5w5D2cJ3AiEA981M98CugvilQA0sN6pmtfLQCdPZYGANQWm/iB3YZGo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQHTmCRA9TVsSAnZWagAAgqYP/1ZzsjsA7TB8Lvu2JZoR\n9VNpa2fCdS5IrRkYUZU8JgIUaT+0ht0En2c6SaYKzQR2tftgPTaPpFWvyCvS\nyX60jVjCJNtY0iK7ORK/DXCCwJxUdhqyfZIW+RGwDJOB2FPjCEGlYsvHs0Xf\ngslz0uoceVt1zUP7xQnnqSJPX8OlOL5CnKDMNL9jf2MSkkVsvIS13gd468MZ\nB2t0azSkGngoJ4ykGX9L3ecmKu8jMyUENbQu9rzrTi010fwFXZTPgKajgP0I\nhbEnMWpMpbpxmLervMGe+wHRPIfLiCQhyjl8xwwO+s+C+SJmSoLMIvQ70A/L\nagL8t2LgSoGbzsCriKtas3UvLfCnWwYibOP1tlWht82O5h8WwcmTC7YB1ANt\nOuyDRifUJBHKcAR39FY80vEN+6tckFO125BydMrvfSWiDhV/xKtrL0+g+MT7\ncnRcuamoNepciefCYRqFd9IkzV1y5fiD7hpTys9PV9TSUGg6IOXnZSq0mP+o\n7jbffRgfPPjCs/DzZssbvQPEqygkmXEuUMLPaEwkbVS4K/5SPSV/j/oSl5hk\nQNGupcfil1nxYvHKvT/egSnrmeIH5DLzbyLjTJoAM2ycQDZwIBylluGit7K3\nfvcbDYZQ2r86bgf+YNTZCdmJZwdf66dXsMrAxAf4T/2Rpswy5WXIW5hYCOYw\njOhB\r\n=z2E/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1391ebdafc98b87fe836f8803913d9d94aae9b50","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T10:07:51.324Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.2_1631614182201_0.4270487099225182","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.3-renovate-external-non-major-8578ecb39b13fdb74d320428910990759f75ab89":{"name":"@balena/jellyfish-test-harness","version":"7.2.3-renovate-external-non-major-8578ecb39b13fdb74d320428910990759f75ab89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.3-renovate-external-non-major-8578ecb39b13fdb74d320428910990759f75ab89","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c92ec05c0451d0fd5487749cadcd4ef26b5012a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.3-renovate-external-non-major-8578ecb39b13fdb74d320428910990759f75ab89.tgz","fileCount":27,"integrity":"sha512-6Xa4k2qaMTfm0kJyvaAbgDxGAA2sky2SmI87BulHjixo/LCrwVntYGP79/vu2Mkez8XV02CC99wm18PSdaECXg==","signatures":[{"sig":"MEQCIEuey6LH0R3BA5cnIqlVIqPoFPLYvTS9/k8V6i6WnzlfAiABsMMhkgoFco9Y2tmijByVs+q1lY5tFsPF9Jt1MSAM1g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171856,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQHWeCRA9TVsSAnZWagAAdD0P/0LHpezAj7YqtZCssnBQ\n9HL3gB5VBiKmtRK6oyluOIipCPL6Itg79mDCzuBUDzzIPEJPBvBoakHS2THz\n+8RRgqixBY203v/PL4yE+ChcmaT58bvwx3TqXNWhmwvsoQR1KZeNXEzczH3E\nbsCta/Kmp6puJonEqKJ8C7H4+9f+mvyzaPblg43KvAdPuHG8FUBSpf8LYCHl\nV2/y/sT3XS9MLTMonWf0CRUYNcPPCuR0ECl9gjqSIqApR7nPeK1a3K2p/WVW\ndav9jFcxRis43DhWmudOKgXod40Egb9DQeVqm1zC/RK0NVfzKecg0ObBGE/Y\neVTefyqysX4jIfi2igtO/lo8IlO4M5qs9hBPYd4tYCsVQV1q56ZjhGSQtHzM\nCc77cLyE6ZuZnXx6GCzg41YjydtB8+1DJP/sslcFs/dGip/LygSyoskv6685\ngw3Pt3ot2LbPp8avYm2/vAtK0D/EXxHtnnRAGO0nESflOO77Pc6pA+t7pxSG\nemeWdVcgESI7OqHlJEuW5FHQABThkGIzw3jH9iMJYapAiZG3rF/TUGMjHt42\nr8wrfLME9bzdefe37q+/9Zm1Dbji6S8ltF8SOtw4WoqsZcXDMVcf5PAqBd/w\nMEHXu/7p+ofJejFBOhhzuhvFe7+4JODoX7IWuwVmOGBGGgYYYRMmnevbEiQs\n4AG/\r\n=RL3b\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8578ecb39b13fdb74d320428910990759f75ab89","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T10:10:22.495Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.1","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.3-renovate-external-non-major-8578ecb39b13fdb74d320428910990759f75ab89_1631614366611_0.011976109746044461","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.3-renovate-internal-patch-6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf":{"name":"@balena/jellyfish-test-harness","version":"7.2.3-renovate-internal-patch-6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.3-renovate-internal-patch-6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"80eced6c5a8155cf88ef63e4743931ee144e70ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.3-renovate-internal-patch-6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf.tgz","fileCount":27,"integrity":"sha512-jvLwPL6B+oDLH59C3fJSMuHdG84dFAOyJIhG8NOzigLA1eTL/AYxH0AgyQuj6usBa89iSMKPtUTwlxtbxZpLgw==","signatures":[{"sig":"MEQCIHNr9Y8F+09nlFcgscXHnObIOX9XmabWZMiBuu+5xUemAiABfQUYGhSpncR4x2HQGwLoxODcttqY01/MxNLo+2RhLQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171877,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQMwpCRA9TVsSAnZWagAAzGEP+wTOJbCtKm2HlY9qHNpV\nkjzb9TluPjcmvQIS8thSC+9j91WQbnB7/eyzAcE6aWFOd0bFgEi4TA+T5Xx5\nrHOqcglYRLbRXnvSnO3XwqwsmdJe8SCLyIg8HHwh1ZX7iKkK5pFYmXgHoN8S\n6N+QLaprF/2dpXEb7dgnvJAv97ZHAu3jby8e73nN5mduBxnTZtxPhhc1ggpN\nWb9bWi5rLKIV91LRH6ZZY3J/V72dFUonzCvhrbRjv0GKLl8UkAiw3GSJ8i/Z\n3ydccqSqfufqx/KcVr6p8Qu0Xu2Uw7RY5fIYomv4qv+yBUqk5vWJS0v3CzMx\nyxCyiprLoIyrmE84JvbyFW0FebGoghLTGYxMPzADo+aQk0mXSK+TEpz9kkmH\n5w4SomReDIZ+TW0+rC+SGpLpZoEmzJPyNpyDDqyhZCVWifTOslvSSmIeeoqf\nX/m38Ou2K1CunXUMZrEo/QCn42tXgH5d0QddG6zlSZK7Te7mrhZmkbFGxlGY\n+MPKlXuepcQ8aH4Js1jrERe6ljWMKa00OI5Y6T2l7t0Xs34Fr/dg+nIuCqkm\n4tOGRKPn22FcgWC5Z439Y7PZPNOW7ZXoQz8Z4s4twJKRf6Eb7Yi95K+vPoVU\nhVIiaKvIloyDoInNhYOrI3lYX1M3CiteAPd6q1qGw7B6s0ckggef2obFkhkN\nLaF4\r\n=65vS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T16:18:51.234Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.3-renovate-internal-patch-6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf_1631636520891_0.9937661381609073","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.3":{"name":"@balena/jellyfish-test-harness","version":"7.2.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f2a016ff5b174abf8a81eba4dd9f30a2f52446f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.3.tgz","fileCount":27,"integrity":"sha512-hjGOtx402d3qEYNF8nz9YrHO5V4tsndYrpF2lOaOCGzrHkcmRjy4aojbKsZK+v1ywS7FrzZSQNl40yNfJ1Uitg==","signatures":[{"sig":"MEQCIEUIzKrlqhHAt2VrSaE9EB8rk7wCRyYBgy+MCfthbHfCAiANxlujUDfBOiU+9wTaPawryfym0pTQwR2kdUrjn7uPxg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQM0/CRA9TVsSAnZWagAA3xQQAIIAwd8OFyM4IG0dIEUl\nlQcD1cD5A7l7AiRiw4NZ5gRr7e0gw8O2P/appGSzN+F8bNF+gSzNuY7ilIOz\ncvKO3Xr5l57vho0LdUEY8T3rMcX55JgG3mxx2+QjYf0K+xLMxCFp4/i0xerm\nS0CNldHNFONa1nSNiyRhatGx1swjZBXgh2ZqVB8xlssMx2JP0LoXd22t5ZZ0\nFRrA8GNJmMXKtV/NDzEarxZElBGS1M9WFQGKrJZax2Odnsg+kIOwhVH7ybCI\nMPLHBj73LNBEI/SYJRK8qY/c58Vhp54sOdn1y5qlsu//nU2Hl16ngCldKMTr\nwYdGiYPPQo0+IkQVbe5WLIE3Ev9pq3FgkBr1QB/DU0WR19JDMYfRSLU82y/c\nZHeCA0k8pBnnj+GsNMUkwWuNoKnROMOgVXcQASoHJ1vSYRpSOS/KBpvqF15v\nceOj//I2hA9EnLYZ7fbGT5jvijVc0kFgGoIdQAVGYUpXl0/J9AXNuDnftKs0\nEFU4Dc3MFxU2Oj5UnrHMstmXZThb+54cGZpIX+eUXIw48zjCS02HUmsQV8qK\ngBhq39m4Kw0TSbfx7nlZkOO6RX2yYadeJ3twf/DzNyEk4Zei1S2lkmw9MTxB\nOEkj6eq7ofHGFWYh6Jr/L+5ztJO0q2vPvUsxLIAf1d3kac5c8yqSqIwGW5c5\nKrqR\r\n=GxmA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"44732d8fbdb2d2bed2c478df858ca3bd58873223","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T16:24:41.971Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.3_1631636799839_0.07086769395938841","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.4-renovate-external-non-major-01dd78e953b8993a915ec47749dc58c72c6daeda":{"name":"@balena/jellyfish-test-harness","version":"7.2.4-renovate-external-non-major-01dd78e953b8993a915ec47749dc58c72c6daeda","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.4-renovate-external-non-major-01dd78e953b8993a915ec47749dc58c72c6daeda","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d7e4ffbdf95404d72eca60d0d050ba01eb5c5d9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.4-renovate-external-non-major-01dd78e953b8993a915ec47749dc58c72c6daeda.tgz","fileCount":27,"integrity":"sha512-nDg796ZYYKZozE4tOexWftHm9uvFvP1p6ZTbp2f5R29N6CDf6Aju72MaBuB7tK95G9vWx2nH0R30ZXzphXkjsA==","signatures":[{"sig":"MEQCIGA8vvmvEfixw7B20VjuhOuwCxHCun+BKxu7nbveqnBxAiB9IZEWSKk/ZKzXDDZKPzEKvErV22nBV1Qsnz0w1uk3fw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171958,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQM3oCRA9TVsSAnZWagAAWyIQAJBo5aSDESCrLtFJIayq\nlqL2ttCNebidk0MA2+frqaQcI3TQTVT2nGYIpqhQ1/yY+/S+zo5BdXlbyLnm\nLchBOMw+APJhaUieZ2vz2PNiqbSuMxUSastrbe+MC5Q+tpgAJ4FEC8sPCqE9\ncNEF2BRFbYfYnYjtfw8RHGIp3tK9xBjwnAF3Z/y89ynHM1bzoRu4pqncyyJd\n5oNVXWsUsBRzGPvQ6gt3THTRY4mGijvktMVi4k/A3QNi9odnyn22qXhFj1Yc\nkF5ZCx7fHbHtWElBn8hVHtJGgf+MtKz6aKMjLGAcKCJbFtxIuEm3p18Hi1Az\nPeH2eUHo32pnBwlwdqR+Dsiyzn5nk4jqNyFasa+R2DJMAhZHTzoQ7hjHquNd\n2Tx+RchBvIKleJQVd4mLBgob6/36dWrC9GDOpGSto5HQLUQ5MT5eodMX3z92\ne7Dws8bUx285+vAx2MFa8jv+Ocfy4GC8pA/Chi3OsqEuec7b1n0axOmD9dwd\nABfrFIngJCHWm9jNfDGAGWz3X75JTjoANG7jXG5OvwaxVwP+IwJLI09kl4Xp\nSGamRxdThDNI3Bgh7XWSrt/e7S8hGQC58pPlBitoPs15QGHwIMEd50T4HdXA\nw9USQgZJLvWa4Rf+bVNAtbBhWHMnv6iXeYTfmZ+BEhuIjOWjkTIfdju13EKX\nX1a6\r\n=wxKE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"01dd78e953b8993a915ec47749dc58c72c6daeda","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T16:26:12.071Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.15","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.4-renovate-external-non-major-01dd78e953b8993a915ec47749dc58c72c6daeda_1631636968444_0.5116366475844145","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.4-renovate-external-non-major-506423f49a1d7ffa34acd69c96bead26a56947c0":{"name":"@balena/jellyfish-test-harness","version":"7.2.4-renovate-external-non-major-506423f49a1d7ffa34acd69c96bead26a56947c0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.4-renovate-external-non-major-506423f49a1d7ffa34acd69c96bead26a56947c0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"76041b50e914ac5a361b526b80cb981a6deac725","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.4-renovate-external-non-major-506423f49a1d7ffa34acd69c96bead26a56947c0.tgz","fileCount":27,"integrity":"sha512-u2wHR0PBPEG8/VVwBUO3wmJQG2tqCA8Zm/i4vhDjH/DXwcWZmy5Isd2c5r21sGRTrWTj7paS5jGDo7zbdD2tpg==","signatures":[{"sig":"MEYCIQCNRvSxx/eU/uR8r3elqzABGayNEAhOBq/XkGj+hdzP7gIhAP4LFJ5xfAgxueEnrO+BrJog8xB2Ruv7SsAqDdXgwGwK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171958,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQRVeCRA9TVsSAnZWagAA8zYQAIU7Hpwdix9Y9S10Ci6V\nDPW4+Vaul8RSCzvbk8qjyPidwQAzxydv6qwtH8XRxOBWI7Wimu42LJtNMIM7\nmJ30p7tYmS4wHtkxVLTyLOKwXGO2l+NBYzXtp4/sRHs3bekB42ylgxjpj1PI\nGdyBFwUKdALXs2qwlZLuZ3QiNsYPGmdVrlXEcecx6SBEt01AeDluCHkpUsjG\nA+sy9+vWMkVbkH3++/uO7c2+XIL+gnb2MhaoEb3n3ULNJmxZxeZUhtDSJwOZ\njna54sN4GXFsD56nmSOny+9tTvPZXmBV41rpIrxFzKwwUc0jMJj0Xuq8fRc5\nZAcUj5t/4a8Lhjc6JLOdYud2F6OxYsAup5LNEotex087qvYAazQPh+k3s8Vp\nIm5oRCYfha8NMQTSOyyaAYLBUj+8nDX0y8eCXJB2p81dGf0DvyWZW4taPBkd\niv0y8hu9fZ71ecow99G9GU71fy6V/vUd+sLEeYe8FGouIgO1PkdWxFFm3j2k\npEDkFTABtP/aZX9jiHeCmWUTbLgkzhkDb/CCvfJVQWppw+/YCMbkuakVevkF\nmGmsVi6b8iaAkEKaFvokGzbSUP9SMK59/u3wZ/PWWy8QULv3O1LamZTMMAgh\nSY+/RSb/mf5sov4cvE5cNxr+PG6up2eEPwnyyH6DzNT21ykqyEFPJcFBDN5n\n/znZ\r\n=RtvZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"506423f49a1d7ffa34acd69c96bead26a56947c0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-14T21:31:01.121Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.4-renovate-external-non-major-506423f49a1d7ffa34acd69c96bead26a56947c0_1631655262032_0.5221172273245374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.4-update-create-support-thread-4b6058b2c13f6280ab901fd495c4417f3567ae51":{"name":"@balena/jellyfish-test-harness","version":"7.2.4-update-create-support-thread-4b6058b2c13f6280ab901fd495c4417f3567ae51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.4-update-create-support-thread-4b6058b2c13f6280ab901fd495c4417f3567ae51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f2505ec08c4d3e500fcaa258dabdfc5f9fa3839","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.4-update-create-support-thread-4b6058b2c13f6280ab901fd495c4417f3567ae51.tgz","fileCount":27,"integrity":"sha512-nvzCk9p0IIo2vrfLU+wNnvgSQFZ+1GyTzmm/SuUHmCdGp8ME67VuNwUQAMvBduKy0dSzf3owmReyeuawlio1FQ==","signatures":[{"sig":"MEQCIGIQ3DE7qDxSBqg2aEkQl+mvLMUNgeGC+Ajurzp/BLtZAiATFfLGCCGLMqzE/o0WLvgsUTcP535zCpKZYeJ/3Zf4pA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171734,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQVP/CRA9TVsSAnZWagAAUpwP+gOWXNOqww6yhahgp5o+\nG168nQUCyT70of2DLY0dBRKXuP0ch4cZBpTlDdgxX1UbrMnLyZoOdR1cpZdQ\nbYaXWfiUOa3gS0RrpJa8NqVy10VbGazy9tHGfTETNEs53enj38AJ24DVU5Ch\nlUnPA5gCAZPuuCnpVqKC4y+p7xy8BBXd9ABinRwRKKSVrosVdk4WSH7f7GtT\nCwkXmFxI4z6yl+hAjKrowpkyS472mVw2ZJrYPitG2ycVMljoAroldNb/m+zY\n7xcP0RcZYbMPnjv3eokHBjLPd+q8eeE8nts+r4NZwbsabbpVskciL0QSUOT8\nVfOmJTp0ASqoxD2Qj4X0TrceJ6EZVi4MfktOeNQL1RME92vnL9BXdHw1nsEH\nsGHtYfydsbCeb1bHm3uLZbQ2vVE+Ovgql6HVbwwJV2nT+hHWT9lGqF6Co2/L\nB29Zj9MfvLlwVol151e5E6s7Fn8hocj7iSFz3pF0UjG6+DTatXa2MCMfOpJW\nBwucKYNVgpYV/UJqy2gAxttpgjNdjY7VFrndSs5k1Qv4A80QsTG5Qd9cvROo\ntJFrSg7CSt7dfiv+AGEBWUykyaN5qn3OWffC9uIUo8TwNNjZvjR+PdK0PuRf\nzRuSxGv6VYs9PZd8dU4pyIAGR5DhT9RFnpqvsbDuVPchN1BEb/9stme44lKb\nkExC\r\n=cKlF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4b6058b2c13f6280ab901fd495c4417f3567ae51","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T01:57:59.874Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.4-update-create-support-thread-4b6058b2c13f6280ab901fd495c4417f3567ae51_1631671295435_0.6932204025690085","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.4":{"name":"@balena/jellyfish-test-harness","version":"7.2.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a6ee2e23e97fe7b11d49f724d8ac885e953c9e93","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.4.tgz","fileCount":27,"integrity":"sha512-ljN5ianWs1/d0o4Qc0D55OBcbrifxcf6vOx/HzqoN4Da8VYEIWjPta4AaWa9uIVDvh1e9hRHnPGLd3JXfpG3yw==","signatures":[{"sig":"MEUCIDcFH3TKABdKCpi5LIbQ0DyGJb6Vwcs6zAcRznhBDn43AiEAzqGSbCdKjlrEOuJQhSPirsgDelllTsJnv/Rv5wER37U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171664,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQW5FCRA9TVsSAnZWagAAGUUP/jrshqrwaH5kJhc4olNR\nA0lqycvo/aV6DF4tl9veTBhhJb/zyNyFLPRCAXpISSW6pLkm0YyBglCvXeFI\nEEbU+6/l04qg1khHo4HNQaxjpnvl2hnnq+LlBnf0Rnid9VvKVv0SWX1WxJhx\nLEOV9aqRLJpb7pvU6q3ZTAqYOZWiEMWuZ+TCnTp7aACVT2jBM4bow25nDVjZ\naEmMXJ/QdbhnztMdsVp5o3F+v4Q4aaW23y9zzsg29OutXz+7+KkodTXI6Pvn\n80MeG2QwqHZSjNRNs4v6kh2Be+oNAhTqM7Eg13IvKh/3Z6ekHUJePVLrTkw4\n8DGWjr6XxxlrbW+bCZu/Hho1KlA1uy6+WILUlRfhDj+5x3vrGfRDj4WXqnLA\ngKJyc7P6G7tnEQfcbbhLtSQO65jPKWhKh6vP8Qp9O+wiXVIhWM02EqGF3FdA\nRHZWpSDSKxHUsA4R+LfXlGzVQ02ljkE0OMg4kHJU+uRKWvFHRB28eXiRSgEr\n/Y2PGbBeDCO0JexymO/wHR8hsqqVPRoj0ibVXKaeAA8d8ZzhBWstNxQhId6Y\ngQDqMMTO4w6DN23D73c1DV17fQ62a9WpNe4yZwmtzz6HJPnT7BKNpjYfVFuu\nnTskkWgbE53Z0DJ7EFgr/m0Z/EgFID90yLHj/wZYnSZCsW+CNf36fA7LNAf0\n5HuS\r\n=iPlF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6efab5b8746b4d54be9a95dc3f229dd0610c3058","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T03:51:51.247Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.4_1631678021403_0.1877537649368204","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.2.5-add-more-create-helpers-f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee":{"name":"@balena/jellyfish-test-harness","version":"7.2.5-add-more-create-helpers-f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.2.5-add-more-create-helpers-f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"75f74a01dd95d95a210c380d69f60759bb972ca6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.2.5-add-more-create-helpers-f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee.tgz","fileCount":27,"integrity":"sha512-aFR7K3BxhEE6uvpzy7gg2Ii+Crdi5gWyFq1c2ZixxTMPmBtQPPvS68RrwTEprEUOurCxU/ewswAmk8VY8pfUpg==","signatures":[{"sig":"MEUCIQC/+chL37esybNw13HJYqg20ZQzRJbi/TUlvkJU/x2FMwIgLIeZ69NPyVIdjFdwwr5KW8spdJgBoYx8TIId3kcK8YU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173283,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQaiJCRA9TVsSAnZWagAA6RAP/i/RwaI8YEpJzDQDXDMk\nCQdHqI/D7iaJTgl0m9QepvP5GYbMr0ewmYw+A0HpaAcJi/IAN1BTCgx7H6N4\nPV8cRv/wNH1aICIv+A0H6IncY8T9artHH6qg5HThSIQhFYd1ue1XOczvpk8O\noj/lmBPKvzzBarA2tL6qEVM6SydfdkHCpYJ4RE0x57EcqxUPXMYaOYV0hFYt\nK9SiNqAOZK6gJLVvDkNLpZ5n0X5Arh3beB9qUsG+n5qBX9UVAbAlAAqgbO8s\nMdAhPVs/weZnsfE8s+R5oDJMVlAFh5dK4gic/W3rTxbUTcvHKPl9nNQvg7BN\ndoVVNN8PZbeR0Uw4NP0QXQFLL8RtUThMnkBA0d1Aefguhgp0higKD46EobtR\nz3WiTFLvFQk3V4JsLrI/TE0xWmX24Zl/BQJe8s2CWrHmE90E60uvw+2kk9wQ\nsNWRZEyvVQAiy+Khik8q+IecWcT1nkKxbZdKAN7BNDw4oQezrPRebwueBqfv\ncgb6UoRuCiVF50WLc6yMiQDRmeiZ9w9dHQN1EXdlFKmQjvqEjcRFN47yrmhV\nclUDYy394g0TaDetwfa7KMjY0yxhltdLo79IO9sZM8Fqh+KHElS4M/9flsOJ\nnq76xRIDFOlxS2XQeP9otnyxo/4sjFQEJ6LivzXWJWkRDYmptfEaSAofNDbC\nJOc3\r\n=1pYY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T07:58:51.300Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.2.5-add-more-create-helpers-f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee_1631692937000_0.316018859310049","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.0-add-more-create-helpers-109c965439378c519d0f0b7940631a8d3accd927":{"name":"@balena/jellyfish-test-harness","version":"7.3.0-add-more-create-helpers-109c965439378c519d0f0b7940631a8d3accd927","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.0-add-more-create-helpers-109c965439378c519d0f0b7940631a8d3accd927","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c81b7259588a49fa5926f3270515b9cbb00d2b68","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.0-add-more-create-helpers-109c965439378c519d0f0b7940631a8d3accd927.tgz","fileCount":27,"integrity":"sha512-uFGHmKqIuwTMiHAYP+RZW+jKkER6UOTbW3e78940o15jaKrHX6QstL7hQpqOboOuycY4c0N3zjujO/h8C1wqlA==","signatures":[{"sig":"MEYCIQDN13l1n7Qu9kEIlIQjt/KzNC3JlyRBnhZ1jQhBWwf1oQIhAKwMi+JtvSICfs5ZY3sSi5d3TVK/jJ+QgaZqtAVXKgc6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171114,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQaneCRA9TVsSAnZWagAAYy4P/3SxDrnvLFR7hByRIjWW\n/vwfj7qZhoa0YeAi36zsqNF34AABVZhqhBqmslqnczBI+tPwjLIgRoVsZ8bJ\nPkBrWAOwvRXPoTHCoHE4HsH0ww2n/9hO6c2oPAKIrLW0ilwzNK+C0fAN/KCx\nKpTWDs90SR/JrRXF5i4wt5MFOadaI1ueYYV33YMcg33l8EFoAMq5vqUZ1M+u\nj/F9Y2DA+KYO9cWwcDhbSqa6uGis/CM7zJ37CQDCfaxEM+t1df0W49WYnVuF\nLovNBtyQhHF6PJSwqjOUWtLVW9+rDrugouojpzJdLCXxZa5D4lsByc8fq5D9\nTcgmkRCrzcpGguoeTLboDBDQ13Ug6z5Imi8doCStfnAc5uVHIMJfXf7Q0i07\n/0jZfkEdpqW2ZmkbcA9uZqs97AHAHmqj5QjrAbDGtOF+BJs9dD1sTKEFjHJM\nLGQbvo0AkiyjD3NolZwXz9BXd3RXzhAMfz+QeWP/A0xZrc/mvFl/162buLnR\nmn3SYC1qbRhsBVVNSSlSE9COa4enVxVsnqWVwngg53yXIR4aeJz6RGM6rPVh\nptzpWy6+/HNDkuU7OkGxZqZuOk3XvmANqp0B52h+7AQNMaq4f52mLIjKFT4v\nJ9w7BPYeMJ+R3YeSSTBDlRa5YNbN1qFhOy4ggz4Knkq+1xWMNWPKfrTt/rDW\ntmdn\r\n=kZ9P\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"109c965439378c519d0f0b7940631a8d3accd927","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T08:04:31.724Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.0-add-more-create-helpers-109c965439378c519d0f0b7940631a8d3accd927_1631693278093_0.9648533977560922","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.0":{"name":"@balena/jellyfish-test-harness","version":"7.3.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"23889a3fd76e94c3ad82a5601f5179cc614ace62","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.0.tgz","fileCount":27,"integrity":"sha512-SEV0T+FZr+nUDj05TsNzscwJJTziDwahLue9NqYq9vAYVq/6B/7ms/4Vs0xQhnqTAq2iPnAXSjyak5KUBrPGxA==","signatures":[{"sig":"MEUCIQDbHFo6a7Pm//3RH4PKp+7TU2n95jGI6F5fF4Gu8oRoiQIgYOEPAIpmJoGpdkHsZidtbiuis0SZVO6tK5WgO0z6u0M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171049,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQa9MCRA9TVsSAnZWagAAZ8wP/253M4xt7om441TDslL6\nkVkpN4XuJK6Lc27VKasRGdTWxDcCWU+aS1cYxuTzPGBeZI5gY3DryS/3KAQy\nEa445zVC9B6vptbuv9s0nsH/yd/9mNF3a/ebqc2GTAIB4/PE6r9zqqzeftX+\n/10wE9bym6b0m8Ry3V2hq8CK/wwKFPVNTU/J2WA7WN5WoBlaBaZkPkilddI6\nvesw3KTIKKbCpNNnBpT9ZzWA2gxrgCx6fdYAKKet/7jYSSoGjedpjjqUGqWZ\nSpaLt5wm2wj7tsveM9JdwAaaM+W5EeKTkc6yOW7pTYVhcwFPP+SSgkakMF0m\n/IJ5kSiC9drqXBvtZDRXglCl9m4209XsLlUDhWRdZE8nY82lwAmUMW5GXLiu\nKN45lwhRwKyjKxXY7kz3OYpc75UQZLrShCqju5ZdOv2UtPSiejRuS6nbmM5D\nS8AGYtwDUnxqxGm55m+j5rL44SV0AwFdswP49bNo+aeOWi9w214qFpqwc4v2\n6oJxBoBanNljvbuM8JkfzTKIDcs78YA+3661x1Zb3K8GV1gSK/+EvJjB92W6\n8n80XpHCf0crg8ZnU7CpoRHZxzH6nHxuCFTDmgIJXWizAem6Kx9y7/ygJLgO\njEIkio8YgxmHOkawp2sPocPCrE40fhkYi4fo/DltEFNvjO5xd36rNCjRZYvR\nWodk\r\n=+vRH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fea8a14b9c4f8f364fc19cf6399f2891de29621c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T08:28:42.259Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.0_1631694668838_0.9437461265215921","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.1-renovate-internal-patch-ac3ac2eb0045097839946efeab9abad2ae3ea953":{"name":"@balena/jellyfish-test-harness","version":"7.3.1-renovate-internal-patch-ac3ac2eb0045097839946efeab9abad2ae3ea953","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.1-renovate-internal-patch-ac3ac2eb0045097839946efeab9abad2ae3ea953","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6cac1e3afb475cb780129bd25f2e48504ade5d71","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.1-renovate-internal-patch-ac3ac2eb0045097839946efeab9abad2ae3ea953.tgz","fileCount":27,"integrity":"sha512-NZgzUTyC25e5NvUJ5zDROqjOKj6wIU80+JYJ2PDFcq3qYuHLzkeOVgZXem+QqoYHtwYUWJfP901fYy4idlxvfA==","signatures":[{"sig":"MEQCIG1YmC61ecycecPbtUPeZrn+AP/VWAX2uJcGButFCFlgAiBwFkgUc/W7m0esHS/Y7IOwk5WyQVAy4Xf0xLmRiw3Qbg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171187,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQbDhCRA9TVsSAnZWagAAWrYP+gMBzW+u/lN0zyoobnC3\nJBzx0BN0FKjKFLl3QeSp95jPp2zjKZla5cddXSKJozjduyFg2lpSoTyKjSNG\nug+cibR4ZlopI0wyaGGW7pSO8bZ94OQ+Nvzldc4GpHCEIPVqbeWP7wJVrFFb\n9+ZTW7hqLfNQchHT3/YmDObiWIAC7GNcCb2CUbxcG1BXWIa8M8GITE/vOiqj\nQdN3jI6x/SwZRczUsx73N5e/cD+CACKIbkoKKkHKVNn8opsD0kNepTLAmoF7\nWkgzOffM6cS+CoOKccivhvX7Voxq3qmv5rnnry0SGuqNCVmwf9HN2Ccgs27m\nxAeBpMquOzmOqXty/oTHAeU/0Pv+yS7X6cUMXN/ZMa2eCgEnmEswApmlg9Tc\nPleI2wr3MLEu3hfbMHuH9s62QJofIF69efjedpSw/Ub2onbJW8hqzcoDgVca\nRBi7CYh2jYbe5dgGDcczcFEi3VksCeGNOZxeE+uNZpCFZMq1DnzY2sn+O8uR\nf4vytLOGv4s6M/dt2IdLAPc3I1OrcG/DuNcGwNf16tKugVW7QEvblwBkU7qJ\nnM2lAAUyzBi/N3+Jgqknj/+/AvXHw2AQhzkXucFRbY/WziVeIM5BoT8rLvwQ\nGvboyORkFiolIN5xbFBCPzMlwoSLv/jIT3V/3NWM9wUtziDFlqUsNdZ74oLn\nHsze\r\n=rwhz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ac3ac2eb0045097839946efeab9abad2ae3ea953","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T08:34:02.429Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.3","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.1-renovate-internal-patch-ac3ac2eb0045097839946efeab9abad2ae3ea953_1631695073370_0.007009508224412375","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.1-renovate-external-non-major-75358dc475d3b92d370c26f6259910a347a97fe9":{"name":"@balena/jellyfish-test-harness","version":"7.3.1-renovate-external-non-major-75358dc475d3b92d370c26f6259910a347a97fe9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.1-renovate-external-non-major-75358dc475d3b92d370c26f6259910a347a97fe9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"37b6d30423060a06079d656030657620306922a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.1-renovate-external-non-major-75358dc475d3b92d370c26f6259910a347a97fe9.tgz","fileCount":27,"integrity":"sha512-OdRaKIWYT2BwWLy8s50gbMWFtfM7Z84LEZ4/2CFk3yYH+vnIdoRhjE4y30iUN4IDElk6etQurSNhPRAWO/D3lg==","signatures":[{"sig":"MEUCIETQkjSlsOCINV3uGo7X89P64M3AhvJFK9JglXKQ6JOtAiEAky+XavbUUEDNT9+BAutKspsougT0C1v059lYePKtKLc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171195,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQbEJCRA9TVsSAnZWagAAtDkP/iIrDUfTxlry0sOa2ACV\noRkShwlBIGCPRXimE9vZ494ODNuRykR4cSU7tEl4B5aHVn/oisjBRLd/zF5U\nAX7GMY+3lqavFh8ATO5koy06qh/AwJ4yD/F9XlPCG56LPa80ZGYGMJIrEwz6\nF/PRy/aIzwVno+rirN9zPiE4zjjIJ/P6VMu96mzfntlHRXiHBvY7KxbFckHd\noCerk7jSE2PBf0c2uUSSn/tnTwLcp2g3LL+ZKglNMD7TBmM1fHtyCGdJQ9q/\nO3fTTxpbNh9LnhQa/ne10AMZp9hKCYBsrWH32QTs92W2LqoaHlSmP9f47u9J\nnQ9Qw2I+8GVxFr11aXukp5QKSae76TDQwq8zPvpvBbGdFr9BgxmdYyac6yKq\nqswUkb7QsCCKdNTiM5pWckwPR6zZHvWKiGDbCmVEkDUxlDT+F8q/yNbR5kxf\ngSL9zm20F8HSjhygh4I75zxFwPMXyGyhZaOocAHz6/CMLyvSqyeJlPUhpXTn\ntG/I3H47kYnTst53v4XkKs14wjQcmBvQqdVQhYs7ruRbija9gGJOpfHfn3JT\niH5qRqKWbY9qiFiuk+PZTqVINo4cujo5I3tQ4mt5qyIpSotpLlvqjpxH1d05\nwBoONOqbDBQswojoAKe31K09NkTDzs4uRkvZK2d5HqqbVKW2/CmNqY6axqc3\na3m0\r\n=tPs4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"75358dc475d3b92d370c26f6259910a347a97fe9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T08:33:31.843Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.2","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.7","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.1-renovate-external-non-major-75358dc475d3b92d370c26f6259910a347a97fe9_1631695113184_0.3907976601753105","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.1":{"name":"@balena/jellyfish-test-harness","version":"7.3.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2b5b19f143c5fbf226be01092808b7e4769fd5c2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.1.tgz","fileCount":27,"integrity":"sha512-jNkOeGxSii1gVFiGKc7/0eH+VEWGuBVVhcywyzf49mlhbxvBfLr2k5zVdE8HfnKcKWj6l0bDrFJAHEy92F2WgQ==","signatures":[{"sig":"MEYCIQCBMQFvfEJCTaPUQlDKKG5rh5xxaAb/H2xGWohCLgT9fgIhAJ47/HASvzAmdnzo6XAzFXilqmC+vQgB22T0+ndRDJqP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171122,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQbGlCRA9TVsSAnZWagAAhnIP/2ce+3vrENnx040sZqim\nNeTcc+LVlh1efpfeZG4p+jGUMkYuxQI5Z5vaHTIoLUNc5ECXMNp+Bq597HQR\nJ6dykvxeeaYVom3nSq7e1xXIOrvwIC8WPLUtyeknWjB3qFHd/qEneX0Opkum\n0ekRgoRtyz/da10dzqXsnPGUq2seVVNUhKVXyAVL6+tvXKTWucT0hgh8lYnR\nBq0es73HWVcq1t+mr/kJaicUOcQ/k74MKtO+503thXjqLf3mPI6E0eOa2BpX\na6EjmsrIIPTJqcumv+YLL6buLlYo+hXksEUA31p3sUmqKuiiVxqv6xFHYh/q\nLHnoSA/2kT1bqesGeimT8Tdb9/76fuW+dV03zeMDxrBkUnHJkyG6HAUbVfLK\n4sECa9ocQ6xpHyL0Pa1RVnfkie+idBfvxZwthSplFORgZWqf7tFpHKEhjBpc\nEi17VFJFvtp62dfNh55pVa3jjFbjH+Sb4gkG/fipzp7UMRX7Qk6M/XMWuBZN\nYaVbZOx+PLpmDD+vvSCPyCiDpn8l08LqHVqdIuwTifm4INSUMq/dkjC2SZRW\nKiyX6Fm602BYnJpI2hWBxcf4CGK+UuLkCPjQ5qsaS4SqI7BLQIls4eIAi9Sw\nsTvXMcE0YFzh17f2X6impCi0mVwC2oU2fXXo6RPS7jVn5BW8f1kDMGpDXNEA\n/HUj\r\n=/ZRL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"07fa1afe941030fbad7806270b9632b861445f41","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T08:39:21.426Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.3","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.1_1631695268952_0.27376973729902176","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.2-renovate-external-non-major-7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c":{"name":"@balena/jellyfish-test-harness","version":"7.3.2-renovate-external-non-major-7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.2-renovate-external-non-major-7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"02452b3ba186326f2a5cf56b16e085a3486c5d2d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.2-renovate-external-non-major-7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c.tgz","fileCount":27,"integrity":"sha512-XapCXTnPekCVPeYtI8GZrSgJOop/P2JdGaJ5YqjHPnsP+RQsHex7eNmI9fNGU7KTYFdm/80wCWcwz+EWWxiiVw==","signatures":[{"sig":"MEUCIEoK0OEJMO6LeWSStWUmZskb6dHEyDy3A+u/Tgc7sZvnAiEA7uYrXDjJMHeoAxm+ZC9UreB1v7sP75+QJaU4TzkV4DU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171268,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQbLbCRA9TVsSAnZWagAAH4oP/ixRUJ7BQ0Wx8GicFlEF\nUiRIV3N+Op2gWwVz0458mLimoILkUMMIgMGLYhS/0d3Uoe6Z8S5FMmiY4zV4\nIAQWeePm5+p5i6RXuwQv4FGah9XSvO1VnJYpII1NPfw7cw/GFxDwuPSx/xae\nltpevcvWMaDcq/jnNHg4e67clgqxjO1osfj/Pv5bXJzuXoopqPYoAlpDwYD+\ndsQJEreuMf77vnaEoHhP6NQ7xfloeIOOk6OwtBukKLEZymF+3yMabAws8Lku\nVR6xoSNTLm5Y0zHVEJvyvTcUBz5ejg1J2eHuhHQCVZkhaP/qYQr1rgga3M9E\n4TvRlS66PCj+0x9rP49HIGAMgS1M+oGyjIj3R75hUolLk3AzpafyHkoC/EpR\nq8BQCjrt1Z58WrpNwVwr2zImQmCGU0F4OuyAF0qKjSieC6FK3HfaWf5sOr9I\n1a19HuJA/CXRe7yPPAMSNzcMJeVxHbpV0UNoDf/YZxFn7nVj23WdVccumcdP\nk3LpHWphvF6vdUDg7PtHLXB6Cp3NvhUsXSrz5Z3v9DPwQOAn9PV4BZ71+nw4\nxFZU5/bDa57GixVoN0FIxV7Bjhu7KPI7e1TkvYtBLnBJQmsJegHdG0Cd7HIU\ndVefHUeI6KriInQoZ8Y0fBt2I4YczeHDzhbaq+maxRwwi3AtYKt5APsjf+Ro\nPFEY\r\n=R1jG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T08:42:23.960Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.3","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.8","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.2-renovate-external-non-major-7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c_1631695579555_0.8849754407172883","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.2-renovate-internal-patch-b14cd5c3c633a7f8b3c95471061f6101fba6f490":{"name":"@balena/jellyfish-test-harness","version":"7.3.2-renovate-internal-patch-b14cd5c3c633a7f8b3c95471061f6101fba6f490","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.2-renovate-internal-patch-b14cd5c3c633a7f8b3c95471061f6101fba6f490","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f4f998ddbf981c8d3eca08052c01ec76c37ae500","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.2-renovate-internal-patch-b14cd5c3c633a7f8b3c95471061f6101fba6f490.tgz","fileCount":27,"integrity":"sha512-E7MMxxWlE8lft5i8T3IGwB1kJ065SjhDE5CovR+JbIHEVPjQd+AgWExUzsLeh8Aut1HqSGCq0cH4jGGEMYcujw==","signatures":[{"sig":"MEUCIASpsNQx1murRmkgFsFQa4N7EzdTHMZ17uDJMyWN2p5aAiEAop1WIu1ceTcfWSOmBaH6kSp7/NoBtcvFu5OBlVZv7bg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171292,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQhzLCRA9TVsSAnZWagAAY6wP/0Lzcsz1knlPqEmgnj4G\n+rfort62+fkL2SURHCKh8LjNSEM2uoL1W2gagjKExAC5iqgBtL4VvDzBMtvb\nf3XB3jlOUUPMCyduasCS8gy1x/ahgJsOt31ik9nxTK3PaBwTevmRzfhUwOHL\nNHG8eVUDTNhmFswMxLlntY6qVhh9OsAPjZPleLnUEW/U2EbXZBtWq8z/VYBe\nT0d5AAXk45JRR2qBxNnoRV/NdUVBSLaHHlJu7C6F6fsi8/VBJ6Rt4pku0+fL\ns4PQfWkT5eJoF4mwsle9dhRcVjHZ//S9+1dH96ZQ+ReXaXOIzDtXZzPW75Lj\ngIrFzEpX2WrPCrDZwCRrEFA6fyDAlzlpJfsuF7nBQsyKuN2O5eXMXcjyCVCU\ne+Z9y24oWcAEVB4XaF+W+m3ja2R2oILcSKQJwa4H8CVbUT6nGv4eLVrOpHaC\nVn7nKC5vEK6ugyygRH7qDPynsHwyYtPOJ6MdLWnGbv7KemqhQMS9hjGH4wdL\nuTORgMXWugFUufbsyb0yfAk9HMQg0oABwO0u6ujPVQcFas0NqhwaeBO/s2/8\n8Yr2/gAXI2DZQ5CSPYAjhztJZ8MEOtRfrOWwyeP3eA9VqyNxA+pymHN07GhX\nPOuGWSBCFvRc2y01CgUBPxEho6nrwCAj80r+vQSSDR8PgIXDJKPHctRDnbL4\nDAEI\r\n=EbYi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b14cd5c3c633a7f8b3c95471061f6101fba6f490","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T16:15:22.206Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.3","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.2-renovate-internal-patch-b14cd5c3c633a7f8b3c95471061f6101fba6f490_1631722698841_0.9642458648304819","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.2":{"name":"@balena/jellyfish-test-harness","version":"7.3.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"86b5cd68e198d94059cb85f4ed0df2a394cf5fe3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.2.tgz","fileCount":27,"integrity":"sha512-RktH4m7eRHB1UFCTiz/SVZyc1Fy5R1LhpaZ3bCYiEbJ87pWJV8yYPycEnIyUNpzud2pwNxesA+jGrJ1eEstGyA==","signatures":[{"sig":"MEUCIQC8ANYOSor4vB5ntRNBBA3x7ODyFEs8znEeToLfSEIY1gIgDWWrCg9BFrB0Ab8LoCG/pJkWU7x5ZE/1I6wScD9lBtQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQh2xCRA9TVsSAnZWagAATyUP+gK3xnibRBhCc9kjAk9R\n4TulD5JN5MtZuG+o9g772xA6r5k2ezXA4Y9RJRDUsq4hMxYHPHn/f0xLt0ZD\n8gRql0/v4BtcjZlIS2KRl2yEIRVmNxUAwaWBjmOS9p2XutbO2jNi1CiIk190\n7ui/gO9N8VxxvgtRj4MnVBhvicj2PjecO4M2eNWIJW7zql8cbgYFwaID3prx\n6XY5dxWAC7Q/IwipJj6ZsTwOABSFNuJnLw7XlYndMnI/7HevBUsmBacCMD6n\n4OsdaILIlKcH3tMYGO5moYmKQtBJ27GnGn7g6YKnW929mXBCF2lv/wEUIOdF\nGE8MfAcUA1JLlN07zrjj2yQH6iEJRfodXTc92gaskx1n3iYCmvAf850f88rO\nh1eNT02Bq1pcLArnmh13sNwXqk67KrVSxZr8pBxzIY1VNz4lHY8ABTQJ/cOV\ntPsEWovUph0gYtijjP2GMO5K3x8iTxGJGTnY0pra5cRoToyt8/lf8pMcn8Fo\n7SZs5fcj47+PxCkd85LhD95z4oshJCfYco5ClJRxCAFo8jDMBB4y/8dTy03y\nVwep9O03EJSDlAkAzsWiHVSClDp2dgcSITwNXlBh7IqetSbqT2T+/ZqAGDI6\naSfpuhcdfJab1AXFNPYmIPx+09cOdxISQERip9siG+agnx+eA3mLrmobYAqk\n6tgg\r\n=pCSk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a1c9ac5d56cafce20723bfd9b6bfcec7a88afc2b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T16:20:20.906Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.3","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.2_1631722929074_0.40135762465351","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.3-renovate-external-non-major-f7f0afb568da0c1c0b0a3fa27bc897af865d118c":{"name":"@balena/jellyfish-test-harness","version":"7.3.3-renovate-external-non-major-f7f0afb568da0c1c0b0a3fa27bc897af865d118c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.3-renovate-external-non-major-f7f0afb568da0c1c0b0a3fa27bc897af865d118c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"21c9717be74f40bf5b1b91f5206e636d18d33b2f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.3-renovate-external-non-major-f7f0afb568da0c1c0b0a3fa27bc897af865d118c.tgz","fileCount":27,"integrity":"sha512-ewNBUXVcovTGcd7M8Tfd1vwdabCGJ4QCIi/c68JGmNVrH+g7cUWl0vlMtvoa7n/h2fE/7K36WOeqXjbzlkzOqQ==","signatures":[{"sig":"MEUCIHv5Sl3+1ButmuJVTUlHEeg5CDqlUfx64ltAzkcRJLwaAiEA4WvjCqZu1hqm5v6soChsxn2lRQM5Ev004RYzVqsyuyU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQh5nCRA9TVsSAnZWagAApNAP+QAjnyVm5G9P9lsmzsft\njsx8CCqqRs5NEZIINMJs4px0VR16X/VEbixGgHp6QOD/eLjZqkBwi4P5WoQS\npRG747IFou3byY3LJiVGoKH6s7GHgP7MftRLFuAv8oIyV4OK/LJjPuhEEkcm\ngQscOx81MghKWJ0IkdRTyWRLtCXsPiLAgi+N8Ldu/HtjTpCo2G+MXfzeCCiT\nCMuTd5uxpUXqaf7lQbKMUyLdAPG3mtUupeLW/ivjs+oHdLe5CPcI3u98/X9V\nFi+Rq1ONt6Gy3W6CRR772cxGliXeIhetRO7V+Iaxq3grk5LgAAGecTgEaL/J\n/Tpq62NKMWeMH8az7uklJW7wCTeEwlc0KprV1A/MEvUHXbX2f1QfBtfjno2G\nl9L/8bAiiETxjpJGzeao5CoUV3CPs/o64ogb/a8+sNAXYa9WNPJ+k5trlzjO\noVFSqQWQLw7t4s6v/tH7c+4JpHc0oPEwgJA0xDrp+ppW7NYc1rp2EY2qoPl0\nFZfMan6IFwR3nXDjrAqtRQ4tbWP3iHtCiJG+5MNqLl6rSJR66qjnoNBQxh9g\n2LGuviw7ZxdFe+SuPI1kEVbUR19PpFvqXkpW2nSA0/I+N/phC7YDLkfXF5Xd\nzxiUngqrsDKyew8hege1bcYtx65xhVWT/KVdEbD7RDnbgjL2QXfPD+gk0tDF\nDwhQ\r\n=o4s4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f7f0afb568da0c1c0b0a3fa27bc897af865d118c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T16:22:21.767Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.3","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.3-renovate-external-non-major-f7f0afb568da0c1c0b0a3fa27bc897af865d118c_1631723110891_0.4240566039372189","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.3-renovate-internal-patch-2e977e03fdb439d4f64e175604fa7bee0ab2b209":{"name":"@balena/jellyfish-test-harness","version":"7.3.3-renovate-internal-patch-2e977e03fdb439d4f64e175604fa7bee0ab2b209","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.3-renovate-internal-patch-2e977e03fdb439d4f64e175604fa7bee0ab2b209","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"975282c1e4dc53a46255366c8d0b85e4f50dc20d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.3-renovate-internal-patch-2e977e03fdb439d4f64e175604fa7bee0ab2b209.tgz","fileCount":27,"integrity":"sha512-SXX4wom4Mwpy5jjyj6lYWIL+UH0Rzz9kUuyOcF2/5cMHK7Jv5sLvExYs38faiyrvjJPiYvLfh3FBQzmdPCRzcg==","signatures":[{"sig":"MEUCIQD0lxeG6f3QShCGPjrzESkXgQKqb3U+uZ07GtbKc719qQIgQsOrhCPsbcfrKeL1mzxvPpK2fEIbxrKDVKSvbgajGDA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171394,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQlSuCRA9TVsSAnZWagAAkvQP/Rwb7s63Fjn67sOPH6Bc\nR6h9fggGyTxK7mitxLbn/qLSvppf1iDHVyJV996qqZ+jdAeifkcTdXiSr3MK\nYdUZSU3Xtbg3hDzZUMfDnsZPSF3fQmW65TbcO6tl8XJsggXWkHsExdBndsTx\nIQ+oE3Qmdm9X1xCa1jRjnhIuu72nh+8GCnDWA8hIU7yugvNPD1vGiiwYMDlr\nMaOuhSrKzpozeF1eT2c4ozLG4z/LhViNiD2+Xja0HRz5dtw93vSVSYN+OLIQ\nAFVg7Pzcvk1YwJ1lJSJAoLBhXwdypXnrWGd29OIFXoNl0T4I8WolEnIUZ+Ku\nB7ZMhfUZi9+lJyOeKb4u/r1QS0lfYliIg9KOCOakQnRODRjFx+08PqEuSgv7\n0fPqqB6ks4gLn9TCz4+PiPsNHapD8eLWg8vTBKjsfSyo3l0/7tgFzKfoiovM\nv2hRDckPEyB9/fMe2Pmb62PnLkpSozBdsXNLeFUULTTiayZt63f0XK3mwufw\noW3PalykJCrtluJgQTS/6Uh/1SpjO+P04B2IryDzlkAmCyyUspO2DcMyHNe8\n2ZbKGwTfA83z7Vt6Dv9uROUZ7VRPj1SlBa1B78V7Jjk71Cb5m8UA4CY0FqD+\nxG8rK+AzFQTixmGUGL8Yr/Wl6nEkPcHsplRgySt5IHtitjozeNqffz/w8LTz\n1xKF\r\n=qMVc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2e977e03fdb439d4f64e175604fa7bee0ab2b209","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T20:13:22.161Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.3-renovate-internal-patch-2e977e03fdb439d4f64e175604fa7bee0ab2b209_1631737006238_0.4441070306183317","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.3":{"name":"@balena/jellyfish-test-harness","version":"7.3.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"47bb36c0aead6e4c1c6da54a51e5ef8fdc22d8a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.3.tgz","fileCount":27,"integrity":"sha512-fpDPgLyecRLxGJ7m2XzpZS4QYvEYupC3UIos+ZxjPIH5cx2xW6aTElGZe1jxVTC8esYNxELYscBRbG9OhmX/vw==","signatures":[{"sig":"MEYCIQCuBGvuQMR652LQe5/5q2CfMAkK7+XeN9bdbTHwXKBkPAIhANyTYRoUBDVpi6NuVOKGMcZbivEBnSwl9EKuvWTOUhNB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171329,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQlWrCRA9TVsSAnZWagAA6mgP/2qRoVXyN0+TFmB/JUQH\nwQGFKr0LrqeIeKro0JS/FaBCNCfSj7O07r5pJCH5+WX4RbwrHSNQg3MIeEEb\nvV469pCGYTFNb0PWGj3S6suNJqAfY3UviOTSgoQiKWZFz/9yGBP/xYUvjGzJ\nUT+mhVzhNYfsaaSAvsks1n5S25lK8pJmT0tZkP3YqATuFr6dYcDcH5d0O4ni\ncWSRrUQG0CCoxxNchnaTLw8RFHnuw3Tx+zrfCASawLtzVu9WKx/FvNE3JWJn\nSta7CBpgeTXgDizzLEuJwmqA79Qk/dcQMkasOGImPLTpxEVfpfNWeyRFXwn2\nurZI+7DFnUzBBukHMXSxQoxJbEbK025K4vd1VfeWC0BaAl4IVAh1i1MuSCpq\n8JGACREu0sSDhsRg/7EJ/i0eQWLGDqALoT4CQqDXvOPHd+o+59KG2iqW7obe\nfPudr6Onk7GAi3yTBZJ01urQys5x9Cz0B6GKtMhyMdDHXNMvAnWTAFSowV9r\n3AbESNWK2sMN1Aas4M5mKyHhXixkK/khbt0q6qoglTvUMIeqiHsWIX4dGNx8\nLo+PvfATqu12A094f48UojMMHut/HHNs+X2SYU3MiuU8LjzWE5yFtM7sd5sZ\nC0c21qWT4SBTxD04ohSd3u4E6Oajl3D6tbjSHCuLVlAzsWwjHCq8vCuvlcHL\n119J\r\n=taX2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a38c9833e760615cb03cb3c69fdfc817e229c81","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T20:18:38.422Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.3_1631737259483_0.648734867161693","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.4-renovate-external-non-major-ee8dab6e72df8c8b47cc59a62feefaacced0ead3":{"name":"@balena/jellyfish-test-harness","version":"7.3.4-renovate-external-non-major-ee8dab6e72df8c8b47cc59a62feefaacced0ead3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.4-renovate-external-non-major-ee8dab6e72df8c8b47cc59a62feefaacced0ead3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d9887b97674a3edf3a636a8e681c61ae542f704","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.4-renovate-external-non-major-ee8dab6e72df8c8b47cc59a62feefaacced0ead3.tgz","fileCount":27,"integrity":"sha512-xJ5LB0tEgkKoXzFYtBvFMOfOaKnNktCUgH/TZLQBeMeUWQNU+YoZnx/zSmCPvgpJfmu9AOjcic+OsMxXB6HvIg==","signatures":[{"sig":"MEUCIDATVB7Cr0h98/mCjriXTPIHYEgZlIi37dl7hPSkos0NAiEAl963ZhsJ2VAY57PodWvcTOMlmPXyAyLamqM1z3vWD1I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQlcxCRA9TVsSAnZWagAAi84QAIOk+DQEzXZh9AZFipvM\nbcEfImyj1107h9NF1Hsvn2zQlQEPJLUtmdMRDDe09/0KrMQi/HePsbtY/Hwd\nicu9gNapa1DldzFsB+Od1xtZDkznYzcpwH7d1p7k9tnJfPdoAdJ2NzqUuNyb\n+kVb8QqiemJv9adZSOnhgPIu8g0FfcYtperLYCNKyaDx1xgjgsKLx4+Z6Hhf\nh/YD50LLVIOMx1MhfVQsvUKid011ClMwL8M/qwTRrtYh/LsHtpJTQ2ty+sad\nE4gpT4PQUc6ExsnGsGePNQMxs4aDy+dBmPAiCg+tIqdaIUVk8DfNzo7lrewk\nHbJcDN9kxkXAaKD/GtHkNiNQkuCmJFHW7LjpjrLnKdXTUG+pWnChKGQJ01hP\nQbj8/zfKVTqPWFyI3nUI6YLSYXPVtQemWvaNEy95Z14SZSHeL5Ra2D6lPUSS\n+pkMUgB+xOrNfEWZjtwXs2GwnSWWPfa480mpTFHwi6nKUQRnCUkmWzglb81Z\nEsozLcpUZMHRO/1dcLW9fmqkx91elwoTlDp9XLWnOOzHvfH+CRKhbpkmsw0Z\njvkyIEtURBmnoTgQqE9SlAH9eDsDrBZCUqUw8znJhUH8erXNZVTKyIyxGj9l\nigkC8GW7bmMp85T7//vc11rIkejWvkFIsyREC49rhDD1PVPzi2acCviwhknk\neof3\r\n=z5DV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ee8dab6e72df8c8b47cc59a62feefaacced0ead3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-15T20:22:15.428Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.4-renovate-external-non-major-ee8dab6e72df8c8b47cc59a62feefaacced0ead3_1631737648939_0.7284797473884923","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.4-worker-bootstrap-types-5b47269104cdadd0fae51961e92a4d6c2e4ec84d":{"name":"@balena/jellyfish-test-harness","version":"7.3.4-worker-bootstrap-types-5b47269104cdadd0fae51961e92a4d6c2e4ec84d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.4-worker-bootstrap-types-5b47269104cdadd0fae51961e92a4d6c2e4ec84d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59feaac7f208b48f7882b2f59f25b248e8a86135","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.4-worker-bootstrap-types-5b47269104cdadd0fae51961e92a4d6c2e4ec84d.tgz","fileCount":27,"integrity":"sha512-ytD7QgJRePHNyHQPU/EhCiwo3TTE2A+H6UOHGBdTHzHTM48jJXnwqUo5y9o7iZ09OoIwibvvXlcAzZ+ISiNVIw==","signatures":[{"sig":"MEYCIQC06Mn5TsLoH3e+8QojzNiC1B1iwN+tGeFLAtXRC9DJ+AIhAL4XS7A+fsOmiliq85c3y2Lntis9bHedOieuSq1jlkKC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171944,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQqwQCRA9TVsSAnZWagAA3sgP/AhZWNYsC4RGDmog9+Jv\n+Hj1tQmviAAUmevgpYGF5IM0BVrkZ6o1eTYVTsi+1u1kETR/JHYQgrSU4R0I\nOlL04EKS58StoBeofZaT4V4tI0LAEKI30Efo+1F0PfaWYXiu1M1Ooyxv2qQN\nstU1TW5q75jN9wuJUdpUiP910GrCnMs70zb8di6jJeRQw0vkA+ofAAVh+nSs\nE0+DMrV5oWwcQ5FiugcgUA9BXEw4i6jClkPJnG1uLs5Xa5r70sU8LhgvTroi\n5cIzvTVEpXaL1X/1VE6D+cn94hR/o6ZRFqiLyr5v8PBrlrODxkv0WQswc32u\niOBUIzj3sGexsrXFXhC0fk+wbwMLouT/bTJgxiwtIEjX0p8L2oJ1Zv9QR1ys\nXnzHwNUn53SEEq1XldQbVn9E1W8YDuwbelJEOY8HDwqx0SnrrKuNUUUXoAKL\nyZbRg7kegTak5EHWv1+ZR1lAw76fXnh/vmum/k5zziv/iJuXNU5AgOfUCFC+\nhuSvbQDqxOD7lly8YsnozyBqz8myKLscX2PCinOlRR1KfJd2aYqnUrDdjZzk\nrS9jVe3dPaNE0NL9Z1uDqRlcu8VORQB9cc0tdJYhmWvPJ5iyS3EB8Fl1IoFR\nEjrmOaeXp7o+AjMe2KMq8YfxMxTG5Hlc7EM0MDaT2Dllmg5YkAWB2UIXFQq8\ntJ0B\r\n=HMNz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b47269104cdadd0fae51961e92a4d6c2e4ec84d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T02:25:54.756Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.4-worker-bootstrap-types-5b47269104cdadd0fae51961e92a4d6c2e4ec84d_1631759376549_0.9642130919919012","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.4":{"name":"@balena/jellyfish-test-harness","version":"7.3.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c38c445f18d01b16d1312a14a02742914fba5c00","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.4.tgz","fileCount":27,"integrity":"sha512-Nm7euRgzKbeSqvQO22hjlz5/pb4HAn2wvkrca54ztRDvYmhK5Viua/BIBcw65McXZtJNT0Df29990J7t/G8EMw==","signatures":[{"sig":"MEUCIQCWPKveMJ+P+mWsSc2SuxfVKxGC37XCk0JUu/Hv5MEJSgIgRpXQGiAmuyYS/NWtzJnGCJbJ5Of7ihUDAJRrgRIbu+Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":171880,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQq4YCRA9TVsSAnZWagAA8xgQAJvFN4FDRUEDZ9ZQ9cdT\nEAKzDz03GdLz6vCrdU7/M7q4UPvfUN8tEJ0s1F+is0IhcN/tCfgAI8e4L3yI\n4xX5Et9ZL2aUESsP+VcLNLGpuDijy875dm0Ia1j/8Ry6pecwG9hPKlO0b5iq\nnre7mKD+yNCsTZxkX/aZKGmx0veP0cGUrUS5pHNj7pDECFl7GIS/My+dn5mg\nxsvOqQFx5e+iINowvSMhD1hqkhj0bTnmuKXcP8/0Lr/8qENmp4ikV7bKfhCV\nHFwHYnQvjidX0O2mT4MB5eY37eZw9F5PWD9jdIL00thw/9bgpzq/nGyjYSQr\nuwUfchaJWRgZE9/cTBippP0xEXBwJ961kkyq6Sqx1tGs9q/q802E3Iz15bO6\na56opTMhEcf+81f2iLDaBpiH5U0d2zNqrDX3hMEoeaB0FwhhBNVghImJTz9/\nKNGGQye/KhZ/ZLm6C6z1m7GIYlShXUdFBhpKxymezJBKjS79g9J4ApxTLap7\nglEjPnsZ+Cr7wadCCwmla9WvcM3YWx8wnTIfW0IW4FETfdzytFdWkXhXEXAB\nm7pXmZlKZVe8qvx259nive0lHmjFX6mp4QwCjd/XdvRTWyBAYfLESVKHyLdC\negnoocrka/js20sT/wJ6txIfrB9ltT1o0BuvR0MtrnVtUZQbhquCdSpXG7Gd\nfh1H\r\n=1XPj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"34070d3eba414fa0021db3a547839d0a5f50171b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T02:36:22.051Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.4_1631759896206_0.5895223987285112","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.3.5-renovate-external-non-major-201e40cf80ffa347a4b9396f3f9ccab334bf9f89":{"name":"@balena/jellyfish-test-harness","version":"7.3.5-renovate-external-non-major-201e40cf80ffa347a4b9396f3f9ccab334bf9f89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.3.5-renovate-external-non-major-201e40cf80ffa347a4b9396f3f9ccab334bf9f89","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd89ba32732b005de548d3e1e146e740f0883e15","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.3.5-renovate-external-non-major-201e40cf80ffa347a4b9396f3f9ccab334bf9f89.tgz","fileCount":27,"integrity":"sha512-6w6uznjXxlJ2S/cWAewAKc4juwWQYaAScFBEoBIt2Xmtk8E66Z62N6P5zN8DP0M2mcem6XN+GqRu9vk4BtZ5Kg==","signatures":[{"sig":"MEYCIQCucCFGoGIx4Dn7VQRbO3YRAoj0t831XcxFte9lC6FhOQIhAImRwwJlcjRAXcSSAYujXE/80JlSKnrks00dp3cKdQ92","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172026,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQq+CCRA9TVsSAnZWagAA61cP/iEAspqODB6eSvTnLp5/\nxTD3dNRzgbm5WcZRuMTy6kBXynhznGKEtGGrLulT9hqvkp8WgE5NkdH9XkSJ\n8KWTOfZQz/EmJ42kNlZ5bkjqvML9iA7LkFysy4j2jO0E1d/3wxL+2ys+w9tZ\nVFqh13+FCHIdkBt4oEYwjJZclrk6AL6XGOEymXD6CaxEsQn1n22mND3pMPVg\nRXDD9Mcwo6ekzIdtqbAo3ebpY37EiFwxMc6+vRdmS76M0JW187s181e+v18N\nEWaMogKFpxBKBTNmXuwExaWfFcWH+Jh7PVbmbrHSDT7pt3NEVE26MQ92w1qw\nXCsVKHyPBkLYQzzsgaAKMyhjUTatkibJ/Xg6IfXU0nlhlrMHuMrUFn1PonTU\nDuZE+sfzim2F7fxQlcl8rq+ETDqfTsAXet9iHM/sWtTowljNFRu0P5i5+VM2\n3CPqCOiowsQ+NuzvvMoZaANfmFv3bp4JUZuGj0/4yGozE3x9fWAYAdU7YIOr\n0VHDxb8RBJ6RfQ/UOYhT8d1sG7tHNrYb6DgtaI5rz54wE9jKs2Yt+DFvN4BG\n2uZVVsk22OgTUmgsoXAAR/awDoCb5JRCyFrj3Az1aKgQcj+yS8oYkuYEGBYQ\nm/vuuNcWYOY5Ty32Chf9294Wn3Hbu1wcW7Z3RkNvke8B+7JNIeM251qOl3wH\ni/0j\r\n=NyQy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"201e40cf80ffa347a4b9396f3f9ccab334bf9f89","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T02:40:41.816Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.3.5-renovate-external-non-major-201e40cf80ffa347a4b9396f3f9ccab334bf9f89_1631760258700_0.3560194421820928","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.0-worker-dependency-injection-6669ba22b271901415950cebb38f126ac89adac5":{"name":"@balena/jellyfish-test-harness","version":"7.4.0-worker-dependency-injection-6669ba22b271901415950cebb38f126ac89adac5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.0-worker-dependency-injection-6669ba22b271901415950cebb38f126ac89adac5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"133c36ab54d6fa3daa19005dde7464e53b02c2d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.0-worker-dependency-injection-6669ba22b271901415950cebb38f126ac89adac5.tgz","fileCount":27,"integrity":"sha512-TtQ0Q3Hljnnt7KXvRijHO68rOS68ObYrSYNIW861dkZNRoMqSYlCx5JDjF1g9tnmEDJGSlD2plC7HrvZ1wGe6A==","signatures":[{"sig":"MEYCIQCUeKO3Bh7Pjid8FevHvOI+KUe82Tq15qWGSjycqmywtQIhAN7K068t91MSwjLpV/pRRrK5U8FlS28mTqhMDN4DDdP/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172139,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQs0xCRA9TVsSAnZWagAAYtYP/0wHo6XF3tFEXVOamIUI\nuO7JU3A+eUxmDHfC3CPgt++cj0BgjkTHgOAcRcM1sZCaQwEWU/4Fl7at1SU9\nc5cM+V4/gsWDVv6EH9l/fxt6xKSjvo+ZM/eO1ST46s7k8lOuKWO598mk9C/M\nEPDrGutUe/Ov9P4guUdtk8e8Z5m/KTIe9JP3pUcbaSmXUxo50LGCEfM6NwS/\noao5IEaKKlfVU0lsesXW3XBQj3EtoN1SKd5imoUC0mb1R7wPS4IGGifH3Bkm\ne0R4T0WDcFWRBZErluI1tns7ls8+tny9/tu+zmcy3k2/IM+dv4VsRTnvZpsH\nCG6MFRb2XC3qxJxymNal5w1s6iZTAOk+V45r8Zk6VmUgH2I9fW9cYZJjV0V9\nsxFY7aZpCYYSCSXJ1YcJT53UeC9hDqnabI6BWljbamnyk4x2mH7pQZtlgMw6\noPNCcEzbAVDMm4FKiyWQI7SWbhFnfshuMIFQU+6XzMf7sBKzkiihWMBxLJwy\nrugXj20N0ir4qz9M2RYdwbWIioZg4ZgpRtNFCWPwUXmjMfZQ/iO6bJE+ceIo\nIn4KuRch9CaXQlRevHmeTIDWDsWmdwhxfc85qOgG4p6/5Tj3ho0VT6efen/u\nEgmTDgYiJ8oQ3GN9onb2VNBPN0DDUJy7C5FJJ3lnX1uK2CA7xP7WGzure/gp\nYQ+S\r\n=EgrK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6669ba22b271901415950cebb38f126ac89adac5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T04:47:51.632Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.0-worker-dependency-injection-6669ba22b271901415950cebb38f126ac89adac5_1631767857721_0.49948910491112253","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.0-worker-dependency-injection-82009c8dc86237bb24392e25e2bfc6849c3a3627":{"name":"@balena/jellyfish-test-harness","version":"7.4.0-worker-dependency-injection-82009c8dc86237bb24392e25e2bfc6849c3a3627","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.0-worker-dependency-injection-82009c8dc86237bb24392e25e2bfc6849c3a3627","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00e680f588bbcef328d1a79ae1c58414156b0b49","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.0-worker-dependency-injection-82009c8dc86237bb24392e25e2bfc6849c3a3627.tgz","fileCount":27,"integrity":"sha512-07B1aLPE1M7HoS1EIz6k8DD0Q0eds01S68/EJYGFV6wl143aDsjWAk8jQLDmQoCmFwz2tgqreNCQGEzYGVb8sw==","signatures":[{"sig":"MEYCIQDL7aZYjCtwQMjohYfesJYUEbrs4rZjqOloK6h5MuaawwIhAIcmeAn34C3z/Az3/9zlkQlRFfZJ8YbqGWdATzPZFOkd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172186,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQt6GCRA9TVsSAnZWagAAPlwQAJiqpc1i2c4pvd0PNcFY\nJeqeoM4SPQDG5H4S/6sde9/Z7nXxKNZIxiDiqqT15i0il0R4MACmjp7qb6CP\ngWlcTcx3nBmtQpBl7W4IQLSg9NF74eyv8L1GtBV7NVgVnQKAES/+/bb45q5z\n7RjcoJjEMjPXjemVdo3l409W+H31eTqzvLPxyyhqWd9jDfiOHc1gWqBR0xQ8\nn6sPYfTPBCsIKUFBKTiPaBAeYMpS88gL16nOp/9jaxhfygHPcz6PsnodmTHu\nCsWDZof97P6c8oAGRUQEURYSYtJ2Qa8Vcsw3v2mgAHCR99VytEySTturanfe\nlkpOLFZ59EftEursAwJqqk3NYlXwBM/4YA4xzKF8PQEU1qc/DGVTtwMG1fyt\nRC5WyO+2iW1BKTrzOUDuDA7p+1/iX9LJULK7Nlg8QbKLQqEtlHLFqv/k+Gic\nmCZnKejznKxt2I/YwTNfh8LgWOHnowBTPUU3xYhGLRzIl6wdauEkNfqAMKyi\nmqtmLZ8uSiYPrn7IE85KRzHIR8OZNWOfuY4I48qX91DINwaRdNRaunNEkCVx\ns17CQIpM+3twrieC9KCHxffS6EddYC5dlk2WGYH+3A8Wf3AYEo5Sl/CRI9wY\nYwH4BvSN1Q3MPv9N1gmVxZrN8pw9ZZRexnh+UUwnc8Yk8l7PZf2TwCFNoTnE\nFxQ0\r\n=/M5E\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"82009c8dc86237bb24392e25e2bfc6849c3a3627","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T06:01:51.909Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.0-worker-dependency-injection-82009c8dc86237bb24392e25e2bfc6849c3a3627_1631772294697_0.35026162619027446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.0":{"name":"@balena/jellyfish-test-harness","version":"7.4.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad7fc9e0e34f97ba90d731b77116e499c7bc047f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.0.tgz","fileCount":27,"integrity":"sha512-HKf4CsfiRC43xeEyYRrmCaZdGXi4DUvYtxXdcqEAARO0pITtSvqKX2YiOjz1+fiL2C170frPwxe0Cq7u2NlvcQ==","signatures":[{"sig":"MEQCICD4gckoD4XyJ+bX03UMStY31ldQdM1c7Y8F8WwOs/lgAiB0c9LGy/hLipqflTNYQQXHJVe9wpFt8aRbdDTbJy1aKA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172117,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQuETCRA9TVsSAnZWagAAh+kP/jRfgl1ZmzCh2+bYEum/\nyTigxJ1bqj8ai6U29IQ4w1SwL9uLDoFLBwnlJkW8d5JwCEAIKS3WkHh/BM65\n3EvxZHlNenJwPhp6Phq/n1MpjzhHoLYjaecfyHjbm5NEcGl+jpt+gCP7GEmd\nsbaIDdDK6t8j999gltfrhqmDYA/gulVmc8CUT9EoFOYo0ggAQvboJGDcPZ0S\nWEcqxuBuF30TckcWsxn1tUxoXqQ8LGVH3Crl1OoHJFMcYTB/j2fBAmr13B5X\nCKa1Px4FLM27I0+ED7kwIrqZBcKigME6dxNIfGhBD1SjthBFgp0hrVz3zOko\nfFp8MJ6QMJgTEgNJ/QEZK+DDjhgKDZZ93ekRAQ4GFNqhSiE+y2nTNfp/LQKD\nAx+I923KmUzbdZZ1q0ylGegmkuB7blZJoqoIqXF+gt2WAuexZbeKl/aVaviW\nEXqTm5LM3bbeVdAXgZf7is2deYjJ6GyotXEOyzYkslFwWoG3+TEie00uLYrF\nlV1OP+yl0Q/kME6yhmgkqtxknI8BqoH34/tkC765U2oKTy7pPMa9O8lzrlGw\niTvrZfaPEIRWRCrP67AI3Jo6IqhCfgRHtWSlIvx+SzOhnClWIduaLl+HUY1d\nYtc/E6o3kbhzCwULQ0K52+sm86zPCEnG2KkMANIIvEIuYKAEi/+MxSSAbKSL\nevE+\r\n=/onC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b1bdfe821c9c9c9a908d07e8b3380349fc7b1d89","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T06:14:01.265Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.0_1631772946830_0.016167950593133584","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.1-renovate-external-non-major-93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa":{"name":"@balena/jellyfish-test-harness","version":"7.4.1-renovate-external-non-major-93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.1-renovate-external-non-major-93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f045690bfc125e80820d991d183904ea02a1531f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.1-renovate-external-non-major-93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa.tgz","fileCount":27,"integrity":"sha512-nVUVOf4iMLf7apd3jaqGYDDNcNRKFOyMpxls3PgwIw8rlAGaktAyu/eY+ET6o3waL0JdktDsvwDOwcKgQ5mbFw==","signatures":[{"sig":"MEUCIQD9tdF3XebScWzN0ueL+ksFc2cMLOx83y68b4fmjsAhTwIgZhgEOVhJczP9hTYGlrI0NHLpvTQAivuobnGR+h8Kp4Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172263,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQxsnCRA9TVsSAnZWagAAJKQQAI0Q3gehLRPOKsc6HC4i\nyPx/Kj+MGK9DLl9ANiHSZ4AfE4iR1LkByzvRqbqVA1/zqnutwiQ54CTHzzVi\nwMhqrF8Jwe0n+t0cFvFJLkc4zCnsdFnEOl9AO6D+fsOCYLzYfbUrBdMNVLUr\n7ENCSS7tbxjJIuEf/OdxpPcum32fKU8maGLxyDDf6htQ0PXff4UG5V69D9cy\nHPptjyC2pqO+6GaletyM72F37HdURF2CseG9+wEkU05lBo8l7ybrVpcaHzqX\n4G5E1UkP8kI8CM9scneKAhxu0nAASL3TmIYN2RSAya7qhgKJ0GQeyBtbV45n\n+kJZl7OvjwtwFOIthScP9F3QlR29T1y54H/SOOMkEHpRYgL68zyhtQla7xsb\nLi3FMfHYWs8B7iU+8IRQD+Mt3Eoc7tPeGAXEZs9qJiZkPxb706EFswJAAPvL\nBlIH0j9t/3vdOP67FUn1FNdArDebv6+arcBolxER2b9q3IGusc1cFuznagXL\nLX/FK9dWjnJytLqxOoOwwKUIYDmtr1gsJuvvzWdgCGb17YyOeXHAOcfpBMNK\nZl2tcHlp0zPVBYcnnkC4G2a7jvBkRKeJRQO9+cEqIyAvqGZsmE8NYjv1rNLo\nF85aFCHoSSz/iRPjUhvYJ+DUapUMEEaUOJD6A+aKHyv2hYgf3vT7Ttk0Tgct\n/lg2\r\n=l3YL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T10:19:49.466Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.9","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.1-renovate-external-non-major-93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa_1631787815346_0.9534462361113745","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.1-renovate-internal-patch-ae03ca72e8724cffde101c74f217a7727e433437":{"name":"@balena/jellyfish-test-harness","version":"7.4.1-renovate-internal-patch-ae03ca72e8724cffde101c74f217a7727e433437","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.1-renovate-internal-patch-ae03ca72e8724cffde101c74f217a7727e433437","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0282285478cee341a26edf1d49e9f0b87592a444","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.1-renovate-internal-patch-ae03ca72e8724cffde101c74f217a7727e433437.tgz","fileCount":27,"integrity":"sha512-foeUw0HEhuUUvXb9R5U3vvRzDnjdV4+VzQVrW5c43OUvHrCBV4O6DWl0J9zcU26o2gQ5FuWICX6Pq0tcekE3XA==","signatures":[{"sig":"MEUCIQDoKX/in2T5RBI0pcYErJ3j52YtEs5yNzZcOM0fC5AuhQIgGVJNXnaE7aJkVAWHoAFr4xur+ZBRHNCKwbiQOUpOaoU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172289,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQxs0CRA9TVsSAnZWagAAhI4QAIdSD7xZpNKTUBRYRmHr\n+aLfoiVlhMun63QQKEmISOFLc+tMRqcYqB1NNb38uZVvvwDs8m73UsvaQv+Q\nagjkRVaqUG4Pd2D/vAnTrl66rxDSdmBEA30majVveixz5Yv2NT3T4ps9MisT\nr/ZqDT0dirrKP9KAWZcLQrMFoOhxLPav0T/lSDh+Y6lpfZXFeutL/FueHNOX\nSvlP9Z7LHWO+vHkF7cOw0YMZJEiykhp3PEuioppP4fFZzMs9UQ3fJIjNWFQh\nLPazRTFMaqp1qzSq0lxpjTdj39loukYpFCViXBIAgQPmtYTmXW12JE/MRr7c\nyfmM9oHgUt+jfnP7BXgcOFNTiJ/n4Md0C9Xx/KtJRgiJ6VEYE/VchNR/o3Xi\n21YnsQxk5B4Kr8qWnp4JNrNqhxN8AdniNo3OWvJeX6F7tc2RltMkA6nbyanq\neiVQ0LAV6XoJ8U2BuJhpam6KkYNTYKQoVE4ar6aKXTRyaPNGIur5SFGoI8q6\nfsITKSZIYlk6nlojlrJQyPUbtdMZ5YB5RVQIW+Quc3pPAjOLsEc1YXAGiC+C\n+DenvEX6Xb2j26Xqhx8b6S4upSgk9cva8kH2pu+YBJuQQJAtTU7T0vTP9eKu\n244d+yhqxc5cOBJL4orm3NS1P7T+B1Kig8IloeuZcRACgnSlZCJzFTZw1LGw\nFCcB\r\n=E4EM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ae03ca72e8724cffde101c74f217a7727e433437","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T10:19:21.419Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.1-renovate-internal-patch-ae03ca72e8724cffde101c74f217a7727e433437_1631787828042_0.8454002578614999","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.1":{"name":"@balena/jellyfish-test-harness","version":"7.4.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e4b69ed510b9b0d6627e68aee105ca1b25312e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.1.tgz","fileCount":27,"integrity":"sha512-dBHRCA3IWHxCQ8Xq7xqUY7gW3os0qfHdPg8SMMSfnN7xCuU14mLwzxYh5V35cjslAsuZS5p/TmKsU7Iu6mU4Ew==","signatures":[{"sig":"MEUCIDuR7vvDtblcDKoIKyD2Bf2e1kpIKsOIJA6yvTx0tbSRAiEAswEj2jnTsVza+L8PwGjV4dC3Vg31dEm4Ke7Wf2NL1vw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172224,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQxw2CRA9TVsSAnZWagAAsJYP/05ilnts03j48+hBL5Gk\nFFSLdzJTTPAXjvRqNFl4thbTKopUgCgIXhgs28mrt9gXo9h/3L516Y7UzixH\n4+THHOfy7fLD0nYfOn4Plgarh5fy5qwN+NK6YcV7XZFIO5zKvYqxUnCQMg2j\n8fA0tAtwpIavWlIRV+R376IJqhUhsZ3D6pohVj5t8iXuTV6E8HQnfgfo300/\nzOseutXiTypMZynlMljWOpD/TPK7lxKdMKQY4MkCPAK9ujlfsQtg2m3qs/8R\nZOTwfjM2GZBU73zA2hHnNjDXRWw0b0NQOYwlXxkn7S6+qlvfzn1yZsaKkQhn\nFnP3c6EY7FywST6Vycpiyp9SYcB9N2+34dnjKX3yC1QaiGFXbzVZLxi3soVf\nEtc16IIqi8WwVpBdzEJ4BAzi1oC1bPEsndTUmpgM6iGCYSt+D2UKfTCFHmph\n1o3VsmrwlUvSxMu+6UviyWaci+Oa0ZNX03QgsZni6qP4H77yMEIjELLj3SuT\nndPbL01/Fb8Fym/QYMV5Wa5McRBXHEIUsKg7NZtF1m1cYsGmuUAFbrk1yPmr\ngtcHvTEkZUZnQHIfQaihe+ZekzW/k4dqNezJUYAQbFasrwMSGyIwpBx3cJIA\n8dithd6hL8AJycuu9Y1F6rByoJD8U0m5Q4gOs0Z/Nu+jaU7VqlaRofYZ43AD\nPGR6\r\n=fwcP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb0ebe075a7492a4a306905a3ec4aa2349cceb6f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T10:26:02.975Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.1_1631788086786_0.9015354115675218","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.2-renovate-external-non-major-49affce186af44642993a54f091a108585d593fe":{"name":"@balena/jellyfish-test-harness","version":"7.4.2-renovate-external-non-major-49affce186af44642993a54f091a108585d593fe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.2-renovate-external-non-major-49affce186af44642993a54f091a108585d593fe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7e87fd6c53ebfe8f2f3f71def565733732caded0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.2-renovate-external-non-major-49affce186af44642993a54f091a108585d593fe.tgz","fileCount":27,"integrity":"sha512-G608G4M82lnj4iNjFIRi06JUHSggPllDTfurGRa8wfkStZenoV5aj1ijH+zmxahLPLedLA8bxyk3QjO0T3KdMQ==","signatures":[{"sig":"MEQCIEwIOvZ/rkaZVSmRrJX1dNb04qC2gMszIWNc7LKxVPBnAiAKMxoWk0+S4/yF4/CE1Owl5MR870Qatt3LzbCdPZzrlA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQxztCRA9TVsSAnZWagAAhHAP/2OCkHHKLM8vYwxMvtFF\nGrf3W8ty8NffAU4BAmZIhqHRPztWsS4nZuhcw5BedTpukVzRyd4Bbssx97P2\n/n+PcQFTkJzkMQxyI2pHzgNVAtDGSxqtOixmkT2FlC4/EYaLXN410hKl70q9\nzF6+Rrt2DHoIP8pJnY301iaJPzRNPqxzeM8z1Hsal8cWVI7cx1BNOsgZr1+c\nxXcWAWFWK4BT7BJ7cgpoaiZflDLOxDo47Uv5tXpgP4aDAEabQ7Q1wHneT4sp\n1JmsyPjTyMyzxAxcZc/ypRqNv4S1GK6xChb0jumfv0e5NSjrafI2qWn3ldix\n6RAhJ1QbW3gGP7MBrTXA5AYBL7LdWoZN9b81VgZ5MhxEfnO+PVGh67uj14ia\npSIpt4EOJ4XD/iM4MLL4lI/BW9EbTzMSFt+5V3D4J2jerk5KJ5vuuQBUMQTl\n4I6o7apgBQtNTH4+aXEeDRr/tGkjcY7fgRI7uFsv3pRNV7ad+pZGT/nSXl+7\nJhIPzfPmdo3c62PbMXGAqS3gaVtOgimhroR90GmDerHOhs/IEokX9FTrvAE3\nU1tl0Rp8+oaJEnLAekEAavBqxriYvZwgQH+co9HsqQaw3r3irCAehwWQkNKo\nc7Fwd+ZqE9bO1jFS+uORSM0yQYKTKK7/ipdwY216UopBCM0+/k+QSCgFpSJb\nDB2i\r\n=7La7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"49affce186af44642993a54f091a108585d593fe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T10:27:52.099Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.16","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.2-renovate-external-non-major-49affce186af44642993a54f091a108585d593fe_1631788269568_0.2988907369914038","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.2-renovate-internal-patch-d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d":{"name":"@balena/jellyfish-test-harness","version":"7.4.2-renovate-internal-patch-d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.2-renovate-internal-patch-d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"575e630733f4bba6d2e8d1e7b9ac14b9afd65dbf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.2-renovate-internal-patch-d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d.tgz","fileCount":27,"integrity":"sha512-B50MNBakMS+YTlLhpEVqGr9BPC40VA04XQY0B7pQRvHb1HLBGeeMVXBC86EL1ANIZq7SwoNu/Hg0T7bCE4knsA==","signatures":[{"sig":"MEUCIHRP3Z54tftk47z5g9SJ2rOYjNnRVSzDbXugw39f/5XwAiEAok0G8xNvZs8GW3SNjrh0hTmcrAXNyr+AMsuXPDz93Ic=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172391,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQzcpCRA9TVsSAnZWagAAcpMQAJjRI7kBfc8PwwPfL+BE\nOOePdf9SoNpAFM77bjsH6EdrLxzPrrDGhjiWIeobXb6D9Sm3iOuupyUKFo4E\n+azW0x2fN0ZRf8mcF9Fd5r2TwxTCn4Ix40a/xkviPcxqNKnTDKBfGQbPtpy9\ni4wh8mOJ0EUd71NBt5whSkZSF6yWVYZmMtsPKEwXowK0eWDIXmIYNexzSWDO\nxyjoWrehcQlrG7aHRSSNZJVBK0jDjrnO+DIRJfnqJEEeMghXAudeHw9sb/Z+\n9ybZzw3axr44usUs9eM5YiAtJ6AI5e+BDkrNoSuYLkeODvDZ1qCr+avkrbyo\nlc+r15+/nvAqpbnCRjYimRR/Bo8CNeDPoJPslil0H9++pVaSgos1nS5Oi8lP\nLHYkuzBp5nVlIx4k2IsTDoJKTbwrGBD3AXi1/hs4ozSkrMkhBsA++oqcNrxv\nEWxc3K4J9ot01IQljAaJ8R7Cu15jGV7/+0Kue/cQAhfDJfiqOHm71LPzNvIH\nZmNPJxAXQ9EBI+WUAPQ1raUVY7eL+1pNETsJJdZgRoQE49VlUEMRxjGfY1ap\nSIN5Y0VdJWzDetx2pYAZoMyGMm/lvngWqBgHJ1x5d0szgex+y1WM+wUTDMXc\nh2iDzwpJ1/pIU6Oba4+gqAU0wQ+WZNlxJREtGeMDvLCAIbVEKhr06Chnb+Gd\nSIPP\r\n=9KsQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T12:19:51.809Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.5","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.2-renovate-internal-patch-d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d_1631794985545_0.9416352789867726","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.2-renovate-external-non-major-98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7":{"name":"@balena/jellyfish-test-harness","version":"7.4.2-renovate-external-non-major-98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.2-renovate-external-non-major-98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"953f78efde0c31f21083965be8d826118eeeea6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.2-renovate-external-non-major-98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7.tgz","fileCount":27,"integrity":"sha512-dWCGMyPmeWHzeQ/wyMF8Jt2l5XVIt1T7PK1h2YTQsu1yBtoaBkASK7FTziN75hqyqwhIY/ocHBxoGGG1TJSoIQ==","signatures":[{"sig":"MEYCIQDxdU054UVpr4138ZM1snBL8M+bATNpgvnLLIgoT77uegIhAOI7YzKG+HhnF7ZRzAaW9z8YUvoTkhrTkTY/8SeZhhLP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhQ8P1CRA9TVsSAnZWagAALj4QAIpowjw7Lmt933gJzQmJ\nUMcljB2noqVIim5vmGvaHRvtbHgBRS0Z+2uerzLyinwXDQnLNzoSXfP03pgx\nUZoDP+hsrhFEK3kpZGD/AVT0aNM1TH8R/ev48qCUAKrHCyKUxc3L1a0+1W3c\nG2WoEqhDxIAMJ8BQeFGpsQnvtdn1VUETqy4Ae7QhTBvIVKWRkt7/ucika2qY\nWa+IxsYPxPUk6s1bka+cQDMq69bfJjh1cGPNoBG+Nuj7srKs51Ty99rI23Hm\nLIYp/3wUXLYBU9sbIm+6Sy5G2gCW1r/hFfrMT0nqoRqHKdCcXQ5kpdz09RrC\nrBcL5aU3JNGgLtovFnaOQ2uFEwGhjoJEosVPtZ0td98NyZhIH5sKCC3HDp/i\n8xzqgIWu1w3qNY4u3zJmZgDR+EzCOCFB2XKQ8dAB/zFWEjkovjX5Ozl9Try0\nchifeOD5Cjnb+W8tyQ8Z6yQV8hYdhBPp1D4dlVP7c92bit0rMcMx9YZMEPX+\n/OcbpWdxTSxkA2JKCLTBKZ6SUve1gIr7xeDL11NN7EgRxza4msmqy+y7jrQl\nI2MbdQPZfEXYlnvps9rNOV0qKcy82d7Xte/h9cX5BpxTEv60HFBQckwl+6vh\nImkrasCP+OAfWYkbDSTiEJLZ6pPe6WtBbx9GCf1bh5I2oziEk3FT0B8XQWsM\nlpRT\r\n=t3Do\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-16T22:19:32.461Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.4","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.2-renovate-external-non-major-98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7_1631831029637_0.2988484890393217","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.2-renovate-internal-patch-7118ca891fdac7ef25a84ebe9f7f90ef795fb6db":{"name":"@balena/jellyfish-test-harness","version":"7.4.2-renovate-internal-patch-7118ca891fdac7ef25a84ebe9f7f90ef795fb6db","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.2-renovate-internal-patch-7118ca891fdac7ef25a84ebe9f7f90ef795fb6db","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"adb99d0b1be45f94cc7dfd7dba150eb2b4fd3462","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.2-renovate-internal-patch-7118ca891fdac7ef25a84ebe9f7f90ef795fb6db.tgz","fileCount":27,"integrity":"sha512-eKMHMM53uLJ1KMx0gNnQUg0GgHeUolNzS/zch9F5kmWd0sY9w0/XmFWkueQ8l6sexFYJ+5ijQUWUl8WFndW8jw==","signatures":[{"sig":"MEQCIF1FhEW1PK9u9f0jp9LAcEEbxHnUtcuAbREShXduS3T5AiBwJvqqoaFzq9W5VunJbXGrXp8jAy5H51EvA6IQNW5E5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172391,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhRE3vCRA9TVsSAnZWagAAScUQAJjhMSdUwaKBo1dDvHqB\nqbhQYHwT7VR3dJx6H6Dv9aX/masiA7Z1Hqv5hVtx3K8ZnBYucC/JDjvU/hls\n+VVKB0q3Nm8Z2j3JrVkMGIooqte+A4yUExdTeKIC2bRzcNXJjPQ9hlTXihOx\nU4eoNmpnWY7Afa4vDwR6iucW5RkD+CnmoIqyBrmorOOSwzpv6L9U7Hh14vLC\nBcGtfW1so+WZ3HuvvBAbMAbDgrvmDcAd/JetLCr2eYoNw0qfzCiYVakZxh9t\nnjFeaSnL7ZPDTGvOe9X5r/8SGvaQowTE3pwhvuOBi+6+OANqP0tI+EVuhMwf\nkTTsqMVhPhbHQzxU4+4HGe0oNziGAzT2zeeBN9V78LgWxTHpfRt9V3KxW34N\npFl7jChJ3R3Y11mC/E0EiJ9GBAUXW4XjUNblQucTOnQJ5bS1DlNCWC+dlvE4\nNva+eJ8AVxYDbVr51Oeeeb9ohB0tQvoI/bd0jLWU+ggvFRgI1YdqsMbfOfxZ\nWcnEfPF2vIdaCOUT+IqEX47zDM/aYLH9uLhqVQGgZkCA4y4TTl+IM0g3MUVs\nT7dYLmEj3UVLxpf49GJ6DX8OiuLo4hKqK354r5hvVG7AO/iMvPicoJ/uTruP\n/JLIdm6hOTIneIQURs9ZlEK+aWF/kd49bM2XmuoyzXhDhiRWv1KnNWufGty6\nw0Is\r\n=6mHQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7118ca891fdac7ef25a84ebe9f7f90ef795fb6db","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-17T08:09:22.122Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.2-renovate-internal-patch-7118ca891fdac7ef25a84ebe9f7f90ef795fb6db_1631866351834_0.9514478098441332","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.2":{"name":"@balena/jellyfish-test-harness","version":"7.4.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c766433b70166aac0adae5994714beb319388b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.2.tgz","fileCount":27,"integrity":"sha512-LJdxafCg7czN2czzhCl5+jhdfFTFlDYinUDNX8hqgn7zi332yLFI/7MN2RXNhYjXzxmqSeo8a5Lmg+BSoUOTpg==","signatures":[{"sig":"MEQCIFY+I62ChiAaB5yOVMKEPZfCHKoD+VSKuOD/o2Dou5ceAiAbkSv/Gh/tWk5t+5YmLeZMMJ+nDrLHxuZ5MksdJ4M1Kg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172326,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhRE7jCRA9TVsSAnZWagAAJJAQAJoKM22WWoTO+5MdQEK+\ndkQuvQlZhEuejsEZvYmG0EcWKTrB2fbp/9PF4xV80I0kz8S+gEIu0SE7qgIm\nOsaGEDX+a2nuiZvuSzuZvebIA88IB4prxhTxzOj2RU2nb8yunRGzacw+6e1a\nW7Q2CRHLemcqWmpGp9BrFR8XhD7KTjejl3A1y5FSjlzbEl/xAsyYsbJChy0A\nC4fX1nFVFnCy7wAKfJVK+p1G9MRzebTsMuqJ6C+tX77u+aedpIvFBDZJiVSP\n0lxl2jcivROHsoh4UQv4+RYekvaJIb2rPGu4YCpKudXiiVr/TRAoB+vdxxer\nMJl+8tjkLT+6wdcKYCoV7YX2jQebYQfyykaXAPSdt0l1dIHS0+Zqt6KL9xfW\npBHZMbv2JdakyZ9v3hfIhthotau5MwAU6PhDMaZlq/hWqaZNJ/LatBSv8AcM\n2FzQRptUu4F6HcCoiaGteRwXjIjdTrpXJuGIXJxnYMR0qOx7lk/XnXGoBx0p\nyiokzwlMI+YTahYBHxgRIRsHVIJKsZNUomIyJ809fYhiozdtxANI2PslkBME\nvYZT555qpalbjp54HT4zZ5RxEY0LtSx9McEkzkSPc+L6vBv2gWPMR7FI6SRv\njCpQb1ekOyqgFJE7rasG1siC+xV7QT+DK1mUq6rqcFNZHWRz6m7urHnnQ0ZT\nerSc\r\n=km2C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"379113071bab99b0594872cfef961dc451d44deb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-17T08:14:42.880Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.2_1631866595563_0.9710998224437661","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.2-renovate-external-non-major-c7666b9d31ec8b3143211254e440197c14ee03ff":{"name":"@balena/jellyfish-test-harness","version":"7.4.2-renovate-external-non-major-c7666b9d31ec8b3143211254e440197c14ee03ff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.2-renovate-external-non-major-c7666b9d31ec8b3143211254e440197c14ee03ff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"20b38ac396c0c5708b84b24487b407ffa31d11ce","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.2-renovate-external-non-major-c7666b9d31ec8b3143211254e440197c14ee03ff.tgz","fileCount":27,"integrity":"sha512-omW5pFlLUq/lX+RyaCNH17BVemSO6gLoRSQ3QZL0KNe+S0tgEpn2FjJqlR/ay+/NiQhOJxGLA1C/xD1BMFDZTQ==","signatures":[{"sig":"MEUCIFHsIYEJjGXF2101mqukaBPcA54WeorgNJkcrG4jL2zxAiEAhtXifCPOaDp9XvGEZBvp7DN8FvfScJiairoQkf8EG2I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhRE+oCRA9TVsSAnZWagAAnpMQAJ7k15YjsTj4kYEsm5OS\nB9mIvpngnF6rAgCv2e2SL+1/QJUi0RU+sWp4cePycCYiv/JPDZlaz6XW3aV6\nOO1HcTmvB1SF7t1Q8mZaGaFwLcE4i8QrLueyLEXWHio2uiif1qjI2cCudtbS\nR6HOFVVQwKaozuGcCWy0iFQO9gi8pDEp3No4pgALCZPi3KL8CYNwOOwlWOyD\nseVoznd+AJnftgcyVWwc1B3/14+3l+ZuAqWAz5I7cohXTQ0Ea85jrA6LoyGe\nQyt+pIasz7kNMZ/qK2TrOHeBCsRUPtT3ONRpwEw5gcO1ZIoUECJlvELOgDEK\n7GjSgTVBaZIwQZkcS/Cuh3rsthaZonSpcLa2Qytkr1Qd4P6vrlexebPsfDTd\n1z7fJI7nbIHjvgC1IjFEPk/emaTiwhS43MvMgBPlIzVCXqlE+Bp4oDxhXhBj\nPTDKfkaR0IlCmBaQf/dPHzCzkqd5EDOstOuN17fCfjy5L0ERte26LwYnWxWK\nF7snUcETyJ6NBfonNEMQym3h+kIcL7JMuu0V7SVpBn4/UQEbPuLEl2xct1pt\nQSPcVlv1l/PH7Ql14/AFZDJjjDlaO8h6VgVHvg8/bMqdYCVVS/aMx9TX4WRv\nlCddG6ue37eY0LmKViBTAZM1Y5X1V/4i0EkYsuiLSGv4tjC4gQD3CscQX+8/\n/z09\r\n=kNm6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c7666b9d31ec8b3143211254e440197c14ee03ff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-17T08:15:42.567Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.2-renovate-external-non-major-c7666b9d31ec8b3143211254e440197c14ee03ff_1631866792809_0.8485982047341913","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.3-renovate-external-non-major-d6255ff0c75d66892300edcf4f2b8bc7025cc0dd":{"name":"@balena/jellyfish-test-harness","version":"7.4.3-renovate-external-non-major-d6255ff0c75d66892300edcf4f2b8bc7025cc0dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.3-renovate-external-non-major-d6255ff0c75d66892300edcf4f2b8bc7025cc0dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8c6bcf64571d72189cb94702474769d36e1e65bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.3-renovate-external-non-major-d6255ff0c75d66892300edcf4f2b8bc7025cc0dd.tgz","fileCount":27,"integrity":"sha512-mbP0qewD+uiXNPXM8+OPJG+RNuX2oc1awuQOdZOPjRBLIvaLJ+0MyKjLAIhYZZhj95s2tISCMt8C+l/NmsTvKg==","signatures":[{"sig":"MEQCIF+ori0EaEgS/tc1GVnjFYXGlCljUOI6VjSWBbbf9zUFAiAQ4yRehzojyDuxoJ5XtNMmgFJvtBdpA/D4BMZEwZQ8Jg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhRFA2CRA9TVsSAnZWagAAetYP/19/nYCfPg/IzeOpO2MZ\nJ7sGGzwfjwXztWuqNtfgHRsS2TOd2+AoQZWRbDmRmzBmrNMsdGnWdkeNTj3T\nHogE5v8vhW8Lt6z5pXdKJ+9JyWslyE52uFCQXg4zG4Z1PFuhMChKnWn0oBIs\nt6l5Q/R4dWonhpK9A3ZyDad0IlryzSvRheg11GZAvnN6qPN5TqgMMEF1yywp\nUCcjFrGO0+A3G1FnXMHPgO2QiOyV/77x5/7Mm49lkGNhilD2XmbnTFdoArzU\ndi6J1SthiTo8riECldcpvQuhyFcHqmPifgSD9T4sQhmwp/nezKXR8IgWAM6A\ncg4hq2Kp/TzKhdb2D5FnFxIi2QQP5AEa9C60W4x9MBQH/06zOLEr6IpmtBSf\nGLb3V83rfm6e4yx3NQOi+GLK5G0JMUA30WK/VhUbkqF2krE4+5rvxJRyD6e+\n5dVtfift2/3NL61VeFliKAjoyqvhIwiquTUjhYHyZ2QFsNLxVkz2jo7auvhb\n7tlc2ehp2QsZhEDdHtsTq1jJNKm+hsiAkJZ96QDJDEAhcvlJf9TMUkyFouwO\nuaVyRNzt4Bq15sw2A9S6Dxm37+fUpRMYyKZe77PELpm0ITMt7aWM+7j20xPl\nqlX/zQY7MupBKpD6C7nxrSUspFXSAQb52OH3arSeINrRjuav/wWyc81k7ly+\nCSNP\r\n=2bEK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d6255ff0c75d66892300edcf4f2b8bc7025cc0dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-17T08:19:01.535Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.10","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.3-renovate-external-non-major-d6255ff0c75d66892300edcf4f2b8bc7025cc0dd_1631866934326_0.07197346191494458","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.3-renovate-internal-patch-31760c707d0a7eb0125d87cb766869562ee9ad29":{"name":"@balena/jellyfish-test-harness","version":"7.4.3-renovate-internal-patch-31760c707d0a7eb0125d87cb766869562ee9ad29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.3-renovate-internal-patch-31760c707d0a7eb0125d87cb766869562ee9ad29","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6578af3c70e9c786eb90aa3409f66a9718ca07b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.3-renovate-internal-patch-31760c707d0a7eb0125d87cb766869562ee9ad29.tgz","fileCount":27,"integrity":"sha512-asBdijE+6wvQxtTL5zlHBEdJSEJ5V4H6hHuk/PUKWCyfR+oa0GJioqxeNR8Lko4bO99RFQ40besBAgM2i07hzQ==","signatures":[{"sig":"MEUCIQDGKa44PQEvph7WLAiapi5jvm5yo9KQJVuDuKQWDCFgkAIgKfU9WKLGJo3KaQNUKIWYSVHCWMnLEgetqix7a7YJCOc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172497},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"31760c707d0a7eb0125d87cb766869562ee9ad29","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T02:05:21.626Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.11","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.3-renovate-internal-patch-31760c707d0a7eb0125d87cb766869562ee9ad29_1631930944794_0.22014684577665644","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.3":{"name":"@balena/jellyfish-test-harness","version":"7.4.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff3553dd60dad7553d19369441441c59bf79c5bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.3.tgz","fileCount":27,"integrity":"sha512-mvCnTjVyE41ND8pwxmGkB2VHm+ZZmSDumYujml71JtFP2hME3E+ADnYe3AR1+eObRAAVGRC3BhtVnwFtIRSLKw==","signatures":[{"sig":"MEQCIGLphm41N7eKSU4GfKhmhkXXCExkCgGORDQ/EdDXx7XFAiAezrJysGAIzYuuXb4N3qtoF0U1EnyZ+v/W34P82c5mlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172432},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8937ef5173913996fb48ab6a5ee89bc80451c75e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T02:11:52.712Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.11","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.3_1631931228366_0.4471535462084022","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.4-renovate-external-non-major-76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436":{"name":"@balena/jellyfish-test-harness","version":"7.4.4-renovate-external-non-major-76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.4-renovate-external-non-major-76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85ca75947946981059eb7f8c06b8472a03bec528","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.4-renovate-external-non-major-76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436.tgz","fileCount":27,"integrity":"sha512-3txbKmdhTG2oMlyorxQJBlGzv+XLDwlfzltcOHn/bxXyace04voCDUE1nW8cCNuWNxed4iNLb6EZSksWamMtIw==","signatures":[{"sig":"MEYCIQCzyXIL1iPIVUVBuGU1u1CvRcJXO9BSqGDClnt/y3bXMgIhAObUGWej+1/ppDu1Ef1+QH9w/3yxXcify/i8tVJpc2Ir","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172578},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T02:15:28.885Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.6","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.11","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.239"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.4-renovate-external-non-major-76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436_1631931595943_0.5093347441845755","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.4-renovate-internal-patch-d6e85975c7f276c4a66f5a40ffbaf24813669e15":{"name":"@balena/jellyfish-test-harness","version":"7.4.4-renovate-internal-patch-d6e85975c7f276c4a66f5a40ffbaf24813669e15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.4-renovate-internal-patch-d6e85975c7f276c4a66f5a40ffbaf24813669e15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"da2a15fc19c879f1329c1302899e7f8e965f3702","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.4-renovate-internal-patch-d6e85975c7f276c4a66f5a40ffbaf24813669e15.tgz","fileCount":27,"integrity":"sha512-r+vH3LHwqBjagJ9axBGpYXR8KryWeoSOIpHmLh5QQtVYTWFUXgQEzEArLwDxmm0QaID6e4pb7sSWRnRS9M7UAw==","signatures":[{"sig":"MEQCIAaRUrQ/62TbHeIobYjoX+KBQlQDO0NhxHIBqdX1QlDUAiBoCfCyGhRDHGr9Ou/kZnBl6K+slQSlAk3CeXfJ+2mTyQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172570},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d6e85975c7f276c4a66f5a40ffbaf24813669e15","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T04:06:32.222Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.7","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.12","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.4-renovate-internal-patch-d6e85975c7f276c4a66f5a40ffbaf24813669e15_1631938206760_0.6614777497347746","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.4":{"name":"@balena/jellyfish-test-harness","version":"7.4.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"48eb622173043535241f33635c50f650a0446de2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.4.tgz","fileCount":27,"integrity":"sha512-8LoPNftlVxYy2ZFh9Va+K6KWgcUgBPvbipft0mOFHdMRcF+WA++wJ3MAQ8yHor8tQA81Uz8j6gRS917jiKFbCA==","signatures":[{"sig":"MEUCIHLcsF/sPVm958NFyLXV/eS7vf3b37TeTXAoXU5q+2YOAiEAvz7zK9i5q9NEh6qJpG2mdzaBxrEsPGZbFK1O0RpmcCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172505},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3adce5bc60ac75747eb748cc5a131bbc32231f07","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T04:13:22.502Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.7","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.12","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.4_1631938514428_0.6891121432634477","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.5-renovate-external-non-major-94f641d8d811ed9fdddfe401f74cac608619209f":{"name":"@balena/jellyfish-test-harness","version":"7.4.5-renovate-external-non-major-94f641d8d811ed9fdddfe401f74cac608619209f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.5-renovate-external-non-major-94f641d8d811ed9fdddfe401f74cac608619209f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d33b2c0f048f482d020d6532b33a10fd5cf40cb1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.5-renovate-external-non-major-94f641d8d811ed9fdddfe401f74cac608619209f.tgz","fileCount":27,"integrity":"sha512-rIYjm2uqA9l77coSHqpyXZDBhfgwUa0ZCjWQsVh9ru/594WYkfPiFZUtG76NrzsukBZi3bKW9wTEZ8lgUzS/JQ==","signatures":[{"sig":"MEYCIQDJf5kt6/HJO/Tu/SYuiLQLciix9Rx5XKOu4IETaTbgrQIhAMcRt88ZedB7zBp7+zXXNgxhrEUjndxHfqacsoRGw7Tw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172651},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"94f641d8d811ed9fdddfe401f74cac608619209f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T04:15:53.533Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.7","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.12","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.3","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.5-renovate-external-non-major-94f641d8d811ed9fdddfe401f74cac608619209f_1631938826125_0.6500669753880237","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.5-renovate-external-non-major-0766fa482a4e043445b4ba15fd82ae3102adf425":{"name":"@balena/jellyfish-test-harness","version":"7.4.5-renovate-external-non-major-0766fa482a4e043445b4ba15fd82ae3102adf425","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.5-renovate-external-non-major-0766fa482a4e043445b4ba15fd82ae3102adf425","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b9cf1a319ffd085f731effc14472f5b4720a62c8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.5-renovate-external-non-major-0766fa482a4e043445b4ba15fd82ae3102adf425.tgz","fileCount":27,"integrity":"sha512-yQyiIy70NRqTgSf6iZIuHlQpRZcLS6fxDvrps4dWD0ZamJrufL/8B7JqsghNDeYtA1yFnvFbLgykw/RZEcGxxQ==","signatures":[{"sig":"MEUCIG2Ztuz0C/xzZAZuxBN6WF56+xU644SbUkEtndL8K3CjAiEAgELFLCb2xHNg1jRrxFGT8avHwB3sAnuOGef8pFCZIeY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172651},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0766fa482a4e043445b4ba15fd82ae3102adf425","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T19:51:20.321Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.7","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.12","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.5-renovate-external-non-major-0766fa482a4e043445b4ba15fd82ae3102adf425_1631994901989_0.5854219774098504","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.5-renovate-internal-patch-445eff9debbf897b0e951e96fbd38a58d6fd3eef":{"name":"@balena/jellyfish-test-harness","version":"7.4.5-renovate-internal-patch-445eff9debbf897b0e951e96fbd38a58d6fd3eef","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.5-renovate-internal-patch-445eff9debbf897b0e951e96fbd38a58d6fd3eef","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"974ddc156e55f0f8e199b77328cb52b8a724761b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.5-renovate-internal-patch-445eff9debbf897b0e951e96fbd38a58d6fd3eef.tgz","fileCount":27,"integrity":"sha512-KIqJrM7MIPbpNQ/iJaa2hIt+V+TLljzFH50/s3sZ8M100kd/Hxdrh+LTpha8X8ijnDTDHIwuxVDGDW56TFC0iw==","signatures":[{"sig":"MEUCIQCJ2Fi05p5ItsnOQCj4u0XwwoFFzmug9FlVA4au7hUl/AIgc+5VuHnifsWsvCzY+oeKgM6+rv72Bh7b94tlFzP+70M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172643},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"445eff9debbf897b0e951e96fbd38a58d6fd3eef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T21:28:31.266Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.9","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.5-renovate-internal-patch-445eff9debbf897b0e951e96fbd38a58d6fd3eef_1632000697060_0.09274893848014631","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.5":{"name":"@balena/jellyfish-test-harness","version":"7.4.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d631f781feba8d60c84cd3fb904dd26eb88dcbf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.5.tgz","fileCount":27,"integrity":"sha512-mc841fZvch6gNPMO1ktK8S9UnrVTkXyHHGVdAWFX7gU9QV4XbqzfHsJ4NLOvYgHKxbvlcZEwUFycBXeuDB+7CQ==","signatures":[{"sig":"MEQCIGIBjZUhvCmQ50XisbbgRPkZeFmMaO8RjutkE6bSFhAPAiAFy8Wv+QKt5vXzk9zI9LR070nP9AE8GTjN2hTIGSQH8A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172578},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4a510536aff54546762e38a5012c897db712464e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T21:33:53.314Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.9","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.5_1632000956835_0.18916364478263015","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.6-renovate-external-non-major-d25323bcd7521ce084ee4f3d204d6a5032f21438":{"name":"@balena/jellyfish-test-harness","version":"7.4.6-renovate-external-non-major-d25323bcd7521ce084ee4f3d204d6a5032f21438","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.6-renovate-external-non-major-d25323bcd7521ce084ee4f3d204d6a5032f21438","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba4fd14f0bb226593194120c57a1c703fe6f18c6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.6-renovate-external-non-major-d25323bcd7521ce084ee4f3d204d6a5032f21438.tgz","fileCount":27,"integrity":"sha512-TUPQ4STudL3J0MJNWU6plRQlC2+Z9cMgFTwEgRyhVr0riYb5yHyuMq1yvvYD8TphrVxWNtrRGPGlDLFf59p4sg==","signatures":[{"sig":"MEYCIQD5Q3gEM8NPaNOM9QrDrYtZQAheBdJdsHiknhpUD2FfLQIhAIwjcMBDIT3AoY3G7WRmpknZkYFYjhLN4z+TPqqeMiXi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172724},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d25323bcd7521ce084ee4f3d204d6a5032f21438","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-18T21:36:02.547Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.9","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.6-renovate-external-non-major-d25323bcd7521ce084ee4f3d204d6a5032f21438_1632001154944_0.06930722001025869","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.6-renovate-internal-patch-3d2bd71ee0b23cc308d77137fd290a1d4a92d764":{"name":"@balena/jellyfish-test-harness","version":"7.4.6-renovate-internal-patch-3d2bd71ee0b23cc308d77137fd290a1d4a92d764","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.6-renovate-internal-patch-3d2bd71ee0b23cc308d77137fd290a1d4a92d764","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9a17b732d1285ad2a59ff36cd066425438447b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.6-renovate-internal-patch-3d2bd71ee0b23cc308d77137fd290a1d4a92d764.tgz","fileCount":27,"integrity":"sha512-2eJjcRNVOsdKsy6AxBJ3XF68Hnj+/dATb/JUp5djzRSfDllanYNIhxtjqIdM/9xK8KngQFcDpQ/wWx2JM2FdzA==","signatures":[{"sig":"MEUCIQDLRvkZw921gg/56vxkCXBhNIxvcii/hRIFqSg7dKw5egIgem/OUYDu6+QkSoTdB4hhdBnzwCXpc8VWzg/nEKtJudk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172747},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d2bd71ee0b23cc308d77137fd290a1d4a92d764","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T10:51:44.600Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.10","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.6-renovate-internal-patch-3d2bd71ee0b23cc308d77137fd290a1d4a92d764_1632135365420_0.4250767627336707","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.6-renovate-internal-patch-fc3b449453e54f14aa095a046ebef57493c4fc67":{"name":"@balena/jellyfish-test-harness","version":"7.4.6-renovate-internal-patch-fc3b449453e54f14aa095a046ebef57493c4fc67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.6-renovate-internal-patch-fc3b449453e54f14aa095a046ebef57493c4fc67","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b19a9a4cb2dbc1bf327456e1f9c6277915136111","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.6-renovate-internal-patch-fc3b449453e54f14aa095a046ebef57493c4fc67.tgz","fileCount":27,"integrity":"sha512-8bKQYewXHDVMfGXjIE5B6H0U3fzLsQtPAP8+QITuUS/mvcR2qvsfh8lKENqpVISUXkMnJl8JZrcEhO17otrmrg==","signatures":[{"sig":"MEUCIQDIsgfuIEM/q8mHzalFzeR1o65BRKzUy/gS1zOtLGiL1gIgXoLDqXveoz1kDBEP2jS5cVH6BlvaXEtdMoF73WCsI1U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172747},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fc3b449453e54f14aa095a046ebef57493c4fc67","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T10:57:22.324Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.6-renovate-internal-patch-fc3b449453e54f14aa095a046ebef57493c4fc67_1632135675414_0.8702525445049589","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.6":{"name":"@balena/jellyfish-test-harness","version":"7.4.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97d6f2f798883c1a4a094eb4f8afbb2aff4c5861","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.6.tgz","fileCount":27,"integrity":"sha512-/rXHU/kOx+htMLsWfXr+ka/gij8xHiYLaaZI3HB81prf6D3cyiHGjpyzvfmga8getWpNH3DkcgQpxdn6uaDeeQ==","signatures":[{"sig":"MEUCICXtuRhHoz/tfDLyuohYGrvJPihBFM8cOlAvJSF/rqR6AiEAyalvsFYK+uupLVLYW8RxL0+HeFneG70Zf6iKV8tNr6c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172682},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ca2a07d30a48bd9ff61b4446cb2deb50dee93f6e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T11:03:13.493Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.6_1632135897591_0.5136361252198101","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.7-renovate-balena-jellyfish-types-1-x-e6da77b11a0e22ec4020fe2c4d12bca2eca93b59":{"name":"@balena/jellyfish-test-harness","version":"7.4.7-renovate-balena-jellyfish-types-1-x-e6da77b11a0e22ec4020fe2c4d12bca2eca93b59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.7-renovate-balena-jellyfish-types-1-x-e6da77b11a0e22ec4020fe2c4d12bca2eca93b59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7feaed0e068ddb1326303750c681ee5c0a3cefa0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.7-renovate-balena-jellyfish-types-1-x-e6da77b11a0e22ec4020fe2c4d12bca2eca93b59.tgz","fileCount":27,"integrity":"sha512-jaxKpAnn7w0jr1d76Gjrzw7X2i6e991Wgc7pJA5C7xtaVn2meQgDx87NAeJJGiVv6rY1kCTL34RqIzAWvglW3w==","signatures":[{"sig":"MEYCIQD6xiZ/6czvG35YJAehE6crV8XkewJ5d884J40Lo/FsPAIhAJoSTnGlwxXqc9uPTA+Jrs1gXn4ErKhJKd+nAWI1uwDk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172862},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e6da77b11a0e22ec4020fe2c4d12bca2eca93b59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T11:05:29.417Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.14","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.240"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.7-renovate-balena-jellyfish-types-1-x-e6da77b11a0e22ec4020fe2c4d12bca2eca93b59_1632136148244_0.7432428040608656","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.7-renovate-internal-patch-56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e":{"name":"@balena/jellyfish-test-harness","version":"7.4.7-renovate-internal-patch-56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.7-renovate-internal-patch-56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"730d246160413047bd3bdb8ebca367b583c60238","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.7-renovate-internal-patch-56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e.tgz","fileCount":27,"integrity":"sha512-DM504WqFgblWyywVDvVKn0QU2rC2hAIoeWld4Gdkm4OZXaed7KJsgrw0PQ0QLiFsKKP+aJN+6ctqvIS9LXt/BQ==","signatures":[{"sig":"MEYCIQDuEz+tvvH6+3uY6bef1gyupt+bJaH7kFd3diOtwBatXAIhAJB/L0+73RVfCumfUAexl/o/Cfij2tKByGWOVyUrfQgz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172820},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T12:26:21.863Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.7-renovate-internal-patch-56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e_1632141018371_0.9969173515834981","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.7":{"name":"@balena/jellyfish-test-harness","version":"7.4.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"44b12fccf52d437d9513a378cc34a724c7168321","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.7.tgz","fileCount":27,"integrity":"sha512-IcWXpsq81gm+QznsDx9vB+epau7+Z2nmVa4TOpagLlGhaPrJZpWYfepf19FyRgegqLuwaf0a+/0QTxYq4iprgQ==","signatures":[{"sig":"MEYCIQD+kNwKbnQO9hccD0RPpR15c8691xEmFKZVcCjWtQysoAIhAMg+uKDDi8he3P3m5/uIhroC5sSrPNfipuIW5Yv0JTs5","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172755},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e1c9b41898c58135ef1f9a0caba5570c034d6859","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T12:31:51.940Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.7_1632141235860_0.7993311094669755","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.8-renovate-external-non-major-2794fb2c08ff24669158a12320568dd377917fa4":{"name":"@balena/jellyfish-test-harness","version":"7.4.8-renovate-external-non-major-2794fb2c08ff24669158a12320568dd377917fa4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.8-renovate-external-non-major-2794fb2c08ff24669158a12320568dd377917fa4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9fc3b54308820219f038cbb69a804aa7569b39d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.8-renovate-external-non-major-2794fb2c08ff24669158a12320568dd377917fa4.tgz","fileCount":27,"integrity":"sha512-ZHnQVsYxZr3tufAtqi88YsJ+TZDC1/wnDNfct5ZLIU4qqTnQpVm1toOFdz6VMmDBIlJH+NYE9VQuslhr0v76+g==","signatures":[{"sig":"MEQCIHxY/Sk/PNK71ULI7PIjyptBvvafsYhHd0PqVkRx32DmAiB/sXygeVRhnpnSUurkhjpIJrn3FbNxkEw/goOSI87iFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172901},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2794fb2c08ff24669158a12320568dd377917fa4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T12:35:52.916Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.1.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.8-renovate-external-non-major-2794fb2c08ff24669158a12320568dd377917fa4_1632141530526_0.3332582623504339","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.8-renovate-balena-jellyfish-types-1-x-00abd511045c42bbb3f1e17afccb68847a92c0f1":{"name":"@balena/jellyfish-test-harness","version":"7.4.8-renovate-balena-jellyfish-types-1-x-00abd511045c42bbb3f1e17afccb68847a92c0f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.8-renovate-balena-jellyfish-types-1-x-00abd511045c42bbb3f1e17afccb68847a92c0f1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74feb7fbbf8e414519d2373048e9bf900ad20e0e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.8-renovate-balena-jellyfish-types-1-x-00abd511045c42bbb3f1e17afccb68847a92c0f1.tgz","fileCount":27,"integrity":"sha512-JKWgLXhlOTronQukNwhtprZ30PeS1bayvys224pNQFnQNRaaCnO1prhE5XFCLVowOfsQSH0y/MnMtP4llfJJqg==","signatures":[{"sig":"MEUCIQDAouaXeE0myapmAyzDtX1EcDTzXmdxnZwJwMB0Kt6lKwIgWb3UHO/IYUTgR4SQ+sr2Qne/hoAsYB7ANOYYA7q0Fig=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172935},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"00abd511045c42bbb3f1e17afccb68847a92c0f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T12:38:03.782Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.8-renovate-balena-jellyfish-types-1-x-00abd511045c42bbb3f1e17afccb68847a92c0f1_1632141690018_0.3899557244682752","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.8":{"name":"@balena/jellyfish-test-harness","version":"7.4.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30b3cd67a505ee3b6e0b05786d147d849dbb7529","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.8.tgz","fileCount":27,"integrity":"sha512-3evWu1eE+oBxoLv8Ty6jJqyym1uWA2Sr9pb8tNRmM1RH0M5lTpCoCpTdp4shps+yc0N9H1IrZ5uCsTRwgbym4A==","signatures":[{"sig":"MEQCIC1ntm3RNKX/f+8MaGU1HQa25AIlzPyffS8baT0EdJNGAiBvBviF4A8ifO9xK2EUYI5DmNUz2++UmsKJ7QooUoLFdg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172858},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"53a9e6740981ffd1da788cc4036c40dca175c3d0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T12:43:22.634Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.8_1632141916402_0.12725642302545337","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.9-renovate-external-non-major-a4213d1679f153e05acc20c67cdbf8f501727e3e":{"name":"@balena/jellyfish-test-harness","version":"7.4.9-renovate-external-non-major-a4213d1679f153e05acc20c67cdbf8f501727e3e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.9-renovate-external-non-major-a4213d1679f153e05acc20c67cdbf8f501727e3e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"199e4bbaee95a23fca14cd660c539b97bb832c66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.9-renovate-external-non-major-a4213d1679f153e05acc20c67cdbf8f501727e3e.tgz","fileCount":27,"integrity":"sha512-QNmVYmfCpQtqO9iukeGIqOHfgqitnpr7cakKNid0e1j4IYvuNlw5SOpdJkdxtgc/EaLc2TNwOC7qatP8ggZzQg==","signatures":[{"sig":"MEQCIDXeJd6Y+Ex3vGcDcfB9RNa11E15unIUZasu2k97hL87AiA/GL4Gepg/xR4q6HW4ToaYgvbztcut1MNSkLbsoJ+Pew==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173004},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a4213d1679f153e05acc20c67cdbf8f501727e3e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T12:47:21.919Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.9-renovate-external-non-major-a4213d1679f153e05acc20c67cdbf8f501727e3e_1632142211735_0.8938996388061526","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.9-renovate-internal-patch-2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04":{"name":"@balena/jellyfish-test-harness","version":"7.4.9-renovate-internal-patch-2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.9-renovate-internal-patch-2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"018a8151ec926d3777dabed72ab8f4f4b98b80b2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.9-renovate-internal-patch-2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04.tgz","fileCount":27,"integrity":"sha512-SNYjNiGzpmCJxhdWQjNfFa0DxuiKfeabLp2jssVDkZSoX4uo0t9WiJj7NE5Fw+awvb7jL5E77nLJzOOC+gKK3g==","signatures":[{"sig":"MEYCIQCANS5UoK7K0pZDM+zFf+OmOCBe5abwrduhi0Nyy/r5WwIhAOdgknPhmd2FqOSFHiRc2c8rwEMDINTYEEBQyN9LbpYd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173029},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T14:03:21.317Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.9-renovate-internal-patch-2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04_1632146823098_0.8099772241425756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.9-renovate-external-non-major-8d7a328913c833dd53f55c1fc15c9669481cb97f":{"name":"@balena/jellyfish-test-harness","version":"7.4.9-renovate-external-non-major-8d7a328913c833dd53f55c1fc15c9669481cb97f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.9-renovate-external-non-major-8d7a328913c833dd53f55c1fc15c9669481cb97f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1ad6a23f147f1f979a524e69bf198ace71ff4c6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.9-renovate-external-non-major-8d7a328913c833dd53f55c1fc15c9669481cb97f.tgz","fileCount":27,"integrity":"sha512-7/nUYp9VrP1M18HeAhMgEZ7Jc3hm1+4frT5yuHkelSezMt2rjtJA7vN3PmOoD3l7jjj+psJsbRLvKgK8dT1g7g==","signatures":[{"sig":"MEYCIQDv+GCMVxM2s7ot87beOcbzyzjh0m6qOiYvlILEx8UyZQIhAK1IY1F/SnJ88/vmwHCu0Ltw68wXLHtwKYxNh7Zl903N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173004},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8d7a328913c833dd53f55c1fc15c9669481cb97f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T14:04:02.951Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.15","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.9-renovate-external-non-major-8d7a328913c833dd53f55c1fc15c9669481cb97f_1632146839737_0.7646367163786452","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.9":{"name":"@balena/jellyfish-test-harness","version":"7.4.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"19d1fdbf3692a9ad2d6ea5ad52e14dac150da6b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.9.tgz","fileCount":27,"integrity":"sha512-nec5wxfndooXt2b8tWSKQjiFFZIDR88nRdK4ennv40YWx2kWPZEN8SsjG7K2EzLotuzxIS52RH/XBpR4aDbj+A==","signatures":[{"sig":"MEUCIQDfqcYm600bczBx6+yTFQkfmrtGPwRpLXd3tiIE2AZLLwIgFWzZpmsrG2bOIVzQxQdlr8YsENXfVw9iPkgfFgnNWfM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":172964},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d400067f73c54e605388c3f80718422e4734300","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T14:09:22.074Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.9_1632147084359_0.2865403151564645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.9-renovate-external-non-major-5e218833188ac7a7d9eace01c907fc1a9fe96bd9":{"name":"@balena/jellyfish-test-harness","version":"7.4.9-renovate-external-non-major-5e218833188ac7a7d9eace01c907fc1a9fe96bd9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.9-renovate-external-non-major-5e218833188ac7a7d9eace01c907fc1a9fe96bd9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0956846ae4ee855323006a642f22f37829f228f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.9-renovate-external-non-major-5e218833188ac7a7d9eace01c907fc1a9fe96bd9.tgz","fileCount":27,"integrity":"sha512-Jih4SmNFq+OWk/brRCftV9x211+9v9kJLaKZ3SAo6oxYoDPRJZBXkmPEbA+L5EhaEX3EVNbtqXRUX3kyFPopPQ==","signatures":[{"sig":"MEUCIDGNC5eRHJZCZosr5o9UEP6IxPKfwLV9RttzJ8j28PggAiEA6v6dr0QbqY68TsKsbSaDtw43hvMKcmCqMS7CZNiJeN8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173083},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5e218833188ac7a7d9eace01c907fc1a9fe96bd9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T14:10:51.951Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.9-renovate-external-non-major-5e218833188ac7a7d9eace01c907fc1a9fe96bd9_1632147261095_0.15644723488629841","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.10-renovate-external-non-major-df6855774370b48f265b7bca857cea2f2b5aaa04":{"name":"@balena/jellyfish-test-harness","version":"7.4.10-renovate-external-non-major-df6855774370b48f265b7bca857cea2f2b5aaa04","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.10-renovate-external-non-major-df6855774370b48f265b7bca857cea2f2b5aaa04","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9b37f50995e1e0d1ff2e25ec07e57519a972a78b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.10-renovate-external-non-major-df6855774370b48f265b7bca857cea2f2b5aaa04.tgz","fileCount":27,"integrity":"sha512-Fk7EFVodNZhPRnHkSAeJQM/Vvx2onuTY80epES4IpSrrpborF4pEri5ol/fYHXwzI2mFLLiyw9T2RQT2CVBKTA==","signatures":[{"sig":"MEUCIQDB9N3hRH5ucCCkNh5tHocWJrjLjnEWRI8xdCb9tz+H4AIgP7WKbRccmXhGYq4J8UhyEhpRqN4Zt2/vM1zKB9eMsB0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173112},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"df6855774370b48f265b7bca857cea2f2b5aaa04","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-20T14:13:38.419Z"},"_npmVersion":"6.14.14","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.1","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.10-renovate-external-non-major-df6855774370b48f265b7bca857cea2f2b5aaa04_1632147494285_0.8213844215771344","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.5.0-add-action-test-originator-9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f":{"name":"@balena/jellyfish-test-harness","version":"7.5.0-add-action-test-originator-9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.5.0-add-action-test-originator-9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"085e13946c6251d7589b0d0dc2868879f4f557b8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.5.0-add-action-test-originator-9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f.tgz","fileCount":27,"integrity":"sha512-6ogOml4K1F2EnU6SsZOc+9FAooaepOg96mIjErBMGh0UnJPBHi5wPaTtgPeYiQKzeZNgOylx7j5DjJ56PYdWaw==","signatures":[{"sig":"MEQCIAyz7X2avZpxHHVYhMKpzus/DhwEbbkIZe7V2d463ya8AiAOp5vCYrNFf+rb5PHJ/2B0/x3iHTqFb4dfyQmTFpP+iQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174286},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T05:04:01.229Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.11","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.5.0-add-action-test-originator-9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f_1632200854985_0.23498810679317983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.10-renovate-internal-patch-db11a08d28e95c656bec9621c6f613b4339d37ee":{"name":"@balena/jellyfish-test-harness","version":"7.4.10-renovate-internal-patch-db11a08d28e95c656bec9621c6f613b4339d37ee","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.10-renovate-internal-patch-db11a08d28e95c656bec9621c6f613b4339d37ee","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e71ae379fabec80f3ecaf582bbd84f0a9096c29a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.10-renovate-internal-patch-db11a08d28e95c656bec9621c6f613b4339d37ee.tgz","fileCount":27,"integrity":"sha512-nYueiOkknNFSn5LslOyLnLiOCRd63q7KuauPVo16Ch5JAqVzCkbFO3cJJZnqwp9t8woc6ztUEPZZtPENVCIc8Q==","signatures":[{"sig":"MEUCIEzt0UW/1tJyeK3vasp053+WcSi6Tm9aRkTsBpJaWcpSAiEA0sE5UUhKAIKK2PBV3x1N6FW1ufsdfek9ZJiLiaOBqLc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173134},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db11a08d28e95c656bec9621c6f613b4339d37ee","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T08:09:03.965Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.10-renovate-internal-patch-db11a08d28e95c656bec9621c6f613b4339d37ee_1632212052065_0.7797314774001469","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.10":{"name":"@balena/jellyfish-test-harness","version":"7.4.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b736c958943572bcfb2b5aa17626e7461a6a7d7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.10.tgz","fileCount":27,"integrity":"sha512-TaNrhfMsM84MqJcNc7hQ16fz51gD2xcPhtUY/LaZXdPdwXdTMvXOXKnqpnmndj2JjZFauYDCsNn5PGImSqRGBg==","signatures":[{"sig":"MEUCICIvJgqop+tKaRMscjaUxC8+h6+4xJZ7sQJpSnMC7HnCAiEAw7o17LUoIYWq3T4rQ7ZcvkN4ajVgZwK+W/W8zplM9WA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173069},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ea678db1b8427786c10ebe7f26d5a5b7027ac389","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T08:16:12.769Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.10_1632212289868_0.13485443734225","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.11-renovate-external-non-major-57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8":{"name":"@balena/jellyfish-test-harness","version":"7.4.11-renovate-external-non-major-57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.11-renovate-external-non-major-57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8b1d4d668ed3f64c884c33392d9c9f1b7a2ddf2a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.11-renovate-external-non-major-57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8.tgz","fileCount":27,"integrity":"sha512-GULV+k3M00ONUd1015ujC2MFZRobd8siN8tMFo9RernzUXVobpbagI9KKqutdpjkggrZcOKFro5JpARltbQINg==","signatures":[{"sig":"MEYCIQDaqCZpK0l7bK6ShNhXbb15J2eRDpvsrA65h/AynyrYXAIhAITogJ4zaWKfa2VYQ+AEdpDnuLhzFwm2Tt2MMTNInOf7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173216},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T08:21:22.295Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.16","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.11-renovate-external-non-major-57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8_1632212747942_0.7300460298692295","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.11-renovate-internal-patch-2deedc7bdd4471cb86413d2abb5e221e03c6f60e":{"name":"@balena/jellyfish-test-harness","version":"7.4.11-renovate-internal-patch-2deedc7bdd4471cb86413d2abb5e221e03c6f60e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.11-renovate-internal-patch-2deedc7bdd4471cb86413d2abb5e221e03c6f60e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ceec0eb16ae44797f07ea194ee1fba6922a9f285","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.11-renovate-internal-patch-2deedc7bdd4471cb86413d2abb5e221e03c6f60e.tgz","fileCount":27,"integrity":"sha512-BBhHL8gbBRxs/oO9QyembMlw/Dx8897qqzXkvVDnSe2DZit2AAb3ixC7h9Qi4xqrh61DbfvAf6BQZRuUeJ3HWw==","signatures":[{"sig":"MEQCIFqSZFK1WWtfRH5w4ge9SJfJyM3sSWB0K4nMoUcQ2NYLAiB5Kt0Q8IS+cSm26c2bCClH3CUGAWmYuUZ1NQRqQGSArQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173241},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2deedc7bdd4471cb86413d2abb5e221e03c6f60e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T09:39:59.892Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.11-renovate-internal-patch-2deedc7bdd4471cb86413d2abb5e221e03c6f60e_1632217454357_0.083411925906834","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.11":{"name":"@balena/jellyfish-test-harness","version":"7.4.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2520d9bf6c6fc8bcb8244582bb8a7ff7c086fcb9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.11.tgz","fileCount":27,"integrity":"sha512-cB8g6EFm9d+4N2UVvl7QBAX2HJbm77Bjf2ollE/nh4ihyZ6fbLAw6CUEBYw4QFcstbrl5HhJeus5VHwb/HBYuQ==","signatures":[{"sig":"MEQCIFSaWAMA0E2dbltqTRF0aV3ZmKXMgd31+hsvjOSnT3foAiBMQlQHsHuI0rCLDJ3UOowF1Bi/Am66tQdd1GJgc6rrBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173176},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f05320d759cfa150a1cc78f345cb2a9eff0934da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T09:45:18.409Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.11_1632217644958_0.1971698151665051","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.12-renovate-external-non-major-ad969f975a43b7771bfefa7351b37dfd86702d27":{"name":"@balena/jellyfish-test-harness","version":"7.4.12-renovate-external-non-major-ad969f975a43b7771bfefa7351b37dfd86702d27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.12-renovate-external-non-major-ad969f975a43b7771bfefa7351b37dfd86702d27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d356259cd2f5272f482e0b7ae5a186f25c240cf6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.12-renovate-external-non-major-ad969f975a43b7771bfefa7351b37dfd86702d27.tgz","fileCount":27,"integrity":"sha512-bWJ7cn1Lsx00v4pkyauRRWrBoxmNtEjiVZp18EU/oQfq8GKGrMFq8/zyWC8Um86pDoB2Oesff8vl+O5Yw0DOfg==","signatures":[{"sig":"MEQCIBOT1t1QGuPADFJuxlLUayRjJqYpw14sQxvst7HalDbGAiA6suwiJ2XX1zHEQ02752x/o/Xvg5ozKWno0z/PF51k5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173323},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ad969f975a43b7771bfefa7351b37dfd86702d27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T09:50:36.753Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.17","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.12-renovate-external-non-major-ad969f975a43b7771bfefa7351b37dfd86702d27_1632218048513_0.4883475029201536","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.0-update-optional-dep-injects-094689b1e58340e90eab72bd45426012cf464b5d":{"name":"@balena/jellyfish-test-harness","version":"8.0.0-update-optional-dep-injects-094689b1e58340e90eab72bd45426012cf464b5d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.0-update-optional-dep-injects-094689b1e58340e90eab72bd45426012cf464b5d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"512ce8c15ffb3b0a0e56e6e7dd4ba8bb64c349bc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.0-update-optional-dep-injects-094689b1e58340e90eab72bd45426012cf464b5d.tgz","fileCount":27,"integrity":"sha512-usx9uLdlrl4K9QpCduTtgjNRycyTf97bdvW+sPrtGyvov/PJSIYWIpihdTh1fsnCPNv55zEJ02opW0LuXitzew==","signatures":[{"sig":"MEQCIHGA+Szs6Qeul+D6CmulDTZ/L+Na/2HH4f3wUMqSemlfAiBCX6dY5KA1VFP0t6yjXZMWMcSiHtrEiqe0IwjHgRJZyQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173829},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"094689b1e58340e90eab72bd45426012cf464b5d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T13:56:51.201Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.0-update-optional-dep-injects-094689b1e58340e90eab72bd45426012cf464b5d_1632232806680_0.5180123634757448","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"7.4.12-renovate-external-non-major-e5bf35a71acea4b654c0595085cd23d8687f8c47":{"name":"@balena/jellyfish-test-harness","version":"7.4.12-renovate-external-non-major-e5bf35a71acea4b654c0595085cd23d8687f8c47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@7.4.12-renovate-external-non-major-e5bf35a71acea4b654c0595085cd23d8687f8c47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a55de53c70a809b26195c0947c913883773d3046","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-7.4.12-renovate-external-non-major-e5bf35a71acea4b654c0595085cd23d8687f8c47.tgz","fileCount":27,"integrity":"sha512-rBztLhfPw1BngCuES6VvQN0qtiBgjE8jJbUjbyUKAP7p7LfSYc5ZPK1R2qohuqUZIjwcVHt6GEX2nd1AR4Dwjg==","signatures":[{"sig":"MEQCIB6VjJDfGXdwqONKo1oFSmdobKEmdz1ECGjVU3aznycUAiBd0SKp31DZhWE+70hTKn89jSTxRsWvXNYkyQkmOfUaog==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173323},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e5bf35a71acea4b654c0595085cd23d8687f8c47","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-21T20:11:42.244Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_7.4.12-renovate-external-non-major-e5bf35a71acea4b654c0595085cd23d8687f8c47_1632255280890_0.38005121378348417","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.0-update-optional-dep-injects-706693a7b9d2e3f77328c7008cabd1ef08b02d48":{"name":"@balena/jellyfish-test-harness","version":"8.0.0-update-optional-dep-injects-706693a7b9d2e3f77328c7008cabd1ef08b02d48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.0-update-optional-dep-injects-706693a7b9d2e3f77328c7008cabd1ef08b02d48","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3d6c0ac58e356c403c006d1f8c45c44f9a36ffb5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.0-update-optional-dep-injects-706693a7b9d2e3f77328c7008cabd1ef08b02d48.tgz","fileCount":27,"integrity":"sha512-8xR7ytoZTcwjtiD/YeLjOsDWKDrYUSycJMvpUCLefNGAZj8xexMaRfizoZDB65YTKrYe0LE7yWwjnel1N84/Cw==","signatures":[{"sig":"MEQCIEsLPomJhm6vh6x6qhUGpUH+6jFq7NgB45pk5wOEOnZVAiBZxXDGcbqFivDTzwgylmIu9HQilzD8/BfS2Qbv4FyGFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173973},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"706693a7b9d2e3f77328c7008cabd1ef08b02d48","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-22T01:40:21.861Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.0-update-optional-dep-injects-706693a7b9d2e3f77328c7008cabd1ef08b02d48_1632275005823_0.2510311040026747","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.0":{"name":"@balena/jellyfish-test-harness","version":"8.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e7db2c16b75d9d077bbd3054687c07d4a59c5b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.0.tgz","fileCount":27,"integrity":"sha512-gSWgGRpVeSA491ScCFcxrJfp0+RwjfzUbOhhUBwqXpvLrvZPwXon4vN4g/U7mABiyIA55ou9b2fpPtvNsSmUlA==","signatures":[{"sig":"MEUCIQDBBquk88DkmSPSrRFSwNwSCJfyuyPHP5NAwig/Us7zxwIgMoP02vmhpk78AbiHVkp5ruDbE0ku/+pxJnQNZ09N4Hs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":173904},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c5cbe5e3dda9e1e72bf154287172efcea0342305","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-22T02:30:41.193Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.3","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.1.0","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.21.9","depcheck":"^1.4.2","typescript":"^4.4.2","@types/jest":"^27.0.1","@types/node":"^14.17.14","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.0_1632277949223_0.6645510781070576","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.1-renovate-external-non-major-a69f976108473a78039610c3f6d2739c32fbd3ea":{"name":"@balena/jellyfish-test-harness","version":"8.0.1-renovate-external-non-major-a69f976108473a78039610c3f6d2739c32fbd3ea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.1-renovate-external-non-major-a69f976108473a78039610c3f6d2739c32fbd3ea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"290f4493f5bc0611b0494c8d4b738ef298422741","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.1-renovate-external-non-major-a69f976108473a78039610c3f6d2739c32fbd3ea.tgz","fileCount":27,"integrity":"sha512-/xSW7JVEN+3wniE4Odyxb28f0srL8q90ABVZzotLIiugw4A11dhGHeRdp11g9ubRhzmXmnWFluIEB8OW9DVUhw==","signatures":[{"sig":"MEUCIQDcyy4T8tCcRDCL9YEHPWd0/MLGV5HqVwBhU6RVKPWB9wIgFMaYvbmBuVaiG7fvHMmOc2M64GK+13DQHIOk7LzihUc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174111},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a69f976108473a78039610c3f6d2739c32fbd3ea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-22T02:59:11.556Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.1-renovate-external-non-major-a69f976108473a78039610c3f6d2739c32fbd3ea_1632279771851_0.9193815007135249","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.1":{"name":"@balena/jellyfish-test-harness","version":"8.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7470ec65c60cc4df2f22fd9f0d6364e363130946","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.1.tgz","fileCount":27,"integrity":"sha512-HIg3D7DhIClKmL0QyxgEAeZm6+oSR/xFja76fKP+U6oP7Y2/NDIOFR6aFXw92lpMUwDpHRsv+tenUpmW5zgqvg==","signatures":[{"sig":"MEQCIC2YtIemEfeBmTPWt6NH0wA0mrJvvIm/5P3LfspRCmS6AiBTqXKqN7opk+C7Nt7Sb2bcjXqz+JLyygGNqBoRc+F3GQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174042},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"10942b3999a37bd2a8cf50019d1d9c45bed04a89","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-22T03:04:08.213Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.17","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.242"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.1_1632279996555_0.9164528308613709","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.2-renovate-internal-patch-8b53ed95c663e26a568c255ba323824789088f15":{"name":"@balena/jellyfish-test-harness","version":"8.0.2-renovate-internal-patch-8b53ed95c663e26a568c255ba323824789088f15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.2-renovate-internal-patch-8b53ed95c663e26a568c255ba323824789088f15","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"609ea716c6f74891d7a30c5f66218249b75a9e7c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.2-renovate-internal-patch-8b53ed95c663e26a568c255ba323824789088f15.tgz","fileCount":27,"integrity":"sha512-g/tj/YBJFKw1BHS201tHJn4dfzV0i+2ORbKb9lTVA2uYnql+cltSABwhim2Pup2IZ/5klNcJqOM42FdPh+bg3g==","signatures":[{"sig":"MEUCIH+OW4w8dTaE8O2F/E1ih2mwvz/A2yPXWHyx/z6CCdIhAiEAkYwlRurh9kZ0r0b2n/+9bFabyqx2JEgF5KXfNpmG5bA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174180},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8b53ed95c663e26a568c255ba323824789088f15","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-22T09:57:21.575Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.19","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.2-renovate-internal-patch-8b53ed95c663e26a568c255ba323824789088f15_1632304832247_0.6085687595119582","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.0.2":{"name":"@balena/jellyfish-test-harness","version":"8.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d36610f61461e89785ae40c2c87e452a25766fb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.0.2.tgz","fileCount":27,"integrity":"sha512-1IeJE4SAwC1NP5juSW/qLL+nesUSpSPMP57hTBOJAcj1OecK/AX9H7268Jkq4CZkn1ssegPHGEeZK4L5HBYgZA==","signatures":[{"sig":"MEUCICJlN7mZpzPe1dTYuy+JflUsW32CGdMN6+JaSZ9X0g6sAiEA8aSKF9HXU+SS5nT22LS+qM8bgqaoWr/PbEhICgqPL+s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174115},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"23a14ef16eae6f27c37acce4b460760770e602da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-22T10:01:51.323Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.19","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.0.2_1632305021687_0.11434270198436769","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.0-test-user-password-45ca6c3375e02b4853b2ec852a6ff831aa8914d8":{"name":"@balena/jellyfish-test-harness","version":"8.1.0-test-user-password-45ca6c3375e02b4853b2ec852a6ff831aa8914d8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.0-test-user-password-45ca6c3375e02b4853b2ec852a6ff831aa8914d8","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d7057e5f91bba67fe32342a7462e10c90640792","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.0-test-user-password-45ca6c3375e02b4853b2ec852a6ff831aa8914d8.tgz","fileCount":27,"integrity":"sha512-xm14Mnm5OMDUL8GYaSIER3y1tijCqk1DtKd3slzqNODWR1lCq1slM/tHyxyCP41uo/tsAcorNUatFk9WYfsA1g==","signatures":[{"sig":"MEUCIAhg6ouzLlqltD2C7fGV2xSNjDDArgRT6QiH5hTH0RwCAiEAtPnJD4HNMtjcz3GmqyT0xTO1/cV+tTS9zTC9x6QlDtA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174284},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"45ca6c3375e02b4853b2ec852a6ff831aa8914d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-23T01:59:41.754Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.19","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.0-test-user-password-45ca6c3375e02b4853b2ec852a6ff831aa8914d8_1632362605925_0.4334764321632989","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.0":{"name":"@balena/jellyfish-test-harness","version":"8.1.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.0","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"500f07dbf4f2c166af3e51f47963f939f51235ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.0.tgz","fileCount":27,"integrity":"sha512-WW2E5B6B+LfeDQDEHBX1KWwrBTWA2OTBalMKnVSJmej/o1sYBNbe8rjc8P/3Wpvirmi62NIquZOGsc/lrH9Z7g==","signatures":[{"sig":"MEYCIQCjGrttDZhEs8Xtnm+HO9GsLds3tB0+mp4d2gU6a3JHoQIhAPSLBclpW8r3nZjoYVgEiRln71ZJEPaoFw6GJSuvJ1aL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174224},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"91ad7a7cce57e447394b4f947a9dcff04fefa97f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-23T02:09:20.980Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.19","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.0_1632363071335_0.43701265571652637","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.1-renovate-internal-patch-71b5af1b45f031019e625b50abfa66338fc30bf1":{"name":"@balena/jellyfish-test-harness","version":"8.1.1-renovate-internal-patch-71b5af1b45f031019e625b50abfa66338fc30bf1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.1-renovate-internal-patch-71b5af1b45f031019e625b50abfa66338fc30bf1","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c7cc2f7939b8014c1a79ffa1f0d2c47fdc05b28e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.1-renovate-internal-patch-71b5af1b45f031019e625b50abfa66338fc30bf1.tgz","fileCount":27,"integrity":"sha512-xSHUqLgWdnWne/RN+TIrqtGDIZNw4TnV1BST56FGbgLMItkwW4V4QZXFouKWL9Dbt51vXksCWwS/BE7a/u16CA==","signatures":[{"sig":"MEUCIQDCH3f9CXqSU8G9vDEil66Pb/0D2DlrL5S7ePVwn9BEywIgFzuVKtB8X+RpiuyyZ4GyE1jZowmzh9OBHeutE4haDHE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174395},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"71b5af1b45f031019e625b50abfa66338fc30bf1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-23T03:23:41.887Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.20","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.1-renovate-internal-patch-71b5af1b45f031019e625b50abfa66338fc30bf1_1632367636362_0.09595672637750541","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.1":{"name":"@balena/jellyfish-test-harness","version":"8.1.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.1","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f6d5a2979d7906b4ae57b917ca3c9adee443ba2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.1.tgz","fileCount":27,"integrity":"sha512-W7ngENlHbdE0wdW89RZRQPKOqR7kQE86PUREoncgzdYLw0w2j8fSpZWbHlXddgQiAuie3tI9GK1Mj6tKfJDO1w==","signatures":[{"sig":"MEUCIQCEz2VsvYPF9ypA/IRrdCvbc0/ue5p9dI1oM80rhr2hkwIgP2WzRa5/qei2NdboTn7saU4La6PvqRhZDnhkRna/F1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174330},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4151ce69dfbfd401e957f3c26ec054559a6ecf85","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-23T03:29:14.055Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.20","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.1_1632367889922_0.9792748881371376","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.2.0-create-user-email-990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9":{"name":"@balena/jellyfish-test-harness","version":"8.2.0-create-user-email-990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.2.0-create-user-email-990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9a18dbce315cd35ff7e202d6eae4604c0291dc8b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.2.0-create-user-email-990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9.tgz","fileCount":27,"integrity":"sha512-3N0O8TTLRw3UlUGUP0zkWinQsvVl7946dnz4IyULR8Z+2hMbj7URqlfLAqVj9KLYyq/XrG1vlXinLAhpBn0biw==","signatures":[{"sig":"MEUCIE3GYQFzB8qi8Zp29A0q7cbG2K0seZBYeh6BtVpck1ANAiEAh/+krMadjEwl1Fq1p4lsKW1mGay4c8YCUcF3a7Bbyi8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174603},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-23T20:21:03.978Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.20","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.2.0-create-user-email-990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9_1632428669801_0.3505502425109017","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.2-renovate-internal-patch-7e6370915698d31fd91f44992ec7f7c2592871bb":{"name":"@balena/jellyfish-test-harness","version":"8.1.2-renovate-internal-patch-7e6370915698d31fd91f44992ec7f7c2592871bb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.2-renovate-internal-patch-7e6370915698d31fd91f44992ec7f7c2592871bb","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"69b599347f08a1a3f16989f752f1abf1db53ead6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.2-renovate-internal-patch-7e6370915698d31fd91f44992ec7f7c2592871bb.tgz","fileCount":27,"integrity":"sha512-jDU36FADR2a49FzNGiex0MbsLF3xO4VLyavj+w1LdJabawGhTflFj4u/Yq99dV522kbrznxyYm98ODF4QExfkQ==","signatures":[{"sig":"MEUCIQDqKSiMnYMzIXR0qhzQrTzPUYLbV2EYFX0e7vpNx6KC1gIgCNQ7HxlBgQvJ4YfU8g+pMEpbe/aj7sfuCDLoFyH5R/o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174501},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e6370915698d31fd91f44992ec7f7c2592871bb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T01:06:52.768Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.21","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.2-renovate-internal-patch-7e6370915698d31fd91f44992ec7f7c2592871bb_1632532203934_0.21247461524636213","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.2":{"name":"@balena/jellyfish-test-harness","version":"8.1.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.2","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"19c8352456481ccea82533007ce09ad5b2930cc8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.2.tgz","fileCount":27,"integrity":"sha512-bNEHX07/ILRXX/vPQ8wmoJNq2i0lyB9qGGaQddWc6SkwksQPwDhOT3GdAilRKb0zIf64Ua0hlcFsPTbzfd+jbw==","signatures":[{"sig":"MEQCIB/AKnoFt3ebPFzj9wZLDaqJkL+uDfaLqJZRuUo2Z2UPAiBTCcEnPh2/F542qyc+GcP+JxCKTLD9E42uRRvM9CYmhQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174436},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d583e9402bc51536895687039254dafbf8272fdb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T01:11:18.217Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.21","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.2_1632532413542_0.32730492854751403","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.3-renovate-internal-patch-f8a70f9c8d45662f405b9b2464413b64056a1fc5":{"name":"@balena/jellyfish-test-harness","version":"8.1.3-renovate-internal-patch-f8a70f9c8d45662f405b9b2464413b64056a1fc5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.3-renovate-internal-patch-f8a70f9c8d45662f405b9b2464413b64056a1fc5","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2384548b19467f131f79cdfcaa19142084e1fe2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.3-renovate-internal-patch-f8a70f9c8d45662f405b9b2464413b64056a1fc5.tgz","fileCount":27,"integrity":"sha512-JrrB5V+ou6bFvquf6blbS3xo75PhtHAxaL3w4R9ytX/3SWrSNadSZcBlXrQU4TpagNTBsnmFvenpWmbB01JX5A==","signatures":[{"sig":"MEUCIBSTh4roQwhhg2bqIlWvXMO3uhIp5oWIU0fpqXoloZffAiEAmoe2/gXl3DQLfjaZ7HX8vtzaB+QrbC4lEzVFc1KZVYw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174607},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f8a70f9c8d45662f405b9b2464413b64056a1fc5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T03:35:26.805Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.24","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.3-renovate-internal-patch-f8a70f9c8d45662f405b9b2464413b64056a1fc5_1632541183779_0.4635953308759886","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.3":{"name":"@balena/jellyfish-test-harness","version":"8.1.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.3","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65d24d18c444e496d0a2d7caa49a0d2577558d25","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.3.tgz","fileCount":27,"integrity":"sha512-A4xWPdPvfUf4jhmtZEuCG382m+KlX1ng3niTjcuj3TudIayBtNMVVCZz1KefAOD/mFAq7Fst7Th7eHNiF0b5zQ==","signatures":[{"sig":"MEYCIQCT/SV3ADa1yA2DMnnbnCvD21EjkD87GBUeQt1U1JphPQIhAJysO5ePMUC0FuSI8HiLsBGc/oMtJATIX+bp2MzR37JP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174542},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7665dd5f7e44b5261579e131afe23328ddc7d7e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T03:41:18.122Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.13","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.24","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.3_1632541406811_0.295018639342264","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.4-renovate-internal-patch-75f2f9232ccd3b84106474be12c89fd4ada8cebc":{"name":"@balena/jellyfish-test-harness","version":"8.1.4-renovate-internal-patch-75f2f9232ccd3b84106474be12c89fd4ada8cebc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.4-renovate-internal-patch-75f2f9232ccd3b84106474be12c89fd4ada8cebc","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1d71aab5ad04674aba0684813721248d00f27aa0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.4-renovate-internal-patch-75f2f9232ccd3b84106474be12c89fd4ada8cebc.tgz","fileCount":27,"integrity":"sha512-NUpVhEhJBJ6I9Olr0F9U7Vgsee0lvG5cU2plXKBXME5Tw2aQ4UNaPLsq1mIDrM6UIiB7Oj/o53wuQbFqIkoSZA==","signatures":[{"sig":"MEUCIG9Uy6hz5CiAqrKn9Y6wZGG53DRs0B5k9U85bGzmsG9KAiEA9+OB04aoaOz1THyx7jm8pUl8TzwpTFcLCRCyGR4dmso=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174710},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"75f2f9232ccd3b84106474be12c89fd4ada8cebc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T05:01:32.945Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.24","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.4-renovate-internal-patch-75f2f9232ccd3b84106474be12c89fd4ada8cebc_1632546325530_0.42103398149993576","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.4":{"name":"@balena/jellyfish-test-harness","version":"8.1.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.4","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"760dc2b1433bc98e821f5db3c667d80df6ec50af","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.4.tgz","fileCount":27,"integrity":"sha512-tjrZUfy7x5G2rsMEmE3pORUGSeFzKk8rmhyOI36mnIEJXXM/6g3mqTB1VYBNCb4bK0M7yIMukLCKVqOefY2brw==","signatures":[{"sig":"MEUCIDGdkzuKc/J8Jb0AFe3Kb0zBLfvPqiowlvibw7UpK9jfAiEA29xghZYyfTN1Rlznwq6icUUkuhfKwudgGdOku7feZxo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174645},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"425e5a3f832b3b6005a5c927aae3507182848196","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T05:07:02.695Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.24","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.4_1632546540833_0.47428454233785766","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.5-renovate-internal-patch-3e666f90818d96bf44f6bf0a4efda2d3da365077":{"name":"@balena/jellyfish-test-harness","version":"8.1.5-renovate-internal-patch-3e666f90818d96bf44f6bf0a4efda2d3da365077","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.5-renovate-internal-patch-3e666f90818d96bf44f6bf0a4efda2d3da365077","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"43a92c28ef468f42b82776074f8fd6110f84c67b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.5-renovate-internal-patch-3e666f90818d96bf44f6bf0a4efda2d3da365077.tgz","fileCount":27,"integrity":"sha512-kFYGNjpPnxgeUfsPBLPdyeVDsKLRQoYLcgYylWqcvk0iyWowyQ8vy+ZNbSlGpA1ATc66GVT/gZhJ4CKIXNh+6A==","signatures":[{"sig":"MEUCIQD/4akQISu2C23fXbRP3JlaLGDUl9gzyrzwPrgUwxU/eQIgYzZzgjYPYrUnJYuPzIjBYpw9gGCUtmRdajXi3EozaBE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174816},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3e666f90818d96bf44f6bf0a4efda2d3da365077","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T11:52:21.226Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.5-renovate-internal-patch-3e666f90818d96bf44f6bf0a4efda2d3da365077_1632570918629_0.7460596506764048","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.5-renovate-external-non-major-1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7":{"name":"@balena/jellyfish-test-harness","version":"8.1.5-renovate-external-non-major-1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.5-renovate-external-non-major-1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9822637f761330daed5a083b410ed7c960dc87e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.5-renovate-external-non-major-1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7.tgz","fileCount":27,"integrity":"sha512-YLuMMiDUzRvyGjN5+IWgndQlGO6wUpVAVeV5x5lSw2Afg0pVPR7YVXTuLuhBqO3wv58sidNOi7dNMt3VPjKDjw==","signatures":[{"sig":"MEUCIQD+XEToXb5Gf9LnUSeyoskdF6kK4Fw7FAms+rJBzcVo6AIgLT+7VVl5lf7a0TkoVTcLAHhyIAuQJJcgpXzX4/xpCLA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174808},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T11:52:51.778Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.24","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.5-renovate-external-non-major-1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7_1632570958859_0.39114177704754094","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.5":{"name":"@balena/jellyfish-test-harness","version":"8.1.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.5","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a951f487026379795218bb0ea1903131bf1cffc9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.5.tgz","fileCount":27,"integrity":"sha512-WKKdWR9j57bJgcQoD/+ERJDWSGkm6Mb/eeLIc/poeXIgFT+SCRVDTVb8YMRlcx5XpAif7+ccCPgs9iHlT/zb2Q==","signatures":[{"sig":"MEYCIQCc/QYnW7fWO8w5vJpQJDDEg7y3HjcA3Thu4hhe6ciB7QIhAIG/pABy2Ccp3UcVpt4AKst8kgOpRvE+OQkC5X481KVd","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174751},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"58b920bd3193349391418b76c37b054afe13c0c3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T11:57:01.617Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.18","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.5_1632571137474_0.37343173144173036","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.6-renovate-external-non-major-611e0d37c0587fced3b72a0d218da66b6488f07a":{"name":"@balena/jellyfish-test-harness","version":"8.1.6-renovate-external-non-major-611e0d37c0587fced3b72a0d218da66b6488f07a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.6-renovate-external-non-major-611e0d37c0587fced3b72a0d218da66b6488f07a","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a7729b0de75473d5450286f2bf328747a39f296","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.6-renovate-external-non-major-611e0d37c0587fced3b72a0d218da66b6488f07a.tgz","fileCount":27,"integrity":"sha512-Fe8RDsHrWvGxMz4vj3xGqRZLAbZ3VXIVP5VxACF7CnY2IYM8Ln0SzAF28gK9++mzJ/sN7d8h1hLuwNH9lFS+xQ==","signatures":[{"sig":"MEYCIQDnfyjfFqWJCLcqmq2+hhPsxT1XQfACAc9vd2iZalnqhgIhALMEJqfRjrhlSokr4rWhsTSFJ7umz2jagbjbDpzP6HoN","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174914},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"611e0d37c0587fced3b72a0d218da66b6488f07a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T11:58:38.836Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.6-renovate-external-non-major-611e0d37c0587fced3b72a0d218da66b6488f07a_1632571351899_0.7541776975610528","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.6":{"name":"@balena/jellyfish-test-harness","version":"8.1.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.6","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e1c4a560cf35a905cc2bec496c88db76b869e602","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.6.tgz","fileCount":27,"integrity":"sha512-ijWARU1IsGEjCPFqdFIJU1npNTzc/3cgCfFYeEW3V69PKvNH2etVr8ZyNGST/L3gIt+km0qB8c5jPHxp9Wefow==","signatures":[{"sig":"MEUCIFWApRBn+eqiyctZT2PfQPTTWPytedmBCrQQ6oZl7FYMAiEA9x65uhkwrOQ2SztpHs3k1zJJeAzD/QyCevyz8f+CTt0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174845},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0fe54ce02679cb03800346897a191c1da738c390","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T12:05:41.470Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.6_1632571648702_0.8908512518585625","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.7-renovate-external-non-major-a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f":{"name":"@balena/jellyfish-test-harness","version":"8.1.7-renovate-external-non-major-a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.7-renovate-external-non-major-a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e5cbd7dd3b6adf1a9d6dd49ca28241c5278032cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.7-renovate-external-non-major-a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f.tgz","fileCount":27,"integrity":"sha512-v+rkRb5Ao74hby2jZKG3STLHvqpm0kyVwcZdAtBZZD1Qp1/iihmZD+FIGgBW668mDiY/01wUX/XvJo4/hCin6w==","signatures":[{"sig":"MEQCIHLN6+8ydLacrrqzQmUnkLsKkRmk+j9YceTphXE4IOw9AiAW85Ju39J9OFbiyoNM3DAjCPtn40F4YLl7zw0KkCD5Aw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174999},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T16:06:31.334Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.7-renovate-external-non-major-a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f_1632586179263_0.37798870081374214","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.7":{"name":"@balena/jellyfish-test-harness","version":"8.1.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.7","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"00ce0f27833ff0b79bb7cb021216d06d79bf6738","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.7.tgz","fileCount":27,"integrity":"sha512-hWgIUhoQgGNncJSwFx/pmE7VK4HILk/4ImdAGsfIKUs3NNGcdsQq0vMDqrFk2wsQLyJHt/lQvcbq9F6FGW0s0w==","signatures":[{"sig":"MEYCIQDyNTU2dPjPmECbxL4uRIXwP8l3XP797vmi1U7aBdpg4AIhAPt3HUp8ELXaaTxQMflkI/a7kx1Ily+rxWtDCLjnb6oM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":174930},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d31ef2dcf19d2cfe8fc2ce8ee57b685169b29b87","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T16:11:32.124Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.14","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.7_1632586407094_0.4617972389155083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.8-renovate-internal-patch-160229bd0c92f32bf4955f79f4dddd52e9a26e49":{"name":"@balena/jellyfish-test-harness","version":"8.1.8-renovate-internal-patch-160229bd0c92f32bf4955f79f4dddd52e9a26e49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.8-renovate-internal-patch-160229bd0c92f32bf4955f79f4dddd52e9a26e49","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"558eb95cc45b3b9eacc813aeb1209395e0db7493","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.8-renovate-internal-patch-160229bd0c92f32bf4955f79f4dddd52e9a26e49.tgz","fileCount":27,"integrity":"sha512-EK1SExucp0HHg4r8uRdirSps+oBx9QBdPsi7FzeGmcakR5zx9yThcCySNHumFytmQ1vBwUgH3WH0oU3SELNPGQ==","signatures":[{"sig":"MEQCICAEO0scnm3XvK29MnqtF51rQDC9UpQyfj6Se9U4/3/aAiBm7Pbs5HOyErZijbf3mp+bABefGUBBofzwipPDgZEwsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175098},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"160229bd0c92f32bf4955f79f4dddd52e9a26e49","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T16:14:12.546Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.15","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.26","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.8-renovate-internal-patch-160229bd0c92f32bf4955f79f4dddd52e9a26e49_1632586667345_0.6424325384841556","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.8-renovate-internal-patch-d0a8c0a41c34d431f63a223dd05121f2cfdc295f":{"name":"@balena/jellyfish-test-harness","version":"8.1.8-renovate-internal-patch-d0a8c0a41c34d431f63a223dd05121f2cfdc295f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.8-renovate-internal-patch-d0a8c0a41c34d431f63a223dd05121f2cfdc295f","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"59f1df8c4acbf7d904c7364ec101656d0275c7fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.8-renovate-internal-patch-d0a8c0a41c34d431f63a223dd05121f2cfdc295f.tgz","fileCount":27,"integrity":"sha512-mtNOgUL7/B+DfVVcTvLgNXGL5t/VDePoC3sJvj2uMsYnWSLnVCXV48Q2pwUSv+tpSWXyfG3B0XN8kisl5FQYJg==","signatures":[{"sig":"MEUCIF0USknV1I49EZoEzXSvGr7gaL/XRhnth88jp2HFTKi8AiEA9FZA90UHsYOZtyfa16N6YWl8qsjlC8/CscVFZqBgJVE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175068},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d0a8c0a41c34d431f63a223dd05121f2cfdc295f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T16:16:00.985Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.15","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.27","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.8-renovate-internal-patch-d0a8c0a41c34d431f63a223dd05121f2cfdc295f_1632586827401_0.24976239585151006","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.8":{"name":"@balena/jellyfish-test-harness","version":"8.1.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.8","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"90f2cd552106bdd33ce41c02a3e54b40810d6498","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.8.tgz","fileCount":27,"integrity":"sha512-9DF0shH0ZaZzjBpTQDHezAF8tPaDCTh5AeL35graN+/Ps+FWGnERxg6j4dHMVB2S6LJRKcReP5Z80Mt8wCB+TA==","signatures":[{"sig":"MEQCIDjaz/9VJW2d7MlQsbhu9qdZeSt8H/6+wyafg5f0fRz2AiBfKm4rc/IHvEJbjCeBT5xuVJrLMuC9izyyyBZfSCELcA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175003},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8aa08e6ad70e6b57152d14dcfe86ec393013d364","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T16:23:51.157Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.15","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.27","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.8_1632587145010_0.5911057289269872","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.9-renovate-internal-patch-c854d97edd264d179cfb5ae32472aa24d3ad9292":{"name":"@balena/jellyfish-test-harness","version":"8.1.9-renovate-internal-patch-c854d97edd264d179cfb5ae32472aa24d3ad9292","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.9-renovate-internal-patch-c854d97edd264d179cfb5ae32472aa24d3ad9292","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"018bbb0751b1a364b5acc3974df46a178b9ebee9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.9-renovate-internal-patch-c854d97edd264d179cfb5ae32472aa24d3ad9292.tgz","fileCount":27,"integrity":"sha512-Z0TPu3gM+tDXsM4s10zrd16OXOFac1cKP8qprkwzR1FPVkYE7dMaL68XaX4t1q44h2M1ITFov1slQ8zQR2db4g==","signatures":[{"sig":"MEQCIFbJYvx1uXaBrDglGo1JoFAliIfXvlva6njNdMl3mTZvAiARJwUapfLYpjK8q5V2ReOsg3oGyfSqob/l6Lm4fqmfpw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175171},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c854d97edd264d179cfb5ae32472aa24d3ad9292","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T18:32:38.350Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.27","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.9-renovate-internal-patch-c854d97edd264d179cfb5ae32472aa24d3ad9292_1632594970336_0.4602233649052452","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.9":{"name":"@balena/jellyfish-test-harness","version":"8.1.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.9","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9cae88f8ca93be0dfcc6315f7696291a3a22fe5c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.9.tgz","fileCount":27,"integrity":"sha512-JR9c56Uww5v4FAf+AUSQ/0VgJUHNlStOOacUCCSIV/OQebgHjvtCv6Msi+gyMtxSbfL4QL9eBfAT0KXdrde3MQ==","signatures":[{"sig":"MEQCIATSMCjL5ZRHVmfXrFSMpMrOo704+3Pl3CZvqrzrpW6rAiBvc9SyxXCQdyGQOMyhu+97dLTffOUwfxJcivR3x66lTQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175106},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7a2d74237cb1bb2565026b67205923f87107bfc5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-25T18:37:51.276Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.27","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.9_1632595187155_0.6198336456314446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.10-renovate-internal-patch-056b6058f8895e1fde51f2a2f2bbab496f030bd0":{"name":"@balena/jellyfish-test-harness","version":"8.1.10-renovate-internal-patch-056b6058f8895e1fde51f2a2f2bbab496f030bd0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.10-renovate-internal-patch-056b6058f8895e1fde51f2a2f2bbab496f030bd0","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c04a46b27939344256637609e344bbb9c2181cfa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.10-renovate-internal-patch-056b6058f8895e1fde51f2a2f2bbab496f030bd0.tgz","fileCount":27,"integrity":"sha512-O+hwUYAN/IEHFFkbw+71NhCkXZ7/A1wrx6oYAWe3zOwQ0TyO12O+80MQFsVk3KE8oCpncK5eoK62Vk6owOpPpA==","signatures":[{"sig":"MEUCIQCXfULMH6LA7VBlnRaqZH53z0fkJPty2FmyKOG/RLVWSwIgei0NdvAF1lr3fXxnsnf4tiVHBENcLGnQIFEDhQQUGo0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175279},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"056b6058f8895e1fde51f2a2f2bbab496f030bd0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-26T04:57:13.631Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.10-renovate-internal-patch-056b6058f8895e1fde51f2a2f2bbab496f030bd0_1632632440409_0.7753238531215585","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.10":{"name":"@balena/jellyfish-test-harness","version":"8.1.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.10","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"870f34c62db8ca312a97002cc5f86130b5bea070","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.10.tgz","fileCount":27,"integrity":"sha512-n9iO0yb4hq/YVJ8D9h+CNiRd9oqMm6qiRbfaVlRvs9Txn2Hl6Mc3tDc8PzYq9O2Fkh8tNNvJ3ItIKnXfC4f2sA==","signatures":[{"sig":"MEUCIQCJLukK02lnxB7IAD91UC6RpsLs2AwqjAGLBqe9FE21YgIgLDi7mHioBtGZR1I2KtK+Iu1Pz19kk5kgV5sXMj9fkww=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175214},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e514c54d6761da70365072777714a92dc1a9f4eb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-26T05:02:33.567Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.263","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.10_1632632673733_0.9637367615849703","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.11-renovate-internal-patch-752dffb52fb76e479782c1c3fd955815684c3a6b":{"name":"@balena/jellyfish-test-harness","version":"8.1.11-renovate-internal-patch-752dffb52fb76e479782c1c3fd955815684c3a6b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.11-renovate-internal-patch-752dffb52fb76e479782c1c3fd955815684c3a6b","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74b5fd01d73b08e3927a0680b43a9da7ebc714b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.11-renovate-internal-patch-752dffb52fb76e479782c1c3fd955815684c3a6b.tgz","fileCount":27,"integrity":"sha512-SfMyQzob4QJ/ElYVXzIGJvA6L39vya2FOUHwkAZkM4izHhrSTEwZxx8ogtdYTc7EGS+4+lDN6w1CClf5KXmESA==","signatures":[{"sig":"MEUCIQDQ5qtuMqdhgK2as+Zy4pvDXHz/C8yYpCGrFDG96cNF6QIgDomG0lxIi3k0J3KMy957BqmZgk7vsGleOWD3GdfjG8E=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175385},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"752dffb52fb76e479782c1c3fd955815684c3a6b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-29T07:37:50.207Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.267","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.11-renovate-internal-patch-752dffb52fb76e479782c1c3fd955815684c3a6b_1632901284047_0.6427139001337001","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.11-renovate-internal-patch-e4d255637005c86264c05c3e66ca50d3c53fc95e":{"name":"@balena/jellyfish-test-harness","version":"8.1.11-renovate-internal-patch-e4d255637005c86264c05c3e66ca50d3c53fc95e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.11-renovate-internal-patch-e4d255637005c86264c05c3e66ca50d3c53fc95e","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4bb40eac192c7023384dc207e1fde472623983f4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.11-renovate-internal-patch-e4d255637005c86264c05c3e66ca50d3c53fc95e.tgz","fileCount":27,"integrity":"sha512-itkILQ0Ub/e+p2qQG/uh256yW35fPwoz0yDq+YBArhZE/YNCcqemA4skVVX4JwQQWEgPojK6lhtYxV0BKp7zFA==","signatures":[{"sig":"MEUCIHQTYImhBpF30xf6x0LwCCySWXzGD5ttplkdOf/caAIgAiEA39Hn9huKcFXw9aIPP5FuSyGt8MEicZ9xQLxiah2G1bc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175385},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e4d255637005c86264c05c3e66ca50d3c53fc95e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-29T07:42:30.747Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.268","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.11-renovate-internal-patch-e4d255637005c86264c05c3e66ca50d3c53fc95e_1632901553995_0.9671114080252963","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.11":{"name":"@balena/jellyfish-test-harness","version":"8.1.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.11","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c820006a26e79c9dc86d40eda13051ec3c537f9c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.11.tgz","fileCount":27,"integrity":"sha512-IJqMojlfMjhexk31JiSx+s49p+HS5r0sn9KlnmzvsX6JAILh3mM4B6ZPzpDYrfnNCEaSRoIrZtGMyTgQv/bdpQ==","signatures":[{"sig":"MEQCIDSMVeZIXJsKJoB2IVFR2o78rIhQbCqEsdfWtxz5Qg4VAiB0sSaiX+H/OGMpmnz6wS7eQJJDznNzR3cAuKLQmI8GJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175320},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2b50ab1c8a1f618aef15681c795612291cc5df64","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-29T07:48:05.447Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.268","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.11_1632901812200_0.10978797727415235","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.12-renovate-internal-patch-07dc8c797eee5e22bd3b9a7b30047a9d912a69ca":{"name":"@balena/jellyfish-test-harness","version":"8.1.12-renovate-internal-patch-07dc8c797eee5e22bd3b9a7b30047a9d912a69ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.12-renovate-internal-patch-07dc8c797eee5e22bd3b9a7b30047a9d912a69ca","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e628bbcb4f7bbdd654786f110228b25ee0327bfc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.12-renovate-internal-patch-07dc8c797eee5e22bd3b9a7b30047a9d912a69ca.tgz","fileCount":27,"integrity":"sha512-puPcrperCDmYSEwxMkPkzmGhCszddkBlqyM3rCVDT03+lxoDo6Ii3b2l/uA6b9yC92CuN9jY8yFPh0IamMBEFg==","signatures":[{"sig":"MEUCIQCJSftxXAkDTuQFhhnbqLVqmeWQm/VkMdvQt6IhKpi22gIgU/0JR397S+WS1VPt1BKxuGv7ONkHfPfVAaCRCu600Mc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175491},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"07dc8c797eee5e22bd3b9a7b30047a9d912a69ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-29T08:46:00.571Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.269","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.12-renovate-internal-patch-07dc8c797eee5e22bd3b9a7b30047a9d912a69ca_1632905375136_0.8774847220521096","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.12":{"name":"@balena/jellyfish-test-harness","version":"8.1.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.12","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3c6a5b36c64f2b7ad94e9e8008ecd41601096b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.12.tgz","fileCount":27,"integrity":"sha512-Zf6gVM/M4VGRfeg59R5H8RUKG/X53xrbrxGyqIWvy5VvdMYUe3uwL+L9vbeDpePLU65umL0wFeq1AifEvxgPgg==","signatures":[{"sig":"MEYCIQC8rNKtcWPC5Jvpsugb58HzsApMl2mFVQmH1uxusD0n4QIhAMQ2cpHXlCImdqxfqJ4xjEfUIBPpR1ZwbH+GEKNC0id+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175426},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2abfd51f32e079d3e44f8ccd477635911542ac2f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-09-29T08:51:01.461Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.269","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.12_1632905567935_0.4985915408179016","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.13-renovate-internal-patch-7d64656d6d2c4c54ad53159c975e938cf2b49e3a":{"name":"@balena/jellyfish-test-harness","version":"8.1.13-renovate-internal-patch-7d64656d6d2c4c54ad53159c975e938cf2b49e3a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.13-renovate-internal-patch-7d64656d6d2c4c54ad53159c975e938cf2b49e3a","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4af1cc85cc5c7c046d181d0910babe9ad1ab8d78","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.13-renovate-internal-patch-7d64656d6d2c4c54ad53159c975e938cf2b49e3a.tgz","fileCount":27,"integrity":"sha512-E0liGbr7r1JdGWsfuMd1toqwWNK0g4/RdC6aRIUvSfl4AOXYokzohaIC5Rg2YsfAOsb0mzdCgbvPONBvsvegRQ==","signatures":[{"sig":"MEYCIQDMTnIBvv2NzHqlN9oS8fSFygI3dGbd3xuszBbTB9xeugIhAN7cAgOTc+ZGRpsxuPPuhZHckuszWwaAypiLQFySmVAO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175598},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7d64656d6d2c4c54ad53159c975e938cf2b49e3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:23:01.267Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.269","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.13-renovate-internal-patch-7d64656d6d2c4c54ad53159c975e938cf2b49e3a_1633137998717_0.6848345291001452","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.13-renovate-external-non-major-65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3":{"name":"@balena/jellyfish-test-harness","version":"8.1.13-renovate-external-non-major-65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.13-renovate-external-non-major-65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f2fed225551c43a388032958db572f328635c9d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.13-renovate-external-non-major-65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3.tgz","fileCount":27,"integrity":"sha512-zcBYkZlZ0qk0QFBpVN3MWmCpy8fvGwaFoYuYNpbMrPc4NSVP7txIV//PVtgkGxSyqsvpXeKY3XpKzbYE2VWpAA==","signatures":[{"sig":"MEQCIHHPWkZmQkAhka9NT9zHgpgFm2tiK4YLiEx+il7fuFZSAiAf63qRUSalUb7CVKodI1nHSBLgp6RQu9YhLib9s7EPUw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175573},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:22:47.036Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.269","@balena/jellyfish-worker":"^10.0.28","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.13-renovate-external-non-major-65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3_1633138036591_0.259874557090626","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.13":{"name":"@balena/jellyfish-test-harness","version":"8.1.13","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.13","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"19d0138eaf173b47619f9416ec28e193bd230f0c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.13.tgz","fileCount":27,"integrity":"sha512-y71JbvNq3pCFQen+mXgkLWOxOBSbssmPPaVJK9Fjg3oOr0JbYjnsVW26owPq2NrzoZaISf3R/SQ/TRxP4Pnm2w==","signatures":[{"sig":"MEUCIQCnVjLq0rBds6KUKCR42e5Tehl3NN0WIM1gTIgHvqnE3QIgYUgO0AVo/jdxpcrYmXZhNH+y1q0axA0qtlvvJmprSVA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175533},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"59a3242b8802fe0b8c658815b53960a95e70ea5f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:28:41.788Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.269","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.13_1633138237022_0.44112271883638887","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.14-renovate-internal-patch-e97ebdefb6afb2992769df97770bea55fd088e88":{"name":"@balena/jellyfish-test-harness","version":"8.1.14-renovate-internal-patch-e97ebdefb6afb2992769df97770bea55fd088e88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.14-renovate-internal-patch-e97ebdefb6afb2992769df97770bea55fd088e88","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4338838e8c84a7813ba413480a51b10f86c37ef8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.14-renovate-internal-patch-e97ebdefb6afb2992769df97770bea55fd088e88.tgz","fileCount":27,"integrity":"sha512-WPdpv5yZeJlrgIJ4LDfwUxEYZPqxEVbp3/CrcQ379OeojvZO9+doXl+z+UJLLDwhLpkB6dncvH/iLLxTh8J1Ig==","signatures":[{"sig":"MEYCIQCtjdHXb060x7nxB2ITUlN73OkYuu1+VuvB3o+Iu2nMUwIhAL7cdtErvdleMq5QTM9N4tBzz1AofzF0U4ST3npe0K9b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175672},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e97ebdefb6afb2992769df97770bea55fd088e88","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:31:50.926Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.270","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.14-renovate-internal-patch-e97ebdefb6afb2992769df97770bea55fd088e88_1633138536188_0.43715876751201654","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.14-renovate-external-non-major-6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f":{"name":"@balena/jellyfish-test-harness","version":"8.1.14-renovate-external-non-major-6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.14-renovate-external-non-major-6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"416a67f1c36afa86221e438a8453ce107ab6ea8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.14-renovate-external-non-major-6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f.tgz","fileCount":27,"integrity":"sha512-2PsPXL+GtZeD14/Z2O0aSo5JRVUYN8r4Td/pjplDYKRWmY96ptqRRJlIElWn5tloE0Av8EfbSYMl7qltpwCf4Q==","signatures":[{"sig":"MEYCIQCTdg7DiffMYjpu/81hQdQHW6CxXig/4x+arRKAC0LAcwIhAJeI439x2YZp5/yEX2PYZya/euxRbNIwRDXlKlxtY6NT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175680},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:32:10.626Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.16","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.269","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.14-renovate-external-non-major-6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f_1633138544862_0.41931900972942526","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.14":{"name":"@balena/jellyfish-test-harness","version":"8.1.14","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.14","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4f7411ee578787faa0bc44b17ffba0cfa5d66a3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.14.tgz","fileCount":27,"integrity":"sha512-eMWYqRBtqk0v3Dm6PaAPLAc/csFEO+eHjImlY4TqNFAhjvLu8xxvXK4ER8eqcVInyFDgXmW7LxOiMkO6VgPpuA==","signatures":[{"sig":"MEUCIAFfEA9zu9w9yggIdZ/oV9vGSGUaoP+et87cqNOcC4uEAiEA3bSyOsS3XfPG8hr72raC0gkc7Xbzp5uLTCSIH06Aio8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175607},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"08d4224a3cd39791a9cc905dc5076c104bd2c0d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:39:28.200Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.270","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.14_1633138882062_0.16883003356993087","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.15-renovate-external-non-major-7c3a64b5921373a34e1b645b6bac054a37758504":{"name":"@balena/jellyfish-test-harness","version":"8.1.15-renovate-external-non-major-7c3a64b5921373a34e1b645b6bac054a37758504","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.15-renovate-external-non-major-7c3a64b5921373a34e1b645b6bac054a37758504","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b51f81c526d43dc692e884558d588a32ed8587b6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.15-renovate-external-non-major-7c3a64b5921373a34e1b645b6bac054a37758504.tgz","fileCount":27,"integrity":"sha512-tgW/PWJfD036pNdov61fNMuc0TWgo6jot2FY0D/UPKiTuTYHfDqN5Oyf+mxSZ8ybN/V92aUTaBJkhgk0TuOZIQ==","signatures":[{"sig":"MEQCIBH5yElH8lPeQH7R/vVV9bRmGqYNJLqvgStg05vq7wmkAiApXu6PE1X3An89ZtkFt95PYlbVr/4ZmhY66rRz4DRMaw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175754},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7c3a64b5921373a34e1b645b6bac054a37758504","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:41:28.886Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.270","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.15-renovate-external-non-major-7c3a64b5921373a34e1b645b6bac054a37758504_1633139127567_0.6301728868209335","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.15-renovate-internal-patch-b04698aa6a857eee123aa57c4a855b43833f9e45":{"name":"@balena/jellyfish-test-harness","version":"8.1.15-renovate-internal-patch-b04698aa6a857eee123aa57c4a855b43833f9e45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.15-renovate-internal-patch-b04698aa6a857eee123aa57c4a855b43833f9e45","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df1deb0c9159df06282250d309c999d2101dd01f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.15-renovate-internal-patch-b04698aa6a857eee123aa57c4a855b43833f9e45.tgz","fileCount":27,"integrity":"sha512-44QGHfQqzQDLbNUBFkleO1T/NF26MgyRXm/ru7EipsPlVjrfyBX/7BqPgH8BDHM803oFULclWYWVCQffAto6bw==","signatures":[{"sig":"MEUCIQD0IfmVtMgZYmZJ36cZvR5b9gBRNmQJtHRPRRm+Iux4BQIgaa+n4Ef4JIoCNxGB2/7kDMXo59OoCmsY1KQeqOBNYM4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175778},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b04698aa6a857eee123aa57c4a855b43833f9e45","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:46:09.828Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.2","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.19","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.15-renovate-internal-patch-b04698aa6a857eee123aa57c4a855b43833f9e45_1633139402113_0.050919921938073154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.15":{"name":"@balena/jellyfish-test-harness","version":"8.1.15","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.15","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b7712ec7dae434c9c79b31dc0e68649ff996c050","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.15.tgz","fileCount":27,"integrity":"sha512-MtqiGbHXjY+uro2Kf8Y9NswmpNODftuNQ3EEI5oRDhZ41QRxK1EEp7HudyouSZcICSThlEBZ2y7MXa3a2kmJVw==","signatures":[{"sig":"MEYCIQDYmVB+LmHYd/ORo3BI2jJUr3nDppRjVpK1tjF7hDu+egIhAKBURlGyeNYcyICbrqo6/8Hs2KIpUTmRDG9yAVZDfqw0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175685},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a11ef1352c332bab7756e2dd6edf9777df831f4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:49:30.523Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.270","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.15_1633139479303_0.20358114688174833","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.16-renovate-internal-patch-0c5ca65708b277826ae49df521057b2ec7749e6c":{"name":"@balena/jellyfish-test-harness","version":"8.1.16-renovate-internal-patch-0c5ca65708b277826ae49df521057b2ec7749e6c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.16-renovate-internal-patch-0c5ca65708b277826ae49df521057b2ec7749e6c","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17d8e39c8701bc7c8178a61ea1b2aac95df1c17e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.16-renovate-internal-patch-0c5ca65708b277826ae49df521057b2ec7749e6c.tgz","fileCount":27,"integrity":"sha512-k45VnZmPcZtxnYWY110HRXQYVCqa+i/3rL/zg7bNdJI+fM+dzPjn3RQ3xXqHZJmvpvc377Q3iIyQzHKF7+vDyQ==","signatures":[{"sig":"MEUCIAvNg7rWmeolPvD1XYaUrKfM/FrtXPSdlsUu/gnmx3PtAiEAt5GT5DTTslmncucqmkhOgxcEozJgOvFnTy7uaoSYeM4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175856},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c5ca65708b277826ae49df521057b2ec7749e6c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:51:51.057Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.16-renovate-internal-patch-0c5ca65708b277826ae49df521057b2ec7749e6c_1633139706556_0.6434946536127562","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.16":{"name":"@balena/jellyfish-test-harness","version":"8.1.16","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.16","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b3f2685da4a64c5301f21fb35c4b7881d9156d5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.16.tgz","fileCount":27,"integrity":"sha512-+dSs/kBf+XQtkPKHeREAd6Mm2/BqXxzNm1P5dR7/4ncN7lj1My1unsBploTxXTmPEhTjgjWwQ8cizqsXaa819A==","signatures":[{"sig":"MEUCIQCjWFgHBSUwz8h1hfjzFbJwM0H4DqX8pX/0OS+fsvj9bwIgPB0eElz0sT79REJxyf9BWz2r9TQxS6CmWb7tdbn7roA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175791},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"22ae2a411db82d7f3c5ca8c7803c746144bd1328","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T01:58:30.745Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.29","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.16_1633140017398_0.07626593389468983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.17-renovate-internal-patch-78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7":{"name":"@balena/jellyfish-test-harness","version":"8.1.17-renovate-internal-patch-78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.17-renovate-internal-patch-78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b6bfc5aa68b60d0aa1873d4db851c3a5fb7815dc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.17-renovate-internal-patch-78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7.tgz","fileCount":27,"integrity":"sha512-scbY6x/9t5WTyguQCPQkTAOU8cpCicxcUyWPBIfkou4SNvNvi7PNP1Oh4WkPoOS9rRm+NBtY5V81phptRBJPHw==","signatures":[{"sig":"MEQCIG0i4Cznhi0IQlaRYtIjNqSDLGve1orxm1QZ/7LfbcxeAiAqmiNlR2iUW7KcMAUx2Wc5kWfbYmQ9vJ7uvbtLqwQfhA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175963},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T03:39:30.457Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.17-renovate-internal-patch-78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7_1633146111500_0.3864918652724323","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.17":{"name":"@balena/jellyfish-test-harness","version":"8.1.17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.17","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe51f7ebfdaea54454a0aef35086f1526543686e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.17.tgz","fileCount":27,"integrity":"sha512-/X0d9l64jks7VSIfuUR8Z5FNFYtAK2ZEIau7o/p+SDvTUjM3l2eQqEvunLDFIEP0d77OiVv7mAbTJcGVUMbW7Q==","signatures":[{"sig":"MEUCIDGDhB/34P+Lt34vyKLjiv9PxEj/60rGj3xW/BgvSTSyAiEAhJUE+ZNqMq9+OloRafRWg7nrSM3lc/hguXoM93wevDY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175898},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c727e20d69e312259f038d77a5b52b5c82c28774","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T03:43:39.906Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.17_1633146326499_0.5054419072838614","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.18-renovate-external-non-major-042532947eb5a346810e72d2119904fd2db81916":{"name":"@balena/jellyfish-test-harness","version":"8.1.18-renovate-external-non-major-042532947eb5a346810e72d2119904fd2db81916","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.18-renovate-external-non-major-042532947eb5a346810e72d2119904fd2db81916","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"03f864fdf636d607a45c9dc6a05e3080a33867b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.18-renovate-external-non-major-042532947eb5a346810e72d2119904fd2db81916.tgz","fileCount":27,"integrity":"sha512-6oOoV2aAhRF8cjIoS+6LR6/E04eNtZ5TBoMP5lXiIckhUGDC/VsTZ1kz9TZgsg1EVNRuevJkwEClmtNqOKbe6A==","signatures":[{"sig":"MEUCIQD/faYlqxO2yWkVYhJobgsnLLjVDSFZZ2jueTIvYvt77AIgfARbKOipjIqI4FFvfMOFO+9m97Hbno5dNDXHiXE6gx4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176056},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"042532947eb5a346810e72d2119904fd2db81916","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T19:14:49.866Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.18-renovate-external-non-major-042532947eb5a346810e72d2119904fd2db81916_1633202279757_0.9905765879072794","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.18-renovate-internal-patch-bac967c69bc9b3555bb0ab5a09668f84edeb2133":{"name":"@balena/jellyfish-test-harness","version":"8.1.18-renovate-internal-patch-bac967c69bc9b3555bb0ab5a09668f84edeb2133","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.18-renovate-internal-patch-bac967c69bc9b3555bb0ab5a09668f84edeb2133","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b2f3e3d0c6c827e7c2b911a0560f94376f73f55d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.18-renovate-internal-patch-bac967c69bc9b3555bb0ab5a09668f84edeb2133.tgz","fileCount":27,"integrity":"sha512-3/80k+f9WWWs4LRJFEG3dJX41ss5i8LD22Y2bTP201Xe8cSAC7qtTfRS6kl+Y9Eq+/N5NAaJVydtyYaP0+uhDg==","signatures":[{"sig":"MEUCIQCcpBsYt3a7v0pW74NlKVK1FyyuDK0MBmU6wtV+zX91PwIgCTUKaJPrRcTeyU8TYNxiEvmlppv6ck12zieSaT38J5Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176037},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bac967c69bc9b3555bb0ab5a09668f84edeb2133","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T19:16:10.310Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.18","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.272","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.4","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.18-renovate-internal-patch-bac967c69bc9b3555bb0ab5a09668f84edeb2133_1633202318162_0.039884292167666535","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.18":{"name":"@balena/jellyfish-test-harness","version":"8.1.18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.18","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"181d0fd33119c4ac20811c8b75cbf200702fba9c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.18.tgz","fileCount":27,"integrity":"sha512-aJzH1t93Vu6aY9qw4yi866R0dPF5232ZkTNrsLKhcSoJBfid7T5VeiWxRCdpcEzdNJIoFH2wxkEMw8BIUIwzEQ==","signatures":[{"sig":"MEYCIQC4nbYPnWLCLyplKS5ZCOADV/5W51AAq2EqzE9+t1M1IQIhAO7mgq3TzKBGFzLHC0uEOlFahIFYNhTm6dV/te55JZCK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":175987},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0f8f13cfd92f793a0c15377d43c2e0869faf2217","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T19:19:30.470Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.17","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.271","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.18_1633202480768_0.6767275012739338","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.19-renovate-internal-patch-dc213f6865dcd5f304d49a281d0e12ce18d37372":{"name":"@balena/jellyfish-test-harness","version":"8.1.19-renovate-internal-patch-dc213f6865dcd5f304d49a281d0e12ce18d37372","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.19-renovate-internal-patch-dc213f6865dcd5f304d49a281d0e12ce18d37372","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f052fa1b05ecf18b789d88689a6fffc3514b75f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.19-renovate-internal-patch-dc213f6865dcd5f304d49a281d0e12ce18d37372.tgz","fileCount":27,"integrity":"sha512-QZklpTv3IivcbCC2ksRLRzshzhcF/M/WG5kW3OsIZvuQD9BAczl+xoUVuPsPVIv5688vj58PabyMvvW06ks5GQ==","signatures":[{"sig":"MEUCIQCfoA7bn59EqXy/Uq2MINI4Ix8eGkSe3txILGmsnp8qnQIgdNQciEb9FZeYpijGd6ywsvatxtCdUj3gKgY7jTPfmHc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176126},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dc213f6865dcd5f304d49a281d0e12ce18d37372","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T19:21:36.658Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.18","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.272","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.19-renovate-internal-patch-dc213f6865dcd5f304d49a281d0e12ce18d37372_1633202738155_0.6369356850122905","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.19":{"name":"@balena/jellyfish-test-harness","version":"8.1.19","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.19","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39057aae18ba852985e47143b90fd4a2bbfd940b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.19.tgz","fileCount":27,"integrity":"sha512-Z+hVuoUY4ncopZG/BOsr2NBRpCMOPEwBbbRlcs4Ag5trr41bnQAwePJCyUrJNRBwVQdLx9TtuKC/yIjsPYBJ8w==","signatures":[{"sig":"MEUCIQDcwZg+ZfGto+NeMBGbO3qrJgR8PzvYPXM/iTSLd373KQIgBjMblrdW4FJh7QyEhsRVieGMPNcy8x1bC+P4dpXW8mY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176061},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ac92a44df39e957bfca2d42dcb2fff48fe55f57f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T19:29:30.360Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.18","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.272","@balena/jellyfish-worker":"^10.0.30","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.19_1633203110761_0.21827703158082978","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.20-renovate-internal-patch-ddb38fa63267144c6512ea0d2d4661832005ee37":{"name":"@balena/jellyfish-test-harness","version":"8.1.20-renovate-internal-patch-ddb38fa63267144c6512ea0d2d4661832005ee37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.20-renovate-internal-patch-ddb38fa63267144c6512ea0d2d4661832005ee37","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c21e0b5213b1a57301468e162c97542f231b3e2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.20-renovate-internal-patch-ddb38fa63267144c6512ea0d2d4661832005ee37.tgz","fileCount":27,"integrity":"sha512-Av0pcxmpEGvU5+aOkB+TYzD0hA0CYDfBZBbuXDte2T9hZT9EpCMw61fhLN1norvJfRxB6oeuSZAf7EH2v6h49Q==","signatures":[{"sig":"MEYCIQCXaLgh4+L9CTI8HRudAQw6Ec7RaA7CTb7n5of9KpDGnQIhAMNqa6ahy4hK4ETJedc76QQDtqOSwrJn7AFOTn9pa1Cb","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176200},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ddb38fa63267144c6512ea0d2d4661832005ee37","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T20:57:51.253Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.19","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.273","@balena/jellyfish-worker":"^10.0.32","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.20-renovate-internal-patch-ddb38fa63267144c6512ea0d2d4661832005ee37_1633208464288_0.5944320614805767","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.20":{"name":"@balena/jellyfish-test-harness","version":"8.1.20","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.20","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9cf342b548341a0da2714c120f4716cf68d191c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.20.tgz","fileCount":27,"integrity":"sha512-53xebLfiFEIQ7eBgoT4SJMga0s6k1+sJfluo6EmOslgFgoTDyfi8MUj7jT7czY3kJyg1ZoGu0wf9/aFaBibqTQ==","signatures":[{"sig":"MEQCIH6y52BUhQDWUqZPYbkvy4Y5zKa1jTLR5YeREzhzNAPiAiABWvoH04Co9nuN0JfmqHVWhtpXdq0h5gXVn0AODuZy6g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176135},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d202a328d0527c9b39654048ebfcd0a7d42e732","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T21:02:20.338Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.19","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.273","@balena/jellyfish-worker":"^10.0.32","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.20_1633208649300_0.27936346290675895","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.21-renovate-internal-patch-edca179cf2790b6e16a3ebfc1655a5d23959a674":{"name":"@balena/jellyfish-test-harness","version":"8.1.21-renovate-internal-patch-edca179cf2790b6e16a3ebfc1655a5d23959a674","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.21-renovate-internal-patch-edca179cf2790b6e16a3ebfc1655a5d23959a674","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b19974aea1104b0ebed695dc8a0056b01699ee1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.21-renovate-internal-patch-edca179cf2790b6e16a3ebfc1655a5d23959a674.tgz","fileCount":27,"integrity":"sha512-0jCniSxsTqGeQNbwJEMJ21IO1tXc0NotblfcypQHyzLZXP5+oHeIjscQFZd50IZ9W80zB41g50NPkhg8gL344w==","signatures":[{"sig":"MEUCIFPkGUe3OlwU8Y8gAJT9p5+Kv3paYScS65Eg1vly+5r9AiEAz0SccgmGlfewsHF/hODEcMx/qV9s2CcPbyT2SmGfXFM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176307},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"edca179cf2790b6e16a3ebfc1655a5d23959a674","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T21:55:00.692Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.19","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.273","@balena/jellyfish-worker":"^10.0.33","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.21-renovate-internal-patch-edca179cf2790b6e16a3ebfc1655a5d23959a674_1633211916098_0.7047958054635353","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.21":{"name":"@balena/jellyfish-test-harness","version":"8.1.21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.21","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d79ecf5ed3a0b18f9e8604ed896b2dc8d280d41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.21.tgz","fileCount":27,"integrity":"sha512-vKMbQJfG4W/CO5hG/YuQ1DtfXp/p+0S7yTeMGi4qjybAhC08+N+KVo11MwP/xSvmBrmJS1zktP3SZDqtth61TA==","signatures":[{"sig":"MEYCIQCyuPzEl56VcpihVkvCSBBbaityFfMO+55qfUhlu7zyYgIhAJONCtDuMtnnBVeGhJV0yjFJFllttCqdYtROOjNQ0Qbr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176242},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a4ad53fdebff5d1f9b5d4faaeb956f7600fb0eb0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-02T22:00:40.858Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.19","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.273","@balena/jellyfish-worker":"^10.0.33","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.4.8"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.21_1633212159022_0.5132374736538192","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.22-renovate-balena-jellyfish-config-1-x-ea03332f81ab29186e1ce899397708a4c61de7bd":{"name":"@balena/jellyfish-test-harness","version":"8.1.22-renovate-balena-jellyfish-config-1-x-ea03332f81ab29186e1ce899397708a4c61de7bd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.22-renovate-balena-jellyfish-config-1-x-ea03332f81ab29186e1ce899397708a4c61de7bd","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14ef711b0e40d28ee6b2fe9fbf3ead59511c88d7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.22-renovate-balena-jellyfish-config-1-x-ea03332f81ab29186e1ce899397708a4c61de7bd.tgz","fileCount":27,"integrity":"sha512-bPky5xReC1Ypr50gj4Q3m8tQkDSE3hmAxqkVJ19RBXItG4NvvzbeWtYxfg8exTSSn0J0WTYoi2YKf7O/5wW6jg==","signatures":[{"sig":"MEUCIQCpakRLImNliQpUkMXlFlMSoGgrllC5EkfGBjccUGaTUgIgfSVvEu/+hehIG0Ip3E258Ysm4s25GT/Ogd/caARPQ1s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176425},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ea03332f81ab29186e1ce899397708a4c61de7bd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-03T09:10:26.741Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.19","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.273","@balena/jellyfish-worker":"^10.0.33","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.22-renovate-balena-jellyfish-config-1-x-ea03332f81ab29186e1ce899397708a4c61de7bd_1633252435718_0.9612606878520973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.22":{"name":"@balena/jellyfish-test-harness","version":"8.1.22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.22","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"693509ba3c4be680558c84e804c27a390997852c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.22.tgz","fileCount":27,"integrity":"sha512-a2R04tFUlbARJ+XYaCCazqCY0IGx+s7JvxZ74r9OArfWi7vBAQP772kPawRtPwD3eeasK5wPJK7kSkF2yKy0yA==","signatures":[{"sig":"MEUCIB2gUMDFCQ2CAXWn058pvkSOTfHtXO6QE0TzZuzhUdE9AiEAjpl0GQEfxiwb6sMg5jpgEhgHisUUJSbvhs8vONwvRLo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176347},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aaee2c65a1a88dd6f2f41e9d0d5d5ee3ed42d44e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-03T09:15:42.426Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.19","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.273","@balena/jellyfish-worker":"^10.0.33","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.22_1633252657869_0.21069237235346105","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.23-renovate-internal-patch-ce129789da4ff2bd67954ef331701134d7c1ffb1":{"name":"@balena/jellyfish-test-harness","version":"8.1.23-renovate-internal-patch-ce129789da4ff2bd67954ef331701134d7c1ffb1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.23-renovate-internal-patch-ce129789da4ff2bd67954ef331701134d7c1ffb1","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"718b49339a64c50dcf9540c78048686e2a2e64ad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.23-renovate-internal-patch-ce129789da4ff2bd67954ef331701134d7c1ffb1.tgz","fileCount":27,"integrity":"sha512-axG2Sp8+VQE0vjDYNyyA4ukhs+brbroo78LVD+EtV7EQNJakBpLYEx3xrmla9kRHGUAXJedHC1gd/JO0OCYX1Q==","signatures":[{"sig":"MEYCIQDwsYlQzZuTbxHEQT1DVy3VRDD/xRmn4nZjI2ArHVRIKgIhAMnuGzfukWKCRqFr8SUFtAod0twAmzxRbedaLIgTy5Fy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176486},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ce129789da4ff2bd67954ef331701134d7c1ffb1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-03T11:40:19.705Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.23-renovate-internal-patch-ce129789da4ff2bd67954ef331701134d7c1ffb1_1633261382535_0.3526402910505204","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.23":{"name":"@balena/jellyfish-test-harness","version":"8.1.23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.23","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f3340bb757e42d24c0a7df6f7ec45db79d91d23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.23.tgz","fileCount":27,"integrity":"sha512-JvcR/2z0LekL+d3TUWqQQgoyYmch3mMvN7+jDazXd9u09LM54DgkdkftqRSeczfcgd1H33u+CTUQjJKMx54qOg==","signatures":[{"sig":"MEQCIDuR9G0uJmtMBpKbIe/0LB/ABSNMmFfMXxwBPiJUlXI1AiAwkZWdWhnyx490UC9SJZZicaVLETrTE9hoyJ2Vla7eOA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176421},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3a7399aff2143ed04dbd4181a9efbf2e48440949","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-03T11:45:03.231Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.23_1633261629756_0.293927803689624","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.24-repo-sync-jellyfish-config-default-0e8c7c71ef0f08cfb22767935eaa2ae15999c227":{"name":"@balena/jellyfish-test-harness","version":"8.1.24-repo-sync-jellyfish-config-default-0e8c7c71ef0f08cfb22767935eaa2ae15999c227","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.24-repo-sync-jellyfish-config-default-0e8c7c71ef0f08cfb22767935eaa2ae15999c227","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e14e207170e3910330266dc7faaf37b9ea9dd7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.24-repo-sync-jellyfish-config-default-0e8c7c71ef0f08cfb22767935eaa2ae15999c227.tgz","fileCount":27,"integrity":"sha512-JHGf1XbZ6rKNpw1QqJNhzd5sxPOWR8lAwXW4JKa0kQ0vBSAknEnJOMByVQiHk9RNfu2aTMheyyT6sAR5/L0oHw==","signatures":[{"sig":"MEUCIQCfFpe90Zkax5qmWMb1O1rDIw27C1HTPNrpv0jZOtx7fAIgQ6qjZgD1ekeqfgh7+LnP4Dl+R9cC1b5m7JRCMjh2+uw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176592},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0e8c7c71ef0f08cfb22767935eaa2ae15999c227","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-04T04:26:10.302Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.24-repo-sync-jellyfish-config-default-0e8c7c71ef0f08cfb22767935eaa2ae15999c227_1633321786086_0.27649713896657446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.24-repo-sync-jellyfish-config-default-09b347193cc2f796dd08603ec1db01399215b5e2":{"name":"@balena/jellyfish-test-harness","version":"8.1.24-repo-sync-jellyfish-config-default-09b347193cc2f796dd08603ec1db01399215b5e2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.24-repo-sync-jellyfish-config-default-09b347193cc2f796dd08603ec1db01399215b5e2","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"631d578f45f9054e09fa40f7d3b6484b9155c1c8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.24-repo-sync-jellyfish-config-default-09b347193cc2f796dd08603ec1db01399215b5e2.tgz","fileCount":27,"integrity":"sha512-ySYTdzTwQ5Wh7i9s0KBbUayypeWoIxgJ6rbhTETQXD6v5/LTBbJ93k+X76m/bCcE3KDS9ucJfs1BmYRKsDpEkA==","signatures":[{"sig":"MEYCIQC5IyNn+jV2Fk/AmNe0V3dMBLG5bO4B5NsbNJvNhNdpPwIhAJhfZrAv2QECi226Wn89cvdrrne/Dq8NUWrIrpBDgEVe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176592},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"09b347193cc2f796dd08603ec1db01399215b5e2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-05T00:10:30.073Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.24-repo-sync-jellyfish-config-default-09b347193cc2f796dd08603ec1db01399215b5e2_1633392822339_0.4276116223576698","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.24":{"name":"@balena/jellyfish-test-harness","version":"8.1.24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.24","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8faa27e769dcf153f80b85ae99af96846b3c89d5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.24.tgz","fileCount":27,"integrity":"sha512-5mzv9Oid6dq2pVmSjZX5kkkVjFXULhKBHZ12z07YxbW6c+yTbw1JD1IgE/UFGkQaUzSxvhAhDqxGK3kIWLCZmw==","signatures":[{"sig":"MEQCIGcIIXGKb85Y6o/gs2fPQU/EIfE2ppH2VNhg8ZFBkj2HAiB3sy1Z9RxgeA/cSSMWlB28OnPavCqklFDrO/yvvZRWEA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176516},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b3877fd84b3d869ed23ad489bdec24f5a6578ac1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-05T00:17:20.573Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.24_1633393146224_0.8651178893470721","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.25-joshbwlng-more-options-9b7312b174a0efbb4c18e40086896d7c8eb61a42":{"name":"@balena/jellyfish-test-harness","version":"8.1.25-joshbwlng-more-options-9b7312b174a0efbb4c18e40086896d7c8eb61a42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.25-joshbwlng-more-options-9b7312b174a0efbb4c18e40086896d7c8eb61a42","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a106bcc030c2783ae8a6d91d81082f2ae801af7a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.25-joshbwlng-more-options-9b7312b174a0efbb4c18e40086896d7c8eb61a42.tgz","fileCount":27,"integrity":"sha512-9r/gSQPUUS6C6B9roF7Xri/H13GfWl3vHKEAqsHVwb7dtbjZ+7CXvrEpmPuVLVg/ytunRa3W7Nu33UUsRGdLyg==","signatures":[{"sig":"MEUCIQDhUdcQ+Rb//2EABIpEFpglz2gmMHoTUon2jygxxxi+4gIgYtjJELkDuNZxHuhaK1WWnZFEVFGhOYwPweS9hydQgRc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176908},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9b7312b174a0efbb4c18e40086896d7c8eb61a42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-05T01:43:50.614Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.25-joshbwlng-more-options-9b7312b174a0efbb4c18e40086896d7c8eb61a42_1633398403202_0.3214052068264397","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.25":{"name":"@balena/jellyfish-test-harness","version":"8.1.25","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.25","maintainers":[{"name":"iayanpahwa","email":"ayan@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"nazrhom","email":"nazrhom@gmail.com"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4bcecaa5b6f49e68fac2f1c98cabbb1acf5a4f5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.25.tgz","fileCount":27,"integrity":"sha512-w/lptUaURV+0FJ6nc8nsh+JjDgjjru7+8g2cOzelwUzHjCkM21LGv+3LMkq3LKFVFJXAQ1HSwYBSOph3xpmQ+Q==","signatures":[{"sig":"MEQCIBrCHM6Btvc8+LvseKpfPyLckeZ5qApMGRnYkKt3PKVZAiBxrcR9GJz2lbi0TCkP9YKSnUns3EMpFzxuUTbtMx1h4g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176844},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af1eee54f657034303c8cac058e84e1310759552","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-05T02:28:21.895Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.25_1633401008137_0.8457781008365721","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.26-renovate-internal-patch-4d0a7d7456a987f6c787a7e5623c91807f288103":{"name":"@balena/jellyfish-test-harness","version":"8.1.26-renovate-internal-patch-4d0a7d7456a987f6c787a7e5623c91807f288103","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.26-renovate-internal-patch-4d0a7d7456a987f6c787a7e5623c91807f288103","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b6fd4ba8af8a0c199b9d7efb7ad009c60cef1703","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.26-renovate-internal-patch-4d0a7d7456a987f6c787a7e5623c91807f288103.tgz","fileCount":27,"integrity":"sha512-cijL9rM1OiGEqsGwiIYfhiApXp1rtHE9HBPfxXAD2PrdQ3oqm+vKeSL1+zBLZbyV19lPFRj/C1pSUJfEKINb2Q==","signatures":[{"sig":"MEQCICQ7vnJPwsySygaLLksDcbnJO9DYsPTepI2wN5Ck+CSnAiBFVxyS5x4GKMvv3NaJuYYRv35eINmw0k0Xp4uFG1m0kA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176983},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d0a7d7456a987f6c787a7e5623c91807f288103","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:39:08.802Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.26-renovate-internal-patch-4d0a7d7456a987f6c787a7e5623c91807f288103_1634712168296_0.11201534121789125","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.26-renovate-balena-jellyfish-core-7-x-3ae03e47dd7054ef498ba6dd5812f6696e78c3f2":{"name":"@balena/jellyfish-test-harness","version":"8.1.26-renovate-balena-jellyfish-core-7-x-3ae03e47dd7054ef498ba6dd5812f6696e78c3f2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.26-renovate-balena-jellyfish-core-7-x-3ae03e47dd7054ef498ba6dd5812f6696e78c3f2","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1a8edad0fa95d196d4675a242b3959881d4ac0c1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.26-renovate-balena-jellyfish-core-7-x-3ae03e47dd7054ef498ba6dd5812f6696e78c3f2.tgz","fileCount":27,"integrity":"sha512-hvy4Gr3u0aaaAHj1SkrMUoT7EN1BkMeQEHUPptxybJdRT4uQqlu2KC4LyTYfLH/OLXNcFzHnYUdpCr39/Jz4RQ==","signatures":[{"sig":"MEQCIAGq+GNtsTHkX+JbXQJvn1g2nAPwmQjPf2N4Br5CBo2QAiBeLMjD3/SW45TqI3MBPu2XT/jPwGWOE23xUPOhLazlDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177018},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3ae03e47dd7054ef498ba6dd5812f6696e78c3f2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:39:59.641Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.0","@balena/jellyfish-sync":"^6.1.25","@balena/jellyfish-queue":"^1.0.274","@balena/jellyfish-worker":"^10.0.34","@balena/jellyfish-environment":"^5.0.3","@balena/jellyfish-plugin-base":"^2.1.243"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.26-renovate-balena-jellyfish-core-7-x-3ae03e47dd7054ef498ba6dd5812f6696e78c3f2_1634712219935_0.2812540199079563","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.26":{"name":"@balena/jellyfish-test-harness","version":"8.1.26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.26","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f09b2de937fd173aeb84d1678742773d146d4d1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.26.tgz","fileCount":27,"integrity":"sha512-MZliodPs/vv8NHX8WOcEXChaMA5BHIMHkDgIyVbRnwN7HciW6l2e3QTIAt5shNZylgsQmLeymWhqSDUjtxoJUA==","signatures":[{"sig":"MEUCIBYpMqSymDU/vGUdue2TouQMQhPd5AfPKPzUJfiBw+EmAiEAl/AWr7KF3zWpZtb1806IFA5MxLLwHZ0V/2Tphwb2OWU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":176918},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8151940085f3b334ef50a308a32c73b4e01377d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:45:58.837Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.1.20","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.26_1634712467943_0.9412758220855839","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.27-renovate-balena-jellyfish-core-6-x-f0a3ea0e865467c9a7ff9f04bfbd1682103357e9":{"name":"@balena/jellyfish-test-harness","version":"8.1.27-renovate-balena-jellyfish-core-6-x-f0a3ea0e865467c9a7ff9f04bfbd1682103357e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.27-renovate-balena-jellyfish-core-6-x-f0a3ea0e865467c9a7ff9f04bfbd1682103357e9","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65987a0b0df83ad7da7a77157df6ec82f8faf27a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.27-renovate-balena-jellyfish-core-6-x-f0a3ea0e865467c9a7ff9f04bfbd1682103357e9.tgz","fileCount":27,"integrity":"sha512-qky0QFg4G/ospom50dquRAYU+48fXSkAsE3+QgNbIhKwKrjIYi2lPU5qg46vLQXGNdGcaQLz21P2eg1YG1SYXA==","signatures":[{"sig":"MEUCIAdiMGFJhD7Uv2E2GxWszrx+UDcoPwsvRGe9JJzVTN/MAiEArb8AH4tyD93wqMNV9wbnskbk1J8mVWcYHf8m91MuemY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177098},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f0a3ea0e865467c9a7ff9f04bfbd1682103357e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:47:43.427Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.2.13","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.27-renovate-balena-jellyfish-core-6-x-f0a3ea0e865467c9a7ff9f04bfbd1682103357e9_1634712708059_0.919687385580269","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.27-renovate-balena-jellyfish-core-7-x-cc62d4489a7f43dd95c57fac5ca31dc698be52f1":{"name":"@balena/jellyfish-test-harness","version":"8.1.27-renovate-balena-jellyfish-core-7-x-cc62d4489a7f43dd95c57fac5ca31dc698be52f1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.27-renovate-balena-jellyfish-core-7-x-cc62d4489a7f43dd95c57fac5ca31dc698be52f1","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"23de19372081caafb928d4d0dfb7fc86bf478431","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.27-renovate-balena-jellyfish-core-7-x-cc62d4489a7f43dd95c57fac5ca31dc698be52f1.tgz","fileCount":27,"integrity":"sha512-9s/AEfNBctAsdENDjbUqYj1mVXm2ot18CKAhRkJafmIfFuvxwSURMt2ODiBm6zLt2gwlX/A/mu2oKRo6P1lHmQ==","signatures":[{"sig":"MEUCIQCyKiGPRGcmcIFjI9Ej/tyF+tiD5DFdgM/ePCWtPxO2LQIgc4uO8RvCcsxm9lqTqXrXhYuJgnFmFk/JTSMGtUmq7vw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177092},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cc62d4489a7f43dd95c57fac5ca31dc698be52f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:52:28.773Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.0","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.27-renovate-balena-jellyfish-core-7-x-cc62d4489a7f43dd95c57fac5ca31dc698be52f1_1634712909449_0.37418003056595284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.27":{"name":"@balena/jellyfish-test-harness","version":"8.1.27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.27","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"24c7edc5dc07d7428ba6471e27e2855265d5d369","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.27.tgz","fileCount":27,"integrity":"sha512-52dnoNoggPue2jDVHZk1eMV+XeYVbOGg9YIEnEMizNbcj5KcU0Y5O59Q4gP+tIJ8N01u/5vY73xlmJukfSdfKw==","signatures":[{"sig":"MEUCIGwnJSUirDu3ffpX8Xj6AgI40DiG2+Liwq1yQEzuLOs2AiEA/28eEoa2SU9+k9D2u6agbMlSjH6zOb8Oxs0HJDr4RxA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177022},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fc7717c73d5a213fc606ae614bf5d229e2d8e6b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:56:29.012Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.2.13","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.27_1634713099920_0.03417725760257406","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.28-renovate-balena-jellyfish-core-7-x-06e13cb38b995d7bb18980a4e46de0afed1a7071":{"name":"@balena/jellyfish-test-harness","version":"8.1.28-renovate-balena-jellyfish-core-7-x-06e13cb38b995d7bb18980a4e46de0afed1a7071","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.28-renovate-balena-jellyfish-core-7-x-06e13cb38b995d7bb18980a4e46de0afed1a7071","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b4d8fc562676430f0d0afe2ce62573d1ebe25c5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.28-renovate-balena-jellyfish-core-7-x-06e13cb38b995d7bb18980a4e46de0afed1a7071.tgz","fileCount":27,"integrity":"sha512-ukyKZ7ylPUSAtA9ufd2C42kL5zPWK+egRTcdqmtQIfhc4fIVbpfcY/FqfjRRwR8UCdGlrWitQTLobBW7/FksFg==","signatures":[{"sig":"MEUCIQCTDMbxW++TaWPYTLD0+vfe5AF7ZDfGht5lCRLCtspCkQIgMORRMRhvBduv4OsOxuaQcZp+OldY07qQirIBb3TU2IA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177196},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06e13cb38b995d7bb18980a4e46de0afed1a7071","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-20T06:59:58.468Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.0","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.28-renovate-balena-jellyfish-core-7-x-06e13cb38b995d7bb18980a4e46de0afed1a7071_1634713366403_0.06347126253263302","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.28-renovate-balena-jellyfish-core-7-x-accfc95e9d28109ff3ae64fc65ea6693394ef3a3":{"name":"@balena/jellyfish-test-harness","version":"8.1.28-renovate-balena-jellyfish-core-7-x-accfc95e9d28109ff3ae64fc65ea6693394ef3a3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.28-renovate-balena-jellyfish-core-7-x-accfc95e9d28109ff3ae64fc65ea6693394ef3a3","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f7fbf5d7e301e8a9d274801f8ba5499ace39d1a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.28-renovate-balena-jellyfish-core-7-x-accfc95e9d28109ff3ae64fc65ea6693394ef3a3.tgz","fileCount":27,"integrity":"sha512-cL/q+IEwjJsWSwSCS68hqaH0/Rezu9Co9pyLg+GHORZJJSsbjDauQbVDhwDgGMthzVolAxcnHru2eNOiz944Qw==","signatures":[{"sig":"MEQCIBscz1zC2/ITv8tusqy0hYWRxLZE+2dbLEu8vKtyGbD3AiB+DMRyG4u5u4nDfszi55IE14IcpJT4+auADwmRB2FeDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177196},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"accfc95e9d28109ff3ae64fc65ea6693394ef3a3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T09:06:09.041Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.28-renovate-balena-jellyfish-core-7-x-accfc95e9d28109ff3ae64fc65ea6693394ef3a3_1634807338742_0.6525684295495715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.28":{"name":"@balena/jellyfish-test-harness","version":"8.1.28","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.28","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04d772dcfc8a68b94be1b50d656606be1eee4e39","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.28.tgz","fileCount":27,"integrity":"sha512-HLRLkMPFmWoHw79aEy8PQrmQpyhMbvMrXHkEr3LsxwvNXE0mBVSEFU43ivt6GtXxIdg/GdbIimSbM8F700ETDw==","signatures":[{"sig":"MEUCIQCA4l/zhdEWzpIAjmMSju9b5wh5u6MbIf9h5VbTksiz1gIganXgTq5NuUCmVCnydFw/5OiOL1DXkXAUg5b/xU63RrM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177120},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"52d49068b9e6ac3fbcd8bb3b2ef537b5d93260b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T09:11:19.844Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.44","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.246"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.28_1634807590644_0.02482353654986813","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.28-renovate-internal-patch-bfc5ff8c0a5f1a513107e76176d5e5f2e0801497":{"name":"@balena/jellyfish-test-harness","version":"8.1.28-renovate-internal-patch-bfc5ff8c0a5f1a513107e76176d5e5f2e0801497","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.28-renovate-internal-patch-bfc5ff8c0a5f1a513107e76176d5e5f2e0801497","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e68e4be0c26f6a29b7e47a4dc27d0cd612b5149c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.28-renovate-internal-patch-bfc5ff8c0a5f1a513107e76176d5e5f2e0801497.tgz","fileCount":27,"integrity":"sha512-CdkBHDdZivIXkqBxQe2Ilb2kogn8iLAXvKevUgDDpey8m7fAoM24G7seOqa2ZVPwapoCDZmdOXJ7glLefVJ42g==","signatures":[{"sig":"MEUCIH8h+gfTeJsF0/dwx619zzY4VxOte+l84JsVltdynlDSAiEAwmK3PXK5z3DsEK7Hy8Rzyoyec07XlPPAtdGDlSdR/r4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177161},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bfc5ff8c0a5f1a513107e76176d5e5f2e0801497","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T09:10:09.539Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^6.2.13","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.46","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.28-renovate-internal-patch-bfc5ff8c0a5f1a513107e76176d5e5f2e0801497_1634807639635_0.3211568055230476","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.29-renovate-internal-patch-cb38611cb4dc2973efbadee735de971b7b3b165d":{"name":"@balena/jellyfish-test-harness","version":"8.1.29-renovate-internal-patch-cb38611cb4dc2973efbadee735de971b7b3b165d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.29-renovate-internal-patch-cb38611cb4dc2973efbadee735de971b7b3b165d","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c70f4645de5688f0112858e4894ac56e27ee001","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.29-renovate-internal-patch-cb38611cb4dc2973efbadee735de971b7b3b165d.tgz","fileCount":27,"integrity":"sha512-tWZ1Esm6A7volQhFZGs4dadAvr6xFK3+k7CZvAN7W721wTu07WlEuicRsDe5yIRhqU4TlPH80QvK0fNFQLB0zQ==","signatures":[{"sig":"MEUCIE24r3a7RkajLg12o2xpQDaz9Q0BI5oRn/Tok6/ChprSAiEAtU6czLAtkBXopzZ8mJVZXpzDvDKXq4OxvU47lg4DTvU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177259},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb38611cb4dc2973efbadee735de971b7b3b165d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T09:16:39.124Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.46","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.29-renovate-internal-patch-cb38611cb4dc2973efbadee735de971b7b3b165d_1634807942869_0.9413984279634642","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.29":{"name":"@balena/jellyfish-test-harness","version":"8.1.29","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.29","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ebc8f7be012eed1aedfa67660efa1131df3386a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.29.tgz","fileCount":27,"integrity":"sha512-jlGjFX3e0j+xgc4U1xIqQ5aS5ib+gm28E+Eorp/XYB79vOtT7nXsjxbf05iFquIftyaXj0MIxlzHZWKJ0T/rRQ==","signatures":[{"sig":"MEYCIQC923BaiqoKrc64UBJITx+c+OGdtbrusC/oVuU70LE4owIhAPVOn9PCWqY/BhI5QaSTeSZP1hRbAK6qQql00mHxTI7y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177194},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25ea36c2ee5db8ed39339f8af27935ef0987dcd5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T09:21:20.134Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.46","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.29_1634808185563_0.6996859909199984","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.30-renovate-internal-patch-0ff8045c7c6f209dbf45358a24996041b25b0b94":{"name":"@balena/jellyfish-test-harness","version":"8.1.30-renovate-internal-patch-0ff8045c7c6f209dbf45358a24996041b25b0b94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.30-renovate-internal-patch-0ff8045c7c6f209dbf45358a24996041b25b0b94","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c91f97de913443f6d5982d3a84f0bde5c2cc08a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.30-renovate-internal-patch-0ff8045c7c6f209dbf45358a24996041b25b0b94.tgz","fileCount":27,"integrity":"sha512-dpKpLWlmQXX1I4R+N5Z28s+gWVoyvHrsvHDAtRBg6AcvpcmuzKhkydcR+YGnzTtJTga+1kwQZ9ihLVT5bVNgzw==","signatures":[{"sig":"MEYCIQD1Pw7k+/wI7sEsXcRJD0qntEhh/9R4kaaLrPBUf4LYtAIhAIFsDf60dyHve7tJXNDym0Z7WyH0NSu4cPPtfxPJVxCV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177366},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0ff8045c7c6f209dbf45358a24996041b25b0b94","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T23:43:21.601Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.30-renovate-internal-patch-0ff8045c7c6f209dbf45358a24996041b25b0b94_1634859977286_0.3924972934628539","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.30":{"name":"@balena/jellyfish-test-harness","version":"8.1.30","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.30","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9b6562572539c1896ce99900fb6f6d2d0a55ff8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.30.tgz","fileCount":27,"integrity":"sha512-kHl5gyIr5h6bw4xG52CE/oKk5sDtrffy3OhKtobUO2hiIQgh9YDsJkF5y9jEGzYDalmFMFBoVrgxQNS6Im/YqQ==","signatures":[{"sig":"MEQCIGdezNxdezBwDjG/u0Bt5jsEEFfSpqcrGT+1Ig+vH5xFAiBcQTYPd7/IUh4m8hJlivoHTCxXiFfCt5r7q9/YtTlxSA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177301},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"adb3359cd60938c8a5c698adc9ff317fb6b07f96","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-21T23:47:15.728Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.30_1634860167409_0.9476273571545042","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.31-renovate-external-non-major-1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188":{"name":"@balena/jellyfish-test-harness","version":"8.1.31-renovate-external-non-major-1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.31-renovate-external-non-major-1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1b7bf71d6aea0a39352984c64bd9bd5657d2b72","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.31-renovate-external-non-major-1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188.tgz","fileCount":27,"integrity":"sha512-BDjRh+YYz8nEBo22d2+d8TKFl7tUmYWOeqzM5ApErtalrQB5WzTbPAMnTefxxZrJKrtpzcXfXpb55SV18dxQWg==","signatures":[{"sig":"MEUCIQCRihGnMCz7o0Ui09hDYBfK8CcPh79J9KgECgIVgU/PBQIgH87/okDLkaGmywUoDBvWIeoo5tQToocJ91BjLRs/gH0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177448},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T00:27:18.648Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.31-renovate-external-non-major-1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188_1634949047323_0.4074768898019827","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.31-renovate-internal-patch-ef58388b0f16a351f98b823ed85a105299ab37ca":{"name":"@balena/jellyfish-test-harness","version":"8.1.31-renovate-internal-patch-ef58388b0f16a351f98b823ed85a105299ab37ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.31-renovate-internal-patch-ef58388b0f16a351f98b823ed85a105299ab37ca","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f3b2f0f759f2acc5aa36705f0c491db6e7b41c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.31-renovate-internal-patch-ef58388b0f16a351f98b823ed85a105299ab37ca.tgz","fileCount":27,"integrity":"sha512-AYlMqp0iLR8NBq7rqxyyaY7QpR6i6uubQZqw0pQJ4L9MjJYQoZMykfgWcdIwucKmBm2cV4JO7B6BtkS7i1GKVw==","signatures":[{"sig":"MEQCIEpz5X414w+iKsaEw2UuJpXiBVH4ociJyAAqgUpMnCgBAiAIMaWwGEUnOZOCVpkldcCyaZQu7lTGQQjZSlYtIVfQWg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177440},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ef58388b0f16a351f98b823ed85a105299ab37ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T00:27:39.011Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.3","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.31","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.2.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.5","typedoc":"^0.22.5","depcheck":"^1.4.2","typescript":"^4.4.3","@types/jest":"^27.0.2","@types/node":"^14.17.20","@types/uuid":"^8.3.1","lint-staged":"^11.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.31-renovate-internal-patch-ef58388b0f16a351f98b823ed85a105299ab37ca_1634949076996_0.024974524559995936","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.31":{"name":"@balena/jellyfish-test-harness","version":"8.1.31","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.31","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"43f2bd9c425f15fd3a5e8e0044b1b2f0c58e4869","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.31.tgz","fileCount":27,"integrity":"sha512-5c+PXguvmEfURc7yZf6rnYcKHSxA4468mm4SPB2PgeESBFmiLDjIZE0MNmrc8NzWEwheas7Dg5cbiOUkcooq+w==","signatures":[{"sig":"MEUCIQCHOUnkho1ww563X5cY6ip3HYn/VzBcR3cbi0Bza2OIvwIgWVjoBe2Ae4F33Q/Uydm/TN5zXnPnx6PqJ1NNhQuA2rE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177379},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5ecf40394b2f3a570e9874e015a78d574a08ac4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T00:32:52.000Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.30","@balena/jellyfish-queue":"^1.0.290","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.247"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.31_1634949318486_0.5435520098292748","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.32-renovate-internal-patch-f5445752aab7aeb34d00e52af448b6a77797d497":{"name":"@balena/jellyfish-test-harness","version":"8.1.32-renovate-internal-patch-f5445752aab7aeb34d00e52af448b6a77797d497","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.32-renovate-internal-patch-f5445752aab7aeb34d00e52af448b6a77797d497","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d5352612c167fe77e7080190b3eded93c4bac74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.32-renovate-internal-patch-f5445752aab7aeb34d00e52af448b6a77797d497.tgz","fileCount":27,"integrity":"sha512-XminVJg+9Q9/WMOZ2Py6V4561jOKaAL4qomv+gEgc036zuoTV9xbIB+UeuAdzx9Q2FxmHazDbX9xkUAMAJyxJg==","signatures":[{"sig":"MEQCIHka08URbSNhLvoHPCLT4TjBc2wgX+kouCP3Qy/VbRHPAiANBQebj8NMflvVxkVgFaaz7R7J6xlUiG7PfDQXh5HjUg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177518},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f5445752aab7aeb34d00e52af448b6a77797d497","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T00:35:12.811Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.31","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.32-renovate-internal-patch-f5445752aab7aeb34d00e52af448b6a77797d497_1634949599701_0.1817689613274267","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.32":{"name":"@balena/jellyfish-test-harness","version":"8.1.32","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.32","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1ce359a5bf2415ed75e362a6adc1ee3ae8431333","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.32.tgz","fileCount":27,"integrity":"sha512-Vv1rSjmpjY2hX1c5pK7qOqydRfzSGfG9qcAJ6jL45biy6GCxqGTMERfNMZbh7HqWS1IM4pcyjHl1w5Dp5zalzA==","signatures":[{"sig":"MEUCIDWubVd6d8NJ1k/88k9BRAasSdBsN3fJkVpy16ehdg3EAiEA2OO6aTnni+h4J/ACZycy5J568ywbbCj4RUxzo1FRNiY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177453},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4a691a441e264d3e96f01864473e492e5ad21c19","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T00:43:39.048Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.31","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.48","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.32_1634949928913_0.2622074121283886","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.33-renovate-internal-patch-5f93be4c51cc2fa9a5e9ee51a656abe182756e4c":{"name":"@balena/jellyfish-test-harness","version":"8.1.33-renovate-internal-patch-5f93be4c51cc2fa9a5e9ee51a656abe182756e4c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.33-renovate-internal-patch-5f93be4c51cc2fa9a5e9ee51a656abe182756e4c","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eb941b502822a7642002c986a31d11f61b33dea9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.33-renovate-internal-patch-5f93be4c51cc2fa9a5e9ee51a656abe182756e4c.tgz","fileCount":27,"integrity":"sha512-dvH7yutNpd83RB2tQQtnLwRuNnBQJItjleGV9ZUj2bvdDuBGlVsrzxCRpjCgv0v4q+Q3euRYBh+EndFNB4/RTQ==","signatures":[{"sig":"MEUCIQCEqRm3zkDCk7iWL7CgQ75xENrdz5Tdx1xj8kqy25KVSAIgI6vCuELOjqdsgLnzBhMf/4/rYDqWIQ3aiE0IBEjKUPg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177592},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5f93be4c51cc2fa9a5e9ee51a656abe182756e4c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T02:21:29.581Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.49","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.33-renovate-internal-patch-5f93be4c51cc2fa9a5e9ee51a656abe182756e4c_1634955863781_0.4514980408600653","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.33":{"name":"@balena/jellyfish-test-harness","version":"8.1.33","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.33","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dd7b6c3b68529b791a475541526bd215674b6f08","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.33.tgz","fileCount":27,"integrity":"sha512-JgUtofdRE6TC1USZZTLjgw7e2HHUXV3GvNaCtwBXu/UVuxXmDQcXabsmKT2PZwkx9yKJ/iqS8JtxYm/7LEWh+w==","signatures":[{"sig":"MEUCIEaXVoc7QRtXloPizvb7BO+AhnUEmTg9FhyGyhnUhlvlAiEAxOt59xvwAYTaxO+UZqOZXDIRM6xOGwriz1m3lskHAPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177527},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aa306d7f50117a568b0fa4b0abc6d37f2d77c927","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T02:26:52.589Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.49","@balena/jellyfish-environment":"^5.0.5","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.33_1634956131657_0.1417765353815299","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.34-renovate-internal-patch-06d4229c021ec92650351077078631fb2d5459b6":{"name":"@balena/jellyfish-test-harness","version":"8.1.34-renovate-internal-patch-06d4229c021ec92650351077078631fb2d5459b6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.34-renovate-internal-patch-06d4229c021ec92650351077078631fb2d5459b6","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41bdc3a1ff07e12ed9e39f9f2a72ec4f2ef3255b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.34-renovate-internal-patch-06d4229c021ec92650351077078631fb2d5459b6.tgz","fileCount":27,"integrity":"sha512-yKLO6UPaNITo/oqM6KaLiJISM2kbDg5pEweq5UzBCcBRNhdi7cnjc7tjMsfe/wdcq1iNf2xUHJzxOHsGC+0uYg==","signatures":[{"sig":"MEUCIQD6u+Fhr6litem4+2f+VmJ+Ias7yEb3YMePR10qYm9A7AIgWI3Xc78eAc0/hJQvDziMlAvIV3K036glHJ31luV5eaM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177702},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06d4229c021ec92650351077078631fb2d5459b6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T02:29:28.782Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.2","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.49","@balena/jellyfish-environment":"^5.0.6","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.34-renovate-internal-patch-06d4229c021ec92650351077078631fb2d5459b6_1634956401506_0.8585271241590764","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.34-renovate-internal-patch-2ad29e7da992b9076df93e4c31f11a0cf05bd636":{"name":"@balena/jellyfish-test-harness","version":"8.1.34-renovate-internal-patch-2ad29e7da992b9076df93e4c31f11a0cf05bd636","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.34-renovate-internal-patch-2ad29e7da992b9076df93e4c31f11a0cf05bd636","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ef1a309c30417561126de4ae279933f25e3948ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.34-renovate-internal-patch-2ad29e7da992b9076df93e4c31f11a0cf05bd636.tgz","fileCount":27,"integrity":"sha512-kS4xctK6cIW3lSWjGrBrlQGAuJieBAHKUPWOCDKs9kcicM5trcCBHlzRIMhEGxNzEHiGF16DE1IWFEaHw0DlUg==","signatures":[{"sig":"MEUCIQDCtbvaNCVMvMxqA2VsMLpLH7sC3M0LX7EhKgtW4xY5SgIgF3M6v5L5tWz79AZ7oXVTNPET7vSOS6/YwV/vKiZGL3c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177666},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2ad29e7da992b9076df93e4c31f11a0cf05bd636","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T02:38:49.707Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.3","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.49","@balena/jellyfish-environment":"^5.0.6","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.34-renovate-internal-patch-2ad29e7da992b9076df93e4c31f11a0cf05bd636_1634956995441_0.658072982059404","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.34":{"name":"@balena/jellyfish-test-harness","version":"8.1.34","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.34","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39f15c9935db90cc74b4a56b0802beff233700f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.34.tgz","fileCount":27,"integrity":"sha512-9QfEkKCc4je1iAYln4i9oixHA2yUucVILEZ/rx/Vz/sjL61zuIXMVwKNMITW+Xvmxnn/unz7agkc72+Sv8QgWA==","signatures":[{"sig":"MEUCIHOLUeik/+D7DJ4Kd5ux1V4RajSrOxoselI68iVK9uGWAiEAuz1Rcm0ty0mplmsymiuS6+OQkM666T3FfyeVDa1E2BA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177601},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ea8083642201d368ace915d6580493c25fbbcd64","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T02:45:29.093Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.3","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.292","@balena/jellyfish-worker":"^10.0.49","@balena/jellyfish-environment":"^5.0.6","@balena/jellyfish-plugin-base":"^2.1.248"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.34_1634957244591_0.3206645644520487","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.35-renovate-internal-patch-e70e99b747fa8777724b9356ca4c985315c2ee67":{"name":"@balena/jellyfish-test-harness","version":"8.1.35-renovate-internal-patch-e70e99b747fa8777724b9356ca4c985315c2ee67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.35-renovate-internal-patch-e70e99b747fa8777724b9356ca4c985315c2ee67","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db1143924e3a79083a2ec571165cee5ff219bd5d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.35-renovate-internal-patch-e70e99b747fa8777724b9356ca4c985315c2ee67.tgz","fileCount":27,"integrity":"sha512-nfPVhx2U18qw5pNYTkpzQahj0ayXD3qmzreZrI9QrIzNdCw68Ul7QAoj2S6RM01EaToWgwkKTYxm4NdI2xA1Mg==","signatures":[{"sig":"MEUCIQDO01V0q881OKfk5ddqCnmORp2fLYKGJSL57/5K/zIeSwIgCKkVvYNK5fgPr1LeJSOr7SBKyhwLe8xIxkjH4VcUcyg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177740},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e70e99b747fa8777724b9356ca4c985315c2ee67","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T04:16:58.612Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.5","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.293","@balena/jellyfish-worker":"^10.0.50","@balena/jellyfish-environment":"^5.0.6","@balena/jellyfish-plugin-base":"^2.1.249"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.35-renovate-internal-patch-e70e99b747fa8777724b9356ca4c985315c2ee67_1634962786242_0.9126863204793545","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.35":{"name":"@balena/jellyfish-test-harness","version":"8.1.35","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.35","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96517110c7f7ddba0852ab06f5eba9b858421f66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.35.tgz","fileCount":27,"integrity":"sha512-6ZzbRmlVk9aQNJFeet2aYk1j+DXqX1bSnOik0OaRsRd9LwkfuYvUw7CIsZzHS3XntpjWbNjaPNHzjpbv51hvpA==","signatures":[{"sig":"MEUCIHYFMk0mH3CsAfkZg7IAxHYIOlaP9FHKQ/qJsmuLx4kPAiEAxR0oOtfTnBKba7HaaWwdYvdH81q7SOIuRpFwBAMAsMM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177675},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"699d753828274263f56909d58c48f18fc7152efc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T04:21:38.774Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.5","@balena/jellyfish-sync":"^6.1.32","@balena/jellyfish-queue":"^1.0.293","@balena/jellyfish-worker":"^10.0.50","@balena/jellyfish-environment":"^5.0.6","@balena/jellyfish-plugin-base":"^2.1.249"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.35_1634963009980_0.14330911236546284","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.36-renovate-internal-patch-dd15e2ff8b52524c9592250e36f19c32bef15dfb":{"name":"@balena/jellyfish-test-harness","version":"8.1.36-renovate-internal-patch-dd15e2ff8b52524c9592250e36f19c32bef15dfb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.36-renovate-internal-patch-dd15e2ff8b52524c9592250e36f19c32bef15dfb","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4b7c877fe487093e0d6eef8e951b275a4ea531cc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.36-renovate-internal-patch-dd15e2ff8b52524c9592250e36f19c32bef15dfb.tgz","fileCount":27,"integrity":"sha512-im08jWEUBG6jnbzv9Skk9mPNAAQRXakXHYcwS7VGMAOeTeuadgtndLNhQtGR1EF91AEo25cOCM3hknepvNv9jQ==","signatures":[{"sig":"MEQCICuT6jOmpLPWDv2FIW3mdSOayZEohougJ9v3iwTOu+trAiBECQxrOMeGuqxbIiOz0lRjtNrpEPSvDDK8LXskvpaLvg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177814},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dd15e2ff8b52524c9592250e36f19c32bef15dfb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T08:00:29.190Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.7","@balena/jellyfish-sync":"^6.1.33","@balena/jellyfish-queue":"^1.0.298","@balena/jellyfish-worker":"^10.0.52","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.250"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.36-renovate-internal-patch-dd15e2ff8b52524c9592250e36f19c32bef15dfb_1634976238807_0.7983927970033815","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.36":{"name":"@balena/jellyfish-test-harness","version":"8.1.36","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.36","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b86d1948f1dfb77b6404e8a1d199bf8d9976266","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.36.tgz","fileCount":27,"integrity":"sha512-2rP97N28LL29x6dHyL6QE2SIjz/KRp/XAsbYVJ0acQIRJ0WQzOOOH9XtH7IcS5KxfjYiPC95PNIOuRVVjfcv4w==","signatures":[{"sig":"MEUCIQDGdNXJDiJgZm68ywG574wJW5wrrra91csvsqGjm36EqgIgEpxL6nhg3BHa/uEuchlWqDC35c4hInIqHf5GJnACpWs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177749},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ebcc431d12d5f6bfa750d6721cc2fd2988298f6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T08:06:59.320Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.7","@balena/jellyfish-sync":"^6.1.33","@balena/jellyfish-queue":"^1.0.298","@balena/jellyfish-worker":"^10.0.52","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.250"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.36_1634976552945_0.6974099395597086","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.37-renovate-internal-patch-b605a89c669afafa885b87bc3bd61c9985f13801":{"name":"@balena/jellyfish-test-harness","version":"8.1.37-renovate-internal-patch-b605a89c669afafa885b87bc3bd61c9985f13801","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.37-renovate-internal-patch-b605a89c669afafa885b87bc3bd61c9985f13801","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e05b7817ad108146c11f9c524da337f6986d31a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.37-renovate-internal-patch-b605a89c669afafa885b87bc3bd61c9985f13801.tgz","fileCount":27,"integrity":"sha512-NcuR6JnKBB4XXE1OKunSKuAL+W+RlS5si5SM1EvYSGOJvIAKsOT6giouwXyYs0nPnm7dPw1HQiOWZNusexcIXQ==","signatures":[{"sig":"MEYCIQC37UgupOI4Cb6zaZbyn5X1NiVAmNPxhxKkZhkjWfdSgAIhAOI7QrRV6hkO4sChxQ8yczvPjkoJ0zHBy7Moy3h/DsRy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177917},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b605a89c669afafa885b87bc3bd61c9985f13801","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T09:15:51.760Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.8","@balena/jellyfish-sync":"^6.1.33","@balena/jellyfish-queue":"^1.0.298","@balena/jellyfish-worker":"^10.0.52","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.250"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.37-renovate-internal-patch-b605a89c669afafa885b87bc3bd61c9985f13801_1634980714166_0.4859536227332957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.37":{"name":"@balena/jellyfish-test-harness","version":"8.1.37","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.37","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"85a823be77553d870e634eb16cf1841bf1cd9529","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.37.tgz","fileCount":27,"integrity":"sha512-ciCM2y4oqAQNfLY7RwyT03UrjvMzbUSK531syREz/HmerpVvt6hGE66m2CnyyqCFPtDhGzQI3s9Zxa8PY+y/XA==","signatures":[{"sig":"MEQCIGlFJm6E4slE5ff1Bv5BvEy3kR396nxDprdkzBA6NbGLAiA0qmcS4MgoooY0tBu/eNnBu4bshEaWQkvluVj69VHf+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177852},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"145fb71208c92b67624ec7a325142582b36964ac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T09:19:50.476Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.8","@balena/jellyfish-sync":"^6.1.33","@balena/jellyfish-queue":"^1.0.298","@balena/jellyfish-worker":"^10.0.52","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.250"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.37_1634980937332_0.34466507173717886","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.38-renovate-internal-patch-415abd690682cae5d31992b9a34ced0c3031d59b":{"name":"@balena/jellyfish-test-harness","version":"8.1.38-renovate-internal-patch-415abd690682cae5d31992b9a34ced0c3031d59b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.38-renovate-internal-patch-415abd690682cae5d31992b9a34ced0c3031d59b","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2988fc80c82d97347ab0f8da014887a6f6796e3f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.38-renovate-internal-patch-415abd690682cae5d31992b9a34ced0c3031d59b.tgz","fileCount":27,"integrity":"sha512-daj+/2hEotkQd38EBqxrF5xAPvvVTdvI6pva7AqaVwGejy6ix5mxZiWD9HMH8v7uO4UXlWDZiQ1XWPMhRl58Fg==","signatures":[{"sig":"MEYCIQDV28Jegu7Y+J5IOIpP5wtQU8a4YyqDznwYiHeTiq74lwIhAMOo3LEKkqpKGPSHWexcU4ITB7U5mWyBjAUoBjl8yHC7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177991},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"415abd690682cae5d31992b9a34ced0c3031d59b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T11:24:58.794Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.9","@balena/jellyfish-sync":"^6.1.34","@balena/jellyfish-queue":"^1.0.299","@balena/jellyfish-worker":"^10.0.53","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.38-renovate-internal-patch-415abd690682cae5d31992b9a34ced0c3031d59b_1634988534674_0.6012165184662703","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.38":{"name":"@balena/jellyfish-test-harness","version":"8.1.38","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.38","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c4677a6af81bc0bd9c2d6b0653912ca80bc6890d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.38.tgz","fileCount":27,"integrity":"sha512-Hr24i53MitIZQTQZxNPya8b/H/DmT7uooE39CHpXpb75YHkb1L74xIxcgIDEi5iusqqpwXUy0f6QFYdbBBFeWQ==","signatures":[{"sig":"MEUCIBQV5Rq6HqTAxSToWwXfECV72C5EV443kJMMrk5lZXqgAiEA+foJmqfFpmRwuPHsfgQPcq9DNuus5j56h2Cx9YAk1UM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":177926},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eb0053e5e5a65d74eadcf583a944ba4e58e1b216","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T11:30:24.498Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.9","@balena/jellyfish-sync":"^6.1.34","@balena/jellyfish-queue":"^1.0.299","@balena/jellyfish-worker":"^10.0.53","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.38_1634988760372_0.4003187595101987","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.39-renovate-internal-patch-c4af44c9bf1064b5cdfa1317d82c9cfde492967f":{"name":"@balena/jellyfish-test-harness","version":"8.1.39-renovate-internal-patch-c4af44c9bf1064b5cdfa1317d82c9cfde492967f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.39-renovate-internal-patch-c4af44c9bf1064b5cdfa1317d82c9cfde492967f","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"99afb9afd26bd8699bec5d958a2efdb59b39cd1c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.39-renovate-internal-patch-c4af44c9bf1064b5cdfa1317d82c9cfde492967f.tgz","fileCount":27,"integrity":"sha512-YhcuFb0Az58K5RHCKPPzk3+RGasH/mzniViqZnq6UQiCOsPyhjHY/upsXzzrANQ4ig1Uzk904eRvEzKghjZR0A==","signatures":[{"sig":"MEUCIC2xfL9JE8azF00KbfKbhR4qvHtaFEtmR3ox4YcVZEwzAiEA7GaYFOYNWx/163vmp2FFOawWJP7RCrrw6CCFpgnSvpo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178098},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c4af44c9bf1064b5cdfa1317d82c9cfde492967f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T13:25:39.343Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.9","@balena/jellyfish-sync":"^6.1.34","@balena/jellyfish-queue":"^1.0.299","@balena/jellyfish-worker":"^10.0.54","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.39-renovate-internal-patch-c4af44c9bf1064b5cdfa1317d82c9cfde492967f_1634995715024_0.9398807850809463","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.39":{"name":"@balena/jellyfish-test-harness","version":"8.1.39","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.39","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f720cb062b23cede19536923538063ff983583ed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.39.tgz","fileCount":27,"integrity":"sha512-DaUfcelBdkeTOo0fLVRbpAPmW3UQAucdU3IIYLLEj4m2WiOSMGgRwM9XXH9dnKv+gy1UH2YMx4U8+wa5yiC2Lw==","signatures":[{"sig":"MEQCIGjK9/KPv2dLXt+3g6q6S+pJUUpboXzero+llwEVhbBfAiArRB/4habdeOO17DeoFPOzzbJJsyD19ReP54XE1TLOJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178033},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"980154ac149b8b9050a6d2c1da9cde0dd3da4ed1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T13:30:44.027Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.9","@balena/jellyfish-sync":"^6.1.34","@balena/jellyfish-queue":"^1.0.299","@balena/jellyfish-worker":"^10.0.54","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.39_1634995954597_0.5652014062457034","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.40-renovate-external-non-major-e09f03a64a1c8a253c20ce3f267dcddd5b954a52":{"name":"@balena/jellyfish-test-harness","version":"8.1.40-renovate-external-non-major-e09f03a64a1c8a253c20ce3f267dcddd5b954a52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.40-renovate-external-non-major-e09f03a64a1c8a253c20ce3f267dcddd5b954a52","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98af467c704365703efe5a174a8a44b540274e54","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.40-renovate-external-non-major-e09f03a64a1c8a253c20ce3f267dcddd5b954a52.tgz","fileCount":27,"integrity":"sha512-gyDfTsC4oP0Ujhj6GukhKAZXKoVXLY83vam51O+aB734XyYYqiRanZUyJvHsi0wAWqxKt5FlChDI/RjFebOwdg==","signatures":[{"sig":"MEUCIF/cWqPuBb1QkBzGCzPmj8XKo6eN5M4KAZk1SfGwC4MrAiEAh6h1wVcH6Qm2BKTdPEO9/gaj3mo5iLxhC+dCwFHrq24=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178195},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e09f03a64a1c8a253c20ce3f267dcddd5b954a52","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T20:03:29.412Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.9","@balena/jellyfish-sync":"^6.1.34","@balena/jellyfish-queue":"^1.0.299","@balena/jellyfish-worker":"^10.0.54","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.40-renovate-external-non-major-e09f03a64a1c8a253c20ce3f267dcddd5b954a52_1635019609468_0.5882071386169396","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.40-renovate-internal-patch-f38141df58ad7b6a6e012d1082b8a600d9373096":{"name":"@balena/jellyfish-test-harness","version":"8.1.40-renovate-internal-patch-f38141df58ad7b6a6e012d1082b8a600d9373096","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.40-renovate-internal-patch-f38141df58ad7b6a6e012d1082b8a600d9373096","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7ace6b3d83b30411aa7831ddbb2139c146bb4ed5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.40-renovate-internal-patch-f38141df58ad7b6a6e012d1082b8a600d9373096.tgz","fileCount":27,"integrity":"sha512-PHIdmsO5AZFap1YZbVuedey8TLBNxFf+f7SUNZI5XRCBEHP4xRZZ3WEdlxBePj5lcJlEnXamhgYh9rHRDj+uNA==","signatures":[{"sig":"MEQCIHm6B48Vs77pCwFADTUUYXDNsyAqXtGpjusmnkMkFH93AiBsQRiZOG3LRJ3w1pc7mL7bHLpECuD0cf8D2srvsvsjBg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178173},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f38141df58ad7b6a6e012d1082b8a600d9373096","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T20:03:48.970Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.10","@balena/jellyfish-sync":"^6.1.36","@balena/jellyfish-queue":"^1.0.301","@balena/jellyfish-worker":"^10.0.57","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.40-renovate-internal-patch-f38141df58ad7b6a6e012d1082b8a600d9373096_1635019635863_0.5096812302157863","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.40":{"name":"@balena/jellyfish-test-harness","version":"8.1.40","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.40","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b849e759e6aca2dad38df208895d8008d50d4c2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.40.tgz","fileCount":27,"integrity":"sha512-02wJBbQ9bSgcrb56jvAgHXoNxl7QVEJ7XzxfkRkUA5nj66BsggX74mR42uZrdLSunIR/b9gEHlx40dnI2QqSAQ==","signatures":[{"sig":"MEUCIDaW/QEaeqefrwRksGqrgv2NuJ8+dxIw6nZaFzr5ZskCAiEA6LvLEwSTCs6Z0qkVbV4bm3jhapE74ahRduunjPl2S4Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178126},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"058549a361a60c5e90176c518de58497b4fb4444","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T20:08:28.589Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.9","@balena/jellyfish-sync":"^6.1.34","@balena/jellyfish-queue":"^1.0.299","@balena/jellyfish-worker":"^10.0.54","@balena/jellyfish-environment":"^5.0.7","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.40_1635019819460_0.3711269530596195","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.41-renovate-internal-patch-a946865643ab5cb63260a26fe6a3428f5870de81":{"name":"@balena/jellyfish-test-harness","version":"8.1.41-renovate-internal-patch-a946865643ab5cb63260a26fe6a3428f5870de81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.41-renovate-internal-patch-a946865643ab5cb63260a26fe6a3428f5870de81","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6c169020fd90d89bd7a7fd476116b3be453f03c7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.41-renovate-internal-patch-a946865643ab5cb63260a26fe6a3428f5870de81.tgz","fileCount":27,"integrity":"sha512-sTUuixZJJVk9cCerzgKvYnVnYem6RLqX+O7Wj3O7bGWlxiC27R85vLlD5yurHn/Eed1qUcAYwGGHQEon6CjZNA==","signatures":[{"sig":"MEUCIHtAe9NL+48gnOV5bIW11XE9xYlIy+JIkZ/RMyrXW26AAiEAmMq3CUubTDfd8+cQm7G4Q7dpOQ04Fpqi9bhqnw1ZH5M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178266},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a946865643ab5cb63260a26fe6a3428f5870de81","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T20:11:46.441Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.10","@balena/jellyfish-sync":"^6.1.36","@balena/jellyfish-queue":"^1.0.301","@balena/jellyfish-worker":"^10.0.57","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.41-renovate-internal-patch-a946865643ab5cb63260a26fe6a3428f5870de81_1635020159217_0.18468590762258774","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.41":{"name":"@balena/jellyfish-test-harness","version":"8.1.41","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.41","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3fec970095cca5b280502e34412dbfb47cd07805","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.41.tgz","fileCount":27,"integrity":"sha512-t6OgrN+ZlA+WNcjiYwoou+fAQMi8/2wi7L1J61p7Mf6H1q9X8iKLYL8a8aOk3zm+7h/Fqck2FRtpvw0KOZ2FrQ==","signatures":[{"sig":"MEQCIA2SiEBydnNRiDDVNpREqVXeI9ir6jNEsqQfJhT2S3JtAiBq08XCcvJYvVDcywGm0YK7dlZvQLdmynN84hl9zQgalg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178201},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c09f84fb1272d8535ee223f2c3cb2d95b6fe1d3f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T20:19:10.027Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.10","@balena/jellyfish-sync":"^6.1.36","@balena/jellyfish-queue":"^1.0.301","@balena/jellyfish-worker":"^10.0.57","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.251"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.41_1635020464175_0.3094220267435954","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.42-renovate-internal-patch-3a7d3ce195111c1da944194df3d04453dc861e80":{"name":"@balena/jellyfish-test-harness","version":"8.1.42-renovate-internal-patch-3a7d3ce195111c1da944194df3d04453dc861e80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.42-renovate-internal-patch-3a7d3ce195111c1da944194df3d04453dc861e80","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dffdd6c00626e80bc29250ca9ea0bb555c69923e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.42-renovate-internal-patch-3a7d3ce195111c1da944194df3d04453dc861e80.tgz","fileCount":27,"integrity":"sha512-TWaOU8qtCozCjHDh1rp+CsRvLdr2ripIZSJaTb82juomGEp5WwVIfjvqrzRFjVlcN1dWfHywfX4nPY8fz8w2VQ==","signatures":[{"sig":"MEQCID8RDDwqVj2PQ65aXw96Tw4WrwwXG1uE2mssNaeZhX+vAiAPKpdN+6KXbo2gQZ4Fta0SZlFxAiuFIY2go+cdzCLNRg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178340},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3a7d3ce195111c1da944194df3d04453dc861e80","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T22:28:39.046Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.11","@balena/jellyfish-sync":"^6.1.37","@balena/jellyfish-queue":"^1.0.302","@balena/jellyfish-worker":"^10.0.58","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.42-renovate-internal-patch-3a7d3ce195111c1da944194df3d04453dc861e80_1635028361532_0.04426986452773085","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.42":{"name":"@balena/jellyfish-test-harness","version":"8.1.42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.42","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d961d9c22cd36c7752fad1864801357095d4e52","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.42.tgz","fileCount":27,"integrity":"sha512-72ozPgxhqEdd7P5GJ8bb1HjwTBFZDgP1erV72iNtTBdwYcJekIIRMIYQjNm8Xc/VPJ6fMi60/xFVqh2XnfFWFA==","signatures":[{"sig":"MEQCIFPaNa9hIhzAf8CwYo9vpdXNi4I8dTnerEzdOEWIisCIAiAeFBmjP9nsjal2Glb9T9m8VsSFDUlZjPCZGSr78IviEw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178275},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bd9b1074d5fad66b7ca88be18c2c1942ac6028e5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-23T22:34:58.942Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.11","@balena/jellyfish-sync":"^6.1.37","@balena/jellyfish-queue":"^1.0.302","@balena/jellyfish-worker":"^10.0.58","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.42_1635028625263_0.33835826618108","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.43-renovate-internal-patch-4ef660d939530ca1a37180c50d56aed8752aac8a":{"name":"@balena/jellyfish-test-harness","version":"8.1.43-renovate-internal-patch-4ef660d939530ca1a37180c50d56aed8752aac8a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.43-renovate-internal-patch-4ef660d939530ca1a37180c50d56aed8752aac8a","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4bf7a64fbed82f0ffa33e5bf7e6c094988e6f885","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.43-renovate-internal-patch-4ef660d939530ca1a37180c50d56aed8752aac8a.tgz","fileCount":27,"integrity":"sha512-X5MYFabtr0V+NLpBhwZVcdnEhzquSb3vMoSsOn24ssHeOzbeCOLG2Dos+4BcLcnBbaEbM3hr+92zoi/XPUgOWA==","signatures":[{"sig":"MEQCIEgRJRPJcxIZk7lu6al8LxYjCIoszP8j4+DwkWzPnsRPAiAJCquH7ohq0F9/t+uC5nYJfX+ctibbnaSgmFgwAYdy6A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178414},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4ef660d939530ca1a37180c50d56aed8752aac8a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-24T00:40:42.954Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.12","@balena/jellyfish-sync":"^6.1.38","@balena/jellyfish-queue":"^1.0.303","@balena/jellyfish-worker":"^10.0.58","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.43-renovate-internal-patch-4ef660d939530ca1a37180c50d56aed8752aac8a_1635036301862_0.4350870404122893","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.43":{"name":"@balena/jellyfish-test-harness","version":"8.1.43","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.43","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e6751a65a25373143e2326682f540f4aaed6a35","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.43.tgz","fileCount":27,"integrity":"sha512-Sa7RfQvQun6tMulWgsH0LIrYLYyVFf410EyKoYV7ue9rFdJtwfkqYK7e79kEdJB14x/l8FcIA3KLKWFi+Ur45A==","signatures":[{"sig":"MEUCIQCyNKd40+hWufWadJ2rrdf/CUUEz/2MS7OfaDsAQjcFywIgFpoXYNxmlU6u/1y+7TxKwyZoH281N0hyD/dtuLO84DE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178349},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de97ebaaf21b346efbdc96aaa761b52a4cd89ea2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-24T00:46:59.853Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.12","@balena/jellyfish-sync":"^6.1.38","@balena/jellyfish-queue":"^1.0.303","@balena/jellyfish-worker":"^10.0.58","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.43_1635036532851_0.5744953713954726","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.44-renovate-internal-patch-211ac096a0ecf6704c79501717b737e72f3d2ba5":{"name":"@balena/jellyfish-test-harness","version":"8.1.44-renovate-internal-patch-211ac096a0ecf6704c79501717b737e72f3d2ba5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.44-renovate-internal-patch-211ac096a0ecf6704c79501717b737e72f3d2ba5","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3b19744398154e06bdbdd546f2b25e8865807581","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.44-renovate-internal-patch-211ac096a0ecf6704c79501717b737e72f3d2ba5.tgz","fileCount":27,"integrity":"sha512-mpjOOIBUeBGAjIUhNaNj+0mqeT0GF0nf7uy5wMRrpFkYdY22qZPg9+l8vrMDGNrNapKqmBtvvfKN6L6lG0C/GQ==","signatures":[{"sig":"MEYCIQC2Crs7vdQa2vJlKp6NJsS2NibKlbbDncWc6OGjsA7z0QIhAOzH4wKMsmhHmqO/l29cD+vF+8DnCIzLpX4B0sBohoAZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178518},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"211ac096a0ecf6704c79501717b737e72f3d2ba5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-25T12:30:17.667Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.13","@balena/jellyfish-sync":"^6.1.38","@balena/jellyfish-queue":"^1.0.303","@balena/jellyfish-worker":"^10.0.58","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.44-renovate-internal-patch-211ac096a0ecf6704c79501717b737e72f3d2ba5_1635165236397_0.15075426116473056","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.44-renovate-internal-patch-54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1":{"name":"@balena/jellyfish-test-harness","version":"8.1.44-renovate-internal-patch-54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.44-renovate-internal-patch-54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4fcb8c99109c6cb0f05953701612f5b9de1b3743","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.44-renovate-internal-patch-54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1.tgz","fileCount":27,"integrity":"sha512-US26w8XCcTAiaMyeZPxoth5LuLusYJSeqmo3FKn1OdyuBcuJ5BDxMWNQUjLIuUH2iqOML9gRSFypffoMTAvaeA==","signatures":[{"sig":"MEQCIF1rR+C7lNmUXEltClSocJr/ji1yZlkkuxqT0Zm+h4mgAiAMQO56+BOPz9Wk4340AUW8gr8T6Oc2Gq8ufivHH9Cofw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178488},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-25T12:35:38.780Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.13","@balena/jellyfish-sync":"^6.1.38","@balena/jellyfish-queue":"^1.0.303","@balena/jellyfish-worker":"^10.0.59","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.44-renovate-internal-patch-54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1_1635165541773_0.4872269067635122","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.44":{"name":"@balena/jellyfish-test-harness","version":"8.1.44","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.44","maintainers":[{"name":"pranavbalena","email":"pranav@balena.io"},{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a09dffba31eb4c01cb52bfec89aa714042ab629f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.44.tgz","fileCount":27,"integrity":"sha512-Nr53QSQ/WLjtTWEZ5lRkScmYc9XMEj8j/2YWBxdoVONya/gxnn+ZtxkEZ6ZRxK3TgqfjAoZ+KTDdYhCO+/i6LQ==","signatures":[{"sig":"MEUCIQC1BJljtpA5XL8kUp88fUfWXy1i8iekpaiPfptD1avCzQIgOBd3o1Osaq+Y89sRdc0PvCjSNvLK3i6IC9DFzpzn17w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178423},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5e5174ce9d9318935bdcfdc3c3463f4b6fbd36d1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-25T12:41:18.419Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.13","@balena/jellyfish-sync":"^6.1.38","@balena/jellyfish-queue":"^1.0.303","@balena/jellyfish-worker":"^10.0.59","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.3","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.44_1635165789072_0.7224534144001544","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.45-renovate-internal-patch-04c23fcb8b6535c016d1c47384161a43330bf1fa":{"name":"@balena/jellyfish-test-harness","version":"8.1.45-renovate-internal-patch-04c23fcb8b6535c016d1c47384161a43330bf1fa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.45-renovate-internal-patch-04c23fcb8b6535c016d1c47384161a43330bf1fa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e60dcdc10e55ce039217fc271e6f823076358487","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.45-renovate-internal-patch-04c23fcb8b6535c016d1c47384161a43330bf1fa.tgz","fileCount":27,"integrity":"sha512-woAFjJ15IOL6TyjmKJUBO4U3cxIu0WAtS2zfsgHcPRfT0LYTwmR1qh6s1fxn8DKUTwtAC7VBA/TSNeCKdFXRmg==","signatures":[{"sig":"MEUCIQCP2mutJJBuon2OftZLN6Sqm26vEM3SgwuMCvpEInL7jQIgaZeRgsPrY0KShCu85G6VCIFCoEyvZOa5oRBVH0TNjJo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178587},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"04c23fcb8b6535c016d1c47384161a43330bf1fa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T01:35:49.553Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.13","@balena/jellyfish-sync":"^6.1.38","@balena/jellyfish-queue":"^1.0.303","@balena/jellyfish-worker":"^10.0.59","@balena/jellyfish-environment":"^5.0.8","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.4","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.45-renovate-internal-patch-04c23fcb8b6535c016d1c47384161a43330bf1fa_1635385209068_0.8728229764027986","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.45-renovate-internal-patch-3f7fed18f50c8593344e6f6cca068e0aa40fbe18":{"name":"@balena/jellyfish-test-harness","version":"8.1.45-renovate-internal-patch-3f7fed18f50c8593344e6f6cca068e0aa40fbe18","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.45-renovate-internal-patch-3f7fed18f50c8593344e6f6cca068e0aa40fbe18","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f1ace518eb624e750ce65aed21c6c3b926dbc48e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.45-renovate-internal-patch-3f7fed18f50c8593344e6f6cca068e0aa40fbe18.tgz","fileCount":27,"integrity":"sha512-83HjXVtA2Rk+PyzfV7cgCRuqP16a45Bi3ZYP4ueJJUp5TD3nrB74NcSWwT25Sm8gJe5/J3Owk0Q0wjWi7EctJw==","signatures":[{"sig":"MEUCIEHXs4LGRRDFvg/jzhJX3NlXATRdVKBXWMuxzg+5Qg6AAiEAj4IVeWFKcdqPv2d756EW0KuJfg5F5SoFLbCe0XLp/lo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178562},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3f7fed18f50c8593344e6f6cca068e0aa40fbe18","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T03:13:08.750Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.15","@balena/jellyfish-sync":"^6.1.39","@balena/jellyfish-queue":"^1.0.304","@balena/jellyfish-worker":"^10.0.60","@balena/jellyfish-environment":"^5.0.9","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.4","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.45-renovate-internal-patch-3f7fed18f50c8593344e6f6cca068e0aa40fbe18_1635391040262_0.7717456260382465","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.45":{"name":"@balena/jellyfish-test-harness","version":"8.1.45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.45","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"47aca745943f573d4661ce2894694d11225a6c61","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.45.tgz","fileCount":27,"integrity":"sha512-6jxJJ8hnMJAvzMBLYvspr85lCqNKOVsqJWByl/ntYtTGowCUkXc3iSswV82/IVao+wNO1k3XekTcAGJiqyfa5Q==","signatures":[{"sig":"MEUCIAho+1qQh/ugHz4do0LepmiTyRXo3u++uZY050f21IUIAiEAhPYyMMi2YGQLjZ1odM3iivhixCxiAYMiiPF3+9me4Ow=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178497},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6d4811b9d8156c199eefd03ed1a24770bf654b60","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T03:19:19.620Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.15","@balena/jellyfish-sync":"^6.1.39","@balena/jellyfish-queue":"^1.0.304","@balena/jellyfish-worker":"^10.0.60","@balena/jellyfish-environment":"^5.0.9","@balena/jellyfish-plugin-base":"^2.1.253"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.4","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.45_1635391265433_0.9701010309841565","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.46-renovate-internal-patch-6a606f858496e7991c8a13e72feec235921a3d53":{"name":"@balena/jellyfish-test-harness","version":"8.1.46-renovate-internal-patch-6a606f858496e7991c8a13e72feec235921a3d53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.46-renovate-internal-patch-6a606f858496e7991c8a13e72feec235921a3d53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"02e63cd257c53fed265fe263fe007e33f42c3f59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.46-renovate-internal-patch-6a606f858496e7991c8a13e72feec235921a3d53.tgz","fileCount":27,"integrity":"sha512-DUiokvdGZDfLb/b4nCDVwFQdkMi++zGF5UTactMTyk2t/06KHlSMvvVUmwQWjBUqsdGdyIVfVLPCk136XB+jJA==","signatures":[{"sig":"MEUCIC6bj+kDdM+3zmgCAeeZLQeuEPXAlgKGDu6APdBWZ8hCAiEAqHweVjQrMYeenOebn51JsQaqPkJ0v1UrWf7ixz3mUmo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178636},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6a606f858496e7991c8a13e72feec235921a3d53","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T09:56:06.104Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.21","@balena/jellyfish-sync":"^6.1.41","@balena/jellyfish-queue":"^1.0.306","@balena/jellyfish-worker":"^10.0.61","@balena/jellyfish-environment":"^5.0.9","@balena/jellyfish-plugin-base":"^2.1.254"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.46-renovate-internal-patch-6a606f858496e7991c8a13e72feec235921a3d53_1635415227686_0.07948839466967783","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.46":{"name":"@balena/jellyfish-test-harness","version":"8.1.46","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.46","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"155a7f4c77c21cf8ff73ac22201b166be614f4b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.46.tgz","fileCount":27,"integrity":"sha512-Ne1DUgzAIdVAG1cuwDrzNAPcxj3rvspi4tVgrsRA7CKdCcc9bxsZaTuuevbVsz3Ji0upkDpQxpwBMp6Ncc1CSg==","signatures":[{"sig":"MEQCIGq5LmDxrdVPxRG0hWJtcHKSWJ4KP83ridQB8YArbNHfAiATL+zcEwy0c4NJDBGHpJkmuamGl2vxPXLP/YvLZi1j2w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178571},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af4bd18f276f355749272957ce6ea540279b0b45","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T10:02:38.514Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.21","@balena/jellyfish-sync":"^6.1.41","@balena/jellyfish-queue":"^1.0.306","@balena/jellyfish-worker":"^10.0.61","@balena/jellyfish-environment":"^5.0.9","@balena/jellyfish-plugin-base":"^2.1.254"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.46_1635415468138_0.805935180635019","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.47-renovate-internal-patch-7020ebbf45a339fbb6bfbdd46f224e869ec37b84":{"name":"@balena/jellyfish-test-harness","version":"8.1.47-renovate-internal-patch-7020ebbf45a339fbb6bfbdd46f224e869ec37b84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.47-renovate-internal-patch-7020ebbf45a339fbb6bfbdd46f224e869ec37b84","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe2369469bda1ea103bf14de471906ae2fbd72b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.47-renovate-internal-patch-7020ebbf45a339fbb6bfbdd46f224e869ec37b84.tgz","fileCount":27,"integrity":"sha512-9X6bpHC5g+F6WJKBBUc7jeD9d7TI5rthMqfGoGdSlS1SnlXwOg37Pf1dBOKVc7ux/WsPrgkBUwzLXrGMljwHEA==","signatures":[{"sig":"MEYCIQCq8C0WT8gSDrV0IMR91geDUvsMatyE08oEEindlWwDeQIhANH3B+fpgVF0cQgB/1swMrOOgSI0G+61lkZa76bWEWRP","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178711},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7020ebbf45a339fbb6bfbdd46f224e869ec37b84","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T13:18:59.998Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.22","@balena/jellyfish-sync":"^6.1.42","@balena/jellyfish-queue":"^1.0.307","@balena/jellyfish-worker":"^10.0.62","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.256"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.47-renovate-internal-patch-7020ebbf45a339fbb6bfbdd46f224e869ec37b84_1635427401827_0.05668658139648608","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.47":{"name":"@balena/jellyfish-test-harness","version":"8.1.47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15279242bb3361c4baa297ddc5b4f9b9af02400f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.47.tgz","fileCount":27,"integrity":"sha512-9vVWutEzTbhZl4KE9F7zpzsG8YsjTx5do9xV5a1Y7HisQN4z/uvp4CSqr7G0dVwG0HeerkBsjrA7zYy0TugKgw==","signatures":[{"sig":"MEYCIQDhiJNS4TyZ4RH3VpUIMfeMgXyiAByImlYZFdHoaej9zwIhALMLSq4CMvYgIOINW5v+fI3fOh/Uyq8Escc+z2te6UhA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178646},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d1e503cbbe5cb1c6a0939cdd22338707e86ca26","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T13:25:58.290Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.22","@balena/jellyfish-sync":"^6.1.42","@balena/jellyfish-queue":"^1.0.307","@balena/jellyfish-worker":"^10.0.62","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.256"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.47_1635427673421_0.6054753751996957","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.48-renovate-internal-patch-a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56":{"name":"@balena/jellyfish-test-harness","version":"8.1.48-renovate-internal-patch-a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.48-renovate-internal-patch-a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1519358418816b6a1f8dbe0f699fd618ad0bce24","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.48-renovate-internal-patch-a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56.tgz","fileCount":27,"integrity":"sha512-tUvhJpZa7njOVesZAaIB9WIQwY1SOVeYR030hXEOHKThjGMENFs1jWG4hXR/kMB5Znv2x+I0PGrfM9eHyyjgOw==","signatures":[{"sig":"MEQCID/S0VYHyAR+HLkOGnlcFXP8bQKiJU8yWOhar/jF6X96AiAzfqDJaoBGLQzglHPQaKuH+7D0msNZUFcj9G4eVlJljg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178785},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T15:42:19.119Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.64","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.48-renovate-internal-patch-a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56_1635435937579_0.5505931487019466","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.48":{"name":"@balena/jellyfish-test-harness","version":"8.1.48","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.48","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"df9465ce55a3b9c525c1fa20d9664b92d1496b05","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.48.tgz","fileCount":27,"integrity":"sha512-TtmaKAMfO7n7lQnuzVGi1EVuGAWCfqUGIZnjChBqF0GyIMic2X/Br3FRkTECaY/HGWOXvRlrlaQVLivW7mhnKg==","signatures":[{"sig":"MEUCIAG6DoRGYc4n4frNGk36qhfG0MzlQ9Qca/W/T+7HFnpTAiEAggZM+ySnzNnfKE+Pbpj1rGLvGRLTrad7TC1sdcPNZ4o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178720},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f6d004f2b5fca7928a343cbc464b2603adacfe5a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T15:47:39.459Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.64","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.48_1635436181795_0.7980898430455405","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.49-renovate-internal-patch-b558b8314e40a80fab3f6ebf878d7fe220d51840":{"name":"@balena/jellyfish-test-harness","version":"8.1.49-renovate-internal-patch-b558b8314e40a80fab3f6ebf878d7fe220d51840","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.49-renovate-internal-patch-b558b8314e40a80fab3f6ebf878d7fe220d51840","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"62ff339de896007a00ca7733a58ec95c20d9dae3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.49-renovate-internal-patch-b558b8314e40a80fab3f6ebf878d7fe220d51840.tgz","fileCount":27,"integrity":"sha512-ZuIQVhAAiu8HbOUg3KsmKggi8je0RAupbJR5qKnYpmOyp2bZCLI4mtvsRviPaVXvE+pZGc/hzobPah/BU2k1Bg==","signatures":[{"sig":"MEYCIQDwCseVyHmJveUBSErVTbCL5ayIAxm2yFs8GJd9WAmc9gIhAMt9hmdcwFpaeK1amYv+b5X+3BZL5N73miYP/cqlR8Ar","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178892},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b558b8314e40a80fab3f6ebf878d7fe220d51840","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T17:38:49.318Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.65","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.49-renovate-internal-patch-b558b8314e40a80fab3f6ebf878d7fe220d51840_1635442949638_0.23228129195256098","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.49":{"name":"@balena/jellyfish-test-harness","version":"8.1.49","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.49","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"83e9c890f65af9247132e44a852fefeed180239e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.49.tgz","fileCount":27,"integrity":"sha512-cqabe0Qu3tQnZz88qkQFq+Z9b+OZh4hDz3OhXzdUxWTrxWpaIyPO/RXdv3DFUWobLcXUQE8FSDu8m0qj1BCJOA==","signatures":[{"sig":"MEUCIFy072Hvjyuf1pmybTZQYbknVAGoOUlIMo/POUq44v00AiEA7bPLlwm8H8t6iXh8UoQZtqnWJxpswWHI4K7U3WNNBWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178827},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d73e69ada26e3c96c6bb629c1d0ea82ee85b3d4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-28T17:43:52.901Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.65","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.49_1635443236096_0.42813775386318365","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.50-renovate-internal-patch-b66da601e5f218d9d0bf5c89a12de463a490713f":{"name":"@balena/jellyfish-test-harness","version":"8.1.50-renovate-internal-patch-b66da601e5f218d9d0bf5c89a12de463a490713f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.50-renovate-internal-patch-b66da601e5f218d9d0bf5c89a12de463a490713f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b091533e69a35577a836bb9256fc5d96461c3c82","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.50-renovate-internal-patch-b66da601e5f218d9d0bf5c89a12de463a490713f.tgz","fileCount":27,"integrity":"sha512-cLT7zqi2wVf1JeUyhPMX9Zo5Vp14wGyEmP2vKZG87uLdOjC0EkDEQVZF6ubiZkZ4ec3tt+0ZBfDnm/XTQHhFKA==","signatures":[{"sig":"MEUCIQDa2tqOdzne9dBxmPaI7+HHX2VHUik5WZgHd2DpEhiy9gIgOVU4Z/eNyAJyW6qBqI8/S34BBSFDP6omyZ01ZheDpHc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178999},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b66da601e5f218d9d0bf5c89a12de463a490713f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-29T15:58:09.278Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.66","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.50-renovate-internal-patch-b66da601e5f218d9d0bf5c89a12de463a490713f_1635523300483_0.5729942000052015","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.50":{"name":"@balena/jellyfish-test-harness","version":"8.1.50","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.50","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4794dab38894fc488fe8c7ccc21da0d211b547a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.50.tgz","fileCount":27,"integrity":"sha512-RIX8RSOI9wxzqHTZKRVJs6TS9udRDvBQoA4fmOVZl5NqBpJ/Wic3q4qHNV0RG//g1EwmbjBCZeFO1hw91SCixg==","signatures":[{"sig":"MEUCIQDQ+Ae8lc2KQU6Iibiy4NXaOZ7F42UTqa9pqZbVex33lgIgDx7JTO+XoDt3b2OkBe9/Je+30A3Hj6GqoxI6LzW3EEA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":178934},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"980054509b4387c053bbc95171e7d67a4edb926d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-29T16:03:28.405Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.66","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.50_1635523521829_0.22248027557832262","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.51-renovate-external-non-major-3b6464109f99be594dffba2629381ac3691f1300":{"name":"@balena/jellyfish-test-harness","version":"8.1.51-renovate-external-non-major-3b6464109f99be594dffba2629381ac3691f1300","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.51-renovate-external-non-major-3b6464109f99be594dffba2629381ac3691f1300","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f0266660e8db54520bf31a561f2dd105328b32db","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.51-renovate-external-non-major-3b6464109f99be594dffba2629381ac3691f1300.tgz","fileCount":27,"integrity":"sha512-n3abnwEO6h76RMyiEPY0KGU4nQzYbsZnV3KTWoH7sPKx0l00Vjbq4lrncd5SWIEm9cG1FjUN87apQUmmgSI0Fw==","signatures":[{"sig":"MEYCIQDaBG5ifu5dxELtGGVG2F8di8nVldl2qauTSu/sPKuKgAIhAPiv/4vcgcntjOEWNeCylSN8wy+sTeIK3Dl5H9PgfBaR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179081},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b6464109f99be594dffba2629381ac3691f1300","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T01:52:59.157Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.23","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.66","@balena/jellyfish-environment":"^5.0.10","@balena/jellyfish-plugin-base":"^2.1.257"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.32","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.51-renovate-external-non-major-3b6464109f99be594dffba2629381ac3691f1300_1635559018251_0.82867729549012","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.51-renovate-internal-patch-db17d4a2e43e7c2b017463e482d9f63e3132b472":{"name":"@balena/jellyfish-test-harness","version":"8.1.51-renovate-internal-patch-db17d4a2e43e7c2b017463e482d9f63e3132b472","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.51-renovate-internal-patch-db17d4a2e43e7c2b017463e482d9f63e3132b472","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"025dc55ef1d9fab88dfef15659ab62e68ad0c16e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.51-renovate-internal-patch-db17d4a2e43e7c2b017463e482d9f63e3132b472.tgz","fileCount":27,"integrity":"sha512-ZF7GbqkOARHf0Q8FeQYjZkNf1cb51k2QoGJ8QFnx+E7EvzRsMCGyMfc0tCNPlNSffB0xwDooxNB5JgfkFJRIkA==","signatures":[{"sig":"MEUCIQCjwBXHseUGPaKAhdMzbSRmuA6N3apxdAdj018KZ7GMggIgB4NhUCYBjmWGo6GayTAzPOyijc80G6DUQVUytTgmj4U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179073},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db17d4a2e43e7c2b017463e482d9f63e3132b472","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T01:53:49.493Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.43","@balena/jellyfish-queue":"^1.0.308","@balena/jellyfish-worker":"^10.0.68","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.258"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.51-renovate-internal-patch-db17d4a2e43e7c2b017463e482d9f63e3132b472_1635559048363_0.2522306760587367","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.51-renovate-internal-patch-3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1":{"name":"@balena/jellyfish-test-harness","version":"8.1.51-renovate-internal-patch-3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.51-renovate-internal-patch-3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a9e5622d433985679ca19bfe0aacd896a209597","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.51-renovate-internal-patch-3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1.tgz","fileCount":27,"integrity":"sha512-ihsBm3Mwna/iGuFrqO7HSRNQVnN0Y4HscuBQDZRxZB7SylvSjffIHCxB+PibbVCgSz+4eONrLHPv1Cu3PsF3zQ==","signatures":[{"sig":"MEUCIA3EZAEXmNMxForbSVQdu4HUDKQ1VoOrt2qBsZdHzYnYAiEA0i+3ZlLQj6I7sMPYTFVQTxgvacTO+p5Sf2cMVTfQf48=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179073},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T05:53:59.268Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.46","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.51-renovate-internal-patch-3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1_1635573458639_0.12112014455125641","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.51-renovate-internal-patch-5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813":{"name":"@balena/jellyfish-test-harness","version":"8.1.51-renovate-internal-patch-5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.51-renovate-internal-patch-5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"935f819b96e9573d36b1034b9cbdbf47f61afa1f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.51-renovate-internal-patch-5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813.tgz","fileCount":27,"integrity":"sha512-bSVhUv1eqcsTF3OTN76bz/1zICiWTxSDaDWYr+raU/oYzAv/SR2kNND6eJB4WLi8mift/PDNoqH4X25Ou9krJw==","signatures":[{"sig":"MEUCIQCtmhZ55gii4pl9MjnsmJ+l6+3Sq3ZCA+gLeX4sSUj7pAIgV+WJt6LlqKO5KXqrGcxRPtdrduiJHgDfVVQTl8ezjZ0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179073},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T05:59:06.923Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.51-renovate-internal-patch-5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813_1635573825429_0.9243953909141134","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.51":{"name":"@balena/jellyfish-test-harness","version":"8.1.51","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.51","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f7effd46ed80eb6ccbb6d860b7503aca67f9ea4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.51.tgz","fileCount":27,"integrity":"sha512-OMBSdwvn8+NLiLILHxMtnz9J8iMFN3XF6UsXrCJGBMD89vy1a3vAch7JXl3dmiXUDwWMolFC3U5BfZSzDBqBqg==","signatures":[{"sig":"MEUCIAXDqe3HesrGXSZokM0GmV5nms1zpiWv7FQSzbmfvCELAiEAkFJU/eS/q+KyiD2reIB2UztP43v2rOzRhKqfzFP+h2w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179008},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"edb37ebf2ca7ae54e398d25099bc4c9abe05863b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T06:05:52.251Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.29","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.51_1635574061557_0.06620871021082442","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.52-renovate-external-non-major-3b42b7107ab2402a77903f3d016ac821c277a0e5":{"name":"@balena/jellyfish-test-harness","version":"8.1.52-renovate-external-non-major-3b42b7107ab2402a77903f3d016ac821c277a0e5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.52-renovate-external-non-major-3b42b7107ab2402a77903f3d016ac821c277a0e5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d90b2756fe78ac67d69a6d1f3a85c54d0c1908bb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.52-renovate-external-non-major-3b42b7107ab2402a77903f3d016ac821c277a0e5.tgz","fileCount":27,"integrity":"sha512-gHwX18w+jGay8r4vsZ8+HFM5VQ+Ncl55RUom/npqdhbf/LDk9rEZSw8swO9GnXjhnuud6m46hmD5JE4w/9Rcgw==","signatures":[{"sig":"MEUCIQCMm1haCQ4b54RQjuBt9aGiiJF9pXbBSWQy3fsi6lyyPQIgMEtc4i+2RGQXjJNWY8LUahsGRlL5F174VT4dkxAHtC4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179155},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b42b7107ab2402a77903f3d016ac821c277a0e5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T06:08:58.664Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.32","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.52-renovate-external-non-major-3b42b7107ab2402a77903f3d016ac821c277a0e5_1635574344326_0.35015095595188495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.52-renovate-major-external-major-e4cb40e1450acb81f1bdeeea26de82d4704c0101":{"name":"@balena/jellyfish-test-harness","version":"8.1.52-renovate-major-external-major-e4cb40e1450acb81f1bdeeea26de82d4704c0101","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.52-renovate-major-external-major-e4cb40e1450acb81f1bdeeea26de82d4704c0101","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"08a76309f7277b98bee2bf19f003e0f7af6d4015","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.52-renovate-major-external-major-e4cb40e1450acb81f1bdeeea26de82d4704c0101.tgz","fileCount":27,"integrity":"sha512-tEBYIfc8z5dLmS+4ry+5tiILfIZVoqNEx6goV7tDN9620U+jQ6Cd9aVBSVvKehU2bqfpVfEObOGH7AOvZTb+rQ==","signatures":[{"sig":"MEUCIGzP3256LZrSDotctesqO3WJm99gwyeow9NGreUXIGMIAiEAyqZ5DsvuyR0LxxrMnTEu2lPK+/3r+Sm5dfnrOrwrqE4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179167},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e4cb40e1450acb81f1bdeeea26de82d4704c0101","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T06:09:18.822Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.6","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.4","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.6.1","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.52-renovate-major-external-major-e4cb40e1450acb81f1bdeeea26de82d4704c0101_1635574399418_0.037317045415769634","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.52":{"name":"@balena/jellyfish-test-harness","version":"8.1.52","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.52","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cfeb93b88fe332e1b46dd629a22ac53bb5a15a5f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.52.tgz","fileCount":27,"integrity":"sha512-Tgmk7ByMasoNhShObtOooPI6VJdnElklFoA8AteuM4YF/7lNUPcvd20aBllhhgdwW5o6z4Y/mvySyScCfh5fQA==","signatures":[{"sig":"MEUCIGyuipd5qZQmfoAbQi85PGyngt3ts8dghH5c+W7CF5N1AiEAizhfUA8JmqIMkRgx9dCD+gwU6iKHMOSI+oSt77Lp+1c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179086},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6f18a4140bfd84aee4601a98d638bce70e44a1c7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T06:16:40.150Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^14.17.32","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.52_1635574733338_0.5832903925435973","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.53-renovate-major-external-major-e436ff84ae54495b8dfbd8eea25c4fffccf10bce":{"name":"@balena/jellyfish-test-harness","version":"8.1.53-renovate-major-external-major-e436ff84ae54495b8dfbd8eea25c4fffccf10bce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.53-renovate-major-external-major-e436ff84ae54495b8dfbd8eea25c4fffccf10bce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fa555d6e4bf558ca441db0bd1ddee21f37b220dd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.53-renovate-major-external-major-e436ff84ae54495b8dfbd8eea25c4fffccf10bce.tgz","fileCount":27,"integrity":"sha512-Novkbbvee7Z3WNiepyPpiteI/soqNCwK2BVScoMyxe6yip2L11LZBNokk+F0m220vG2xlccar3sMdsekuFW48w==","signatures":[{"sig":"MEUCIQCMh5Zwc3gJxmmgmBdQFIyEKoq0mC4/AM/s5z1IlHJE0wIgAWXs/5ekep/+Htzbewm2iw/ZqxR8rVXbh0BH/EyApYE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179245},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e436ff84ae54495b8dfbd8eea25c4fffccf10bce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T06:19:28.601Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.53-renovate-major-external-major-e436ff84ae54495b8dfbd8eea25c4fffccf10bce_1635574965418_0.555022399819036","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.53":{"name":"@balena/jellyfish-test-harness","version":"8.1.53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"daeed974404f90f347532ebff87e65c2c874b725","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.53.tgz","fileCount":27,"integrity":"sha512-o2uy/hGM8Qmsq5YrEs8Tfd3rurBuvo7w88gzLtg+4Sg99LW9sBUZxaqBixn3jmnKUuqZnnjE5wv70ZfVNWvQvw==","signatures":[{"sig":"MEUCIQCKdB+FlGSDheSNz4VUxOnle4Osp3bX5dtdMG0EJ+pl/wIgEy/M4eEMmMuv+j4nivCBdJF5FIYCL/NTHrWuV7xi8bA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179174},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a71c79ae065a0a61159df7bab9ebf88ddf367525","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T10:06:18.641Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.24","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.69","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.53_1635588512958_0.4693354746443221","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.54-renovate-internal-patch-31283adf672a8d7247e6f0188447d3e2ddba818c":{"name":"@balena/jellyfish-test-harness","version":"8.1.54-renovate-internal-patch-31283adf672a8d7247e6f0188447d3e2ddba818c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.54-renovate-internal-patch-31283adf672a8d7247e6f0188447d3e2ddba818c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1ed62c32a0d50c9bc2a3ce61d6cd9a9795bdcf1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.54-renovate-internal-patch-31283adf672a8d7247e6f0188447d3e2ddba818c.tgz","fileCount":27,"integrity":"sha512-iBlLQUZ1Zup67r/SsmvHqNovJINx3bL6QqU0MPWyQjxh2Ifec67Ys3Ljyir6Qlqo1AyYuDLYtMjmnupbFqiEDA==","signatures":[{"sig":"MEUCIF+8yPhd+CMeT2DeDBVR58+9RfTuktjscctiEGYLaff/AiEAsAJOBY0ck6heypkeMoESaaZvO3HDvmXakwLZD7zle/M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179313},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"31283adf672a8d7247e6f0188447d3e2ddba818c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T11:03:28.372Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.25","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.70","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.54-renovate-internal-patch-31283adf672a8d7247e6f0188447d3e2ddba818c_1635592019453_0.25190863381326545","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.54":{"name":"@balena/jellyfish-test-harness","version":"8.1.54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.54","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"012d12f52f15258385fec80f8cfeae0a4b8cc3d3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.54.tgz","fileCount":27,"integrity":"sha512-lOMB3sI9nv8EKvRKeTl49ABWd6ZPXk4Fd+iCMcQnQi+sZwNTFynhw5LR+cqmfcC/FF7cRLADzuvMrDeO+5odHg==","signatures":[{"sig":"MEQCIHZ5/eiFdDJtaroV/GYAQHSpRPPVUYlmtKmg0GHjJnT3AiB9oUoB8RdG5gxqsvRw/dRKOsN2+M23Xboc3LS0iMiMSA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179248},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"be6be431619275e3202dc9e47b3e076a54ab95e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T11:08:58.516Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.25","@balena/jellyfish-sync":"^6.1.47","@balena/jellyfish-queue":"^1.0.310","@balena/jellyfish-worker":"^10.0.70","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.54_1635592246949_0.3259707602722033","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.55-renovate-internal-patch-04755922e16b4ed0de3639f8a8615f349715d835":{"name":"@balena/jellyfish-test-harness","version":"8.1.55-renovate-internal-patch-04755922e16b4ed0de3639f8a8615f349715d835","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.55-renovate-internal-patch-04755922e16b4ed0de3639f8a8615f349715d835","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ece76e6867cbc71cc358882e78796ef102b621df","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.55-renovate-internal-patch-04755922e16b4ed0de3639f8a8615f349715d835.tgz","fileCount":27,"integrity":"sha512-6hi+dJgFv1+Hdzh9Y+MChGz0zz8j07WWJqXX6QGg46XqObHkclYfYsZwGb9sU/j/eq70NMqBDNjfGktalfEz7A==","signatures":[{"sig":"MEYCIQDzbUmaa2whwZ2fI303Dkj9Zu4ReS3jhE5yCc9zmIyb1QIhAI6eaB79Kv7Stak+4wP1gwuAIeioSPaN7uD/08/iIAdc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179387},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"04755922e16b4ed0de3639f8a8615f349715d835","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T12:01:19.469Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.25","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.311","@balena/jellyfish-worker":"^10.0.70","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.55-renovate-internal-patch-04755922e16b4ed0de3639f8a8615f349715d835_1635595478801_0.7850353089981961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.55":{"name":"@balena/jellyfish-test-harness","version":"8.1.55","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.55","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e9250a8823c98dac26db08a9c52374146bbb612","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.55.tgz","fileCount":27,"integrity":"sha512-TxngGMhbacDrJzCqO8VwVYq6WHDSxiGit0JlAVEdygPlxCqj37BV4FtHcJyKzLOpsSxU0AKDlyILCdwTSzhkBQ==","signatures":[{"sig":"MEUCIA9kIG3SRIH+xRltkZklz7wuOFq3PEriMS9jOUoT6KoPAiEA5wHWj+38HF8LrQNtgwYPxn8xnJgWFqPU29C8ou9GV2U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179322},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8edacda41f9f7a7d423d19e5cc3441112b333265","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T12:05:44.202Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.25","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.311","@balena/jellyfish-worker":"^10.0.70","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.55_1635595691639_0.11624949263949658","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.56-renovate-internal-patch-6d66952a9988c54bf88d4a95429f5b0b43407d2a":{"name":"@balena/jellyfish-test-harness","version":"8.1.56-renovate-internal-patch-6d66952a9988c54bf88d4a95429f5b0b43407d2a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.56-renovate-internal-patch-6d66952a9988c54bf88d4a95429f5b0b43407d2a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b1ac6520c4511392a160089fd3271719a46cd18f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.56-renovate-internal-patch-6d66952a9988c54bf88d4a95429f5b0b43407d2a.tgz","fileCount":27,"integrity":"sha512-ImfePXIq5wpySYbjl+6xg3c4eBBZD6IpJt4k+tBLkN87d3/9Ecf/WTLydj8q6vUpLzo4w0Xa7TmqczUEzBSlCg==","signatures":[{"sig":"MEUCIBtIvsNuDGFAT5rswvDW7FEESQB1EnyFfeTC9EyRh81mAiEA75lOfawWuFNsITGyO+IB47fVWPrAkOn+pOQXd/7QVmE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179461},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6d66952a9988c54bf88d4a95429f5b0b43407d2a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T13:50:18.990Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.312","@balena/jellyfish-worker":"^10.0.70","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.56-renovate-internal-patch-6d66952a9988c54bf88d4a95429f5b0b43407d2a_1635601970828_0.2385559224232725","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.56":{"name":"@balena/jellyfish-test-harness","version":"8.1.56","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.56","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6b8feeaed454cbe609a9ce99e891aac522be16c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.56.tgz","fileCount":27,"integrity":"sha512-PeBB1XrumhhDIXaMsrt563zNJYoivgXVvTlfCH41fAIlKhbcLzstK2KosjkWl/t5NmD2X5gBI8EcfAsDoB+MSg==","signatures":[{"sig":"MEUCIQDB9ZKv+YJeih3FXYWhZp+4r7Mc8sEMtgLT/QLPQuQRUAIgOG1CNP7vW2+3e5TgpjBJN39p7uO0HwwYVMWIH+JKvXU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179396},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7665dea05988c29fc8880a040b04ca1bf1e81927","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-30T13:54:38.748Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.312","@balena/jellyfish-worker":"^10.0.70","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.56_1635602197139_0.5031656498478083","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.57-renovate-internal-patch-2e8ea142679f83bab35070d85e62277e9acb4af9":{"name":"@balena/jellyfish-test-harness","version":"8.1.57-renovate-internal-patch-2e8ea142679f83bab35070d85e62277e9acb4af9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.57-renovate-internal-patch-2e8ea142679f83bab35070d85e62277e9acb4af9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d3603f7fa2aa78f825d3d2fedf9b6e11c28e5746","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.57-renovate-internal-patch-2e8ea142679f83bab35070d85e62277e9acb4af9.tgz","fileCount":27,"integrity":"sha512-5kCtekA/FTKWmGM71B4sdu6U5yf4zKvUHZmScbaxZ1LHr0skwTE4PWNKqQctKr3sjhF6JpcAszwYTak1GMP1vA==","signatures":[{"sig":"MEUCIAXGoz3u/BYnMRPiSrX/0F/qb/x+nn8/a43kOh0p0Yj2AiEAvU0Ln3Dbo3zNzqIeiN9JSnhjULW/B1Jd4yhefwBlUO0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179568},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2e8ea142679f83bab35070d85e62277e9acb4af9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-31T22:33:29.405Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.312","@balena/jellyfish-worker":"^10.0.71","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.57-renovate-internal-patch-2e8ea142679f83bab35070d85e62277e9acb4af9_1635719792166_0.09695848079450853","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.57":{"name":"@balena/jellyfish-test-harness","version":"8.1.57","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.57","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a5c9796f35c97fded32529459124e71126136899","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.57.tgz","fileCount":27,"integrity":"sha512-3eBXugqy1rKNTIn3lzzceeit2hY1gcgCSv/6gMUhjlr7GQMT6mDJ+jGBEUxSwXxa2cqD45FT9TBFO0858iS8zg==","signatures":[{"sig":"MEUCIQCq/AJClZkSlB17oXCuqeqO8WtjDaxmjgOfqwcfMLGexwIgMNjV9zKZjIh1mBxiAK57Xd+ITUGUn3Ui3VEJRu9asu4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179503},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"65eacec4cc6149181be8843779a19f1f0c8198a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-10-31T22:37:55.161Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.312","@balena/jellyfish-worker":"^10.0.71","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.57_1635720003793_0.7821423305665662","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.58-renovate-internal-patch-c33b9874c74abbc07a4fe9575315306681880d53":{"name":"@balena/jellyfish-test-harness","version":"8.1.58-renovate-internal-patch-c33b9874c74abbc07a4fe9575315306681880d53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.58-renovate-internal-patch-c33b9874c74abbc07a4fe9575315306681880d53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09852a9928b32e7c24d2c9568d8a3110dad7fca5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.58-renovate-internal-patch-c33b9874c74abbc07a4fe9575315306681880d53.tgz","fileCount":27,"integrity":"sha512-xHKGtOjAuEXYja9d+VLDqFNUBYGMgfYMbWDWB0Q4mZ/IL7D0YLtj+kW+l3qLkyB+hbN4+RhX1OE8G82ZiQ4sXQ==","signatures":[{"sig":"MEYCIQDHRtBo4zKsOBtbpBRH0i8kjVxI3/YKuV/9hVbb9X6C8wIhAP7xyNotHXAKFOxTfpDf8veg4/tAZ1xTsc86W36oPZj9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179675},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c33b9874c74abbc07a4fe9575315306681880d53","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-03T11:31:58.284Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.312","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.58-renovate-internal-patch-c33b9874c74abbc07a4fe9575315306681880d53_1635939310601_0.284668342057119","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.58":{"name":"@balena/jellyfish-test-harness","version":"8.1.58","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.58","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b0f8ee4ccc40d6b6304fe8365827063cbb50484","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.58.tgz","fileCount":27,"integrity":"sha512-/sn0vEn8uKPSITbLfoPujr3ge0v7FVK6JquVJz0IusqSVoCy55veGRLHgSvGs5MrENhxU9siUvxJ44Y+lr9Dcg==","signatures":[{"sig":"MEYCIQCxzrOI4h2AQMW+VIxMvVTaHV1Q7CdZNx0dqXtBfpKTsgIhANnlTrCRx1EY+5S6XQc4F3rK2JcGD0Q/ZPFDtnVzGMnC","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179610},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d90b132821e4671a31b30205efdad17d1a6b03e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-03T11:37:48.273Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.312","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.58_1635939580342_0.9864969671238975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.59-renovate-internal-patch-afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795":{"name":"@balena/jellyfish-test-harness","version":"8.1.59-renovate-internal-patch-afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.59-renovate-internal-patch-afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c7ef2baa373cd44a4856affddc79e43fd2b2440b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.59-renovate-internal-patch-afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795.tgz","fileCount":27,"integrity":"sha512-Ap/esNDt+0UIVYSMtGNxYbXWjDcrO0ge2mhe8MEKA/bzDCtT+ta6S/w/nzUK5nRmx6ML/x+dcnF9Av6BIY1JHA==","signatures":[{"sig":"MEQCIFQ4UDkURULVIBUS1BlBtWGAqG8hQf9moxqsCGxvxZrwAiB5ZD0vkX6u2aiwR4bXWKRJvVlzS20U9skxkYh88tbPyA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179781},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T04:43:16.306Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.59-renovate-internal-patch-afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795_1636087588024_0.5114951185902374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.59":{"name":"@balena/jellyfish-test-harness","version":"8.1.59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"abda06db9e8459fb5e5b28d11f141bf89137517f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.59.tgz","fileCount":27,"integrity":"sha512-lWSO/12x0avtVNmGDYrEdsQPDrt+cPCO5sAtqY54Dr+34QgeqxsVjTdQ7EcdON10sEVOohgt2V6XwcINM7+JIw==","signatures":[{"sig":"MEUCIQDlVA/OBU/0xr94pd4+UUVOoTPFRDriIVx2V3xQy6jE+AIgXynupA64Dd/UU7+m7ANYMrN1f1B8wZX8ewjchf3uNxk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179716},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"62ef32c421b6a9408fdde3c2f2ebd9b7698413d2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T04:47:32.593Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.26","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.59_1636087761722_0.6096686481864584","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.60-renovate-internal-patch-712f8192bf58fd46689209503b5432b6c9bbeef8":{"name":"@balena/jellyfish-test-harness","version":"8.1.60-renovate-internal-patch-712f8192bf58fd46689209503b5432b6c9bbeef8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.60-renovate-internal-patch-712f8192bf58fd46689209503b5432b6c9bbeef8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e2a2532c22be3d77a36f7231532e7dcd4fc235aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.60-renovate-internal-patch-712f8192bf58fd46689209503b5432b6c9bbeef8.tgz","fileCount":27,"integrity":"sha512-UbpcQL9lZ2dFkqHr1kY7PF7JEZZqcR4Mm06y48qFvWmNb/DR3db4K3Jl91VY6bGLpnrnNeokzpgR+qDsvjk7ug==","signatures":[{"sig":"MEUCIQCsxUeWh1Tb0cDTd4zykdVkxzQGG4HDWZWSyYe22Iq3RgIgOgYJZAdDOoED4E2AVjUu3IN/L7FV33M6Bp0/x7VGNds=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179885},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"712f8192bf58fd46689209503b5432b6c9bbeef8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T09:00:59.858Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.27","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.60-renovate-internal-patch-712f8192bf58fd46689209503b5432b6c9bbeef8_1636103127282_0.028294605099610015","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.60":{"name":"@balena/jellyfish-test-harness","version":"8.1.60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bcdd3bcdbcbcf30f3e15a40f7112fba4248c8de4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.60.tgz","fileCount":27,"integrity":"sha512-WezFBW2pk7sqW1F3bEq3OQvcYj4KbNfujok1CZWAgpEeWxUTtvwLpsQAPDRCPK11j3qNwJYKBlt7+zrkkjM+Bg==","signatures":[{"sig":"MEUCIQCjy7GAsVyymdE6m/kYwP7IVe+pgZqtavmwvLEZOyKjzQIgQvgtCTzMSNqWKXV3ksi8ZJcXL3/cVAShAXk2ZpZh7Dg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179820},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a4347b29e5e8a6d3a79b08cb65cae6a371e5e21e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T09:06:41.051Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^7.0.27","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.60_1636103321608_0.9907813676693344","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.61-renovate-balena-jellyfish-core-8-x-24662d7748d5abe3bfde54588f1afe67788bc1e4":{"name":"@balena/jellyfish-test-harness","version":"8.1.61-renovate-balena-jellyfish-core-8-x-24662d7748d5abe3bfde54588f1afe67788bc1e4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.61-renovate-balena-jellyfish-core-8-x-24662d7748d5abe3bfde54588f1afe67788bc1e4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f423f80f1930aae1b849d9b1b370c4c29ec7e1d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.61-renovate-balena-jellyfish-core-8-x-24662d7748d5abe3bfde54588f1afe67788bc1e4.tgz","fileCount":27,"integrity":"sha512-5/bhnz1b+uC72XFoU34/EoWfxyXwXynEJdvlvlf7JbwXk8Hz7N3jQoXL7fkBzavjPz2kjoPNK0yglpApoOEv0g==","signatures":[{"sig":"MEUCIQDKVJTWdArtnOCv0+zZcOZ0zGwGUkzL43XMZAugiUKx+QIgTSVilTzAfkS3Y1wGK1X399r6HYJ4VlLCX56HsyJiXgI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179994},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"24662d7748d5abe3bfde54588f1afe67788bc1e4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T09:11:17.155Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.0","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.61-renovate-balena-jellyfish-core-8-x-24662d7748d5abe3bfde54588f1afe67788bc1e4_1636103614993_0.13336666011419274","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.61":{"name":"@balena/jellyfish-test-harness","version":"8.1.61","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.61","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ddf32a1a03a6a93db1eb152c85a44f1ed0a1d1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.61.tgz","fileCount":27,"integrity":"sha512-YL//+ShKbrOoMGNu0vsqkO9pytjG58N9J4fe9iDnJT1iOnL+zDEs1HoP10o+u0ieJXAWhZcgClLIXAJqdpz1/w==","signatures":[{"sig":"MEQCIFegnd8TCvMwrwEjixT/9CGCakexI8S7Hw6+Th1wGVpnAiBnsQ0LBtjAsU6tSQvHjqgJ0FegtlSdoma8W28yv6+B2w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179918},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c24fb78f943ae1784603d49eb0a78de53a8c050e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T23:11:07.813Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.0","@balena/jellyfish-sync":"^6.1.48","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.11","@balena/jellyfish-plugin-base":"^2.1.259"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.61_1636154577132_0.9251082168368243","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.62-renovate-internal-patch-94c8d510036c1df67aa6b6ecf1be76e566744b45":{"name":"@balena/jellyfish-test-harness","version":"8.1.62-renovate-internal-patch-94c8d510036c1df67aa6b6ecf1be76e566744b45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.62-renovate-internal-patch-94c8d510036c1df67aa6b6ecf1be76e566744b45","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"034c1a46a9df4dfb90bfa8fb53695f27dda15233","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.62-renovate-internal-patch-94c8d510036c1df67aa6b6ecf1be76e566744b45.tgz","fileCount":27,"integrity":"sha512-+7dv0pJ2Vh6rLseImhww2mEHw7iFrzBCVyw4niy6peqF82h9p3bpZiy5r2B4iR2rOFKv0BrqUrkb4tQZmL9e3g==","signatures":[{"sig":"MEUCIHi63UwLIoc3GtzdPBmwmOJTbqwJFb3KFjAy5ijB0LTGAiEAurlJntfAN37bzpNn/9f4/tEHVwevkCn1C+C9/JZ7F3A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180057},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"94c8d510036c1df67aa6b6ecf1be76e566744b45","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T23:22:59.021Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.0","@balena/jellyfish-sync":"^6.1.49","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.260"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.62-renovate-internal-patch-94c8d510036c1df67aa6b6ecf1be76e566744b45_1636154763740_0.1646499584274752","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.62":{"name":"@balena/jellyfish-test-harness","version":"8.1.62","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.62","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bdffb257246c3239588928e54398704cea3fa9cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.62.tgz","fileCount":27,"integrity":"sha512-+exPtudk2YcCAGctkp/n2TXzTAZ2m+1XJ1Q4gokH86SfuA6eqyYU1Wfu0SWeR5qJpsaZRIWOTwDBsI5bzcSM5Q==","signatures":[{"sig":"MEQCIBK4OmplVf+YjgcSWRAQDumdHHK6RqhRDAfA/DSR7dMXAiBjs8xsBlPtaPVouWX6PQ3aywWnds1J2RFVVMs3LQsVXA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":179992},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"16d9137a193aeaed8661c9397cc5ef52c95cac2a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T23:27:57.687Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.0","@balena/jellyfish-sync":"^6.1.49","@balena/jellyfish-queue":"^1.0.313","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.260"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.62_1636154992705_0.46243595073236876","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.63-renovate-internal-patch-6c503b06749305b886bba608c938d07d53272255":{"name":"@balena/jellyfish-test-harness","version":"8.1.63-renovate-internal-patch-6c503b06749305b886bba608c938d07d53272255","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.63-renovate-internal-patch-6c503b06749305b886bba608c938d07d53272255","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba388b445e6b013a06933c4846eb58702b0e2348","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.63-renovate-internal-patch-6c503b06749305b886bba608c938d07d53272255.tgz","fileCount":27,"integrity":"sha512-IFEzTmFXvhKUTzk+VWB/TAXW573Q1wwsjp5CWxuEu+pkm3CbzZrZVcdfxMfYBfObWT8ulZ0Z24Xm6SBkilMzdg==","signatures":[{"sig":"MEYCIQCj6/sXQIiP/7vGfLAVz3I3jxC5ONmqt+BEmJye6SwwXAIhALNgPmcAzwB//w73d8LZeBrubUfNoVwYXKKIcJln/ak9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180163},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c503b06749305b886bba608c938d07d53272255","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T23:30:11.022Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.0","@balena/jellyfish-sync":"^6.1.49","@balena/jellyfish-queue":"^1.0.314","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.260"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.63-renovate-internal-patch-6c503b06749305b886bba608c938d07d53272255_1636155225217_0.41810484069888587","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.63":{"name":"@balena/jellyfish-test-harness","version":"8.1.63","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.63","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eb6059f05ad5d933c687a7ffd2cc53e10443390f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.63.tgz","fileCount":27,"integrity":"sha512-5GFkDDJ1XuV1Nr6QMdVsHgu3EeAPcPKjItp5oEmljcuiKvswUy/iCxVJF1GWnrZCF1wuZ/VQojZgxH2J5v4MHw==","signatures":[{"sig":"MEUCIQDP8yiuBLgGR8yKpXS0NtTQkMY3WJvdOJFX7Axxoh5ONQIgHIFxftZ6bspJsSrxdpyzuZMzO9yCnotSOTjtPDHBrA0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180098},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a5eb613a836e5cddb4194199211297654652ae3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-05T23:37:54.366Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.0","@balena/jellyfish-sync":"^6.1.49","@balena/jellyfish-queue":"^1.0.314","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.260"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.63_1636155578765_0.02333674217177517","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.64-renovate-internal-patch-a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f":{"name":"@balena/jellyfish-test-harness","version":"8.1.64-renovate-internal-patch-a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.64-renovate-internal-patch-a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1dda880cd907382272e36bb6088625e7fee75723","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.64-renovate-internal-patch-a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f.tgz","fileCount":27,"integrity":"sha512-I0qj3DEWRN+nXmwbdzupvZI2Ph5/F8c8QvpBC4bY5VJVj/q+OJv2d8JOWGevK8EjmqPaYRSEKjY+AnL2ePvp8g==","signatures":[{"sig":"MEUCIGXnJXQYvsFdotkOoMibjkob+fSXtcRg8osQV3B2o8zQAiEAmwpXKSv9s658FZOdv2u2OZZ1Nub2YEjjst8Oj8kF7Iw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180237},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T01:30:12.662Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.1","@balena/jellyfish-sync":"^6.1.49","@balena/jellyfish-queue":"^1.0.315","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.261"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.64-renovate-internal-patch-a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f_1636162336702_0.44371155071744584","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.64":{"name":"@balena/jellyfish-test-harness","version":"8.1.64","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.64","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4e6fcc31f3416567793d7aad7cddefef63c388d5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.64.tgz","fileCount":27,"integrity":"sha512-rnbYHkt1m7pB7NM62O9rL4pYsUukqWFhIA41XXxzPy/48v1+w2bmMEkzwL+088bqH9iK3hMs7DRYsqXvroGoiQ==","signatures":[{"sig":"MEQCIBFaA0+Kl8VOOwekhdFWAJirwg1UkBPwDdZPJrzdrWdIAiBlVCFFM38rs8HIxwoUVzYGhE3bjcxp1cO7R3iy0oKlHQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180172},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1ee9a402260eca5be09cadd27398fd757aa13e5b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T01:33:42.018Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.1","@balena/jellyfish-sync":"^6.1.49","@balena/jellyfish-queue":"^1.0.315","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.261"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.64_1636162524688_0.9335219019422858","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.65-renovate-internal-patch-85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698":{"name":"@balena/jellyfish-test-harness","version":"8.1.65-renovate-internal-patch-85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.65-renovate-internal-patch-85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"116a86fde5b5985343ba249c2ff2b04c0d946366","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.65-renovate-internal-patch-85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698.tgz","fileCount":27,"integrity":"sha512-QnHtpobPOvGjDTk8WpARMGAaH9pmE3TOx/zyoACjMwLoidkIklnAfOPTpofP27+6VmUZTCLCFO0eU/8RRFahnw==","signatures":[{"sig":"MEQCIBCdPuLaBu5+UgvFphbX/es3dTdZWKn0+/RNStULqfe+AiAgolkAahP99JOsHfe25i+ai0LbaVKgWTNvZxH3anooCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180311},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T04:16:23.716Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.2","@balena/jellyfish-sync":"^6.1.51","@balena/jellyfish-queue":"^1.0.315","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.65-renovate-internal-patch-85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698_1636172351120_0.032939777955264926","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.65-renovate-internal-patch-cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3":{"name":"@balena/jellyfish-test-harness","version":"8.1.65-renovate-internal-patch-cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.65-renovate-internal-patch-cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d5f6fd23d41f50348c81e38d66d29edd6d24ebbd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.65-renovate-internal-patch-cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3.tgz","fileCount":27,"integrity":"sha512-SWuxSQDZ5vzraXvF7Yk+9rydf4p15tZwRVljFESipoROHKS2gMVjkxxld/YUzcxSsI0FckI2/bx8dIYe0+9EKA==","signatures":[{"sig":"MEQCIB1CAX89BsaA8o3BFqduT3tqJyAPHEYK1C9hfyoZ+9eyAiBFMt7OjtibHjcnljuVJL3pH0cjJoJwWSbT44ZEwUgriQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180311},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T04:20:04.716Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.2","@balena/jellyfish-sync":"^6.1.51","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.65-renovate-internal-patch-cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3_1636172559872_0.5827284691910699","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.65":{"name":"@balena/jellyfish-test-harness","version":"8.1.65","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.65","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5dc78f9418d219e099befaa589beb73fd9beb0b1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.65.tgz","fileCount":27,"integrity":"sha512-60x4UWj0iQSwk0oQWk3ah3ntnssTyXTAN7jQxu/LanFY5Ou7XdR1qVml31r3i1+L5buDlg8yr4aHJoz+iF0QPA==","signatures":[{"sig":"MEQCIG6AwlRdN4b1JVRlHdTNQ1eX+MOGeECCoAWEoLw9XimZAiAh700cIqageK2kUjIA88fFMkLLNsotM6rYgykwzwH4Pg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180246},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c7ba2b7699d8b0f76db1141624826cdbf4038146","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T04:23:44.062Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.2","@balena/jellyfish-sync":"^6.1.51","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.65_1636172722198_0.9866137168810791","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.66-renovate-internal-patch-aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d":{"name":"@balena/jellyfish-test-harness","version":"8.1.66-renovate-internal-patch-aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.66-renovate-internal-patch-aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"43cb0f2b78a9049d9bca1854d1247ae34922a54f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.66-renovate-internal-patch-aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d.tgz","fileCount":27,"integrity":"sha512-3Zmz3UvHD2VOH7Kf+sdIJQCD0dVW5hQaLYmL0hvoXpTPsL9BjobmGTLUjIdSfJ/AAkRT0rSdu5/MqW+35l/Yyw==","signatures":[{"sig":"MEUCIH/JiAXfCRP0P5XFFWiW9bWT2Fx1u7rJNIQSBdvWgmgRAiEA3K1jkmlfmoYHjOuLXDfq3AN+R73ZAbNcYbQ1WRjYpwo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180385},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T08:24:30.190Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.66-renovate-internal-patch-aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d_1636187199311_0.8751529391830566","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.66":{"name":"@balena/jellyfish-test-harness","version":"8.1.66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"411b69d393a44f263724a8e9b6fefe056563cef5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.66.tgz","fileCount":27,"integrity":"sha512-VDDe+IQR1nPHL15/N6n865Vq1Ypt5YnXK2chnA2JMrC9dhP6/my0O81AzRAsnSSlQ1Koatyx0gpHFkH2FDvysg==","signatures":[{"sig":"MEUCIAbVIQamcGFNxjCfI4bD+kNDX6rnVqDjj5Lyec/8WtTZAiEA4I+nEb2Dge9+ma7RjNhxTlWqSfdpJTgD8pU5R96Udx8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180320},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6a2ff8d42418dfca6e2eb3d29488e7c306311546","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T08:28:10.428Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.72","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.66_1636187431633_0.309898127080807","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.67-renovate-internal-patch-d3ed914ad030f0b64b9b0ee50c9a7a00e317841b":{"name":"@balena/jellyfish-test-harness","version":"8.1.67-renovate-internal-patch-d3ed914ad030f0b64b9b0ee50c9a7a00e317841b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.67-renovate-internal-patch-d3ed914ad030f0b64b9b0ee50c9a7a00e317841b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8d3dd7f9b7e88901a37ed2bc80df650bb6ddb78e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.67-renovate-internal-patch-d3ed914ad030f0b64b9b0ee50c9a7a00e317841b.tgz","fileCount":27,"integrity":"sha512-zQWW2G+KKVxNJmYK1Y563VljIQaK0MhhXizv1TBhHHc3qCcxyoNQ1cpcoIhhXkC7FPSjmXCW8Hq0U0OGwbV+Yw==","signatures":[{"sig":"MEQCIA0QiN+jkvYyIWyJD8XJsOvR55FVnxZ+bG1XTLgdHJ9rAiAW3Mzmx5KOLRQDBNYW0dE31/CHH02dPgtcqIWcpoMRWw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180492},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d3ed914ad030f0b64b9b0ee50c9a7a00e317841b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T10:35:57.861Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.75","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.67-renovate-internal-patch-d3ed914ad030f0b64b9b0ee50c9a7a00e317841b_1636195270902_0.340616540153428","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.67":{"name":"@balena/jellyfish-test-harness","version":"8.1.67","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.67","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e28242bda04360463d7a0b4de51da0ca7c45826","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.67.tgz","fileCount":27,"integrity":"sha512-QlQUBL9WJIUCVa5faNt2KRgklcs9X3qyoS5RrJ/XKICcjLYgP3F6MDOsgnTb3nJQfuqc9TESWqIGA25W0CSZ3g==","signatures":[{"sig":"MEUCIQCgAFuGY6JZqiAQpbhX1mh+yM/Dl/P50SUEXTvf1fk2AgIgJBLFsc6b6RawsFuwaH9wTwshaq8RqS151LAGchsuKf8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180427},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"138081729208ff616b4845e2853b03a8ccbe0a9a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-06T10:43:30.623Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.75","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.7","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.67_1636195519232_0.20875475037797475","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.68-renovate-external-non-major-47ca7a889afd0536042dd34ccc4d00838e1bdd21":{"name":"@balena/jellyfish-test-harness","version":"8.1.68-renovate-external-non-major-47ca7a889afd0536042dd34ccc4d00838e1bdd21","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.68-renovate-external-non-major-47ca7a889afd0536042dd34ccc4d00838e1bdd21","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"520b3ffda46bd7efe4bcdcf25e93a9f682df856c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.68-renovate-external-non-major-47ca7a889afd0536042dd34ccc4d00838e1bdd21.tgz","fileCount":27,"integrity":"sha512-CsXJ4i4VtP4ofXvgRY3/ETlUYBtxDKlKkpt/QedoajI+/1PdwMs7JqadJqAFcxPXMLznwAtTFd9WtBRD+5dFPg==","signatures":[{"sig":"MEUCIQCH8wYwdaVfej3GpVWtZj5VHTvwzYU8bzNK7RfVPjVEvgIgdQhSSC2fbyDRnsqA8XEDrxhuVIXTLXbOKpC4RIhCq5Y=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180585},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47ca7a889afd0536042dd34ccc4d00838e1bdd21","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T00:55:42.977Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.75","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.68-renovate-external-non-major-47ca7a889afd0536042dd34ccc4d00838e1bdd21_1636246697649_0.2908250487000361","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.68":{"name":"@balena/jellyfish-test-harness","version":"8.1.68","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.68","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4115a57317c11ff7fb758ff294c5b92af1cab255","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.68.tgz","fileCount":27,"integrity":"sha512-2g4HRCvZzEFGSJL1iVJltFYZJGffYeGNkRu4ejlO65FJOZWrpzZXAMpRPHwV30s3DwYS0XSigRcSCS5sHA/w0w==","signatures":[{"sig":"MEQCIDTnbE0M3/I/o7ZeBBNDsilONKzKQEQ88b90uLRQB1uLAiAZFodChiWpzgCkPJNrN6d5H5Djybvd6bR/RgjZN0M+dA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180516},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9759575e9786f91344aefdb14436f617bf248223","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T01:00:03.984Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.316","@balena/jellyfish-worker":"^10.0.75","@balena/jellyfish-environment":"^5.0.12","@balena/jellyfish-plugin-base":"^2.1.262"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.68_1636246987997_0.478285923448162","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.69-renovate-internal-patch-da4a38d6f20e0fb430f61567a257484c2a9ff0c6":{"name":"@balena/jellyfish-test-harness","version":"8.1.69-renovate-internal-patch-da4a38d6f20e0fb430f61567a257484c2a9ff0c6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.69-renovate-internal-patch-da4a38d6f20e0fb430f61567a257484c2a9ff0c6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5b04d6913e6d1356b39be90dfa4e053dd5c34dae","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.69-renovate-internal-patch-da4a38d6f20e0fb430f61567a257484c2a9ff0c6.tgz","fileCount":27,"integrity":"sha512-mN/t9wvHQsfZyhsTMNU1AVj4Iv3uCjM5GVVFTTi2crS7SnAxJKNEAc1ppJh0kiCqxxK1g3X9giQ9DA/RjlEQgA==","signatures":[{"sig":"MEUCIQDYW31MyNLgt1nFq5OlBINUG/FzYpO5bkScdPoI0WOoBwIgEGJ66dsk6zewZIM6SZXnxJ4J1XLwDsc0RduBof9xh7Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180655},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da4a38d6f20e0fb430f61567a257484c2a9ff0c6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T02:32:31.298Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.317","@balena/jellyfish-worker":"^10.0.76","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.69-renovate-internal-patch-da4a38d6f20e0fb430f61567a257484c2a9ff0c6_1636252549941_0.2045105121249562","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.69":{"name":"@balena/jellyfish-test-harness","version":"8.1.69","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.69","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"48fc7505e39ef6cff28a375cb7fb87abd5606620","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.69.tgz","fileCount":27,"integrity":"sha512-SL0WM2yfO8viI7YmJpISfSro1gTWPseMjvdES6ov9UFPAG3oW1VldP61hV6vqFHgki62WrVrMSHbYqp8Ho/7NQ==","signatures":[{"sig":"MEUCIQCwLCJ/r906AfrXmX1xpZ9mr7e7MO5CxXz9e0NPtT85FwIgHhTrj2RaiWn+aETx1sQck61LOE6LhN522CfYp2ZhKu4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180590},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bcf1251e6e186e95969477c4d85a0cbc445b5065","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T02:38:28.009Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.52","@balena/jellyfish-queue":"^1.0.317","@balena/jellyfish-worker":"^10.0.76","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.69_1636252920367_0.9662409006168846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.70-renovate-internal-patch-d74f093c19ff2a6cda6f7b3116bcafa370947a4a":{"name":"@balena/jellyfish-test-harness","version":"8.1.70-renovate-internal-patch-d74f093c19ff2a6cda6f7b3116bcafa370947a4a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.70-renovate-internal-patch-d74f093c19ff2a6cda6f7b3116bcafa370947a4a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b9daee40d9ee6a1fcd978c91b8a48e72e3eccd4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.70-renovate-internal-patch-d74f093c19ff2a6cda6f7b3116bcafa370947a4a.tgz","fileCount":27,"integrity":"sha512-E3O+0KP96ZDPm5bnxKK5eNzjMZjuLpsow3UqU03qk2FPvKkhUC6KV7rormIUlESYsNhr3n97gHuLxJA6Z1gvcA==","signatures":[{"sig":"MEYCIQCf5QoJEdSAmk7ZQvg9kd0Qw/Qt+iGzKrgg2is8lhV78wIhAIoNItnjYFDk7zA6vfwkG/s5+ijrSsu7+N1ZygLy2jCL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180759},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d74f093c19ff2a6cda6f7b3116bcafa370947a4a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T02:44:20.889Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.53","@balena/jellyfish-queue":"^1.0.317","@balena/jellyfish-worker":"^10.0.76","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.70-renovate-internal-patch-d74f093c19ff2a6cda6f7b3116bcafa370947a4a_1636253339962_0.5242212459661921","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.70":{"name":"@balena/jellyfish-test-harness","version":"8.1.70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39968d82c79c661b1fc9cc27f96995c9b83dfd17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.70.tgz","fileCount":27,"integrity":"sha512-V8vv5yeJxH3EAPrCKaYEtwwFUHZyXAMI1yjx1PXBSW4naAhWXWMAIdjOAsbcPqJz8eBPw5f4NivZK9w0/ir7Bg==","signatures":[{"sig":"MEYCIQClF5X3nWuSL2qIsaAQTMmQUqI9YuCc2JkjhpoVw+uExAIhALkTsQBgWtKBZi/rbu87sY7jiYBwQtqG0cwYQPXC9Udz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180694},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2849ffa731714b01a69caa081868aaa38acb5850","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T02:50:55.771Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.53","@balena/jellyfish-queue":"^1.0.317","@balena/jellyfish-worker":"^10.0.76","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.70_1636253600872_0.8956113646131834","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.71-renovate-internal-patch-79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8":{"name":"@balena/jellyfish-test-harness","version":"8.1.71-renovate-internal-patch-79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.71-renovate-internal-patch-79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c1fc2301fd93a7e768a4e44fc2d6cb2baf5f19cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.71-renovate-internal-patch-79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8.tgz","fileCount":27,"integrity":"sha512-ZSMCTE0H5Bpizkd7VrKyKEWfw176EH2Q9guL+Pb1z4C+dPCZiAueKIKfouZ3N3wRte4QZUBiHdzLIaDQ5W072A==","signatures":[{"sig":"MEYCIQC0pt58i4/Su8Qo5gYobJSEBpZlq4oVW4zoVzNP2wFxhAIhALXfFiUW1+hp95GLXlhzbj7BRxaEGP1Vw4YTkv+xWbF+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180863},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T02:53:09.883Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.54","@balena/jellyfish-queue":"^1.0.317","@balena/jellyfish-worker":"^10.0.76","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.71-renovate-internal-patch-79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8_1636253840175_0.07845357991474611","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.71":{"name":"@balena/jellyfish-test-harness","version":"8.1.71","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.71","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d9c413ecc309a6b487852a002779877c1a3efd13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.71.tgz","fileCount":27,"integrity":"sha512-mk1Wfw03K2/q17XeN0FjrQNHNMTAiMew7k/GY9E4Ak0cztHuoIwsZnKopHZt2JK6qm7n7VL5I4f7gxeGjF8yHg==","signatures":[{"sig":"MEYCIQCwI5EFxSYU1s+19hQMtoAmXpeOuyIu9y1P0CBTAnQzngIhANqxRS7tLXaJOVe5DsOtUETr0C5aBbOpLrfLRzopf6d9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180798},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"669ce65e86f17521b68b212cc5cb994d884b289e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T02:59:57.671Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.54","@balena/jellyfish-queue":"^1.0.317","@balena/jellyfish-worker":"^10.0.76","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.71_1636254154607_0.5595475209228149","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.72-renovate-internal-patch-305f13587ff8bac59eadd55d296997485839be78":{"name":"@balena/jellyfish-test-harness","version":"8.1.72-renovate-internal-patch-305f13587ff8bac59eadd55d296997485839be78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.72-renovate-internal-patch-305f13587ff8bac59eadd55d296997485839be78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"61d31df5bc8fc4fad4cb879bc7aab35087941e78","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.72-renovate-internal-patch-305f13587ff8bac59eadd55d296997485839be78.tgz","fileCount":27,"integrity":"sha512-E2sAQdyRH0HPBERg4AYOxlJmjfMVsmRPgz2bInRMwNLcd28QH74jXBkpUV2rZE9V5x9uYOaBRxb0y1lgTf0N0w==","signatures":[{"sig":"MEUCIGiR1QBQfa/XCBXNAzLE6tuAdxDfSayam3NMn1qLa4oqAiEAl7j93laZfcq4P+3vnVhQTL2wQWLHmBYHg2g+WF9eHvo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180937},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"305f13587ff8bac59eadd55d296997485839be78","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T04:11:49.700Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.54","@balena/jellyfish-queue":"^1.0.318","@balena/jellyfish-worker":"^10.0.77","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.72-renovate-internal-patch-305f13587ff8bac59eadd55d296997485839be78_1636258483544_0.08461858710863868","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.72-renovate-internal-patch-4226664cab27c87196b550db80d5347d84fd6f96":{"name":"@balena/jellyfish-test-harness","version":"8.1.72-renovate-internal-patch-4226664cab27c87196b550db80d5347d84fd6f96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.72-renovate-internal-patch-4226664cab27c87196b550db80d5347d84fd6f96","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b6f294a1d9dc443f1fda3f15de69df73ebcc1792","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.72-renovate-internal-patch-4226664cab27c87196b550db80d5347d84fd6f96.tgz","fileCount":27,"integrity":"sha512-iAUf9JN9CH1RWZwY4tDCbELMwYk6XSFtfUTc43czoAMDejF2g/vuACyAdHFccSWOgYqiXFrZpAFaufrxuxwrnA==","signatures":[{"sig":"MEUCIF57jVdhw/Uq4NU+RyW1YQlzLRFMvjh++FgK8dWR+mKfAiEA+LPrUOBgGRU/GRxflhMQgCB/OjwmgpdTuIyHsEK0oMo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180937},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4226664cab27c87196b550db80d5347d84fd6f96","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T04:20:10.002Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.54","@balena/jellyfish-queue":"^1.0.319","@balena/jellyfish-worker":"^10.0.77","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.72-renovate-internal-patch-4226664cab27c87196b550db80d5347d84fd6f96_1636259156656_0.005732947776047714","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.72":{"name":"@balena/jellyfish-test-harness","version":"8.1.72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c31a324684199d4202312c6e1cf657e28a81bdc1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.72.tgz","fileCount":27,"integrity":"sha512-eRT6d++qWI4WfX/pgVIDvt0gUrUtpceTX4domp8C783ht8txklcYbZlsK2O/jsEHTFZ0jyLQf1VqDDEoMpFqlg==","signatures":[{"sig":"MEYCIQDGN8xorpViKtUuF9Q6K13+iTETbVH82orvaPrbXcbzsAIhANsd18q+bInDW3tb9BWqrWZsMdv8EECqQZTTzszizpY8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180872},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b563fc64e43f6ad0bffce4e6ba17425fec88f450","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-07T04:27:05.538Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.3","@balena/jellyfish-sync":"^6.1.54","@balena/jellyfish-queue":"^1.0.319","@balena/jellyfish-worker":"^10.0.77","@balena/jellyfish-environment":"^5.0.13","@balena/jellyfish-plugin-base":"^2.1.264"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.72_1636259344134_0.7754573654766019","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.73-renovate-internal-patch-27e49706e44158b2ec416807f0ab1d3cfaab282d":{"name":"@balena/jellyfish-test-harness","version":"8.1.73-renovate-internal-patch-27e49706e44158b2ec416807f0ab1d3cfaab282d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.73-renovate-internal-patch-27e49706e44158b2ec416807f0ab1d3cfaab282d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1cd012fd3aa4b3542b573f20f428a803c77204a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.73-renovate-internal-patch-27e49706e44158b2ec416807f0ab1d3cfaab282d.tgz","fileCount":27,"integrity":"sha512-J3rfOnpvam/BUi69dQOlWuOQawZ8ab2CY46jDy0AtFjp6Paopd5HqF9wS1WQXxqv080YUE1Ox2vudpkExQJ55g==","signatures":[{"sig":"MEQCIB8JAGXAi+p5tMbDKZFUNnv4N/CKPxdDHgrlPgKyK8KlAiAtY17sS1UHgfejsGv8DUSCXLGqJm9FO/PKA0tY7txqRA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181011},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"27e49706e44158b2ec416807f0ab1d3cfaab282d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-09T15:15:18.290Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.56","@balena/jellyfish-queue":"^1.0.320","@balena/jellyfish-worker":"^10.0.78","@balena/jellyfish-environment":"^5.0.14","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.73-renovate-internal-patch-27e49706e44158b2ec416807f0ab1d3cfaab282d_1636471430880_0.3367739880800795","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.73":{"name":"@balena/jellyfish-test-harness","version":"8.1.73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aae66a3fe42d9364274862d3180a2d2465d91062","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.73.tgz","fileCount":27,"integrity":"sha512-lSRGyPbeHIUHJa7P+AWiFCWV+QgGfyvMZD6dP955DmeF2dyIlG6e6HOMcvbt5vvJ9MZV/lKJBxoPhWXt/hPmTg==","signatures":[{"sig":"MEUCIFQbkJ89yXItCWrVLPPv80tfVXoXqXkA7EFfGVn87TbLAiEA9xt2Jpul8LcqvyvmrMZaqtTls6lBZVfG6EXPjWop+a8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":180946},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06a410551bdd09bd630458cd60621f194eb305f6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-09T15:25:43.032Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.56","@balena/jellyfish-queue":"^1.0.320","@balena/jellyfish-worker":"^10.0.78","@balena/jellyfish-environment":"^5.0.14","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.73_1636471723541_0.1825698595717995","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.74-renovate-internal-patch-fe92b0bb18c087af5e57ecac2386d8dddc19d774":{"name":"@balena/jellyfish-test-harness","version":"8.1.74-renovate-internal-patch-fe92b0bb18c087af5e57ecac2386d8dddc19d774","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.74-renovate-internal-patch-fe92b0bb18c087af5e57ecac2386d8dddc19d774","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dc373992c8a3882868161b4491a6a75cb6e96404","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.74-renovate-internal-patch-fe92b0bb18c087af5e57ecac2386d8dddc19d774.tgz","fileCount":27,"integrity":"sha512-AfUB0swZWJ8h/bSseeDb0Z54oTpkaWbAbKoiWZe+RF5s/qZGpev8d0cJVwfnYSKz7N50siSmNnsH8wYO3DqJhQ==","signatures":[{"sig":"MEQCIFcGS6D0uJFf8u1LyKwCR3b4lFIYobS3xvzfEUXh0IWCAiBhJwHjmZrbMj9LMNWEBM58VpPR1FyjCmXLqurprtKfkQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181118},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fe92b0bb18c087af5e57ecac2386d8dddc19d774","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-09T17:58:46.052Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.56","@balena/jellyfish-queue":"^1.0.320","@balena/jellyfish-worker":"^10.0.79","@balena/jellyfish-environment":"^5.0.14","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.74-renovate-internal-patch-fe92b0bb18c087af5e57ecac2386d8dddc19d774_1636480927875_0.5926926168683699","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.74":{"name":"@balena/jellyfish-test-harness","version":"8.1.74","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.74","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"17ecbbfa2d68e9f72e22f200dd769a9528411327","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.74.tgz","fileCount":27,"integrity":"sha512-9sH6lWCzmorbgIh1sQFfIU0HsQvisKvnIuSMVcBP5S3wao167h2AXT4LgDGAb3Czn4iHhI2hrAVER95ZCv9pCQ==","signatures":[{"sig":"MEUCIQChQg0om9aSTeLl+HthbbhZzcBGx9M+4Ot6GaI05iWVjQIgOS9ep6/bYsC9fA0H49JBTZ0Ig0F34WqueGVghxFT7lo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181053},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de4c268e446dd539d321cc89883745448dc3a3b8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-09T18:03:33.826Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.56","@balena/jellyfish-queue":"^1.0.320","@balena/jellyfish-worker":"^10.0.79","@balena/jellyfish-environment":"^5.0.14","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.74_1636481217048_0.6180768651649047","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.75-renovate-balena-jellyfish-environment-5-x-0eb0b3f8d9655a049d1f5558353391b0a60e7c9d":{"name":"@balena/jellyfish-test-harness","version":"8.1.75-renovate-balena-jellyfish-environment-5-x-0eb0b3f8d9655a049d1f5558353391b0a60e7c9d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.75-renovate-balena-jellyfish-environment-5-x-0eb0b3f8d9655a049d1f5558353391b0a60e7c9d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"95d6308a6bd6b43c60dee77ce842c0549eed0053","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.75-renovate-balena-jellyfish-environment-5-x-0eb0b3f8d9655a049d1f5558353391b0a60e7c9d.tgz","fileCount":27,"integrity":"sha512-bxFLxp6TTuxUgQDTRR2O0zVAHMkA8O0r/iMFjasVuenfgp4N/c7+inpgQ4XfBJtEV/CP0zAhAY9mg7s+Tl4zkA==","signatures":[{"sig":"MEYCIQDnJV2zgm3kREjOLF2IhDrh7IVmAwC2eGPoWoDHksVD+wIhAPfnjSSJszQsSQ8CZWqSUx+3AfGt092nERoLm0LoJXku","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181245},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0eb0b3f8d9655a049d1f5558353391b0a60e7c9d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-10T23:10:15.487Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.56","@balena/jellyfish-queue":"^1.0.320","@balena/jellyfish-worker":"^10.0.79","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.75-renovate-balena-jellyfish-environment-5-x-0eb0b3f8d9655a049d1f5558353391b0a60e7c9d_1636586023052_0.6783197524786733","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.75":{"name":"@balena/jellyfish-test-harness","version":"8.1.75","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.75","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c09a9377cf077108481c22e87945cdc7a35a7406","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.75.tgz","fileCount":27,"integrity":"sha512-+WBCKMEn9ed0N9GYfoc7qibr4QLpo+63FG7py8hgBOr30N8Q+487kCqB328RZWOFHOnASD22k5W3+T0T7RL+Dg==","signatures":[{"sig":"MEQCIGG+31e+mDtQKXsZXC6L0VtvjjNoeocpgLt3RTw1+OwyAiAnbHzgj5YMv7oX6S2Tp6q85NA+LYHKEctvwZZ2wR9PKg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181162},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fa7045a0311de7f08573d1d1f4962f6b6bd5f42b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-10T23:15:10.195Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.56","@balena/jellyfish-queue":"^1.0.320","@balena/jellyfish-worker":"^10.0.79","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.75_1636586274342_0.3938280325048118","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.76-renovate-internal-patch-603644619acd7f128568dda40f53a3b19613734d":{"name":"@balena/jellyfish-test-harness","version":"8.1.76-renovate-internal-patch-603644619acd7f128568dda40f53a3b19613734d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.76-renovate-internal-patch-603644619acd7f128568dda40f53a3b19613734d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ec3aadb16a1a158136ffdc428d5b029757f9c6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.76-renovate-internal-patch-603644619acd7f128568dda40f53a3b19613734d.tgz","fileCount":27,"integrity":"sha512-wTYUtibG4mK603UvRrB4Uo7H47Xtn4OJN2HHM8225+0ce7J72drFSUGdsGNhhoxi8dXUwYcUmEumHD0o6QR6/g==","signatures":[{"sig":"MEUCIQC2JROVyR+eyCFwI9oggRZy/8ZOy/Via7oBuf7LJlROtwIgUvsjja3JnaEZs/Q6tJRi0jMbNKr+yP1SyXX6OJmUdPY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181301},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"603644619acd7f128568dda40f53a3b19613734d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-10T23:19:17.362Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.58","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.80","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.76-renovate-internal-patch-603644619acd7f128568dda40f53a3b19613734d_1636586622779_0.9673930187803732","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.76":{"name":"@balena/jellyfish-test-harness","version":"8.1.76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7240c618144511688324d1a6287d27ce56d64ed1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.76.tgz","fileCount":27,"integrity":"sha512-5mh4x5lMx2C0cygDgKW0fIBwvGyjgJfKv2yf/Q7MR3sBdgv7qFTsKYNGk+UVBfNjk7aUm6JQlrJIatTP+W9guQ==","signatures":[{"sig":"MEYCIQDU/LAduULYeC3lVeQA70PajSuaBV6nOJ8yeAY7g+tekgIhALxs3R1ac5FB+WfLOew3gJXgqRKebZRC1Y+jrNoyxI8N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181236},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1bbee5ac69b75c76f907dc63a46a80daf2dc2b2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-10T23:25:06.304Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.5","@balena/jellyfish-sync":"^6.1.58","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.80","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.76_1636586818683_0.14927907763705828","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.77-renovate-internal-patch-51fdf1f8556dc4520411c685eafd4e549a6fa39f":{"name":"@balena/jellyfish-test-harness","version":"8.1.77-renovate-internal-patch-51fdf1f8556dc4520411c685eafd4e549a6fa39f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.77-renovate-internal-patch-51fdf1f8556dc4520411c685eafd4e549a6fa39f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9dbb372e8d75d3dcae95a16baa619691d0673c6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.77-renovate-internal-patch-51fdf1f8556dc4520411c685eafd4e549a6fa39f.tgz","fileCount":27,"integrity":"sha512-84RRtrxKgZhDOuuAiwERWWp4t10PJD2W78IVlJg7ahp7izyxGUO4eX2xGXhEvShd7gaWRvSbl9LUNO9TWKhcLA==","signatures":[{"sig":"MEUCIBAicaZlaadm9XbScttS95w4T/K7i04NGfTZBgTN6a1AAiEAjOTCSFzweSJfkBeYv/CmtZU22ovVtvcs7l9RcXcHXjg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181375},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"51fdf1f8556dc4520411c685eafd4e549a6fa39f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-11T01:25:16.836Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.6","@balena/jellyfish-sync":"^6.1.59","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.77-renovate-internal-patch-51fdf1f8556dc4520411c685eafd4e549a6fa39f_1636594198804_0.3707174450094779","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.77":{"name":"@balena/jellyfish-test-harness","version":"8.1.77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"919869c53fa592c95fbcf60626c551381db5cf95","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.77.tgz","fileCount":27,"integrity":"sha512-A3aPgSEgMOHgPMJizia2MbLeWxtJwqXWCciNK8SYVvPsUmooAauMXGeB9ha0lOntzh/zupW696LClMC68UF6CA==","signatures":[{"sig":"MEUCIQDYl42ZNjNNTuNLuCFdzEft2n6qr2IMkB1MUQxeXpft9AIgbDFHu9A+vcNZyQij56O6hAYdOssE4TPwlRimljUADKs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181310},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c3c58b12c96e65c8d8d2191198dc0222f845cf71","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-11T01:31:25.991Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.6","@balena/jellyfish-sync":"^6.1.59","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.77_1636594436726_0.9047531638928599","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.78-renovate-internal-patch-d3e3613d5121863d164e828fc1d246e817c3e99f":{"name":"@balena/jellyfish-test-harness","version":"8.1.78-renovate-internal-patch-d3e3613d5121863d164e828fc1d246e817c3e99f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.78-renovate-internal-patch-d3e3613d5121863d164e828fc1d246e817c3e99f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"633de9b145f6d14e1d3f3e53e7fc0c22f9195e0f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.78-renovate-internal-patch-d3e3613d5121863d164e828fc1d246e817c3e99f.tgz","fileCount":27,"integrity":"sha512-ppmBLVY72dxrCwq6hkxxfIaov99gHy5S/7W/bzYD9h8SWkUaZxZiM2DQhe5yeycfIwIavNSGHcnKEEw3KYSbxg==","signatures":[{"sig":"MEQCIG123RoJR0ypn/KyOzZ+8pz1cskkcFz+PuyP6PkfyTNOAiBVH/EQlD+ExS6NdKwwuj1e+oQUtdXYWidsst8lE14CPw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181479},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d3e3613d5121863d164e828fc1d246e817c3e99f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-11T03:31:03.332Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.6","@balena/jellyfish-sync":"^6.1.60","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.78-renovate-internal-patch-d3e3613d5121863d164e828fc1d246e817c3e99f_1636601672725_0.5297698814808647","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.78":{"name":"@balena/jellyfish-test-harness","version":"8.1.78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"485fdf69a3512ca177f1585891ebf5522e98fe63","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.78.tgz","fileCount":27,"integrity":"sha512-gwaakF8KqAM1+8jXDxLsPl4ShnnxQ7Ah7w4aPeRTO+uiSAN7K3m5lLCg+RvU0pX3T7s9dHpIPC3jSKuAvBKiIQ==","signatures":[{"sig":"MEQCIFiKIQ7moGm0Nt8q8coYUm8lrsvsXs2u2UnttVKAKwQfAiA44qfKx400NurnhF48nd4SaE74OkvuA9LIguyDX7wIUQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181414},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cbb720848396d3b6c03092f846085aff003a9725","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-11T03:36:21.561Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.6","@balena/jellyfish-sync":"^6.1.60","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.266"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.78_1636601907047_0.9918489943596742","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.79-renovate-internal-patch-3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4":{"name":"@balena/jellyfish-test-harness","version":"8.1.79-renovate-internal-patch-3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.79-renovate-internal-patch-3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79ceedf7a2ce8e8c862b38c6fd3abbdb01a3bfcd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.79-renovate-internal-patch-3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4.tgz","fileCount":27,"integrity":"sha512-5XxKbH+J0QgV6chHFZnMyquabQnStoJDM8PpIkEQDQjEEsQkFB/z/ILxxMTOqCvpIQEv81BfeXeRVpZLpubCbA==","signatures":[{"sig":"MEUCIFeniNg2DIt2drdnsnhvVcsAwN8rEcfQKxwcUz+RgPDnAiEAjFuMIWr1642gz0ETXMKbpoBPd/Y+oqflfQyMm1yUpj4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181553},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-11T09:39:13.088Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.6","@balena/jellyfish-sync":"^6.1.61","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.267"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.79-renovate-internal-patch-3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4_1636623743428_0.5607371414129443","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.79":{"name":"@balena/jellyfish-test-harness","version":"8.1.79","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.79","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b2c31f66bd563f919a08d1fbe45f7c62e9668a8e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.79.tgz","fileCount":27,"integrity":"sha512-TQZt7Q8c+IV8t/RSCg0dEjj0QyqzAzKzqtd0FWV99PtKNojgfbqyGEtHeFEyYjW+qVn9zqwgIardjFQpFUZEVQ==","signatures":[{"sig":"MEUCIE+eZYGSMiaqgyFHxBVHVl80mWcaPEHtr8IjNr0BjGrOAiEA7VZ6byOcBkArro8Z3d0fG4xRbhCFrjYXkypCdoRElkY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181488},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"66693fd84a1e6753d3ff5f86a4a577a4b83816fc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-11T09:44:24.328Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.6","@balena/jellyfish-sync":"^6.1.61","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.0","@balena/jellyfish-plugin-base":"^2.1.267"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.79_1636623993591_0.7666667528799231","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.80-renovate-internal-patch-a9dee310af4141a72f0ba67f6c708e2b0668600b":{"name":"@balena/jellyfish-test-harness","version":"8.1.80-renovate-internal-patch-a9dee310af4141a72f0ba67f6c708e2b0668600b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.80-renovate-internal-patch-a9dee310af4141a72f0ba67f6c708e2b0668600b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a35020d28aef927df4a573e33b9b58819539cb2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.80-renovate-internal-patch-a9dee310af4141a72f0ba67f6c708e2b0668600b.tgz","fileCount":27,"integrity":"sha512-shYv7UYitu9Fn0gH0V+nc8BgZBh2wbbCOKApE8VW8weiy87NIgjVOT7dOliCzkIbDwS2QE/qv5UTKW7SyiqGMA==","signatures":[{"sig":"MEYCIQDa5t/a7+5AlTDQCDBBbrSxnW0FpA17FBogef9DSMtU8QIhAI7gI3BVdTRnUWAMPZ95YsRH21ZJvbI6YAf8YOy2w/Oq","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181627},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a9dee310af4141a72f0ba67f6c708e2b0668600b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-12T02:05:30.983Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.7","@balena/jellyfish-sync":"^6.1.61","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.1","@balena/jellyfish-plugin-base":"^2.1.267"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.80-renovate-internal-patch-a9dee310af4141a72f0ba67f6c708e2b0668600b_1636682948234_0.5499388188676113","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.80":{"name":"@balena/jellyfish-test-harness","version":"8.1.80","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.80","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ee8e94a4f78a2cbd7de0d6d7bb4de94e2a9d8410","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.80.tgz","fileCount":27,"integrity":"sha512-2OBMUuxF3l9DVb+RGwkWB2LvwI7i++q6SE5gpA33ptVn3IUApk6YkPdLNdJbnlMION3lY5IDWYzMLJmiClR5Sg==","signatures":[{"sig":"MEYCIQD7S5ad9c81ZYgxXb6NW9IqHZk/kN0l0DU9qzJHIUYzIgIhAPhCosMRtDLzTunSFAUcoWFXeNJ/uzPlQLK2fsvXZjPJ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181562},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a5c910ec80bb1dc529c92e2c81a03c1d60ba03ed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-12T02:10:19.336Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.7","@balena/jellyfish-sync":"^6.1.61","@balena/jellyfish-queue":"^1.0.322","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.1","@balena/jellyfish-plugin-base":"^2.1.267"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.80_1636683118031_0.3750789107753667","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.81-renovate-internal-patch-1bfca58b990582eefe009826fa0ec5d5f3dc1341":{"name":"@balena/jellyfish-test-harness","version":"8.1.81-renovate-internal-patch-1bfca58b990582eefe009826fa0ec5d5f3dc1341","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.81-renovate-internal-patch-1bfca58b990582eefe009826fa0ec5d5f3dc1341","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5fcdab1abb00475f77a02b95cb0a51e4752fa266","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.81-renovate-internal-patch-1bfca58b990582eefe009826fa0ec5d5f3dc1341.tgz","fileCount":27,"integrity":"sha512-iZ+B6Fc4tJKpwFt73CMAQOVTEIWIkt6qokWSGDC7Gh7TljizWhDBAVXSdTUcmVKh8HcgFwsPdwobzrXkojGGLQ==","signatures":[{"sig":"MEQCIDVDeNzDduQAdZdv8p3Mvc+mUh4IoWfA3DmljAhSsbXvAiBqvZf9JYJm8pak7L+udySo3LNUCWkgrIy/zC0Mm6MJAg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181701},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1bfca58b990582eefe009826fa0ec5d5f3dc1341","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-12T05:10:44.274Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.8","@balena/jellyfish-sync":"^6.1.61","@balena/jellyfish-queue":"^1.0.325","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.267"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.81-renovate-internal-patch-1bfca58b990582eefe009826fa0ec5d5f3dc1341_1636694118088_0.19648344326008238","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.81":{"name":"@balena/jellyfish-test-harness","version":"8.1.81","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.81","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6c832bb6b4dd5d80bc687314d59a4ff0940c1a1b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.81.tgz","fileCount":27,"integrity":"sha512-NfaESUEaVJMuSzkQKHfHnqVfQxFB2RIlVO9CU549IHtESPCUaqJ6jmvK9VGQMtGvnar7VXgYabEoSmHxFNSo9g==","signatures":[{"sig":"MEUCIQCTdUSX/I6NaQI/wUfTzMaYRLNUW5g2gVOLZtphnVmquQIgA2b6iol/1+ApkayjjNt5mbp0+cT2MnxFSYPPWT/+9BY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181636},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"93098a78fd507bb73ce03901b647d10ffdef86d5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-12T05:16:38.167Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.8","@balena/jellyfish-sync":"^6.1.61","@balena/jellyfish-queue":"^1.0.325","@balena/jellyfish-worker":"^10.0.81","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.267"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.81_1636694368785_0.39865258136194126","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.82-renovate-internal-patch-20d72c8b0ca6cb91cdbff1392d34571dc68533d5":{"name":"@balena/jellyfish-test-harness","version":"8.1.82-renovate-internal-patch-20d72c8b0ca6cb91cdbff1392d34571dc68533d5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.82-renovate-internal-patch-20d72c8b0ca6cb91cdbff1392d34571dc68533d5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"eb7b1bd475ee45f6c7aeb7f74145315ad703f3d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.82-renovate-internal-patch-20d72c8b0ca6cb91cdbff1392d34571dc68533d5.tgz","fileCount":27,"integrity":"sha512-9oyeE9eIc8FMixOqvc9APZg7I1tVZbAAZ1Ay7qLGu5IxNiGWiC2cHIkBewLJEdxayBvdD8nn8Y07FLoj16yM4Q==","signatures":[{"sig":"MEUCID8wALhAGV5rEreGefxWPiTz3NlZpnxQEtb67QG4IwokAiEApK7ufWMe3w/uzXZEXL4mXZlYRzXbr3qJFM38/Ao7H/Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181776},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"20d72c8b0ca6cb91cdbff1392d34571dc68533d5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-12T10:23:32.666Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.10","@balena/jellyfish-sync":"^6.1.63","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.268"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.82-renovate-internal-patch-20d72c8b0ca6cb91cdbff1392d34571dc68533d5_1636712781553_0.17367706936260308","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.82":{"name":"@balena/jellyfish-test-harness","version":"8.1.82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0561306d12dfc6ee2ade7d478f09a0bd20f53ce8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.82.tgz","fileCount":27,"integrity":"sha512-bWZLYxQNJYtXHOaZrTSTxozrYAF7XJ2xmfGdhad3gAHIxteU2PS7iJzJusiKH5m1pLxlS5c+EhNsa37/+nASsw==","signatures":[{"sig":"MEYCIQDT2NDwVSYID4xSYdD+SfYAm4GiFbT2/HoPofTweTmLswIhAO+7nDZVd8IF/id4SvhhQTFRvmZ50ROAzuWbYNyPHXyf","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181711},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bc324ad2b8e69a4807cbbb61010b731861b17e0a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-12T10:27:13.242Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.1.4","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.10","@balena/jellyfish-sync":"^6.1.63","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.268"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.6","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.82_1636712935358_0.4036178078784023","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.83-renovate-external-non-major-8c0418dc73160881a9bc8d0133bcc3924065bcda":{"name":"@balena/jellyfish-test-harness","version":"8.1.83-renovate-external-non-major-8c0418dc73160881a9bc8d0133bcc3924065bcda","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.83-renovate-external-non-major-8c0418dc73160881a9bc8d0133bcc3924065bcda","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd372f0ad6e263e0afdddfa76a8fda99b0617cbc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.83-renovate-external-non-major-8c0418dc73160881a9bc8d0133bcc3924065bcda.tgz","fileCount":27,"integrity":"sha512-B6kMvVFBKhV6gkUj1liXMHvWR73lwM0Lx48NfW+BIreY8iub4pjHaegUTLwdrIn46nYCYJabw3DWwhRGGFeaBQ==","signatures":[{"sig":"MEUCIE+tYJa6h0HWN72BA3qTidgNWCNCfACnvh/A0whXHb3wAiEAy42NJRMDluZ2xHB8zBLAN7tLsQ3GR0p9Fy1HBKJBW1w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181858},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8c0418dc73160881a9bc8d0133bcc3924065bcda","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T00:16:34.611Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.10","@balena/jellyfish-sync":"^6.1.63","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.268"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.83-renovate-external-non-major-8c0418dc73160881a9bc8d0133bcc3924065bcda_1636762810338_0.09991379122551147","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.83":{"name":"@balena/jellyfish-test-harness","version":"8.1.83","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.83","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc8c941581b7fe9b85c603d56122c439d8732d7f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.83.tgz","fileCount":27,"integrity":"sha512-FGMv+vyqfR0CwC96cafpTX4knzp/qfXDD0vsXGLwV3iI7qvQxHhETNp2WSc50rvgFUrhq2P8ojQGrjXBSzcoGQ==","signatures":[{"sig":"MEQCIAorYJtc3m2+pEGHe1fFeNfI0XE8v1BJSAio9nx2E2KTAiBaZRHcovfmE0NkGZkjRo32fZ3IeVga40nzW8YXvPMr8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181789},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"667002ad774e567760fed5a634234a4a23c10233","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T00:21:52.698Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.10","@balena/jellyfish-sync":"^6.1.63","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.268"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.83_1636763029138_0.40123021746972376","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.84-renovate-internal-patch-eb6d2c24dc18f15c5c777dac1259c092ddb678de":{"name":"@balena/jellyfish-test-harness","version":"8.1.84-renovate-internal-patch-eb6d2c24dc18f15c5c777dac1259c092ddb678de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.84-renovate-internal-patch-eb6d2c24dc18f15c5c777dac1259c092ddb678de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0859c2189d3293f0a8d401e9c0d2a4c46fad13a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.84-renovate-internal-patch-eb6d2c24dc18f15c5c777dac1259c092ddb678de.tgz","fileCount":27,"integrity":"sha512-loYDp0ZbQRL2pISGnqnUaTb3PQpePozbcPJQdUnbwC++O2ckCXFFI+fX/iC8dvsNGetDULTP0yJ3sRUhRLXerg==","signatures":[{"sig":"MEQCICoMQYLBc9oJcyxa/9rYXGwkhRpLSFKSAarPXBhIeErHAiBQHx0qfuzaAJxgMUGYEa2NtIDcewrzQH2FuXMEyiCgSg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181928},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eb6d2c24dc18f15c5c777dac1259c092ddb678de","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:21:21.026Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.63","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.84-renovate-internal-patch-eb6d2c24dc18f15c5c777dac1259c092ddb678de_1636770288292_0.658912536236965","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.84":{"name":"@balena/jellyfish-test-harness","version":"8.1.84","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.84","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8fd90d4d0bb873b5970311b85af72b1b9b21b41","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.84.tgz","fileCount":27,"integrity":"sha512-lW7CY9QTVw4jm7XWd5x+ebOw+9RYic9FuZ4bUqLyGkIwiRRpcOzmaInbQyCVU/5JSivBITFBU6RYGHu6zH0zhw==","signatures":[{"sig":"MEUCIQCwDuTz350rtIbhnLOM+1SqdFvGR9qgSgltMmGC96qJ1QIgenpYwRoeNBNlHbPd4xbreh+ZK2kPVR1IIiFj4wkkth8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181863},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9fbe3a7ddeea912b5291163b04209b3badcf9278","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:26:48.925Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.63","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.84_1636770511228_0.8355147415455306","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.85-renovate-internal-patch-7c4f3ae24acc37a8087cd3cb0843e560c779930d":{"name":"@balena/jellyfish-test-harness","version":"8.1.85-renovate-internal-patch-7c4f3ae24acc37a8087cd3cb0843e560c779930d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.85-renovate-internal-patch-7c4f3ae24acc37a8087cd3cb0843e560c779930d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"02933f8536f3a365a6d28c1b651d5ef0c73dda86","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.85-renovate-internal-patch-7c4f3ae24acc37a8087cd3cb0843e560c779930d.tgz","fileCount":27,"integrity":"sha512-6O0CkcNivplJBdl9RbKqr64Jfha4C7Mmif40kXdj7D0m/hKI+HhKx1Nz18YS1M++cUNDvFdfsLgfnuuMsKjetA==","signatures":[{"sig":"MEYCIQCB1PuIYk+lT9ozPJanQueSOO4BGHKMGLeBEMJT1sEPWAIhAMQRWXQ+14BnH7B/60qTVZqOsMudaZxEnhNPBX7fqBNK","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182032},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7c4f3ae24acc37a8087cd3cb0843e560c779930d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:28:15.628Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.64","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.85-renovate-internal-patch-7c4f3ae24acc37a8087cd3cb0843e560c779930d_1636770661491_0.5279969553530299","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.85":{"name":"@balena/jellyfish-test-harness","version":"8.1.85","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.85","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8ab507d3776749e101eda744f345bbbe58497c0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.85.tgz","fileCount":27,"integrity":"sha512-Y05DFjCHvMVoREy1Y/kGCHLEANHBLmMmXYjNT7ZMPKjEbQwevnpeVRB2RwjmKlsCkyhTfPCn4JQGUR3CH3Dt/A==","signatures":[{"sig":"MEYCIQD/RJI0Y48cKqzdYqnUFAH+S8w367v6aGE48zulVEn8YgIhAPZ20VleNQOlaycP3F3gi8HEnnCb025FoUHRam3aJyA+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":181967},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47a2f286374aad979fe75e7b892d4cd7e8b6df1c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:35:01.130Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.64","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.85_1636771026044_0.40132097087534135","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.85-renovate-internal-patch-bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c":{"name":"@balena/jellyfish-test-harness","version":"8.1.85-renovate-internal-patch-bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.85-renovate-internal-patch-bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e430100731f3767342925754ef573d8ab20b2194","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.85-renovate-internal-patch-bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c.tgz","fileCount":27,"integrity":"sha512-Jh3GUv81QEECTyCzmr4tMPNPFjN9SSl0L5Fg3l04mCNRrhdtQllLLxas4KAPC8C7o14GXR0ajCWmzMInd3ei0w==","signatures":[{"sig":"MEYCIQDn5iA2LElyVEShZLjhjCHKJ2hfcrPWABbVXysPgufRsgIhAKQdqZkRKSRsdDilGflv9NFF12p/UynwUeRuPLEcdrji","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182108},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:36:04.431Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.85-renovate-internal-patch-bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c_1636771161638_0.2436608609431683","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.86-renovate-internal-patch-05227345dbc1cb7c92593db2c3327854142814d4":{"name":"@balena/jellyfish-test-harness","version":"8.1.86-renovate-internal-patch-05227345dbc1cb7c92593db2c3327854142814d4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.86-renovate-internal-patch-05227345dbc1cb7c92593db2c3327854142814d4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e9e3cacd9eec8b4f426a24ae45102d22078bc6e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.86-renovate-internal-patch-05227345dbc1cb7c92593db2c3327854142814d4.tgz","fileCount":27,"integrity":"sha512-SYig+3B2z+sYt6QTIZcVXhl6DijNVWiuoMSdSzOvky4aePuyI0lYLYHFRGDfYi3gV2+ZnNu3wckhGon/4tjyEA==","signatures":[{"sig":"MEYCIQCrkIJGk6/8vQ00ChOJ1G0rRv2XXJLLccuUg2P98wHxtgIhAOjwxd60qkvyOtbS0qT7w6HqwnzpwHxHOmoFGoxKZ9Xy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182136},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"05227345dbc1cb7c92593db2c3327854142814d4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:38:22.626Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.86-renovate-internal-patch-05227345dbc1cb7c92593db2c3327854142814d4_1636771296613_0.45026247303286415","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.86":{"name":"@balena/jellyfish-test-harness","version":"8.1.86","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.86","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a1f35f90aaa1538ef5c8f2767c6ad3507a66199","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.86.tgz","fileCount":27,"integrity":"sha512-uINB5ksdEFZ0jXR1yvoYWy1PUZ3TtXzx3dTgzTljqPLlOXTJ4FQKMq1+kiSS9yjzsJ7IXBhqoBxAiiiuKdUGzQ==","signatures":[{"sig":"MEUCIHsb29O7kirt+i6SRxrxbm4bLB6x+Xg/v15Mztarm68EAiEA+QwmBSSkyxKhgR2pnGgoRCeDlHiHgL723udHmu2Pg+g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182071},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0482a0946271335e5596123a4c87cb8e0a18bdcc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:43:31.857Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.326","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.86_1636771527069_0.3726882879640703","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.87-renovate-internal-patch-06daa97fc20bae655fcaa75611f5f0b964513635":{"name":"@balena/jellyfish-test-harness","version":"8.1.87-renovate-internal-patch-06daa97fc20bae655fcaa75611f5f0b964513635","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.87-renovate-internal-patch-06daa97fc20bae655fcaa75611f5f0b964513635","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c6a8226e4f43e3b16b590e4b34a0e3b299fe70a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.87-renovate-internal-patch-06daa97fc20bae655fcaa75611f5f0b964513635.tgz","fileCount":27,"integrity":"sha512-SwGSB/e23NC9Luen1meq739peo2tISw/HiIvR18E5zJSa+8BDTSOPUfcatLyrUVAC7rypMT/OjZIrbTcjBsLNA==","signatures":[{"sig":"MEUCIQC+t+EfjCK+usPI+F98I+zhrmOteuT/8aRLZZfBNdSAlQIgHpLC0E4eADvgwXCZ39L2Y7Eaf3V0QQm7vxrSecIG5eM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182242},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06daa97fc20bae655fcaa75611f5f0b964513635","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:48:07.704Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.327","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.87-renovate-internal-patch-06daa97fc20bae655fcaa75611f5f0b964513635_1636771893706_0.5154119656674825","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.87":{"name":"@balena/jellyfish-test-harness","version":"8.1.87","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.87","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f938467e9571c66b5fdfd92f31b9c0e7e5e7c1f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.87.tgz","fileCount":27,"integrity":"sha512-5PhBbG5dyEw0RLSvnjSwk7TqNtBS7Csdq3frflIzcCst4DjvsUfRG0bpaXL1YYmBdwEgNpaQ4IFgB1WPGK16og==","signatures":[{"sig":"MEUCIQDvoqpDLyLCdtEd1zyB1qO/J390EfARiupFF4yaFv46gAIgZcurrDgFlhujuGGsb9/QG1MRDRnBcaX8m6cQlNEL1OY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182177},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"edc6ed5996a2df5714f5a153c5b070b208efa483","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T02:53:15.736Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.11","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.327","@balena/jellyfish-worker":"^10.0.82","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.269"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.87_1636772138110_0.6312204230199177","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.88-renovate-internal-patch-0624a148b7571d3451c23dfaeec643d8d8f23ea1":{"name":"@balena/jellyfish-test-harness","version":"8.1.88-renovate-internal-patch-0624a148b7571d3451c23dfaeec643d8d8f23ea1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.88-renovate-internal-patch-0624a148b7571d3451c23dfaeec643d8d8f23ea1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"99c489b15881d6706a42bbd9fea4fc79a23de45f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.88-renovate-internal-patch-0624a148b7571d3451c23dfaeec643d8d8f23ea1.tgz","fileCount":27,"integrity":"sha512-6ApvaHFbYjdmVBKtCBbFS3n666WQJzcRSA6f+UuEXwM6D0mjqEV6t0JtbIHAAXvwvLwjsCLyEMquPWMukGfJRQ==","signatures":[{"sig":"MEYCIQDHaQ5j9MWQeDF6ltXFYeX+HvRjF/fklAwu9Vzw7/lFOAIhANDK8wCoMbWpWJ2BXRUgBcIIO/BtPxgiEp0qt3qagw6+","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182316},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0624a148b7571d3451c23dfaeec643d8d8f23ea1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T04:54:06.594Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.12","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.327","@balena/jellyfish-worker":"^10.0.83","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.271"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.88-renovate-internal-patch-0624a148b7571d3451c23dfaeec643d8d8f23ea1_1636779425058_0.9411192531099146","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.88":{"name":"@balena/jellyfish-test-harness","version":"8.1.88","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.88","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34c00189bbdd0df93e1a075df56c37c4c77757d0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.88.tgz","fileCount":27,"integrity":"sha512-uwF3Dx3nm2/yyfGZehfeJFSYDgrSnwPCqmP38L/Da1IjkL+QFuXU91RwEsJKNs41cJ/Pv92HRGITrHoMwh03fA==","signatures":[{"sig":"MEUCIQDDNsLdAZmuNGuwWRZYJcunSh3m4PX8IJBe1glgWHO4UwIgOXD74QJVaPIpw6vOuanhZoBE5Q2QnCvaAE3bDvXcjss=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182251},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"99097ed0b6915270bddf7b96da95ca3140a51988","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T04:58:51.765Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.12","@balena/jellyfish-sync":"^6.1.65","@balena/jellyfish-queue":"^1.0.327","@balena/jellyfish-worker":"^10.0.83","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.271"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.88_1636779695684_0.6995295442924581","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.89-renovate-internal-patch-9d0fd370da430b96568b6151e41f48ed2feb884d":{"name":"@balena/jellyfish-test-harness","version":"8.1.89-renovate-internal-patch-9d0fd370da430b96568b6151e41f48ed2feb884d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.89-renovate-internal-patch-9d0fd370da430b96568b6151e41f48ed2feb884d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"06632ed4532502d90164e3f63d20899afa8e5f13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.89-renovate-internal-patch-9d0fd370da430b96568b6151e41f48ed2feb884d.tgz","fileCount":27,"integrity":"sha512-zVKs3ObzdOEMrpVWQsP/ve5IfpEwvv/sYk/54vNqqK6xppGieDLrFKBrIOGkmASj+ZiwkkP0ES+zu7WD2XeSCA==","signatures":[{"sig":"MEQCIA6zNdRP1IU2F15SYNKloyZPDsnY0PbxP+vlPnCjlY1AAiAwye59iVjZ0Wr6R1DJcgRrtIposNnvZMqdYmeJfnpFWQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182390},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d0fd370da430b96568b6151e41f48ed2feb884d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T08:59:38.815Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.13","@balena/jellyfish-sync":"^6.1.66","@balena/jellyfish-queue":"^1.0.329","@balena/jellyfish-worker":"^10.0.85","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.271"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.89-renovate-internal-patch-9d0fd370da430b96568b6151e41f48ed2feb884d_1636794173437_0.24755001213974603","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.89":{"name":"@balena/jellyfish-test-harness","version":"8.1.89","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.89","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f4c8b747d6a496e5bc4d8e5d92c78f36c533e40e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.89.tgz","fileCount":27,"integrity":"sha512-4CXKx1XhPSWjwRCWGsx4hAMgZ/ELwMSAIBpWQgH+yeKtb9LajMjbTAMOovdx2042SeQNZCuZIxBtQ3kiSqNXqw==","signatures":[{"sig":"MEYCIQCECOQgL1GEDpGFYf/2Qj2wn/ZZ3UmTEZvoWQKocq7X+gIhAI4QQqbY3gTdmZCttOMHNCCBuqb79An1h+PrDNpagVVZ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182325},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b8771ce64ae2f241051d238f67111cc0568dc82","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T09:04:25.589Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.13","@balena/jellyfish-sync":"^6.1.66","@balena/jellyfish-queue":"^1.0.329","@balena/jellyfish-worker":"^10.0.85","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.271"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.89_1636794374904_0.43505892393246604","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.90-renovate-internal-patch-7c6c5324902b2f500d0a2fb24ec6c0d975eecea9":{"name":"@balena/jellyfish-test-harness","version":"8.1.90-renovate-internal-patch-7c6c5324902b2f500d0a2fb24ec6c0d975eecea9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.90-renovate-internal-patch-7c6c5324902b2f500d0a2fb24ec6c0d975eecea9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"becfd85a599c1302477b39f7f89c0b6046a1dfef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.90-renovate-internal-patch-7c6c5324902b2f500d0a2fb24ec6c0d975eecea9.tgz","fileCount":27,"integrity":"sha512-UuQ++Ti1OGPdYAXMelgbPX2fDwrRkUd0jxXRRZ7Ki/QeYQD3cZpSTGyyo7RU+Nei53AUSpz37PQY3c3Mw/aJ3g==","signatures":[{"sig":"MEQCIAxHV6z7fvPsof8cgojNrqa/QWMiax1CvMetpWvve/vOAiAfMFjuI+osf2NCRL2ZKfPMiSs17XmIhveC5//Q0+0ixg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182464},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7c6c5324902b2f500d0a2fb24ec6c0d975eecea9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T11:06:20.274Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.66","@balena/jellyfish-queue":"^1.0.329","@balena/jellyfish-worker":"^10.0.85","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.90-renovate-internal-patch-7c6c5324902b2f500d0a2fb24ec6c0d975eecea9_1636801766995_0.2993191564313664","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.90":{"name":"@balena/jellyfish-test-harness","version":"8.1.90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.90","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1a937d47f45bc216ac0684c183c93eb5454c22b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.90.tgz","fileCount":27,"integrity":"sha512-fXV6qqqmLXC2a7AnWkLmn4STREg4CiBZJjv9Ga3TtzE8xz88I2GR4SDCTu7jisYZ6OgGD6toNQQKivkh/OruVA==","signatures":[{"sig":"MEYCIQChZ5vwha/KffB+u90j7xpLEvpKfxGxVdMEaPE7JTAa+gIhALJDcveUM0OuKR49MLImfAHvWegcJjXpTUfPMCWXH99p","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182399},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"760a6851c00e48c4a2c7b3cc7384ed518355f413","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T11:10:39.426Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.66","@balena/jellyfish-queue":"^1.0.329","@balena/jellyfish-worker":"^10.0.85","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.90_1636801960697_0.5239525143735546","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.91-renovate-internal-patch-65c6127848583ac3d99a3e3fa7db4d792285e4b0":{"name":"@balena/jellyfish-test-harness","version":"8.1.91-renovate-internal-patch-65c6127848583ac3d99a3e3fa7db4d792285e4b0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.91-renovate-internal-patch-65c6127848583ac3d99a3e3fa7db4d792285e4b0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"65014c2fd7be28db6ea7bbfdcebbce5744442d69","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.91-renovate-internal-patch-65c6127848583ac3d99a3e3fa7db4d792285e4b0.tgz","fileCount":27,"integrity":"sha512-oKTltWujx82DUvWDyWPpTbkVykGI14lipKXotdoh/oul6AypO3zlF557ydRFEXDouHf85v2N2JUTO98NaTa/bQ==","signatures":[{"sig":"MEUCIQC/uWxZnvQg/jZLANbHytcdTGF6sDijrwM4YdGvjoJt6AIgbl+BOVWgStXZUx7RYHBiVivNlPwyhF3jKSGwYUHs2JA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182568},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"65c6127848583ac3d99a3e3fa7db4d792285e4b0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T11:12:17.525Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.329","@balena/jellyfish-worker":"^10.0.85","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.91-renovate-internal-patch-65c6127848583ac3d99a3e3fa7db4d792285e4b0_1636802144203_0.4697101316629453","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.91":{"name":"@balena/jellyfish-test-harness","version":"8.1.91","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.91","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6de3d1214ede528a67d16fe15e6e43d4da769d6c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.91.tgz","fileCount":27,"integrity":"sha512-9QjlVOGo82aCiE939CyvCumdGYNviAN9VUTz/jYDYMsilotjZREaqXZLUOsZtoPOhQb7i+kyl4CCTt7L04wU/A==","signatures":[{"sig":"MEYCIQCkhOXIUpAiMTWxyia6roQ53n+O96AX7XYKOiYrFf4FIAIhAMgkuUbPlUJY1F1KMRYGZ8B9aDitHD1wrrOMOZqLiUl4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182503},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"30ae533390eb1bcf88ee4236abf5ad054c792a91","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T11:20:16.467Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.329","@balena/jellyfish-worker":"^10.0.85","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.91_1636802567627_0.4562814806258364","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.92-renovate-internal-patch-2014d9acad3d6934208fc62c63e690488a935e90":{"name":"@balena/jellyfish-test-harness","version":"8.1.92-renovate-internal-patch-2014d9acad3d6934208fc62c63e690488a935e90","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.92-renovate-internal-patch-2014d9acad3d6934208fc62c63e690488a935e90","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"258cc5a4725d176dc3e455f51036ba5a1cbc435f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.92-renovate-internal-patch-2014d9acad3d6934208fc62c63e690488a935e90.tgz","fileCount":27,"integrity":"sha512-kioYi6M4PbqQFQnMM2nLFQiqKzeWiYj5BbhKCi4bEORJ4c7NL5+c+dxqkxn2q+UYOzjgXVXUFyJea/sp1JjPnQ==","signatures":[{"sig":"MEUCIQCqvew6T72YEa7G9IIdRG/ItHtmu6CuNRmi1TNQGN2ZsgIgakmc03dWQiwt3M798OKudgWXPtcVdA9m+8V8rN+M1Y0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182642},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2014d9acad3d6934208fc62c63e690488a935e90","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T13:49:43.680Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.92-renovate-internal-patch-2014d9acad3d6934208fc62c63e690488a935e90_1636811601306_0.6819083850393315","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.92":{"name":"@balena/jellyfish-test-harness","version":"8.1.92","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.92","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b898eeaaec3a6b67f9eb4765a403730d022edb5a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.92.tgz","fileCount":27,"integrity":"sha512-nJYfRaIPzUzOX6oWOsLg+TGjSahyZt8vmNcbUxFme+/obHsJcbCnNplxeE/ugxj9pt6fou0SEfJ9j8J9cRe1Hw==","signatures":[{"sig":"MEQCICb68fXB42Q84K/wwt1T7NKtqyvNdeuHUw8l8vlVhvzNAiAJZ/UBMB4E3TvhXN6tEsYfqJ1CaBJn23OtdEJb+iPK8g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182577},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72bcecf3caa6285d23dc78a6158160c73a0e7514","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-13T13:55:03.806Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.92_1636811825844_0.5126446530526672","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.93-renovate-major-external-major-d9509a7b29a4fb830bf1d77f9e25efacf70668ef":{"name":"@balena/jellyfish-test-harness","version":"8.1.93-renovate-major-external-major-d9509a7b29a4fb830bf1d77f9e25efacf70668ef","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.93-renovate-major-external-major-d9509a7b29a4fb830bf1d77f9e25efacf70668ef","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e5daf7ac466ef1ac951a69e6c9bd4ccdfc90111","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.93-renovate-major-external-major-d9509a7b29a4fb830bf1d77f9e25efacf70668ef.tgz","fileCount":27,"integrity":"sha512-34e7gAJWM+WsjT35HyTWNBeN8D1Bcfn0L7+rzxGr+iC+cSm9+BESAql2HGW7wLHv964sX5+Jhdj1xFA/Vr0XGA==","signatures":[{"sig":"MEQCIB9gvkejiVinZBEmEzmZam1W/CIZyg3khByVPCerEeBzAiAuuV0pg/wuwcBZZsuxXBWQh2OjsUTKGoD11o5DqaQ/3w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182737},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9509a7b29a4fb830bf1d77f9e25efacf70668ef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T12:14:12.997Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.272"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.93-renovate-major-external-major-d9509a7b29a4fb830bf1d77f9e25efacf70668ef_1636892210637_0.8777788963943909","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.93-renovate-internal-patch-f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d":{"name":"@balena/jellyfish-test-harness","version":"8.1.93-renovate-internal-patch-f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.93-renovate-internal-patch-f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"237b93d5bcbf8ebca09aae6aec41138d4d8c4124","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.93-renovate-internal-patch-f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d.tgz","fileCount":27,"integrity":"sha512-JlfgxNn3zlrBrW/cawkvP0t73ppB87U54Hud6RWCR3lnlmW6Djj1jcZWzuL4m6PTD4rouvnpG1hLcP8OcqTyqw==","signatures":[{"sig":"MEUCID2IRnIYQF7y1P/t8G6Bmxpy+So9G48ZU69muF3Pbq/cAiEA0w4diKW//qaKQLH2huhDcUt+2Nw+6UjZdU8vaE3hNW0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182754},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T16:42:23.510Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.93-renovate-internal-patch-f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d_1636908312933_0.9893400927989549","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.93":{"name":"@balena/jellyfish-test-harness","version":"8.1.93","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.93","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"adad055e6a2e0fab707cb6b47645186a93397452","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.93.tgz","fileCount":27,"integrity":"sha512-ExzEwo0J/7uB56wNU929aP8SVq2yLReE/gKIyyHzuj7VaJAXVKdpnDNGd2hNx8aHP0r2hzRlDkR3MN4LzjJ6Lg==","signatures":[{"sig":"MEQCID4PJ0o2v4RmAXZhGeLYGGSuAyY9tz2ylA4cQOZUH4ZSAiAP5dmc5hOvtNUXLSIJ8DNSKiDPwg3jBo3mDL+zAUXP5g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182689},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"56ed96ac56910d3fad42e8b2396ee4e0499e3cdf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T16:46:55.213Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.93_1636908529992_0.6228431114814315","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.93-renovate-major-external-major-13376fe1f239e4fee7adabda43e223d46d34afb9":{"name":"@balena/jellyfish-test-harness","version":"8.1.93-renovate-major-external-major-13376fe1f239e4fee7adabda43e223d46d34afb9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.93-renovate-major-external-major-13376fe1f239e4fee7adabda43e223d46d34afb9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c410f2a5b68dc4b21f15f207f2100f9355881782","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.93-renovate-major-external-major-13376fe1f239e4fee7adabda43e223d46d34afb9.tgz","fileCount":27,"integrity":"sha512-UzCN+AICqjpIeAzEQozumZiiOBgjQ7h8qL4gSMCfY4Hr933jWkXYwHqg+Kr1pQHOdyXGIaSlCxEiyc/Qc1DnOg==","signatures":[{"sig":"MEUCIBt51fd0/KNBWAUqs+tMTMzeKUZiB1l1ds/DULCXirnOAiEAyQ9sPd1y/NXOxzVFObkySoGk0rstlwBswJcihisK6+M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182821},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"13376fe1f239e4fee7adabda43e223d46d34afb9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T16:47:49.180Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.93-renovate-major-external-major-13376fe1f239e4fee7adabda43e223d46d34afb9_1636908674344_0.7893633066363512","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.94-renovate-major-external-major-310efdbfc38d91d95e065257ed1688be5911835f":{"name":"@balena/jellyfish-test-harness","version":"8.1.94-renovate-major-external-major-310efdbfc38d91d95e065257ed1688be5911835f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.94-renovate-major-external-major-310efdbfc38d91d95e065257ed1688be5911835f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5623b65ddd82f760b93432de3c1deb1ffb9d5bb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.94-renovate-major-external-major-310efdbfc38d91d95e065257ed1688be5911835f.tgz","fileCount":27,"integrity":"sha512-4EQGNc+UVSXAPF1dm5rEYFRBlZienvaxgiLQpdw9ECHe0zRofR7LFSasPzB7PV7Pisc07n1i8EIXy+TJcf4TeA==","signatures":[{"sig":"MEUCIQDlfJzi5umezITAjmRk+SFSst0lrkNsYtf7Sj5Oje/1bQIgOH+0/Rs6/d0JLavqrghmYBqtdapizhGg3gf275erdpY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182849},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"310efdbfc38d91d95e065257ed1688be5911835f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T16:50:31.864Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.67","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.94-renovate-major-external-major-310efdbfc38d91d95e065257ed1688be5911835f_1636908839553_0.317634900243732","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.94-renovate-internal-patch-5d5b0b1703e6214298771b874f0bed4d3c4c5678":{"name":"@balena/jellyfish-test-harness","version":"8.1.94-renovate-internal-patch-5d5b0b1703e6214298771b874f0bed4d3c4c5678","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.94-renovate-internal-patch-5d5b0b1703e6214298771b874f0bed4d3c4c5678","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"355ef2a657b9259d0bbbb4fa9bf3e6005f22ae45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.94-renovate-internal-patch-5d5b0b1703e6214298771b874f0bed4d3c4c5678.tgz","fileCount":27,"integrity":"sha512-3OW/WBHhBq4UnDFTEMwbtf86zh9aGx7/HIyfCi6Wi3Q3B73dJOuXpahDqXBy9dYzD40mPxB2basO1arOfS2j9Q==","signatures":[{"sig":"MEUCIBRp4iq52t7ddv4hAc1X3yKzbUmCL76dT9Py2Tf6r1WLAiEAnwh+sOfNeg3k1vrBRTgj230GOtD7Ry/cA7gtSKBq+oQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182858},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5d5b0b1703e6214298771b874f0bed4d3c4c5678","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T16:54:34.085Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.94-renovate-internal-patch-5d5b0b1703e6214298771b874f0bed4d3c4c5678_1636909048987_0.9234683892507618","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.94":{"name":"@balena/jellyfish-test-harness","version":"8.1.94","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.94","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ee06154c73101943a1775ade3755daa41f5e1ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.94.tgz","fileCount":27,"integrity":"sha512-HoJfvlQb+c2ttHsRDYaezwb7wClNJWlUblYEHbHJn2atFbdD//xqehyMLjvxaOgP8k6rbGHpi64GfuYKVTq4tQ==","signatures":[{"sig":"MEUCIGM4MU653CZV/AhDK+MllJNLUyRF2/fAyeksGGBcitC5AiEAiBplXozn6SXg1yZlggE+JARU4eysz2ts+JrqW2l/wTQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182793},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a69199df25a1418c11f725a6337941fbeb489dd6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T16:59:24.854Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.94_1636909266188_0.3080976917419114","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.94-renovate-major-external-major-b114d33c7d9f40925195951703d7f53c7b6ba93e":{"name":"@balena/jellyfish-test-harness","version":"8.1.94-renovate-major-external-major-b114d33c7d9f40925195951703d7f53c7b6ba93e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.94-renovate-major-external-major-b114d33c7d9f40925195951703d7f53c7b6ba93e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d1d940d8f1f04afb35119376a591dd79df9854c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.94-renovate-major-external-major-b114d33c7d9f40925195951703d7f53c7b6ba93e.tgz","fileCount":27,"integrity":"sha512-iDYjhB1kS1elphQChEpvE5xHkzNm/Q3+hya5LlcszizAvfnP/VRlxbGJoyDWArgemYI8Jlt7cSHSvz1qW09C0w==","signatures":[{"sig":"MEUCIQDtsZNrHm2iyLtPGrR7BPoqZNfAB5n8Ho44WD2CBmGpAgIgKbfHB3yf5R7sOYOgHBDFiLx1Aj28AFo+omz9e/zaLzc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182925},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b114d33c7d9f40925195951703d7f53c7b6ba93e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T17:00:11.378Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.94-renovate-major-external-major-b114d33c7d9f40925195951703d7f53c7b6ba93e_1636909400360_0.44354764978941486","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.95-renovate-major-external-major-79b6f7942f73d214138cdd21f3affbadc58b505c":{"name":"@balena/jellyfish-test-harness","version":"8.1.95-renovate-major-external-major-79b6f7942f73d214138cdd21f3affbadc58b505c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.95-renovate-major-external-major-79b6f7942f73d214138cdd21f3affbadc58b505c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"867afc245c770928508b1c307355898126e60f74","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.95-renovate-major-external-major-79b6f7942f73d214138cdd21f3affbadc58b505c.tgz","fileCount":27,"integrity":"sha512-TssXMkojyCbQQlN9tJ0R9EMgMr3hGp9ixPHnI80KBunFgk4fFH39cHBAED1VEMKt7OlN1Mn2muNoq6vqtema4g==","signatures":[{"sig":"MEYCIQCqkVU0mAOszuaxpTRw5ie8cp3wSCU7nkuJEmI2qP45tgIhAOpuvfBzQSLZ2yI+hm7zsQIWHFXbtv3qpyw5Noez50zO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182953},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"79b6f7942f73d214138cdd21f3affbadc58b505c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T17:02:44.193Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.95-renovate-major-external-major-79b6f7942f73d214138cdd21f3affbadc58b505c_1636909536531_0.3289256788745274","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.95-renovate-external-non-major-6b8556fadebd181848f332806fc79d92631febed":{"name":"@balena/jellyfish-test-harness","version":"8.1.95-renovate-external-non-major-6b8556fadebd181848f332806fc79d92631febed","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.95-renovate-external-non-major-6b8556fadebd181848f332806fc79d92631febed","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddada6d43facf067f3fdb3f0f4c73d2e92d9867b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.95-renovate-external-non-major-6b8556fadebd181848f332806fc79d92631febed.tgz","fileCount":27,"integrity":"sha512-rjASRjoAEgK3+LRmfc4tZavbUzPBDHPa1fR7BN1DYlMKRp3aKq6igY8n7vjD3jVep2nLyWQkzdTD+xdkWSqDcQ==","signatures":[{"sig":"MEUCIB4SFvIHtX+I2vWU6JrIUeUO2u9FOtb+jCNc0H+t6iyJAiEAycXj4LKZOB/Z4r/Cqel7TbpIinp4WmL1xdWO4s3htf4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182951},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6b8556fadebd181848f332806fc79d92631febed","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T23:29:01.654Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.95-renovate-external-non-major-6b8556fadebd181848f332806fc79d92631febed_1636932746522_0.03024152913327871","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.95-renovate-internal-patch-4ebb6ab555882de0990d0d30d3311eaedbc22b6b":{"name":"@balena/jellyfish-test-harness","version":"8.1.95-renovate-internal-patch-4ebb6ab555882de0990d0d30d3311eaedbc22b6b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.95-renovate-internal-patch-4ebb6ab555882de0990d0d30d3311eaedbc22b6b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0933958dc21ebbfc5f2616d64cf14cc7591124f6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.95-renovate-internal-patch-4ebb6ab555882de0990d0d30d3311eaedbc22b6b.tgz","fileCount":27,"integrity":"sha512-Z7XXlnBoILzoG4g1y6UrblY5hsEzdz51c2zDqa7Um0t12/rvyhlEwgXfwlGxS4YVYD1Zpx6Y4rjVur8kxjWm1w==","signatures":[{"sig":"MEYCIQD0V8mpVOcsDOaukgaI6SJMiLkO22RjmxRYplCv1GGc1QIhANGUlLEWTApMxRmCrEwMzZL2PcO47RooyH7WEVnKUEAs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182932},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4ebb6ab555882de0990d0d30d3311eaedbc22b6b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T23:29:21.857Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.69","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.8","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.95-renovate-internal-patch-4ebb6ab555882de0990d0d30d3311eaedbc22b6b_1636932759648_0.09120845608986339","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.95":{"name":"@balena/jellyfish-test-harness","version":"8.1.95","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.95","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c096e55d8c3da9402bf0e1c77673c8ff0783116","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.95.tgz","fileCount":27,"integrity":"sha512-j2Uveqn6Z2ntqWom+WZPo0Ro10fDk0CPFmCtia9A0tfp+X49uw5dMSrpbuDHiQUnCdwOfmYeYHJKkGj1/MYh3w==","signatures":[{"sig":"MEQCIACoexk58EEqdWWuRTKQ2pjBPGzpRzWN90D5QW82toiFAiAuxktfcYSu86L4CtkKlR87lX0rmLqNRWd0go2FXPfg6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182882},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cdb0c7d4753a0e9e6efc5fcfbde980cdc0908e1d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T23:34:01.696Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.95_1636932947324_0.09263776415904612","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.96-renovate-major-external-major-f7edea66fbc63a90f79fbe99dd94a62dd863bc9a":{"name":"@balena/jellyfish-test-harness","version":"8.1.96-renovate-major-external-major-f7edea66fbc63a90f79fbe99dd94a62dd863bc9a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.96-renovate-major-external-major-f7edea66fbc63a90f79fbe99dd94a62dd863bc9a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4cb48b7cebd36fa462214292de7559f6ad8206f3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.96-renovate-major-external-major-f7edea66fbc63a90f79fbe99dd94a62dd863bc9a.tgz","fileCount":27,"integrity":"sha512-TmpGN1uUp0nwr2qj5PFJ6wOIUthDcflHP7wyVcY7RVcbv0/+sUwr/h4ZWVo81wTzq+uaNXuwmrnKvj1aoptfpg==","signatures":[{"sig":"MEUCIQDpUhOt6ckyx6lqWGWHCx1UIWJ3KP9G5LBGcQjQl/01YgIgLU2PtwCa/WhVhR9FYr4j6mbKFM8XI/wQ2Nca9CCO1eo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183042},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f7edea66fbc63a90f79fbe99dd94a62dd863bc9a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-14T23:36:41.241Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.68","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.2","@balena/jellyfish-plugin-base":"^2.1.273"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.96-renovate-major-external-major-f7edea66fbc63a90f79fbe99dd94a62dd863bc9a_1636933183136_0.7390616849035194","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.96-renovate-internal-patch-9a461b43916f38bb6fe72ac5140f35c217893553":{"name":"@balena/jellyfish-test-harness","version":"8.1.96-renovate-internal-patch-9a461b43916f38bb6fe72ac5140f35c217893553","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.96-renovate-internal-patch-9a461b43916f38bb6fe72ac5140f35c217893553","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8eff2e55734d2fafc4934ba35e7a7d2004fb9bfd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.96-renovate-internal-patch-9a461b43916f38bb6fe72ac5140f35c217893553.tgz","fileCount":27,"integrity":"sha512-+0HRjrLBSsKwnwkR/pxKVpM+rF4Z9xKtmyvxV7l1kHWfYrO37un/G/j3UBwQDdHvvAklXcxJqMvn9f7mFAYtFQ==","signatures":[{"sig":"MEUCIQDy6Y7SysEUp6nwoVg/kl113WxpBms3UKXiRMnjgD/JNQIgSl4j2v+ep54+WkjWYHFtpdSTPdN79xkREzS5OcVuRa0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183021},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9a461b43916f38bb6fe72ac5140f35c217893553","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T02:40:53.985Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.70","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.3","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.96-renovate-internal-patch-9a461b43916f38bb6fe72ac5140f35c217893553_1636944238090_0.42869917684169545","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.96":{"name":"@balena/jellyfish-test-harness","version":"8.1.96","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.96","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2fee008c239a9707cf7c4e6b116590942e29c741","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.96.tgz","fileCount":27,"integrity":"sha512-tIHbZweEDM8sjmUrcM+xk+qQMsM9ACkZISMfswsLrbTKRw46eXJ9WUS7qkPKZ3uIBh19ddDb/J97cBs4nYRg5w==","signatures":[{"sig":"MEYCIQDma3gl+uDizMYAl8R4eCKurgWOpiDtQNZUZIbQ96tbBwIhAOwOigJgMlqbdPKlzVXxW97rXMUUOHtF1yoT8UfWjD+C","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":182956},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"353435ae55ef9bc9f720a52914adca3f28f79c48","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T02:44:50.239Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.70","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.3","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^11.2.6","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.96_1636944396623_0.15363490684500314","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.97-renovate-major-external-major-a26ba42d625c2f71ae9c07dbba74676a3bebcdf4":{"name":"@balena/jellyfish-test-harness","version":"8.1.97-renovate-major-external-major-a26ba42d625c2f71ae9c07dbba74676a3bebcdf4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.97-renovate-major-external-major-a26ba42d625c2f71ae9c07dbba74676a3bebcdf4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f94788607ffe37ef43d181d11327b807e48fbdd8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.97-renovate-major-external-major-a26ba42d625c2f71ae9c07dbba74676a3bebcdf4.tgz","fileCount":27,"integrity":"sha512-4DWg7ouJCVK8E65kSUmOCql3NZe1i63CiongVb4G7KJe1kFerCFf1Ah1JeNE4kiVTYPByXCyEsra5JiioNQjjA==","signatures":[{"sig":"MEYCIQCpAHv/hytXhV5/+3B/KyQEyoRmOlKieibQPkw+MzNexwIhAPhQR83j1j2P/+GD3IuM6XruMEW1sJL+CvtJ4mPygRiG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183116},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a26ba42d625c2f71ae9c07dbba74676a3bebcdf4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T02:48:10.448Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.70","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.3","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.97-renovate-major-external-major-a26ba42d625c2f71ae9c07dbba74676a3bebcdf4_1636944688585_0.9877921078593999","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.97":{"name":"@balena/jellyfish-test-harness","version":"8.1.97","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.97","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb5729b18126abc55ae90654e017c11058d2d8d3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.97.tgz","fileCount":27,"integrity":"sha512-uEPTBs5Qr5dQHaKqyhNDTdIlsSff2easwuJaLcS8HClQUIqpiDHQHtdmg4zoCDXF+Bpqc4LSTyf6+OtHdXA25g==","signatures":[{"sig":"MEUCIEgMWDfWMdQ01ZPJWJlzDsBIkqTgWp0ij4uPr82a1/1zAiEAq/0QYfkHJZu/4dqdi9cEPLD7PwBiwvSWct463iP3L80=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183045},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f22b67fe7ee78ffeb4e1c778074c4744ae350f42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T03:18:59.587Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.70","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.3","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.97_1636946447307_0.37773816853333275","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.98-renovate-internal-patch-3b85f051210f79f7312a06c13d3d12d9e158b722":{"name":"@balena/jellyfish-test-harness","version":"8.1.98-renovate-internal-patch-3b85f051210f79f7312a06c13d3d12d9e158b722","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.98-renovate-internal-patch-3b85f051210f79f7312a06c13d3d12d9e158b722","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d79b093ae6e662f8794fc5752caaa3f3c28cf283","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.98-renovate-internal-patch-3b85f051210f79f7312a06c13d3d12d9e158b722.tgz","fileCount":27,"integrity":"sha512-TCGok3T/EbR7fzwh/rVNZ7jlniYgKjauKBUFkWbLmf5eU73DbTAAecegId29Xc2HUeZ77KU/qp9x4DUcfF4MdQ==","signatures":[{"sig":"MEYCIQDieFpPxpSBt3YTJidWU+QVC5oPPo3yHS8Aq92jzXeubgIhAOkreR97QdG99ftIX33uxOnnvHd4zXOzFFj966JBD4fU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183184},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3b85f051210f79f7312a06c13d3d12d9e158b722","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T03:23:31.265Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.71","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.4","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.98-renovate-internal-patch-3b85f051210f79f7312a06c13d3d12d9e158b722_1636946828563_0.02744412335049695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.98":{"name":"@balena/jellyfish-test-harness","version":"8.1.98","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.98","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"483d645e880d75ba5701081631a9a81152361799","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.98.tgz","fileCount":27,"integrity":"sha512-8PHOMf/xClmDmkX6kX4G+sycJOh4CVRoIWQoY5COAzRTYd3dIoki8R7p0nVNn/UiegWD/IN3gDnhW1bKyAte/w==","signatures":[{"sig":"MEQCIEOuW+2Klezv10ByjL53o+AvxVzmfsAH9zHcqyZ2w7bqAiAvansZ+bGI1Bs32mHmvQg74ByVKI2fv2B3I2QgaiYZ7w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183119},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"38fb6be130287bfc90d5f1791c1993af965f33f6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T03:28:51.417Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.71","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.4","@balena/jellyfish-plugin-base":"^2.1.276"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.5","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.98_1636947047164_0.9861517614558248","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.99-renovate-internal-patch-d6804aa139553c5e515801293c38a5265ca825c4":{"name":"@balena/jellyfish-test-harness","version":"8.1.99-renovate-internal-patch-d6804aa139553c5e515801293c38a5265ca825c4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.99-renovate-internal-patch-d6804aa139553c5e515801293c38a5265ca825c4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"78e8f0e335b4074637970b44f560cb403a1bf844","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.99-renovate-internal-patch-d6804aa139553c5e515801293c38a5265ca825c4.tgz","fileCount":27,"integrity":"sha512-MA9jNS3eHDQTBsUcSbL9IEYP6fspDMjEN46ibtccuqy0xqy3HZz2CNDLh0xZGYTKM+9g5iWYakpSUfX5oueoVQ==","signatures":[{"sig":"MEQCIBeyafwbFSkzC9n1ROz3XA3EyXbX2u0uNA0i+WWQT9F/AiBJtrr1Sm29pOlOF3FJF6plGk8pgDL8ohuY30o4aY/1Fw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183258},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d6804aa139553c5e515801293c38a5265ca825c4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T05:48:23.465Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.73","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.5","@balena/jellyfish-plugin-base":"^2.1.277"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.99-renovate-internal-patch-d6804aa139553c5e515801293c38a5265ca825c4_1636955481988_0.03874428307087929","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.99":{"name":"@balena/jellyfish-test-harness","version":"8.1.99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14096c17f9b1d3499db9a3f2c6061dffa553324b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.99.tgz","fileCount":27,"integrity":"sha512-B3o3H3PwP36MDOPv+Q+jrty4qeHFpOhICmek4Y0f9TVkhQPrwaDCsWgKG4MNYeL3T0Y6O1dnN3xIFdOWYGzcTQ==","signatures":[{"sig":"MEUCIHRUFifA1n55tjNRpP7InDmSfTTn2UMZDpvorQHeJOOaAiEAh7h2r/KAsnDwGkv4Hv2Hg/4mW6/TCwCs4qp1y2QaqcE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183193},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b6bc098808bede8a84cb8b836f7aea4cfbaf4cb2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T05:52:34.212Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.73","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.5","@balena/jellyfish-plugin-base":"^2.1.277"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.99_1636955649294_0.8781654501234426","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.100-renovate-internal-patch-916548533cfa6900233434de68e8c36dbd017c8f":{"name":"@balena/jellyfish-test-harness","version":"8.1.100-renovate-internal-patch-916548533cfa6900233434de68e8c36dbd017c8f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.100-renovate-internal-patch-916548533cfa6900233434de68e8c36dbd017c8f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"08349bc4eb655bfcfc38833f79bd82572e6cc4f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.100-renovate-internal-patch-916548533cfa6900233434de68e8c36dbd017c8f.tgz","fileCount":27,"integrity":"sha512-qfkeMkqF81cZQk/vomH9O1Pvvyn+28IXK+rSzYN3cYBuZm5RlQh/qMJEvgY4uSM7AR1RpAb64KBgIogySYx0vw==","signatures":[{"sig":"MEUCIQCjcffKZ09nzz6S0RzLvOvyV7htvgtKvutPQ8QmcKEqiAIgbDvusGwzbb07jqrktVbb+kV4az9dQOd6FHV5qJoDaUw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183334},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"916548533cfa6900233434de68e8c36dbd017c8f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T10:15:50.164Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.74","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.278"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.100-renovate-internal-patch-916548533cfa6900233434de68e8c36dbd017c8f_1636971548770_0.1277174777139567","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.100":{"name":"@balena/jellyfish-test-harness","version":"8.1.100","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.100","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e57778e0a0e268567bf2d3b1ece1b9c11405c70f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.100.tgz","fileCount":27,"integrity":"sha512-cMpYQXx2oysK+6UTeslbriMaMHpBUxByqsWmxLA5GqPdYi6YFlS7eMibwrkbg5ggPZRzsb0IUNTdPKgVHUcl7Q==","signatures":[{"sig":"MEYCIQDQzrKGQvByX+5NqaZBDqaQLC1YgdjMw2t+B4xr4CiEFgIhAPgQzM1YUBvuJpoI9j/tp5tZ6cecxcD6F5mZBb2cxMe0","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183269},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"995e9f30c2aa41bb066c720c02d2667f62652b8d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T10:21:04.055Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.14","@balena/jellyfish-sync":"^6.1.74","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.278"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.100_1636971767023_0.8189793879434892","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.101-renovate-internal-patch-d438349a50ff6e925d2df96fe7848adaba91a01d":{"name":"@balena/jellyfish-test-harness","version":"8.1.101-renovate-internal-patch-d438349a50ff6e925d2df96fe7848adaba91a01d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.101-renovate-internal-patch-d438349a50ff6e925d2df96fe7848adaba91a01d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"77c4c329c8565bf9bd5b96347c8e2a40d10bd9da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.101-renovate-internal-patch-d438349a50ff6e925d2df96fe7848adaba91a01d.tgz","fileCount":27,"integrity":"sha512-GuFP9OqR7aF8li4yw1sRP0aTqw1nSDwcWbIb4yV/qhJJMS12bw3jxrOtgVpuAHkU5lcgBfFPyPYPGEVv7MYZlw==","signatures":[{"sig":"MEUCIQC2xQA1F4Wyj9e4in+6JQEC19pbkyJyPuX846NpqJgYrgIgOQJvYc6dwj0uFfBGqL8M307fEDBicbPXkoeRazmHHPg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183409},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d438349a50ff6e925d2df96fe7848adaba91a01d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T12:32:42.490Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.16","@balena/jellyfish-sync":"^6.1.76","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.101-renovate-internal-patch-d438349a50ff6e925d2df96fe7848adaba91a01d_1636979716798_0.007239315817181513","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.101":{"name":"@balena/jellyfish-test-harness","version":"8.1.101","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.101","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"83ff1b615254302aa2bcff476fe98f1e50962c89","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.101.tgz","fileCount":27,"integrity":"sha512-HuAhXhHR+5hyUcCp8LbBCCC4EC8/XTmf81qyQf3P3p3yKFQBjBckOSQNt8xaJY4WJXogPI5be2IeEeIK0xGJUg==","signatures":[{"sig":"MEQCIDGoowGFjC0UJXcx0ktg0Wh0qUTNSQ8lpQ9F1pOBH14HAiA7Uc8BSWEHYT5sy3GZs6wL+OQjKXWLH7qTLAsDyNYl0A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183344},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e30a47a0edf386376e8b43808eb8fb9d21247d9d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T12:37:12.533Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.16","@balena/jellyfish-sync":"^6.1.76","@balena/jellyfish-queue":"^1.0.330","@balena/jellyfish-worker":"^10.0.86","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.101_1636979940221_0.9744839050569911","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.102-renovate-internal-patch-af12bfc007e1a68611f1bbab36b57a5b38843a53":{"name":"@balena/jellyfish-test-harness","version":"8.1.102-renovate-internal-patch-af12bfc007e1a68611f1bbab36b57a5b38843a53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.102-renovate-internal-patch-af12bfc007e1a68611f1bbab36b57a5b38843a53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"60366c751dc7848d35468d8901ab22fd145f6fa5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.102-renovate-internal-patch-af12bfc007e1a68611f1bbab36b57a5b38843a53.tgz","fileCount":27,"integrity":"sha512-STMMGR+txsp1189u3MBMIclpZ9iEJUDQH8T6AupusTaAQQxUZUozQa2ELLi2gN/USktCrqxDVcmM6EtHuB387A==","signatures":[{"sig":"MEUCIHxTXpcRk9eDdsUq1HY6WWzEZvTrGikVDQI69CeVRuZ+AiEAztgfoq6fpx3IKAlcWSVgj2bWAIv70p8RhY0ofMnd2Kg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183484},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af12bfc007e1a68611f1bbab36b57a5b38843a53","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T15:00:25.722Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.16","@balena/jellyfish-sync":"^6.1.77","@balena/jellyfish-queue":"^1.0.332","@balena/jellyfish-worker":"^10.0.87","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.102-renovate-internal-patch-af12bfc007e1a68611f1bbab36b57a5b38843a53_1636988652644_0.2327911611640694","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.102":{"name":"@balena/jellyfish-test-harness","version":"8.1.102","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.102","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ad5d23e447860fe93de84bb9c0cad7dd78cbd0d8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.102.tgz","fileCount":27,"integrity":"sha512-YICClACtvM1AzLR6G66YZF97msAJKIgcrH4+ulboTbwUVoCNQozAr+oQFLxa4qVq7gg1e7qMBdXC93DfBgmy5A==","signatures":[{"sig":"MEQCIFxfuaEzoQ+zjl3QFHhfTfvR3GzJs/NAG73fWaJlQ+p+AiB6CCbtktpiMC/U4d94bxRWFcFw/SRgzkEiMEw4DGT43Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183419},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6177c3b2bd8101de42894018dd1df36788d430b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-15T15:05:50.580Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.16","@balena/jellyfish-sync":"^6.1.77","@balena/jellyfish-queue":"^1.0.332","@balena/jellyfish-worker":"^10.0.87","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.7","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.102_1636988866019_0.13087492883700347","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.103-renovate-internal-patch-72259ddb9615d3e61a7df93c9e1adb78aa10a3a9":{"name":"@balena/jellyfish-test-harness","version":"8.1.103-renovate-internal-patch-72259ddb9615d3e61a7df93c9e1adb78aa10a3a9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.103-renovate-internal-patch-72259ddb9615d3e61a7df93c9e1adb78aa10a3a9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f049111dca8925c1dea0ae843046f16c53a2c3e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.103-renovate-internal-patch-72259ddb9615d3e61a7df93c9e1adb78aa10a3a9.tgz","fileCount":27,"integrity":"sha512-BS9YiTabezIQZWVlKgW1T5ujXgMMGHFr/Qh8RZNfAy9vmWbt9h9+7FrdDBand/cLvqEtJHKDT/JnJIf6UyeNhQ==","signatures":[{"sig":"MEUCIQCr6TbMIm6X2QZICbjjaUVuyzByBDrm1KOi6KjtyNN7zgIgAmUXUYzBwUsqSI8PVPDuyenua6kpytLeArGF1MLPMUE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183559,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkvWUCRA9TVsSAnZWagAAevEQAJbSg8lpfsOcba+vqVIb\nquu/4Vd4OnxNU4pUX2B6LXKMiMlB6l28mvYNRt8VGMgAWQFzOu+wOgSQvNqS\nepXEwDfaOlG99EaYhDQdDWjCw4rZ5GhieBXcUKDENXcEFJ5CBtMSSwA8I+hL\nQifiDRsQr5Tzhe7/wQgalS6LswM0D/cBWt/ISaF1ybdfQhHySH0PCvMhyn2b\nGpssfCXcLvvpPqQURbN2BHGV/YZlQ5MgsaH1JIA1eW7srXvdJs3u0xUcA+uR\nydCe2P3vrFTsD8dWS/wHQYzY5icRv9Z+1auXK2bYBCor5gkPHP4wycZYKnla\nXU5cePz0lvIj2MtlZGHgFnj/RlIsHbI/E/mD/65+y/802baa2CQtQyU3hbKk\nINXHMkzIWmDDh3eHX+fTo6juRtwXQosvpvrb1imAWvE1ojD2hRSrPXLPKwyV\nPEROoNAefeP064B8D4xjphixPVy8CCZDSWf5kWWkfXUyiRRwBFQfmV2yPSoA\n81UwbvrsRaQ5Ee/MEARHjKAon0PWbCjHIeLZ+GauPkRc1Y9h+w5L4i9eyyfM\n9JXE7zW0o2YKN+oHIeMNvocZWvPdOvrOLMvQhX+u4t1S1MHbOxpmzHhJRYXP\nITRhxZDhTgv4VSX4+41TBZUoz1wmqp9HVaob8YIycbAVUmWRujgP6MPkQuUg\n9o0E\r\n=86O+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"72259ddb9615d3e61a7df93c9e1adb78aa10a3a9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T00:01:03.765Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.18","@balena/jellyfish-sync":"^6.1.77","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.87","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.103-renovate-internal-patch-72259ddb9615d3e61a7df93c9e1adb78aa10a3a9_1637021075903_0.09451139718534374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.103":{"name":"@balena/jellyfish-test-harness","version":"8.1.103","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.103","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"16d1bfac0c0697b2e7ab0ac8531ca941e000bc7e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.103.tgz","fileCount":27,"integrity":"sha512-BumpGfDXoHaiJN+gW/2zTIdBWFtDzf3vbXoiYViKroWbxYv1o5fvYPi+cQ/xyChE6LYYE9lHXsIVT6aCIyQp3w==","signatures":[{"sig":"MEYCIQDjns15BjOfs3jp1qzrAJD8TVsJ/DM1GOhzUSRjjFEpjQIhALfMrKaLrXCQy01NhKh60BFVJQxR6Rfkjk9V5xLS5n5N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkvaCCRA9TVsSAnZWagAAenYP/1V4vjBOX3sBVZ3LLLhS\nkNPlgVjMsR5PhfQnS+qoGRe00BS85WrcexncpisKNnqIDMTX1n0EEdagj0DE\niEqDT9c9sVEwt0dhF9I8KmRyIUywfhUhYGdpKrxw8RRuRpVKEjLV3aMrKItw\nX8PrdfYYRJfN720RliQT6ioFK8H8dLu6ijbNbqGTmTth9br5eAI6QpEAAvAU\nJlhG7uv4mlpPVTBsF/mgecGuMr8DHp8XGZnOJmT6G9SZXvTZfk/2s2iw8+OG\nmwoWpep/4oRNuF+txNgzM1h7QiO1dQTRl/uBsLpbZw/EljoAgC2ppDCoPooO\ni0o3xgYwLkQpgijTsad3VDrx2DTiPlklwCEcOzVrdZyZqB2JgfOHmSrPWeLm\n72pDWjDA5qFIMszJNKkYyek/M5oSs5eJS69XL3UFbQh85qJhza8ZpME7ADhz\nu042upVkik3WRVKFstpLkdzPQ+Gffo8AF3Qx0dnc+nbKUG7x7grumDZ0BE4f\nF9vq/Y71ejw8k0KdHymNqM1CaIwM/8sv/yvnO1+0L9uq5O0LPh54rRjs1qHN\nGV3+sAFDoCbtS94RBj+JMG+pRaVJ83eNKGbjLUj8LZasfPlf6HVAOOsxE0HK\nnYPdMwpDxdPUoljDKmuOUVV4NdEEJ22rGYLxsNjZlNfymdFvV/z1AnEKAfgr\nvXO4\r\n=dRKw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2b0e76de20fc04de4dbe47364219e88e9a83d29f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T00:05:52.921Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.18","@balena/jellyfish-sync":"^6.1.77","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.87","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.103_1637021314495_0.2982158613135726","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.104-repo-sync-jellyfish-config-default-87601b9b091a09f29e584fc17e70f227d3a638e1":{"name":"@balena/jellyfish-test-harness","version":"8.1.104-repo-sync-jellyfish-config-default-87601b9b091a09f29e584fc17e70f227d3a638e1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.104-repo-sync-jellyfish-config-default-87601b9b091a09f29e584fc17e70f227d3a638e1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1bcb12be0947c4de14d9356178daeeb306283e3a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.104-repo-sync-jellyfish-config-default-87601b9b091a09f29e584fc17e70f227d3a638e1.tgz","fileCount":27,"integrity":"sha512-LXmlf2VC/Zu6O2142T/Ytd6H+fpvs2roZ76lpAdmEa81FLTbDSWH6ZEePayWaXLqgPtHnIR0FLkjUzW354gMPA==","signatures":[{"sig":"MEQCID8yW3MyN37hGUIGRkQ2wI53kLcp53wnAlEQMmk19LH6AiAy8H6mXwmi6lB+gw7PGLALFDjpYlC9bGi44wAsUBHq4Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183666,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkxA1CRA9TVsSAnZWagAA1VkQAKBrlmheIRazPlJnKNpi\nJdK0/0tgih/LSgybSavtdAOk2U1HEbvfbc8H+fvYGjaKUf9YOYbdkqD0B/sv\nPrbZ+FR45COQqi08CUDs2pvRzUbboHJZyvne5kqs1Lh7WPeCFAnjVnzmV/D1\nH5KDAcMX7sku+6yVOWZjVa36pYYon2K8+JKh4xS/fQ/cH7fbBlpIQ/tHeM7S\nf7WgI0AsYVjmLVJ88p6i2aKs6TKw67px9bPTE6J6a3HVjcFa4o+RCbtOFX1z\nwsFkeM9o3NMJ0kixQ1+bSk9hp4WdfxTa5oD6QhRX3plflWT+jLLBCTmGIIt3\nlCvhgb4vNpbTcc6Ie9b/AJXIanhVE0W7YEAwb7NWe57diYpTBdHautLkOtdq\nyxldqbng/4afEsfy+fumSi5qwt+zRE5JBYCD56fPAUrYDYc6dqRLljXcD/RY\nkPGRZiWb6Fi7MzzbJdHGnd73oLC59F/x/LstiMeTtDeiyL5f9qgJFuYpq6Pe\nyIH5ytSVAjRabPl6Dp3mOUdwIg9ZD5y2qFIvnezTTk90gbxIm+7vEl5s6ynm\nqWyiwYZJRyPFu8vtTlE0iBLYk/FxIwe+SPtDus4vlsNJLyFzxEV00V9FsEa5\nZqBS1BWbGbplZ/Mf2DAZ1pwKamzytg5n3rhGZqGcAojYLW9dUAiv2I0UCPi8\nUAxQ\r\n=5f2k\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"87601b9b091a09f29e584fc17e70f227d3a638e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T01:54:31.906Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.18","@balena/jellyfish-sync":"^6.1.77","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.87","@balena/jellyfish-environment":"^5.1.6","@balena/jellyfish-plugin-base":"^2.1.279"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.104-repo-sync-jellyfish-config-default-87601b9b091a09f29e584fc17e70f227d3a638e1_1637027893069_0.09658341118373981","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.104-renovate-internal-patch-dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b":{"name":"@balena/jellyfish-test-harness","version":"8.1.104-renovate-internal-patch-dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.104-renovate-internal-patch-dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6924f51090d48b6ef77354379058d96d1f47e077","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.104-renovate-internal-patch-dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b.tgz","fileCount":27,"integrity":"sha512-EAokAfBxQqQ+ihuy3L0lETkV9V3xC7UBeLXk8VaRNaGb4kk0rlYXrOG5R/aeeVndQd+PNuXgTGwUhbpBHIUOkA==","signatures":[{"sig":"MEYCIQDYd7cY4nlKP5EzSDXDsWn71wQIEzcrTk9GNnW27pV1eAIhAObtrp5FKZgb9gdmKkomKndoTdC7i97RbzwRpNtR73tj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkxZbCRA9TVsSAnZWagAAvxcP/15h3zn2pP+F+jjxDeeo\nwEHy4gGxRYOXKuzUCec2qKy1612HgncN7b8/X11Euffytb2DcRpUFcRM53JI\ngV7iTZSiDv42q9QUNdZZFNuP2j7NzLugGP2rM27uktUIy2XEIc/zvF2XPAhV\n0zePziQzPtNd96AIgy8oPBuVEEMaTc2gmQT0k5eKnuzKJnnGzozYB7m+whAT\njVq0Rm/GOiIZzqifx8SgMs1/IH7LYMTPSf9Cffhz9449t1enbvrpx+LBXLuE\nPsd443tzp0Vq0QzmZ4VFHbEqcni5cqkOJzfoa3Mey80VW/XldV4WKWaAl5uB\n9FnHDgRmvPCmUGp4x9guAev84TJNqRn0D8zInAr/PadGY7ETF0S5bsJDSZEA\nldQ11QIFMMPMHyDdSKoA01vf+SIgyS82s0friLlaiC34Na3Hfc4ePzlKZ/z8\nGA0kNX61d3wP7xnhkZ7hCJ/IR/qf/A+niC6ZB7EFr8Ge/zzopiMPbeIPIP9a\nq+x1bBOVz6a7suRVv/uYGE2DoAOzfSXXhaKoBGIu5KVBU+rE29YXmx1+rlmg\n1qxuo34esVoZpiIJnv+lzsiP+qwv+054r9lUKdODIt2olbmiueGraYlNB08S\nrJDXmYK0qxhCTOY95B0sIPqnEDkol0+SqyTUNUW8f0iVphEYhAgCZZ+HoO/3\n67mb\r\n=HNqg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T02:20:37.877Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.78","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.7","@balena/jellyfish-plugin-base":"^2.1.282"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.104-renovate-internal-patch-dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b_1637029467547_0.058411885765866645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.104":{"name":"@balena/jellyfish-test-harness","version":"8.1.104","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.104","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8e575069df8bfef83aff2818a64e09a5994b8d1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.104.tgz","fileCount":27,"integrity":"sha512-SblMyx6pwRXBZAsSJty3u5wyTfpPEGOPk6voHhigaZI95aWckg+FKps1Xc2Dz55TMGbIvvIIDOULqDdpUpBN1A==","signatures":[{"sig":"MEUCICLyvgMQ4Sw+VqLUnK6i940HHszdNc951D+4m5PKcJaYAiEA5pB8PssK0+TMZja6WDta1Piupj1aqed3WqddgrktAsY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183569,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkxd+CRA9TVsSAnZWagAAkyUP/09cRrneEhHUoMyvEreI\n+D3qIK09YJogg/vukopzR89sbiGWoyKi/SzlAsI5rBtUczhsDG5+ijvlVsf2\ncNtIAav4JTpL5pypsDhsYMIxLSjKFidIdIhJG4v9y/nvmyFXPVuiAklvqcd3\nIVnIVlMu7xZzHExtaXmPkre+35ETFWMZCBk+67kZYKaDEidy72tJxGop34+C\nLNKCp0W4WoZb3VGh2NoLPeU7z4ni54a+8ChVYkeL7SMjBu8OIO7KTmusN1DI\nk7yBVrH8yC1RlYTU8hT3PzxjABP/I+CbCEl31B9JXsJhJNffYJQrwnt+wAAb\nPxarusQcgecq1DQlNgw8KkyxAnNV2EpQM/KSpoKgLitX6+Aos7K8GRD0L8Al\nuXsgRHAuk5ChI4Mweqc5vuaymYxxfPaqC3Cgkxwe+s7UAnHbPDWdRlgzgByY\nZHtdpYltWECKOuVG9MP9+sI3O9EmFv+pRermdPPL/JpZdwsIB/IAj5MjH21f\n1F3taP2cPNGSuVpPwax5VKcMCC2pJ3pjZcBKpwyLXGwC+zhJ8pamsSPnHV2B\nu8a/MXRqtctq3vnggcsQPevzYGqP98Z7JQ4BrNre/VfbjKTyZB7O7D7d0sE9\nv+j9Rp5LP3vst8at5xwy0laO0w69/fLKyPfsTiTreFMLe5k/IikGcqy8K8VZ\niwa9\r\n=Qa4f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1c8bcddb10153428ece9802ef8b181c7682bd7a2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T02:26:19.107Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.78","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.7","@balena/jellyfish-plugin-base":"^2.1.282"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.104_1637029757962_0.5581503359354538","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.105-renovate-internal-patch-f000a5750bdc0da5c85f9af407a54aef1b631856":{"name":"@balena/jellyfish-test-harness","version":"8.1.105-renovate-internal-patch-f000a5750bdc0da5c85f9af407a54aef1b631856","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.105-renovate-internal-patch-f000a5750bdc0da5c85f9af407a54aef1b631856","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"987b7a3a566b5f34a55a03cfc9ff547faab983e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.105-renovate-internal-patch-f000a5750bdc0da5c85f9af407a54aef1b631856.tgz","fileCount":27,"integrity":"sha512-IBnDSA11V1NOvdjPFKDqbMGAYw16BYoVHsaMvhTcHrVwBDVvYWa3BbgU5i+Fgq2SMGWZk5VyIhF5q7VmSruoNQ==","signatures":[{"sig":"MEYCIQDWrTsR8vHkz4JPe5mXwv/voVZtTxBTBSsRQFFGqPAq3AIhALwy7k9970w0HWM6lQ1jJe9XNQRgjaK1Z89MILEGRJT4","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkzhJCRA9TVsSAnZWagAA9cUP/RkCpOiXd7swrMHA4sp3\nrr2N5ee0VDT9y3cwJiW6M5PFvwgdgq2x0/fue+TUp/E2h3dgWNXYBY9dVjMe\nNtXrwY0cIUPpU+N9iN805GLilgo9DsNiGZvPeXxWD+n7niuIxhpVU3J29v9m\nP6/Ejvvmvn/ummSdL1zgSZPUqUnAl8wNRjt91ALEOUwr3cLExZnxe0cX8qY3\nBcJmef2resmRUpyy90pctlcqlpSBM+xWujo/2eN0ncU5Gw0fHBIf4Bz0a4JL\nDEGJGUcYcnGrBRMvYW8NihgcpWYMry3vWxvlOBmDPUI66qFqDsXUbDowDufr\n5DqhN1ZXt+mUcfDdrsbW6yoZfzjAsw48R5E7kUCrK2bMTkPM8gIKRs7M5PRj\no9hxRP3ELW/Mwjg58Ama6KirbqZCcwXrLISenhhPsWner0ZpZemrz9zarIzw\nwvouGr6YQB5Y4o1x7flwsAqXsrZKmkZPLdaRSG3+udN388bf6F9KTVJSHNw7\n1HzhPhe06jr5wtXQDtDQDjDOPmbptu2q3lR7wjiRTesCF4IXdDKAHL3KaE4i\ngDghSF+zvBemUUYJFjlNADDtGDYZmrbmfFNERu5/0F6k+Z8rzyhHA0jL4y4M\n5FB954rY9vyUglhbzbcIs/Qz4qYQfBwkchGJOS01l4onJ0zWOM3m5jajs8xi\nDqwx\r\n=5JL/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f000a5750bdc0da5c85f9af407a54aef1b631856","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T04:46:07.177Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.78","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.105-renovate-internal-patch-f000a5750bdc0da5c85f9af407a54aef1b631856_1637038153463_0.5659439390406278","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.105":{"name":"@balena/jellyfish-test-harness","version":"8.1.105","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.105","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"998ec4363be660068d094bd5ef7a681f5a3640bf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.105.tgz","fileCount":27,"integrity":"sha512-XNwgO1i38ZnpaIjGlRWyvzjHubdH5hLL016UauZjIrsn+Q1z+5BOIMrytLoeCAfrYjznQfEFVXfy2/BTUZKbtg==","signatures":[{"sig":"MEQCIGeI7zU0zFNExRQ70V6AzrZs6huSFQssbUYEW+3zVnzDAiAbL5mEYPjo20X+6LDo1+XA463jTjKIJaTiy0EjY+57yg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183644,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhkzjrCRA9TVsSAnZWagAASnEQAJ9vph17cdGxJFrBVo3o\n0JUoYUqu+48D9z18zEyY7gVAUYeI1S9TB77aPB9TVhsLIVUd24zgaw2rIQip\ncPrHVHCpYGZAkSKTkWS4PI3nqY+JmvJHkUgVZu8E//M35Kr6BYGidS/yI5G/\nEFBTOygws44qFjRbwVBqBVi3ae4NGBtoRXfsEXknNbB3Ae6BRjw3utdliuY8\nJI2mqKiGPraTvuq+znGkeqrGu/CMnMByqkmZRHnLOMdPjrhwpBAsupMQjnhL\n6gdWGewsIAfUwq0ni1Y+BkcMwi3EXZjJlR/zK6lLCmcbfvzI4/h1zl9D4Yl4\nUrC1JBuwELTxen5EQixj460tBMJK4kIanBmlVQ9P3/jIeKTGAQIrV+T7HOGT\nkrrMwiXv+qvDGEoaANOykXHo1ZUDTCa/4njSLn5ashVYi0bfB0cFHN4reUcq\noXX5gHPhQzj0hSDBqOmvwh3YpXp+8yp9A+gNy3ko4+hMMquQGyug+LZSN5/F\ngf20uEwxt6PeDMgJzBzRtKdH+EAO0F4BcGPJAeV5zJpKF+F0vuRdTDZBBsV4\nuhpzMNvgBH+qtpPIhTbuy3Rs0mgYjMcUuecrxeKax3WNyLmsyPTxoZwsdzBi\nw1Bmcjo3YLEz+1MAw0ZeGbMwdX4rnsTYk4Eh/S5VAJWSVr6IWjUMqDIgkJkD\nEQJv\r\n=Y58W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6549932028c648fa2b8e8badef3615fabc4e0568","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T04:50:16.373Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.78","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.105_1637038315718_0.8145947178849615","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.106-repo-sync-jellyfish-config-default-765461771440e90c96e58ed7a68d67d81d0370c2":{"name":"@balena/jellyfish-test-harness","version":"8.1.106-repo-sync-jellyfish-config-default-765461771440e90c96e58ed7a68d67d81d0370c2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.106-repo-sync-jellyfish-config-default-765461771440e90c96e58ed7a68d67d81d0370c2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a38cb38bfef35edc9f011683cf56afb77c0d0461","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.106-repo-sync-jellyfish-config-default-765461771440e90c96e58ed7a68d67d81d0370c2.tgz","fileCount":27,"integrity":"sha512-HYffP22xjGEqFEiAH+Fs5GpJrNUjf5eBTpCqiucC6Wiyp7Xg94aHs7/yQ651a748R9qp0wCp9HtPNcbQe6y72A==","signatures":[{"sig":"MEYCIQDuS0QHU4GgthUS+ApL9s/bTAq68R/mhBKSpHKgCrAo3wIhALkXuA2Ey4zpDkqJFyfbCWEdh9o+omyz8ZUV0z5fhPJF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183816,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk0YCCRA9TVsSAnZWagAAoOAP/ivaVsNZGsS7njI9rUoR\nJ+A9B4jBeHugvsnrwPN+O1pTWeQmHOLZuFSpb8xdZ8S+6vumsgLUS/myeFiw\n1V2Ma61Mzp7nVOpATwkOE2s/mPh6KD08DmOcNHp7iCwyA89dhhqD4f5MlYwv\n8tdDWh25YcvZZCinaE8A2Q2luoFtU41VkH+0fHjWI0yXPaY3AJMj8+nPggub\n6Go9Bz8O7aRj8l4r69xv33o1TuRrNS7PwlLuPEfVv4JpTjGcFtwhq9Kfb+39\nmFGC8XSOO3L4FXa7nEEf1IBC8yCOcf75vEpRypLHuouMU3bLpNqt9zWEMNcX\n3F4nfI85udc2vVULA55ZkpUp2UskrhQ0yqkwvf5gwCtgMl52ZRpCPCWvL1gU\nVrtvG6v6Jw142qxM3XTY5KyF1vbXh2E7EuwKNH19DGd25gCKGmexSHZunhcn\n/TaraYPIYL976qSDzZ0z/DbPb9AUEdq9m95Gt8ic+0tbGX2SZ8aGkJUik6wc\n1fg+ENfAx7uBMXbX/vabgsX8dK6sL1BHmX+lnXsiAF8g4J2Nsdi8lbfQff40\nIcF4pRTxpBAPiusfgRUAAewkeiL1SqoIYEWo/IGhMNMsrbE0PbXsddyCYbsS\njQQOZvZbppD5f4ZsALjr+m5T1vKoAvhSKwBQiiKOOKfhJKEJPgLtyehWh1Bv\ni2db\r\n=C6ug\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"765461771440e90c96e58ed7a68d67d81d0370c2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T05:45:11.672Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.78","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.106-repo-sync-jellyfish-config-default-765461771440e90c96e58ed7a68d67d81d0370c2_1637041666244_0.774152951225306","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.106":{"name":"@balena/jellyfish-test-harness","version":"8.1.106","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.106","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e8ddfd8b4ee51a8cdb913f4b99002ff4b3ae88af","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.106.tgz","fileCount":27,"integrity":"sha512-hh0sLLFOokBlpmIZPPd4xoVjvQyhnoxrxA28V8B4C3D8oy8zaoX7IDQgxGOJopUApv+YndTgRHZwzECERWTP/g==","signatures":[{"sig":"MEQCIBfiBctJ8SpENrbDDduKUG4987ZyAV590yeD+M/h6d6XAiBIsAZRUntpobrpzSfZmP66nY6KKiqVNCGAQ6LZsl2EEQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183740,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk0biCRA9TVsSAnZWagAA+7kQAI/is80aj8YVkbVLQ25j\n0ySs3M04/HXUJe116veLNumCYAESlEtMwdPvntX1E1pjhsMiOF/XzLnvcMW4\nFiWN5Ck6gAramhura9wAz9fYVZeUSC8YmUr0Hmyd/FjoQXoO6rlnCvhqOhyi\ngfNpQmExJHVlZR79ilq2R30fZpPKJx9eR+HpCSpHFlBEYrgkJ59y4zE2JX3w\ncumw4TtuA/Yev7mzRhWgE7KP5CFIhMfQEIY6z06LRmKbv5pV9Jsq1Y54wtQO\nIHSUMmKnY7/xQAPYadl3I38l/Pug++ncNk8smuszDbTZaKRRTn/PSOfz4clz\nGhvVYw9uS1UmgCIxmcxf4p/ZZghPSemFyFcyliSzgKhwz0OFduEwLAma8YcB\nk2UeEei7Wtjkqd8crIGPhfIj6UwmZMo7skQ6lHJCnn5NbQ6lue+R1bAce4EX\nH1a1iLSQmmGHKGEkyuDfgJRC3zL5TSvkvVHWZzI1r2Z7gU+K+Gl0BbbrEA71\nqxfU96WoNA+19Or7f3ePu3WxZx7F2UmlDvSy6AMMXEl6bXRsJ//TvUNWn58Y\nHpeniwpsYIPejIDokEyi+nwJupX3JmSxyV0pBblu7qsSpDzokgRcXEOomIE2\n4P3OQ2XZfG4Zta+wOjlgPF7VdYkIDbWcztVbODS6rAfEPqL1k4QmPLmFk5s6\nTVR+\r\n=5xBE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"db32fe2989e9898a276ca9f84b501fd021d4d4b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T05:49:27.259Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.78","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.106_1637041889978_0.929009508361623","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.107-renovate-internal-patch-9f8f17de13de389486ab57afb87773110e8adfba":{"name":"@balena/jellyfish-test-harness","version":"8.1.107-renovate-internal-patch-9f8f17de13de389486ab57afb87773110e8adfba","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.107-renovate-internal-patch-9f8f17de13de389486ab57afb87773110e8adfba","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6780d86691b4f5ac5729d5c80638faf8fb401e7b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.107-renovate-internal-patch-9f8f17de13de389486ab57afb87773110e8adfba.tgz","fileCount":27,"integrity":"sha512-r+wndXv+Owe33JX2V77bmEpEYLE6Nq2XPqpNV9g56N6rV0IPSpnTWeDXS18AqO15NwbhWkL4xH23V8OJEpnK7Q==","signatures":[{"sig":"MEUCIQCen67Q/beRDOnl+wTCXI7WdKBKhO06mM6GMbIvLJMlvwIgAm6atbbxr2mU6Soneu8Zg/itBN4d7Pvz6J6WFkWBMeI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183910,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk0gXCRA9TVsSAnZWagAAbbcP/R2u6uowXIQRauYDwkEl\nkI/sQM38gTXIpn1RpD0h8/cJlT9l+ooV1Pc49r5RHMYbnmvhlcmNw0Q0zayp\nOX0+MEzotVhvhtRwVw5azdFO2f+laqRtmiukGsztYD/XeykSl6OKmpu+X7Nx\nqMdcyUWUaGSpU/ajxBJxEnmo4+NxF0WLyNNo4vmLty7M/fXQz7r1PmlieVOU\nm/CSib8cvcZAHht6c6g/oqm58BvCaKnldibPw+uSgYRiEFJy2zSW8QKQhJM7\ncl41UGzPBp1BRZmAk5Us+adFl45sifPiVAV8u/NF4u7nJ/twxQvrsQDjHugA\n6Qni1AcJHsidySRzJp3+8uefKc/uxhjzKfr86ZBHBQv4cCXsfNb6nL8HFd+t\nhFwx2CMrLsgiWXW0IS1O9GPhBWCwWSGuVLyz4JHqubpWOZyeroUlK5qEdNSP\nKAk4FO/N5mp+TqImdLCINA4jKxcbHVvM1I+cR9bRXmgEVNWUbwwMsxrOj/zF\nWlWWS0xM0lXLQoXynxjDs+/WmEQkBrljkMGD9lLgaFoAHOx9IO5lLuurj1LS\niIEkqDBq2lInBJfCwFCw6Ypu8fN7gLcDzQaDMftZgjfB5Y7vjgEaHDKC8EGk\nCDp2A4a8j2o9bDUrEBSLDEe5LnvwW9lr77ShtBxe9OoAIj84VZcf5mHiK5GJ\nAWTj\r\n=hK7+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9f8f17de13de389486ab57afb87773110e8adfba","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T05:53:42.037Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.107-renovate-internal-patch-9f8f17de13de389486ab57afb87773110e8adfba_1637042199056_0.7311995210919664","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.107":{"name":"@balena/jellyfish-test-harness","version":"8.1.107","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"UNLICENSED","_id":"@balena/jellyfish-test-harness@8.1.107","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d935eaa4c2d65ac7d0316370ce4c8f6ef6bfa274","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.107.tgz","fileCount":27,"integrity":"sha512-5SGHpV0zHAYYRnWJN9gm1PajmpUMKgt2M3Jge2ueqHkqIpKi9kziqmOJGKZzlKKcu1GIwuxha8pWlEtTYCLG9g==","signatures":[{"sig":"MEUCIC7oHAcv1c+GmmiaRGakLGqMpyfCDbdi+78Vc4Snp+t1AiEAxOgZpKmYx+lMHfubSWW+Vy8ZPrUi5WsyQ7fbdl27W1s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":183845,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk0jFCRA9TVsSAnZWagAACSEP/24HuieJ/FJScX3/DZSf\nyBFYPQjWA88NqR2Ibq4GNP33bfIRiBnVlvDJE6RbmYmUvYIYrCgeDufZIJiX\noV1ZfPdJvIqaj8eVfyPXr93TaZleH3N40WLkktWLd4lQ+U8BuWKvT5eT75Zm\npXQUcj053QJAs/fOQwixGJOF1JcOT7QqCoKiPdV7kFzRoyYdIXGUZu5FVaZL\nNWNCms82FNG+HQkPOaFiqxOaB0nFmvRu8QA0St1LPUGYyvRRmRnR/IKraEzb\ngktIS/+NLbn6f4TKQPTqTbngOkCx7OnQYYutlwqwPbynvv8jlXEHR18j9Wmf\n/Lhy2wpDVG/j60MJ21+twNA8hckNWr64VtBoKI3mHujJDe2EoKKoUYdAs1BZ\nL4RiibTJCkg8+NwfJEEck8sCsx02L/rNODbhH++aTd2pmjajw71x0lfl2blY\n1csu17cdcDHfnrA9aquP1B2bq7fK/CtxdX9ezVAP1xvV6HBHYSTsRXy/ep13\nUkUv49lHvrN5nZXDCKH1PJ5SjAiOokZ5J5YpyHkVIfpDcs74yUwUhk/5C+Mw\n+9O9Yn4l1xYIs0HoJrW6VZFtLswiq7pspjRwK6uxAc31VHSsjEo6pf/bRrR/\nDvVRrA2aR4qcEPYnJsrYs/HdlXfhQKaUCR1g20eWondGcqQLX1DWrUo9nWcb\nt9Aa\r\n=UPIh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6748f0969d5d92fdbb563b68f62ca376cccbcd3b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T05:57:46.143Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.107_1637042373723_0.32403345751368384","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.108-joshbwlng-set-license-9d521d65aae636d9664177eb8e7b96a554e6b975":{"name":"@balena/jellyfish-test-harness","version":"8.1.108-joshbwlng-set-license-9d521d65aae636d9664177eb8e7b96a554e6b975","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.108-joshbwlng-set-license-9d521d65aae636d9664177eb8e7b96a554e6b975","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"69c39385fbaccc01a76038b6c410ca26cc94d651","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.108-joshbwlng-set-license-9d521d65aae636d9664177eb8e7b96a554e6b975.tgz","fileCount":28,"integrity":"sha512-lqelE2m1k1b3tmGEEoxq+boqEs2iABp8j6rsMFJbgPPpImVlB7r1o0J+9GmCiy/RHsab1IXiEe8GwIzzYpNh+g==","signatures":[{"sig":"MEYCIQDJMbotu8OwdA9HS5DTATMZRWtbvu/ZoNKVEyAGOaCAuAIhALTKS96WgXgr35F9fhohOd2o3FWqBF/xqH8jo/2bEQ/W","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218484,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk1xBCRA9TVsSAnZWagAAfCAP/Ruv5WqPEBw9pm2ugbP+\n45+2U+1L7/2kwiKAK7Fy4BuvzlSl7QXe4k7QV1/+vrqjTPMQ9CxOXV/4H3Hl\nK8gikQSS/VofKdHOFGByRaUCjK1r++xkItcu5UV4HdFdVcYh3BopRTjJE8mB\ntiIEQfsF8Udn3bVn+9ys59W9oXLP40oIOpwP+01NijF2CAs8RiPfQP89EVsR\n+cIIvSwAn3GfuPwvTJ7WIC600XQ6TNGdsXQMR+WNcl/AQeP2qQ2Avw4AETOh\nwAl9higNieKIIrMWYX0gbOznD4MQwYXi8suarvcmp10ZqmZamBUun3oCetnO\nqNqrEUuoP115uah9B/BDGa0e7nVxPcoG9OssF1hnZFwGKvxE76JNKAE9LPbU\nuj9WWq0pBKh6HRqIRUl8vqR4QklX/YKolpb3YjwSuJ3NndE2uqPevLDnsgCT\ndBMhN6xtc1ta1OFRUFg/DJvboPyeDW/BiwkCQh7U1Y9XiQ0B8ggZDIhsqyQp\nSiyzDIVkRMcnQiUYMXsqhRPk6HD0qCyHn+wfv96PULPM7rYdwbv0nkG6oxsZ\nGT6Mkj97RL1vw70HGWcVHt9lRiNDCvfjuLczPZLkqqu8A2hKdsSx1fbkmxjl\n9rYD3f+kKSZRrgEFseWLpNy3bmqU4U8QPXexryNHviA9PoWfqCu5CSiUpVRB\nOhWB\r\n=UHWw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d521d65aae636d9664177eb8e7b96a554e6b975","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T07:19:23.484Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.108-joshbwlng-set-license-9d521d65aae636d9664177eb8e7b96a554e6b975_1637047360900_0.3198873149287862","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.108":{"name":"@balena/jellyfish-test-harness","version":"8.1.108","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.108","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2d3ce689794df48651eda6ba0280765a0b40ed2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.108.tgz","fileCount":28,"integrity":"sha512-dWEx7EjU7oXVlkPMn7IFnQcYmso0FCldY9GMeUZslahQxypUCjzKETrGzKaPtIWidrViwOQOgfr8KnNbjWx4ew==","signatures":[{"sig":"MEUCIQCP56p3Cg6BJruDSqTtFbaT44oiGCXPZRfs2i5OAnCGqgIgFAOHVtvQa/XQaufbusOp9EwlKL9uYq8YhuSBYaqz2G8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218421,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk1zkCRA9TVsSAnZWagAAUgsP/iM6GHsevT4+mgNqTYEw\n/o1OcF3kKdl0yFGp5ulS4FkaARMt99NWJ5FKeTT0S6dDDIPnlCXwj/3yniwS\n1I5v3uQfvEYg0Xs9NjjgDCc+QOVxOmjBzOEDTDbzVe1/NvcSATjARfxh9GG/\nn/dCACj+v0rgDZipIvsl+zxaXrpkludjNIH211zX5c2HII3zxf6Jq3K6dXvo\nPk18s8IYbGOaA8zzHFUvoumapfvAysVwLWeRc+DrErIGCmgWGqW1UQoT20zE\nC299a89W1d5KbSaZ0aIYM/5WdGw1udtXL4CWVrIaLLsa+KOLZXKt6DrE6fQP\nuetao3DKdsW0e3tilWlbFdzDZxo14JuxbgIlH6HLNTfvnhMOAOl0F14QLxpa\nz7N22CENbA3g768feNUOFgjq2FXul2Qu5S+rz5z15DtYa3lv1TTP7vb9/yiL\nayEpwAOLZV8b9HzVf5MzY5rJc+os4W3Kgxa/rCwmAmbL4Tx3fbTaEDKUdUM3\n9h2XaQLUia3oJSFKWUHwPm6TsqKMIbUSwluVrEyx/lLjdQ201ABw3QzIj8T8\nrsEp5dEPIwxly0yQRCyf9c+OBJCV9gtzAizpf4GEmglw1vXjI5OwqHOp74XC\n5Oh+YEDfTtMaJgcifzKaKpFWYrxnH/lOmoBTO2614xIdtCQdYOaTJvKzrrO1\nCMU6\r\n=z2b7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d98892d2dc15ab7bbac7213af3797a2bfa3c2fa1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T07:23:48.763Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.284"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.108_1637047524593_0.7365460333020117","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.109-renovate-internal-patch-67288cf22cf7e434ed6b28b3894942aa6d811ed7":{"name":"@balena/jellyfish-test-harness","version":"8.1.109-renovate-internal-patch-67288cf22cf7e434ed6b28b3894942aa6d811ed7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.109-renovate-internal-patch-67288cf22cf7e434ed6b28b3894942aa6d811ed7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ea8229075d442eb64aabb61dbeadebe3af745a3e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.109-renovate-internal-patch-67288cf22cf7e434ed6b28b3894942aa6d811ed7.tgz","fileCount":28,"integrity":"sha512-OJQgLjFCT+mHbQdCQMOLhsuZhWU85Tz7VhtmMRy9p+8FMa0nmTPZfRXw1i1Kf5nPVZX5ntQ98B6E/KJPrtrz0w==","signatures":[{"sig":"MEYCIQCYidsSp3PCEcPYVg4mji8t8bmP1Ypky4Sh4V30EFdf1gIhAOrprkly73u5xVpTwwsuXpzheXqUMnr2H1yHkjqhP8Tk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218599,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhk4uBCRA9TVsSAnZWagAAKR8QAJAewU9Ook3AIqsJ3unQ\nBnQ9X6rgkay8qE5y8ZzS569vI6/tOKOQPAkYA7gWNN5UDSOOclyKuEZnNNcf\ng3dESWYSvWb4ISJC7AnGabWkurhs0RIGswMjyY3XyNKXcdYBvWy2C6d2mEKw\n1nxZmqUoBzn2x43+qAPspkXBpmZUnH6r/GQC/cpR+TuLzpAB8mbizgSRFPWF\nb16inmc0YmdNP5zVhAlZGqq2oQLn8sbrYq82zgzAuTuNOndDmIRJmmi52QHC\nwnPTIBKbBwkV62uMuEriymiNLYStURIA59CqOUjA4p/vKVyQzBjvxETIKyMO\nrIVEwrO0A5A1pcaCBEl6t0h+UKGGnpbfb1/8e3DqrZbG2s6iprT5WnkixO8V\ntrdsEKF0g5KCbw1aaztmtYCWFBm0xaDfzacCaRdESmE8d7ffGsPdhn0BCueK\nlWqdCIgSIWBKB4ZVv2NRGxlf6ILuZPD9+/gJwFGv58LMOFQEfh5PDCtIgN6B\nIa6MHxJF8LaN3xUPO36JMPhG/ngJMS61I/MiZfNJJUzvtoqFkF7dSvRx7+AL\nw2DqHHDFz88uQ/6SySI5FAkgxgehG0mrHPcoD1Xl5DbjoVJ1k/B5rvgwFf1S\n+TfuQfraFgE0VpVUvwx8kDw0TJdh0PxljLWBk2HUfpNodcYtpVxOLxHLG/s7\nDY1Q\r\n=n+ag\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"67288cf22cf7e434ed6b28b3894942aa6d811ed7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T10:41:05.102Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.109-renovate-internal-patch-67288cf22cf7e434ed6b28b3894942aa6d811ed7_1637059456840_0.40925473265643975","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.109":{"name":"@balena/jellyfish-test-harness","version":"8.1.109","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.109","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"60b74f73b88b3f1c64c23943b61dc55e546e12f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.109.tgz","fileCount":28,"integrity":"sha512-S5kFl1tQ/V0I8YzeG/usYnKTWXnZ0ae7RPhvlZu1epCDh9pC9PmvyK+c8H7qACfBURJa5GAj0JSGVxXckeKoCQ==","signatures":[{"sig":"MEYCIQCqZCA5V4svMDKLvgIAPdkpMyKsWGnq6cqj95SE//CU+wIhAOMxfu3m2g3ggnVSqm5+KuJ+qob5ar8fQDJQdM/zYtna","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218534},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3594e6d2367d39245e8f41c7629d8979a83f203b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-16T10:46:09.155Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.333","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.109_1637059682823_0.30094868917326156","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.110-renovate-internal-patch-b6ba2952161d923de951c3aa9f14f13ad273b729":{"name":"@balena/jellyfish-test-harness","version":"8.1.110-renovate-internal-patch-b6ba2952161d923de951c3aa9f14f13ad273b729","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.110-renovate-internal-patch-b6ba2952161d923de951c3aa9f14f13ad273b729","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"795b101e135d413b5d63cea8245f3a8fe2045e01","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.110-renovate-internal-patch-b6ba2952161d923de951c3aa9f14f13ad273b729.tgz","fileCount":28,"integrity":"sha512-KUg0UkrGclkn4CMuYGkCQOPQcnPM9c4OtAVqaTGdLctjMKvW2/AsLnYCGTInmpMqphpo5cJjowF+N971jux5bg==","signatures":[{"sig":"MEQCIByi0SY/k4wtCKlRTPVf6W88RzRR4l5KdAk6jmp2pmb7AiBRBgE3qBlHNSvTBUNr8wAIld6qZoX2Iy9qqL8pQpcTlg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218706},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b6ba2952161d923de951c3aa9f14f13ad273b729","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-17T01:04:31.561Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.336","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.110-renovate-internal-patch-b6ba2952161d923de951c3aa9f14f13ad273b729_1637111330335_0.21152849761601122","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.110":{"name":"@balena/jellyfish-test-harness","version":"8.1.110","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.110","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25739b57c006f1a1a306fe8044185c5b62236925","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.110.tgz","fileCount":28,"integrity":"sha512-u+SAGmu5WAwr0KQTa+L2eaiNQEcOJHp769Q1QfvTRbeIDivCSgyf8KDBxA7ezbniuRfKvyZiEpyz3ndgca4pLQ==","signatures":[{"sig":"MEUCIQD9W0Pq5NZZ1NbeC1w5WpQ8TYygaPXyMYvgzb7X4+2BlgIgdHaOAbIrNFD+YFUb8B26SvnpzpRW95paZS9LnVAjxr4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218641,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlFbvCRA9TVsSAnZWagAAKLgP+wUEHb88fni1gG044AFh\nVqu9aSjOpLSHtduN4NOIOKBVtn1y6Etn/a/1Bf4DZbbw+9UxUcbV32DQ5Lvt\nkPs6c88cAsA2m8T5gxWErTSqtU29VAyRDL95yHKzlavPhXIQ1yjY3FCFdy8Y\nVWEk+G+N9mvqfE3uW/zJm9Daf0MWilovu7rPvKo2sNDRZTPoFrfnYMPlcWpr\nB5cKecGoIMQH4KHJIvH+Mi8Vd5DsQgUXh53TnlsIOXo/vlWtmf7toDaS8YPy\n4OA713rvjO96aBs8nHdJbsGE3C9MJzN1G1oWYkiAIlLgSWxVLExc6opofrCI\nuA11qNKRKyNQfpQT4VEU4iMfqLwK83UB3PWhx8gCgLduoHQYQ/DozizAmOxw\nf4NF/j3dIxYRwFxl70mjEaIFNibOOFAG9+1VWLhBI/ZYuyLUKZiUgpaPKBLh\nV2pFS3s1bThIAVbWw8eW5g/XbyFPzImp9ZGZ+4wgnZh8j4wyFHF/MD5sQft6\nvEaep/w7hGBG9UepCT5fEPeDY0Ehw3dfqAGtRYlaQGQDZ5MfbFyGaX0adCJE\nH9PIos/0dr70t4ULHYYaavMuWJNFZE5d8s5bNXoa/MAOv+mbNgXjyeD6wo3d\npxZSRrIRcCZGu1Gnvo7p/moRIpOcCw96TWlOMlWV6RufL6EMFrltltKUwwQd\niBjp\r\n=LMAj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e4856094ed0a91d389392ad29a97864af149c4b0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-17T01:10:32.935Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.336","@balena/jellyfish-worker":"^10.0.88","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.110_1637111535325_0.6172805991973063","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.111-renovate-internal-patch-1f130968fd2812d56d327b173b3362842dc16162":{"name":"@balena/jellyfish-test-harness","version":"8.1.111-renovate-internal-patch-1f130968fd2812d56d327b173b3362842dc16162","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.111-renovate-internal-patch-1f130968fd2812d56d327b173b3362842dc16162","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b7c22ccd6c124225fea5887aa43855340782890","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.111-renovate-internal-patch-1f130968fd2812d56d327b173b3362842dc16162.tgz","fileCount":28,"integrity":"sha512-1fAxx4J54rydkXv2uSNH6r9xTzJ8f29TIFbZh5s2HHTVauqz+AdXVgtAlPk7dBqUd/G5+z+g8z6XOM+kWKsfDA==","signatures":[{"sig":"MEUCIC0M2ZFMQ1EGzaxfJxzHrqxW/2we3JNSnEG2BpkFJ21mAiEA5cPk7T5UgbQ9uYkLOdfME0EO/DGXgFpoSx5OSpZ3Q+U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218814,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlHnsCRA9TVsSAnZWagAALDwP/RxPkWRJX4aKksjiHSap\naY04Wxub19IYwx/NnyVI17gZugQx2JeqATiZS4nd0JaCHb8w77TxCeUz7yEO\n/3dXet+AiqrgVji5uKpPqfvKh9mHWZSbPRdu6tegQb6u9t+1sex7waHelfmO\nPpQRmwcYVV33s1sRvQORbvzakkUCb2A992j81P8vVmqJ0QoN8TUgpcL87AwP\ne60g+xK6r4bC4hd8JwxS+Ffj3pjYSl7BBLMb30VZJgZL1/Rh/Nii+EUl7Roj\nNYdYr4+X9pmCX2Mi64lJHZWpNiMiDeuzccQDT/X8ODzQscpf0WsAq5lk89/d\nf7TOinSHydN8IQEHeHQQKSFfKukSy64jeCZ1VN2WayPHsA9+QXYdwBUpj7pE\nPhR+802OqFtPe8geB9Jr4a6DJ55w13BknWryIKSbU04biKdNTZGUEY6nEVLF\nxPs4JoFZFdRKT8y3+w2j6AC7gkAbYAOdn/LXWK+K3f7BSDkRhJ10/Fx97OGX\nZxeSNuTUpnAtPlkffLG8IaeKK49VBFMep15gh4SPBe1Bx4oyNZ83diKsADZp\nofhzYNGXyYhr4bTiOBeOoBOxKzxiyo6tnOXpDKOhGWGbyKO56FsTj0teEWRV\nZu/VARcp3sKklpj3ZyqkC41v4tGdFCeFO9g8Z/uTG/SCiQCkmHNHIsINXC12\nmq6F\r\n=6Pne\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f130968fd2812d56d327b173b3362842dc16162","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-17T03:38:20.928Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.336","@balena/jellyfish-worker":"^10.0.89","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.111-renovate-internal-patch-1f130968fd2812d56d327b173b3362842dc16162_1637120492547_0.3877012111530105","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.111":{"name":"@balena/jellyfish-test-harness","version":"8.1.111","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.111","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6debdbe8f32666256a2a78a01f6f44a2892ad087","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.111.tgz","fileCount":28,"integrity":"sha512-UWtMo0IhXjS3/kLwPcVKRh7007D5HQ5Evg/Kwwltqt8wHgQvfArmSZViDx5Pb0kb7wRMc8+GowRHlmhvhEnjPw==","signatures":[{"sig":"MEUCIEe7Zz1eQ07mV0NppOvWRqyD44OOrCIucEMdYAIN2cxCAiEA9OqlHNbiq1vqapDTD2fQKqsqdBi0IYnY8+WCuDxTeYI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218749,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlHrqCRA9TVsSAnZWagAA6DsP/3FTm7qOa6Var37RXUKv\nGaJHF50SfxJmRdbD1mmjye4Ippp+KpQPQHQh9K0gKXwipO41b/lHE3g7tS6k\nuwnWD7zx6Ga44URebKef4N2dKpNlK2SNFIkxi8xrEHKn9vNEs2D5iR0x2rpz\n/O1AZ9+AuT/OqKV1GB5LZ8OoTAwUpCNNenQ68sNNWVHgpGKOmZaY+VhMDAjU\nlbUZxQLC9mf7HMZeR3lgW2ONWIbi3eBjIqv2YifRwxIN6mEE7h4wmesURD2G\nByTI6M7SO2E/eptTcXIkbXZy3bEVi7AkgZBKFbGzYXGD2xnKBHWrmODJBn41\nP/dOMii0Wuhq9KOnuI82elidGICPHBvHbBaXAyeovqNmQS6cpsniW5nhZfDU\n4gI6um445apjipUjUSm4fwtzcoVZQJ7XgRbz5ic4P5p0Gnbq62eGlOQISK9v\nwrmJFjs8C/GcuBDdxdIsUgIVmjqLucvijxAX7MTBcSdw3cTL0UeM/SDpnEt1\nKH81Zp8mTK9t6eUZDtU1dvygNpzmvuWUQQyyxrHZoKpKagvEMBWFlapjTmu2\nA/Aq1zSPtiIRQHxevkMoz1+0Ptp1vbqpANYuu77A1TqNctH7+PbLKlS6syev\n9B0ekedRVQKYY3SfipIOOkjsgUBQUth0zcq9s1+su24alzN7V6pru4Ln8gCg\nKYRk\r\n=C41u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b26b6ba0272fd6edceee17fec03d54b0a7befff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-17T03:43:06.078Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.336","@balena/jellyfish-worker":"^10.0.89","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.111_1637120746409_0.3090455128081684","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.112-renovate-internal-patch-70942204ec340c17933aa188345ac048876ee620":{"name":"@balena/jellyfish-test-harness","version":"8.1.112-renovate-internal-patch-70942204ec340c17933aa188345ac048876ee620","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.112-renovate-internal-patch-70942204ec340c17933aa188345ac048876ee620","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e53578f972fcf384c6d52d78b285bf4eb2284299","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.112-renovate-internal-patch-70942204ec340c17933aa188345ac048876ee620.tgz","fileCount":28,"integrity":"sha512-E+O5L1Uvq+6PrJ80hBj7e/iYB6qg3qL/m1PJn+XFisNox8okuw+oiokIiLA4JNwBhbT3/TriUIM3OOtjVvwUDw==","signatures":[{"sig":"MEUCIQCm9tqIFyqAA+eVlsi6BQoqZi0nOgaIRwMUYqUtO8FxtgIgCuLOoKfg9flIcw/FaIUDMnQex7/0z36F3P2kEstFK+I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218889,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlNRgCRA9TVsSAnZWagAABpoP/RviVHU1a0F0AW+B4ve1\nPZdabVo36I+bFG7TQdX0Z+QmK69RLiq5r+tJWSPxVCNm9PcE6+rX6ECWIpxy\n2zbluvXq50NPACoyzIJQGl9YOaosvJbj5WmeTCCp/afrCRUZ2UC7KfDpq9T8\nIH9P5QnoOvovYDiSMswy3VdRTjqYqC67k0lYzSYPKbHaAxTgW74XN7+c37z1\nfFuJRiNhnC661hbqf+yApwT0ySpeDX1gL/JNUoApWNLGuGaORci4+ax6KGQD\nJyS07Hrmt/OeD+z2CCXzUgz4cAyR1gTKFaWQVKIWgGMyYDgfEE9agI7LJsOb\n9Sn/Dajcwyes9HYkzw8ePa9wHeJhDeAa+Kg2INHw17WQwKwoWJlVSzpoiOdk\ndOTqpukAMoiQSFjtcE463b+SHO8WQsXpCemzmcgn2P6ntTFlhYHA03vH95q/\nAGBRuW1wRxrwHH49NqnAhIvD8G4vqR6Plr3/153aGzDeeWMaxDoNen/ByijP\n4VhgXzipW5uoENHTnhFxMim8huCooAIIttRsLvkcBbypYC4O1oTKU0N6trwo\n/mZ1OTTItSFo10AFNe3lgooK04FBxe7uoAenY4sryGGvJf6392iqSnWRQpz3\n8aWFjiflF6OFMlcVzgAoRw7j7edTeOs795FMHedfku8flwkJ9R6t27adbewf\nOqe/\r\n=8/sS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"70942204ec340c17933aa188345ac048876ee620","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-17T10:04:12.896Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.337","@balena/jellyfish-worker":"^10.0.90","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.112-renovate-internal-patch-70942204ec340c17933aa188345ac048876ee620_1637143648363_0.7349826479449046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.112":{"name":"@balena/jellyfish-test-harness","version":"8.1.112","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.112","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"695f02b1e52f1b0c974aecb7beb11e874206381f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.112.tgz","fileCount":28,"integrity":"sha512-L9MJvVSmh0nntcT/IzoY2pTP42HIvFP5av4YVnO90rAMKSWy+0nnfTWIqe41AeB2GGeS5Y2pQkV/hT0oQnIy5w==","signatures":[{"sig":"MEUCIDdYwreLafKHfjaXzpTdxVEaCnb73YouPAyAgZ+k7UXmAiEAvDiAxlKbtraCoIE25se0aVhMjSjjHMAy9GMx42hCO6o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218824,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlNVBCRA9TVsSAnZWagAA4YgP/18EoXkh1Wr8FGakqIbf\npqdUZJDZo0qTerClNOovZOz+XhR/Ku+Vv/fct65HqBfXh/A/tvQ3mp6qx643\nFHOlXSh/CmzItvDHdqC4GNeChi8jlnQO+P73wM9L6jgFjziizdlxrbDWhF5R\ng+vidrFLrNN1S21IKznbfbtIXqDNao0qLqpqM8xi/Y1KI0LqmUpXwymjttVH\nkSx0P9A/HhZyPGvnfpbxqRYeml0HeWb5FTRYAyWcgPDFf3oXtP9Wr6+lRX30\nyIajgGKvliQ3Sm0tdv+SCq6JTy+7idCF8i6eBgsooS0Y+PrxNkVUSqWRsJt+\nyb0KcpNmLW4RzEqPLisP3Yix0yGcpzxKD9zq9RBF5r7IBlKE3EBEXEZm+w4D\nfNR2TkCtr0vWuW0xDzcW+ygcN8iyl9PeuxFp5UYZfOm9jpSofSNGisdtz+p+\nWOoBHdIhQGDvK+piaFeHN1R3tMiPSh1UWRLWQ6tNlGLCLVvnxRpIHoS9U0dj\nbxJ09PBmKBHSSl7C3Xn28fdTiqUlqhJKbQCRBYFLL0CmIaUj3SIiay/ZOD8l\nbEt3jCoULnitgtYgiboKLNLjz1wv73TDS6Yf9jcCuc08AyvNkajBIA8lol9n\n+dzhnne65q/JslMkw8S5CbYFOZ9OXz2k1L6AUhon2vk6GhwLVshlSKqTap4R\noOV6\r\n=c8dv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2c44907b0b8e978ecebc947b55ba9a442883f00b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-17T10:09:17.428Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.337","@balena/jellyfish-worker":"^10.0.90","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.112_1637143873692_0.8498821850936118","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.113-renovate-internal-patch-0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6":{"name":"@balena/jellyfish-test-harness","version":"8.1.113-renovate-internal-patch-0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.113-renovate-internal-patch-0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"70129a63a69ca93605310f4aaa2241213cce0c2e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.113-renovate-internal-patch-0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6.tgz","fileCount":28,"integrity":"sha512-mOYd1Yv74gMGhtSNvT0bd8bIBROkw6O1d7ytYBVXV8NbuiBack8XQ3Gesx/L6fkNmID2dcyBQcI91Iwx9gklug==","signatures":[{"sig":"MEQCIAZ0MoC/Z0UI4o1BF+6zKn1aykgIk/l7z9C6RlL08F9EAiAZzytQ/ySiUtCvfPTVZeugrtiAT92OJbKgq6SJ7yCNdQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218997,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlg8zCRA9TVsSAnZWagAAgy4P/1XBYj14U8QK9dkOBfD1\noF0BXe/dOQ0uwRVaYzVQaV4ymmePB4CY981mN4aBb5sXLqVx4Zj9tP+B3mX5\nVrbjF1jhRY9h1xnZ4CBye2m0ssajyLRW/JjAH4tEx4lEvzGVMZCDT5+BBf+H\nDxafT391Osm3Fsrp6L+o5sQHB+DYiip5yP85Q0u3kpik9CRcg1SC9QT7Om6T\n75bYzywsndTeul5TOnvDaFU5+9ppjLoW29CPM6vtTcbvpAsLrUoh30gDpc33\np2yRYXFnOvZur1a1Tk3EPS18GgYMaW8lDwtm+bGxi2y50z8NYppDh38eC/vZ\n4SngB0ar8AoHDcDZK14iw0jgbYqRzFdjMhPSday61AHpckjMHmIczLNt//pk\nFu/8v/OkIe4ZFrrBlJSxJsgkvZI4eG/s+C2LU8delmkUwkS7QD6dIjCIbwpa\naCLeds3Jfk6quxAomzI2PDBqq1ygsZI1OBr2mH7d/HlnhKKLg6pg0Vmh8byN\nMZRLaF4SA0jeeLXQLvvqu+Qdlx47nvk+byBldISa3+H8k8wmHj8guALXWRLh\njO9UuKsjBFiPs+ICKm+0KlMlZFZpmFwQbZpAoijfdyIspgC2dbI4GgqHGNdg\nnG2cVXeI/YDcDMQgShUVGgD8Je7U9gjDLwIiIxPTcO9TQGVoe3Q3hjxm7cdq\n8Tpi\r\n=Y+8t\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-18T08:27:22.637Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.337","@balena/jellyfish-worker":"^10.0.93","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.113-renovate-internal-patch-0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6_1637224243732_0.6376569510919563","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.113":{"name":"@balena/jellyfish-test-harness","version":"8.1.113","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.113","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"258cd8fca78564231b4f184a98dba943ec157ecf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.113.tgz","fileCount":28,"integrity":"sha512-Hvtie/ET51sP7ZYgWt8eb2vxuFsPJv0nbQq/Z4H5h3MEucc84JrEhvBMtKfXq+klRIkFCf8IAO9sGwourixbdg==","signatures":[{"sig":"MEYCIQDdQS5eP8F/+LFsuGn2tfLSmpisTQvQ1a+4ZKIzkaXYmwIhAOu8H95lGIzLBLHLClF59ZJfOLWUcgic4F0B9Xro7AU/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhlhAOCRA9TVsSAnZWagAAjP4P/0GdQHGVss4ixbfIbph9\nkKBOdL8YEsOOCGR5LA9XEzcZjA48uEs1Xfc3xWeoz3kITY3aL9+YAMd/kgQg\nj5/JiIu8WJeHZYDHqc+4P2/i4YD2UIzxEY9VxIq8b4/pl776IS5J9tSGDiP8\nxMsAvLUEKNcEVNZWQ13P9KhSxtEfYpqfpZpx4XEaGRHaP1jmgoaornK96vpI\n/moksFFjPzsyroTOsEKKt0d47XUuoicxX6uwrIsZqz+HnDM/4hCF0Geaf54m\npv5hX2lkA5JJAW3YjScYkX0oxfCuDCnzqsgZQwiq/Q2djdwckk3ihods40HK\n+E9WyfsVL5z4Dpt6ciMJIPcZA0Tqcay5utX3CRXRbOwoVLMOXJjrAiQ/jrPS\ndIV3jY/I3mrd7wad6b0fyqWVbjV8mhr/dwDkRr4FNUaBZ6fUJv/wJkgy1eem\nPGXTA4Ol3ntxlNxi1hqPc9K16WgTBG3wEdF7mBwXr6wF7IUIygRjqWkmYrL6\ns6lULqmx6vxsb4ua4pHua6fcYEfiOd0D+63OZkKHMcwLbRiQrakZ8k4D7t7y\nfnthkHMl4SOQwg/E35dBdD4OxxS0LmZf0M1GpgKCov0aulYWO2Retv1Ybm15\nN3SG71el5cTTZJYsZ8SsmHrRtEFKF6Fz1m0RWvq/GsY9+O7v+X9WuZJxWpSK\ntmhx\r\n=n3AM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d641a48e3685d1f4d7969a78c4f4134625a14fb9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-18T08:32:17.077Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.80","@balena/jellyfish-queue":"^1.0.337","@balena/jellyfish-worker":"^10.0.93","@balena/jellyfish-environment":"^5.1.9","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.113_1637224462819_0.8551688584544059","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.114-renovate-internal-patch-0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45":{"name":"@balena/jellyfish-test-harness","version":"8.1.114-renovate-internal-patch-0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.114-renovate-internal-patch-0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"250dfe0fe977fc0f50f23ec30fa20da3a8b9b558","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.114-renovate-internal-patch-0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45.tgz","fileCount":28,"integrity":"sha512-riwB4XtVEJRi9p6ivZxwLIKvcq+LoJw0WlYV1nmGT6J/qSeyJjxFEj8eAy2jvSzFWBoE745c0qGemalo/Y2Wxw==","signatures":[{"sig":"MEUCIQDgL6e2sDKjoroAv78K/FoRcdKphXKvbC3ZA6Mgtav3/AIgN2lqJ6C4hUVkOvXlqH56ScCY/VtoY0EmmHzj6PS1Aek=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219073,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl4ArCRA9TVsSAnZWagAAi0QQAIvP8EGnHvBPI5IRIbLK\n9laUlTzb17juD+CBuwdRDcNwH5d+y1Q9YMfjItg0n49hbDgim3i2He5X+Szk\nG+0kD+U9tnA3cvVkwutmxN27lHyqUhI0Mgw87uQR21ck+tbGDZnB60oWFRa4\nj0Mc+0g6cxObH1Q5h7vk4gr3AwFFpqUhL6Vd3u/LmrfOf+laqnsZryHxl6mW\nd7CcoJF0XZdWRB75Msxqm2uK7BbAEiq9LNma9IWv3EA6JlMW1LtZOvlrKl/Z\nENbY9QuUlcFKaib2GZPmc/hxgAleAEDAjOL1OroqaA36wyv/fX7dkG7qopCM\nV48fU2WcVilrJgRB82wo+liCd4GoLtYAi3fyCTQEIYDMyYNyXq3Q5u6gCHBj\n+WS7xnWlucldOEFdU1LGsXpXRtn1mf9Q8rLCo0avZKQPXPrqAigapIV27NjV\nKap1HoT4cksuC0cLZM+mZFCW8XWAWG2KWoh9Wd4zXtoREx0IooTfccJtr5wu\ntM9EXzq7NHGzFU6XejywMbWHf4EUl/tpXR5O5Um6VhkBY6lwQlov62GZyjAX\nlhKnsNErUZW7a/9hgBfCG/lPVHsXtlBW1Pb2zNg2nmSVzhU3DapOenEoFTdp\nLDB4wc0qfwYymIm5toew94/ghSNA7dx+cuvuBl0TOh+ApLQeZ2+gnG1W8YZS\nv9nD\r\n=Mpoi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T10:41:34.343Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.337","@balena/jellyfish-worker":"^10.0.93","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.114-renovate-internal-patch-0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45_1637318699692_0.578183472712489","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.114":{"name":"@balena/jellyfish-test-harness","version":"8.1.114","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.114","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ec36e7aab84642fb6a7217f38fa69c6a78990a15","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.114.tgz","fileCount":28,"integrity":"sha512-HqlguQw2rx1NaEMV/8PTG2MPu7uSjf+ZI/RklFy8PN14/tLkd5midAGfm0t+SJUz9hSaC7ZacRP3HiHcMwkSXg==","signatures":[{"sig":"MEUCIFdkZlJ83DkLZme7xlvtBXGNCJbS2OK2essoRu7pVnrOAiEAzdm0crYp2EgUFS9nw3hGDfw982VLs4LN92JNpmJTxGU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219008,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl4ECCRA9TVsSAnZWagAAZI8P/1BBUg+GtQferp+F50+L\nX46M30AeZL6mwf89+xsiAWYaaZrKNELLpDL6DQY9X+hvG3AuVHLqPFbQDZDt\n6YTU9501eJpRNjzUUh7fn5piVdhA7eI9IZqIW7QrjoBW4DEYYv/GqmGhzGTP\nGz2eYNpO9yZpVl9iFbmfSSg0eqNHt4ZFm+y3MNq+kE/tOzw9gPsdxc654cZM\naGNxqWjr4k5rjURY1AMUbO7jUFJiNbGRHYtRCRY66vjVCxni6LrZsFVbqKEx\nTTE8woxTzNCz4wdHnQY4SYg98AbjOsfoKYCKklY0c87/dSbGootuaYlpFUQ6\nzlFQsPGfe4E1XgoSSjnDc6IDWum8cd1I2wNK3UIZXvwTbSIzJIaKHCd98Lsl\neoK6EktoEfKOD4Z5CFBJFeuM9pIC0ZQ0K5l30iYkb+nVwT153hZvsXN7dwEd\nsRUUS+uuTLRY+BHiqnWT+rbtOtThovLZuSssTrM4NlxwvB9JxhI06iR/WHrR\nof4rPVaXSmQY7WQiZO3TKBsVxl15fblI8sLFM+RFmz9WI8XxqEEL9k8cLpgu\nVLijV+aFKePQYT1sd/rOP3+29tc2cc8pegOiH+v3aZgqQYiPmlGM4d7M1usD\nV7vh5Q+6HP+YC0i58sFuhWqq0RZl1pW7OnDZLBKbm5wYgRdIrNz/vjA9PztX\n6x7O\r\n=LiLf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7f753ccc00fa56b9ada4a29ea045ec1944fa1880","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T10:46:33.025Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.19","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.337","@balena/jellyfish-worker":"^10.0.93","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.114_1637318913942_0.008608405795296425","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.115-renovate-internal-patch-80ae92c7c29cc446f1d73f5a28f832501e8ed588":{"name":"@balena/jellyfish-test-harness","version":"8.1.115-renovate-internal-patch-80ae92c7c29cc446f1d73f5a28f832501e8ed588","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.115-renovate-internal-patch-80ae92c7c29cc446f1d73f5a28f832501e8ed588","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"106cb01b5254443340f0acc0020da730856e5076","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.115-renovate-internal-patch-80ae92c7c29cc446f1d73f5a28f832501e8ed588.tgz","fileCount":28,"integrity":"sha512-ZHjUipAgn5NiYjTApBWFTnfG2X/63MlzpmUwTuDi5I2L7LBUXMAVC+0ZH0UpvX5CbQcZppnJUEckBOBX4uuOBA==","signatures":[{"sig":"MEQCIEQVScXRYTHMVPak6Hl83hKxU4HoJE4Hs1OjdMxZMG39AiAtSTa+JkJ93Q/T7vJjqLgxkQrraDJnW9Tqacq4myJ9dA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219148,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl5bYCRA9TVsSAnZWagAAf30P/0vytR4sohcp5XcCBjfH\nES/gv3EgONwuwRjf9JuucziZ4yQoY5DH+qWPD0gB6+2EIKywrdC7XDhZhf4g\nngI4e0pFyFoJI9cTADAWi2fYTEJKt1owpA19S4HhOFWiz6ORV3ye59DBAX98\nokcvVmAH2a3yQef9bGKhapCKJFAErvMs7MOOdFdhQLmTZkhm90DhuWjr/4OP\nfR8g1zNlij14WhRj7ffN906puTAxXtWbdliEgWrhgpdMOA3QYZjV+C6XyOpd\nzXMoMjwMz/MlKzc5TtyZla5XSWAhwVpEg2/70CciQSpCmN7YGFzinuVd++Xy\nbAnn8zDXxawauuCDbadZWGCJOrbzpBAbyDewKaujXzIKjuWINfzlmr1YT8lO\ntF8y1JG0alO7+r4gv0OR5aPHpI9QEoHXO2zNBBx3RQi9Q44OzzVQJvYTF1W1\n7JfrF+OaEodpj5DsZphcELZVxhtKohh1MR8kHiQgKhv+HkLNC+gMo+6ku3Fu\nIvhKhHN9/GdAikx1Ramaym9xODLt0+l6V3NHigkCfF7/8aqdCOcyEdiOj7h0\nqhRcaZh+uXaCVaFULE4xKftA6IVGBqsSdELJUHVEtmqiTf/aPkoq0obwLjL2\n+ZJKQsJpIO55TqfONu9VlU4GkYanr+/PbZ8Hd293dYgA8Gs39aSgjL1nxH8l\nfkoV\r\n=x6eA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"80ae92c7c29cc446f1d73f5a28f832501e8ed588","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T12:18:05.599Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.20","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.338","@balena/jellyfish-worker":"^10.0.94","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.115-renovate-internal-patch-80ae92c7c29cc446f1d73f5a28f832501e8ed588_1637324504467_0.21183396026700163","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.115":{"name":"@balena/jellyfish-test-harness","version":"8.1.115","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.115","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09907166088efdee57a9cc75218cd751a7f8d314","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.115.tgz","fileCount":28,"integrity":"sha512-ita9nKY0DIurc1N4htdaDnfMFBABYJ3vPuk+Jj/NCPFXd286HUrR3d0pGGzDRUeZx1QfvIOHek2++C0bszBbgQ==","signatures":[{"sig":"MEUCIH4m6t/K5Ph+ioZqI2cZccKxiTC+MpcTvL4Wj46gPiXZAiEAhZzm7r0IfSQgpJIt1B3b4OEXJSTyxJ5rY8BpFYW/LCs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219083,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl5epCRA9TVsSAnZWagAAkhQQAI5J+2TEZzpk7wx1TxZq\nJaY+KKJI/vYJLrV4/3UchKJFhfjQMYFzOReQ0mSq92+5FqOPOU9cOEkCYm2k\nbY2bhp/HMgvViQ4tAh5CDu+gpLqB0D9LTrRBhefNFCi+qSmSimWkzUzQzNRI\nljpc1HI+CEB7hDtpBI/jP4oYh2HNQREFK4HmgaH0E/4euvg4EfDJfP/+YCTg\nsJfA8ZzXa7tKRLZZ8OtaMIDwRu5uwvJX/GcMEMT+P9zTRdzCbrv3GXfVCVTY\nlzw4hXAwxuIHpicQbwq/7vhs+GN9meXoTY4PPOckr8uqk72hL5l9fP8P0/Jb\nm+O0nvsuhLOJAJM1WG9kivoAwZoJVmraysxI8ua/zOcK59Dg9DBYqpQ9rqdV\nEiuC5MN1YQgPwZK20FJPLai/VeczaJ+FmKBH8qpi0QDwdaXDlr95LbfNUZbj\n3v4DdSWfAOaxKYqtNWZOVFeGoQzlM0oBHKJj/5BFbS6Y/fOIlB5VONCFBD42\nypylvPXP1EF9BHNiLlKAMQdu3kQXs+rHmZMSqZ+wlTUutLS0+b53vhoT4y2W\nO/J+i/64pOMKEXWWiQ2sIjxxuH6BmodzHvKATFBd0NcxMyeMCBvhJKAlihBT\nRNy8Hj8LQOnC6g1SMzX5cUp07lZ7WrUftwNc1oxcJHMiQpN4Kakkonqx7n8B\n3F+q\r\n=yqL8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"81e268fff4d1251f73034812ce0ee2c663853273","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T12:23:04.408Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.20","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.338","@balena/jellyfish-worker":"^10.0.94","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.115_1637324712980_0.5222521490239851","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.116-renovate-internal-patch-1ed6d7e02b06d89a7bbd6faaa02183e34b816f73":{"name":"@balena/jellyfish-test-harness","version":"8.1.116-renovate-internal-patch-1ed6d7e02b06d89a7bbd6faaa02183e34b816f73","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.116-renovate-internal-patch-1ed6d7e02b06d89a7bbd6faaa02183e34b816f73","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"465169af49f0fbc1382d2281da4209086896d06e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.116-renovate-internal-patch-1ed6d7e02b06d89a7bbd6faaa02183e34b816f73.tgz","fileCount":28,"integrity":"sha512-+cGxyW+XWksgM4/1USoYTCLKCuscNlszFuRD6eaTkBmFX+SXOjpMVYQc9flu8UUyzqj4bUQLQ3FY7GBqxr5DmA==","signatures":[{"sig":"MEQCIChqYu2jSc7xkl1l71rCH9v7cp5ErkwncoFb7zf5TwX0AiAB2WpKN2NSBvCaFeUN8wi3o0cl/Ph3XrSppmR4ILYH1Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl9K0CRA9TVsSAnZWagAA2GAP/jVuxCej8uZusqISKjUj\nkklolel5aZjpe4HqOH8Rf16PpF1AbfRSfDjv1ih8mlRuEmjqvITFqLb6gAgX\nIPfynrfzSieeDuYe6kkXLzI6DsT3bnUY0pIS+HTyYUMm9zGcc/n7D8vVkl0c\n/6KNSBEtjlQHdAvnBwuKLlq4mY5+8cJJH1qGt81OAH87ixf0i3eY7jbNWFrC\nokIxRL6Dei6v/6tc85Dw2Oth+FZooh9fy4hr7QT3v/1A5sv3zHqnKANos/iv\nwB/J6AkJx4sUrMa4TJjYwMcnvx8pZolfyyHGay/9A4ATl++j4c8J2xwnRfL/\nO+YHjwdlvcb/T++8clsp4hyJhLg2AfTWyLmMf9bhSsdz841qMUVdizlNdyi7\nLoqDX1PJc95oxe/EwinhaEWI1fbT/WM6kN6riAKC8TiWeV8LvIGQ5E0qT3cu\nWePjLWB3bgN/YXeXf6CEyCwrSAlT/wUozT9HXYl3H6jt5dSIHkch0YsYPgKh\nPuX1sm9W5wCv8k+0Ol8DmT2bO8tX1J65wPk5J9vUvQh52hNn94OtkxK6B9Hh\nPdLeignzGdp4hGLtkvd1DsXHcCWcNcrrT8Umh7bGTOkMzpRHe37Tpa8+Ppwo\n7o8OFjg6zyrRI82uWt7i7hZhIWiWkFUCRd8erPmGg2xyAgcQGQT4EfmM1QXn\nvOiN\r\n=tmUg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1ed6d7e02b06d89a7bbd6faaa02183e34b816f73","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T16:33:47.431Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.20","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.338","@balena/jellyfish-worker":"^10.0.95","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.116-renovate-internal-patch-1ed6d7e02b06d89a7bbd6faaa02183e34b816f73_1637339828232_0.9743847009982136","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.116":{"name":"@balena/jellyfish-test-harness","version":"8.1.116","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.116","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81ba0383411b7e665e8254f73acd347d19fd5161","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.116.tgz","fileCount":28,"integrity":"sha512-AZqjZXpCcEw5XIbmR8uPWTLSrfNTxyRCyPJNuY8jIf0q1QJv3YK70RioiNX3vB1UxdaF7TJ8UNdx5fvVBj4oCQ==","signatures":[{"sig":"MEUCIQDMDkDpAIGYEUE3+IH61bGmwSA/d8jE57+QGURG01aVyAIgMD9KpldreGA/lUhsxmxegOxUokSKyclWSXBiux/HSAQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219191,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhl9N5CRA9TVsSAnZWagAA95sP/1dcLa9gukLVNNSJ45LQ\nKw8jeLhMgWKJ5nZBNmq8bf0fKvmj+gUx12Oj0TFXY46OE6KcdKx9Uuw9b9JN\n7LPyzQcuBMGLgaTAfq6F4526wCkp6RCRljSwDc7n9ES6qBpgXGxzTWToRXVC\nfSUD005HpnsnBQkf+1NqARD0F8xoky5JFLDvmGViOVQvO5RrPMKXK96t1hU/\nftxGAtGH8DkvO/3+BEwQZKkDxV2Im/T02UO42dOFfr8GTfoCkgS8guJsHT2U\nvK98weE7V34mgGTRh1ms6EZfFxxdGRQkqx+ZZbhFuBWrhfbFL85S+HzI66Xe\n96qfnn4XOUuIK/B4atK72XW+o8vXLXeSc5i3cyDllo//opJVABWFZTum6i1C\nFGpbNJ7RGK4DzD/7CA/bxpvSECOrNDkmdJjIDEMmpoRnlv3fKAsKaUXgCOpk\n0Aefo/scc+/XL0am++4ly67iZZKSMsmXwolmI3tbjrmoXw2eNaXrGV8A3j3d\nMaH1za8g2cVXHavjNYqzIqiHxMgW3q2P+Ea84bybXTfGgiCy6kAVAhFBr3Ns\nCw0ZqEGmA1OfxF5UqqsSrqHeRifHpLcLxSq4FzGOVEIFkpHF9i9zZswugjKE\nNDBUf6k4vrRSjH+pR7MywDsFqwtdUQCFocq1+73N/RuafJQcgWGOb1K1NkSv\nonao\r\n=6ric\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7bee089b245d7ff0b9865e21e9abb04bf47e8073","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T16:38:32.400Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.0.20","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.338","@balena/jellyfish-worker":"^10.0.95","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.116_1637340025737_0.5279131181836687","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.117-renovate-balena-jellyfish-core-8-x-751183436d3e5ff720c9e441532bacef12be7ec8":{"name":"@balena/jellyfish-test-harness","version":"8.1.117-renovate-balena-jellyfish-core-8-x-751183436d3e5ff720c9e441532bacef12be7ec8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.117-renovate-balena-jellyfish-core-8-x-751183436d3e5ff720c9e441532bacef12be7ec8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"93aa63ab9d394825f5e59779465686da8bc81cfc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.117-renovate-balena-jellyfish-core-8-x-751183436d3e5ff720c9e441532bacef12be7ec8.tgz","fileCount":28,"integrity":"sha512-WgFrfPvJRYQTruIPqrKjM4F40j8y7gqB+vKN112ZRxAILtzVyz9RGDkRnOFskHoDC7tG9aEct6MO2pXEdcx1Bw==","signatures":[{"sig":"MEYCIQDKb8ZKlojsJnh61D7GGoT8YOCo9lmMnzolT3Jk8Ypk9QIhAJa06NE6+YbriqvNl4uuYYcNxL8FNmgjjx2u/QYAzbBO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmBFrCRA9TVsSAnZWagAAYL4P/1ChPvbe43gHZdpjnBE4\nZG225if2YAeCJgEmaSyW0ZE6Jh4Mfg/Gl7aDBBU5yOfJRA0GaN58XIEPsHH8\nE3Ish6+Kynv7aXrOOgtT3QMDayHrFtLcySYgi79aZEEetZMz4wddMQHRaqXj\nIyH3LZtt8ly5gYWIrk3RenmtGJRV4Bu2NCL12nraPg67MkXAClKM2CIh4tKF\n6Se6VhgmQ3mCinPqz9+Bo7+EtZ3EF1wlKcSze1Vx+v9UtNJF3d7bU75uOfux\nemvM6fRWd2z9cem4fexxg5dyq+zLXMZCov/LtGEIJyIFu3W1eqlQrvYCy3p4\nyu8GtMa5fZXK2/Q4xN1Mxjw9nhXEM6qNb2yo7pkRWveBe1Z6oSY8QLvDWMg2\nNWtA73r4ijU/kmPQ+eKIOuORmd5skkvpTdNCHHg/wWK52YBXJXxvLcqxydpS\n4nbYFiS52sYWx60KyBS+fRQVe7O51s59LOkZfZjgT/q0/oi97j08nqV/ZT3b\nlO//4oNISsWUg4RpbTvHoqcBdd3HT5H9z1VpB6gAZ4Tsgq6eJ71bicu0ZdiR\nuSWY6lPWhio8J0SZq/oTNm2jMkTUweQLO5yDDvjZIUd9rcqPEmRytpiKXDfc\nIET2aeW4yVS84W4RmUiJ+r2iN4uaZuA7pT6TTJ9/zyTMBZJxfZE9XvdO4YwE\nSenX\r\n=eERq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"751183436d3e5ff720c9e441532bacef12be7ec8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T21:01:57.195Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.338","@balena/jellyfish-worker":"^10.0.95","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.117-renovate-balena-jellyfish-core-8-x-751183436d3e5ff720c9e441532bacef12be7ec8_1637355882917_0.9753087399375651","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.117-renovate-internal-patch-f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0":{"name":"@balena/jellyfish-test-harness","version":"8.1.117-renovate-internal-patch-f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.117-renovate-internal-patch-f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"94a2115d9aef36bc22f98646a942f7a05b27e379","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.117-renovate-internal-patch-f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0.tgz","fileCount":28,"integrity":"sha512-HKibha3lbvxniq7SzYf2qmC65MULOJLU9AEmCGig/WWLrSksMXhp/aO/NBO+0NSJoWXNgCC44flIbwYx7/JleQ==","signatures":[{"sig":"MEUCIQCMyeBxWnYELFa3Rie1aGb05J982FfgiBB/1KhKqpNsogIgYQ7k1xGe6Qc6z1sAKzp3NXUCjSG193ujHl/x3qEMWRE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219437,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmCjqCRA9TVsSAnZWagAAhiIP/ik4JrCU+x11oGP0l+Fc\njUYHuLn/8FBlw6n4xK9yw9qZ7qk2G8yG4RuUJT+38ZM34yq0J7QSiEnLuqhl\nwDISGY+G9B268Ka2MISa0xLEHJ9e6BPsf58fH55LKqySRJ+bD512jmyVq9S9\npuIyzv2ln8d4iHDkk8h3WfPtVGlMi68vL95bzdGEo1o6m3gQ8L8ftpCAqSAr\nkIQbK3gnZT0RbDtox9om2vypzIDABBS6iSwtzwgDnnfwWLSkoOEVjVREYSLa\nDqLm9tx9Deu5milgHrzLjNVuSLDaDjrkTYpNf36st34gVvBBQxlx5qn5wwvf\nnMsUO/lRjJAUmuoWpJUTps/Nm+NvmkCoHoTYsui5GiBa3P79pJoTrZRGIbdU\nrvuCC8wnPVxPSU33epAMNxi1YUS1uNmJ9bw1f9WZT2eA+NUAUQ/0TQpJpGB7\nsbkF7H0e5ERCHPVr5OViPn5dwrsEWiOfLObUJIdADeXTFgsLEbPoe7+qHBQ/\nz4/ZLoeF3NPuEyjJj/OGtyZMBGUCIjaAn4Jmqd5Ry1qU35FK8sB6NCTdWfwa\nTF49Xws4zuTI+fNntFQbpKEFhdTndG0cI3EF7JNj8LoUISAzETPrW19N2MLb\n3+m/m/yWO+FqDmmJTGkzRJieyKUcFTqwIoZgzSfs1mlGV5QP1p1Kn6rVru5E\nQQZN\r\n=gQ90\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-19T22:41:22.628Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.95","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.117-renovate-internal-patch-f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0_1637361898510_0.6642234075490516","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.117-renovate-external-non-major-82e6a76d2c48f844c9b2ae08139347c2bba5aa59":{"name":"@balena/jellyfish-test-harness","version":"8.1.117-renovate-external-non-major-82e6a76d2c48f844c9b2ae08139347c2bba5aa59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.117-renovate-external-non-major-82e6a76d2c48f844c9b2ae08139347c2bba5aa59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"317fc87f540beecd24f6808fdc0da7028a335eb2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.117-renovate-external-non-major-82e6a76d2c48f844c9b2ae08139347c2bba5aa59.tgz","fileCount":28,"integrity":"sha512-1X4kEoMpMn/3KHPLSpgEVZIJ7HGjDG/VB5dMMlgZrgGmQJcgQHbDyfECfELyCRTZeebvNEdM+LLWhOwm3H8hQg==","signatures":[{"sig":"MEUCIBNC9QIZKItLcdl2H4bfsylw9RszpjD47P+x6QjUDEb1AiEAmcD+9GAhIM4pKGe2mF52LAfOJqX2KflLv+mJe+vaNyc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219491,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmD3WCRA9TVsSAnZWagAAvWsP/jAsnloszUN/7s+EeelD\n3N+iPn6cXnmUbBmD54XvUQfLhToZUD1BcIhgVz7yKEMspJmOIrNvcGo78Vof\nBaNyJDx/D7T56UdV3ffdvTITEfioXBsOhDzo0Jvl6aWV9Vcpp2eGVBtE2Zln\nBK/dTr6kKsGTwTbxREy2Qt1fj9TQ0jW6VOCo/EjIRUxGFKv3OwKtaPpA1/iE\nFU7educZOakllY8P7T8kN3EhMoUPQ6hvIEhmIOx/JRDdgxMRZWadbn3jhrGu\nBHsmljAU+RPJQhzHgmeN8YnA7ApuEdBL/jXYD3r+D5ag4UbkE5U1dMvk/pmt\nHlr0B0hq4BiL3gWwHhYqZX5ftvDAtyfbIanAXfS/MdJr8nMwaOpA0EBqhVr0\nOwYIaFA2e2U7Z0Pw1D3Sa2tNWl89MetZ6OD2iEnODitsHYhdlIiNu/JQbnbw\nLT+5k/YDooQYSAZZMtHSPsULQNuZGR9ly7Ku5lL72Vat7i4MKSHHwhJX8INe\nQY2e2r9mgo/FvPK7C5bqA64LU4uFhmvPZ+bDNE6PukO4ubmVEV/pmHkWgmK4\no85qyewsfIdyVaJajyhJnFDgdkWoKuC8Zsh7uCBOBZGV8eH3i4pgxb/f08XI\nzlt3RtjuQSvpMqppQXtcQNuXIrhLdfItvp3dgVnrsdZQ1WsEwGIssnIMTYlR\nYBlL\r\n=XvD9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"82e6a76d2c48f844c9b2ae08139347c2bba5aa59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T00:11:47.980Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.95","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.0.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^0.1.8","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.117-renovate-external-non-major-82e6a76d2c48f844c9b2ae08139347c2bba5aa59_1637367254299_0.033582115087829045","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.117-renovate-balena-jellycheck-1-x-dd5fb5c10a8e99c292585c0c3da49138fcb11058":{"name":"@balena/jellyfish-test-harness","version":"8.1.117-renovate-balena-jellycheck-1-x-dd5fb5c10a8e99c292585c0c3da49138fcb11058","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.117-renovate-balena-jellycheck-1-x-dd5fb5c10a8e99c292585c0c3da49138fcb11058","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b70d68e392222806b1e2b5a91f05b5a00c959ad1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.117-renovate-balena-jellycheck-1-x-dd5fb5c10a8e99c292585c0c3da49138fcb11058.tgz","fileCount":28,"integrity":"sha512-4wWeAui8J3Tg2g6tshW5u0OKcPF3moBMFL8y7tetH74p4VM0OnOCgaJV9Fat0CvJ5C8kF04HvID7p/8DnWBYwQ==","signatures":[{"sig":"MEUCIDCKfZKeGOIP/x/cU8YHPgjsYVbNZFX2uVunpCCktvMSAiEAj+XED/eJZeSvi6U95yXRH3xw4dqzY/w0cFaB/6GrIYw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219511,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmFy1CRA9TVsSAnZWagAASukP/AicMfHXygYvz337JG0j\ne85zlILN/RB+/SwebuWx+dhcK42U2JHG6NrbdBE9PeLhhefV6RaDi5aGIN6H\nrila1BBvjvn1jETW8hSYsjAN1rUzZMvzWzBxhf5ON7GD7gup7d7Frj6QemNR\nssUx5xczuKsAmlbCD6L4Kb4Ek/IKVjeS+sygJ5oWp5w1VELwEIcaJMELs856\nIeR7r4qz/Te+mx62EfscgcgJ2tuuZOSfMnOg9vDg+IuqFupRpV1rEFPs1bk2\nTX/w38hJlmwsJQnWdTHWeS3cwphLNbhLkJOfURWHzyMCajb8aQ69tg/7uZOy\nuLTC6N4f7yWXt/027yF0EdfHiQdV/POEZHxjlvdURGPGWFkVITFqDVtf+idY\nLQl8Q7Os7o1ZukvLb/oJ+SCUvWlfY6q7c0uBRmqx8BJ95p9cOVV1R1U4HYOg\nkO6xVCr+NGVIfU+Yyj8mskFJLI+JWUzSFsgl6NcgaoSRpOn3zp0KmehDbrPd\nimANLce+ARtc1LR5AYRrRfbAwwitPDISOiRDC89gEg+KFhgaettmr6QP9/Fh\nQQ3SuedplrTKgdMMS3VBikSBMPtEai26g8OAlVVF/qzMp1Vvhf4R9dM1WBlN\ndLda4hETsOedUlZvgFgmuJvAhzD7nXU1lZiQHbaTF2NaXtpqVWXzSzwyueKi\nxzIr\r\n=wVWR\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dd5fb5c10a8e99c292585c0c3da49138fcb11058","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T02:23:05.695Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.81","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.95","@balena/jellyfish-environment":"^5.1.10","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.117-renovate-balena-jellycheck-1-x-dd5fb5c10a8e99c292585c0c3da49138fcb11058_1637375157601_0.24679219696234744","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.117-renovate-internal-patch-30f92d9ecabf14dfa814f10403d116485968be42":{"name":"@balena/jellyfish-test-harness","version":"8.1.117-renovate-internal-patch-30f92d9ecabf14dfa814f10403d116485968be42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.117-renovate-internal-patch-30f92d9ecabf14dfa814f10403d116485968be42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c71f40a1b2390ec3d3709aed4e5b96812df62cf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.117-renovate-internal-patch-30f92d9ecabf14dfa814f10403d116485968be42.tgz","fileCount":28,"integrity":"sha512-8d1a+5RzdI6U+NwQ+v5mBXZVxWqT3Oe37/CqQjlIJPAC1WzaJuM5wC7OCfWUF8ue1Yr6Ats5LIXaMpQEocizZw==","signatures":[{"sig":"MEQCICNxHKzXg7fkHg7+hgz17kPDxObIymypJZnk/XF2QpsUAiASGHGIjgE6BW9NtQ59ADfd7uGikfOfY/LM4Rz/pecSdA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219550,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmLjuCRA9TVsSAnZWagAAAHAP/iwV3odBsO8XLiG0QaHJ\n6LkwifR4g2h3Pml0D91IC7yEQXpCse6hzse6VNPhLIFCldNIMU4qa0h0v4or\nL6AWpiSoFU1oqVdqIXgSgaeWpBJMGrMoUqVysXgC3GvUorJJZOiUtWnpMSCn\nRA4I1OFwUjLIqfHVJgsZlt9AuOC4NV4O0apCunQNzDK7V3VHgTPI9RBgbMsJ\n2RDi3entWdQA0j5nTXgSsyLirdMS6hzQDPNQn1KU6FlMGfzMFaJwXCAB4sit\njvR0uuijXrrv/Y7qnUbBDDCanKrPHprwQa8cSQ46FYRAp48tZYnZb/q1HZTR\nsxVzhqsoJbvzM6WTM0GSKk6WcEbP4z0A2mzqjom3x53mI1Ei8XGBlacpnuJ1\n/iiaoT67gm/TZbYX6uHvmBpGcuxMH1q98RQBC+VnPyvrvZy7wvmqlQY/FoL5\nDcUsCgam08tXw8JprCvWrYrn5K9ZZdtPlxkX30h+YuNdQb77laLGyMxhvqEX\ndoqjkEN8mZJT9zOBw/epRMXqEWA6iSkw1ntKZKD0ybRY5N9P60Bj6Xfo0GGM\nhi0Or/kSrzcuCrEq7yIYUhDQELRzdOOlbqjd0o/lIdtQiPAA9/P5yfj2jgzC\n3Th5UOYA3ZIVbCHqo5S/znUXZybN0z2guDpIvnow3NC22FwOq/cASawCcLRO\nVnTS\r\n=mE25\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"30f92d9ecabf14dfa814f10403d116485968be42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T08:55:02.455Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.82","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.98","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.117-renovate-internal-patch-30f92d9ecabf14dfa814f10403d116485968be42_1637398766347_0.2109484163870854","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.117":{"name":"@balena/jellyfish-test-harness","version":"8.1.117","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.117","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ef1d8f9831f12e6ee6aadd031078a305953b92d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.117.tgz","fileCount":28,"integrity":"sha512-FOtwMNeZTtUukM5QqI8P2xr9xeXIYemJqLmP3G6ctQLfHs8VzCrTmdeEEdFnw5r3stiyDpqLwhUumBG3FzDeNA==","signatures":[{"sig":"MEUCIDlgg4Yneb0EddOwH+2Wiw39AfBiytlU3yZ9P8ZVyWbrAiEAxtD5+E43Dt0nVjKAvgQmSrol29oI6ppHfu+l8Kzao9I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmLm5CRA9TVsSAnZWagAAF5UP/2kx0jF2u9W7jS76p/IL\nK37hy7ukA6A70OeD97Nhr7yo1sOA5voUCBtdw3NRJrcw8aJeDL6RbggvPdsy\nm3tlP/OjY/JnWM63ijRU6qixmpcto88R6EefaQDiEW6Py1CF6MAAFS3yJkEX\ncVTExVFZldva6c87vdb3CYRFRjU9Q4q0qVXmy8GvaALdDddMGQfRl+nyH8U+\nVMBxxFM/HhC/2A6PpBJepzMUeaz4Oqoz//FEKQ4S7w3peSMO5z/TvBKuVqlo\nRVSeaUwXyoLBbFyOqLFRZn1ujZb4y/zuBoAEkhuR+oAYlyAZWG4+HzjVAwD5\nykYBdK66PeX6nhhVd14F4/nU68aJq1M1lRXJhh5y0d2mcBiSg/dTASd+c9W7\n04S9ABWy9SslZerVUyN1ZvjIelDcRTyJaJNknJLuY/ujZZrRHHzr3aQHmQnb\njMdfEk2weyE20oOht52t4BA9gGFoI6TdXc+XhW0JoNCDLD+osFS98kllQTiI\nAeV2ZhjMJh55Y+8t4HtXLShcuJwTcg/nI7tLn8pmowCgHMHUEF7dyW8dJsgK\nT8nkZR0J44BhgMhmKX/YVK4FquZZ68dYWIHEm/Rd2Xy+QiDLFAC7zJuun+AH\nwC5esH33mh/vsDekSMAcSqB/QstmCxwVD8pavPIvHFmHUI+9LnzivP9yK9sv\n4n5v\r\n=Qhxo\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"807813f10b8c9ad8357c571e677aacb1fd391a52","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T09:00:22.739Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.82","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.98","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.117_1637398969518_0.6560093920246337","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.118-renovate-external-non-major-1b732ec4894928ea2fff35462c288fbeb964024f":{"name":"@balena/jellyfish-test-harness","version":"8.1.118-renovate-external-non-major-1b732ec4894928ea2fff35462c288fbeb964024f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.118-renovate-external-non-major-1b732ec4894928ea2fff35462c288fbeb964024f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d70b3d195fadbaa7335142162d004ae8ae83ec4c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.118-renovate-external-non-major-1b732ec4894928ea2fff35462c288fbeb964024f.tgz","fileCount":28,"integrity":"sha512-DhNiQ17l0HnJcXH+E4qgkyK1tZoXJOz68DshbQRU6l2DdJMfql1DA+C/cd0W8kM68Kc75ICEt559RDRp25Gk/Q==","signatures":[{"sig":"MEQCIFGr6gEecurOQvx6R28uT8lzv3Z3Cu+/MrpE806yKbt4AiBL2JQM7RXJGeGWuYGDDgAkZWLy0ab4pfKTEHYAvoUX6g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219633,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmLpzCRA9TVsSAnZWagAAEWcQAIxLvJ9Yfi993+guk1ji\ndGB6Zlir0kW0tQ3i+38zUXCbhUWsum0yij4cqNDevevC4DvQWnFnIFAmt4pb\nfbvD12wqKK12P6eKrfoNLsBV77XqzNfUOPjsJktM1Z8Qyxp5kJXHO0pBKiSU\n87en2ICDK1YyNkpVuipY15MWLT+qMPP3F6KL616za6mHHz65hrV04dQQLeY9\nFybmCR0Kij2MzUW3QzLMYKdh+URUvseRT9ui3zOyxswKUHB4gIsXMQ75EMtZ\n4Wd3K4YjcN9XxerlvgKKzPoZcbWbTOQSSr+JawAmQdobrU8zDCgEUQZxUzhv\nz9O4lunYf4Z8QkPiIg/Mw/qOMqkmiXNr2nhvBKlbEELfejNSU7JayWGroLVu\nf+y1x0TKUfC2OjYooYKaqAGKBdo/qMMlQvDbCfTPdyVULTQnHjAvfd8gP6XF\nX0A3XPRp9xr8KgSfF+mWmdirF4uHWT0EA6R2ajZDx9W47d9CfD5LV7SZ2iCq\nus9cTbzKDW8mEiOdzdwjFFBYzMf1TzX2F5qNjfA+Z+beIFUzf5afzCds/b93\nX0BnLEpdZIgGSHh/74OGSBqOhheSsZ60h8wYUtKcscCNswveG8grkCWQC4DH\nwf/rB5e/725CEJJk6zCKHn3kvKHqsqSAO2V3jpqNELxUsJ6s2IF4eyIUbI8m\nJyAk\r\n=orB2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1b732ec4894928ea2fff35462c288fbeb964024f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T09:02:58.849Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.82","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.98","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.0.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.118-renovate-external-non-major-1b732ec4894928ea2fff35462c288fbeb964024f_1637399155519_0.05550873490070174","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.118-renovate-internal-patch-89378911817d48f8197f8ed92eb979290bb3f51c":{"name":"@balena/jellyfish-test-harness","version":"8.1.118-renovate-internal-patch-89378911817d48f8197f8ed92eb979290bb3f51c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.118-renovate-internal-patch-89378911817d48f8197f8ed92eb979290bb3f51c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"67852d949d46dc1631d70139f3846f87174360ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.118-renovate-internal-patch-89378911817d48f8197f8ed92eb979290bb3f51c.tgz","fileCount":28,"integrity":"sha512-DN3PwItvsrRk4t0wY9kGMbrrFUWW/N/fUuu/FMkbai3spnMXYSCShB0skZ+C9wk4vopHmq93a5wEve7IRIibOQ==","signatures":[{"sig":"MEYCIQCmtZogQUM9ftsTWe0r+LuPUkd33QwGkQEXr0HsT+M5IgIhAMgDxsq6aFJgpSvsLhP7gD7q0+RsN7kEm7k/nGNuWs11","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219655,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmOejCRA9TVsSAnZWagAALowP/RLPL02ODZpn7/piKxrX\nZFsG4y1psL5zaPV2uJGS9LVhsA1JqM4VieowB0FpfSGygU/JCCX1nE3sJJf2\ndxSLLGiWCGvjlb3LR1I9P9eHGwuNhZkmvjljWK3C+qtfCFrbbk8Mo0hJLu4c\nTFsZmCtb1TH4QMgUb1DjqQ77D8F8M+PVqds2cKYmFpaODjemDkI3i3IGVto1\nspVBL7uiZC2tM6/XUrbdLX8YTU9+rXKxo5rCcTsztelg6xmr8dOhZc2uJA6W\ni8p1mUl0M0/qdRPjZE4YaUjHQg+K1uC//zlllgDPeMFfKUuS1q5y9sVKBF4W\n1tV6TbXxba8qjUT4pxDT2vOGyPShy+cy/N4j/xo6Qo+Pt3xL/Cc9GpJx6464\nRkLMcxAfhLH4m7pmiZCugOCgfJqpz2pODXdeiWMac61Cx0PLoQBfI6472vFn\nN1hlBmQ63f12I4JQlGR/7QlJxzKHr4E3DAr90eJwvNfmFb/NP5EjRqc8HQ4c\n/qpw56ZYzAQXDlda/QA3zWFQn1Rkcc5bZTHBlmfPMwl+04TCdOr+S/MZ3GQR\nk2QsgmTb7XwuMCMOKP2m1gmoS2SG/DHee2IJeuuBKvBJnodMNFyWH9tJ0ZBr\ns+aolYs4V687QlcgjNcUjC/u1piCAXlw3Qnav6n0NxB1+TDtjIfuohHpfjoO\nS8ai\r\n=OLo2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"89378911817d48f8197f8ed92eb979290bb3f51c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T12:15:08.544Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.83","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.98","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.118-renovate-internal-patch-89378911817d48f8197f8ed92eb979290bb3f51c_1637410722867_0.9138220260315186","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.118-renovate-external-non-major-84562357f2424ba4a1e5a4589d81f98682261ffb":{"name":"@balena/jellyfish-test-harness","version":"8.1.118-renovate-external-non-major-84562357f2424ba4a1e5a4589d81f98682261ffb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.118-renovate-external-non-major-84562357f2424ba4a1e5a4589d81f98682261ffb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"497c4d8f863b56e502f5883dfcdff6650436efe8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.118-renovate-external-non-major-84562357f2424ba4a1e5a4589d81f98682261ffb.tgz","fileCount":28,"integrity":"sha512-IOYNQ8b4dC4ksYWNipqbdYoYmE5nvJVe8PYCc2VEMbFvsA/onSxHW1RbPR7cUNR8C4TpEtZ4ZQ4VBdnSpdXU+Q==","signatures":[{"sig":"MEUCIDvcqNTRw/PSXJXQ9Hkpnha/dF+u9ayG3tovlP9C6ax5AiEA0GlxXQ8+F8vAW+uLjWDNa8AK4cVOeM1cxiAIUiK3Tyo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219709,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmOjmCRA9TVsSAnZWagAAt9cP/2y04zWjpsVUyFCBmKqY\nF6JUH7ZluweFxuf1DKW6MdsTeBi/hCWUcTex0JYwgRw4RvY52T4iqx6cutxM\nRlaoSFMAyVTVXnEfK/tCZSl8puhnQOMuxolXIeJVZZW6KX7NttyCL9i3aapa\nY/Fg5Zr4nRUwH/D/F35EIEu6roVXTpag9sVofth1T4Ml2zVMcJj2Ubv/X3qp\nER1rcqTKJzebYVXXKubiiS77k1TbYKRgABznULfvq0989BKP4YyBFd6xSR13\nxryARrRIbeF81Z6BllV+O8Ms3R9iMilsZjaFV8AUlhoj7HgmEp5sGVopCsS8\ni4cWR1K7/QVIyiEX+E9lbhPutsOjhUx/ULC1dgRdKDW4dvwc6tYioWBiykcu\nqsRwqsPLbTofdmD+ERmIPNMRHSXbc/gxg2fv1xWbHqVJXoLVH0crqiB3VQGV\nJ3C8BUmvfLrAedA5J1rCpOh6tbuoHmitnCtzRG4XUWKPXlXADMxA9KhCSX5A\nuEo3qp6dKQifJCYducVB2i9SqdEbNqvlsz5VXwnszF3LP7ED+0zJ8JGJV6SW\n9upXG1UjmOVUJzYfDqRQejrKkSD/0GSIXymo1xAankcudbOPke/vJS5hHeiV\nhP3k7K9xC2+PdXtgIGgZkJ3qYcC5QbQbuiglLdGFBT6A/J9LY/ipOqu75WAL\nqpKr\r\n=8UCU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"84562357f2424ba4a1e5a4589d81f98682261ffb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T12:21:20.171Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.0","@balena/jellyfish-sync":"^6.1.83","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.98","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.0.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.118-renovate-external-non-major-84562357f2424ba4a1e5a4589d81f98682261ffb_1637411046585_0.5293115839983387","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.118-renovate-internal-patch-68332344f12084089dd1cf76d9c9e62ca66f10d5":{"name":"@balena/jellyfish-test-harness","version":"8.1.118-renovate-internal-patch-68332344f12084089dd1cf76d9c9e62ca66f10d5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.118-renovate-internal-patch-68332344f12084089dd1cf76d9c9e62ca66f10d5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96d7bbbb308d5a310a59fa7c66832244793b23e6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.118-renovate-internal-patch-68332344f12084089dd1cf76d9c9e62ca66f10d5.tgz","fileCount":28,"integrity":"sha512-fk5o5Z+z0FGajgmb/ukh0T0L+s/s+64wryngPfBw3liDqLMNwiaJ+gA8c5KpaOlUttpnyd/VlpjXaNdxwag5CQ==","signatures":[{"sig":"MEUCIQDBzOFm/PRNPr5YT0CNO5PCRuQKxwjhqHT1Kdf/nfIFAwIgMi+EhXdluVK1qTDS4fawufX9QV9t0ZkEcqhAyw2d+48=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219702,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmSwiCRA9TVsSAnZWagAAviEP/03gAuCFztRmyqcssqeE\nt02gdBv6YpUFljuUqG4vv8PP46IS4b8DW548XoyMosOhWJSK1awsmLOvlcvn\nBxrg5mMUceWw7hR2pE69gV9+B7lko/CDXkgpjZqSRLaSa4OMfRKsSJ7IgXUy\nlGYXHqajTzWYCqkOaO9dtPLYcN6zew2I3AAQ1KZhB9fbw1nlslD5/FY7ez5u\noscEvLB5pCgG++vgkL6VHxs+XS6usbwCHtCNjozVO83fQYPe18Dy0zCnO6qP\nhqlwBgLPWwxcNDOuoqkX04g8xvs01OP72dtybNyVUIgG4uYICQK8ZgLfp+uQ\nLPu35rdfkuF6WboRWjXnjuux6kH6g3SRj35xmAnxEPRsYBIAijradrPFLgzG\nqaZ3LMxgmh6qW+GZrQiT5uGBc6aHnSEebor2jU3s/bGLUgLlymnItcl4XRN2\nooLfiIOoY6sBGu+CmR9bXEpNR/dveetxrvs6O2FskFe6zw6FEoC4IR+eQbjQ\ndpg16fF3aLmmcBnWCRfJml93F6RpRPURSta/QgH2GXLBnoatUB85HO+I7Au7\nxmHyhUnaYQv3fcpQmkk8KLeGYepNmqsbJ1vx+2n6v8H3UBGMIxC+kL9IXvwD\neBqI45AjE3XrnmpVZJjHyBsoSMsGzDkjEICYMYtQ2ocGB3R01meYFCPdqs6X\nWUhD\r\n=aOLZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"68332344f12084089dd1cf76d9c9e62ca66f10d5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T17:07:58.032Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.2","@balena/jellyfish-sync":"^6.1.84","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.100","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.118-renovate-internal-patch-68332344f12084089dd1cf76d9c9e62ca66f10d5_1637428257926_0.0486306732352384","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.118-renovate-external-non-major-d3c93d5167bdf75565c2d38b35d9f0b7e46876b5":{"name":"@balena/jellyfish-test-harness","version":"8.1.118-renovate-external-non-major-d3c93d5167bdf75565c2d38b35d9f0b7e46876b5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.118-renovate-external-non-major-d3c93d5167bdf75565c2d38b35d9f0b7e46876b5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e454792ae6631edd39e2c68f789e21e1474cf4ba","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.118-renovate-external-non-major-d3c93d5167bdf75565c2d38b35d9f0b7e46876b5.tgz","fileCount":28,"integrity":"sha512-+BfyPl4T6tL51uriYkTKmpZQlT/mEkCxnnEPlVfACoOXKYjB4iqm4vMG/C2D0lOFhVTqQSoCy5PEzzsWR+opYw==","signatures":[{"sig":"MEYCIQCZ9SVstAnfA17GlupYZrc6S/rt7v/4JHsg2DT/DV52WgIhAOPBYZ1l82mib7f0VMR2h7y86ZO0qTYgyntjc+8DTXUe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219756},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d3c93d5167bdf75565c2d38b35d9f0b7e46876b5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T17:13:23.669Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.2","@balena/jellyfish-sync":"^6.1.84","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.100","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.0.3","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.118-renovate-external-non-major-d3c93d5167bdf75565c2d38b35d9f0b7e46876b5_1637428591013_0.9590303303378267","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.118":{"name":"@balena/jellyfish-test-harness","version":"8.1.118","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.118","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"538e54db559f5f75e7c4395c5c49226c622511eb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.118.tgz","fileCount":28,"integrity":"sha512-Y51qd3NIcS0DQRGBQAruYiJsmVJjtIt9eXmY1FZdezSKmJ+eOIQ6Q1ECX6WArW/0WfkJWDLAzensHwk0pARFWQ==","signatures":[{"sig":"MEQCIA5Dlo7E1x7+eEdqyahwLSVjCjvwhYvujyaibZFJUMVRAiAecoQiGDZ4/b8+3p6YWmrT3WLU9LJDSenaX1nJerpyTA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219637,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmYt/CRA9TVsSAnZWagAAZWYQAIEnKZ3vcVAIUyhoOjtQ\n3QTf/ounoDSwlwLm9vpEd90RynQehVC5qaOd121qVyaM8kciW8KUwP0Fmaax\ntTBEQNtLpXhfpskgrvG7jMEiAam+4HjzUefBBPcGj+E0r8YE5CBZMz0fCrdK\nxw4aLtJASHiLWpnUCjmcisCNFpYHYSwHVGihimg0/8H63mavLKTbZlTvJLcl\nP/I+3Laglr0ktIcsSt6QT64u9WEaJPvLph5k9x2zS8xJlyEFQu8/OK/cAjIf\nfEI7Ca5g6SMSZ6WFUQqyZyBWEawde3e2umT0xLk8Mznc3DmDKwd5QGnthqeG\n8X95M6eL3Y3l0MWGrUAGO5l4dtQRsey9RDAoTtQOrAp78azOASC6C/7K6QuL\neZ/12fX9x4JAHhtVKvzvGmUTF3WpJRzKA72KaRPPGYPGWhw4aJ4if1XeO+nx\ng+dYgOk3tMmouPU2jEmqbx1l25TFGYQImubluDAR4awTrpnrvJF1pukw/1ck\nEfyJM6GIGfHSePDTBr5BvllMFdavnOTp2DRbQ02GrI6rdOBwbdawPOm/JITF\nSPrYEkIAYSu5IWTkew0ofl1Qa86UrjxvwujJ4IaGiw4cc4fnLwauX1srVnBW\nSZ7cd1ht1YvBseD2SACbcg4uJeSWciX8wJDC00lH9AS3ZunyOotLlI+Rmh5x\n5PdI\r\n=busS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9e9491bb9df5c222d80e94473e2ab8bd7f0e5d60","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-20T23:55:55.382Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.2","@balena/jellyfish-sync":"^6.1.84","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.100","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.118_1637452670974_0.9325068461187418","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.119-joshbwlng-remove-license-headers-dedd05caf5a7207e711975f348ccdb96024a97ca":{"name":"@balena/jellyfish-test-harness","version":"8.1.119-joshbwlng-remove-license-headers-dedd05caf5a7207e711975f348ccdb96024a97ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.119-joshbwlng-remove-license-headers-dedd05caf5a7207e711975f348ccdb96024a97ca","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c18b7f19c86d84d79d8a751a0955ac207374cb5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.119-joshbwlng-remove-license-headers-dedd05caf5a7207e711975f348ccdb96024a97ca.tgz","fileCount":28,"integrity":"sha512-sevvk2/zCesvxWErsDPNOtZFEBr9sQLxav+IV+pIjbKSUt35WT7xheWukxuehlKbkZXMPZV55SzssRubsSeYsQ==","signatures":[{"sig":"MEUCIGLvbHoWdapyL78P/r1tDzAJFEp9bjzBRg+VuXUppYXMAiEAhPVun9A1sRZUuNDjXxxVENw4cg2SPrECb4WPK2TyBZ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218352,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmY3UCRA9TVsSAnZWagAA32EP/0q8KRhLuyPvmm/lSuI9\nJI00GcoK8WX4k7JTr6LdNKaTlCBns9OmPedGiWPmmBfNaBp5yEYYI1Wp751Z\neOaEm2rdnsy5ZLlAb+RrbGtq2lrkvE/OCmaObBDJ0rkpwWS7zy71i/DMVuGe\n7q8MquPZryT5vixz0rJ2qPxYD31oflFU29L1V+qT29XkBUQaBgAAkYz4zK/y\nrx10xabUfc+IIWZ5MawRVimffUVWwXIK2w2meFOk+bMNXGpV1MBM+8T6laJh\nC7LpBelEVFKI5NxgcglQad0pVdEPIddPnYeGRUMESgJKeYEvsy/MyBcGp8CZ\nDKmi85o6sY4wahpoUueZl8wYsquPdH3FspCSWIWvcu7/iaoYFfKRNBZTzLPv\nm0RQFZn394ELa5YZC1hVDVmirqw15BXZlQUYoHZdvc0d2fWygn75OxLPT7Yw\ni0pz6V/qaw5FGGVPjsSyJC2atM9eKvULXynePlyLRSAx9jGfNJk7ZDu1GTSU\njbffFh6coWmVahQXEjnPZzRyHXb6tcEciakYYnX1Y7HJDOrJuV8J0JEwhww7\neIuTQZDWPWzKguSZZXkAY0JhEHNAAk7UdIhfx36+uusx1NXF8nrkH3mwf52/\nwoIcywIswQw3s9wnMB5WA16F6LA+auC66VEH1Z/3El+5SUfGqW5O9ZJzESAI\n0R8w\r\n=LsnU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dedd05caf5a7207e711975f348ccdb96024a97ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T00:03:42.339Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.2","@balena/jellyfish-sync":"^6.1.84","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.100","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.119-joshbwlng-remove-license-headers-dedd05caf5a7207e711975f348ccdb96024a97ca_1637453268015_0.3147017671227277","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.119":{"name":"@balena/jellyfish-test-harness","version":"8.1.119","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.119","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fb4e21618d32354cc004654369332f5d859f6ab0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.119.tgz","fileCount":28,"integrity":"sha512-vHKD5tedDxOJfaOd64HCRFgARXQ/wg5jzVSsfEXCTeDqvvOkVH1xAT0hqJ77Rvzjo9rMt/SqDC5Ym03rpB217g==","signatures":[{"sig":"MEUCIEFW8SDTsDhroVqVm0WZPlFDnctvA63h+Q09IFYtJbv2AiEAm8ATgW1iDKBztzqvMviO5adSweZHRc3HKdpwrQSXdy4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmY6VCRA9TVsSAnZWagAAIlgQAIi92d2MfY0Rft+tOwtQ\nYhX/EvCZ45wY3KV8kRitaHn9W5wmXGMRlJszJNSILvwAXSVwKF47rp2ZAvVR\nX9fV9Bwa8DIvtvu65YCVC2iakTLFNSgmxXn0xXgNqej01titJwlM3ua/LtVA\n9eETySOdG1yWbu9Lz/bLPerDmQaHVDOxDxqvnPRPceumqJqpqyQslQVA4xVU\nXXtkn3zPXLWBhdNno1ZnAEYdNUhGmlIaPdjir91znA9jQ06Exsg+tznSEhGO\nH1ZvFAr90m8L+pf0NeNw0k1Nw8y3FqlCjwsBOEJV4KESQi982mGGGbgZhEZS\nKmzhShOnEpHKCAbyLjrnd2sBqUIwdZ+tcEBGJZ+rxm0xw6ImkT3wAPOylwRL\nhYmCRj//elegI/1hHKaG4DnfSzlmDfNJVn1+fpZid5DX/aSFZ27YER2LJIle\nWXEbecErx/g3Q90zrAaQiBsHiin8p98ZikVb2j1zz+kUqSq25I0Jt1P65kSU\n9pm/SYHPaCcpch4lm6N4a5F163UnAo6H8xfQlEOXrAfxYLIAjFf0xREP8Ut3\n4Vv/SGdZhhkaDBYqGGZmh7jtXMhrWIyTUrxhE0RAEIKCjIpHIXqLJ2uC6h4T\nmdwaxIXle1+55u/TMP4sMbE6U8aRprswymyt927+Fz7AUpruxxICHmeEQwSG\nHhDN\r\n=phpN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"86f27721738d8ba3d62bad55a90215406a5b542c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T00:08:58.483Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.2","@balena/jellyfish-sync":"^6.1.84","@balena/jellyfish-queue":"^1.0.339","@balena/jellyfish-worker":"^10.0.100","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.285"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.119_1637453461763_0.4161864529160759","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.120-renovate-internal-patch-9eece54ed32649d9480639646b2fd03cae96a954":{"name":"@balena/jellyfish-test-harness","version":"8.1.120-renovate-internal-patch-9eece54ed32649d9480639646b2fd03cae96a954","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.120-renovate-internal-patch-9eece54ed32649d9480639646b2fd03cae96a954","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4a91c596e32606b0e889dcc68def25e4584ea98d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.120-renovate-internal-patch-9eece54ed32649d9480639646b2fd03cae96a954.tgz","fileCount":28,"integrity":"sha512-6E1bAWEK6oKJrtbgFG/51afBUYS+0TvgxcyfZQFJou24LkQJQw9k+H7fkHY2cwwZqD8seihGqGAdZyjLtfpLcA==","signatures":[{"sig":"MEYCIQCNHcrA9jS4FNJXonILAgLM8rlDzjVVnwBDAPE/1AEfTQIhAP9HcCe2F6jL6bH4phLJDsyCN+Xxp3/nAecdMXNCrfYY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218418,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmnpTCRA9TVsSAnZWagAAgR4P/jMHADvSe+UPubcIEJFB\nSjWZucGbjpBtzkDaKbFqhN8uOE8kYk6/4xQhCIDP3QlTwzjMtOaxywa74DQp\nW5lMtgyapU16h8D6D+Ewa+hSGr/1+a2dsv0xIkfa29dGMMN9uHCqA9bTZ1zG\nJqfEJt9jkMxbBfs8SFb2VduFJR9Vw+a38w/KBMf0OmkOOoeHdBejWqSWDm1e\nL9qnFl/TDaXfikClI+mfGiTicrW2xazw2qZxPEdTd0YYCfE4et81EUV39Pv9\nwVwEW4Ajh11FvoCy3mtPVxjM9Z5H1xINs7pzGwTi4dzwE8+/sDLJmngFOWng\nx4t7yJrCpZeLJoaPHX/jJX1n73Ucf1ZoFFgNsP4M9PnH8GIBM3/lCp93j9Si\nkC8wzECwUAzdh3i+eSUggMz5Ti2Ip9ZAaTgAClacQon+Bs81VuSJqa5btpvr\nbTzs5h2rvdc9haDbCP6IqebFlEN4hCJGRLVQFaV/w9MI8ba2dNJHnhIVkusT\nmlF7hgQm9dmbQWIExf/4d3QUGSc+8MxKKUl6ZLe56lJBcbBxgQ+VenikUvCm\n5/HU9PKT3srwmTD92+cBT4XhhnaQ7U+RrFyGuOWMUCgNPm4oK6WjU9fZLjsu\nF4vtADgpeSfIXev+XktjkxfHs+O9ACsQOG0U6DRql5pqwFfmhn9QvDxuYRNu\nRZPV\r\n=g38A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9eece54ed32649d9480639646b2fd03cae96a954","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T16:53:52.853Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.4","@balena/jellyfish-sync":"^6.1.87","@balena/jellyfish-queue":"^1.0.340","@balena/jellyfish-worker":"^10.0.101","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.287"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.120-renovate-internal-patch-9eece54ed32649d9480639646b2fd03cae96a954_1637513811687_0.46058629991476563","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.120-renovate-external-non-major-91a8c44621b8b871c193e13ad7206055f4e0ea9d":{"name":"@balena/jellyfish-test-harness","version":"8.1.120-renovate-external-non-major-91a8c44621b8b871c193e13ad7206055f4e0ea9d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.120-renovate-external-non-major-91a8c44621b8b871c193e13ad7206055f4e0ea9d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6b38b3f32f49aebee6d7d87b024df4856ae50a27","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.120-renovate-external-non-major-91a8c44621b8b871c193e13ad7206055f4e0ea9d.tgz","fileCount":28,"integrity":"sha512-Px5B+kXPR3wBrPCKLyjrnDZr+KGAsBvt0gSo6vkWRQww4wxcBiVzxWJ7eUawQZL6cy5jczOQlvBT7Uj2S9X9DQ==","signatures":[{"sig":"MEYCIQCsTOEUmH3vhirM4w6iQFJ/4URSbd9vEVETVpEQ0t4yfAIhAL7Qq/k4nNUnAIrjrRskvDmJr7HI500nJiAu50RVNbwr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmnuQCRA9TVsSAnZWagAAZsMP/jpjIvIvqSO6brs1vgoq\nTZIL6I83niHXW0UdULcCzzNvU+uXNRTzMrffJ87AQqlsMPfPysGltcNRaqAg\nf73i9Zji+xZoQO9mVkVVBkHuGsd6yScVeBtKYiiRgTZr+dwklBK5f+u98y/z\ns5cRlt5ZgnjC4xUaPP9KQNls+t4eKPRdxYyyJWxA2eZCxkPCMHWqY5dzjBDN\nXpuJv2GpUDDevrZrKoCSTBZfiw2m6BYjjjK58dtqfoLjZwClyv7i54KL4IXg\nBHEwKtRPN1xVspaTbtuRs4YwSXdgmNUiOTzW3ygU4Q03i4szRD//OhB8oXvV\n8sVhD5PK9pTiiww9ONzvDwgF7SMcL4vn7WfR1kfGKMxR/89bk1cKEFs03pBV\nR229K06yg/W1HKAn1omCI2+g6YapkAibKK4YSQlQhwAfL7ZYf2vjBw1OIY1V\nUAmxoRmoQTTeT4y8QDOluWknTjOoFRpVNBANjiqhv7qQi+EsrUbwIe+zPOHi\nm0bX8Z5govAO3b8BOCsJfwvBUvkU8RRQhOl+NrhDE8I8ztYgwGu7/6BCLm/C\noqAGXXrBxPx+5o+MR4qkPb+VAD0Tfnfcr+4FNUddBYAtSAFeM6uDb8PJ9GKq\nniRXAsSdaz2Kn1ghoE5XvceWd4mjROSiQXqQKqJ4L/zz5wl7RztBSuY+iZuc\nLojH\r\n=fHaS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"91a8c44621b8b871c193e13ad7206055f4e0ea9d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T16:59:06.379Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.4","@balena/jellyfish-sync":"^6.1.87","@balena/jellyfish-queue":"^1.0.340","@balena/jellyfish-worker":"^10.0.101","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.287"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.120-renovate-external-non-major-91a8c44621b8b871c193e13ad7206055f4e0ea9d_1637514127862_0.36993890757128733","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.120-renovate-internal-patch-48ea7b9fd12fe41807a8ce971ecc6baced23e576":{"name":"@balena/jellyfish-test-harness","version":"8.1.120-renovate-internal-patch-48ea7b9fd12fe41807a8ce971ecc6baced23e576","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.120-renovate-internal-patch-48ea7b9fd12fe41807a8ce971ecc6baced23e576","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3f21ec4792f76fa4b8fa6f166e20077f94ecd326","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.120-renovate-internal-patch-48ea7b9fd12fe41807a8ce971ecc6baced23e576.tgz","fileCount":28,"integrity":"sha512-WbeQ5ABQ11At8ubEMXk2t662zUx7cZpOxtcksKi8zrh7hrSYbyfrfahWIRDaZKq/dCtlfU2fUkECaHOD7O3cgw==","signatures":[{"sig":"MEYCIQDmhMCFS6wzzOGjnbRLjmIUiLcZBUaOvv1fiNGhdOflzwIhAIklx21UetQAB6Fdt2FgcyM6T6Ey97ay+O9C2q5T3yRz","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218498,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmsfXCRA9TVsSAnZWagAAgNIQAIo2IBxuqOuKnvPQmOUS\nRsA5kCmyE3pop7p96azfyDJmLETu9RTDYxG0HSfHXyyegFHD3ONQpD/AK6DX\ndgMCZ2f+0y5Fj9A3/BOj/S3UMjEoK9OILJFDgZF37TgFGlx6QM9tjWF9tvv0\nZRVZ5WkKVU43MlQRyLMIJf9ddngZHjwFqKq1ODqmzhlJCXV+dJoi2g49TG73\nhKTkAReM12NJK33n0+SjUU8l5gY61h1wQD/pjyVpMZEY8C34x/IGcA/IU5Hh\ne8/FSFTIDHRGsbq1eHnlviz15vsO76q/mU6mpxQX520WN6IeMcc89P1LAixA\nkD9CX3DBQL+5Pn13K+FnitysI7x51SIHfyL8HukxbQx05uCuOImUodsU+FoV\niO2DtEeRPjUto06iaG+HydMoC2Rw4ModI2hZMXsWB9IXu0QyEmJygULQSb/q\n0TUeuEywTKSdIdUfkcVwVbbdasgj+q46iVz0UKDVsIHMUIrZtV8cRE14Zm0m\nbzGbmKk2a/8WPZxkzTTd3uwcbIvyRe6SlM5qMSnq8xsjrrr2S32vV2Cu0Xa/\nedY10u/P85CtVEnK+Xnf82kIyfWflF07Q0pmdgJVSXRHS1R5QlxoLyBhBryy\n6Gri8KgawCUMU+FlveN30hdrvQq4/G64EytfVkWDbQwOZuSGG+c6eRO/zuQ8\nlU35\r\n=wIIg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"48ea7b9fd12fe41807a8ce971ecc6baced23e576","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T22:24:13.057Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.4","@balena/jellyfish-sync":"^6.1.87","@balena/jellyfish-queue":"^1.0.340","@balena/jellyfish-worker":"^10.0.102","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.287"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.120-renovate-internal-patch-48ea7b9fd12fe41807a8ce971ecc6baced23e576_1637533655335_0.5032103832746715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.120":{"name":"@balena/jellyfish-test-harness","version":"8.1.120","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.120","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"14ebc0406f8c62e3386cfb349171163998ed3ab4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.120.tgz","fileCount":28,"integrity":"sha512-Vqmi3hbWps/RBm6DJtMKAyRnp8whBcGNOr/zvP7wFWE17WdlfICbmsp3BpWOS87vs9/naCvdIvngVLaEnAg59g==","signatures":[{"sig":"MEUCIQDapNkuDshFSVyYZiOtuUwOGiIp/+/tURWAeQvA6UqWdAIgETru/vWg1opKsQh+o8CJuqX/cVuiOCaafyQw/wEonsc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218433,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmsjDCRA9TVsSAnZWagAApzcP/jyPmRGMeLMlKVoCp8E7\nDkMN0lX9mtn7Dle22qJTPQ75gWmNjLVEjrAGuOQouBnxPMtQuKB0vtTG/Fvl\nzdTBzbtitkYhJbh9+Gtj4qV93W6kZJgvSZ300HuCN3Q9J3Fo+LoQ7ZdBysdO\n9plvd9AmBGcS1u0F6az/HMiPI/HkXvQ7/LTNzTDtWIge7qal02mInv8MlaPw\nCdKE4aGaF4NUMEO4tlj+4gI5PJwvx/+SbdPsDlpL/pzH9lQYlnJBZkNjOUN8\ndfeVYBDTyvOFzgZy1plqyai0yKniTlEDGScALdinPsPorT2ZJqfOQNR91wo5\nrZEwwvuTyt5/SibBVwdOW/6UXGPni6VnXyUhV/3/4f1OYnouMjwq2dv5b7L0\nh7G66eOcVlOk6cTywXfpHN/TJqrdgH1jFWX5+JlCYDWjQMjB+SoKUBoB8+SJ\nUfToyIaUKp+5fY6J+AkXPad897f7Se2+prjkRWtLLmjFWhHFzkp88Dxit2UO\n1J762hwmEmf8iqRiNjBFbAdL0QHffIxi3RG1Yuzh9emso+9MLnKKndRfpaib\nWgiaa3rvKL5QjeX2W8sPO8+SngGc2gTConSa6SuEPhQxe3s12nVcihTSo+de\nwKebzzzc55SYyyeVXXFuyHLATtLQ4vH5wTRy34bOm26CspQaGiVHoi8x94I6\nXvss\r\n=WWVY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fe18c366987f0bf9c853703d3e1b6194253057c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T22:29:23.719Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.4","@balena/jellyfish-sync":"^6.1.87","@balena/jellyfish-queue":"^1.0.340","@balena/jellyfish-worker":"^10.0.102","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.287"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.120_1637533891001_0.10285090026126475","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.120-renovate-external-non-major-1be636f9bf86e8a673542cde40cd79bbd45a17b0":{"name":"@balena/jellyfish-test-harness","version":"8.1.120-renovate-external-non-major-1be636f9bf86e8a673542cde40cd79bbd45a17b0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.120-renovate-external-non-major-1be636f9bf86e8a673542cde40cd79bbd45a17b0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"252a8b50ef3b9f99b188a19acb6874f84996ef3f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.120-renovate-external-non-major-1be636f9bf86e8a673542cde40cd79bbd45a17b0.tgz","fileCount":28,"integrity":"sha512-dl0SVTGFUiTy2/Gn04OZwue4lhI3bVfMGlWZMl0qgdft56y0fBi3yblCnO9aayrJirs433afz9kvgjd7jiw8uA==","signatures":[{"sig":"MEYCIQCzb5SKU9EeZJ5KOx9iMSA1Y4VVdQhEo0MuDhaDc005zQIhALKODuzDWPs/aPhImoAjPk83+ldeSxi/0v5o5k/2FPVr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmskjCRA9TVsSAnZWagAAVRoP/3MAHfzV79B3Wr9krV5J\nZJTpOxlkeEz6LjSeIkstydfpMP8I5rh3O93AP1SOiCA+Hf0tnC2PvrdPmDFs\npm/mJOZmxc+SPaFNFmS55J/iDztWLeuKZJwckAQkKn5XgR9WgHGrCU54vpYb\n6iMGwD9VvchH5UUfHk4a/d+OFRvb4+cYTGTZf/YIoSaoX9OmHA5G7q/vEWVl\ndemWGPs0nGAn+u8t+PhHh2+PIyP7VChiQ6xtZA5CImrD1V/q2JUYUQ0XetVc\nqVzg4+ZSwTLpbgbG7+T+qz6Z3AHAVkRgpPcYhee6BIRq5LwVl0VstzX9X9WA\nDJTOCDelCHAY3L5zHPjsl2V5wvqZ0IhE0w1Xf48aARJkk3gEU06ncITUXBpa\nNo1gdG8ajgFYa7p+Oi40JH9dyTx4Mkw5t06M9+Gi/ePfOyY40VHDmkqW3HRR\nrzCDNajdt0fn6qS2CTbiEPmsZvVnoiTt26k0eucPLMlSCK3owPkH1LejfOoC\nvRTA+PvbtlThbgSonK66NmYOOxSvNECoMV9YdPIM4RXSnPQxtpFMQNRJD4jD\nZOB+Vb5GlEOO4kkpnNOOJac/6A3iEBhov86FcMYPlex4s0ysG55OdLqU94WB\nKjU1Bk6oCvqLlZZvM3MK624hALePkaE9ImKQVmE1oQ5VCnISy4pzozmr/3Qq\nY1eA\r\n=x7mx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1be636f9bf86e8a673542cde40cd79bbd45a17b0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T22:30:44.310Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.4","@balena/jellyfish-sync":"^6.1.87","@balena/jellyfish-queue":"^1.0.340","@balena/jellyfish-worker":"^10.0.102","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.287"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.120-renovate-external-non-major-1be636f9bf86e8a673542cde40cd79bbd45a17b0_1637533986993_0.014716609626208355","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.121-renovate-external-non-major-5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1":{"name":"@balena/jellyfish-test-harness","version":"8.1.121-renovate-external-non-major-5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.121-renovate-external-non-major-5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"71d644e37cf6c27084977178afd87a574b5f5cc9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.121-renovate-external-non-major-5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1.tgz","fileCount":28,"integrity":"sha512-njBxltpT7jt6LtSKMZNzFjp11oX+blJXsBWVXCwkR0FDoY2Oe5Cf8rpKk48d0CBncSwre4azhfXIqNAyfdttYg==","signatures":[{"sig":"MEUCIH6bLYNQT+m/bxVIhjdgXPKzz6CmY8oIMVXJM5RWaWchAiEA82ZrFF8UhwoYJM6nMzbps9AdwEE4FERzUjmVzinXplQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218581,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmsmvCRA9TVsSAnZWagAAD1wP/2IBIiQMe6ygr1GAtOV+\nCMw4ktKd+AMBSfC7N5lNsev8946rMufIA4ixTJs8ZW4NKXff7l7PjDP6Qq6c\ncQi6OD1KdEboa8IhNhswdQlwunD9x4VRxZKWQ7evULM08jvhuLt17M/DK1Ke\nE1CGzj1xeCVtd2MIHKt+ZHPlD+6HwL7KgiEUb3BW7THcZssEoMV/RnxvxoDM\n6fmGZstGb8Oa+qzw2/PRkj2X8mMWVhaNoNe3mr2V7feA1ywGWWJaq2c7MqGW\n4lZAHf89+MQWHJITaEQTSGNsLgK3BRNwmMC1n/XNMwaiAO1pTb1I5lEZTVQa\naJvS4sehoS7g2S5+mSrpbDp88sfskdiCwBuhVoUB3QsZFPCXrDfmec/eW2X8\ngP47IyTH9uqxVu4f3L+C0TsFmlVgPCKWFgR06NilQ086kQLleGLP2yC0DJUg\nnwNQa+3kS365IG4q+0dmUvrFwWG8Y4S3K2oj1mEl4EC8whhtpyp/MwjXcxqx\nfBh3J/A3fOR4jXCfm3o0gA2IiKzAi7ozGtl/rp/1yKnMHBaJKJ4tBclfrpI7\n+BQ2FaaC0p0aYClgts65q+mP+xbpifn1pH9YDru0ZXGg/HOKJk9MbrEYuZDE\nURkjmpaqMrrkh4tF3b1LHyee8WZDWvw7Pe/f02ZVDa3Geny3zMhK2dt5U3Jr\nMVf6\r\n=v45X\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-21T22:32:54.125Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.4","@balena/jellyfish-sync":"^6.1.87","@balena/jellyfish-queue":"^1.0.340","@balena/jellyfish-worker":"^10.0.102","@balena/jellyfish-environment":"^5.1.12","@balena/jellyfish-plugin-base":"^2.1.287"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.121-renovate-external-non-major-5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1_1637534127540_0.2392297882995542","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.121-renovate-internal-patch-30d1cd0c47c81ae0af6485d0780a657ea5a5bd77":{"name":"@balena/jellyfish-test-harness","version":"8.1.121-renovate-internal-patch-30d1cd0c47c81ae0af6485d0780a657ea5a5bd77","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.121-renovate-internal-patch-30d1cd0c47c81ae0af6485d0780a657ea5a5bd77","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ff43ef002b4ea277fb2c20ce0c989bd48b68eca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.121-renovate-internal-patch-30d1cd0c47c81ae0af6485d0780a657ea5a5bd77.tgz","fileCount":28,"integrity":"sha512-1FWJJKqiyETyvuZnLiMlYQAYNDlmwBpzE7dt73S0oRJ/849hfvwuUMdH7vV2X/vqx3PuZ8t7K7pQQ0CxvFyclA==","signatures":[{"sig":"MEQCIHgxAKRt2Ma1dgJWoFSQPM4ow7lFIxeUrGRs7y4qmygPAiBltcEPRkV9yM9qM04jXr/J0AGInbMPH3ojXaluxJUMrQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218573,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmv27CRA9TVsSAnZWagAAyjoQAIOXuBfbbOZ1FnkKHPYO\nMYvHARRn3nlG+RXgl5Lt37rBKw2JpQy0VhY1lnAnpAipsTRS/CrI+qrEutEn\nwoTQUdWg3Lfh+KMnsXfAt+aPMLd3ZirL8nvcyBWJvKTYXljSfZkuGYxj7ZMe\n5ve85htAd4fafULMF7ZF1SQ+RuW0C0ej8d9bwTl6544jddS9QQ8Y3jkAnvek\nMjj+r2+Ndbh71p0AqPwV8/5mZkV89dLLpnLmLWT4DcvM56tN6F2d1ZgDsDVd\nHvI5V1VbFaRX7hdmv/3GHEdzwfI01di53e1r+ru3s7Jg+5glX6zxJkcb8P9V\nBHYILUAkJ6wkVjIo03NZLfH/21hEENHh+Obcf2J88UlNKIGpTaezGlTB+ZL4\nsoES/RYep5r2vHOG88uQbWS9G1UHTzVEVTn0hpHN5jNUNjGlfT+pPNYaCwZR\nHHvbtVmTXBCuq5YEAvL4I78GUob7QXVFxGZMwQ+zkqkNutTMsOXZ9mmxT4rU\nXc+1fXj3xG/M3h4theyntzRXJZeK1zsIgjqUpt57LNex4tb9X8mLlpM23W3I\n+2H8ivDZF59+B+lyzaSryKZDVUsCVMr8s/Xq0rYip+ixNdOoDKVfpyudkgpJ\nPbLas8Vc2EhENfd/Ctw9deR6bzBckzTLs0/XXoleineoHV3Z7ZKrmnwXrrNx\nZErR\r\n=P/Au\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"30d1cd0c47c81ae0af6485d0780a657ea5a5bd77","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:14:27.429Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.13","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.121-renovate-internal-patch-30d1cd0c47c81ae0af6485d0780a657ea5a5bd77_1637547451678_0.5236791206784013","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.121":{"name":"@balena/jellyfish-test-harness","version":"8.1.121","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.121","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e518c27405d8ebc94c0069fa8e5a3f7acce4a519","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.121.tgz","fileCount":28,"integrity":"sha512-oYZq21FVVNdSDUm82EdnD+9lxh3x76N+z8JAaH4bCZKh2OzwdT3sAKJ5yKamGHiMXMPEOjrRuG+DjxEmvHjriA==","signatures":[{"sig":"MEQCIFuZnPQQgqHASXCwy8CjwqSJMHy7EK4wprJbtkuh3ATwAiBdyukVOjDNzAA851HB9pWrnMW7shj9bbuJuZ2dZ+tyjQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218508},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"48a0de149de8954cb80910474db6a1c11c8a047d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:19:02.330Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.13","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.121_1637547672737_0.9732493207564021","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.122-renovate-internal-patch-6e6ae2232611ffebb2a69d1381c709344ee89514":{"name":"@balena/jellyfish-test-harness","version":"8.1.122-renovate-internal-patch-6e6ae2232611ffebb2a69d1381c709344ee89514","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.122-renovate-internal-patch-6e6ae2232611ffebb2a69d1381c709344ee89514","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c348138eea736ad781c3e55b4553ca1e74d1dd8f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.122-renovate-internal-patch-6e6ae2232611ffebb2a69d1381c709344ee89514.tgz","fileCount":28,"integrity":"sha512-a/fHLJ3aIr9t3rxyzeAEhDb+bTceMG+9md9ERz4rafih3b7YRiHSM7jYeAO5rvb57k2JfOlvzzbowOYIi6IV6A==","signatures":[{"sig":"MEUCIQDNZWUiDnKlTZowDp6L0wp1Kt2T6xZSYFXdsYn3sUCNHwIgH2eyJzRyuWdU0/t54zQtaNIl54gbURazIB8agPrCzSw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmv9iCRA9TVsSAnZWagAAdzQP/1KCitoHjgNlWLYPZf9F\nnky+d42/Qgfl0xSkQRp4zMKS/Qk78lgH2HgU6u1Xj4vVhBpvUyvTlHYSW7oP\nKwVtHYjKHzoC+j+991RJUyRcW18DETNpypoTymtDE2xO563DGh1k3H6QWM9o\n+IniSwx69sxOJp0PwTGvpftfnmWAFESm5KwvQZ0S3Yt/zXe+pBxKJzKnOVM1\n1TTji+C5a8v8lc/yQnqYvZVXDn+YAEzFGKEHHYvtstvQyx3hg1GrKYMbgH9X\nlXHEud6L/2C7+iMEH3CjyFgIe69Kzvp/2N/oq0cA/FvOTyi+rP5MRMaHPYtx\nIWnwKdqmzAeD2zEZJdD1Wvm7l2rEAurmC7eoDC/WuvYGBMrCdI5Kh288LyrP\ngNEN3VaOq35PebuymQiM0s95jJXQjPV4DiW55zv4f/d9gyLnkKTP4rmp1tQO\nuz6nGSFWvIEFBO5kC8wJXKYFegl/zN33NuRDTc+28L1WY0gDOTbXLbfQ2Hr4\ne/SRaN0D/sqS4U9nUDcI4eE6Ul9HGoddihadpsuRY+2L0VkVmQq28QVuOYpX\n968VA6gXOtfWGgCSlOJjWXx+x068R+atYKWeBN65G3rhRjhFcTdz6UoYXUbK\nE4JH6iEfS/t0NT0rPgKmEWXMs2N6inNhNtapuw+PMD4gTt08L5+nv8sIEGoy\n9XEJ\r\n=bP/3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6e6ae2232611ffebb2a69d1381c709344ee89514","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:21:12.411Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.122-renovate-internal-patch-6e6ae2232611ffebb2a69d1381c709344ee89514_1637547874184_0.6986074604533259","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.122-renovate-external-non-major-9d37ad0a0722598a50313c4fa658991119c83678":{"name":"@balena/jellyfish-test-harness","version":"8.1.122-renovate-external-non-major-9d37ad0a0722598a50313c4fa658991119c83678","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.122-renovate-external-non-major-9d37ad0a0722598a50313c4fa658991119c83678","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"044209ac161a167398176cdd5e6161797970d55e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.122-renovate-external-non-major-9d37ad0a0722598a50313c4fa658991119c83678.tgz","fileCount":28,"integrity":"sha512-4jS9lP+fK4mahXCRn6jaIbNvtZKET+NbZ46cIJxYiabX9ZCmclCl13ELfIkvia3PZ0rkBw9FiUkejwCPi7PQzw==","signatures":[{"sig":"MEYCIQD/h2Un4qz96CVzrRCVJ/jjhfWNhNWIIBRY6dAs8GVnUAIhAL+qCgxw3ALdfVp8pZr4Nm2eeGWgDl6McGT0GFIvi+ZX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218656,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmwAACRA9TVsSAnZWagAARooQAJG2h4U7JDynI3XtQjz1\nXqAr4lq4KjsETVcA7aNJRcroEfp8CodN+QkSTqFnHicefYBKcEkNXmwZioZy\nwcLWENTvEDPhEtVUCVMPsS+BRPtWtO3yyEt1Fs/FSrCqQxI1FIHo4rL5ptjO\nqpX/b04CNbfhWyc9o1fKiX+eHC6yk3/x7eeJsH8uySqWLNn5fL97q6Swoi97\n0hXvlFsllC1vcUgNt+HjurkTdGvC2iATD3lvt2LvTKzdoclo0R7WP5C0orr7\nntJGLXW5Q66eSj5kyB6oZWUUR5AZjXRrMUyqeVpad+fYoQB+aS2NAqmkJJ0a\n07yaJpexI4v+a+aZuA9ngxjwDk8BhG8tBVkZ4rv8OpipYVYREdUIX6rYoqHP\n9JLNmBonJVIiFggiL4Rcp8Vhx2t0X3iiXY+0Zmo94tN9r8Y8eYN6tqxxYmIM\nQR0U8G9dwkWtIii0eS2Pvg/nvfgoE6oKHslwlj8kqxKHKAe+SBl/wfDfYSwk\n9sntxb8cruI5Xl5qVIP/xOVVtBwkpxP5gAbzta7VByNLRmlzfy8hH4zG2iyN\nFaA159RYKA+t0MIFPFlmr/KM00zQVjMDK46pL9FAbuB2O/mzErDqAMf5jwdw\n4BAN2d1hRIn+qEhMd2CRS213qffSgNXDj4UGonE5Kox8WAv0jLjWFlK/jhOv\nmtRK\r\n=Hlz8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9d37ad0a0722598a50313c4fa658991119c83678","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:24:49.442Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.13","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.122-renovate-external-non-major-9d37ad0a0722598a50313c4fa658991119c83678_1637548032194_0.3629021061149649","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.122":{"name":"@balena/jellyfish-test-harness","version":"8.1.122","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.122","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5e6e860529bc0c1d93c6cfbd2d61ad51747119ee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.122.tgz","fileCount":28,"integrity":"sha512-LFgk3D0jBmIC88a9XllfJ1OycfqcWYbY8E8bW2hhFfBmRCcLuhH6RodbVl0VOFwIYedKnAbD1qXCB+Xthb8oZg==","signatures":[{"sig":"MEQCIDuI/xoXyoDpQGTtVW13CiHGUm6kSM4QeEBy2ReXNT++AiBDTJSoe45EjQ/6KQQYss8iGjYdiu9pXU3HhE4jiF7cug==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218620,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmwBzCRA9TVsSAnZWagAAwIgP/R1kbEIA5ARQsepLfYRy\nIs0N2fn9g1DzRuhXjbOWSXcS36jRfVjl9jMwl08YnKfizZyYbI9EiuGqr7Dt\nmO/3jcTT4cV1j183IMu7Kvoxy1adCPLJvGbx3U6cd3PNSWd/3s9Yt83snts8\n4LVNytFjMn5lgiFEl+mR/HQBsoILT4rCVj+3r2F7iGZW9r1GeTpUvWE6hPT7\n3gpvKdqiz6+y+azvW9nwt74kTj4IaqpY0YVR7YcwN7gdvF+F1b6cx7W9Nen7\npX+0Gkp4k/D8e79S0irq/R1HipF2ak7sZaM18GgWOjtexiHRjV92a5twrkKL\nH9J4OdWeoFBD2l4g8JY9jqvjG6nIWVIjKo8IVUjmxCN9MytKgWnXeLOPrZYi\nS5godJFByKNL9Di4TtnnQ2jjarAMGLQ/7yW6LX2I4WFkSDomglp/1Rf3fdwb\nmsUyHghbVrda8oO2uDzZfw5hZfQgepMJpx/CDjttHEyVwOv5X0q/bxyp9ks1\nQr656M1ZM7uvLqxw66LoWbmRohrnTsW752aT9I71oPOh69shcyv5Bgh4S1vO\nS8xZ0lnKRomutPF2A+LqnWoroa4JYiRIRoNuPPFkkdz1C+YoTLRA3RloIMaw\nQkrzhwgC3q7w0+0PZtBNEGMfXL1ef8K86zG0jl4/GS+reEK3DTV4S3gWXYU5\nQ5nc\r\n=nnbE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1a3d90457056b114f42c93ff896301a68f5daa33","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:26:57.898Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.122_1637548147059_0.05035513922002077","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.122-renovate-external-non-major-8231f455242a9fd04b7202d974987ffdc8063713":{"name":"@balena/jellyfish-test-harness","version":"8.1.122-renovate-external-non-major-8231f455242a9fd04b7202d974987ffdc8063713","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.122-renovate-external-non-major-8231f455242a9fd04b7202d974987ffdc8063713","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6ddc7585965b929d735cc8effc90f05d91dd6530","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.122-renovate-external-non-major-8231f455242a9fd04b7202d974987ffdc8063713.tgz","fileCount":28,"integrity":"sha512-TZbuSLYtiJG3Avy069dQtzQJE37jSeWEv+SL2+myqNGT3dLqKP+ogm91E+2zDwbwYqa8V2tAhhAues1GCqfGGg==","signatures":[{"sig":"MEUCIBW5i3+k/huiIqfNXT3RTXjHwej9p22OGyyQ/si1f7D3AiEAlMWBUrHXYG9PZDQwLdH4bIwfjwtXsoSBarEYb0kBBb8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218739,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmwD/CRA9TVsSAnZWagAAg/0QAISvUdqH/NSxhBVME7ri\nnbkfB4RuHV2Cw9PO+TIdvwY6YiURqgBAo/eRbAx3Ac50kRpIt+/Y00w70lHF\neXOiWttthJUxceN7uw+cbvGzvyjQHaWCdA9P7SHW0YmuZxwrxGCtfWF2giHd\nuttM36TtU+6/loI9oiTucLi69HWgvWGTFWe435C/3pe52al+vsglRHnY6Y3I\n1xOIctBuJefoITe8nYQtzNnUy4JUNuQ/FQpjZ2DkHmiZMJ+tRRUwzi+zJbDJ\n9X9izLApTDw1CSGtnIZgCWKDrE9b55XmeRVM3twTeAL8QIwrVubtRqc0oO5n\n4me+b8/1RMYXxhIV5TROVbbtSqOQYLPViVQDzYqg+j/wBkgSUPBK8jhcTIBm\nfrkgJ8a3enZRkHeaJ89rXDCBxtMoak45dy/WW2+/3aP/0s/vs3NjIfYdiVnE\nb7Q+7eLY/cC3sKF1bkA7+mytvknXvB9WMm5lTPALGPU84ZUTTTL7OM3cFA2g\nQGkC7BDrM0c1Q1Jl/t4uuO6VrG1ezUO7//ZTBejyaiQwCwIOezmytP22hRCx\nGE+uYVZdrnB/334untpLQcjoHRcvfJ0qhhwNtRx4lxu2+dw5XR7L3klwgHA1\n9Ys8FlxwXohfg1y5IBAwDmWaDHFRE1aWsO0Vsm8ZoEodOE3MGozVFu550jEb\n0eSV\r\n=tJ2d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8231f455242a9fd04b7202d974987ffdc8063713","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:28:29.635Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.122-renovate-external-non-major-8231f455242a9fd04b7202d974987ffdc8063713_1637548287095_0.48017258977361776","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.123-renovate-external-non-major-e726a63e8bdd68c1a8176746c21dcb591527b961":{"name":"@balena/jellyfish-test-harness","version":"8.1.123-renovate-external-non-major-e726a63e8bdd68c1a8176746c21dcb591527b961","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.123-renovate-external-non-major-e726a63e8bdd68c1a8176746c21dcb591527b961","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"695a8369e739cc0a423fc08f8f4eaef7bb2b315e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.123-renovate-external-non-major-e726a63e8bdd68c1a8176746c21dcb591527b961.tgz","fileCount":28,"integrity":"sha512-HG4D70yGRv2FNVMWXtzOrNKkUq4VOHypTRTr63PKk62n6Q0pmUx6Ub7UUqlpQAsDFOFDNFct3nNdaIe2GcMKnw==","signatures":[{"sig":"MEUCIQCdnd4V8U9AFtpaDt8LI0V+cZQ/Zr8JGmK4woCsFu3PcAIgMgwtbtQWCuEIAU8R1kA8CG1Aj8CIE022J+A0t9eVtsk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218768,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmwHpCRA9TVsSAnZWagAAg/oQAJ6BiR9B7cX99HPolUbe\nN9c9/1U3DyYlvs2qNDaV8+Esgb0WfGYS7rDiasiDMq/AX6Wz0/JQ0xrG+7qU\n5G5rv9iobLnuTjtWre73cAuEEXFKaDfpJQS/+4QtxPePXFjvCBa4V+DoFkT8\n50uqfZIWraLlBi/8DOkRtYtkezLTNcPMKJ5yncyguXDchc5cpiR7UcK3hlBN\nywR6vC2c4mXqR3YiHAp93Cmy/cjLrLECyeW+teQTCylalWhmzVytQm7qreQ0\ndw2TfVvdeqIFUX+cs3UBpsYjDmVWqDPDF5yr932IuC6BvZa4A1yKzBDsA0hE\ncc8kh7Ec1eK1DCQ3uKy30RATwyv9ysaXUV9i+xgdC794VFEzlmWSkRJMKwxJ\ntQvuW2vYsezoXBWJm7KS9Tr75FYfSAdqfKh4HB7NBN85ehn6zo6US0T6/6Ll\nrad58fqO3ifmZif5nbRfrWbDWA1NRcaPsh0DGZyOgkeH6adp/HTUmz4PL4l9\n9XjE7VLGH9pDNUlLCQyzeuCTQdxoB2k/Yzlq7Yue4lPqLgNZPaueIZNEY8PN\nzCQlHEsc9B9cqllGzXx+Kyx8c7/iJNZWV8jc61y3lMnfwaAmoAuxWSvYpZbX\nCCrdsakEukn1vTlIVncPiexfvumHq62YESr3CV+9GNs72X/o+TBqdMIqpFoG\nu97U\r\n=jGF9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e726a63e8bdd68c1a8176746c21dcb591527b961","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T02:32:49.359Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.88","@balena/jellyfish-queue":"^1.0.341","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.123-renovate-external-non-major-e726a63e8bdd68c1a8176746c21dcb591527b961_1637548520828_0.013260410451126026","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.123-renovate-internal-patch-b1b25f89fa0fe4747373e81e4d0683cc3a92d091":{"name":"@balena/jellyfish-test-harness","version":"8.1.123-renovate-internal-patch-b1b25f89fa0fe4747373e81e4d0683cc3a92d091","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.123-renovate-internal-patch-b1b25f89fa0fe4747373e81e4d0683cc3a92d091","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ca496eddf6dae3c566c108ae76763edb9d11ef9f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.123-renovate-internal-patch-b1b25f89fa0fe4747373e81e4d0683cc3a92d091.tgz","fileCount":28,"integrity":"sha512-nxXszclbuhr7Gv8OVb9lXSf5Of1Wu4DaTQunO+DrgjySlRu+S9rWlKh3osWWbVus4avFUuPh71UgfDub20DCwQ==","signatures":[{"sig":"MEUCID/OchbKGj1zN0p4AEERIvaaTlV6q4gLXeT2Tpac3FamAiEAvJmSZBHj/PE8MZRZvEPvNgmYfOC598qUdp+FsujO+Og=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmzhyCRA9TVsSAnZWagAAw2AP+wTWpmmcHoOXcrSNFUic\nCJlJ7Ucd8wbL6crpVPnmZ3xA4SqQs/Y1g45MzsNtUONVk6OGatyQulZqIAqX\neQJdD47GEYm7umXw6VUncrlf4AhCl4LpIZZ/HbLvcLk4tafPbkmh9f1UIc6f\n87edY96bu2pGU6odfkFhyhvwrm+HfuwpCRojyF6EMZEHZd1z8Kpdrzm4pXxh\noieYtluICR+/e4D1BDXfUakdt/UgraVpC8a5V7d7smUn5KoUHKejDkBhhLl/\nvZ3HqOqWFgfolpvmWxRIv9q+0fqq7CzlHWbPvD7Fh138zzcY5tdZBUHPLinO\nDWN2pAa/0iUaJ+yNSdSU3Cm+NyZMPFFXw/FrAeFWaKYecMjnJZ3fEpmAQi5s\nc/zlyATO8eTY/LXp9LCi0sTgcgfhW8EKwAL1LoCytJMGRcXDiLPB17Xsv/Re\neuJM/wxFqN/aJGDDV2RE2vmxpH2Q2Dmq6VPGg3IaeTIK0iqVBrZlcpgKslVe\nTktKrIyHa14Gt2KLbOZFvDrJ5gCnNVe7p0Vujzg9hEwAae1Yf1L1E70H5mE4\ng8EXIU4u+UOZl23NTqiDWQ7YtRy3xiumP+yyCmoSvg1J0m3dIj4Od2cpMByM\nFmUikERJcqP0e2Ok3C/kwKMhPpCsQ7DBXjYszgj0aqav2n5j3uCHhWLttt2H\nOHge\r\n=sixG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b1b25f89fa0fe4747373e81e4d0683cc3a92d091","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T06:25:03.558Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.123-renovate-internal-patch-b1b25f89fa0fe4747373e81e4d0683cc3a92d091_1637562482753_0.09640079715796213","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.123-renovate-external-non-major-59988fb2c0732b313984c18518414602519af234":{"name":"@balena/jellyfish-test-harness","version":"8.1.123-renovate-external-non-major-59988fb2c0732b313984c18518414602519af234","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.123-renovate-external-non-major-59988fb2c0732b313984c18518414602519af234","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be88c3d9b0bb6d03f0b4c02809db247bf53e1090","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.123-renovate-external-non-major-59988fb2c0732b313984c18518414602519af234.tgz","fileCount":28,"integrity":"sha512-7uvOCy8qgMfVK4wnGiNPXqQ0yC3INTICQga8//1NkAtAfr9ZbudiRLDnpnNfIAykiEdkNQw8aUZ2nCyDyhnXWA==","signatures":[{"sig":"MEUCIQCRTrcDNeMOSJmwgdXqG8akszNNPEqg3wNoCMTtnlL8HAIgOuMx0UgAvRUFBYlidNC6UIYnCTXPFiR8yqD4NqhxJSA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218814,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhmznHCRA9TVsSAnZWagAAuKEP/iffHM5eaR/qfU9NPHRT\nA3fBCzpIapzlrCpbgvFmi3j0gvwHkhfGSUg1inGf/KL7LaWW3uqwcxOPUVz5\nJ3Usc46jiFrRHs19wW2SJnCbzwarENS8jo67PMcvu7XbZe4ylANjYbIPSw6g\nJN2s1jnPsMQEZMh4ISOVVcsMmDKEBwnApvXbFf8er+cCiA4DN+6PK6fnA5nX\nZDuBSttA3+gu0hG8XhNEcPtvxMX8xWNwi85YV6bbF4GZPDVgGsX4LCoiwQ1o\nZtx0OQMFaed8BmzUm84YY4lUSsQCYdD5+MxCKvveiPHaIxywNKwsByVIbhgO\nqcY696e50Z4NImEBy3e6XSlN+37nJ6adjLZXcbw4CPGlQGTDLSVMxmkro98D\n/vlF3hCOWU6CD/PWBxFMT18CaY56aJZSJCKEdyZYGPLJ3SD0y7Kf7b1fdkO7\n+utQaY5dtQ/D+0zD65qma0IT9JaWmgP37ZFwzhEJwllObUS5dvJ/j0IX/a6G\ndKYmZfS454BrbiucMZgSxbBxk0nTqUGm5960tanV6I5m1TA4+EeOgAa2lxso\nxxdWDsqQDaiNJiH5ZUDSxmDQ11GVo9CvhSoAevjqfsMUqdEGQYIjqI73NlyI\nOXQq0XqNS8dcET/pYfSezfQNp4RP0SKavyiJWTmhriuzYioCbFDsOAjOJjK4\n6A8H\r\n=SoqM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"59988fb2c0732b313984c18518414602519af234","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T06:30:50.958Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.1","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.123-renovate-external-non-major-59988fb2c0732b313984c18518414602519af234_1637562822830_0.7374112522210912","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.123-renovate-external-non-major-847d47b2e2f9046fc97d0f52e323d40783e5186d":{"name":"@balena/jellyfish-test-harness","version":"8.1.123-renovate-external-non-major-847d47b2e2f9046fc97d0f52e323d40783e5186d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.123-renovate-external-non-major-847d47b2e2f9046fc97d0f52e323d40783e5186d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fa721ccd7f9bb44b287a85a459913e45a64e9230","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.123-renovate-external-non-major-847d47b2e2f9046fc97d0f52e323d40783e5186d.tgz","fileCount":28,"integrity":"sha512-KDSggww2aWofvQ3Uqtznxa3C6YeEAzK3dPx+fThyiIhByeh+5jeE82m7+PPrUyFAy86H1dZCHtvcTBJE/08Ciw==","signatures":[{"sig":"MEQCIDpuc5T/v5Bc8+YXhFnuFKiDLtzDSbxlHl33BnePprHUAiB/nKB/i03HPL+zke6YH1Ko2yYGPyYL35/CqrP62eciqQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218814,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm3d2CRA9TVsSAnZWagAABzYQAIOegEVRAExz4ZEtZoGw\n5L5ZbyZj8tdPKL1q8L3NTnCAWux2sRJDzrPR1gRfQ7OLL/YFHO1/WlHKI1qP\nuhTYCuJn61rOSne1PvnBRVrGBHE3bRgO4YoVGj2lO4IYMy2EwOqewigY5/Ul\np0hdY0nzvxKp+xuzboqbiQ58Qm6o2aD5noLlEsEU3O3r0SCD8uw9f9zADnO4\nLqV+IPEYA7mmAkogN8qjOqiBHBDALBaLvgy6eP7wbK4cdQ6uo7DrfvKXWYtk\niDNaDx5OLUR4Pwtrutx1d7We1W3x5LFUMI+xl2bMpYROaNroLnFjTFcW4sF9\nysfCmqZYRU9oX8eFZyUwbXxiomteWP/dPmz6Iu/EQaL/yoYVtI7jlPT2AnMX\njn+l8vYvInzHB2cXVVqJ0h3R/rv0HGdFOfO+0wByHhQKadmTlDRPnsYsgC1w\nXgDdwihPFhPp2GU7p3WjpAgJDkTfHbPex+pKJp5Sh+CwanMYzejIKGuLbSy3\nLFrUf68Z/SDyQJcdDCg4kKLxmaalaRJKAw9Ja0EE8l8wTWdCGTRb05/inycw\n3l7/0xdx5cF+cYyv1hydyNreegqAHMR71MsRqa2lDBIqlVOn3LyIAv4J+EX8\nRPd18fXj2xvznLnlsiiIV0oT7758F83WhJELRocy3ipd5KiHZ0Q6ZEITnpyQ\n31wi\r\n=Xd2I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"847d47b2e2f9046fc97d0f52e323d40783e5186d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T10:53:50.540Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.289"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.123-renovate-external-non-major-847d47b2e2f9046fc97d0f52e323d40783e5186d_1637578614589_0.04073352195764879","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.123-renovate-internal-patch-397b0ca020208cc50e95c1740c5ef428353d858e":{"name":"@balena/jellyfish-test-harness","version":"8.1.123-renovate-internal-patch-397b0ca020208cc50e95c1740c5ef428353d858e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.123-renovate-internal-patch-397b0ca020208cc50e95c1740c5ef428353d858e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d49e9970f3516dbc1beb6e0188fdcd896f5be90","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.123-renovate-internal-patch-397b0ca020208cc50e95c1740c5ef428353d858e.tgz","fileCount":28,"integrity":"sha512-C45STuD6ZV1RRV5aeRSfHeL3UXqkEPgekJLyJ9fSlx512MWrHhCDCU8fVGCC/I9otfaBWAkcRmB5nj6zqBiHJA==","signatures":[{"sig":"MEQCICqJSTSc+Gtpw5umkR85IBApfWc3roVoy06jcd2ObzaQAiBFfUcLKc+MKxqWAX7/1YDL7RJB6ORZHtQbwkGfiNmXmw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm7giCRA9TVsSAnZWagAAGY0P/011KPCbrky3VFpFVHv3\nYv7RyfHfjXvyJ6X72OuhrqGnlTJ/cvmGQ0A7K4Ox/gMLDkM9FUgTF+PkUD4N\nEGWkL14EnKQL1CQBI39PE0uRk6w/ktj7pHL6WeAE+LibY6MvcXr2j9FEYlgA\nIjgDV2DtKw+i4+RzIv5j0ksOr/KC5Q39ABk8JgLHdj+wVtz57K18+QwGrMz3\n86i1OYBCxHG3F327XTZLS581d1pRnuo2DdO0GNlT8WZscE/lBcHMOVo/qgS6\nmDbTGCqFDkp9GetR1ZqQoCA5raX3pE4cjZBDfjY0MRCvtcW8X5Wk6rq0LBaG\n9FgBnkYtu1du1G1jj4eTtlLWE/qD9gberjXUHOTO8j6A0EJOE7T3P1DhkOjh\nXTDpeVhyfprK8pUrT9FkIOAjRGvDLuVzcVayqEy4fZCa3uPR7Z2UXZ6Id/fk\nbfrzalr8D+6HHcbSTnzfjy9uhd+AJMR1pLdXco874EAtgNlQEQfNzaHNYXEK\nF05V48cTet3Rfmsf0N3ODwi30Fohg9kqSZbEk7X2NpBz7e/+SlSU8oapedTT\nSwp4wO/nipSpwILfYah4Iy/cN2Y8V5W+MTcTTDj2/xV+yLjW2Cm1rGBgPU42\nsrrc1BvdgkO5TH/QtHGUM0F1QaLV5x45U4zNaCc4yEDgfJobj9+xghAgNDxn\nWj/G\r\n=4+nG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"397b0ca020208cc50e95c1740c5ef428353d858e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T15:28:50.361Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.123-renovate-internal-patch-397b0ca020208cc50e95c1740c5ef428353d858e_1637595170181_0.18156656399473547","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.123":{"name":"@balena/jellyfish-test-harness","version":"8.1.123","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.123","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fdb53d132b32e099e7d14a367a2061a716f4472b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.123.tgz","fileCount":28,"integrity":"sha512-QF5vj8laim22diIhuWzHZqatpRuu1iv4TjjYhCHa6WGj5dSdKZ+FE6k0XmocdaSihmXlG4b+t9JjtFw70bqgOg==","signatures":[{"sig":"MEYCIQDX59HUOM34ykuzFWoNIn44q0jC/DyIEM1ND/y+SaqPtQIhAP/fKSvwJ2F4hUqQNyec+Cmzis8jJP6YZylsPbCqsDoH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm7j7CRA9TVsSAnZWagAA/MUP/1nECULn+ICVebfm0ysD\nbmlFohZhaEjsqTmMFQu/alxN5az8C932pHP6Q2/dfKyj5KppVlT5l3kf7UmH\ng8IF87ASEJ5WxpAtXTCNPELAItYKbx5+T2iYhYVnWquCGkLHMc1MexPL5x0D\ngshZ1DYq6b46ErmDnYGjpa8u2U2kevJ4e+Ru6gusGwh4wdLgRwzA+BWn5dq9\noc4eTtJcHRRuoY/nX4jrINFNYnJRn+Dp5YW3LqOad24pZrg/LEC3T9u+UeCj\nQFKEqxgE74t68HxM1bwsUuIe4woafrhiVvOQ291qW29So+iY7QIFe+sP9ztb\nzCYQV6UmU4x53L+a1G76XBUyDjsG8iqAl9ybgFQ7DSuTnRxSpVeEL8Wibc5W\nbVeQ9jiXMeAzztK9z+qDq/4dkIzqxTLvgAAQPEfz+1voQ4kxa6tFYdkOiuUT\nIoXBvJlOdbPh37BYbdah3cecu67YdOG9vk977glmMPuMweP9kUZKwZoOd6iY\ntJIrpa31Rkzq8KAnWGHH/jr/BJj4b9XcDVWh5ofrmgUM7GdHCxbnRKqdrXz6\nObOkc+nn4iWCuAJ0/DiPWhv11us0FYsbywaQjJJfE9iliJeqoSdhg2T9PxFf\nOM/K8r+QnWT2QNHqJ+nzSxMROc2RDOMWfneZPBEjJTK0/erQtfImhmKEh011\ncfja\r\n=2Pr+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aa93f36ed5c6285731b728a1cb567410d66d12b7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T15:34:09.579Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.2","@types/node":"^16.11.7","@types/uuid":"^8.3.1","lint-staged":"^12.0.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.123_1637595387691_0.19472468588443181","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.124-renovate-external-non-major-f46e4c793f36d41adec711e1f1390b9fc288d385":{"name":"@balena/jellyfish-test-harness","version":"8.1.124-renovate-external-non-major-f46e4c793f36d41adec711e1f1390b9fc288d385","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.124-renovate-external-non-major-f46e4c793f36d41adec711e1f1390b9fc288d385","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1d32388eb1c8ca3cad8aff6d36f3d32cd7e0355","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.124-renovate-external-non-major-f46e4c793f36d41adec711e1f1390b9fc288d385.tgz","fileCount":28,"integrity":"sha512-m1DezpIfazfbZN0QcTe63xCD2rgFcaYyydlhFRcNlEGyHgDwjCz5nISrHm5eB1QM5H9hKhMlC6ZxSsd87C/p0w==","signatures":[{"sig":"MEQCIEjXf7A1kDvom6lQxFnQk06tzvPlkQ49XnEtdKfNTzKcAiAy9GI2oE+UzRVPEkUmN2q/e9rLgp5KiC78XwiE9jEgXA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhm7m3CRA9TVsSAnZWagAAyhkP/jZMqHNx6ep11T/vfBLM\nwqqK7/HOYhXNyyTUy9Vc5cKcBogArWPSS/zjqRX/Hu2SSI7Gq5IAa+sVJfil\neoZlZyhaK1I0Hy5nSQ2pPCuuW1nxxdnRIAg6gsMzXA6j3InBZ3W+d53x3ix8\n4d+oK+uYc7LiJOklz1E8mzmAkIGkOCQErz5DtI1gicYbd64fol4e96CgN3Wp\nqUDsWCZ4XNpcpc4NTUeZ7SsePXoxGe1U58nqbykxEgYMRRw/Zf+Zi4Sp8G5B\n2rxngjzd58eFQ1BPSAG6RGuQoxE+HXI9CFBy+HTyFsdX6EFq93YioGcCJMwG\nzDa0aIV4EBfrwhZPRCXht2fBqcjNcFg9vvictZU84E2Xe4Oj1Fy9uU73ogSP\nh89/AEf9ZZJJYemPY8UW2wj8IiNAt104fI8pc9b+AN4u8ef0zbtEkGDX/qkM\n9HgQaIw0GQHbwTYAffaMrAqP8XKVE8B6sWRU0Qm026lyc7vGqM6R9DqNRBBU\nPkSdvwZ8ou5yecoViyddQZW8DLRvDzSJQ1gfPFciO82rA2Lp9+9ZLay30ZhT\nJYI9fBY+Q30JDzarMdx2Kl6f3zfYo+B/E7GHeO46rAz+ZakcCE9SiCw7AVQU\nP6Ry/dJm0iV41pHKZLfZLj3ybxgFk7DRtz7LpIIG4F2wy35NmQlGdqhVx+Zq\n44j8\r\n=7f1K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f46e4c793f36d41adec711e1f1390b9fc288d385","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-22T15:36:47.280Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.124-renovate-external-non-major-f46e4c793f36d41adec711e1f1390b9fc288d385_1637595575583_0.96025161708738","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.124-joshbwlng-bump-deps-b293b0077a95ac51511f1b579f960eeac4ecfdfc":{"name":"@balena/jellyfish-test-harness","version":"8.1.124-joshbwlng-bump-deps-b293b0077a95ac51511f1b579f960eeac4ecfdfc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.124-joshbwlng-bump-deps-b293b0077a95ac51511f1b579f960eeac4ecfdfc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9356c85256f3aa8f77a71fa71bff981eeb966496","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.124-joshbwlng-bump-deps-b293b0077a95ac51511f1b579f960eeac4ecfdfc.tgz","fileCount":28,"integrity":"sha512-gk9VZXjXFAASV037aV3hw4OQAk/OO9RyDo285HjyGfSF6D+Lz3NCdlWyZKtNaByghVAiadiJzWkPuml9HD30fA==","signatures":[{"sig":"MEUCIBDXN8aj8bWASJEk/kfy9xj4aQV1ayvhM7UtooGeI8z4AiEAjNLji8RETMylI0lEYMgRyOvXBuAlbnzto66N6GCtyqA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218905,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnEVHCRA9TVsSAnZWagAAmPEP/2Fp58ssrkOdvjsSXrvN\n7XOoJahRbKY3PS7j+DqWPX+IK6qATMX281C0FyNIGtPfTvhXJGUN5sZIEyGU\nP66wIx+g5v+Fy7RhBUaEmAGlMWHjDXBXv5onpYEmiS2ApPSS7OK/mU2hArVd\nCD2Egk7hmdLo1vsNivuE50E2VnzwMaOpvwlN5RTF5Y64CLjlUD9+Bf80sM6b\ngGMBUPyK/Zgwt8DQQI0LMjPBY9UIxDN07twkeNnzQoIBXZ0eIvjc8nETf5qN\nql9Ys0/lbkCTIy60cpx8DK6Rv+iD9+dC9Tmo3JsqImm8gbDYsBiBzBKmOHUe\nKGsGNg3bdkm4QRWwpPZcjMfYPV2KlUXUdSCu/BlmRyQMK+D+ZqZ/QpINCEBz\n5H8fYvlOzEbQZtLOQngrssw2gljYdixOpXwr850OurcT/SA4wPJ7cEoWL7Im\n6Vg7JL90auucTrc3r9XcU/4wuU98mABz4iTpl2HBNamCNS3mJaYVQNTmzk2b\nhrffr7/1inIz3Y3OjQhzn6lRucOhDyd/Eryrl/2sZ1lEU0uy95XMy2wOi0c+\nZv9HdvdjY63T5BHQMtlKr/O8+Fe11haHDVvwsXKf6ylpzBFmJ882STiYxETw\nQSzDZSUwgSRGDll124UV/Dths+nPeoHTYO2mgQE8I/jk7Z53DyBqcU8XncuT\nYD69\r\n=OXy+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b293b0077a95ac51511f1b579f960eeac4ecfdfc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T01:31:41.417Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.124-joshbwlng-bump-deps-b293b0077a95ac51511f1b579f960eeac4ecfdfc_1637631303623_0.9909501478622518","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.124":{"name":"@balena/jellyfish-test-harness","version":"8.1.124","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.124","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"73870919b069b20796c7b9d264e92c55ce2ce159","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.124.tgz","fileCount":28,"integrity":"sha512-5P6rY4kPvkEl67Ks+QS4pRvzr1mEZytY2kzdqZ9FRLQ0RjBTLNSbNZhYb1sYIOzGnLBmvA9YJb595rbxULjsvA==","signatures":[{"sig":"MEUCIB2KtqoCz8uE+GQvYArlbD04a2EIBcOzyRqioM5Nk8KnAiEA8M71ymqjDkGGqSADStUhF+PgjGmS3M9oO6AOhH467HQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218844,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnEZeCRA9TVsSAnZWagAAzDwP/3/kaV6S+YdcssdQ67fU\niyU4EGMnns7lC1Jbi/BwQUJ94sjGSwsAnL2Jf2iYJeuyv5AQXadmYwu0s55l\nl/9hG61gJ8aMR2AJzlxUvZEW6io498Jm+ZPyzxkUQH4erWAkHZG100HUsiT9\nGjEsvWhC0vcg/343C2m4CB2raMYzi8yEqUPtiMl3wA2Wj5CflUprZIzKfEx7\nCo39a2QVRyGwSinQEv4HpybnGh/GVATd6HGNbfzgcd1eSHPdHyyWK/5kesOE\nSCM3ZC0+ZNPRP1esgWVUkQoV01rVxCb+xKGz3Km/veZV8Qo1WmxcqFpE+o1P\nAMjMGW2XQw6kR+J2ax87U1nYkEWVG24lqxzh3Y68l1bDEX0ByysFhVlZ/UXI\n56VWFwwkPxL9vPGxF5Rk0nev2OMjA2014C2AzTb7kREnOTpDYMoolB8ROjT4\nw8iaCmKBQWTmTxBgsUTH0HDxL6Uo7GBREjgaHcPV/EwiSbd9wnnPn2vu3vmR\njWMYxgRLnXfEmTrzZuE6p0coGJ39YoGlSOdDVE85dprXOm8fPPJZN3eyUVWN\nLW7SxpYh6fY0srUZyFBdRUV+ugGcttNMnJhi4V1dpwVTrl+wBhNtuuhkOBwm\ndw51/71E48PfDuB48uUSh2galTZenMrVIBG7IW8ZGZ4s99klqePaQXViK+7a\ndKDy\r\n=ZnxV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ba5ea16a83381012ebb0881ace543b58bb401a2b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T01:37:03.377Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.124_1637631582190_0.7519388868508288","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.125-renovate-internal-patch-868430e2262885d601ca11060b67bc61ab91ed03":{"name":"@balena/jellyfish-test-harness","version":"8.1.125-renovate-internal-patch-868430e2262885d601ca11060b67bc61ab91ed03","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.125-renovate-internal-patch-868430e2262885d601ca11060b67bc61ab91ed03","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8344e813e55bf0a3f33b34486707c179398886ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.125-renovate-internal-patch-868430e2262885d601ca11060b67bc61ab91ed03.tgz","fileCount":28,"integrity":"sha512-dyXzWJqw0HEud/jnOknzV46dawwH2Lwr/Pbj6QMjdXM3gcbPv/GUfPJHQ63JN3uXsoNMBhihL2rMgxOMJ6CuSw==","signatures":[{"sig":"MEYCIQCelyP4CCpOO0ATPjqSANWlpsrRrDcFmu5LWV374G4bEgIhAJyE3tcp2ZqeY3mS2JCW4ryLDcGmvw1hBW7hAifcsP9m","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnEcWCRA9TVsSAnZWagAAyQ4P/jwbsJ0k9oeG5QDiiTWR\nGWojepcnVzvuDXCqvcS/AYeEMIs7kV3GkI5xrwkjrGMNLbKPfIsAe+WsW2A8\nSwKkohMYZf0MKZpa8sFXbKd8viS9h6tGgJpkGMH4cMJZdPRXtrapXmjEVqUm\nRmi8l1hP+SF8c0bwgbxghCtf+NOfgrFhX5feWPvUWmjLvYYa1MUqA45VSGYv\nSNENY59GOPc4iCOCOVDd4+vthAYfrrgFBCEDI0XIHRNeKF27ibbyODTJUnWB\n4cDxn8S8AhgOXGM0SMMgBHOxlG4cUE0NgtV561LHlPLtrY2NLSL6W+QuFkl+\nfbjz4r8hg6brYXn1zrqlwYGKwOkYq9rsxfkDBy27+JmaAsamaVyNAcq2Vu79\nKRy3otkoXdAv+hu7wpzX97UapasqV9zACxNdAEMYLW7l2P+8DY0Eiyygs2Ze\nfK0zClnhobm3tuEh0nT0Y85jCPtsUz8tXa8F2xiy601/IncuYOKAvN4Xj41y\nYABcnfE1TVU4xtdzrKS7/hPyonF++VsrDgn1jCFLBfC9T8/bpGjiUZccezcJ\nkYVg6Bop1YsDVbE/pmV80u+quajILz0MYz4YOYFd8veEC/CshrjeT+sXaiS4\nzWbT2IHf2WSAit9qisYuPCfoyovUXJV+uTNp2PAYVAa3Dekf9KJUqvb0jL74\n2kLK\r\n=6v/v\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"868430e2262885d601ca11060b67bc61ab91ed03","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T01:38:50.283Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.6","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.125-renovate-internal-patch-868430e2262885d601ca11060b67bc61ab91ed03_1637631766430_0.13857344216336265","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.125-renovate-external-non-major-7e588c3c02249482eec2531387630750e783c237":{"name":"@balena/jellyfish-test-harness","version":"8.1.125-renovate-external-non-major-7e588c3c02249482eec2531387630750e783c237","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.125-renovate-external-non-major-7e588c3c02249482eec2531387630750e783c237","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab0e9a6b1967fc0691a610345051eb77e739f3f6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.125-renovate-external-non-major-7e588c3c02249482eec2531387630750e783c237.tgz","fileCount":28,"integrity":"sha512-m4PXkpfefzadcWm184D9EOek9XWQzi2UUqBWdX/2rPN6r9F/LVM1Kp6+c3kCvi62M1Ht0SqwTNly+gIu78ltSw==","signatures":[{"sig":"MEYCIQD7qksCe7R6i+4iI+X7YF4IJYPWJSOZItefoUDlU3wChAIhANOszFpxoyLPpS1Oa6gr55CjoAT+uQVB4ExENVWqaXcv","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219005,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnEd2CRA9TVsSAnZWagAAmBMP/1cJtRq7CO77pAvuihpk\nNLPd4vhs+W8xEv4ydDMRJbvuEazVcC6/13vAM6I6Suau766WhAyDJ+HQumaT\n3CYg6tRdxE8JOEFGK5/M1IllPBKvD/YrKtJYMB4R0cdhqpi928rYa+RRsnRq\nvaAlwwn8SvRpIv9hSBww99xzuoBGuI03w+WNxjmo3IRH38lQozNQrWwDsMsm\nMjJYiVNQUI++R0kJBR/jQRM8uxtn/iep5tgpFkyd1tGugsHcCA/D6iWV1vkG\nTOy8MU8uD4kcjKJ2/sy9lpAoniLGhrao1nMHEefG+gXSKbYXL7Qz53k+TSMC\nwFZ9hC4r+Oufyl2gM84+JIOBQ8B2fhSyKjXL5m9IM1oVRWuGFivL8Pn/80zG\nhkLG2J9wICqBbLJ7Tusgq1XaUMKB2h2gxtU35GhLG9Jy7YDDuKw8n8N55QGC\nrFIuuiRYqr2JDttXaxP/aZDnTVmugeVZK5rKqGMhJGVkuRdy7z+wDvGXFeAO\n10Lil5amZcH3X/ZgRH3aB9dL19FK1sKUHOB8mv5ugnh3Gb6MIQ+J1VMf2iJk\nn5XTVHMZXZXU9E1lpbTiTwZ8JOddnK3XIyyIh9HHIwh1TWZ1YNMSNLj+0wMS\nX3GNKo2ZxcRzZ5uh/qdzE7JssbWz1AuQFtz3mmoy6jV/Hpgcl1FyQRZixv9j\nShle\r\n=3JRW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e588c3c02249482eec2531387630750e783c237","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T01:41:29.815Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.125-renovate-external-non-major-7e588c3c02249482eec2531387630750e783c237_1637631862378_0.5833931566452244","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.125-renovate-typescript-4-x-06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9":{"name":"@balena/jellyfish-test-harness","version":"8.1.125-renovate-typescript-4-x-06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.125-renovate-typescript-4-x-06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bd9fa1e4f3fb4447eef9479b08913408df19f9a4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.125-renovate-typescript-4-x-06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9.tgz","fileCount":28,"integrity":"sha512-8sS5rStfhcE9omKQrbHevgizKN7KrYGpzUmfyVOk9Mmmx242tU5zqDzu7sVkmh4f24hEPDlItRGIMy7iWwu/Vg==","signatures":[{"sig":"MEUCIQDij/Q5snFRgL9Pa+KIcs5DreHjBIFEsRIjLURt4X649QIgBRxDQXmw/NzuOw1q1qNz+U7+9FDOphAuB5Q5uYMu494=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219001,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnFqyCRA9TVsSAnZWagAA9XEP/iSAolmNTxC3FfzFRJoo\nJt/EBqlNyD7XTvrvHlAaol3uq/lPdFk8PpE+TVO7Ydajf8xueZ2HvQWauZOO\npafLoJlV1U30XcylnuGAsPHLlew5JXmFqgGuO0nvcCiZP+6HQlZtGnPvAb4J\nJLGvRFpJadiw6MChQAkIDkHagmHNbwiM4rVoAbnM3CXAkgN3U9qyPGV4anob\nhxZLnWVabj6LmEC3vnxSuZOOenSRXr2P8CPjXTIm6+2pXyRgn/h24y5zOyMr\nkM0YKoPgb0NE/QmNuu62g1QqupJsHc3gdkx6qFiz93ShfWbN9DQBH/eAWdCL\nthpJzkwccHNkpUjSjUFZMukwUG49xhJ1q3sNG+oOUHc3r2zbXt0kVu0aOl2H\nEAwUn9qd0SR5Sxh/4wsfSv5OwXv/YbQPL77hWuzvg5CYpKjtL/A99cgxpBup\nBceajakJR9zGggSfLnDowu0caMzfXyjUoUPNBTZHAivr08DMvMZy55vRCBV8\nyruq/0RdozShqcVA7gU1xkT1IFl8bRdCLXlHUgGv6lLKHeBxMJZ5g24oVXZG\nBa2RgLkdGzMfA9PEeC2L6mDERiqUIGN3trFosfzdeOTWiN4SY4GDBiXMMc/j\nkDh96S/7YZKAzqHEORlpV3YNg3CPKNJJkeZup0z2qlEeOEgDJhO5WUzCyGAX\nnei1\r\n=UpXc\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T03:03:51.441Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.5","@balena/jellyfish-sync":"^6.1.89","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.292"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.125-renovate-typescript-4-x-06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9_1637636786801_0.35269556781961087","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.125-renovate-internal-patch-47513feea0f7b86b6eecb2edc0991cfe2a4e15ec":{"name":"@balena/jellyfish-test-harness","version":"8.1.125-renovate-internal-patch-47513feea0f7b86b6eecb2edc0991cfe2a4e15ec","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.125-renovate-internal-patch-47513feea0f7b86b6eecb2edc0991cfe2a4e15ec","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e47424d27e4edb110b429005b28fc0dee53f4270","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.125-renovate-internal-patch-47513feea0f7b86b6eecb2edc0991cfe2a4e15ec.tgz","fileCount":28,"integrity":"sha512-66Z48//6eJ7ek3h6jFzAgWTRmpc+8xYE4xqQvBFFdZAByVBjpGUO9De4hb10jj9uf1C8hkyolOWKa0GtMTZLYw==","signatures":[{"sig":"MEUCIQDXlkwBgs60vWpto2Y2aJutPLco0O73QcCGI44uP/9DHgIgC9JbUVbCJY8sAWDz+3BUN1GBPYzwZDC0UGmB01bIkOI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218984,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnFrJCRA9TVsSAnZWagAAhYgP/2LctjcdXPstNaop8YeM\nn5Jxk837Y4TnD5YTT7jE3IgSB9lKjqM1aCWB/oFrISG7NeXCWDpg1LjuTEfv\nA6JujOpl+ViYXx3rz7lwxqT8X1ei4arR2UHVt1LZd4a6/z2VEtc+mw6YFwk5\nGijNkvN7tcbX0bunHEpdNXYGoZo3nICVksa9SctqSc8aq8M82hZLKINpbLzo\nF0J5GlnVtJmk1Fc90WNF1yo1MV222JO2RIfbqbMp/dfx+FPBrwKpLhokYWeH\n5muVtLbAql6BdFr3pCwDLSsJWQWdShsY5VezMq8SiUZqYlJvUDtYXSQ7TrSr\n8E/rRVk+nrR6/N/EhzXWNWlNzP4eI3yF9TDxhf5lOf5DdptT6orO444vA0u1\nShJsLQcH8HAc54FSnNO1PSl/DJTA2EsHVYke9J9yMcoegS8AV/gzbQL297Nx\n641uzKEqXE7+8QbfWSVT04o0WYth6iW+ooNgRbELWewbvUJBQJ61McJppOBw\n6g7wOSAC8pEmtMLcKKYga/7Up7d/7CpYVBc6av0VgeiH2RkZXUDciEjEr7Q1\nELRAOzWDHwQA9CAqTZFpPcsiidOujPzn9QWfWFi8gBJGfG2Jn6Wm3zh5Jo5O\nqLP/Oem+lnyklRhTg/J/WDx7azJFjhQKrA0z7YkwGK9sW9uXr+JAP0mTCPa0\nNk8o\r\n=/zYN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47513feea0f7b86b6eecb2edc0991cfe2a4e15ec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T03:04:01.244Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.6","@balena/jellyfish-sync":"^6.1.90","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.293"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.125-renovate-internal-patch-47513feea0f7b86b6eecb2edc0991cfe2a4e15ec_1637636809066_0.42585500688083533","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.125":{"name":"@balena/jellyfish-test-harness","version":"8.1.125","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.125","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"94f737e9935072ef1474ddc6f60b103269d8578a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.125.tgz","fileCount":28,"integrity":"sha512-Qq0vrHgrEuKFA3h1CW0O72AQoKYz3hT6jWJ+TzOkd5ozhIW1T34k6M/Fg2h6OBSRwkCsHa5hWdAKTZjnxbI3Xw==","signatures":[{"sig":"MEQCIHGxSf0Y1fyDkjDsseU9Qk2rQ/5APjMOF8s6mjme0zZxAiBQImm7+L1TGlZ1jIGpU3oeqLpzch7gzyi4NjuSI4GnmQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218919,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnFvDCRA9TVsSAnZWagAAdX8P/jFDD5NE/nCF9eRXiuvK\nQoYBgWi/zN7Mr4ZPODEUhNWKi3WrrXet9gYdULtAPkzl1NkIIsXo0UZsYjXX\nR2hmy2muGvC7o3c46bikvDQXjpF5Md2euW6W/9g9xxTYJ/cah5kdWhml/VUi\nGFiL0Iuf/7qN9xrZ7i6SZ4NrplCGD/v8gvioR6G1oPqW7SkNLWI1r6FfWl4L\nM2AzIp6xlKmEfbLfJRX0mlLgYclnnBbzVDH4ggUOz3fAe2VdopS//emRer1e\nxcB/wWqbOUWbwpmO6U0ED/aHcwIEEARaf0ahzOXUle5cdPkjc3FCkjPmp9z8\nIs8hvSPk7dbsYgZK6jPb4IusFvTkq+cj06gBkOTCIImdbfla5JQxgFHe8qDj\nGZ+ZURILKlDKlTbSQMXj9vGc2kaLy4FD1E74kaCL+ho8BBAldZG0PP8I0Igk\nCXYAdAcEQ2PGbUX8mZS/O16WHkLFUxvLhjGMwdb4bnJm4D96VFz2FouVU6E7\ncztWn3wnfvfju/WzGTx3MwxK/0Euff6ORFfpJV5cK78Fux/+9fd+3D6Iiy7A\nIjVMlSQniNdZpUj4b2Vphwjvr8eVD2Jc3EGDAtrdi3qYSPXTF6GDB2JDPEde\nB1LeuH5Rd4hBVpCwYFp0frv0uYH5j6SNcXbYF6uPotjRKaBkTsAOMfWqHnQk\nhtu7\r\n=jh3K\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"54632b94371c86fd357b9fd9137bcdd280c19bf0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T03:08:46.289Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.6","@balena/jellyfish-sync":"^6.1.90","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.293"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.125_1637637059466_0.9107462033273099","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.126-renovate-typescript-4-x-bbd0af1888850ce9a66cfaf9532e3558c92edd3a":{"name":"@balena/jellyfish-test-harness","version":"8.1.126-renovate-typescript-4-x-bbd0af1888850ce9a66cfaf9532e3558c92edd3a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.126-renovate-typescript-4-x-bbd0af1888850ce9a66cfaf9532e3558c92edd3a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e687d52ae73cd7f730fb777af80118b6daaa7f7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.126-renovate-typescript-4-x-bbd0af1888850ce9a66cfaf9532e3558c92edd3a.tgz","fileCount":28,"integrity":"sha512-hvZ++xwrOxNtzH6I8QucoGrSgMFtutH28JSthxKo1auYqGMjS8TljNTeqYpE18kmzVmS/KsAdvLsi86gyQP/ZA==","signatures":[{"sig":"MEYCIQCiwVyn/SIQvtEPzBPHi8FY/YRWvxzzP+CYykvKmIGeJwIhAKD55RVIOpm6Ql2GyHevRy1y3xHdvSziD1liJeDhNs3N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219076,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnFzsCRA9TVsSAnZWagAAiFcP/2mflc1a5llSLsn9emWA\ncsJIlbol0QO/jUQbPS5BpN9bve5lc43wobI1LI74k9e3XDb65CpUmh6a7brt\nXSQ136f/ts0m07f5mjAt0NS1J2Tqg/hMPfHiiHjkeAMNQqBwz0PDHKcAixvh\nob77qLmvFEuV/DN8YL7HvNVAjPtvHBKg3WOboTsNcql0QDkVYvQANjGyvpA4\nxDtdvapHCmGJtoMGFlCdLulT/Lt2HUs6l3qDolulPVprBT4nXvtlwuvzz0ob\nnmErFvV1/OzM2bl+fPuntBMhTVOfbncIWx9TWKurLZVYcr3W6OKpJo5l5S2e\n0hrpqUci/1P+whfMD0UwAI5yvjHxdOj8827ZJgeitm/Aoqu1BDNJd/8t79ST\nflFkqISRZldRJpJAFfN187C/FoTCNiDTq5xYIp5ZT6Z5RS+D7Hk3nj8AqNuY\njYz27cfDh0ULdbT8cGYm442cw3jBRpmL0nLF3JqTbKlk3tyRIYIjv+oATBzr\n1fhhwvahvAFiHEqXPdO3a7EUd3ltYg5xcGT8U2Cj/tXIuBRw8Mlr1pK+DsJW\nJpD4MupYt3ER3e8d9a4T37/tihFk0Ds2a/ZOQc7jz+yv5ZZwYCzGO8lsxEAF\nAl+Pxci/GNlN343wY4seDK7JPynnfQ4rWupy7XGubpT3W98J7E7GZ6hidt2C\nytZq\r\n=dOoO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bbd0af1888850ce9a66cfaf9532e3558c92edd3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T03:13:02.407Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.6","@balena/jellyfish-sync":"^6.1.90","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.103","@balena/jellyfish-environment":"^5.1.14","@balena/jellyfish-plugin-base":"^2.1.293"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.126-renovate-typescript-4-x-bbd0af1888850ce9a66cfaf9532e3558c92edd3a_1637637356472_0.2648366904117172","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.126-renovate-internal-patch-ce99e5f6a202251386ee02240a84b5fd3aae9e11":{"name":"@balena/jellyfish-test-harness","version":"8.1.126-renovate-internal-patch-ce99e5f6a202251386ee02240a84b5fd3aae9e11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.126-renovate-internal-patch-ce99e5f6a202251386ee02240a84b5fd3aae9e11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9bef63d6a4fda77e9d4ff096d14e4534c4e51fca","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.126-renovate-internal-patch-ce99e5f6a202251386ee02240a84b5fd3aae9e11.tgz","fileCount":28,"integrity":"sha512-KSiwmIG3lhPK0t7/C4IJOjSoCuWUNOrxf/IFk77hZSNQ4nTbb9X5SQGd3nzpV1smhKpU196mQ7axfnAEcVCcFg==","signatures":[{"sig":"MEQCIBEmt5yzbsgguDi+bb4dDhS5qQjxCdThXmJa3brFhWW3AiBwDLGbZdOHPJAzfzHOfn+KuPJMpMNH+gHTqVRcc9cNSw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219059,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnHoCCRA9TVsSAnZWagAAyYsP/RX8gf+m9YbbyOuLQVXT\nOoFK4eVFA9Qhd8gE2Y2MQd3p7jj/rQSUx+JmGEdqBqs6N9JLeAvioFIHt+u4\n8Nhz1bYK79V8+W1tWA0Er+va5k1uRDhxqsWYeLCVHp4rxCg3nbvhBEBsNun4\nZt0/5BesN9zRHWftg697keiGqDN2RfwCaBak3rmhH6iSVnCQEoq29+MJmp7n\n1ZMNVLnA69NwTtIyPPqeep1H7wmK1KehEVyVShHqK4Ri6kj99Uq6TRz2+xO2\nMvycMGFt8L1MekKzEPtwfECs5unZxubzTSbsfGniZ0kvKLjrNFmN4yP/UXVu\nMF8LXvJbvNHKwwP0oDcuGiT54Reure0U7xB92Pwq+Kh9Qz2rQKpu2DwIuUjc\ne7KT32w4beVz0DCVu2p9aI7mQcltRAGZnmTDyIcnqc3FVTEY54OW01Uhe/dz\nwTaG8ecjhWFR4hS/4F1uHqEREtchtMMfHFK8Kq8G9+tL8yH04YD1BH74OVb0\nP+Aj8/uLbkRzzOPZu5zDC8NnHs8Y9U+JIKdFetqiraOKbnE5vFCASz2Dwwyj\npr8oycOByRmzdydY8OnlYdoLvlJ6y5TSp3h2ux2w+NUpAcAQi4e7lEyiIgdL\nm3NUgSd9Ojk/TpLB8sPtHtw7sKJqiFIqihofC53xJiI0x0P/T1DzlLOsp3KJ\n8Vz7\r\n=OPmy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ce99e5f6a202251386ee02240a84b5fd3aae9e11","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T05:17:08.117Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.91","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.126-renovate-internal-patch-ce99e5f6a202251386ee02240a84b5fd3aae9e11_1637644802326_0.7131716462069817","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.126":{"name":"@balena/jellyfish-test-harness","version":"8.1.126","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.126","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7502f744a3f98bba403c7a7b2a5e7f5877fe0fa1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.126.tgz","fileCount":28,"integrity":"sha512-bxRevvDmTiKrQuq8pMWdnAmbPIWRHKPVe8V8PIayBq1jY3Y1+C+VuAgPricX+mQvSS12w3VFagRilBa98x31KQ==","signatures":[{"sig":"MEUCIQDUjhI7tRiMEB4DkkG3a7u8U0Bp/FiwKXUwq4nGkrdf6QIgJD8gMEJP3CnnzYpM3iyPqaXV199auNUY3JANPLJDMqI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":218994,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnHrECRA9TVsSAnZWagAAlKMP/0qIk/W5nKL6f7W5chqg\n2cVmo//6dJwRqpThxRZSoN/ydX63Ixxj1zqLxJCVBUYSeg/oXswb68495glv\nuUTRwfguW4Ulzd6VZAnYrNODKFO0uGnyyuFGaDExJqXxIDTvrIClURpGN4jF\n5VkCpOR//M34OzA+LDC2vW0pBmYaFBcAuz3X7vO+0WOpbTRoBOwfZUlHmPpg\nq6Rdhj9cVHUPoHIaooTTsKbg04BKEQY8ba5c0aYnpsL+2GqRXoXMEI9qmC4h\n1Nw71Oo/6RuMeiz2/Bxeh8ePJSk8XxddJPxwsozWHCIMnvKdTY976Y6cQrrM\nD6T314c3DKDZ/s8xkO+ThxnO7tbWtTDxEab2of8MKDfltZSMMGaP2sm5Mex+\nxTRXLVUaRzuBWYBZaE9m3AN+roiJz6E4WkzrgoEzJ+fA4UmHCDa0LqiCK0cE\nDKSHWSJuIERkI7Bt0UFmrZeWhPU+c/KQrI3Jff/erqouo5yKZwRCPSuVsv4i\nfXPhNASuB8mKW8VASK9wxNU3L90DqhlPK3jZwuhI1Crjw1bbp/CwROwjNgbp\ni+7pRc0mZbDRdZHmhgC+I9809LHX4aYBY6TDUdK5R82DcR2Sl5lc2l5jNJme\n4sOlkbfA4YkJUVykvBkElvmKwaWpU2KTgYRhbIbE8FglcQ+I5ThuUlGvhdRy\nHffy\r\n=5GoG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"55a71caeebf7cfd52db08c51b240ff8d516a3bca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T05:21:10.139Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.91","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.126_1637644996674_0.12762505210368857","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.127-renovate-typescript-4-x-605fc171821e6f853bc543ed66e33e138f3f92a9":{"name":"@balena/jellyfish-test-harness","version":"8.1.127-renovate-typescript-4-x-605fc171821e6f853bc543ed66e33e138f3f92a9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.127-renovate-typescript-4-x-605fc171821e6f853bc543ed66e33e138f3f92a9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"007f1cf4f085f9e23b1d081116c89e35080a7c56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.127-renovate-typescript-4-x-605fc171821e6f853bc543ed66e33e138f3f92a9.tgz","fileCount":28,"integrity":"sha512-noLWBLs6BG1tGvviWcpE+9YhuOA0g3Z2I/97mdcJj0zJDt0eky8SOpgZYEucPvq+yY4syKt9Yk74wEQ2gVvgdA==","signatures":[{"sig":"MEUCIQCBJWHP+f+UAHz6sP1Id4iqY6lnNi0CCuhlxTOWEhe0xgIgOC6LRjcQ2HJQQum3e5ScmIZJ14qpFOUId0wMeZ7RVhE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219151,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnHt0CRA9TVsSAnZWagAAKVgP/0nAPyFTeZmwXJzQB7uJ\n1zP1bxuvsjcI7NoUsWBkwRSHUlJY7zHP0Q2bK1uJWDt+nzbGmb8AgMizOqBW\nYWQ3x9h4xqA6Zgv96GaGhIyEKu6LWvdqnY879Nf9+jwvo59biC5QZ9nSu8yu\nw8KlhCWIbN/j8nqXseGUCz6sRfomu50B5yAWD7tXlY/aLMNEHPSOLtgGGj5O\niJcFwirDKFb47j28UMqqVFoq01BVSZCMKi1Zc9OGd+Tn8cdwVfRDw8g6uidB\nY4mJyxgatyi8NDqj+YIh9MtVmZpamp9EHwQhBGEbEluarnQwhjLOa8Sk9f2V\nltrZlgxivHRM4ikSDmjPlPzexzB64NkldD50DXbSAiMBsRLie/DnJ7JbNkN9\ncI4joaHTjUfL7oFmXM2qOaVOwN2zL1ztG18rQho3oDj+WYoblq9tIQNglOcL\nM4qFqiPbdh/t5vXUX7T16+zKs2JBCl32ouoa9JcATSPlBfCTQKIsbixG+FUr\nVMrjFIJRXDLRZevqMMwovpu00gyGgtpxdXIWPKOKPNP2j2SNcFdtEXzG3iil\nxoTy03HwVvKsCTPgRNCxfn9U1geduUm6w0XPln6Aqho3vbE8zsj5kvH2sbyR\n5b/mXmbxRSVhjCS3eUmZ8jT83dA9opGn0Zn2QZnXZcDXJ16uMdQA5f8AG5QV\nZ6QD\r\n=Ppmw\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"605fc171821e6f853bc543ed66e33e138f3f92a9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T05:23:19.330Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.91","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.127-renovate-typescript-4-x-605fc171821e6f853bc543ed66e33e138f3f92a9_1637645171979_0.869033055658571","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.127-renovate-internal-patch-add8a2a6cd444da82dece3def2fa0cb44c06c54d":{"name":"@balena/jellyfish-test-harness","version":"8.1.127-renovate-internal-patch-add8a2a6cd444da82dece3def2fa0cb44c06c54d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.127-renovate-internal-patch-add8a2a6cd444da82dece3def2fa0cb44c06c54d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"314dce52c510845a5c5e587cf497d2925af81445","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.127-renovate-internal-patch-add8a2a6cd444da82dece3def2fa0cb44c06c54d.tgz","fileCount":28,"integrity":"sha512-+tSKRlKTGEf/PiSKt6gSiqOtTsKUQtiF68y5Q8/TvZjD0HXbOAkOZvq9oofex2bMjdRHNnkVTX/5PSClQAUH6A==","signatures":[{"sig":"MEQCIB3vgwktTGsEer7Rk8/gS1Yfl7cO4712aSLhqyynLfrlAiBhr2xRPeC05lR3fG3BqcCSv5FfMFxCADh8Y2XUSTwg+w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnLJOCRA9TVsSAnZWagAAnW8P/1rl1gzV7ThZVy02ooS+\n5ns2xTkI5G38Oo5DkwBzHz4VkVP7lz7n22y/gV0QJgdjI+a6IlYqCYsis1Lh\nQvL+w+ExGpdb9VxeKOy966s0gS8r8YSrKxckxdw242Dy5vwVkZM5Jz5xu7Rt\ntRESaC/6e4Sr4B1yaJwXDbNbR8zWvJpAKrSmhbAckOkfQUZ+HFzVbb8vDnKw\nQigZakgnF2gN37yn0OsVhyahYvihvzTVBM7DnA4NrijqVLUwvu7QAmBdVoKo\nGGu0VSCl/60vwehnFLHdwyxaWigNY/LS+GJINt8Xd51Uy9LpJgfwkzS5bWAp\nVGRDz2iqzo3lp35bteB1v9grPKjIpee1YXY0aLKL8/m5Ia7BTOsIsl6cGc5k\nmB2V3zs0gdGvRbJkQgf6Kyk9INLbfb4JELtc15ee87SLpB9d0cOOrH3pHcBS\n0YbESl5qNhnv64nd95qv9JGwIMzgU6WAqn7dx/LT0yPES5Z5419Sdg1eH19o\nikVXaSHAVGbnaEIJ16w4fYaGY1RcrGLDTALvlUuGTZXjOwVlnATafk7kgZKF\n+yeH7cwXJ07I/GjruGRJ2Vq8TSkRZW/JM5d62IYgT5XzXde/bRBLBlk3sTGG\n9F5ip7Zixkk+Tza091QvH1Ww0A4KRxxf3OyiMuQto1qDXoABhrHNJWi4bloB\n8jM9\r\n=dafi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"add8a2a6cd444da82dece3def2fa0cb44c06c54d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T09:17:35.373Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.127-renovate-internal-patch-add8a2a6cd444da82dece3def2fa0cb44c06c54d_1637659214216_0.9682949235569629","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.127":{"name":"@balena/jellyfish-test-harness","version":"8.1.127","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.127","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5525244caaad0b3757c84b3ea67548a5bae74f32","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.127.tgz","fileCount":28,"integrity":"sha512-Pb8twqPlQDlNw35gICFwi1Lgt2sc0pyooDx2uUm+kX6N6AlZd+4gEuoinrv54rB3BXFqEjIrwfrzzxepA8CNLg==","signatures":[{"sig":"MEUCIQCSDjOl+PeBJFyUvMoOre1/qSVX8D62kWfjs7gvhD69HwIgXVSHoaSaNYicFpuueU9mq+NQQqD0w45RuP9dK8TqpHo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnLNMCRA9TVsSAnZWagAAruwP/2987RDouIoMDsaBsyL4\nSHuomlmkMU02ukn8+XJ/EuIfSYOrhPllCKwRv6/9v0aYRjBvZhkc6n/J0+yU\n2Y86IQsFxHbgVT1ImzXw91wD74gXuNOVZMeWV36z1KSKOp7BxNaTI6kgzcPP\n1eorp+RqenrEfJsml31Z83RcMt+BES0sbWc5px8lDkbRhuhiOoP93cgiRsbh\nlBM5p99ixyqTPRVC7LKqQeMuBP4B5an0/aFvtWGFrZRhQE6IjxQMf6+OJjmP\ng2BLkfqAdzK7z8XGePS1WZlZ58AfpNZ0NN+FfFSD+BIsMthHBd1sU4d95CJ0\n6wFfmBsp+kPg3YhDwVcCTpJpdOSVTlSwW0GuqQp2/NtzdbxtFbjUGfWc6mxR\n3cXI7A4pyA7ldWz8YFPzUzsADBwkrtmf4qfXvePeFZmeNu0K6djxW9n4gYO/\nFJI0KbY7E/5R9A6/9Ly8kgXUIdHxhbY2RQstPMcnBwjquxWAKKDoBFgRC6d8\nA4zMyfLK1aKaspyh+5A5XfkiWcOnWbAMM9Iw4sVBrakBOr3jBGTzB7SUwtDq\npl7sAQzFX4xwDIYiX1sYYtQzZZaQCwnDh4WW1RiSoFmtIrYrSNcPGson1HuB\nS7qe8XujNjKyVLst/zLoUup6jyP5+dJdIH5lqwJMRqefWF2KXrBgmfqAaRUe\ngtxc\r\n=D4tW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c1e110cd179ea8d393550276370c13e4744cac7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T09:22:09.909Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.127_1637659467734_0.6641975593181233","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.127-renovate-typescript-4-x-0455710c4126a124c501e681431ecbe894399263":{"name":"@balena/jellyfish-test-harness","version":"8.1.127-renovate-typescript-4-x-0455710c4126a124c501e681431ecbe894399263","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.127-renovate-typescript-4-x-0455710c4126a124c501e681431ecbe894399263","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6dfb68c8e0141739b1cfd9cfa9eeba81cdaa57d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.127-renovate-typescript-4-x-0455710c4126a124c501e681431ecbe894399263.tgz","fileCount":28,"integrity":"sha512-quv7Sq0crbZKisOEl7gO+mlcZuQfslNLOEuz4SlTxBc6MR+SDSExC3um5RDvYB1qWgxlmoBSm1nfgjpm/qw8ig==","signatures":[{"sig":"MEUCIQCCL736fImBQKpNcQteFWLR6AS9at8vY1lxjcwyGoXvXgIgWGNfwk+FfJfS35p1a8JkVMtSbCN+6NesHEtl6ObGEEk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnLOzCRA9TVsSAnZWagAALPIP/jcP9ztHg86V08wNorVH\nm/xdVNKr/ivySqH1YzuFA66DOHFTgEMuSn14lupPDUoIYpMkISMXNJQEdqEI\nUn1B9kOFPhHZNQdj26Acnm4fkYzykp3E82hbfRl84A4w6Ksdm/y0WNbWY7IE\nAtc5iIanLGW7ZR6tIn3SJLK55/DlP1eUFtdWe1qOh6Paz1QW9FQAY01guCfs\nyV3tFL2BRm1AQmKV9IN5N5kA0gwjHxEQ47UtE2EJjzzKaKCtscnQ41vCO0Mc\nHD3zff9ClcnBONWbNh4B8qHlQG8kjkoDCrWiZxAKu0xGkQVFDObTeF1tWqim\n2AYbMtp7ifCekQUeElSdv1IioqREwQJpQ2FTe9n2oiuU9+EDEcvklLa9BDmw\nKh2+LwbyHazJN6xIUoRdb1nEF1Iowxds2UnW1VlooPvsUuYqvltisdaTGKNq\nn+yT7aHlELRZYCGVZeM85ru06mh/MlZyQQf2+enbqSkAGlWFJMBxZkNBN/fr\nkItriuak4+dwCQz9ndT3fV0QQkcTd9hGz1n8QBXjhuQld++1lTkcQCeJvH5r\nQHTnTQ3z7QevUyBDhzS1RYE4BgqcltPWkOOyk0KfW1LAMdfJP9JVvmX8ZT/H\nk5plztJn28L+IzuswUBgkKYxh3otsjcQBnz3nuiUZ5Rruzhev7yPsCJmAPrz\ngSe8\r\n=vOfE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0455710c4126a124c501e681431ecbe894399263","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T09:23:35.354Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.127-renovate-typescript-4-x-0455710c4126a124c501e681431ecbe894399263_1637659571544_0.5018942288156456","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.128-renovate-typescript-4-x-cb5ec2c910849b55b4f3a109edc78216dc0239fd":{"name":"@balena/jellyfish-test-harness","version":"8.1.128-renovate-typescript-4-x-cb5ec2c910849b55b4f3a109edc78216dc0239fd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.128-renovate-typescript-4-x-cb5ec2c910849b55b4f3a109edc78216dc0239fd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ad692eca49aada24276785ecf13795e7bf42d93","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.128-renovate-typescript-4-x-cb5ec2c910849b55b4f3a109edc78216dc0239fd.tgz","fileCount":28,"integrity":"sha512-xARHOs8/JoLPlif+f9DqOnVWFhFdC/m64hlYl+olUPbHe/Bw41ivPjTLBhlKDjh3fTmwh1qm7/otnBZEPcitjA==","signatures":[{"sig":"MEQCIF+F+q5x35UzON51k3deD17qyjWjjpi2yoMsSqjJftY8AiBgnfzZyMFrsLfEyoIkDp7QxJCB5ZxFcy47XjsWzflK6Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219256,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnLRJCRA9TVsSAnZWagAA8zoP/i8/t3QWfE+tSOr3+kUZ\nbbUOTRDKYrVe41u69lu5E/Fr5xS1NbOzw5vapWXrdXrpuyJ3jq6y7r9IBd+T\nePR4gprWcS1kjhPR3+Xx/cYhu5WLBtn2boWuBjhpOYV35m+AhXKEgCe7+5jC\nBmXw0RdnYqQ0qJ9gDaC5hil46vSaZNN0XwNDhKSD9AoUboyjB6WOcjE58HJq\nXEeVOgLcmJoTenNJaZFrvtN+orOL2Wijq29HBn9pChsI0ijWxDhz3vce8eu3\nUVS2U8K0oUdJvYbqWDjKXbQBwZIVDrAvBTWByQqSfnyMpavpyblwYz2s5MtU\n7Fw9qUNHLSwA1jJKGyDUVZ9ixvaygtiUp7DlZJm9+MCRU/Ent632qdTlGxdT\nX7ACDeTOmfPShfICkW8OiYzMYWQr3wNLOyEKxkljE7wut9p0BVVl8yzp6jX7\ndV+ZhIKsnU+lF7qY65RZd5Q6tLMGZ22VFy/kDms63JM6FKLswmyDzvpdYHxs\nkIeBVcj+lCfAFva/h3w7ZEnt3EuFd7Y5sAfNA7MuGHgt1ND28OAfkptiTkNo\nc4MINKDNYY2eifFJLbhTw5upWyTot9xMU3VKtGrj63cv/Ig+rhGI2ZZsan+V\n6XG9U0YvGf1XzDdJfhfRI0/+cbGyFHaoVZ2+2UQnMeEH8ggrO1VO1WiFJQJx\nw0hb\r\n=36LC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb5ec2c910849b55b4f3a109edc78216dc0239fd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T09:25:31.882Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.9","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.128-renovate-typescript-4-x-cb5ec2c910849b55b4f3a109edc78216dc0239fd_1637659721501_0.7997845777758181","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.128-renovate-external-non-major-da190c5897b76f123a8618b81e5fe226d5e05acc":{"name":"@balena/jellyfish-test-harness","version":"8.1.128-renovate-external-non-major-da190c5897b76f123a8618b81e5fe226d5e05acc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.128-renovate-external-non-major-da190c5897b76f123a8618b81e5fe226d5e05acc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b657c327226d5a3eb132ad5c42d55dd97ad4229c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.128-renovate-external-non-major-da190c5897b76f123a8618b81e5fe226d5e05acc.tgz","fileCount":28,"integrity":"sha512-pWUbhaKBNprkEf1rOwYXuAhnhxxM7HULtAkVMVorGlok3woFQqayabsVU32GzFPa/VFHSIK0Xkwc1FcVaNZx4g==","signatures":[{"sig":"MEQCIBTwiemlzunWdvwb18l5fp8NJpuq6zyo+ZqQZK52ADP2AiAQQy2uMFenXvHEYjzhmMzLzE1ZQsb+XtMd+vDCBlP/fg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219265,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnUtZCRA9TVsSAnZWagAAwwMP/AnVwh2K3D3uBrkeef+G\ni7vaQKQ4qxfX6Rs3wHf66I4htEErmbFFWWmvIm9KEKDMCtoKv4q4TegnXS+n\nfZ9BECuMou5dc4cqXWLJMMGOmYLn7PAsgpkfgzh3JH6rD9eEBFZZhhRx4eQL\nIkS4ai11Jqw6+bZ+Kyh7c7k3eUTG5YasQQm3Q2WpO1u7SXv6H/1vKi4Lccx+\nrDSvkeLR7q+/aq4pXn3+2pC0DgU+xNR2B9z8yXPTEjltVpQQUyfAqLz2hojI\n1HsnfdYBokroonGfzCyWgwkQHmQqaKeCbPkLmUubQobAYPOEAEdlnQYrg/go\nNA9fUTu7slv1WtuLVswvmEMlzjtzq3O9oBR0FtxgQsaX3NI+3nEtNGSuiXLS\nSnhNx4hQkcQ2XSMpDqYJhNamfrlrDt7D3LMMKngsHZXO2KBB5KDKnpj6H1/D\nMSj0eJTb73yboBMf/anRwvz7YOi4wi0m8+iyvCDhV9FlqRDMaQwErxGiq59u\n1ddqT/1qPwE1qlIbD03j16Vl3bkpIogFiBmMHC+zIgUfRf1fbE3pu21hDaEb\nxKYnmxEuByy14LhRQl57xUaGhzJbaJxSfvDw12TJ7tK5szs4PPrhdm8kfS/V\n33kJIXrZu7laDjkXJ5uclUTabfC/3jy9CL4MvQZgn1bNaTuNTS5Jt1bJGqqm\nfMWO\r\n=SCzi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da190c5897b76f123a8618b81e5fe226d5e05acc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T20:10:01.014Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.128-renovate-external-non-major-da190c5897b76f123a8618b81e5fe226d5e05acc_1637698393252_0.04955329865751579","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.128":{"name":"@balena/jellyfish-test-harness","version":"8.1.128","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.128","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"42e928d935527dcdb77a20342ac45dbf351c96a2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.128.tgz","fileCount":28,"integrity":"sha512-WFfjAPFpoD+IyxVI+HaNhE5hTzNHfqyeLzyv6OvXfP7s5HgkqWaL30KFCU9haG3fiDuUBNeXnXAOk7+M0//RVA==","signatures":[{"sig":"MEQCIAnmeaVBBV1aLWz6IZkF9TPCrSJXd3wk/9JsYYPWt6jLAiBq0IIdqH8+s3/4HE21o4RZ3D23QtxThDCjK0gIzs0zcQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219196,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnUwDCRA9TVsSAnZWagAA/I4P/jiwE/N+PyZAmNI9R1QI\nXfCMxR/0lGBvrikjZc88PRJfyOlLNJuAqhzBWkvREOJ6/g2DeYTsCer+47i9\nwE+bdlTQC1jRhWLuWbDYFMZuTJg75jxRFFEvU2p/u9T9Btn4jCe0iKhb6p4o\n4mAUd22nrnHBFosWLUwMWf2nVJnBsenKc3BIpTeCvJXiG+6J611+GAVovLmf\nRgXXTyCjHLvsxwV5sFiaK6HsjXJxsg6YDDOXFVmxxWrsUpE5H/OyhY2VJ83i\n7dd5gmcYiJ3e0kVodVrwsik8Gg3aJhH1Er55LmR6wSzxgTCetsKprPRjTdMV\nOLTkwdkhXFE9WPZ5I1mM7V1idh5UTyvdvsKScQhVmYo2hZiBmKI1ZA/D/R+Z\n5dMqzwIghpR0l584LPNBf2Z0rGajuRAj4m7J+k9TTfuPk27G16+kY0Tgkeqw\ny+ziu97nJqO3nP8VgaXaON/WCHK/WPwRqJpRcnlIulrNgv+GpmEk2qIj1tYp\nQK/sO8WNJ4qOhe9mamIZ3l5cWdGvVPyYQ2wKZt1xwPATD4wxNHzPBoTSBu8A\nJUuubsph5SxuCDy5gU/shV7LRiMLa+eL1NX/8naJR9NicKdhC5GdreQJI7LA\nsMULpzE5D9Iwoj5Eh1NAGvbAhvFtiiaI0VH+T6Tss5ELdIsokYgKI5d6T8o1\nVWbP\r\n=8iHr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8c40f31864d158483cbce0b4e8e617c0b36390fd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T20:14:11.770Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.128_1637698563064_0.6415280840890971","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.129-renovate-typescript-4-x-9ac69caee7ea34fb55c442f1eed363e6ba326448":{"name":"@balena/jellyfish-test-harness","version":"8.1.129-renovate-typescript-4-x-9ac69caee7ea34fb55c442f1eed363e6ba326448","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.129-renovate-typescript-4-x-9ac69caee7ea34fb55c442f1eed363e6ba326448","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a22da84ef04dafa583bef6d8a015ab6bb6744d7f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.129-renovate-typescript-4-x-9ac69caee7ea34fb55c442f1eed363e6ba326448.tgz","fileCount":28,"integrity":"sha512-dtoOjc3OCwLi+JkIXhU11U2MvqYRWrc0VApJ4PaynDcnpr84ZzkgFums/9lfO+CqEtMU4R+5ZrnlCnmF0Pp1xg==","signatures":[{"sig":"MEUCIGJEioHUAClmPFFNUhMSoF4X0p09w8suKHIFSwCMhov8AiEA0Z9PFKhdjaGWlCGZaMW8blO1LLFgHvdPkEw3ha2drZ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219353,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnUyzCRA9TVsSAnZWagAAY+sP/ROtVAmYlIpKzwfn0zbD\npcUERmDXNtkD0oZcUPcEedRM8Mcm2ZInrEHlnYp1/dIInD/wEaITagnaDBWr\nGaGkVOt5HPeht+acZM+77IeinOx8aWJcqKuwubvHmCTkXPjove4kaAl4QXCf\n/B9OxI5ocnCLCiS6fgzvrcIj0ZvHkhtUDCjXtZ9ImhqVWejLQJSi3UNzjOBZ\njfTlorKapH2lQQ+6/UrF+VDrzsng0N3c1IdzftrHpuHOdKZUj7Tf7hgrZj3I\nBG+VlctE9DH/i+Hj/3p/vZiin3NQ/kvGJk5O3LixdOJL9DlnhNVudhDZj0+O\ni/cpWpTlZc3hijRV3j513+FW8vNc2zBJuxa0tx+pqzfZ2bgAshR6ShdRdPJu\n5QsB2B86/0uQUGewDE6vsR6iKeMB5eS3/hUsUOgPQwjAgG/rvepMQtV1E4MA\nZuVycDv0qMnxg5DWv8yv8HpMmV0PmMRGCwOjufz7lBBDg/yPL7t7JHbXXMZo\nTRiM6SivTEGHa4//8o4jvn6issWzfcBRJCLfaHbhjVGYDrAgJfO8Sen7qDWd\n0r9cqcGZ255mKayMU7QK51xwoyIozqXLgr6vV2JN+9F2Zbv8zTE1aD5B7mmG\n9NeKOtHZ2SE492iiBsKpQvsGirsIYy/L9F/+j9WpNNWCF+dsuGuyWAn4/uXP\nxgMj\r\n=K/sb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ac69caee7ea34fb55c442f1eed363e6ba326448","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-23T20:16:00.359Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.15","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.129-renovate-typescript-4-x-9ac69caee7ea34fb55c442f1eed363e6ba326448_1637698739705_0.1256760106140169","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.129-renovate-internal-patch-9962a9382b929e268efe21303760f6573d7e2ebc":{"name":"@balena/jellyfish-test-harness","version":"8.1.129-renovate-internal-patch-9962a9382b929e268efe21303760f6573d7e2ebc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.129-renovate-internal-patch-9962a9382b929e268efe21303760f6573d7e2ebc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc368cd48d822e8767719455c6877bfe47399b6c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.129-renovate-internal-patch-9962a9382b929e268efe21303760f6573d7e2ebc.tgz","fileCount":28,"integrity":"sha512-jRUFD5ZB4k7Dx5u8bVP6YHyTLFfMi1bKHyDJAlE/B8RXi9jecVvJ1QCp8d5n5tQCkOqDIgen/RMG4h+krCwpiw==","signatures":[{"sig":"MEUCIQDfmOA5wPrPQn9I3wuTGUDX8SUvVB394bJAJ7a2ffG+egIgCLROPV0opKotHMDJJOtI5EkgET6wMCQWGFeTqbw5Vww=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219373,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnZFHCRA9TVsSAnZWagAAyfEP/2z27eds9E3dpsfCAnZZ\n6SnCrbZ8TstFzhkNMEh0BB6aCrZ6zfMDBuNwfHUvCcf3881n0u9fPiGwFRzt\nO4WgPArfjoikaBEPkg2CkcyHk5grmER7Ntd6BOeF4fh+g7UO8r/DYYvZtA6Y\n4ZNkCs6t9UmRccMd1Zbjmlir1xQ2+0iZ/Pw4zXBxWc9Vf/apIXOv2+1vMvbr\nr1RKJqfZCey/153E64KQaCUV0JFJWany9+aNtYmlt/yzCA7wj9WYKjwCEeRy\nSIlGqzzrVN8cIxeX3az60Gek6o0/ol7HkHoqaFOE0Zn29ov6mVNI6iyHJtB9\nfcYTpKCHVvK1zEU/9cBdf/WR26SdKM4GkHeYO1f4l6CicMgk9aUDVwbcNLfg\n8xOTJNrUDIdz4ycfOUSFIZOghfbposJw+6J/GtPH+A7tC1Y+aToWdCWdkWUL\niNMKf318Kqe+sZ13aMvxv76TwuNThzEt/wZVuXdU2TDy8Y8o5D4HbdZ5Q8G6\nu90/UR+WE4Q0gfGYorb+kng1Ky4jy5ghGh571mAJ/+6cafTJqN54csp1AOH4\njI3tN9jyaEk5Hqisvh6LcYwuLNMMNUUK+JFX96Ai9/GO4oWYMBHkRsx8ERxn\nnlUOzcFgXANHKem5Zz6bgn9UMoWcEhPQs1tmzAWulDms2LE2X+jNY/DS2dsz\n+5Pd\r\n=KCJv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9962a9382b929e268efe21303760f6573d7e2ebc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T01:07:03.824Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.16","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.129-renovate-internal-patch-9962a9382b929e268efe21303760f6573d7e2ebc_1637716295066_0.9608351062172216","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.129":{"name":"@balena/jellyfish-test-harness","version":"8.1.129","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.129","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"26e70c37b9211f30538aa19e3279598bcc20519d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.129.tgz","fileCount":28,"integrity":"sha512-NWFsU1/JHf4RMIYGmtXz7JEaQ/xcaTd6wgQ4qlZQwvNkO8lzXBEBbCf2Usxrh7IsNv1pbudgEtTuH3abHLg7Sw==","signatures":[{"sig":"MEQCIFecdZdZQc8YWORsHn0T8gQwx7vHPUjycqwy5YX389OFAiA6cnUSfGEKDhl2gCFFrpHcrvQITbr5FOKa0myWloW9rQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219308,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnZKCCRA9TVsSAnZWagAAF1cP/jJ6YLB54a6t+aOfGMF5\nICSj3JPOvhAUdXpF0u+UTtRHGnXCi0ErEdI6MyQc9wgSzwPT2F34WMov9Vuj\nZ3/KMZcPWJXW4lpBNF4xHpQ0EgZgxkSDcfc/A5oZRSRBwKCNM6scfQGD7sx1\nKrvbG4Jo/k14VcLmWOADChwuWNSIIriZ1k9zk23grB+1pCGy55HMr7fEnbKF\ncDHnVD6Vz4RJwkPV/84O0O8YIyOtcfIy1IIGVS9u8+CwDRRpx66hD5/9HThb\nu3PG92F//atFoRlCx8bBWa0VqCGR2wOjIwI6lRSQ7j27F8+xniIj02DtSQtE\nXRGcmuWnZd/b6dBZTJ0AYmT/WG38W9eY0ohtrCMdmAL9N/lmil770tySLQUP\n1GjjjSdcsXQkM5HCAJ7JDT1vZe2ICXAchGqkcLGZd1lR8C8t7OT4SFJ9H1E8\neURJTySZ+11BIAl94Kez0X9jV4gLx1Fyyhujvis9dU3/iWaPY3VbbnNITxac\nuSRNWu1tdtUPgi7gI/FzzyfwYjoaN8NRRPSmIhHIqbTm/QPAnbmlu2ge2DKF\n0l/alvuke0jXhXB+Efs6UxiJKK3NPqNi5io1F1XJ9cTU7ZpdWJgJtcvpKQs2\nhShwr2SXnL78jCsusj+CYt+2shXd/RumpMjKeYdlUgCiRwhV6VurtP3KY8SM\nMfJX\r\n=NvSA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2f2817508e1414a2e64f280a84ab5b0cb18a1127","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T01:13:32.075Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.16","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.129_1637716610044_0.7855693570056343","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.129-renovate-typescript-4-x-26c598d106ca9ce9c0f46a7e1ad43207d09b4603":{"name":"@balena/jellyfish-test-harness","version":"8.1.129-renovate-typescript-4-x-26c598d106ca9ce9c0f46a7e1ad43207d09b4603","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.129-renovate-typescript-4-x-26c598d106ca9ce9c0f46a7e1ad43207d09b4603","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"95bcc92a336ff4ef587754f9161308df3389cd7b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.129-renovate-typescript-4-x-26c598d106ca9ce9c0f46a7e1ad43207d09b4603.tgz","fileCount":28,"integrity":"sha512-3vius62WVI2vYASlpzZ9bHc9Y+MB5KnlDpQwmaLuq7J9pzYTgU3yT0Y463U/vTPq2RCR6Lb3uORfV8NMQJLGLQ==","signatures":[{"sig":"MEYCIQCp46xFeVU+eqrey2iDt+c0ao3ZLlAz1Aa/UM+ch5+4vAIhAKcFNtuuv6ITENN+OfFOlNnbp0xEFK8pDGtO4KZrW2UW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219436,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnZLICRA9TVsSAnZWagAAmWgP/RzTOu34x0VJ0+BEIGMe\nVHgQ2E8vyhB7iY5THFuFXGC0D6eyDx6hJp7hVRmp7CsmXTcChN4FpNDyE2c2\nNfqCX4PREEiigj5EaBJAKV4q0mzewA312rxEftg2bcsBfG5jIiGVyEKQ6xRE\n/VFVVYioKBm9nmdAV4loI2E1gG+v73fImPgVGQCUWabBTMLs+ZQVs1l1I2Ku\nmQRCe4OhxyHuhmLKKeluplg2WZdfFgcs2xzbeMoYn3+2MmYwzFRQn4QgGgaC\nyoEaWkOde21dUCsXrK6rW7kSPQLbB6itXBHwYxQYfYvVy7PrEARmn637rZYX\nPCR+jdDtTfLmc3xgnPHF1KqiQltRT6x4YeBb0bJ2/6pV/7QfNrZHer5J5lYw\nvSDQrB6EWzhAUMLYvNDZ5EC6FVo62jI0ykXClpTFWLuO6G+o9ftuFXniB2PJ\nrVr1U/aK3H79YgJhNndp2N0ceTDj0NicKQbYTAbjbf/xfdpFraRlr45BXP6P\nxkAYY1/9qk1u2bu7lMudjt9aG02asrLbaGuUKRnYifqSxugyELx+YbNSL4Ce\nWh6ODE8nOAkpZosiXave8IetF7doOsZm0XpJPKpNNgD/cpDdk7J8KFI/qZW3\n0J6bS0P9pq2HDCQJZxjpM1oItJsbgsm2PtTlDOcTI0DqECMDIsvmIHRZHrhh\nRxW7\r\n=URSy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"26c598d106ca9ce9c0f46a7e1ad43207d09b4603","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T01:14:44.265Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.16","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.129-renovate-typescript-4-x-26c598d106ca9ce9c0f46a7e1ad43207d09b4603_1637716680632_0.8195938930417614","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.130-renovate-typescript-4-x-8e3eaa202d992433c31ed27382915ad374e66d8c":{"name":"@balena/jellyfish-test-harness","version":"8.1.130-renovate-typescript-4-x-8e3eaa202d992433c31ed27382915ad374e66d8c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.130-renovate-typescript-4-x-8e3eaa202d992433c31ed27382915ad374e66d8c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f17cd35c8a52fca70dff10ce735dffb8fe742bed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.130-renovate-typescript-4-x-8e3eaa202d992433c31ed27382915ad374e66d8c.tgz","fileCount":28,"integrity":"sha512-qn1YxOtLku0Ln4OufZ0vBAoRJ4gEZccVaiEI2Dne1Q7dct6Rte4JPgf4xFrRdDRHEN8sZHR5FHdPevJn5qrOyQ==","signatures":[{"sig":"MEYCIQCQSkwJDo2s/kYpYY+xoYO+d0bSY4J2PGZKGkXdA5uLsAIhAPBjaP4K3T5ENZ7ASbJ44EgqdV3YYQ2Sib/4BWSwdxWU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219465,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnZOxCRA9TVsSAnZWagAApeYQAKFbGkRTR8daaTtPa5us\np7QIPiaGbA4bUPbVB3zOVSkA7eGIr/56x26AcYttghA+ojekfbdAl7ptNU0C\n5F2qfHHn/JNRw8k5lvfvaNJaYW9MKLZ3a/SbYzVlh/xkifHMqcVVr5X0ZDKX\nFvbKugJk5/gK6iKRyWdKp6f1my0kiAsDReE1afFOjmJ8jUn/tnHWQ1tbuTuf\nE8GSQvHX31AJ9D28H1QMwISmd5pFDDl/J0HATpixDy9QT6Pf7pO/s6l+1vtC\nkvnJ9XuKBBcesyu/vhbYZY/IuBoVMNlJvqhUTQl8QZc1QOIiGzSk+YJqdQRf\nGFwcbS04+LYqy+dlAOeT1EYFqrAbo42UqB72JuTjTjGjoytLAq/9GuCGg2bg\nazHm8UyskwBpvoa9qSvc5QB1eu+SjAv20j3AyZqBLHzLMlw50qxmWM6mO15R\nOC0dZN+ScT+txSTYfa7z9DU6wjFiPmHx/3wv2QHaKUK0vkg2+mmhH5l0S235\nBa0bsOpNTtmYGtCFugGdJ/dPTk1K/aj9rvKC81HErO/DbJ1voihYpwkrhK6E\nbAUhHYy0bNnkLLKEvpej7IwvmO+S9M90R/yYC1EbsAODCGjmHz0BrA+PSY5U\nwiFlGPCNNH/dLdd58quXexlNJ/+7a42WsvgTiZxGXFo63hRbZi1WRicRIv2C\n177m\r\n=BZR3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8e3eaa202d992433c31ed27382915ad374e66d8c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T01:18:38.698Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.16","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.130-renovate-typescript-4-x-8e3eaa202d992433c31ed27382915ad374e66d8c_1637716913519_0.6435258407308244","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.130-repo-sync-jellyfish-config-default-666c4dc45591d6e87dcb83cfc6945228b0b878cc":{"name":"@balena/jellyfish-test-harness","version":"8.1.130-repo-sync-jellyfish-config-default-666c4dc45591d6e87dcb83cfc6945228b0b878cc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.130-repo-sync-jellyfish-config-default-666c4dc45591d6e87dcb83cfc6945228b0b878cc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1acca1107d9c8cbc044328d4842456478ac866aa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.130-repo-sync-jellyfish-config-default-666c4dc45591d6e87dcb83cfc6945228b0b878cc.tgz","fileCount":28,"integrity":"sha512-NqZaJbR1HssXiFaUbp03NBwGaQRNvuj1CYPUFQLVtKUdVA94/iJg5om8PjQgB6dvAIy1F4beBYKytGZEfiUCkg==","signatures":[{"sig":"MEUCIQCkp8NGVizXjwZkVHmOjaGt9/sHiFRg0LCuNgwxsnjPYQIgE6wIOiLjT+1n2RnVotQW5kf+1SixH403u3S6rCyHeUw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219480,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhna0wCRA9TVsSAnZWagAANzYP/0PEBu/BabNBIbzxaKQy\nTZpLi0kZ6hSRKMCTSaQziYxMJY/eC9PnJxjfXsztEde6qCp8BumfLncuAQC5\n011WwazRLCeFzeq+YKcB0/u5V+YZuEMGCqr2gw5OtD43bQpx28n/97cLNW/I\nPYdHQe2T1SVq09HHRKOmXpAGcilVsCC6/vNr4gxudeFgQCLSlTMH80QJm6EE\nF4OzuNwOHgrDYQ6DU7sP8wU+fHPMtF217lvRidBwST2h5f6l/FKa1DDjusvc\nGBoUFOZtgkN6X1RfnZYrohBxiSBKVv6IsO8VRXGrXeG68wiuQhYMVNAgaTGn\nA9t1wNNQB+XeuCN8BkKoJYaWvuw3JbV+ntVtk0lKRTpdWibvfLLFkH+BiRkS\n+v3I7PId6J+maAMRHjdH2hVYECr1kmh/u0HWGxRBLHyRYCHODqx46kNnJveR\nBC7nKQZM40SC3JCOtCP7qf2WhpDA8T51XwPa5ZHCwbpgfb1h+H7ZUdmWUYRm\nazMmUhyqO+xItzu6HrXi4mvP/WRX3UNAS8i6IGeBIOQuqow14deYUa84xD9S\noWh9axqmon5xr4NacNs2qu3xJMo4y6zpyjLn1ijxYkpZO/GR1R9ZH3A9OyQz\nEUCBkM9Yll+zBrDUCMWwzF0wgrzLR1Qbp1Oi1Nuuqr0981D4eZ14+UnAc/dt\n2G91\r\n=XdWK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"666c4dc45591d6e87dcb83cfc6945228b0b878cc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T03:07:23.975Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.7","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.104","@balena/jellyfish-environment":"^5.1.16","@balena/jellyfish-plugin-base":"^2.1.294"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.130-repo-sync-jellyfish-config-default-666c4dc45591d6e87dcb83cfc6945228b0b878cc_1637723440468_0.6518456411675564","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.130-renovate-internal-patch-dcf96bcb0089e4e32ddd9c0b636e73babf811d53":{"name":"@balena/jellyfish-test-harness","version":"8.1.130-renovate-internal-patch-dcf96bcb0089e4e32ddd9c0b636e73babf811d53","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.130-renovate-internal-patch-dcf96bcb0089e4e32ddd9c0b636e73babf811d53","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b06ae49e4032e3de44073dcda290aefaeca8c338","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.130-renovate-internal-patch-dcf96bcb0089e4e32ddd9c0b636e73babf811d53.tgz","fileCount":28,"integrity":"sha512-ru3GrlSXwx9ol1/j1qnhjNLJu6/ggMn39C6o61hMpzvBjMPCiqy4tEguGevKLnW7mRrUiNgX1oak5TvhGTf0bA==","signatures":[{"sig":"MEUCIQDt+O15OjpsZCHpB7etOmNhJQits2uh8GhnBxPt0Kq75AIgJcz2jtIHGTlWLb9H1Dqfyzf7vCZSJ88q6BQHQJEFwhg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnbFMCRA9TVsSAnZWagAAScQQAKFE6y5ayyERsU9JiZs5\nxATqG4uHa8a4x/idwOKax7IjSS1Yr1zIOCi0fF9LL2oGP0hDRspehaFtanGL\nJQEOCOV3nXUlCaKhy8j811XdtMiFCTpwjtryPZudDz582cGhIVWCRfq/2iC6\nNMDo8a6Cp+kvvZspVWemnWj0dUwcC94roo3CFXpBsDlCV0skGp57hvr0rhLA\nsrGupz26Qi7d8+2RyfkLaL1uklrUt29ANpx4o9/jZX7xpuQbmcdFiWmteAWE\nbAGDcnXaQQSYO3taVSeZZekJ5w9YDiVZSBNjQ2hnvoER7DSIq6x4KTAAgUlJ\nWLxPbeb9M0ZWpxuB394GlFpPtmpQIuSg4XUOFgrCEnVFmI2hvQdkYc2wWvb8\n9EddxPD/yaWpKlIP0BxkjN7ojK4bFiove0zagxuImXeZLNL0pSILxW9pExAq\n7L1byA38ZpLMH0hROaMGFN0Q/fQ9qGaddSrdSllX50sYQl1AZWnTcmnzRaM3\nxpbqxJ5E/72Nqz+VgM21CPaKMJ9p8EastnVbgFfJAtcNVCqLYhkKoLmL+b50\nDI/eXnBwvhE8xWLEriamSGsuV6cRLMoT2+C1a8GS1C13cdRQFhfY3UxS9xCP\nvtwUlwbHvCqFr1tzMT+GqCz996QLq8vvZiirMGxVq6Qr15D3KHKiit5z5pl9\nH/fN\r\n=1FxJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dcf96bcb0089e4e32ddd9c0b636e73babf811d53","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T03:24:44.359Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.106","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.295"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.130-renovate-internal-patch-dcf96bcb0089e4e32ddd9c0b636e73babf811d53_1637724492238_0.9035214540694663","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.130":{"name":"@balena/jellyfish-test-harness","version":"8.1.130","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.130","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b0bcf90993740a83ad1e7037a077692fd2eeeea6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.130.tgz","fileCount":28,"integrity":"sha512-LYQyAdQ8F5RA+TQzCOYTzNnqoPINu+qXP4MyFkRqjKDaD1GsXI/zdyyWQAA5LQlVQkBS6M3uA32K6pcK6utleA==","signatures":[{"sig":"MEQCIFfyF0w7ajxZ5H1oe/BmaKCOTYuXkG/8RR78Q5IFgPyAAiBjwxR0d1u98daWna+h6zx+qhnKyVnh1Vdp63CibweKLg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnbIQCRA9TVsSAnZWagAA4XIP+QHB7BA6onRGT+FcrDB6\nSfrjaKMWs1YeKbbxoZlWPTnDjDc5FI3Iuqfo3Q43+9xV4Gb8pU0g5WbRBnKO\n5oiX984dmb2h6k7yqEsyjkQLfOp9VYk6XS8xA9JpC6/jURsjhbQmKGtyi5ao\nSABQ143k/mO31u5KHqWDfbUm2pu+nPl/9TXB024r4Bwy7pk0r5wlDww9ZcO0\nlWtJzb8vj/svtc0IYlE6YCcTetB5pQneoXsq27bwsJw4hLWtTlFkjdsoEU9h\n4zXs938ZRMvC75+3MGqJ/OOj3R0hRzwPUgzsbzA1RFl275lbIPDi/nfV4Iro\ntxaj70p95WLfUyYfAccQnFInq7ly4h7+Eyvu9f5apBcrN/oh3pBgzzWZQ2OV\nKeQl//k3Qeh45bm6snaBksuVl4MYNWzCW0jOAHPdJ80DM1gV7LQMF/3TRYAe\nuD2AXvvbohjg4Cz2PavpuJfjys4Y75AgIK3mXXn9CcGcHLoD9cRJ+yrGZNEP\nylhQkYZZzGrZGNj0CkC1C0UArIfqg4cEwPW74DnLpysxiYGVOfyuJPL1ygyo\nw2QN96a3IpqFwKUUx6/Y32aCAF+xA0VbL9I+rFjsZWCweSwvppSltSukVtCy\n6QAfpZiPqlRu+d+XnLUYsb/UBppTZ+ymY3ntPGNbuOQx2mPhYsQU/u3U4lZt\n1X+A\r\n=ngRj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c32515e3d1a4117c93268bdb20756141e6d6b5c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T03:29:18.205Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.106","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.295"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.130_1637724687688_0.42954254941923264","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.131-renovate-typescript-4-x-ccc13ac39c779993fc657b4b70ee0622768e5995":{"name":"@balena/jellyfish-test-harness","version":"8.1.131-renovate-typescript-4-x-ccc13ac39c779993fc657b4b70ee0622768e5995","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.131-renovate-typescript-4-x-ccc13ac39c779993fc657b4b70ee0622768e5995","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8ba87f295fd7c9a7ed737b56b2d79b72087398bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.131-renovate-typescript-4-x-ccc13ac39c779993fc657b4b70ee0622768e5995.tgz","fileCount":28,"integrity":"sha512-YlOoCjKnh8isrripQbNCs25TboMPbFVjUxS6xs/EzT8aHn0TetmgiLWTRq9HVMkotTZxYiq94RBj++23DR/xMQ==","signatures":[{"sig":"MEQCIA6Cmkt6AttfPnIyD29VjeRRq3bFxZVvkdRkc2b0/9uUAiACurnamFzpJVHGmBU1BkFIDqVIKVnt40ppw5th11+/mw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219540,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnbLrCRA9TVsSAnZWagAABGYP/ApBbGKBzXXtSbAg5fhY\nkyCbDLNV9ZnXunbRFrbkNq4Lo07f60LjnmlBtNQ17hdwAC1KMbi8etURa6hR\nMAbqne7NZREb+L2wFMs3FOzq2wEAS9ZlXa5xUAm3m/rl0qrIs+C074X/sznP\n21BLdTWAxqenyHamROupLkvBY6bjEQ4I4/eJlt8coW0tfCgVNJVKv5MRH+a2\nT3v7nPPSm26C8XK+FCCyQgPy5CBV/6BKinKLzoaThtmTyzoodiNjS9KmqF/M\nHXFTwcFGbOZnODh9both2PKFU9nKQ8cB9y1TRBOT5+g+DD3j+/FnCXO7Ydem\nFt+Wlxw9IjrtzPvvuH79p9My/fmT0Il3LJD5/VbM5vFtbI+1L+6Be+lzbrzi\n1LYlmmuO82lwbO/p8kuOashag4BpwB0yEs664YSbveJdy1DkeMEXcJV3o/R9\nCJnPUtgpmanPrkXeNE92Q4wd5gG/pSgQwPNAQdPtnav59LapIHCJn9uF3K4X\n+5yWBJ4sU+iCW2Y7vgP0RAoK4z8WS5Jh0aoisoGTkrCSdigOuONNc/9tD2r9\ncceE2jcDNu/dUMZvOUlAZzbdvKR/7XAHi4pwmj994tMyTui8LLdgqINfk6cL\nIePvpuviIsxSr21tV2M1uJptFZ7mR9DSfYNCb4JmIMewxpfqoG/hJTXIOPuW\nxoSJ\r\n=WHEE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ccc13ac39c779993fc657b4b70ee0622768e5995","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T03:31:56.007Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.92","@balena/jellyfish-queue":"^1.0.343","@balena/jellyfish-worker":"^10.0.106","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.295"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.131-renovate-typescript-4-x-ccc13ac39c779993fc657b4b70ee0622768e5995_1637724906836_0.4251998764699332","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.131-renovate-internal-patch-76ce03957370abec285cd823088ca6149983e64b":{"name":"@balena/jellyfish-test-harness","version":"8.1.131-renovate-internal-patch-76ce03957370abec285cd823088ca6149983e64b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.131-renovate-internal-patch-76ce03957370abec285cd823088ca6149983e64b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"122c52e0816515b750da69c69d669e4253ea5f62","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.131-renovate-internal-patch-76ce03957370abec285cd823088ca6149983e64b.tgz","fileCount":28,"integrity":"sha512-cb+QHwQ6qKGNTQDtYist/W2MEz665QpTgAtTm05xxptLc3vH/v5fH6OY0FbCOvIHzp66Hu2YI668gn41n4YXOw==","signatures":[{"sig":"MEUCIBo0ITgxR8/xRHafFPMuVPVkCVnAupmIfScqu7zw8qZ5AiEAz+ovyjaTZOxOTriXIQDTbaIKXN36V11xVt2ngcdi43A=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219523,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnckJCRA9TVsSAnZWagAAhD0QAJ4UL+o87Xz3eJqeBRm7\nVpNXtmIk1fahA7L4HM108pjyv7ixoSUry3HjDsXG6y5s4AX5dT8gbNOmypjy\n1oxE2AJkxlusYlxLa1n/xTUfuOUklNXPX7NUjYnld02u+vAV1zbzNrRkBGn8\njE8ksxvRPeb8jL+oMC8DC1/qMcVPfPYAboBL1g+VQk15cs8dzJM6kKuCUNl2\nlRNAM232aPnT87kNzTmoSf1UjW/6681KGE0Gr0bBoza+iggpRKUgoHM9a/FD\nABKRSosFP8fuk/V8FTmE643E0YyptPTsxKDN9ReGOY/3gLZi4scXcuevWtlJ\nBBbKT2POjI3tCdcit2m8w2DQtdIwF2C/f/UVn4It/Mapd4PQN9eciIpZi+ka\nJV2LfRv/L5L4LybpQWjDGspl2djPHFtqnMFkNlr338LsnkbEZM4WG/wH09Rf\n86HHTtOVjewxFlsqpmKNWvRy6e8hrjPSyMOX1wSlP8f1iTKBMEiWZCw24LGK\nCkZJKDJOoTecP8+JjyiyUMvqDBlHFM8Onh9S2zJfXcjLNJ35fQS12vrBNf/v\nw8DgioNWmi39Msr2HMHdqi8yZh8y3gk8n6dNHaIqaN6waBc0/B3URrnWj+Af\nDJxDX2Xc7QvmA6qHNjRaMU+6WueC7UkagX5z7LHL9J75T+aO0p117s+/5dMT\njTzg\r\n=loS3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"76ce03957370abec285cd823088ca6149983e64b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T05:06:44.454Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.93","@balena/jellyfish-queue":"^1.0.345","@balena/jellyfish-worker":"^10.0.107","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.296"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.131-renovate-internal-patch-76ce03957370abec285cd823088ca6149983e64b_1637730568947_0.6773111942565166","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.131":{"name":"@balena/jellyfish-test-harness","version":"8.1.131","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.131","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc051f858b983d388c784d995f89c87c5db87016","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.131.tgz","fileCount":28,"integrity":"sha512-F/3/GQ7pc4U53nrPqIbA5s3Fwsbmpxlw8tHrsHOoDhKLdaqkh00BHRuj1QrHN4+wgcBzBaqVQdOKNOpWVd7tXw==","signatures":[{"sig":"MEUCIG0+/fv9LaqvMgi82HwS2i75EVSglmmKGBz5mpCZ4VbRAiEA526WkBHrygiLUfUTPcml5UcY5Q/D2OEefshJv53uFIg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhncniCRA9TVsSAnZWagAAW8UP/2zTDuSME0/W0GZG6sAc\nZvRVTSFpHd1r1a5wO3xs1wj2zUEhVh1sZD3vnLmX5BqF1PQkaAzFwLIEorLX\nLYqTpBuO85XgWPyvSTROLzPZGjgEo6FmWBQHf0Nidv9QQg8KaQRiP5Cib8E4\nFvSl9+YyHer62qoKlUHGnm7pQHmMcMrYI77tQJYUOMdKAgrb8OaiTnrvErnH\nD3d649ISNfQqtYZ8P9sykeaS8dPdCqUz63IbHu9yN6ViVPoD4XdJeJKr8hEq\nST223CHVW2vaWH+ERie8OeFbforSecESeCUpUVQrRB4bO4UYf4H0qn5B0R5Z\no5wddSJOC7LKFoONatRwoLoXEYz3Q+CLwsTbJqC3wuTrydc1cq3mMkB+YddA\n9UzV/3bvrQcvogFBBOIlGYl1XtlWMgezS8rQybl7ZmqLeSKz1eQ/awVYBgAH\nRrT0ay94sidllj2YTZG8dL5gSWIsemB6I1JHwqUBDWad8Gwj9L4zCCH/MDN5\n2WCC0Ai59uMQuiikMacb9Xt95TzetRpA+SKg/NNPFGRYevw6rdYptyA/9njd\nFduERiiiCnmMm2avFAen9R/WdNec0eu5UOfl5Qp2x3kNnedcwWkSnUQ1p+hc\n77t7lr2pKAr2bJUUymDKyKXSKTpUClkzV3te+dLCmjXBEhDfSfGoLaCYdewE\nm76u\r\n=eDFX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6ef3499fb09677b38cbbacf290b86db5a5429c1c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T05:11:05.081Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.93","@balena/jellyfish-queue":"^1.0.345","@balena/jellyfish-worker":"^10.0.107","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.296"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.131_1637730786197_0.638794044599202","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.132-renovate-typescript-4-x-6fc39dab6cc6a6f09274206eb6918ea2c217a678":{"name":"@balena/jellyfish-test-harness","version":"8.1.132-renovate-typescript-4-x-6fc39dab6cc6a6f09274206eb6918ea2c217a678","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.132-renovate-typescript-4-x-6fc39dab6cc6a6f09274206eb6918ea2c217a678","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4431d909a5e63e4bb0a6b7fa61b31f02f20f5dda","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.132-renovate-typescript-4-x-6fc39dab6cc6a6f09274206eb6918ea2c217a678.tgz","fileCount":28,"integrity":"sha512-7H3MH228wsWXYWLHxSAbFGirmbPHG753ZRdRpTpo6ezBPQrARm8ZuDVT9u1YLo9L65AtdlALnrofbkxcOK9imQ==","signatures":[{"sig":"MEQCIFqItzxls5CT/eKhBIpUjdjuPchW1qy5HbIwJ6lzV4ZHAiAPwnHGQAm7ikATrquU/Cn56IAN59LYv2F96RQkHLfWBQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219615,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhncrlCRA9TVsSAnZWagAADSAQAJlW32jfVpwY1ulVyCh0\nyHu61cZb4lR6lcyYyvk86PW6vqHDk4zeZyh/okKhSLSatNho5Z/IXMNQhC5y\n6bV6H4UTe/BfzlkOSmHi6xKaP5R6lwsNGzi3G/682HF2a2VPsDSPXVk7u8YA\ncnl/FpqVyF3/oXvWqm1e6QBwZkVtob5XDffIb7inCW7NXij8Z83X0DaXqllO\nUlukg2PksBWAr4MkkW7l/fdAeDKSM+qFQDW0AwTtZlPOUkUVDTX8oKB3Uxko\n8RbZhXs1gqWcujYDzj4zFKlcRy71a/3Of63aUDM3U/kz/ABC3IbAH3xqP0+L\nV6LxmDFTy2TC3b/v+DVaX3+4c5NekNEKYwJW19jDpweBm/8Lh6xEUUQi99BS\niDZq3npBZ/v6q1pwwhUepNXQiES/og0R/jTnpF7mWKkulMXyee6QBlrj5O1D\n3/Od42YpdeA26rEDMWvG52vR4rg3xzT+MU3zD2GbLX0OMP2HMrnBhO7IJjLC\npGxqxZNtylR13ym2OMFO63BW1CIHUj07J3ND9xdmRAigFfHKFGtjqh1N0Rm0\n/PhcBYIboVC1Ek5ZACITiXEv29m+8gSysMPfTaU3xnHMgF6OtbivO34ObAhW\nmnqKZMaRceD9VVPXbd4XXNOmEtpvPrxcpnqnZGcUFI/0iFbFd/Vh4vKuQ0/u\nUBSm\r\n=fTFb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6fc39dab6cc6a6f09274206eb6918ea2c217a678","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T05:14:43.744Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.93","@balena/jellyfish-queue":"^1.0.345","@balena/jellyfish-worker":"^10.0.107","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.296"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.132-renovate-typescript-4-x-6fc39dab6cc6a6f09274206eb6918ea2c217a678_1637731044963_0.739207203071518","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.132-repo-sync-jellyfish-config-default-f94f85837147a576fe8fe0eb234804469f15a4e8":{"name":"@balena/jellyfish-test-harness","version":"8.1.132-repo-sync-jellyfish-config-default-f94f85837147a576fe8fe0eb234804469f15a4e8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.132-repo-sync-jellyfish-config-default-f94f85837147a576fe8fe0eb234804469f15a4e8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cd78e33eccf8597a5ef5cfd620fc706a62bb7ed3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.132-repo-sync-jellyfish-config-default-f94f85837147a576fe8fe0eb234804469f15a4e8.tgz","fileCount":28,"integrity":"sha512-nSZqA/f7vTiKYrYOqx2nt4KKDLIEQt6YAQtMwH2287QQXT8Y9pAdFekOW6YTCvgxhsTRuUulcdVpiebbOjQu8Q==","signatures":[{"sig":"MEQCIFCrZ4JDKUcFl3tTIW5wKwxiAFD4hlDKDoNpsezc7MfdAiB0mKPS30V5IH2hsn27ek5bYNvFWu+WT4u5PRNaZOkltA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219630,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhndi9CRA9TVsSAnZWagAAacgQAJJiweiL6BqBE0jlomOT\nXV+oghHIazqAw6cym3hXkF/swXNr2mLZBDXi7CEcWRsgZ808pF2blBjAPRoz\nNiNMMwqEYYLlzUaV2thinMUeZCkAhS8BrOjDxtaKjGrbemr1W+E+QZsbwAm+\ndCeMV33CDceH/mgRoo2EARPJuNYwqhLH8ViqwwscQCgLi0s+Ttk60OvnXwgh\ntRd23M+q5ZdQGRO4IeDN3cSrh4cVeEGw07oOaWE0jENdWwWggaXCCKJ0eU9n\n7zjBJzTnUq5RUCn51p+wjGQ1+ubRfLUmb0wpZYG1crfORXTh8+LAWN7Bcd1w\n/qGkdu207z8AHaqHHpk5bFDbYibwPnLyYEaL23Pqn6pZWgZdsgmBv3LaalNe\ndqbNeFJXpZnjbjUZ8mD8rqAlo7YGrMYM99BiWWzWLCQkmNVnFOch7ztAlESy\nLks9m2aKFLUy2AyYqTnjCplWVkm5wVnxnDOUDg7Bh9z+UFu3c3pSeL9o4Y0B\nvly8dWJk1CYJZy6frIDUv+tLhpyt9gJaAwXdBMxXkrVAS5gRM+s/mYnyGGNS\nMUKSKBj4rceMZJBFDv5sZHJL00IqQbRYMsMtTPnHjqtbbpikgtl5JNSVRVM7\nmfoBQ4yBwx/VZaQr3a3lisdcQx74q/bdXM7B3st3ADMkJX7KocRGnMC0J2ox\nD28N\r\n=KW3f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f94f85837147a576fe8fe0eb234804469f15a4e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T06:12:19.687Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.93","@balena/jellyfish-queue":"^1.0.345","@balena/jellyfish-worker":"^10.0.107","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.296"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.132-repo-sync-jellyfish-config-default-f94f85837147a576fe8fe0eb234804469f15a4e8_1637734589068_0.15170707850474185","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.132":{"name":"@balena/jellyfish-test-harness","version":"8.1.132","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.132","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ba79697b685bfd3369902ca5a225f257db18cb73","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.132.tgz","fileCount":28,"integrity":"sha512-pEX17GgJPc+/xui25R97anUKnxkYmmyhm40o9fdpCj9EiMeg/uNyepd0Gxiu/9YPbDNVABxOX0rq/dbSacKVPQ==","signatures":[{"sig":"MEUCIQCxygZ4oY8fNpTBvEoyS+Qh6nq2ZyUltOfJ4mkSl6AQgQIgBMBzDSa179TS/RxDFSKQUfy8mGLOVo4RMswZ00xGVFk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219554,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhndmGCRA9TVsSAnZWagAApNQQAIcqSSQJBCOiZonv2sZr\n2FRlIyov1Q1JEmqnXzLrgULufrGMAejJ3aZo5H89wqU1t2FncYH7my4IaFyN\nERuwnGBpeMj4wyobgdL4LJRnIVdqoDcNtkPWxhnZZc34S9+Ets4cQQeglyro\nAiglTuBy/lpNACvdoTPj923eOTTFlKyyg4TTmeQ4sE1JoqUZPOU92JP7X51b\nEMbYPYJEqPMcwmrBacX4dFHONSFqzr9XpLJ0Hk1zfVC3rIe+ws+w0wOnJm4A\nsU/juyUey3BSv4buoQOh6dM1KZKbVs6VmJLEFa4LcRQwgEWJeq1ksQkSpZzS\n1FEP0gCUUP6L8hJ75ULd+pAbetWkb/nXd2wrMJ9jE4aZyqXhEt6U6POY6y5T\nO74s7zt04Sbkkt+8BIG+feRMlttVoScH+H93IWFP9t/HATo+2mmbE049LCiV\n6p5rBCxenEp4RA86h1XlYZMEAjmI7XgPj5znkAf33JtDe5PXrgTG+L9Xk8F5\n+hA1q02IIXVTDBxzoeXjScuGjMuIJkLemV6H/sIg5sHBhRLtOK1yxay3X3+k\nATGZL/HMEmYkMgQgXZTgNDzW5ILPOio5DqQbiRNE88fZ6hThrV9oxCR3YD+n\n1LJdjOfcBMytg6z2JsAZNu3rIYTTLLBLo3XwgQD+eMPxOf2xYRr4u2j9sAmw\nsYoY\r\n=FwuX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ecf2f7bc4d4da397bb2e271f4f4db845c558f0b6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T06:17:34.343Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.93","@balena/jellyfish-queue":"^1.0.345","@balena/jellyfish-worker":"^10.0.107","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.296"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.132_1637734790033_0.314593305486109","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.133-renovate-typescript-4-x-43c70ae9b74dfd81c5edd42234de0ff466085365":{"name":"@balena/jellyfish-test-harness","version":"8.1.133-renovate-typescript-4-x-43c70ae9b74dfd81c5edd42234de0ff466085365","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.133-renovate-typescript-4-x-43c70ae9b74dfd81c5edd42234de0ff466085365","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cec5f8a75da36df2adf514a70d9288c9411ac378","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.133-renovate-typescript-4-x-43c70ae9b74dfd81c5edd42234de0ff466085365.tgz","fileCount":28,"integrity":"sha512-eKaBhoo0CdN7WG6mIkaijxYN7zg3CqyCLrmDocuU0PBoLRxG/IwlMYVVvae8Rj6geAeZhU00kXXPWC9Jx4oc/A==","signatures":[{"sig":"MEUCICRFESKUoSvrb8JqPAzq7PFEGUB9kAIYnQTwgBlbN/9CAiEArRbFm8CXsNpZfWuPvAOzfIyEgLV2kQbcKTX3PkOuKmU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219711,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhndrLCRA9TVsSAnZWagAAYIwP/jHTn9x0suxL/SBg18Zu\nJ6yAlb87NVs/8WAaNxjC3Q+ATvGewxeBVvxs10cA7cO4pmlxQIryRLdU+M0p\nM3/nbqvyssF3A7oJD3cadg4uumtmjsyONuy7uFEpOY5q55GxQD1lKccNP49/\nt+TSwY22UN+Nnpe4dcFSh1pnRh48idBWRpbqFM2EhjLV3MQPjJcbP7/4Yb2p\nVVAIpxC01I0iMsaC/SDQjDwFpd4WLoMM3nWq1/1jUJ0zNxR1WfWMiGBYwatL\nUYU9h+kWbOIHR3K671y727y5I4CU/z8Q9MOuOQTFl45hPlU65hEW0sH4WSYD\nJ4Nm1AUOCAJDiiVj0wCmjLIHIEGTfoXVZJLFaH3BttiV0jlCMu7NAq8Hpisl\nVrk/ybclWongzxq1GW+K5yehWOfXZ65iUOvB9kWUZP/2A0VAvcwje3PQQN0t\nMpknbOWM06KCh1aK2I8E/Qk6ahHXlaAFkdy4o3R5uyYcn19l+56Ak3kqonf8\nZ47ZnByTkUgvXQPYxYMa0MySp7+dDPaSNBUudAPOLhtAQhVQx2wuyKhCLOrA\nkY228RrEwyJcqiE5bSw79RzhpMvR6GALnx13BwjtqVZXk2mPyhS/MjrJJtNR\ndIjAlcyQgRE6Q9s/KWOpbWD3xC5bvpySZLbsa7axcualI77Fb1KibnkzuObp\nhRMi\r\n=jPC2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"43c70ae9b74dfd81c5edd42234de0ff466085365","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T06:22:05.106Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.93","@balena/jellyfish-queue":"^1.0.345","@balena/jellyfish-worker":"^10.0.107","@balena/jellyfish-environment":"^5.1.17","@balena/jellyfish-plugin-base":"^2.1.296"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.133-renovate-typescript-4-x-43c70ae9b74dfd81c5edd42234de0ff466085365_1637735114930_0.05865764261023099","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.133-renovate-internal-patch-cf8751be8a85c7958bf2331a5f76e6f2b9091a2c":{"name":"@balena/jellyfish-test-harness","version":"8.1.133-renovate-internal-patch-cf8751be8a85c7958bf2331a5f76e6f2b9091a2c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.133-renovate-internal-patch-cf8751be8a85c7958bf2331a5f76e6f2b9091a2c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9e1ca82b2e5a1ae73e01161a8628412f4a53402b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.133-renovate-internal-patch-cf8751be8a85c7958bf2331a5f76e6f2b9091a2c.tgz","fileCount":28,"integrity":"sha512-uBYTkc5EaOcwAa6n/7laCjv1ykdvZzDy+LUHwz+6mtFtY1PTpKyJ74mqqykfkRRHYWxoxoihR9Meuzv0Klu6Pg==","signatures":[{"sig":"MEUCIQDhsrkRqQ6qBKohcUf2+KdqA9eGylS6B74eQvmy9/Wd2QIgFOOQ61Dz2itx1FoF8POdXPf2C008PA8OQZH9e128HKM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219694,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhngXfCRA9TVsSAnZWagAAbfQP/ilW5k/e3+uM9yQvzzew\nrb7tAlOd2DktUxOrnAxgQ95X6ObwLUGSPO5SqdIHvipus2u7QyoBOoN6lZp+\nL+A/8Sp/P3ti0oeuWjSKO65JixgbXNUFzln2I/iZ1rjSiXtO+EKkt7MZCafy\n4C8Hya96Uafo7y4SA+uMhbYhrba9pG2jGMospNeNNEKzT2M0cq4E5nmkMZoW\nvSk2E34wcVD99bGs4OgJXTpDRbCopXEKhB3Ko3f9Kw2gxcdLAfk6dssOeD8H\n49oHWWk/txoJmz2xA0Vj2hc6d9DsECQ4SW9hTx+irkC0wljTL4YRPnA90hoj\nvqjZwVtz6iKrWz+3/b5vT4Pv+RicI22e5/CJV/WTC4DDTN7wwQexJMV0xB4s\nGI68J60c0lf8tLty07LCgSH47wiWGaT+oJTVVkNJUtLMdl0JnK4KC0jjzu5/\nxPUoR9ICXs3M3bn2xSD5enL+8090DXLmBA9lfPoQgJhfgX5XDFb+SwX69Nkl\n1IRkIlWqbZKUaRFOESdNGRMc4Gsuje+I/aVxYm5+7ZC74eBNxBRFgVzfWyki\n513U/cW3mK8iKO5xlA5UvkAu8LHITPOYFLzFJSAzgLDEENCAk5KyC83cIwdZ\nkI/6EWgTAstDtEprzbD91V90vBR+pRJPMfPrhWHmqtE+5JYOKiwTNG8sCkO9\nvI4v\r\n=j4HN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cf8751be8a85c7958bf2331a5f76e6f2b9091a2c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T09:23:43.624Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.133-renovate-internal-patch-cf8751be8a85c7958bf2331a5f76e6f2b9091a2c_1637746143438_0.46720821164028403","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.133":{"name":"@balena/jellyfish-test-harness","version":"8.1.133","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.133","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf77955e7c133caf705f108ea39a2199dcc9e5b0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.133.tgz","fileCount":28,"integrity":"sha512-dwIrH76KW+5+1yXosePWwCFQLmCoP1ZOrWBbQ9E++5FdqmTSMVv385SEvwe5ZH7z255T7ezGUILaFuakvBDFaA==","signatures":[{"sig":"MEUCIFHwhn3emUcJ3AG/sJyamE+cJGmHqcc88awcEbHLfjXeAiEA7E9TsLcftrnDS6rZeNfCXXLgTs2V7wjgkxkeuRdQB5s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnga+CRA9TVsSAnZWagAABMIP+wW3Kjg3O/sFXwkWP5Zq\n/Z1qfVp2RE6g6YvmF+aJDx1eQV1Sj5Pz9QJWfoLMX+KvD9uUxZTF4CAt6acI\ncvSViad+FRE7eY36ajkRyQvtszeb0bflt1gLNDO3qoGpvev3NJ8XrBlhTx8O\nKVkGkXHZFKsPLK+9ymYAB0kNmdjO0rwKkwOvz69Spadt7whIKPVEvnrOTzQU\nQ3/0jHDCzwFfyGBhqibBZW1cGzRIi5bQQ5UcR7P/N1LsK5tuOqOy8b1vjWOt\nRqctH2D5ObGowf3JwmKCc0Xes6Ux+F0jTkmKvmenpeY8IC2wLuZ1SqaJxKgl\nYsnk6IrUQhcWLAwB+nGOlfdNyyBf3jvBNjmFRLTVwD+7EKx2/s3QN5nk0vm2\nATi+7hYl1pG+c21L5J5mb8HqzPWv77hB3ExV2DvRy+Y09gEyHNmsasKVJuq2\nGn49doQqi4eICtH/BEmwYK0iOsUqCBDjri2hlWI3Cf+ZLPv3CCBHsCIvetb1\njeKShIQFHghnQh9tnXpQgTWwDVkqNt5VQFWEVN9WngDUDV9BVcNIn0YHK0nu\nAVE0uSdgzbhvwJ1BTbgNBSdiliyjAaxCfS8iwp/cnyiTbtShLrq5Kv9T/WFT\ncUvfLCqryjwEMRokH6nimk/9EoFRPrWhbiAaU5NerCfO+yGwZ1qr2QlNJnAJ\nUz1n\r\n=EWJ8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"39c0bd1d015558cc718321060d9658af480a2def","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T09:30:27.095Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.133_1637746366699_0.1001855860092733","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.134-renovate-typescript-4-x-5c8ed88a3c1f8dc177de456e8dca419fceffea4f":{"name":"@balena/jellyfish-test-harness","version":"8.1.134-renovate-typescript-4-x-5c8ed88a3c1f8dc177de456e8dca419fceffea4f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.134-renovate-typescript-4-x-5c8ed88a3c1f8dc177de456e8dca419fceffea4f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"af0a9273e3f433246f507a5e648b142ba2eaaae9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.134-renovate-typescript-4-x-5c8ed88a3c1f8dc177de456e8dca419fceffea4f.tgz","fileCount":28,"integrity":"sha512-SvOdOmWfyqsDHauSWDl0RD+ttDQqQcS2VULwLBxOPaWtoHg0e/9FVsf+ejiEFJkT7vxHsox/CTEcRBMh8iniAg==","signatures":[{"sig":"MEUCIQDu9c1U/XlKUZdzeZM0cLLSzH6GxNok7XCT1fiJPXGXFgIgGLIkCZEUrtGIfTREhrZcwgy3wBw9glKNPwX6z73eugA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219786,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnge2CRA9TVsSAnZWagAAn24P/1uf/WcyJxAojryLbi+O\n/LreFDucW165D006o8lAzJipOH7HZMr2ER0UGH3he7me8ba9yCACcbnEwQKD\n9B4bh4xidvSOriYsbQdg40IAjdSiBVdLrJHoY63jA11H6ugddyMk86ChG63V\nylzzR3Emzm18bzBDSxcx1/6HTatbCYdqgHSBBk4bVLZnboOHNjYpfRS07CCP\nAhPDnLnPJBGCJmidw4Z7fv6V7VYX+m64LSZlDOEZUBbcxw/kXIyjZVj/iJq6\n5u+ZJacZdypBe3aJuj81H6RGPPXRYFUeZEK137Qev/RKQJyy/fOPxEenRJl2\nXW3HLmG0Jsy5pPCcpwyC3CIgIqMynefiOwgby2HWUQV7qJi6cCCvLF8Gubvk\nVlSpqFzkDztTj68sWcTY0e5XrMlrWewVkiQ/x4SFqpFe/e/EEBxU+PQybnOw\nmMDJuieJMOjKru1CK4XJbj726Cyr9dt3NDLhWqldG6+XYpSs8JJc0C0lK4hi\n2gfS90HaTpXNHe00x+5DE1sPVOyxkqj6HHCkjlXSnpI8Ar7o7iLvg7WQs7ou\nNyRoBXK6FWRaHquA/RPQMp+9mhVVLXTiuC5bWzKY50ANorP0DR7VuIAbx0FB\nQMXie3jl3B5SiyYtLj1B6KuWuhkIh208OcQiKzx/Dl7A99ZCHeeMEC91sUW7\nz/fG\r\n=sI4p\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5c8ed88a3c1f8dc177de456e8dca419fceffea4f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T09:33:23.939Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.9","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.134-renovate-typescript-4-x-5c8ed88a3c1f8dc177de456e8dca419fceffea4f_1637746614461_0.6515883697422251","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.134-renovate-internal-patch-8f6566b9531fed5ff12300ec040e82a852146bd6":{"name":"@balena/jellyfish-test-harness","version":"8.1.134-renovate-internal-patch-8f6566b9531fed5ff12300ec040e82a852146bd6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.134-renovate-internal-patch-8f6566b9531fed5ff12300ec040e82a852146bd6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d204c3e8a18b2615306e98d9616c90d2e6ed3240","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.134-renovate-internal-patch-8f6566b9531fed5ff12300ec040e82a852146bd6.tgz","fileCount":28,"integrity":"sha512-nwsgEZwuZkKvIpuYJnqJl+oOMmKdGyBypPf0Tf7e7ku2iw1vfXCm8Xy/86qR6ojE8/OpgbrgVMENRGbVtaY9NQ==","signatures":[{"sig":"MEUCIQDg4kRz6/GTPY+12AiZfyJsdOcOmD/HNFtA2DfvUm5AUQIgZ9pcn9UH+RQf5NtORGHaiMCVqFktAcC2s23aoq7AXNk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219800,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnhxvCRA9TVsSAnZWagAAkVEP/jZxpuQo3xmvHshbWmtR\n3D5FHoO2pKEbg8Rk9KwQXdZnFmcebm8TmmwW5VVMCbN1krjsKApJ3/Ef3ZCV\nm46lRwGUYQZap031gjXGZgZ8Lf3GmsvxL8MOaCWvnRuTbg9bb839SO+L12xM\nFTaWZD4zHCaUmpCbE+f5m9apsX9Gj4uUQIeVysO/qGTl3QMuM/jAK7N3Kc/E\n5XlmruQtk9SvTuydi+L4xV4tuHqJXXiFGV0gO0fNyaV5hPotnsOGEIyQhijC\nusst4BQInqyBUnCc5fTseimOGHqD0Q9e5G6XVV/qmBfKOV1zUVAULI8c7syF\ngmfUXZjGzCjm/JHPIUIXRLMEbElNVenBHvISUqKKYcVA9srwssTg8rTLVoie\ntrJSjt8Ra51fEWHLe4GeGFJtkAuR9CUHpMa9wJWr1hpia3Q4jW/6cGzLOgGg\nYxVzAT14jpi68YHNRgiTEYZDF6DsKDFik/GndGun8MJpH0l2TakUMQqc0qRE\nKNeKd87TU6T3eqHF2DHxlE+ZlMj8tdEBDrPfQ83vSI9781CjMBbyi+jyoixh\nbqhLze3dO+ulMhnwM8p+Q11COynhsmmroOo0XRhQnqeV34mA286sFrgGxDb4\nYAFqb9dIUHcwzJLVPHusq+XOca2dVvpuhfbj4FfC0NPF4yL4CSrP5R736rG3\nOk00\r\n=FSMn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8f6566b9531fed5ff12300ec040e82a852146bd6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T11:01:45.687Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.11","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.134-renovate-internal-patch-8f6566b9531fed5ff12300ec040e82a852146bd6_1637751918976_0.8590962823406338","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.134":{"name":"@balena/jellyfish-test-harness","version":"8.1.134","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.134","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5c5501a6961e2b567d52f55c2523b5e4fb2d73e9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.134.tgz","fileCount":28,"integrity":"sha512-oagvz0bWeYow0MC2HUr5z7fFJ/yqvwd24F+eMfvjo54shN3vmkB26LH+82JEq0z37K/HJCkueD25/hTbYItbSg==","signatures":[{"sig":"MEQCIBLeIR3lskfX9ttgDXXgzkBJXwMnGicyV27fS31KllJmAiAviBbPpTPIQD8IXEQZITYdaFtVHRqhcXN1uFPkUVVcZQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnh1hCRA9TVsSAnZWagAAqWkP/0IDFiUjpUAP7pjpVknw\nVxtnok9w6+xV/mV+Ki7gwxK7H40rBa0mVmp8Y+KO3EYCUlq4Oe8S3b3T6MGw\nkf+z8tCIV8wdG+K0+PIxN283IcFP2wM6aQQbCVBTrhMMAB8iXkO2NtE/HAMo\nKU+xd7G6uvoJJ+GC25/vkd9+3G3V7inikS2+hhkfYYb02qQWdCdbtizcQkcD\ndRHhm8CUOmMcOYAqsvTE2CeUYku92gQ+1G0AKD2PSHBUmhgKMsUIW9gflYDM\noM/MoEIWBpGJ33tPcpxyXHDNMOuVcKo87taItqwVnBkX343bNX8EhI+dPHlI\nwQD3nw1qIdFbFmYCXIya/tnpaRMu39BIRlvBe7FSdAkwKqOa2KWJkjc3zU8J\ncz7qoaKHH9nD9o2kFo0nzZ4aUHW2rPmIlQc4Jir+ZNWPG/Zc5CjnVGSdp6mZ\nKO5JlbxsOBwcVKYmNEogHE2qdyN4FMwB9waPE2CFerymprFesF4RT7EVcNQF\nLbs6jT0D1zlgheDltud1/cllex5yQuenJ+YjosJmFE61sAubQtS8qWxAbi1v\nyw3wtnW/VZ6IYl3fUAKxMTzx5Ka7Jh4fY+83A/S/1fPf34fqHSM5WjKRokwK\n5Cp1Zpo0ZSBJ+dr3O+CGg32OU3BEtWy8kco2AqkF8v4NkefrH1/70+S1G2Jq\nkHys\r\n=cwCW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eceb3d1342d83ac774bb2039c252f09ac4299c26","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T11:07:29.640Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.11","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.134_1637752160849_0.14492966114225214","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.134-renovate-typescript-4-x-67ba263ccdfff8b56e537606441097370090610e":{"name":"@balena/jellyfish-test-harness","version":"8.1.134-renovate-typescript-4-x-67ba263ccdfff8b56e537606441097370090610e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.134-renovate-typescript-4-x-67ba263ccdfff8b56e537606441097370090610e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cccab02b81f20ae7fd2a36ab8a41f36d7148d63b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.134-renovate-typescript-4-x-67ba263ccdfff8b56e537606441097370090610e.tgz","fileCount":28,"integrity":"sha512-PJGbGNVXPVXorlg6U8UAqRh+D8GwUALyQcJR9PuAXQbJ4M9YU4fKteuuPL93brZt819ja/WfL9ZqdbxM80wfWg==","signatures":[{"sig":"MEUCIQCqTUzqIn/LMrmDRLstwYX9dDS0uvwUa0BudQRGpKMCowIgD/HU3XY7ImtmW50/mIc2ppXz7EYzrmQ9Xdd4akIw7Kw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219863,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnh3NCRA9TVsSAnZWagAAmLIP/0tXIK/mDEF7AKhtaFC4\nXXEGiQF+xgoHz/i02raj+8OBFU/cHspLNrBaMbI0yJ5ggLWvvoqkw+ncGMP6\nWqZPIWIc7Fc9VZcBE8lLmUudAHYEDUvZkFw0J7PkRMQPS1XC9EQ6wHxGBJUa\njX5XqNHq+OcqXCDYZD/nJqEmCbVXb0HuPUwdCt5B96hUyHVERoGcr8M65MWf\nEpHR5zBLymwu07f5QoyaAd8nndUudgwPSOQi9bqEUuFU2pzLkBeDmcv7n+n6\nCSyQ+G+SYYrL4XUQj2u4qF00myBGsm1FuQ4iICh77RhE1R5FwyOQ5E7s/fXH\nvTgay3VXiYuWYu0dVgum17fvNx6aaLqQB5cufg2EYfZb50ojBGKg1ZDU2zLf\n69dD6ZzpSSqxj3rhU6JNRbGLWSd9qIT5GSAlunx+u57Df8NhRHVRFhGOmti9\ntH7o50s+IyhVd8kfjhG9hSBrmsWbWPaneGbo+t1u6Nux0w/OtYbN5flqfjat\nWU8L4g4BlHo6jFmdVn+S5IG2dDrzkX3PDG8NArgfpmUgmzORDBreqURM2SWJ\nQKMZem5OtcmkSUrvtU9Jz93Y1PPY5no/bUAURD3RSDpf/UeBmKc2Usqg5NfN\nLGVSiqPrEaP2qhvt3DlSAm1GU95xhDQHFx3a8B8dAwOlksREV+Y9AkovOQAR\n1ToZ\r\n=6qxE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"67ba263ccdfff8b56e537606441097370090610e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T11:08:15.729Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.11","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.134-renovate-typescript-4-x-67ba263ccdfff8b56e537606441097370090610e_1637752269437_0.4359348125390232","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.135-renovate-typescript-4-x-47e6b76a69e5127e36e5e0c2610e42e98958a794":{"name":"@balena/jellyfish-test-harness","version":"8.1.135-renovate-typescript-4-x-47e6b76a69e5127e36e5e0c2610e42e98958a794","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.135-renovate-typescript-4-x-47e6b76a69e5127e36e5e0c2610e42e98958a794","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4d60a88732a93944e7c04385f859970024ff5b13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.135-renovate-typescript-4-x-47e6b76a69e5127e36e5e0c2610e42e98958a794.tgz","fileCount":28,"integrity":"sha512-B555jCDG7cD4kxwBPUDUMnKY5bxLkj43cC8hSFWsFXKVsWRvUz2k5ELmLVeQzs6fbcjCgJh7S8cYcd212KbWGg==","signatures":[{"sig":"MEUCIQD2gm3lz6RH17tgP/qOzewiV+DzC7Cnmbab85CTGxHKDgIgWIMj/JT36fxY8HqkfzsMNaKa+8IphvQBCMni0NXWgX8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnh5aCRA9TVsSAnZWagAAAw8P/iCzxyGZO+90eFCoUNS5\ncPUvf6bL8VLoQmGZrdwOvwCaMf3kv7fcx5CW09kghdrcvlyJLNt1mL7+Ma/c\nGghZKMr+K9WuBVt21wQD4iZDqlTL7TbI9w6Frv/3Oa2FTCQ7l3uZHNXa2t3N\nzwEsIDGHJdrkq32+AUB45EJNO/qyZsBCccKyHUFcaLL2gxJMc4/nsBYjdXXw\nrLRcWMS6sncV6t3KczC5n9gwrDwsvFyds3V6CU08c7A2xq55SPqbQPimpyrf\nxMSQ3dv3OGmRisEDTAKXWCXd4BbHmk0hb4EYLRl98gPzh4eJvc9aG6Ka+4p6\nrcKuKcpB3PZ7JJVfZj6hLzPCY6CrJgiSWdTWQ7BlfMlzrtUO0QEAZJGE1KE2\nTwU/6CG4xJ50Avfk2NGARGZc8quUzOoNfELmVX7kjeDADAjYYOt2GzuAMAdY\ngSqxoStiSidGCR21IV7vqxO9LzzGaOye3FzbMJRIqlG0yE1/UL/NrLZKYpw9\n74ipTaGxPgKstvox7I7UXS+wTfDagY7UJqYmEcHrusllkUf+FKuTqAVEDqwP\nT5hH93BciGgwKK7JxoMbi2p9FhIJ3KwcI8lzpAjmqATY1/kgfhxB7wnYX+7v\nq4TYkFhimtdS5DOt+cOATLU1PVGoQNPR9+wX2wO30KAgp/LaF2phUpSjByAe\nLDge\r\n=m1ea\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47e6b76a69e5127e36e5e0c2610e42e98958a794","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T11:10:49.899Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.11","@balena/jellyfish-sync":"^6.1.96","@balena/jellyfish-queue":"^1.0.348","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.297"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.135-renovate-typescript-4-x-47e6b76a69e5127e36e5e0c2610e42e98958a794_1637752409939_0.9931374543994447","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.135-renovate-internal-patch-d76a823a7221d2eb35ee17ac1132bb0ebdf29da9":{"name":"@balena/jellyfish-test-harness","version":"8.1.135-renovate-internal-patch-d76a823a7221d2eb35ee17ac1132bb0ebdf29da9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.135-renovate-internal-patch-d76a823a7221d2eb35ee17ac1132bb0ebdf29da9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be6fe0d027098be5a24d59dcc60c223f1c5ecc59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.135-renovate-internal-patch-d76a823a7221d2eb35ee17ac1132bb0ebdf29da9.tgz","fileCount":28,"integrity":"sha512-4IyRbiBux+9wkP/soYfyBQ5HoLOZPAMiSnamRXCY834MhzLEmuqyYMPrkiqrbemoUq2snrKS0ihytJQCQ0EEMA==","signatures":[{"sig":"MEYCIQDPuf+RwXj8sXUepaG7SaffmnCOo+JLt2by2PZwHGXjQwIhAPDmZr/HUXhhjaOaZoAI8aqdDqorRvt/RRw1SpXi6ASR","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219875,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnlVwCRA9TVsSAnZWagAAm5oP/AhZ+YySkuLiwIIaWLDI\nig2cqc1Nfg0DBl3kfYQo9mNnCp6g64YqjrnbX+mC7ioYzQeO/3R+1ymMv35K\nN8wiyt8uGA9dRg6c29yfsPoq/1QzDyuXcA5+VGYeX/zueRM1dWsbaikP3Z5O\nb0dJyKCjM5qkydN9xtuZ4D+7ZH6p17MHnU2HMRg4hWtJvBGiEwdY/OGwwJI4\nte4fmqUFU4XwekPxgYgFPSBsPNmuS0aPTAjdGaaw17Pxhuq5FPy9orzMruQF\nZQKnyd6bFMGyz4gein0ab/QApC9Qy+WU5LIG+PJp8wj7zQnQjHWHTPhZ8UNR\noZ75eEOYkTAPN3zZU7Qv3WC1QDct8B1VbQZLYX8zzfsHpl7QlIFYJhKPRWZ5\ntmIvvJYGporV0YIJe9MzsSh292d0YeV+3SWN/DnJ1OEFjzkFf6bdNovQ2SeI\nCoM1ZKpigLRwqKgWt7ywRFOj2AyDFMuIk8S4Qmyrmo5Wy3Xfn1CAPZ1TMWBh\nDj1vxfKpI/3UD01V/DI4LOl6SehUMNzPhioTiTPjpyJSBjTkEmIjmqNtI/Eo\n62pMfZDJI+hMVIMnIGQY7U1Nq/g7tzI0uU2J83XmxtvMJDY3J4ccQIRq6axJ\ndhYAUl1OZpapHfiZxogduiV8dxbxaXx9jUL+dvCu5WN14u8nTfHLgfk/Jq8X\n0SNG\r\n=dRAj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d76a823a7221d2eb35ee17ac1132bb0ebdf29da9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T15:04:37.481Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.12","@balena/jellyfish-sync":"^6.1.98","@balena/jellyfish-queue":"^1.0.350","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.135-renovate-internal-patch-d76a823a7221d2eb35ee17ac1132bb0ebdf29da9_1637766512511_0.23848110805693334","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.135":{"name":"@balena/jellyfish-test-harness","version":"8.1.135","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.135","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ed2fd2544c0ecf1fb5435bf5fe425fafcf6aba6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.135.tgz","fileCount":28,"integrity":"sha512-ll698BNMVmrNtePlgUUnyKnACjiFjdaEr6uwwNZAqIbi0Ui8/jl7IcsSeTcWEsi9y8IJMzr3Id4kuDvoD8B7Xw==","signatures":[{"sig":"MEYCIQCr0jsQ4vTwHuo66VxImSjBa41w3kZAlJE6N5SFIFRFuAIhAIck6u3WGiC2DQorzZxrjW6Bf/cu6iXeYnnYLyyMeoyj","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219810,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnlZnCRA9TVsSAnZWagAAsn8P/3AbqJJ8iLi9Qx8UNTHz\nACmUSelG8384z5UNPMU6U5ytrDsr5t7sa+6HsTnpX1dSydIr2n1Gnb3Vp9fh\nGYl1m/BJYv9WuIPP9jtfCLh8+W3dTKBUQ+dM9DA+NO39/thxAzTqXe8EXK5v\nkS9w8l/6Zr7dWlrHaxCHO3c6rGdPu/DTr27kmRBv8OJutJIxnBT0c3z1mQLE\n+f98YFUuXtHJ06JW+0caIgpXO0iLcar0++Ap1MmveVdkDHacoLyBUtlL/5kY\n0i1tbdVSheEsdIWV19btKJ096X/wKgMlOuNMyEbWyzO3nxxOpx9PRQpXSsUI\n1DheUfz9/EiUhpa/3VmBecljGowvDaH6dwBSlGrLSlPL/NRkNqMIKv+cHe/4\nAlzD/MWrKi8UIo4AhVayqvcBY/L49YMDiunpVWsvMDJeUihwSVz2kTsxwqZL\n0BkVv2KEqyknKDZtIlzvTQyKXbk26z/BaY8pK/gmjfFdfCpB/QFjG4x2hHtw\nIRwsvxqxJyA2/D1UCoaK3YAioG25xP/FONSmqfDcLJeOUDRgON1/uFywWMTS\nwQreRSl6CjFxocIV3EtRsTkolHxBBFkDtH+XeBzQ3jDTGpu3CZRCojQrg81V\n1VpVnmJ2B7GqrHrB+hIuHFC+1kxfpWdnoLjflaMgaInyeoNUZfJgbQI7zWs9\ndvYY\r\n=Zj4Q\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b8f8d3a0d38eac8167ec9feba4587fc77dd52973","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T15:10:03.140Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.12","@balena/jellyfish-sync":"^6.1.98","@balena/jellyfish-queue":"^1.0.350","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.135_1637766759545_0.6194464209986441","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.136-renovate-typescript-4-x-cee9cd90d5a7c984e6913b60566af6b95caa463f":{"name":"@balena/jellyfish-test-harness","version":"8.1.136-renovate-typescript-4-x-cee9cd90d5a7c984e6913b60566af6b95caa463f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.136-renovate-typescript-4-x-cee9cd90d5a7c984e6913b60566af6b95caa463f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4070ca018488551720c8b3e1daa42f757cd24b17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.136-renovate-typescript-4-x-cee9cd90d5a7c984e6913b60566af6b95caa463f.tgz","fileCount":28,"integrity":"sha512-efoE1r9t/Wy2LiYj0bgPzdzOfAyh4sAS+oLfQsz0A1VLj7CVSQUhFwWZ8tXrRhdN0vPDrOkkcNtwmW3HdS8mmg==","signatures":[{"sig":"MEUCIQD4VxWtwinKtR7YO5tGxMJ4PnHp/ZR0ODWQszdeg8JVygIgXQe6bBDKbzeYtVlCV1eFYTpUZ/szZE/3WwdAWYedzcI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219967,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnlc9CRA9TVsSAnZWagAAtTgP/i/IdVsGqmFn/ZCmF1gX\nGdHtbnjVSafciXEJkngNVVkLDICdqPt/qxnQ4d4l/0MuWTP/gu9uoIUxwdfe\nRKx1WscKOlGjBR8PDOiFUQM+tCkTnv6E+u8Zw0n2o7ukO+JTUeaO3VuyvvdA\nviWbayRVM1oWF6PpyL3Fsux62Ra4N9lWJGwB6oo6BXWr3rN/B1ruzOjVd0pW\nOG0wjSHvdyxLbPeqUgWu/BwDDkg0TBajm4oLEm92KkZ/1kQfzlpq16+70mVq\nKMVKvfDwutMx7g3ex5FHkHM3RP+mUTRS1ZzxmrMEkcjkIcNnjj5S66gkxRtA\nJZLAm2Oe5QmRivkCo3OxDq9KhbRaKWVGPz8nJ8LUi4/rGCTtwiYwgR0xxfcT\nlTTN9zuO6wUYerGwqe1YEdYQ2ewO0KDgXSKMzxdkW+hxcqe8E5id0q8ir5kb\ndnxrWXyVnnCM58xB+wnDR790Gfy1ZtDEZHMrywn3SfuZ2jV+CoBQTezFvOIL\nUpfBTkQnTbQnXQ9AQQw8SKfjq9quA6kvLMLuszZ6yf1pkGTJxsSeglzsZMTG\ncg+NGYwgo2fRXbB9tRjyCwjx/FC5/XP0fJ+kyrJggvQxBAwav67vGgvlrKY8\n36gMFcAaB39yqdABidNSK5WW414D7M2Oj7xOxOE56YUDPwxqFKrWHKC2e9Vz\nfgZh\r\n=jNSU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cee9cd90d5a7c984e6913b60566af6b95caa463f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T15:12:32.720Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.12","@balena/jellyfish-sync":"^6.1.98","@balena/jellyfish-queue":"^1.0.350","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.136-renovate-typescript-4-x-cee9cd90d5a7c984e6913b60566af6b95caa463f_1637766972962_0.24972863936552425","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.136-renovate-internal-patch-68178e1a640fe2132adc9d827398da1ad5f382a5":{"name":"@balena/jellyfish-test-harness","version":"8.1.136-renovate-internal-patch-68178e1a640fe2132adc9d827398da1ad5f382a5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.136-renovate-internal-patch-68178e1a640fe2132adc9d827398da1ad5f382a5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2c3029ba07664b42a5acd5f8c3e9ebaa0c1f176f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.136-renovate-internal-patch-68178e1a640fe2132adc9d827398da1ad5f382a5.tgz","fileCount":28,"integrity":"sha512-y5Vu2XXk7bUUWmLZmK9DPQDO/34+Th7jfIXzkJKoHGFYKje7calyrwYJJIrywdMEqyo0xonOW8CLHuzFcanbfw==","signatures":[{"sig":"MEYCIQCvgwBFJmacKG2giP8Tssr5BbyiBVZaYr2pl7JIuFin1wIhAKBQDk/Xe1hi/nxG6h10maqoZ8W6DhrIQ+c1DkuL/Yp2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219950,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnnnKCRA9TVsSAnZWagAAi3wP/0oA1o0BjUPRYMmloFY+\nLnYfXQrmTf67tmX7tIyeE1KPa9uTDgBKpfBdJcAjg+OKG04VD2+H84IIlIEw\ns4E1i6nCsH/veIKPuOAMsJLHSmi1SQ8jRLJCuxyTquvFUssEZWb6lS2+Ojd8\ng7LyJ9WZt1nNjPPjsP0FKCg0xYVBF4ABeQ1Dvx2ExiD8AsDH+6EmANkZ6LzQ\nkyro0Tv98TqPal4ldK8gvFWSb7IFlkwmvyGGyjnM0QCkzSNSaOWCKiDX7OVe\njMqtx7pcmhACuxMUE059gEFNva5LRaO6Mv/FlbS8OVUtniIdy5uRWPKUMuRn\nIU07wF/9EUL5NP0CHqt97ZYAxMsbKm5du4QNBpamyFGQoNfFxv/mkSNgeJfW\nRsNZl8RD3u17mVdpXGk7cCzuM44zEz/Gq9/7GBsoaK0XVt6piiPbs2nJSXIo\nDBhti2F+s6uh5w0OxdTQXtYqSngrrE2tPdpHa4aJLeaSsGEVCm/PI3/QzP5O\ncWFiuVgUMSYhfqrQOVw1dBDFWatMIOMN2D3v/dHJkesPeBLC41lDCVIjl+5C\nM045lqybyElSDajppW07ParJrzTuK4CJ9gZEBQpJi7NgxUzG/TWpz+/3QE6q\nLawkheyoUL3bldA4FfL0sJChSC4ysoyP4cwnLI+oztJ9CPypuogbl/Nt89Qx\n+Tlk\r\n=JQ1F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"68178e1a640fe2132adc9d827398da1ad5f382a5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T17:40:23.935Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.13","@balena/jellyfish-sync":"^6.1.99","@balena/jellyfish-queue":"^1.0.351","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.136-renovate-internal-patch-68178e1a640fe2132adc9d827398da1ad5f382a5_1637775817787_0.03109315252528355","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.136":{"name":"@balena/jellyfish-test-harness","version":"8.1.136","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.136","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e823fe895b01e8c88a690492a3330f77cc0ae418","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.136.tgz","fileCount":28,"integrity":"sha512-NscCv+r4OZrs6221rBBRpgJDeq+GNcspEHOekpdUXOLm5zIS4lhEPYLw0GkhU4M9xxsH8AAQPkEnHPV25cvXfA==","signatures":[{"sig":"MEUCIACWhyWOQjXVDxV0+XVdSDHesyxgdFneA1DZXNMySf6bAiEA5As10Ag3CHH1jfH8PVVkMIvyVqBpH+TgB4FUWL46cC8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219885,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnnqiCRA9TVsSAnZWagAAiNgQAIu8GpxfBxIkgmbRYgGN\nykZ47jGENgD2xRq2wzM9JdkvVtJci406NSH7ZXRPdwdponH9b88tOhcE33GL\nH6UIHZqGL2h3hnVFnUKLa9r4ko/X6cFptv8yf0TZlvdlRxkId1oZQ71oe+KK\nx4AS5Ai+ZmpWk4LGbx23gatXMsfDipp5eyDg7+0ZzIkgxJm7wLi6fhMIjHyR\nfmecTro2JNBo6m+rcbnZA/5SBH250OSCpzQToQEGNno0ZURUcGZpqW8Smz3t\nQgAWHAeUgPoymBShTa+F1PnAbXOHpmrpt7zjMxapfCxZSB7mVd/iBO438Z9l\n3IJba8aS9eHXck0Ahkmz2NPuvST4MqPCepMnPASGXVSDIcrfk+WSzzy9koaE\n6eXRwbGayiEMIj1zJ23qWUdsSJW4SmSoQo/NpsffZSQEOix/AXTdbBv/PyNY\nd1jKxuQ/l+Y22JnJ1vVAqMhPYnre/jKwHO/SidAGbNuSS6RduX5TOtDMZ72w\njQL9y/zm2pDn8mw91fx697ENny/kc0PzVRwQSn+DNiHoQAK51DowCtWsIUjf\nevN4k4sFTRTYv57QGc3JDRNQFX2xD4fwKiLQQ68k+ENaTf0yhQ8AmBpwmlh4\n/U5Ho1ylaBmOXFVlB0Gc3wibh6pUxWxwujRKPMuIfRKwDjY5oE7l2i8o0S+0\n24GJ\r\n=a01n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"37fc3813e75ae1a73d5dbdbae86586c534135372","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T17:45:13.880Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.13","@balena/jellyfish-sync":"^6.1.99","@balena/jellyfish-queue":"^1.0.351","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.136_1637776034242_0.19891953970876486","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.137-renovate-typescript-4-x-ad31d0d49f753597a28ee8a567dca33afa7467d9":{"name":"@balena/jellyfish-test-harness","version":"8.1.137-renovate-typescript-4-x-ad31d0d49f753597a28ee8a567dca33afa7467d9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.137-renovate-typescript-4-x-ad31d0d49f753597a28ee8a567dca33afa7467d9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d950ebb306b578ab8ce48596f25cb0d5198f154","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.137-renovate-typescript-4-x-ad31d0d49f753597a28ee8a567dca33afa7467d9.tgz","fileCount":28,"integrity":"sha512-t4oR9CEfqcdvaedbBjjTfRJlPqUg7ADQgXk/nzu4XKxuPaCK/mOmypa1fNPPgQ1078gdVg1W6I286nd9TuWmwQ==","signatures":[{"sig":"MEUCICNqVYvV0rzQYL0yYs324+/2LiqEsZoejXexjTa4kRJUAiEA/ziBfU3C3tPreoe26HA7ywHWTd5Z6hXTqclpihPn9Zw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220042,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnns8CRA9TVsSAnZWagAA/ocP/jraePGqmqXY8alminzD\nj4Pj++N/ApMxy3eE6i3P3ckuKqHmKGuLXR0G2THGEWBIgZqMgBoixTxQf8qA\ni22eD83Ifaekdd/gTvI7gcupD0QzjuniqlUehFyN+/a+bQg0F6cWo+qIVAO0\nYklcaNu9Ym4P4le93NcqNbzspP93Wn0a6VzWGNBifRJAR0hYCd3gUyONFFwl\n6zVENS+o6YDjXAaxCKXACOhnk9HrxtD8h3GRlWyxqoOBprIdA8b02NDy8fuP\n7Vf4s5qmK8ZYESGRFR6OBdv3Nvp7WsKSny7mmNzWKmYQTXteAI9x9PeLblZx\ntJXykVpemFD9QdQFUSb7WlrwoZW3EQMA9VY1PwSVpe93YmhuT+gsuh9aB2p9\nQxMHWju1zl+yvQUgtxVtREM33SdKTht8XUaONtH+h3o+Djp3HZfNJc/XEjyG\nyXxiEDWuFJsKb4onbZ1n7J56y/w2OmYK5lOYu9Wyl5DgfYVc2Zo73+JcDzBc\nosDwJr1X1oCc/1rcTWzro4rLN5RiwbWF880EHHoUggmpWeIk9We+eu2y5gDo\nUucN6EXVoJSrYTqejji83BGl/AUtZhVXrfpO4gy5SO+xu1JqSVojnhcoJhS2\nH/jE17+6/01aqK7JLbs7/EUlw3Aw8cBiekFQM7G57Lr65nnMnQfO1K4x0cVh\niq6g\r\n=DK7o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ad31d0d49f753597a28ee8a567dca33afa7467d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && npm run check && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","check":"jellycheck","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-24T17:47:24.779Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.13","@balena/jellyfish-sync":"^6.1.99","@balena/jellyfish-queue":"^1.0.351","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellycheck":"^1.0.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.137-renovate-typescript-4-x-ad31d0d49f753597a28ee8a567dca33afa7467d9_1637776188183_0.06038513962221881","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.137-joshbwlng-remove-jellycheck-2ea669c8cf832c852dd92ca5c1a582fcccfed34f":{"name":"@balena/jellyfish-test-harness","version":"8.1.137-joshbwlng-remove-jellycheck-2ea669c8cf832c852dd92ca5c1a582fcccfed34f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.137-joshbwlng-remove-jellycheck-2ea669c8cf832c852dd92ca5c1a582fcccfed34f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"37b3a9871013f5dbf3f1243a71fa7dc35949778c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.137-joshbwlng-remove-jellycheck-2ea669c8cf832c852dd92ca5c1a582fcccfed34f.tgz","fileCount":28,"integrity":"sha512-paCyJxU7egsgwFBxLTWm+Wvg4MhqakqiqW4ZGv1D84PEzp+m0YSpLohRngPKKGx0FIr5PD/3h9cK45/j+rh7Iw==","signatures":[{"sig":"MEQCICnseacSWffWNkrMU4HzUwi+BzRr6f9CxccFus39upHcAiAUFF2QWNM/GXb3gQFqBFiTjrFBl1DBaDrUYU74DFcnJg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219938,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnviDCRA9TVsSAnZWagAA708QAJ2TBuNSZtTVuCms5/cG\nMn5QC0Mx897x6MYqESVaauLQ/APofqhFrGzwPkWcpjt+w25xC/TXAj85N18v\nvO8m/U/H4GqOeI4RyMi020OBqqT0geCX1Tgvc2NBLhao30cli7/StJahVrlE\nsJd161S/lxWdFkAG2V1WmgR3I4E+n7IqYoOt8NrHHZ210z++Qcar6Ej6qOcJ\nRKRt37Lao3EKhJFD98beAV5t71qWcYTUtzTayQ2skISAPUWeXHexAeYsqDM9\nRdSR3/nMdwJjNEfvfwo2i6N/Ds9G/MxnhI9IQ9uAt4wsGE55NQyXgG3KcBgN\n2FEoblxn2+ibibwHbjjHIDrRkcGIc+j1vv0Y/NZ8r6Uv0DjketL+/gnrBesw\nuprqSlvhGmNLIc5NjHkZgYGILH4fFNEScb8Om/0868CHQEZZEz5ixjvgey6W\n3BPKDYGyNmLhfjrX9Nio8CKcBC92Gv1WYGw6lwKdRj1LCE627qvvOttUozJB\ngIWQkGSeaqX8cuErucSoH6rUCn/X3XBPuihqiJf+Y8ITnHlCF2y+wS6ftSLr\nw7Ytqbpyd0Kw9YrloCI6GrqINItf/92Se2FyhCRkiEINoaccsmm7NAzGVj3Y\n7uKVLvDZ1K2AVGj2OBD8GEP0A5gRQ6HGKQwOG3iwuW5yfDmr5qcnLu+yAn/R\nPdnn\r\n=DttY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2ea669c8cf832c852dd92ca5c1a582fcccfed34f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T02:41:05.874Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.13","@balena/jellyfish-sync":"^6.1.99","@balena/jellyfish-queue":"^1.0.351","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.137-joshbwlng-remove-jellycheck-2ea669c8cf832c852dd92ca5c1a582fcccfed34f_1637808258839_0.6323423903432273","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.137":{"name":"@balena/jellyfish-test-harness","version":"8.1.137","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.137","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f90e0e785be77991cabaac60e33f4471a6c07832","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.137.tgz","fileCount":28,"integrity":"sha512-Mwe6kV38HrzGflR3nxFmzd3zUTvjokfvUZmv+GDdkT113B39KoxAIyalZ+QW/tR6J8IU3/XNYWK++gPi25K/vw==","signatures":[{"sig":"MEUCICL27ddGaESMTbmjXxvktkEllKos4Ow1sWPITKYqOzQjAiEAuuf6DLWQtC4WmdMwlwdgFvGxuesKkBd171ZrYTwFuQg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219869,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhnvloCRA9TVsSAnZWagAArBoP/i0e3kC60f+1LZaIlKoF\nH8z/mErk6S2biUb70C6j6S87TGhK4aJCilWnuuYQ2pRykBfOex16qcJW9Jwf\nRzigEbfUxzXt7lplK3lqlK631jmhUD5MMslfPbVO7U4ZPxnqtCkbMtQkNRMv\ncI3sVplqCTIO5Guc9Gl0vF+MZNiRPkksOTztXisrGbrGRYxqXsaZnEA8HkGl\nKI2SYB44uUfE0CN57D1lEJo9PAooePXtZlGpEGsg4u/x36+Z5irPmYrcHzCC\n83Ri2SkV7fHerRrAKLsgnLoyNLOT/PGuY+bpVQzH4wUB8RKjageO6Kmy5EKE\nMpisxmKSrcsERfu54OsV49oIgvwBwf88+KjTY09YwThZsaLHdhdoLNdmhd68\nKJcV1MroHbqf/0ADaP5HiGv0TFJiCPFleUKV4xLW0SOvR9Bp3QVsd4sQc5/c\nLAnRk+OTbNADBg/tRYHztui35J1FMYgzIphsFpsHiuMbuXhJejiNbpI39RqQ\nhz7g5iuUHsiP2dQdlZNGkgEDYu13GdxvI7zs6wDuwAuRDZtltTXkpw15Mof7\nUPgZhcCiAvcolo1qAL0e2grzPSe5iT/5vrHi9PoSsE2Z77gFoFWQ8vJQDEE3\n17usuS8gDbxuH5I30+TVzw7CqjfTlrj4AIBHbdivUqvm2B4QscJeUzqEfEQb\nzGhN\r\n=IxDI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"815238bfdace25c803e3f7cf3666af3964c6380c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T02:46:07.675Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.13","@balena/jellyfish-sync":"^6.1.99","@balena/jellyfish-queue":"^1.0.351","@balena/jellyfish-worker":"^10.0.108","@balena/jellyfish-environment":"^5.1.19","@balena/jellyfish-plugin-base":"^2.1.298"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.137_1637808488209_0.6839669140926552","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.138-renovate-internal-patch-28f0102c9529c989b1322173b1fee72b628c8487":{"name":"@balena/jellyfish-test-harness","version":"8.1.138-renovate-internal-patch-28f0102c9529c989b1322173b1fee72b628c8487","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.138-renovate-internal-patch-28f0102c9529c989b1322173b1fee72b628c8487","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"654e0d225f39f0847a6341722252bcd605891728","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.138-renovate-internal-patch-28f0102c9529c989b1322173b1fee72b628c8487.tgz","fileCount":28,"integrity":"sha512-LGRa971gdH1/lnBxFQ7gapzepJZ9hUL3DWY2izcL1A/5ei1vzGOc4rpxKSM9W13faZFNVkivq4WXM1jPtzdxjQ==","signatures":[{"sig":"MEQCIE6lNT+LKqtNXr3b6pkmrQsPx9STOKI/puq0haImIim8AiBx+ck9r7Kw5RJtTFZPE3WDDrWo6k/xEVkSZCSKvVQLLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn0bBCRA9TVsSAnZWagAAGIUP/RIGf/EtO6NKwaTB+VLT\nDRcJr09OKZKH4xIRKR5ZgwptChpfeBfubfU7/NMmS9a+hLwBJwpXnTH5K9Rl\n1grUcLmgD9K5TTLGUcXdigt0y+8dOaIgWip+/X8JApi7Qgy5blP96a11+PDK\nVfqYFMptux7RO1+2peWpyKNq1GIdWUn3ek5/cJUGjeXxJdLncWgUIyTA0BjK\nR7VXDJ5foRpL9bCVBUdrMDcIzz0UhWisWv3kfHXLsjWHpHBsNvqpfXRH7XgD\nPTvtb1zhVI1KxxNqfx0pyeUUyw0Z7/BtuE4P052F66FBXjmkoZwmRHreO76O\nFi5O0mHcx7U2JN9l+4+2hktzz2bUpYQD8uLoS7Fq3HREOYW8JTfIJv8+AdaL\n7vPmXYfR1l1ALYCBJKhxtZZ0zCb2BCjKe7FgrvjGhD6HRl28CThZmvRBNvKx\nlxi4V8+OnuiZr/3nl9BpqCVF1jNnyDAvV+twHw8Ykaoa4NQ0ihXEo5+amwSl\n+hHHzTU9KQaHwBHIu3+17qVPhV96YD1b1OkPjjeMerA6hyRCehkfPeZ38Ysc\ncHnH4sswQn40LRlsAaPbFdajoWMFmrRxs4uTQZ9NKT+KdvJTAyuEVcnjptKg\nCfcFc2RhNBzlk7ouWuEuDqJZdGNWcvjpceYK90i/Osq45Zg5DxXHJOfuFNB5\n7ihj\r\n=4J7f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"28f0102c9529c989b1322173b1fee72b628c8487","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:14:07.920Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.15","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.299"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.138-renovate-internal-patch-28f0102c9529c989b1322173b1fee72b628c8487_1637828289151_0.32362769777617784","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.138-renovate-internal-patch-218b8e6fc4f81661f695645539e64797a4920065":{"name":"@balena/jellyfish-test-harness","version":"8.1.138-renovate-internal-patch-218b8e6fc4f81661f695645539e64797a4920065","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.138-renovate-internal-patch-218b8e6fc4f81661f695645539e64797a4920065","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0cc068821c51212c661c0c9cef247b5f46082bf7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.138-renovate-internal-patch-218b8e6fc4f81661f695645539e64797a4920065.tgz","fileCount":28,"integrity":"sha512-uvWbk1WeNajOZLEP3j5nj4YQZnEGx2v5QiHweWJWMuzBVFTSgzFSz4hmTQ2pe/njN2+mfE/NJC8OndHqQ0JbyQ==","signatures":[{"sig":"MEUCICUxevhc/Hb7vBIDR38RhYjdTe7P9jVLSv6UUo1OzecwAiEA7YXO8KmCNIAyytWRLiUBNu3pD1zj3d3mmHlg6kX1ZV8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220010,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn0gTCRA9TVsSAnZWagAA5hYP/jNQdqaKm01cfg6cHvKs\nNj1FrZGBVwspiOJ4zvnOCKdmhc7V6orSpfc50PcLV78j823Fv02FfnGytdmI\nl8z0kcxkNMx9pqKcjGnDmFXc9A4RxhtCiGQXKPRUhde7NUhZUMPm3+LVThXX\nffwQCZMT1HKEDQvrimPgCfrNd5i8YvFT94fZ/yAA1fKhuhjzErFsoCGSOjOF\nKx1NvPAzR3/Xi8p6qOHbDMWEQFwSRQBMcY66d76AXGrKSAvux1bVKLBQJWRu\nh7ffIi8mmRsmgimTOrd+ILcOMtWgEMhc0Z6HhKdrt2Uow4QD6duAZEQ1tmK4\niFEQ0smtzXwNSxgqUHMx4RgL5X3355rsE0+CiirAW0GAxmXUPq3tumKP9lNf\nzUDwWRUIhYrek87OmVu3ukR0Gp1A0s7Uq8NYalDq7nIpnztTMhZYG3YeIHP2\naKyuqGByJf6TBsnHEh9dRQE//usMDI+B5O1o4aFjtL7PMcFI7oOwVMCe0yC8\n56sWx/bjAT1BmQvFSDSgngLeTyun3zcFoFqveF8PIJJZTUSS+bCiCnbZWsnI\nauCnLU1ekRaxsaLRZmdyWV+qgTFjIiy/3X4DtogGFUcbWYkk47FlzUcx/Wuv\nb3gaGPWdbdXFW16evpxaDP5WwN27RErdLOqsDbLeRGYsFUCrItJzEzjTs9lZ\nqUsd\r\n=2GKH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"218b8e6fc4f81661f695645539e64797a4920065","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:19:54.332Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.16","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.299"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.138-renovate-internal-patch-218b8e6fc4f81661f695645539e64797a4920065_1637828627158_0.6521629976792418","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.138":{"name":"@balena/jellyfish-test-harness","version":"8.1.138","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.138","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc48c0aea8041cb7f41f11bf7b4f8343534e5332","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.138.tgz","fileCount":28,"integrity":"sha512-lB8NiaqVyaU8Jswfk+TGmQhtzFECB22hYyljjiJdF3ET7UdRc5o97rbIhk7tB6gnIEtv6O9DA/CDb3Q5wbL1bw==","signatures":[{"sig":"MEQCIHDU5hmoFD1rlplvDKdAmiPHmf+D1TdEqWK0W/6zEhWWAiAiv6ilHIi7dfif9OIxiD7WeO4+SdUBImefWd7vfdbmyw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":219945,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn0j1CRA9TVsSAnZWagAAI+YQAJwFL/6y/2R9uCwbjl9c\nzhELiqmuaRQwngRdcViWVSWYm+D0BZ7fZVc0BwX04cKxs+o3/AKyTf5TM/Kr\nOtywpqxU+M3C0MIryh1MKtxi92ZTXt3dXrXxmaL+m6s+BS0vPngQ58cm5Ye+\nqJaSAGlFnyLFVrLxctX/S563VWeE0qyskODcnfxji29kQ/t6aJZNRmYnvjrp\nkT80SqCNvhXHJDqUMLbOKEYC60n1x6ojP+jLca5HgVnguM0JoVptK4Fsf399\no2a2N0TgdWlZRwiurrLA1Mksp6+p7dd4az9qi3tvGpezrNmVUe/BbHBHYB0P\nVQRM5bcXlGclT5cWLdFLZipiPgkMbjLdM+aZf7I8Zy+KQ9/rjx2WCRlOBlOJ\nFbT8QsvzWWzdtlXY/N9ujKCWZ8sm3od96KsibXjZc6ILlEvErs9mOjzycLzl\nysO1N7tcwmVK1TC2Kz2HiPqpDutKtd2E4dEBbaniiZlKw1Vaw/CV+nnjv+ah\nlD8z/kqWWAWwuvKP502hCaAMAteZNw+mVqk1j0ZO0Fg5q1Wkp5Y1xABK7Y0u\nbKugWN1lYrRTwgdrnGh7XBmbCSXpyC6baYKOBK/Z1BWJCpXangFSh9QkhZkS\njODUaEORtikFvyLoiBeKqAgajR1B17/xAdKSTOBPt8OLqwG2SbDYkumGkDUF\nAtwx\r\n=pRdJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cec3e915fccceaba881f721a71d38661b3e3cab2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:25:29.778Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.16","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.299"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.138_1637828853617_0.19939483203075725","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.139-renovate-typescript-4-x-7b30a040c6446c43fa84434d89f796aef74e89e0":{"name":"@balena/jellyfish-test-harness","version":"8.1.139-renovate-typescript-4-x-7b30a040c6446c43fa84434d89f796aef74e89e0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.139-renovate-typescript-4-x-7b30a040c6446c43fa84434d89f796aef74e89e0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9fc162c63a3b7445914e6f61a08e2f7d61378196","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.139-renovate-typescript-4-x-7b30a040c6446c43fa84434d89f796aef74e89e0.tgz","fileCount":28,"integrity":"sha512-JMw71j1g7mGsPQKBRDYYXYYn5R4GXMDC6J09dZxnSbRSQ++fLKWRdwvcx9lC+LXkV34J/srudzkIJlW3JJ+zkA==","signatures":[{"sig":"MEUCIBxPr2Jz1LEsLaOzltd6aAumFTIfDE699ZtCAZGjG8lEAiEA0aIIlU1stwQDWsMXQTBpn6X70aL+Nz5ZDHRq2PSWBfQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220102,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn0mbCRA9TVsSAnZWagAAtb4QAKSPROXXcGbZ4H+RQpGW\ngLdt+3+C2V7zQR0VUR+bDDitzlApiMz9zv7t66O3XsSNunxL8CKVUEO545OK\nlf8ZjToTNGjvGKTRG4BiqJJ7TYDBH3NuvyX/bY0geRXWyUjLjYz53BOIUR0a\nrFtgffeRz742HGFa/TBrFP0O5Pu+QMSfajfn62DW21q8Ga1hSdbKy41n0bAe\n8D6WWYF+LzRyl6N7ybPPIbq6LkWKxxfuMTBDQHxXNV9bxSIp/ihvGx8V6mMD\nQC+WXVrg3Tg7McCovskpeVk+5ibCnuYspvdynTo076wSf6i5Y4xCR+rKc6IQ\nKWrzM4XuhZin9PxEc+E4QuH67/Y0LCDolKdkqVC/D1qd1GSjfAON7gUVe3ax\nMroT+QYSAn3l3IEk+FSq0WrL9FEDNIPjW8e7rBfH+I74r13NksrKdxgRJt3m\nFHldX568UpqQlvij/jNSHSSdQp0neZdSygXUYUqF3/G0R5eD+2Ky8c8B8Y1f\n799qlkjAYQzlBbNM5KDSlQ59NG43PsuTkqm3NuuYBb1MnQ0t29bvI21EMV1W\nUdBsP0kPZKRosH3jGPDQURAe0+gdv/kGpr/j2f4g+KWUM2EaA7ZiuTivLx4R\ntlJFLwRemSjDG4GYkeZqIHQbo3EFLpF3mSs+RpYXNwriYQzQugoeNblb8gKw\nSyTe\r\n=MgZ0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7b30a040c6446c43fa84434d89f796aef74e89e0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:27:16.009Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.16","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.299"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.139-renovate-typescript-4-x-7b30a040c6446c43fa84434d89f796aef74e89e0_1637829019173_0.6818536899155077","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.139-renovate-internal-patch-370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9":{"name":"@balena/jellyfish-test-harness","version":"8.1.139-renovate-internal-patch-370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.139-renovate-internal-patch-370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7f08ffd77dffa0304d8813d192450d3152b6973e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.139-renovate-internal-patch-370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9.tgz","fileCount":28,"integrity":"sha512-1zWYsobkooMjXkyqbqA3ComCOk0ZJX2FBsfQ2u8thgeWl1loKGzdJVSRg7IU+sao9YWswuJudjPRXpnfV81aVw==","signatures":[{"sig":"MEUCIC74hWZVcl62JlvSzCwC8UDQjzi3Hrlb+7MzWzU16RSuAiEA6wwGB4a8sssWXCbGnnnvvgqinaUfrrYePtGW7G+L4Ig=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220123,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn0udCRA9TVsSAnZWagAASN0P/jPtQi/1tyvVHZGAhjft\nP4nhYyE9z0PDPqtj9S+NSuIskI33VuC2rBczQX3DaRfd6/Cr+GliMTPqMAEQ\no/GOqXpz8bWvz1zuFs4Pr1jbGusbvpkNypsdJ2RH8YnxWzoqpPXZY1QlZUUJ\nm0PB+3maMFW85QW4rMc2kEeXzK4EME+tJqWqMriCWFK4GDCvcVRYz26PrCNt\nGpY3dZumNuO4ImNnr0JM9sfnKR4IYbhXEWOW9x/uVYTJp0sLae1gfAopcqqT\nSMquexlMQFl3CMcu7RpR1WCBI6yyB7mKT490geXfzPA+AK/XgdvKmBfqzuFM\noAw2amUkbBC1ytqXlzDqIBMU7ckVBCoWF/2Cq3cCzz/pWHVsoqfR6ib45jl0\nKT7CdPBU75HXCplo45p5Lfaz3JcmWNWTyZCe96WgwXa0BDOVZKvPvVfD4/vr\nBQxB9cQehLmgpwVOM20OEU3QTdX1WwmOalOfW2cp/4oe3mTzjC00oYhC2WeE\nvKeyRAI4JPcgTC1HevzO2aLVxYUe3pBE/NbuviH0s8L9V+qySFb04vGf3EZj\nv8IZ9ELzblvxbTt31OZs2Z67a0SWXWqmkvHuzA44hRyTXtPXQuIF+RA6H0N+\nFGK7JY0LR5aRtUv0OgME+uy7vYsnhuUeE1uoGwc+3/RE5TjHAhAO2DqLe84q\n/hzs\r\n=QUAY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:35:31.944Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.16","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.139-renovate-internal-patch-370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9_1637829533134_0.9114705910451106","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.139":{"name":"@balena/jellyfish-test-harness","version":"8.1.139","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.139","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f835f733f0d467592e6155f0e1f28df5e5fccda6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.139.tgz","fileCount":28,"integrity":"sha512-30ZDNs+ENkR9lv2T7wCLKrKptbzQt3g5DpaSSE5huGlh7Zryam4D/bgqFkfzkqSasP4kG4ydFaWeueCEdjm8gQ==","signatures":[{"sig":"MEYCIQDDDcfyrIFCDDyqd2iti7eeiux42zUH+P5C/WudVtuaRAIhAJD7S4jkLTbwfR5e+nroZeuxCFf4SFvQXBzPeZNOlh2k","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220058,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn0xgCRA9TVsSAnZWagAA+LIP/2fyIgBOYFkVg74d/Irk\nCxXWhc1JGUTWPn79YM56D+mSurQ9z5w7KJxplefrJDrD+DpttI6ZNIjxdA3h\nEq0VU+1ERlYjpLhu99VkHyFOhFbRQiaXls3tCINYZYtEZwbs/IQLIE6wsdji\n2udq2BEUNCQfqwUQlJZEZ7uKF4GpdKKE21w9KwJWF69gEOydgquRVTGJN94R\n7GpEFXM5Vz18TaUA3TH3ruG1Im6jqxjNiZ0ouU0BwPfAAHHgJynZsWs5eo9e\nPSPuEmQw39nJVQxoLuoylNQCSMrYoR/KQ3CfBqwHMWmk9UZ5EfGkmZDbLAMC\nhajFXXMrNBt+4ozrgqDSGkpL64LE0YHq3CbHBrXR3+wZW4tkFYES6fss+CBx\nP+5gVDTEJOiM8LBzvE2OVKl5m8SfdGuvWF50i+glChmUnsWXuxEtrzEw+lHe\n3Uwhf7jarqKsqugThofs/zB3V1j20q/LNhxoy4HlLkhoLcgSvNanpk1HPrU+\n+umKhPPcmoa6FiMOCjHhO70jFQPFIY3LmDVsJvmT0sb8PVOPg14nw9E346Ao\n2l7W+MQEYmQjmSh5K57rjhUhrJP/fSmkAoufoQUors9WWJax82L2eUJJZmPB\nmdJ7TrYKaQcsxr0RmRXJSqj5K2lkZeeN7aUL25cIojooi8vlXE03UwhkC1z8\n2+Uk\r\n=juSu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ded9391f1ab5f13c0790dc7bd25f4ac39dff45ef","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:40:11.774Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.16","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.139_1637829728128_0.4423049779520314","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.140-renovate-typescript-4-x-5ad5106ebef04cbabccd3bd53785b99ba70c1bb2":{"name":"@balena/jellyfish-test-harness","version":"8.1.140-renovate-typescript-4-x-5ad5106ebef04cbabccd3bd53785b99ba70c1bb2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.140-renovate-typescript-4-x-5ad5106ebef04cbabccd3bd53785b99ba70c1bb2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"70076542c2dcb3fbd57f07b21a96276c52c08e17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.140-renovate-typescript-4-x-5ad5106ebef04cbabccd3bd53785b99ba70c1bb2.tgz","fileCount":28,"integrity":"sha512-rvxWaA3aR321+V8YmEISo4zun7MIw/TmdqpLLdPXTDjkDQK9+Wn+HEC/7xYdsmRxcMph4U28pLNO/MST/0Sacg==","signatures":[{"sig":"MEUCIQCZ6P5rfZV0BN1tuSkagk1RLkG4Ybi7grmrnu7mx0Ux6AIgUWBPrCznsbqFEpsGl2E+tBnnul/9r51v8yaN89rSNwM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220215,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn008CRA9TVsSAnZWagAA/o8P/0Y36hi9glJD/y7HehyD\nghZim5qYsfN23gcC9RaycCQJIuHQ/9mGQ100Ya14+DhkL8reDS3DZI2ah3NW\n4SYjD4t+4VK7cWvqI6u5PQF9036AmQCgTak77O+Jg0R7xSt6Nx9ZxSjBUtjW\nrEUaCvwqpG/czAl+XLVn2S9JiGkKDJ2D3uNLUMrMxHxHe15BdLfZ1NVjcazo\nwb7HBZcIYBW5iOF+CEB8CiUVA/xnP+IBVJUPJBLimV1Ezhd6FmZjukSu1Jyr\n4DnAmlecn9DLJXOMv97rFI53JNo1uQx1V2mEdImQSDNjpjpb3BMsSHBU3qWJ\n8c1uePceaVU/07EfQdfZqXNve18SNI/d3yS60ngpdU+PnkHgMtv19OU0pbPe\nmdrOWTtPEV29Wy/5tkJUAnuY3R+dZf7yJGzASLPVrZHfnd8gWKU0gwniNFnE\nSy96jMr+nKJ1+in+klX7jC7CM4IsuM+giVBme+BuQo4hf7aXIP/7U1LKCMio\nOhz/8SW6mh9ELtwDzKWQU243zly/35HQBge9kYf6LME0WDxiQKHzhV5YOvyf\n2QH9E4RVQUgFedxscjlBVuNeOpfytwRNWJxOsViC9Q6XLy92T6ieydpd2ROE\nwzdqs8StIJCqyFgoBaVOI8tJlCiW0WzHiEBZFZ7kaeW3kDM608dXlF8j1hkh\n54gc\r\n=J86W\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5ad5106ebef04cbabccd3bd53785b99ba70c1bb2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T08:42:11.886Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.16","@balena/jellyfish-sync":"^6.1.103","@balena/jellyfish-queue":"^1.0.352","@balena/jellyfish-worker":"^10.0.110","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.140-renovate-typescript-4-x-5ad5106ebef04cbabccd3bd53785b99ba70c1bb2_1637829948237_0.7244179679726144","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.140-renovate-internal-patch-1a0d04aaea2d383d61b8be953d4be6a9dc65713d":{"name":"@balena/jellyfish-test-harness","version":"8.1.140-renovate-internal-patch-1a0d04aaea2d383d61b8be953d4be6a9dc65713d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.140-renovate-internal-patch-1a0d04aaea2d383d61b8be953d4be6a9dc65713d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3594fcaec7d6677bb31a8458ed539a3db6838722","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.140-renovate-internal-patch-1a0d04aaea2d383d61b8be953d4be6a9dc65713d.tgz","fileCount":28,"integrity":"sha512-HH6Cr2JEoPEw8axlPO/XEKht4RMCisGJQNRcTV2RKsAfs460ywL25CnkHZBeknRVf1WA3YgO1Ie+oY0HbCX9hQ==","signatures":[{"sig":"MEUCIQDmIicTKDT3W3pdKMzGoiYY+gQ66yH7hQVTLaMeEho8HQIgZriuNA7rjALBTfN52oR3qm66null8+vL//lDZQPFoJM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220198,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn2tRCRA9TVsSAnZWagAAmisP/0nMsVvGtSRDMpX7RwpB\nkTLOCBPI5mX9oSxmOzTPcXkA1CITGpIINfzat1G9JvqFXUooHQgtNxUG49d/\nkWemOKHKy5uW/LepChXEtQP7PJNAIlt4XJt/npNMlxsh4jMUOorG+SdLalGJ\nmFIB8YFMn71U1MyProAGGFOg2l7f5kZd8gZeKCX8vsinln+0X4nyRsvpSVUp\nJO/4QegN4Fp3tUYRgJ77io21hQaO6KKzgsKOoQ5NBy0XEZBhv/WNdt9D+iyd\nAFJn57/NBPU+cAvG7mKQeYzJMKA5/JoJk8dwsNX568mJ+Y55d/kNEp+EOxgm\nUkDSWT7TLS4ksc+lhEC0mTeyP2Y4vVBSBDEi+RjKkIvQC0i2DIAk+7RKMZVd\nVKEgFsBqSXweUIAEDSE8DTQiPi94VZ5YfDsxWrxEmKq6t+fkIF2wP5K1CP2/\nEnkI++gcfy4MFykZgFpY74JT5GcpTkZPrTomhefoz+ekBN3MllAtY78ggbcl\nznSUMVWQgXIjACNKAgtmezsaCecBVWfiIXA5pGRDmJiBdRGRNFkb5xNGg5N6\nzhwn6+TPqbhxb5SDy3XMW7S60l2Gz+njV6UkBibjDwjPaKAojd6Eo/dXHhbU\nLE52DNZA43ocsklJ6tGM3UIJ696Hdgq9fDZziODiP0n8jSOgmZJPyBCkvC+p\ngMaZ\r\n=SCYB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1a0d04aaea2d383d61b8be953d4be6a9dc65713d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T10:50:41.805Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.111","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.140-renovate-internal-patch-1a0d04aaea2d383d61b8be953d4be6a9dc65713d_1637837649061_0.5956930087416514","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.140-renovate-typescript-4-x-d386feab28aa2367d91c9d8d75e8eaa1099d502f":{"name":"@balena/jellyfish-test-harness","version":"8.1.140-renovate-typescript-4-x-d386feab28aa2367d91c9d8d75e8eaa1099d502f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.140-renovate-typescript-4-x-d386feab28aa2367d91c9d8d75e8eaa1099d502f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3825017b47d3e1817cddf5245d1dc5d59d6b350","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.140-renovate-typescript-4-x-d386feab28aa2367d91c9d8d75e8eaa1099d502f.tgz","fileCount":28,"integrity":"sha512-2Lc6297H0gfDB2DVYiXrDZdebiZCuuwVqeF1BhDRv7sxcEsuCnLv2dLN0t0lsKBUkqxBlOANRTOJykNDolsgIw==","signatures":[{"sig":"MEUCID9dXJfjJ9cy4gztQr92TuK4ONfEdyt7UdcOrQ7bhEdzAiEArxxdOtkWmxpnTESkyYvgKzzOBwl1E6/IiRtml7vAiQ4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220261,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn20wCRA9TVsSAnZWagAAv5sP/1NMCFOumhh/L8SQMVzO\nBHYGMUKc6kp/L8ipnbEWk0a+2t9KKGKUTIQhP4T1bRs8S26ezRtUO817DMTO\ny+LCFIFwEDMzQuNeOiqHlSGiiodFD3VLUPS7V0huG2lsN2vZ4jRL3MWIKdrz\nIvtiMoFCFD8VKzzyeXfRBCNVy3reLHIAZG0lWK6dJp536nvSvINHMqNnqD0z\nO2PeLyctwCO985DgO9AQGmFBazEFbZn3hjl0Dv/vT/yR7Gkt0TsSbUj+smWQ\nMG7nScPxS0BVTNd5hFU8vEuNhfy5Yb0whbnshlOAZWYXZ9/1qoQemGbAEBlX\niqD/BHUfUU50tOZJeGmBGZ8ldXdbRHALIk4uiRkYe5ij6zIEe7OaqXJdhmK6\nFX9naHX3gQ9paDnn872LsCQFh7LKUPm3xe0ykZZigXuqXYp7CzMwNG6WcR6W\n7XCcPVbj4yLJ3I1hzh+m/1wwwaGxCDkyGfOCe71IYDQMIqd6H8BKrr+K/Hwo\nkc9bPVv+GSZNRU3+uH0BgYC0nkzni0WnWxKRCSHpDoJ8Min5XnYRueujQte8\ntMY54YpXW1t9QQlptxeAmXY6MCeavlYk1Ky9UNmbTbaEJk8a/2nMhacCMjJr\nPZ2Tz/ISJl6J/6mvZqMQqBwEBFo2K74MyiIPQ6Bqxu2hV8yuTKKDyUNG/GMY\nBfFg\r\n=mqhT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d386feab28aa2367d91c9d8d75e8eaa1099d502f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T10:58:11.596Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.111","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.140-renovate-typescript-4-x-d386feab28aa2367d91c9d8d75e8eaa1099d502f_1637838128345_0.6919462086056123","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.140-renovate-internal-patch-9bd0c12b430ec08d8ff48a67dcf87e77868aadcf":{"name":"@balena/jellyfish-test-harness","version":"8.1.140-renovate-internal-patch-9bd0c12b430ec08d8ff48a67dcf87e77868aadcf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.140-renovate-internal-patch-9bd0c12b430ec08d8ff48a67dcf87e77868aadcf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bde458d6f37f05f106c547bd410ce8b3fba2792d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.140-renovate-internal-patch-9bd0c12b430ec08d8ff48a67dcf87e77868aadcf.tgz","fileCount":28,"integrity":"sha512-0gvWmqL6u9aCXOaGh7W72XrM61pbaJ2pbryLdH3JnIKQHQFlKekbReF5FNHmWu5QKY+XTyP0gilKithx5vpl/g==","signatures":[{"sig":"MEUCIQD0fPw2X84g1FCazOZhrmpoRXmRv0+kiJ8fm0XJQilvAgIgMLJZ2ntfYIxsZ6fW2RdhcY+vWboLJtshoOnlqK61cW8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220278,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn7sPCRA9TVsSAnZWagAAgx0P/1UaUhumJNhQLUYdYvfL\nw/bVVqJJh3Asjv1E63l0rjUWWGG4q6u73srzooHXdY1053MHL7Zvi0Bu3t74\nY6+TsP8ombuTJQsIPmtXsePcl71tvyG8VUUhJuQNfX9vMAupnSfuG1KtAqXc\nfjfSuwf60Bfu351/4NH34oKxVW5+uYypnmxq4cGzpz0z06qRdd53LhPzLo+8\nvrxOicHFMZhCXDt4wyhc3aG4DaBQYwO2ZY+aJg7B+TaV7MZYd73HsBmMTD/V\nJo442nE9ECupexTq35JIDRy78mIb8j/3K2qptU07rgR/wiqutDEOh35bVTOw\nIuGmbYwxNi9UGfjag2u3XvGHDbrWSVGxpcyJZCS0e//eTZEDNynXPf4lWjVj\nd+Vy7pKFs5ovxSyUSmQjTZdPSf76t1IPUdHUFT7Ft88+szUu6ZkzonvRtTX9\nZ42tzlg/XPcAftAvfL49QdJiGx1cGLAYmy5PwgAuZkltLeIcDE4PAvxv5jdP\nqlCzQY6hhP+Bfbl6XwhLobnnEGtQEzehK4N01KRZby4YuZ5lpuS0oaF3H5xa\n976KJajfA/VpxuJDEVQ+Xex9lNu4KGqYtypFdekWEqZm0GoI0/cQVlq+iBlb\nP9Wk23N5gjLYWfDFMZNix4mTTol0se7MrD8T/4GH1ygHt3ZRzDopMCG9ZocS\nhE8n\r\n=XcH/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9bd0c12b430ec08d8ff48a67dcf87e77868aadcf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T16:29:20.102Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.112","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.140-renovate-internal-patch-9bd0c12b430ec08d8ff48a67dcf87e77868aadcf_1637858063476_0.3686591085284665","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.140":{"name":"@balena/jellyfish-test-harness","version":"8.1.140","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.140","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6536dc985caf26ae11a938249cf4efc318ec71fe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.140.tgz","fileCount":28,"integrity":"sha512-vLFrudz0L5TD0y4prB/lDl+Ybw6orSHu2RSnT2rdkHS0tU/LLlPEp4QtMj4nI4RsXH01mxYfa7MTetK+CxIPPg==","signatures":[{"sig":"MEYCIQCwAYoDfbdA2SM97ekF9/HypuCgauZeH7/2C0Acmfe8FAIhAI/d3aIiL/5S9oQ0oIvh25bRxKFox7g72YH3dVZLP0qu","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220213,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn7xTCRA9TVsSAnZWagAAvAQP+QHYi5DYirW17NoVPSOf\nxgVcZXc0tMYMysq0lVY079HOUVeTMzRy9NAJgN47Qr7vnY6ygY2qKW14Q62X\n77H9c22I9gaX46f3ZbcQqb37bD0juCqZnZsTQnmwR9Og06Evgy7CPtsNLqX4\nQLVXSijsVp1OjOprKWm9imLDX3hWs112VN6Ikw6+p2Ouq2u+q6+nnuJSupu7\nJbDoiPpxhkskKC8Vg62wq/gK58DzQGBLKqRtJ7kh57gzWl8hY7JxogSBoLB3\nwFbG1mcqKQCoCrEsxnO01FYdqovPU0Ttp58vDR4Zw+iGyeYBmWYByQCSM+cC\njkE8mkL8x6LTYi5ylxcoybUtAQTge32kZSo9PmrfPsm/NFaZAnxPzEqFd2mO\nzj1z0PWIImkeGtHmSJKugzzV8HiiIO+K0fcSaf0X+enHDSnysoyqpH/ut6rD\nzBS5NFi7jWugfFNrua2ptOecrk7GW+PjVfW4FvcK1PJIoKYEc0jGw/PqAtQE\nV0jDB60+0wHBueGLuvyXaCWAo4gu0d5Qk27t/7xpk8sTHhpWMJ9eXYjY1opX\nByOJK0t8egBZx1d4zOQtEGB23o/asxXbSoex8Rt8h5rNeG3sGNm0kXOOuzZj\nwwCI5qit8lPhgqN1BtonjuNTXWjFEFK47v1HmcIPjIc7wLDJ05uHCg3arJoy\nY7SQ\r\n=TtzS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"29212c88633ef0ca4a09810e61359f1651d53272","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T16:36:25.626Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.112","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.4.4","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.140_1637858387596_0.9077435255993749","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.140-renovate-typescript-4-x-5f1966466fe7ba648d242a402d898856187908cb":{"name":"@balena/jellyfish-test-harness","version":"8.1.140-renovate-typescript-4-x-5f1966466fe7ba648d242a402d898856187908cb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.140-renovate-typescript-4-x-5f1966466fe7ba648d242a402d898856187908cb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b9ce958764ce249e42c4cf77bb9d3fd7bccef23c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.140-renovate-typescript-4-x-5f1966466fe7ba648d242a402d898856187908cb.tgz","fileCount":28,"integrity":"sha512-y5rbbrLxib2oCb+eL6aagAPVqI5J2sYaYZuSZf/95hQr5dE9ohuGWY7MwcWlCHshj2WpCnO/YVzZAgfCY8a2pA==","signatures":[{"sig":"MEUCIGeMf6YZ+0incsZRlcOHD+Bx0SzwfZP7wCDQIXs0uAlbAiEAnZuvUFZJYy6CXPazCu7Js0Wbmz4rCWNPlAcllJMEWms=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn7ziCRA9TVsSAnZWagAAMHYP/0u6UI3Cgs74asw2EEmr\n27XmU7UApq2sLFNvAHm2FDUFKJ9U8wjApCEsw86BZgFmt/175i5KhywA+B6k\nQJFOkvZr/jKRDA0qoZiTnBUq3IRpZb319tHeH5tvtbrykJ3DG+RN3sCkoHCP\nWYkDzaCJHm+rw3BNrZpFm+Tvo5D+xvih8jltCWBgzHiEuONsmMiI5LuUlN9J\nerOF1I3YDx3SrtD0qz8u92Hc3Lv8amxJR0x0JcGhG45Oj/EgfSYiQIsH24I/\nlP9yGvyjA3Xhux7+tFukApL5In7q2+bfVIpZ8UZzPEsHQ+jyoMiUh3iabOVu\naMtgUlofoXFpAKdJSbzBj/5ioAGu7X7EyInYz6trBCY9fDkopVUch2ouM+fO\n5/Iq+M9bpoJTQar/1OtxYS21uC9MUFwhm5QvmM1syx6f9p8qRjXjl3DgjCEw\nqCkc29K2o2XXrE9q26ak3c70We1LBVCngdQQaMIRcXEGpFNBfhZ6SLbExhkA\nMWOgFn0DxPpJCBKp/6G0V4zXNxn+cqnrndIKXKHNDkiUVGrsD5ceTdEj2U3Y\n/buXJbaXQc+hPtNxqiF9VVDPMeODGo0t10lE1Cl1oaAfsKl9QurZgL4EsMyJ\nARl+c2L9Xlsl5TkqxdrogwQ8h4rvadswsNx/tAA8Uh5g+bX8ZaHHFTsxLhtr\nJGu+\r\n=1ZPO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5f1966466fe7ba648d242a402d898856187908cb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T16:38:20.683Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.112","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.140-renovate-typescript-4-x-5f1966466fe7ba648d242a402d898856187908cb_1637858530519_0.08168399012615923","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.141-renovate-typescript-4-x-c8971c70e278ee066af08c8c50afababae9b6662":{"name":"@balena/jellyfish-test-harness","version":"8.1.141-renovate-typescript-4-x-c8971c70e278ee066af08c8c50afababae9b6662","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.141-renovate-typescript-4-x-c8971c70e278ee066af08c8c50afababae9b6662","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d62f0754115837d5249bc02090b974ef0350d5b4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.141-renovate-typescript-4-x-c8971c70e278ee066af08c8c50afababae9b6662.tgz","fileCount":28,"integrity":"sha512-WRUEKnXcxqe00wtfcOcC4MV5KhAs1rjSRLoTfRKHadR7j0p/TRKnokM3m+IOysZ+WiyAlFQdd0O+CYd3PtKetg==","signatures":[{"sig":"MEYCIQD3//fLvYyb92sUWm1NjX9XvVAV7kKBwsoSUCzRE82tOAIhAKEr3cRKTxMlsEppBcpYGTxgHEEgvD5SfypBIZK7duuo","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220370,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhn720CRA9TVsSAnZWagAAlW0P/jf/gZAqgDWkRE2DSvBP\nb1Bb3aheY82Cg8krC2lBTgmkNed3bqPnUznCL2HfnNfIW6yH6/a0IAIKAkXN\nHK2HKPSSYnXPscvIlCHB4Xa5MC13h8+e++yIQKtgPUEPSVaNWZ6otPQClrt2\nCVqyv7KiwPe6gKnU6tpPXYwALnXUqirES6uNhBiLBQan1a7MUbQV7c+UPZF1\nRAo68qac/SU8zH2oJyDYUGhWUvPl1t5Hk55GWNBEO5noxedyw3hhLnpzCCD3\nHgb27rYIl5Ebj1U0giZTEMRS4PNt9U5TKT7hcP8NrLRs9skcqqxbl0FGQrEW\nOCFYmk1Wg/CxEtlyn1P520pc72yMK5FHRMfFzjxtl+nwOiKTEVUhfV6LsOgL\nyLL5pMJTbjaMZyGC9B0T7e6haNbLPMxjN4k4dziO0d52RdW+l0MP25TEdUCl\njeSFbcfQPTvax+70GTVkFLxmyslF37WAJimbHV3MoxYHe9AFTPYqZPsRqeC0\nh2Ca8ySoCNuiseSt1vRJflO4UJVz3b7Qv4+QBnRWcOiumboMQHPpacSJ8Qdn\nAfeUJRHpMlLFbdZGBfxbL0PHP86IuqjxORCPttc4N8TdOKJzf2vnc7UPrlNl\n94dZ6f4Dg81Yp+BLXW+DJ9Ok58lsUnaNJnJKqwTxrAiDyv0Gv9fbJVCT7O9J\nRESC\r\n=LW37\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c8971c70e278ee066af08c8c50afababae9b6662","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-25T16:41:17.066Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.112","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.141-renovate-typescript-4-x-c8971c70e278ee066af08c8c50afababae9b6662_1637858740577_0.08295697138509261","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.141":{"name":"@balena/jellyfish-test-harness","version":"8.1.141","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.141","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d46eb26d36f866f3ff9b208e5b8c51310c1fb067","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.141.tgz","fileCount":28,"integrity":"sha512-c9UmZkshKpE4LRp0lMz/UzW+u1RQ+PpeRpp2VGObGtRLWrXj6Jkqd8g4ENeGgwcfZ86Dk9BCYihMuhpJ30Fv0g==","signatures":[{"sig":"MEQCIF/DbH642ZEo3BwPhZcLnJueZZ3+lp13RyFxB0MH9Y6dAiBY0VyqwSt8DokQxPRxH/Gz0AblCHRUrt5OoADEBu1NXg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220305,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoDR6CRA9TVsSAnZWagAAvE8P/ji8B01OaJFOal964a29\nKjL/BEl/X5JLjNIbFjOq7EPqxuNa/J3oXqbRWudqqKJhdIYzUxc1Jizbpikc\nj/AfGXfCPngl2zrNWAeKxQq7jTbtNu0t58zynegjmoOdHzClzLM3b52M6PKY\n00y3Ae5rYPQpCBtOEmq6OFg/H7UTcMrnIP0ceoCwO5JPbVQDhHbzALKGafaQ\nX6b0YL2EKm4BsOOK8lPB0vC+j1pmevjVp5Tmd/0eE/HNb5RINYCilbs5ovcw\nP9Ni29Gdu+Ql56V0taZyrjutH70b+CF4e6BEmH03enOpfq5Hi6tymY95PBTi\ndhYKO3kLxFfafUNYcauXDJJIuhCF0FSUlp8vF6bj10tqHfZir+xqVmW2J7ut\n+9YR4FUUvIVvgsmwoLNr0RC9kpynaupbfB2xlDlUy4AEQctGWUkQ16bHsopF\ny+IGA1pMpg+uhIkHJJfyM5L+76WhypB5MWmS5x3vICfxcN1f6K2IFdVP3ylu\nmsKJovGfBPGnsflMqPzymJ7paPi6H7HZbnkflNDW0Zu6Xtb3/LPYKI4hdWA0\n3Ll9nesTtKv5P2aUKkYRllb2SOaHY8gasXZHVazoGvQHhX8Dt4bblRzDtqEb\nmbmDfs/gvHYE9oFzZcgPFbKt3vcdWhTwEpby8G44n0ZMMVlNYxF1l2oM5uNo\nAtKz\r\n=Jnl5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"758fdb8eeb364613b5626c582b73a137d2f22f66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T01:10:16.856Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.112","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.141_1637889145827_0.8316826946464879","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.142-joshbwlng-use-renovate-config-2adcfdf509fbaa001c852475b2954ee0b908f052":{"name":"@balena/jellyfish-test-harness","version":"8.1.142-joshbwlng-use-renovate-config-2adcfdf509fbaa001c852475b2954ee0b908f052","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.142-joshbwlng-use-renovate-config-2adcfdf509fbaa001c852475b2954ee0b908f052","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8a91d87a2d7a80e5c50624802fc5d76432521289","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.142-joshbwlng-use-renovate-config-2adcfdf509fbaa001c852475b2954ee0b908f052.tgz","fileCount":28,"integrity":"sha512-BqOJff8dOf9YcaCr1nIXILzlx84rAuXlGj+PCxQ8FVjLmvE656K6K2XY2eeNDKMXseSHQb8lbtadhoTjTL585Q==","signatures":[{"sig":"MEUCIQCs3kSzw6gYuj7mUUPEyCQPF21s/jm9FbsjDajQFF8OWgIgQVvqEeAT9IxYuYxuLEwunHzgCpD047VlkR2TsXp+vmM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220453,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoGy6CRA9TVsSAnZWagAANEAP/ilPiK1uCg1Egn6LI0r0\nAToC7Cbf7QQYZukQGHfm8y1V4NO88FiJ7QqsEinh6M+PF4R26VF1IS1fCa8X\ng3QbMoQNRHokSz8wEx5XCsvvfRcpZeETVY+CVfPg/ET5+RU4lZi0f88JfEvV\nN0CIlAfAPBbwRgkQiO7KiGZEL3aNufsUDO2xDF+lnn5eLCHcZsb1aYKYs2wW\nfa4oLSnR9D2hyKDHfNLAiCFoQ0Pb+eznL/P4m5YPG4wx32j2bj6x38JDcbEk\nMi1sQ369JIS+MZGlNkumXydMOWSPx/oJ2F4AgOhf7aamA68SYo0i7kylT1rR\nYh2itI+7VoJEuwCeeV8nXnxN1VLHqsbVrZpn+yMiI93uKOjSmXzUxlpxKuRD\nDNfHCAs+D13WUqjKQmXqPPh3/c9DyJ44wI9pXAtLY4/GTSuGMsnE4l5HBLUz\nBNPpD+HzHm6P13Glj7uM5MUAb1g6ndQCw4cawNdx26dKVmbEokNCOxBuQCLo\nvt+/jUXdCuQKeQ4P9HJvndRrX1Qlm8sT1gYvcBRSJzoDkNcVOCVG2mMauRl1\nQpslIsr7/0ieM6FM6t/2+rO51h2g02nDiHFbEmhwxXTbAXojhTZqCoMHmOBi\n7IGgqH8oD13vXgPwyptq4W5T3ivWFBRQQP7S144yD17qc3XNdsoUhR3svEOu\nr+rt\r\n=Bfap\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2adcfdf509fbaa001c852475b2954ee0b908f052","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T05:08:45.374Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.17","@balena/jellyfish-sync":"^6.1.104","@balena/jellyfish-queue":"^1.0.353","@balena/jellyfish-worker":"^10.0.112","@balena/jellyfish-environment":"^5.1.23","@balena/jellyfish-plugin-base":"^2.1.300"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.142-joshbwlng-use-renovate-config-2adcfdf509fbaa001c852475b2954ee0b908f052_1637903545867_0.5890397028810808","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.142-renovate-internal-patch-4d0b5e43ee9a47005081a593cc1a937f2b0a5f54":{"name":"@balena/jellyfish-test-harness","version":"8.1.142-renovate-internal-patch-4d0b5e43ee9a47005081a593cc1a937f2b0a5f54","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.142-renovate-internal-patch-4d0b5e43ee9a47005081a593cc1a937f2b0a5f54","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c89817a9a0c2d881f399655cd2fd0e7a8a46f489","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.142-renovate-internal-patch-4d0b5e43ee9a47005081a593cc1a937f2b0a5f54.tgz","fileCount":28,"integrity":"sha512-ZodmnCyT0aXGnPhyGA1UB2PJKONMu9s2QdtYNBpHl+m651PDyTpRpUhf6W0JSw7LId72u+vyN2aUWprc5FPGBw==","signatures":[{"sig":"MEYCIQCepnl9h0w43C1lpGliLbTpp04J7TGxRdU1xT3d6oojxgIhAIHRzs9YHAWjiSctZ/hKzGLJRl8v+KQCz3DnlHm8YexI","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220493,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoLQMCRA9TVsSAnZWagAAyEAP/RjLiWi019iASfdPOGdO\nd6AlcRg7DETMnG6h5N1+cLSZHIzjR2MgEtnSJifrScPEqXa3MchnGUjWeFfI\nHxPq741su67TTshCPdqfwHvHDkH/TeuOukCCT+kU+eSddrVgbjbnRqIVgzF3\nwOOj90/sfxSlGOdd/qWdTJ8lCpSeDQvhCl6I53gGE7G7bPNjQ+b47/PZ/CfN\nxx2Nf5GIwaI+x+f7MyYByB508L2qOkGvayiKKpa26rlcBKauCV8zbpkhQHlh\nx5FIjvgQ5VMk9PZrcNGMLeueP9OvIbs++xSl/fSBRu6F305EFIrZfBiBLXRU\n/BGquITBMhA2QQIfvwwKRjkCUR9tm3mH6CJFTl4rEw/fSGH1i89T7GjMCNj7\n6tlVYHOWTksFRUIq/oa9cZuzZRjKuMp/FvPuePgB2tNOa/3l1G1qF7Jbapm4\nHvvmqGhxMb8vpKSbtJv5itBp2uETEQkhWhLSmg6BYTCwfPGoP4MphkfP1Fqg\n3PpzWWsByTy9UH8+sGofnj4ivahfaXtT4A9ewwCuH37IdMxQl0/oEqtL4//r\nheuKu2YL5dWk1Ge9yCLlbSt9uW9USeofjYwEbh9mSF/rXvUyyZAHB6O9Y/Yt\nIMJ4zFrWypcUiE8bqgJlbrPHJgzJS7zj3xypN9MV1EUT5/avYxFvNXA57r99\nr3wQ\r\n=M4Gx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d0b5e43ee9a47005081a593cc1a937f2b0a5f54","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T10:12:58.240Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.18","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.24","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.142-renovate-internal-patch-4d0b5e43ee9a47005081a593cc1a937f2b0a5f54_1637921804177_0.5752601426958279","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.142":{"name":"@balena/jellyfish-test-harness","version":"8.1.142","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.142","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8eab803e2917482ab569ffc391dd8685ca6940b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.142.tgz","fileCount":28,"integrity":"sha512-d2CEj9nZG0RvHCW/UwGs9pzy6e9zmXXj49QL01Ccsz7DmBxG3ktG6Bh5z03SJYq2e/xTOILatEEa4wW3oNUUcQ==","signatures":[{"sig":"MEUCIQCdnFxwSmdZBODp7RpVe9aXjH+M8gg+C4AonKIeWjXWPgIgcxNpLTlcwScmjWfZYcbEqOf4VYEH2fmBUWxocq9TkiU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoLUFCRA9TVsSAnZWagAAxf0QAJnNZk8FTDlH/7fwMx7p\n+MDeIQIzc6YOR6yr4DqXcIvwEMYf+X669aHsvmfhBd2C+r4J24Rps0mueJmp\nwfIh1rfDz6aGYM0Z66W+RyWKoWGB1e0COgiNWCxUKqBFJ/Q8lhq0zXTLBxQu\nf2crwT1nGnEF+0BDI1nXJB3xPkB/5wXu3d1vqyx21bpab7dKb6BeK/0Vd5aX\nBlxXh0+5n/LR8HLk+kVzf2dxhXFaSY3rnJ9SExOB+dHY4HnYhxOCbZGS7Fbb\nfDxoZhslU83BI0J/4zVPeJeJRahNl4NuJWjxvcSuBVZuRK4HnLvHVFEifdIG\nsfb+XTh6cCOTDTnXFmKqYhHF5ddN1QTzNt+AgIm6UwGhQZ4ePku7UFTaBit/\n56nSeiag5XROBnJv1QRDpvSgxTuPWX6YeEQ1LHYq9at0wLmexu+vlPJ7qIG3\nanLDS7dg24/acmkz/Ye31x1muIBm0FcXUlOuCSe62WUG2gUn/mbn2G4g+s6j\nvLhNDaRB69oeGHnlCm/TpZaSg6hkD6MGkflibJoXPldNcIf3EYRJwZLrDVVP\npVKg3zsFHDQi83nhiQIKfh8zbBBTXIyJApwPrD9iQdPpbsP0PWbZXQ7q9yLj\nFYyKrWNDhgAr1yMNLW0b4bU6n3gbVwr7wsOjoJ1j0ns+iwMbDINqxCwnJ6AV\n+4js\r\n=1xaF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb615de0be01f55f748404fb983cf96a0395daa5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T10:18:07.885Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.18","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.24","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.142_1637922052963_0.8776618470633109","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.143-renovate-balena-jellyfish-config-2-x-20913c87c79a81f0d16c0df45d1acefc57eff646":{"name":"@balena/jellyfish-test-harness","version":"8.1.143-renovate-balena-jellyfish-config-2-x-20913c87c79a81f0d16c0df45d1acefc57eff646","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.143-renovate-balena-jellyfish-config-2-x-20913c87c79a81f0d16c0df45d1acefc57eff646","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b8a15ad05689f99ed72d829fb554d7ef9e387ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.143-renovate-balena-jellyfish-config-2-x-20913c87c79a81f0d16c0df45d1acefc57eff646.tgz","fileCount":28,"integrity":"sha512-SlxjqIfW08itpCKqfaVxQYteT81zftBLoXd6a0A5ioVif1WAq7IYTPy7p6a27P4rHyMOd7UE6vPzSd9uRUVU7A==","signatures":[{"sig":"MEUCIQCPTcGGoxTIn3qEibfP+snMYk6HpDJQEokHkmVch7oUYgIgH8db01iLCtZ8JnFNbsFMNX5VPM8hFNGcGxuz3Ew5kTU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoLWxCRA9TVsSAnZWagAAIoUP/1mp1mFtb/+CBpP9xqOJ\nUkCnnpcSuTMHzh0a5Qoj8VMQ1t/c/Z8nXm0ssp1xCC/+KI4YojUl8lgiKrmG\nwKAXyUSNRpdgLZkU8dNAB5RW0f6fwqZz385MwLry0TUCdm/WP5VM5q8VGiDP\nfJb2VYeL7hteG2hmslyy10KAERluwXtpoSQX0+2kiZDQBsz9loJjIZE7F1VW\nWTOVn8AIwbLV0/K32vf9kJlY/I1deYe6mOMdGzoYbuqBN0+gjpNkak9Rq/nh\n6Ubr1U7QKur+bEo4YYvXdHO1ErILjTAxKPUdlno3vRYUMlOeT8c8ub6Z4h9D\nOx349u2YR2+4MW6OOLYsW8ZCt/MJA6xCBDyqND2wM9OMc2FeJGbfxx9Ssrol\nYyCEk+6jltPPOd2+693inVc0BKyzCwZxwrQOO4So7/yjAe3XieD7T2iLTApy\nyIQKSs6v4+iDvsdIgwKLdfj391ktk/X8s6ENYl4WkCzzNOXmvUgZvQXm+hVK\n/Auq4PjENjIOsigtWWe/HsiNifURMf6SrS39gZ/SIh5c8rJWVFmOmvS53Jer\nag0XtdnAymFsnUmtKLFDuE38VHytyVVx93UYEgsQbUqD80QUkV0VbW0ne75W\n9EXj5Pa5/yZjwraSBR9GBhOxfEnN0Ue4a7jTSnNoxno8iYZisrcVHC1ert7f\n6NUT\r\n=7rsO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"20913c87c79a81f0d16c0df45d1acefc57eff646","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T10:20:41.142Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.18","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.24","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.143-renovate-balena-jellyfish-config-2-x-20913c87c79a81f0d16c0df45d1acefc57eff646_1637922225098_0.18331727116719154","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.143-renovate-internal-patch-f221673a83177767190b0a835f121370aaf92ad9":{"name":"@balena/jellyfish-test-harness","version":"8.1.143-renovate-internal-patch-f221673a83177767190b0a835f121370aaf92ad9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.143-renovate-internal-patch-f221673a83177767190b0a835f121370aaf92ad9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"371e12897ae533fb78cedf51940488ecab47da45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.143-renovate-internal-patch-f221673a83177767190b0a835f121370aaf92ad9.tgz","fileCount":28,"integrity":"sha512-RMEtVUwo6M+X7t4Ob3QJiW5tbVFD9bMHempi85r2ouOtTOsIIzBkZHFSU61EGF8GC85xo7VBTevTwRQYc1z4iQ==","signatures":[{"sig":"MEQCIDHL7CYaVJ96xQit+9ZV+tWG60BJxoh0n31iZazn6cpfAiBdyz4qb5F07hi4TjQwHitiKMCw/navnWhaEHqFWRPoWQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220568,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoRaZCRA9TVsSAnZWagAASaYP/1mFSETBhKNgNotbscmu\nOOswacEk792aubKJaYNVAisJYXmm/fc3sTE+X1RQ/WT85PajV8GU9wNRM9Tp\nAwEuEdrXhLUdPznbFs5PGWpP2MPkSiNzUgCiFSAX8t1dGzGDNErfArWkCcgu\n0NcMh8ksWLJ2m3WQHrarvtvSb6WbCHVC+ShOmazsN7xslF4g1TnQJifKliC1\nL3iMsagXv8Vm9k8n0OSLKG1CjyBnm/hfDtkQdi9U11BZy3hjilCpjgPTQp0r\nUIfRZQ6DkLPI4o+TpUpecUfmjqlDYy32Kao67kdyqrRNCgddZZhBG4DoFjK2\ntQ0E7aNZBkFqsTnizDMU9fSy8vHB82ESGqsSOArf9FkQO6wzO6iPoRCjpqFO\n5sfG6x5Ui0SY7fDFw69w237cU0FSTRiYVFs9Gv+0klhp414ZS0aQWz8FjLTm\nEYzTPST0I/VxN9GS5P7UdvBytuT+DCeEmbiIKc10Yd+VFQGk1wLEL4riMyd1\n71MSTAJVyF5OD4Hao0/9W8mU3awSbn64mcg456nQ8gfu40sI22YVj1rsreNs\nMSfos6ioGOfXFShzg+xJTqIlTZMO0L/FrUPWeqwC6nTvfq5ZJMytqH40b+68\nQd3GqVUM/KYg3U7RjiJY0K3QmgF6SxbEr7CAnjgC77CBx3pr8ifNnrWF5/GL\nFOBS\r\n=vNik\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f221673a83177767190b0a835f121370aaf92ad9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T17:12:55.576Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.143-renovate-internal-patch-f221673a83177767190b0a835f121370aaf92ad9_1637947033617_0.9534733091833982","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.143":{"name":"@balena/jellyfish-test-harness","version":"8.1.143","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.143","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"732b6526fba5497bccdc75d7323d65ea42253ddc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.143.tgz","fileCount":28,"integrity":"sha512-/fcjhI1yfQsWUTQmrVB77cyBuLuaZwZrPjJOzbzpn8N9xo0UL8vARE4B+n915CdNgcDmKjpD22HSKTwZOyiWsA==","signatures":[{"sig":"MEQCID63L/A38CZrK6VfQ1m/HQyjk1GHjzadsl79GMlQG7RXAiAXHqQkdxft0FeXI8o/LbM3930OcTBNjuv1YSlguLB9EQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220503,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoReGCRA9TVsSAnZWagAA5vkP/iK4ceasMV3HT22BOO8x\n8fw4S8dLxyZIVkO1Flfpn77w0jteJW/bATd3UM05BHCtS6y2SGMT3ad0J2MK\nqI1Ops3Qr3jRQYqGwrLK7cMKWtKIq8Qgfgu1Q7Mj/f8QbgXhERE5p8AMIS3y\n8jvTwiQxiY2X7lCia7octozLLcw4MEanUvXnbpnZQ0fAffqV1NFMNy3yWPhQ\nFuiodizHpWhB86qwzQ4gvn0OoTecrjlzcPv1lg1p/HguT4vzBuVThAWlQCWp\nRJxeRtZmmSO6Bq6vJapgEfuRzz2srCa9pVB/PjuAXgehyjjK/ygAuJiAF0Qm\nbq+/sBKFmvgXLpefTTeiZWWYtOAAbNU9dcDt+Rs//DCINShTSSpMogfX1L7s\nq3TZ8FWfs6oy6csO+CARQl9rgiy1nhB8QBdH+KMoJoK7FnQp9CZdg2I6I6EN\n82/SzIdZiZFK0mR3As8orgBPDcpRV26S7btvAhc3nxVf1qMx/82Hetj41Zxz\ngcRmqH6nwA+Teb56tHF1UFg4HNQEt2GzS9HNFJQ/jlqM2iVOEK7k0q60loMY\nGRk7aO4M2A7UFv7Bh9vmJpdioZPSJnWAphI3WyPS7Xb8dAddX40f6PSbOWyM\nxcAQ65ZwfvEgLXL3YjJjiyKXIJlAtZKnTi7s4SfIdtUZbCmojO+fUYKzJqsC\nGgym\r\n=gtr7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7a802f014f3011264763a656303f04daf613c64","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T17:19:01.498Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.1.1","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.143_1637947269896_0.7967602664470386","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.144-renovate-balena-lint-6-x-50e866882b6bc6c2abfa8f2795da052f8d6afc4c":{"name":"@balena/jellyfish-test-harness","version":"8.1.144-renovate-balena-lint-6-x-50e866882b6bc6c2abfa8f2795da052f8d6afc4c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.144-renovate-balena-lint-6-x-50e866882b6bc6c2abfa8f2795da052f8d6afc4c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f6bfbcc1d6fd8c063c17edcefb8d45f1c6cf7bcc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.144-renovate-balena-lint-6-x-50e866882b6bc6c2abfa8f2795da052f8d6afc4c.tgz","fileCount":28,"integrity":"sha512-XTMlHrBPLA0fzKDFHW9swOvpzwQoE3rSPVh+6KGMPc0bvycbWdlN5JmVbzcdAEa77RS8YLty5We+feNsDr9pEw==","signatures":[{"sig":"MEQCIA/xa6TSApTHXDJkK1UZ+ceI8eemI5e0yCLTKI6YZscuAiAE+UZdBj6RGP3E8i9V8x7w+9fHQ7L9bP+MgTpdORDmhA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220663,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoRh9CRA9TVsSAnZWagAAa4MP+gOVu/z5jCDd5ojjYvSZ\nBPP2wlt5Ys2InReb+ukYE9jAM4krDHOVL7EpXIDRRg4SsH8VtXXFxmJpIZLR\nx/ofH0Ck7pX8jnHmfLN8VTPGOpQEfZtHggTvBRcp8GUfNyopJA5MTMGhmAdj\nA8cUO9AH7PRn1SGehIV7jfxhODANfeBo2gM7fqO6eUZxmBWGJ6zKM0wDKNSh\n0/Qd7ERaX1G14B9fQ/D4+M8GSFdL4WiNx7hk2ajBy8BmwLxJdyQe1hjBogDO\nD+G4VwbqHA6TQ6uqAgC+hM6x9PpLkh0IVITq2C7BopbxqGv5YCJwhwy3zB3W\n61WYUPV0QcmJqDEXDjVCze+EhRf4fbIkCActw6tZwAAoYHXB5CqJxfwVoipz\ns2LLfO1epRmkRDF36WGqEXA4HpEwJIHCT3jnAzMOgt4G5JozGl1v7DruOR29\nS2S2+S0BGigsC9b6kdi/o8MXAffxxPXre4doXJtKGnOtquoaC5bIsLdtcup0\nkzfqE7U/fDeoYIqIIQ2klNcJ/v2XBhNPFERrwXxluPcFJ0cLdk/rFJIWaFNu\nX9HUQfQ2w+3WCDihHWf//KPXNdfIz/MN5eX8UX+4zQIjOPoteyhXPeA5Jxcr\nUDTUBc7LPeyYYIt0Jn+cT50r3iZeP2to1G8oo5S0VksVRmlY4cdY6fCBUNjS\nKb6n\r\n=dQgU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"50e866882b6bc6c2abfa8f2795da052f8d6afc4c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T17:21:27.883Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.144-renovate-balena-lint-6-x-50e866882b6bc6c2abfa8f2795da052f8d6afc4c_1637947517437_0.6454904076880728","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.144":{"name":"@balena/jellyfish-test-harness","version":"8.1.144","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.144","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fed8d244817c1846e9fab9537a8037d3997d50f0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.144.tgz","fileCount":28,"integrity":"sha512-sVEVNW9/+PrykPMxpe2nEBnZv7zQThZiraQ2eH7z1vANlUVxFTw2nZ948PGQT/k6O2cMN7ewA9s8k9p5GZWmfQ==","signatures":[{"sig":"MEYCIQD/ERFj8ykwlTPK21lgG3RDn6+fXTef+bSf0BvGm3vdBgIhANl45LpaD6oJO/e0Aqq+mpJC+GiphzEZ/FYJY6h7/u5J","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220597,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoRnyCRA9TVsSAnZWagAAS4wQAJ6RxrmRG9N6A02KqHlC\nkoYIPFotKOLhpN1s89uu8GeWTKrvT4dT+4InM/K0NC4XvvAdHDUmFlbve20/\nmvkCOOFtvjruVQYgOBaMFlCfi1hsTDlQ7AoU8iob3n5BhnZYUmQFotCX9tWf\nNEu1bV71CvqH26W/htzlz8Du3pVCrP4havlbExD1bXtkNORZx8MF/LnIXwId\nWNfjA3CX00HM7WexzOoQsrF82qjHNeADfZnw4ph+kX64MfQfs/tRkugVLg10\noQE1GfWdESNky2gcPndGMej69I90v+BdHV0tP2ai8PxcePrAyMCfmSsPwYpq\nfoTrND9YpPczOiXxy/jLJT4+ah+TpY/4kRCS7BDS7EbwHtlbGDUnTas9iLI2\nZOUHZn70432rX/OOFmpShKxtzUr+3ICUWXDNpYlbIB8URXfnIN1OAowXi/Ye\nIon9lJokp3B1bfDVbp5ib0g30RZ8QgbQ6ka22yMxfAfrKq93fOGg++EFffeo\nasO+29lXwStrDFCfBLWtvAmLnetcJ7srJNbpuLUNLUiuxfQ7YhqS4SMD/xVs\nsCUbCJWnmHA/cQoEetbmFUZpPPU9QSeBhATqId+dtG/JGOE1oN9teioct36z\nhHopg523b0yYC2N0dm5pCM22P7f0fuVcofVMN0H0Ew80kYoeL+2BdfNh///c\nVjbr\r\n=uX6i\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"aa17de477e2a3ddd79ff16e8b37b841db302480f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T17:29:28.796Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.144_1637947890500_0.11028604321516866","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.145-renovate-balena-jellyfish-config-2-x-d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27":{"name":"@balena/jellyfish-test-harness","version":"8.1.145-renovate-balena-jellyfish-config-2-x-d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.145-renovate-balena-jellyfish-config-2-x-d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6541eb23e80fe5e4f36c89fee94c47718c774d9f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.145-renovate-balena-jellyfish-config-2-x-d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27.tgz","fileCount":28,"integrity":"sha512-LpJxlula1fADyc8+1YEBlAMeBMF/wiDcxrXinvFVhcRVjt57vlDzxFSZaMpgjDpef5vBTFF9itcWJEitzM2zsw==","signatures":[{"sig":"MEUCIBks1JWrbGwqYpzz/M90+OX4IMsonInXkXhtt1MsojfEAiEAzbb+Oluimf447vX6erTNniM6BVn3oneXKM1v7hzTNn4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoRqmCRA9TVsSAnZWagAAaQMP/RSwb8JAHFlRJWCOSugR\nGT0dWs0QboGhwok/Etlh9J+NT5VnjMwAd5JDpcpzIn0PXcoXEMYavTmduRJ5\nbqm4aXo/lsESqyV0qnM6cAlw6OteFnMdb1LeNtcEB9vsMs6yFQV65K/yxnGE\ngQr+xYbYqjpCm3rChEWkuywRa4Fq0rmR1jqWlolqxDr4SLDkggxuI3IwKA4a\nFV5P54cC/PqlA6Ej8Lh3XBIu0AxZfb05RHP/QyfxDFS4uQAhMnsPYoFFxFPK\nWpZUjPZNBgKteLVtyGrN479KjM+TdeVxgTZh5Vnbxpv3hdhsh1tkehSsso7M\n1LWsNpz/vd1PuXn2Zx+WpZeN/5vb7JPcQRQtS+MD3zQ0S3bkGXrBVyAZk3Lm\nckc2BvMibs74KXuUEHapSOKL7aaTTwqlH9m5NwCMBAPfLkDeINEMloZuRRob\ncnQDvQpFgLromgvEH3beVFjNJIeueOxfD01VmxKyRxx5LAaNBpiX12rd36cU\nk4nvOQsgbw9oJ6n1Cur6wJwuLFZS/SW1EHdUvNBgnB//5Oubxvd3C1tB/oyd\niNceXPEyjISpMEqPKH6Tx4PfQtumTx9w0WWEoNJIphUBBfgE1/bnPYSyjC53\nW5bbVGrBL338wXBhi6u30eluiR6+1SItF+1vtF8nK9R7cJ59aLANwb7XxMHT\n47AI\r\n=4FwE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T17:31:39.190Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.106","@balena/jellyfish-queue":"^1.0.356","@balena/jellyfish-worker":"^10.0.113","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.302"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.145-renovate-balena-jellyfish-config-2-x-d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27_1637948070444_0.7133595685816685","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.145-renovate-internal-patch-4e56258efd79cf3b2feb79054a993c99f9306d08":{"name":"@balena/jellyfish-test-harness","version":"8.1.145-renovate-internal-patch-4e56258efd79cf3b2feb79054a993c99f9306d08","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.145-renovate-internal-patch-4e56258efd79cf3b2feb79054a993c99f9306d08","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2460a3270b7d8539d2fc12bb11895a59792201d5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.145-renovate-internal-patch-4e56258efd79cf3b2feb79054a993c99f9306d08.tgz","fileCount":28,"integrity":"sha512-eP+9/y57LqVTNbFBBhoqyLncu1kboMiBq22E/1mjD/YXlrgQ3DgIOiK0z0Ehz74znChxl2H9f1m8ZCwr++BUEQ==","signatures":[{"sig":"MEQCICcIHfsvv1hH20NbGQvix3F39tbB1GE66YEN2L8pblDJAiB3LawFzI7eNL8URNgshrmpsie9TLi4j8ZWTfaHhOj3Yw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220737,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoUQbCRA9TVsSAnZWagAAhZgP/0o1CFi8IJloBaiMUdic\nnK9+1BlrEWTWGSV18Jl0P8gzzUczBhVEFRuyDkPhUqhkjAkOApa3Pl+xDDy9\n3jHr/oLBFlvvyBO/zi9iqaGQ6rHXKOE5TbonoWhSagSnLPo6tY54bNbojOSy\nYD/n22gTY8ra27ahdEwy5EvSk1/e9e8UqnTwsZfJ7XrsULn4YsSU5EOwrxOm\nBwzDMUPJq+fip7I2LCVXcxOVQY5vc6laGdshGIMh4PG16bMwkEXRpUSuDmvA\njSlGMLYQBogWSJSNAoVGwHIMa7H4mgXMCTafu1ha/kzAH7g4rq0P4UqxDWcf\nHGOIOplW/jWfMN6zCTP4MxKRHyNp5OxLO3LMoH3XrarbdkbtF1Vhoi+p3B+D\nd3vsLOkm3AyFM0+tpc638/uhL4bULd1ERW5FyGkZ7fkhebnN78IQG4ZSdYBE\nXMbAcPAi+Ap2QLvfDrcKjB4+NzhAM55gmCp+85EmhAIVhl3LT5e0CXhhogTe\nbXLpdRWD2xMa/8V9SgNc1mlLNj8GSUvBIzeW4wrEtsudYyG8kYKfq1+cY4BG\nHI3gzLeX2ct0Wi38W5RwysGDiIf17eRyhQN5V0pJ72EmC1bbX/hNomD7pagK\nZiD7vmpVpILKxfVtXEaE0aijL41uTa8d1wjimMc+/Q0Xm6L7GJLxQ7DZ31u+\nhndE\r\n=1ruX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4e56258efd79cf3b2feb79054a993c99f9306d08","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T20:27:06.331Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.108","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.114","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.145-renovate-internal-patch-4e56258efd79cf3b2feb79054a993c99f9306d08_1637958683604_0.7248628401084991","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.145":{"name":"@balena/jellyfish-test-harness","version":"8.1.145","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.145","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9805ac6d1c87570f8b06dd1a2f3dc16dd6e1a62d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.145.tgz","fileCount":28,"integrity":"sha512-QLFckqa/4GfyE/k8xZUbs7ziiEgjSH6AHNvQPgovnMnB6NfV65MpRCR0PRf25TRevY37lSLE1M+IFWDg/07zuQ==","signatures":[{"sig":"MEUCIDUtxcm4ai1aPCDNeg9ndGo9CIMqSDEA4uMeGd3WmUJtAiEA5pICuj2VYd5YGGIoBO+aZl28H+jwbusD3CB3hMzFkw4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220672,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoUUKCRA9TVsSAnZWagAA55MP/i11rxgvzA3Jl7V+E8wp\n8rF2xDCmLRkkm0iWXo9lgRRmbhOTX1S/AOv+drtDtQGwYPiXkoZJ7qpRaBf3\nuZu9fbGOSzyTJzjTgLXRN2p4sEApDzADYgbg9q+mem8m6RqHN7SiyeSvc8Uo\nLPTlTPx8HNMmmLr+pTgccxMvmQql/kmiVGIrzNdaJwTeQuqQNz0XqhmPkodI\nb96LJi0K2zKxms+0MOBNv16UZXzOrc1D2ZsayKJe7r9KANts5clH/PZZJYKc\neKecQo/reTvoHhUxDnB0jAIiti7vBLBxpQP0wIR21utRnjmtK1Q+AInxjtbm\nwhostMgHsUQpU0av063wlwgbINdCCBQJqgDvTmZ5rYbvwG8f4aHNgaoT2gVv\nrBmMOjmcMPfdU8m/RtdkV51f+c/HKLB0coK55Sjm4UVccuRzYMFkyMnAbWbq\nUig6v9eIb9g1cqYEEfGj4MpywH1Sp8hi9h25X9FOFuybK+eBgkWlSi3Lqlbg\njkMU3M6Tyh/3RPJWjvQ3wVgauoBOXDBsMnrohL/p0j7DNueAT7mdI6Lh7pJy\nxef2c9DVtG4lJptjwQWEzgW+o2hCyOc8SLzgxa2wQCjXLPjs96ZoAQztrS+4\n8Jfo0H++xWhECEwu6UwHHS7KHd1uqfdMdptKkfiTyvu7QnXCJ9NJoqKRFgNP\n3IRN\r\n=KoZV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c006d099f4fcec49a7150529a0a1d0d9a91ed491","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T20:33:19.478Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.108","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.114","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.145_1637958922238_0.05773652622764591","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.145-renovate-balena-jellyfish-config-2-x-f905e25b619860ac1a5a6c03db63437fa67ea3b9":{"name":"@balena/jellyfish-test-harness","version":"8.1.145-renovate-balena-jellyfish-config-2-x-f905e25b619860ac1a5a6c03db63437fa67ea3b9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.145-renovate-balena-jellyfish-config-2-x-f905e25b619860ac1a5a6c03db63437fa67ea3b9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f2bb3e49d91739356cb67cd8ca6e26ae120acd3a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.145-renovate-balena-jellyfish-config-2-x-f905e25b619860ac1a5a6c03db63437fa67ea3b9.tgz","fileCount":28,"integrity":"sha512-bzBfVrRD/pvSuKMpLqHxDyhSx0WN/dsUmoCzSUYQfSlhP+VE7ltowJwDNUIjQ91pFMNfKBdriXCaNLFUUrCOXw==","signatures":[{"sig":"MEUCIQCa8iGcYcprG0T2QKFbdVsiViZJ+Od17LlA81tl/OQJowIgGEfOZremrTDL0LXANVWaBYPPeZDT80yG329NNf5SbBs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220823,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoUXmCRA9TVsSAnZWagAAW3AP/RPIzTGQ8Cgh7zaI4bZ1\njDjCY6FoTEX3N+02py9W6vjs99ARk/uczQ8XpJKp8LOxFMBtAcwyXgw6JK1A\n5UvxdbkSlDznGgNdPhRTO8FtQYHfysE9GHS1jrYq/AGu6KyN1KMqxUtSG5+b\nlxlbKupyiQIf4kyWM0CUUeZwNKYaJ/AzkAlKhrF3IDrNZxgMMQtpNKptc8zS\nQHFJKCBRXDbURtxd/kQdUEX4+7O81rzFnijmlyXIANA6kzGwrxjo5OArpGe8\nfPalP2QafOxNeBJW4EZKL+c8KqOpGgZmG8C4WzZn4EY+DLQ6xVEiz4tSCvnX\nO8wIeUU1uqXuNOJgUE5mhAQ4JMbgPpbmeougxS+aQhmrDM4JtL6vydTgZgSn\ncRYs68hugZXQ/T0tShIzWEEAsntuwL9d4HA2SBb5kRmd8Oa84UM9gKFhy4/h\nxovvlVHKWI+kP3sAPnJ4bvqtX6BjEr4FWIPfDU4Hp+PerwPaeWYsmfbHmqGf\nmrR73J47Joah/svO3n+LCkhmMxEhYsR/Whm1uuW3nzQL/g284oWOjRXVXuEW\n7hqMtDBVCJiX4fyie6ab+Ptmz4opRU+cQfL+nMHeJnRImgts56DpKi9PxK75\ntn00mbyyFXNRtdqOAqiEbtElDPGxYps1JiJohZz1cgp7WOCE6lUneLR2hHiI\nr93X\r\n=qLva\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f905e25b619860ac1a5a6c03db63437fa67ea3b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T20:34:35.948Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.108","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.114","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.145-renovate-balena-jellyfish-config-2-x-f905e25b619860ac1a5a6c03db63437fa67ea3b9_1637959142757_0.8800465284034487","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.146-renovate-balena-jellyfish-config-2-x-7c4c4dbd28dab9ee9d21a5623b982628a970cc59":{"name":"@balena/jellyfish-test-harness","version":"8.1.146-renovate-balena-jellyfish-config-2-x-7c4c4dbd28dab9ee9d21a5623b982628a970cc59","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.146-renovate-balena-jellyfish-config-2-x-7c4c4dbd28dab9ee9d21a5623b982628a970cc59","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f421eb3c1b46f3b623955f27469bdb0f8da9384","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.146-renovate-balena-jellyfish-config-2-x-7c4c4dbd28dab9ee9d21a5623b982628a970cc59.tgz","fileCount":28,"integrity":"sha512-CWJTKkkPtQroID2SNOOJZrT/rGHtfsWfxPIZ3jgxBnYjZEZe8DgfLo1+bwMxjvNIY/53doY4ZUYAK4gqnBbBPg==","signatures":[{"sig":"MEQCH2KrPII6J10XDCIYP9IOzosxIn548vocNMgI2A6pQc8CIQDO1ethAX8xJMHnml04HUjOokjN+XHKfC6q7HlctoLNtA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220852,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoUZHCRA9TVsSAnZWagAANXEP/0Tm59ss65X6eqy5Psuf\nGKx/wh2oROMbmH1da6OzAI1WKri46sEXJcCLUMTrb9pWL22gqWKyQ67jOBBM\nXkdq6o9+SIoBk/gvlZ/cZiQovPbHJjK3xInJwGIKtHj3pDhJ6saaKvTO8FAs\nUNPC0b4YnVMgyLSPOeGNFxPkSkam2yzZtI/OiGRxobo79Rcl/EpRRPnQmlUW\noLc4aQqK1XgBNCgUEBLPIaqS4kuwDtfulydG3E6f1fwQlpyOxuR9nTHcwhuV\nrVPcdqPHHfMX9Yn9/dCj4JXKdqL58MWiAYtu97Mn2WuuRpl6S/F7Z/LeAIzu\nc9yvb4CfIeUuf+ng9bfJDhw8hcfPRVVKY2KRfxSAhu17CNtQxfaM+RLKJtUN\ngZDLzeI0n7sDmwmcMjWjpEM9u4KwFAiA80r8rEfwVJFNaNsxBvCjbBCqYTty\nGnMAKiHw7E9kKf0Rrct75G8bHAyVlrHKi1Lo99P0XSxyJBbTWyp8uB+auMT6\ni0Oz0NAUm9ie/el7aYFUIiaYPdLP4hPfxMgq9OTruSpER4VXU7H3txoRns0t\nVUgtRDwqwNQE115c0ylbwlPG804jr9jDBf7C0bF02mjDmO9EnbZ519tHq6UR\nOBDZ1zvddnoVvoknkeOKsf6hCw9AuJCdo60xqa1sBN3Ka6F4CDhO06DtZTWZ\nt63c\r\n=QTab\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7c4c4dbd28dab9ee9d21a5623b982628a970cc59","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T20:36:54.969Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.19","@balena/jellyfish-sync":"^6.1.108","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.114","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.146-renovate-balena-jellyfish-config-2-x-7c4c4dbd28dab9ee9d21a5623b982628a970cc59_1637959238987_0.9426140384503774","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.146-renovate-internal-patch-cadfb9f4f4fdeeddfb67855390c586bd98f80742":{"name":"@balena/jellyfish-test-harness","version":"8.1.146-renovate-internal-patch-cadfb9f4f4fdeeddfb67855390c586bd98f80742","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.146-renovate-internal-patch-cadfb9f4f4fdeeddfb67855390c586bd98f80742","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97cf2e199c29e5065a789629edad48840de52926","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.146-renovate-internal-patch-cadfb9f4f4fdeeddfb67855390c586bd98f80742.tgz","fileCount":28,"integrity":"sha512-OxtVVYV157EfQq82IymnCZ/SwewLZT0z+aGTMfuBQmzPU2q27wzrycxuhfMh6Q9OSksAfszL1L8B8VdWyyF+Xw==","signatures":[{"sig":"MEUCIQDl9/KS/oP8rdVRkYxpYhE5sWQlFzWBkTmXiUL1dWtkmwIgWokIsnU1Eif77UZaueBm+4do3S9ryKqzdc1stbS0ZlQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220812,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoWtJCRA9TVsSAnZWagAAszgP/1VNpj/S+Wy5pV+z3odp\n7w54y+o9yAe8KCc13PudPXMUYKBYa2DJWzs0xF8SFpJI5PMYbyqdtDeu7qr1\nf7s7gzJt1EpQO1tW3fP+LJ+WTij3ryznv43qUExYYqBjzf+MxxQHGsfaHU+2\n/XdYBa6UvdLAyHzIykpht3EXvkKB8qBzhKyedtwPyKT+7lkmT4q3FMhzkoLo\nHvWHVOAREJhOMoG53Rb4sJZWxNi/7GOQF/mdxB20XfyQRnWuEQRSm8C0zc9v\neKr1CD8vZYRYDNLi8PerMpZzf2pKZG6LdF/nyomvTn2kr4UQa/TBJLKkpe4j\npIC7wPlcmWDEmZed8H97dEXnFdS3IN6kMYOySvUJF+HQbMkyU0BwHGbRAA7g\nZcUMdzmX+5f42eiYJFpOIqiBS6ZyH/2EMeBY/qaYfvFlE+3H/RremoHdfD+Z\njTPmKpUZnU6jy85n9GivUr+h0F8f2Ay2ausm1AekfMGdVvaNgkePjbpKQG+D\nIw8gdgF772srL09z22JPO1TQ0o8IlvdyLCFkBnoP15qxafkO+Vs+ax0cnwrj\n2jsvrsYM0b6jgRhHsPqHmvR+bLoe9Vy+YPWMubwa6idLsK4FvxeBDYsLyNvH\nsQ5x2SuhNJjdx1Y5bnsAl5FniQItcSYLdO3mbsD0iVqiOQj/LjOS4ZbYz/Xr\naEFt\r\n=bZNp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cadfb9f4f4fdeeddfb67855390c586bd98f80742","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T23:14:30.077Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.21","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.146-renovate-internal-patch-cadfb9f4f4fdeeddfb67855390c586bd98f80742_1637968713066_0.661745289750509","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.146":{"name":"@balena/jellyfish-test-harness","version":"8.1.146","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.146","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5a4fa87364f97403904faf1b397a4e86a7c2550","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.146.tgz","fileCount":28,"integrity":"sha512-gTVNOZ1kOOBekaLvf8Nkb0ll0ZVQE9Zy/QkgLOpimGtZPPC1SiGOC6P9jwyfpoaOZolOZaJCd4TvR13AlT41+Q==","signatures":[{"sig":"MEQCIF+FqAfLLCOGet1cf5IxL1qJNlBrIxIbdRGz8Y9UrKGxAiAae3oEyFxuhEUFK5tq8KLR+C1qi46ZYqRaAmT2FDvCCg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220747,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoWwbCRA9TVsSAnZWagAAA5AP/iowDy2Bwslr7enl18/d\nSpHpXlANonomA16th2MjXcvE7RNNXiSJoUbf2f1LMJxG6tANqbxLBQugVjGW\nLVTi9ws6miOncW42cEcPQB2t+W0ZjxYGzVWSgh5aADC/DwFmOEkVcGFxCCBo\nuiG9Ho8dg/s6KZxXJo0HlnK8MtiZOIVfR/HeVb5EbDpCaHAl9EHveLlFthCA\nZ31lkE0mXxTn0Ze6A7OPYTU8r2Quo6CZxGEwjbonmQu8b5t418PmbzO3Yt5L\nPkn/kNQIS8cnECW76n8eHZ/Lhg864TL2D+EF9ERsH4qDYKznYXAvTB36OJxC\nSotRbSB+vDco5dBaMvO6KR4RbEH2FHLVXIW7KkhHZncKMwPjeqc3DYLwOeu9\npfnQqp7SRmcBKD7UkhqqqYE5u6pA5oQBYGSDRaXesRj7OajQxyHEeQiy8FI+\nR5SfJyUw4XOq92PoLYK9d3TsB8e0942Po9oxZ1EiYtloErcvv2pdyaE94XCk\nOxC0ieed0daq/QFmnAVecaoKVd4lZasbl3x2SzDXTGKwSe46IpwnmPpdqcAl\nRtr2cS+TJrao7eEaZvbe5VELOrRDbcvbZuzp7t8lTiEO6rJqKFvPsMAP30o8\nRocPBHImnPcFbuNJE7GwyFnNMlcKa2sxO9vSqBp1U5edzgZ5KrrySTAbhhGa\nMS76\r\n=ItQK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bbb30d122c993b1f0327cdba7b0a9da6d5a77ec6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T23:20:04.294Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.21","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.146_1637968923800_0.18875799334060983","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.147-renovate-balena-jellyfish-config-2-x-e860a0df88320f97f8497a4b95c910319ea0ef76":{"name":"@balena/jellyfish-test-harness","version":"8.1.147-renovate-balena-jellyfish-config-2-x-e860a0df88320f97f8497a4b95c910319ea0ef76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.147-renovate-balena-jellyfish-config-2-x-e860a0df88320f97f8497a4b95c910319ea0ef76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f0d25ae46d3c29f095099da435b746a5770dc49","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.147-renovate-balena-jellyfish-config-2-x-e860a0df88320f97f8497a4b95c910319ea0ef76.tgz","fileCount":28,"integrity":"sha512-kJ9jzsx0NV5l2uN/ZYBZNyjjTX/2396i3BMN1TUfsPB+S1Ncs4NGc+rRPC37b6DmN1rfKnZ/2BVH4m2guheoag==","signatures":[{"sig":"MEUCIQDeq3Rns37ywY9JDaYsI9WLOhQvp0JQzAb/AgcO0r4JHAIgF/Jhl2qRsRDHgYiknSdVW1vUh6BFsPYG7syguLsAMfk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220927,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoW1jCRA9TVsSAnZWagAAx2UP/3unzYhakuzgp7vqfGOa\nOxU1bFF565oRchkVNsTgxepnXE6tAKhmrqMyJj3BG6K61sj13FrSXXPxR5P+\nzkfDSodbTDBJ/kvUr9/izdsUaQu7Vxp2Vgv0yARLiUIhN0Cxq1+PmPMsolY8\nI1PQPloNcO839JQs/4pcISufvdPi/aaEeL4IYrRC9W+Na8b2Bal5P8iAOeUq\nSbzudQlz2x6KAKzZlx62bjD48R79BVyMhtjGlxygF/fkHBgkDAIQEiZkeRxV\n4EpGPL6mmXkVyVGJH+LS2Oj+HNckRpwoVsGkME8w+knria7VotyyqO5xPCNh\nDvV/1NbOKLjFFKKag5QQR8tJaQln0GioPyJv9+/H8L7Kg31wcr0M1EBEwxZ0\n0b+REw32Gn/6DZs8nKwtSFJXy9ClOxXNYd32Ygss6Q2wpVJTluvot1AaTVL6\nX99qIkwbdupTHk7GutkLJZz/5g+YLFAN3mCPo11C36cq5CZ5z7q+RLSmASRT\nuZ2amESolqXyFL5tQlO+KHPkvwKe2p60Wp+0k8l+2qYInAyf/H5z5IZ7ZTZs\n/LpYkxU6L3oGGkj+3cZX5k6SVg+UVsdzbFEBoOUkSFrANWrPN9yoYkHS/HFS\nb4XQOVXJ9C+EB4po9UPwWBONTR1aMwcVwHUKsA1QXJQDY8d5VHja6+0evRAu\nYUJa\r\n=/93C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e860a0df88320f97f8497a4b95c910319ea0ef76","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-26T23:23:41.871Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.21","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.0"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.147-renovate-balena-jellyfish-config-2-x-e860a0df88320f97f8497a4b95c910319ea0ef76_1637969251410_0.9801261796832907","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.147-renovate-internal-patch-5d4e3c0a4722b74d1524f585f2d7109efe81415a":{"name":"@balena/jellyfish-test-harness","version":"8.1.147-renovate-internal-patch-5d4e3c0a4722b74d1524f585f2d7109efe81415a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.147-renovate-internal-patch-5d4e3c0a4722b74d1524f585f2d7109efe81415a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cb4d560937781fcd0c0f6a02f86df4540a4dd6df","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.147-renovate-internal-patch-5d4e3c0a4722b74d1524f585f2d7109efe81415a.tgz","fileCount":28,"integrity":"sha512-jEyjKPY9rDNa5SRYGUfKHp0y6/Qjnade3uYqDYOk42Ng+XSXjx8pDPbewQ05Xb31B5p4DiCHRed7kG4RpB9/wQ==","signatures":[{"sig":"MEQCIHHaiRLQMcK3EAHrTWyWOSMHmf1UEwO6faTsTyNDTrq8AiBv+JBWZkuYx0RTtlAcl6UFgz4+1IuBLY0ygEK8WSQ9yw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220917,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoY49CRA9TVsSAnZWagAAacgP/A/BAk0dd9TMO2Avelfl\nJv5TmJzqISZVoKVbrJUc5I29atBgPtWlBfvy4Gx6jobmO/PqZnDnPT1qYcJ3\n74cpedv88HK8ipANaB1pH0kV+Vc4WmHyDA/4pJioCbwVSrIs7y94GilR7GHR\nDpmnRQQdIfEdCp/EodxFW05dSSv04oSSIIAI0Y7d1Hl3HY1GImX6VQVBV654\nXB2o/QubffOCQrBPjFAmHYpFKOiqxA1uxZ+x1RoGP6H1FvGVArq7v95bcgr1\n5lagt/8Bp2g/Rd/0zSR5jxQqwYpRmAJXl0BhI7P4aSLaYJqJrM3KVpuEnxMh\n8vW/eDog5QlXeR1KqdSDzSWPR1nXLv22+R/hcF2cTDQO7D9CWJPQgOU60gmW\n0/vg8gd9Qju+qFXVwHsG/3BOyAUUKydo7WeAlvgwNHeIXsI4ZhTcDKRBpBQM\njgJRKQqKbXXprZf4lza+btfv6LEq2vP7ARUs+gvFKDosmUBqRO7aZzKY8LyC\nV1nwBO2zpMc2grzr3mc4SQil/wXpxQ1N8c47SVnJPAGbKt/+joWUg97sAyyx\no920CKwS7wGTweUvRvL21I/yEmXd0JcB4Jzv+tJaU3xYXPck5DfR/rtAeE6E\n4BxvguwGmsVbzV1MnniIfJeuBz3s49lxg/CrCLGNDe2g5h14TpcfdfyqIzeu\nuNsv\r\n=GPw1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5d4e3c0a4722b74d1524f585f2d7109efe81415a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T01:43:30.086Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.147-renovate-internal-patch-5d4e3c0a4722b74d1524f585f2d7109efe81415a_1637977661351_0.9003130037418339","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.147":{"name":"@balena/jellyfish-test-harness","version":"8.1.147","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.147","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a73e9e0a03222452cd3c939f0371a7a7ed3c9226","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.147.tgz","fileCount":28,"integrity":"sha512-lmR1WRVnURvDszvMI0VYv4dMBmJTs3I8O5fEsSkDRd1nldQ7ToJD4zq1k+QwPdk+zjMZO/hmDXRszW2XJUiQ3Q==","signatures":[{"sig":"MEYCIQDuy053VwGCyRrQksucO+DkM2f3SjFJKtSIINvk7l0r1AIhALUT0Kcb4WkPHoQR+HPSP9XJx4gBVGwFSGP0uVfwtO/Y","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220852,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoY8cCRA9TVsSAnZWagAAiG8QAJskMBQ+jwjGInjJ5yZ/\n269kt8C/h0J/HZpVmiMlrnAg/8vUfIE+5nn9LZEzu+MAbfmRWctYDWvM3hTJ\nPxm+oF0r2yIbo0qI7nuOZWRtWTojP33A7bhlDGanqelX9NBWMCbQjlFSTtZm\nGTqvoFO28E80zP8fEybdH3BkAQvH7F6N6iaAv4+uXhSgWjrwfAxxVHcuD2w+\nGJ4F1p04ie934t/CPFzw2M1orbsHKQYPlS+Dhp/WjuaKXm5Qq8SDbRZOqRZg\nLYLf9dx+LaZoW8xkmuJgwfdyAp5I8ElDoIbyrHwmZLPZGKeL7Ql//g6STlBq\n86ERewlZrBYLjA7H1RLEit1u4vjiG5KM7ivafJvcCfQfitJkdbqfqkhGksQ2\nuQZ46EAWHxdcnT2HXgHKQVhnud/vYDhX394UsFuiZmmF0UKi/+81o6JWheoA\n0nvLm3yhdMT8cYyaje+UoKWAbCq9Lhid9hSoplhNu1hOtcqHFAEJOXsMS9jj\nGUfx/IeuBahW89VZLkwGoq9MzNnBrtSPfblx7Lr+LvrBfMsm8uz+Rewhxjsz\n1Fk+bEbs30xjg07MeIP07cIDT3kZvH6eLtfmdUiJIoFpGr28ipF2eIGhl71+\n5qfKRyv+RQov0v9f/8gvkzyL/SIxAGPVfd5MNmEzyHUdUhVbiOhLkEUt/em8\nz4f9\r\n=p2QO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"25e8cbd71c28a6acb0195abd3884c48897377b9d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T01:49:21.969Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.147_1637977883940_0.9027800056807469","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.148-renovate-external-non-major-71007b78501f3ae1f7b367245e481d09e545fdd6":{"name":"@balena/jellyfish-test-harness","version":"8.1.148-renovate-external-non-major-71007b78501f3ae1f7b367245e481d09e545fdd6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.148-renovate-external-non-major-71007b78501f3ae1f7b367245e481d09e545fdd6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"311b73fadb67c375bd5867dbf0d1364522bfa9dc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.148-renovate-external-non-major-71007b78501f3ae1f7b367245e481d09e545fdd6.tgz","fileCount":28,"integrity":"sha512-VFk8QREhhyKWURzJYLdWAVuTzTiUjm1c4P9VlxM9EYA8gPDmu/UtkcWkNUs0jBNa3A287wsdWoO0JxgiYKBxGQ==","signatures":[{"sig":"MEQCIDSs4bIHfY0PsN2xHX+JDuO/qMfF5mLuoajbqJUM/0i9AiBOOyfxsQMmd/QtbQ7KtDzbaMpXnGXRCCUDr/9nS5kCVw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221013,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZBWCRA9TVsSAnZWagAAg4IP/3Is3O8GLUJtx7vVSGMj\nzV1k0HudP2KV2xIzXC8WfWxHDhfBsaaGteuWcOP9quM6TkiZQuaIN8LOtsQc\nKUiBEqJKpYz0bKnPhRWnDcZkpc12lOaZTX50IRP1MgMwGupxfoKOlBnd9Mz+\nQ5/wb4796WQ+7f2EgPCJquvwx1YHkCMpyfRJQzbgbdDbbjjsK2ihpDQxJOKd\nH4lNZjIvdls9kq0PfSbKmLhV64FRFsVw1b2GSaOv1DbokCoCkjscQGC1ulVj\nl3yNwOe8LeNexiV00uBeoBmpnHcJGslyv2410Zj/jsJzOGK27xJCb0GEdjHA\ntIJsP0EQezlwtWw/TVgr9DhK/gyrAtkbjanO1G3fOMWQWN0ZwjJaWyDlnbQr\nHuHXh1qvrqSlM+5suqhK4YVV1vS4PvniGmb5JXKZZKPSev+QC+ln+wkYQmCi\nQ9J2dDVN5V7qOid3XLIbeIS1NGcnDTL1XzobKdnAfv5QLkgP/t9D4g9apedN\nQFSbNB61gWOQNYWznx42sLU9bJ1xPMp2l9NQs51FWSEhFhWYnkzz3tRnL0JE\ndUib8zQS6cVAE5Fk2IaeU5yDuPcx5Gan7zdsmVryws/MyPpFza10VH+Sqesy\nf9mIYnah01bu7ikp9x/zpqBf234l7mRJfyKZnLcwUWDFU5i3A72xxISFcQ9D\nYyI6\r\n=fBtl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"71007b78501f3ae1f7b367245e481d09e545fdd6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T01:51:25.616Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.148-renovate-external-non-major-71007b78501f3ae1f7b367245e481d09e545fdd6_1637978198415_0.3528724556515621","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.148-renovate-balena-jellyfish-config-2-x-178bf3510e3f581405a438e6f88c88cb722d3613":{"name":"@balena/jellyfish-test-harness","version":"8.1.148-renovate-balena-jellyfish-config-2-x-178bf3510e3f581405a438e6f88c88cb722d3613","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.148-renovate-balena-jellyfish-config-2-x-178bf3510e3f581405a438e6f88c88cb722d3613","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5757392ac49be5e67ff8aa163df4aa900510609","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.148-renovate-balena-jellyfish-config-2-x-178bf3510e3f581405a438e6f88c88cb722d3613.tgz","fileCount":28,"integrity":"sha512-HxCWhEObkVZtiU2IBFSxXQjlB/bSmk0VJEQvlhVEr0x5RKwODbXlyD6A/IjRZs46YmDEYooNwHCbFYpMNsCQAA==","signatures":[{"sig":"MEYCIQDw+XU5DuCf0jp8Bz+g9OvIusZjT7/mN1M5Gl9lAXMOAQIhAMbmRz44aW89SgI9kzmL0Snbg4rS/qO2oKc/RO6131yH","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221032,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZCcCRA9TVsSAnZWagAA96IP/3ZPlm63Njra/Q+yd086\nw8PqM9OY7BvCfNjeu87pnnOhXke+n6zeu6zuh2oGcvSPvbIfQzj7IJ9q1fCW\n4lctQt22KNlcGl/y4VgWY37GF1KIea/3qKeF0cK+RX0JJ4HOESsCtO8Ol6dw\nsQHWCprHtMNKrwBOMqeuYqd9k3PTyfe1k/gAXaJ6vhvO67FaU0R5K98xxNFf\nhaKbFd4Pj+81k1QEewLaGmn2QSerrwIUVSs1uL79fSDmkOzdByScEyvLY2Ma\nC5FDDuoscUmNuVA8Aja8pF5IIDK0enI+0sv06REbMOv2uLjR55lE4mdOz8J6\n+HrvGHkIMQuPo8xOepP8dHYRsoTvxCeo17E5sXx5yXpk6ggblDNxjkNi57Mo\nOEEkg5a0gzh+rS5a6Dv/49KGnFZjoulK9jlJwohysoQhQZpx/J6ILPr8yt+E\n1+V1G2EJIVZdy7ApConmDRkpyYLL6OEgoQlDYSmfde1HSMOQPMp+M8tAMGVr\nWuBIVF/Ud2xy1KfISjwbE2a8nbAwwprlhtg7w2DN3DWTo575D9kCLlyP1qxZ\nxkApMqGLLkWEHHBSFuJ/xAKksfLhzdggHZ+N5DiQerr6AMbSCPwRkky8bzwP\nNOcejGK71VbBWWNewjJLHHchDMgKCZm2Z2LMsNGr43VRA2JH/vI3bVyBwqC/\nUQaZ\r\n=iTh+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"178bf3510e3f581405a438e6f88c88cb722d3613","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T01:53:24.936Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.109","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.148-renovate-balena-jellyfish-config-2-x-178bf3510e3f581405a438e6f88c88cb722d3613_1637978267918_0.03477805827234115","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.148-renovate-internal-patch-74368ede1b9f44302b344ee390f87642980e7120":{"name":"@balena/jellyfish-test-harness","version":"8.1.148-renovate-internal-patch-74368ede1b9f44302b344ee390f87642980e7120","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.148-renovate-internal-patch-74368ede1b9f44302b344ee390f87642980e7120","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d7dbdd720961e54fd5878223c3d50bbfa2353c8b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.148-renovate-internal-patch-74368ede1b9f44302b344ee390f87642980e7120.tgz","fileCount":28,"integrity":"sha512-I8P+DzrLuIjpMR0W0kMgr+W9mJzbc9T0HV2UsH/3JwiEz8oTPrFrTIPmx46km2LwBR84k2PQtRlnX3em24tiQg==","signatures":[{"sig":"MEUCIQCCy+63ErSOzl0/lDn+Dd0pTRyAWhItTGplvTH0S7zmbAIgfyRtuVTyc19X6BZ9m4Wuxvg5Zja1bEe292vXRVBWaKc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221023,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZH9CRA9TVsSAnZWagAADJ4P/2GsaYYebHGoiA7PmHNL\n2CEp5bU5fy9DP3/NRcrQQH3daCu4lQ00iO1/Z11tinaXPIypU1NS0yZVCcUu\n1UMQHMxdeG8bWLT+NfsWlhQf0BU3OGMwmcM8AtbJK+v14NLGncj6l6VZH9BN\nH4O7Qqq45Ui7h5xdVtQ1QXjjXwRbYhFmRZeSCfxuToWwSbXqDDJxyWHf7c0c\nubrU6S/rCIpIYmsxfq6eBQCI+nklMhoGbZl9eo+68XxRhKRo7Kq9hi8F3zWo\nxeBpnVtnM/jr6+aT3zp+UQQBYzWaEpXPF4cj9K6YwW76lAx/Qo27tEnUDpNd\nbvUnqROFrGBZu0wJ4Ppwez8qnd+o5XSWr0RfJ/TyccUgQu81Cv8ABUpvOlIk\nJIGm7EMK+udQ+QNxbNxF/J9Fbr6C6JmgerVahCe4UASB+uiXsKKMeX8X9sWo\nBKUX02Js00IYeiAFNlSgU7Xz0gjMNXP86LPWo1NcdI2+3NOxGvBMqyDEZXkj\nsGdTjJDpxR4n3PKHjSLrzossLS2EvRbTxujq9IxtHcAExQ9LMaKqav+IPEAt\nLLZJq0kYYZsakHruCedSaamUvzg5KbEG+9CGAb8WOfR3UnXFxKvVLkjm2BFz\nbtYpUOvA54Nd7nkYbE1zp6pDBEZtuTQSj7R4PuSkPe6FcZnzN3H40XsDpnuF\nfPit\r\n=nJ0I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"74368ede1b9f44302b344ee390f87642980e7120","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T01:58:28.401Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.110","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.148-renovate-internal-patch-74368ede1b9f44302b344ee390f87642980e7120_1637978621700_0.6081893716969706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.148":{"name":"@balena/jellyfish-test-harness","version":"8.1.148","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.148","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c7b219b87946499a01b1c24272c8c5584751a838","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.148.tgz","fileCount":28,"integrity":"sha512-Xrn0aATBdcKLLqMh8fX0OSu87G+9M0covGNdkOtwhhUj4QiYpUSDKT5mfZhoB5D+ROsSlRlpvQ5ZndPZT6vN8g==","signatures":[{"sig":"MEUCIHhcjdkbpopz/FYPVCcAId3XUMMT2c9gfGyyDJtnHic8AiEAxvPOhxYqda/aRmkw7SxRqq9hezNZkFe8Bgmw8DQHd3I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":220958,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZMrCRA9TVsSAnZWagAAgksQAJ8kEuch0PcRv/aYRTvI\neNjZQFXbgsxI6J8iOT/RUnmCg4DFB5Ut/o/85ZvDPIvAhOAEo6G0UGNDcTQY\nPKdvns6R26iIkWpQGqt89nXLgDXUsfPYGaNQS88fZpuRg2+WHNM51b/BYALm\nvVjEDHXJ93KBibA4lBsapG44V7rfX2T8XGLURdFG/2q1roGr9x+/LYAf3JG4\nQHAW9W+WfXgTL8CwnBGLIrBkT4wFxwBQWreC3ugkcxETcVG28hgt9Gs+JgVD\n39KLLCoQf0O/S5wmp2zIWlp7HU0P3bqn5BLbi/ZbRNVVjAiKkUfUG26UIHl6\n0SK8DL9KlM/NHTyhRVlp5qQx7q9fLO4ExRFVfV9EM4uLNlSb8PCYjJNwOzf1\n+E+WDxcmDuYNlgkZUmKnNYxHExJvEKPC3JdAeS8/NyYUtiPu827HwnKJKKz6\nodQlGwdbMQBawR1veJVGZhC/EOtvEIxLJYTF2gwPWki5NxIzh2y8tmgTdWdp\ntJcuadDwaSWm3l4rQTAnnTtWzSwn1YJ2XG8jI235Ezs1Ga8DLHITEfMMP+h+\nNNr50Rt+pWHxNTcvCCXeFKOWrvovkX4JtSa0na0IXL12NTYaGk17WYIW6OcB\nvBod8TQImPto0/q+i7ZDTwUdQK9w40vIXuAaLbzFgCVZFyH1eLkt+6t4LJcf\nfK2k\r\n=y5sJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0b0629f82245917d11bf6313a7b1b29bbc063950","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T02:05:48.011Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.110","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.148_1637978923819_0.8151769077827062","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.149-renovate-balena-jellyfish-config-2-x-bb5660c157a136b8abb2f7719df58a8d8135d95d":{"name":"@balena/jellyfish-test-harness","version":"8.1.149-renovate-balena-jellyfish-config-2-x-bb5660c157a136b8abb2f7719df58a8d8135d95d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.149-renovate-balena-jellyfish-config-2-x-bb5660c157a136b8abb2f7719df58a8d8135d95d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3455d87e56bfd57a07de0814060c34edaa21effa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.149-renovate-balena-jellyfish-config-2-x-bb5660c157a136b8abb2f7719df58a8d8135d95d.tgz","fileCount":28,"integrity":"sha512-4KOFRhdREA5vzUGvMMohfkG5XAcY+XKfJA0acBf4A+KbdbEbKuLBlB8cgHWMyIpuEi3F/DQ9Xc3GI5obfluJmg==","signatures":[{"sig":"MEYCIQC1D0V/A07MlRrMcWJ8Urh3qB8AffclruBRaHsTQ1z++gIhALj/pNS+S6qvTIEII9EV/FjV//cWhjOnpU3gEwxUC9uX","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221138,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZQyCRA9TVsSAnZWagAAP6cP/3sqEvX/DciKYRTpsx8f\n0KMU1MJ6Fz7OzLNKx7S0HhSQxMFqWEQmn+ZIRtXEssERFsfzNwkceriZMXDk\n6BueRagJEjnbXXz4oN5xZdCZjNsonNKbDl0utH1IKwiHzOZKMOIDXca3b46K\nLrHfbrIPhsK2s9BxR3QuJ8/QEFTq+xzvymORUrx6gS9g0t5KcI3mGiwoIchG\nD7INRAXaj+l1LKdk1SVBp871YJ7d/SGKQ1HJ6L0h/vHLJ+FA07UP20f0rNwk\nUAq6SHxiAZOR6QBKWrv6BAypjpF/X2RFbX1m6p/4GbftAE2qSrPSTESlYdio\n+AN4u9GjtxmgGPyxQhXNvO/Qq4pY6RJf+CAXXinvBFmcz2YGzLoCcf2Cee/5\niDa+emK80X3d0+WEA45kdEPtYJ4ph5qgp+47OLX+8IQ+5yQ5nta5fBAeyXMZ\nGRJW8BezyQk+WbLuAdJjqzH709MJ9z3bZMjAo28Vw8ckTfXyr44XVR7POvKC\nxNo+vd6hl8l3fy9Uf3uG1upfLBLHq5O3dAFBQywgDmSNN3jC8jMYyziBrMCq\n/TeGTlI+MDwRSSYJh5b5tOC0o2OuAeiQnBPM5BqEB58/ih6VVmHj+OIMf2KF\nd9kAPqMIy0NH80vvbuZJotInCRb41sz6TOQ0KkIwBb6JrcL3yf9fXr9Du1cl\nXjMp\r\n=fmao\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bb5660c157a136b8abb2f7719df58a8d8135d95d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T02:09:25.593Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.110","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.9","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.149-renovate-balena-jellyfish-config-2-x-bb5660c157a136b8abb2f7719df58a8d8135d95d_1637979186014_0.8422238667686133","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.149-renovate-external-non-major-5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008":{"name":"@balena/jellyfish-test-harness","version":"8.1.149-renovate-external-non-major-5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.149-renovate-external-non-major-5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a19e295628bded7f618946d108dbf85fab653d34","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.149-renovate-external-non-major-5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008.tgz","fileCount":28,"integrity":"sha512-SFa1K5T1109E/WOkldjXY9ytgvFT0PJgBtTLVKop00goFLo4L+SPW+VaMrcrCz+MAsm4R+bKiLewRff8mMdMdQ==","signatures":[{"sig":"MEUCIQCfskNMIankf6tlg+DUqnGQqIH72RxEkub4U/SBjGCFTwIgGJOl2DyVlFs7tGgf5OyglHka3wtWpdygQIBjCDFtBZA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZSkCRA9TVsSAnZWagAA4OQP/1WWdkfLP98FtcoXtU52\nKO7v9ZrCgveoReb7/UJwLa/4PDlGpVrDDoNd1Fc830pRf4B9aKB5dIhXnEu8\n8J72mj9jk+tQ6mysjnsEDMO8SsIcssldCWHYQFD8h/YcZ01t2JV/19zS5els\nOnMAavYiT3jDDHiviPA7Xl09oaXhQVAaNRhM+4IJglHgYbE7OF/0dX+mODyg\nkWrUV/HcKnUNkt15eKqtbhqzM8MnrZNzksn4shrrSjVlg1jfdZb1FM7MKeHo\nj4OtndVkQUG/zupf9rOUPpa2Fl0ZSRUQdckCBRMvGImWNGGXX+B7Qp+6+0a+\nIrmuf/H5at7PuDAuLwsEGC8OAWlwlbaI667X+HDAPlWjyRhTb2puKs6V+oJS\nGH9sqP9oXGgl6LTo/YNo4KTZ8PP7OTKC0YzpniHlfbdGNpIH0roNj7JmTHXI\nbwMpS6cdWwq4nPstvaETcbrXEolwfSUr6SPUtvH3s3q5nSrbm5uSpoU6Z7wy\nkWXby9Cbv7f+02P95bEQXZM7tfc8vnS5euvZvanKiXgwQ+CBEmNuM110X89D\n+DzV4SQdoY9leFAL8DBXm95lOGrvtq6XtQvs5+mwYPK8+N55ivn9LO777l60\nwpA6iC+WtWisMBSomRCy617vd9TkKKxszcPzr9bEve4Wz4ZTKjD+bOcJP3pz\n3dH3\r\n=ELxp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T02:11:11.302Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.110","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.149-renovate-external-non-major-5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008_1637979300582_0.36221108121893564","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.149":{"name":"@balena/jellyfish-test-harness","version":"8.1.149","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.149","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"574dbdbd9e09d3af287e70b5c8bd320eb253fa6c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.149.tgz","fileCount":28,"integrity":"sha512-uYLf2kl2aeOPBerdaVyeMDqhHhchs2jfhe19CswFGAZf2GdK9pZJ4Sj/M8TpeUUQFMnYKUdjtdKyC+aZf77Nyg==","signatures":[{"sig":"MEYCIQCubBOJatdyULPrGq6XLGbu5K2CmmJAC1moX/XZQFGNYgIhAMzdQZhFsW88px8Hdtpq6wgIsDrkchtO5X2QIHIWMbEB","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221050,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZWfCRA9TVsSAnZWagAAhy4P/038mfMpp5XcDqKbEiFE\nxFMiwfH9tz9zT5j/Nc2lc+jzPXHz+Ho0OvXE7N336qRaorZoJIuc0BOEd0bi\naWRUu0GkQ7dWfdZoduWk9qQYd1nB7yqFIK5KapR9bBwcz0Ja7is96bVY5IkM\nLq/vYqtEAzJaeaKqUqQ2gZfXcsi0V6RyWndS9ZMEqVCzVJoegg1m9F5tGOzF\nEqSylK+y1nYnYHEFIsgBwiNv2U7Sw5Y5VE07OrhDbmkkLAnCDeJ4hmaeiCdd\ntctk61PL5O28QT7+35LRDPH7NWcWV+73V+P5uj7i3aXZODBNZp/ezNfVMVHD\nywWdwL+tbdvuYuJlI+8uLHLo2NkF9vmsrfFDVHKfGNfS5z/j8a8WaQeOyrVs\ndqzdjYydz2C+qEGSsTWSC+O6E9ARNK5L1t0/yTHwoyhK+9IoMcWIB6IkWfc5\njAPm/tyOMmgvnpcaxiUZsPToWuK4hnR+nEn3vz9sKwDwCTItX7Tm9/5IefwC\ne4+RcRxW9YKaBFA42vIYxX/aNXlT8bF6sjX4o51qspihcFvExW0gadCJheIM\nJiylW+yI4PaRCcnA/C9h92lFamT8ang9sC1h5VDlQiXMAZGiGUtiUQ4/37SF\nXVomWWtqio/m+Q5M5lVkFxfCvF8N76dGrjxVtAWqJLtVwPvV1R5nQfajtv5o\nZpXa\r\n=cs3S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eef57f9539066a6399df5538956b1f3d27cece25","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T02:16:51.518Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.110","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.149_1637979551049_0.3423591520236706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.149-renovate-balena-jellyfish-config-2-x-b12a79842ee7ad4e7802152fa8908c513231ba2e":{"name":"@balena/jellyfish-test-harness","version":"8.1.149-renovate-balena-jellyfish-config-2-x-b12a79842ee7ad4e7802152fa8908c513231ba2e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.149-renovate-balena-jellyfish-config-2-x-b12a79842ee7ad4e7802152fa8908c513231ba2e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f661733604816be912d5ea0b66c30af455512604","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.149-renovate-balena-jellyfish-config-2-x-b12a79842ee7ad4e7802152fa8908c513231ba2e.tgz","fileCount":28,"integrity":"sha512-jn/su1PU2kth8ulz0DJ4qciZIUL4W1S8oRfIWRb+mNpjjj+KegOenTGgIzNC1NFZ5YQYUwp/pDu3d6S836MARA==","signatures":[{"sig":"MEYCIQCyN1qD8p6wlOh1naPQyPGlNoOtV/5NS+xHFcoLDN9SqwIhAJ3ZAN3aZD/egLmJoO6d2UlGhweKDg5IK0npjqbnP73E","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221201,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhoZZgCRA9TVsSAnZWagAAbwoQAIlpoR01TIl56/uvugZR\nDi3D/1bZULSmbB6sNNsS3OuZTwCIudCQghi1GdiwmAM0vZnXkqNQ3m7U4QXL\nBh/GPr8LafkMJg0cpQHX8mUz71JjomqisFxuwlPVJxiz/daMy7y1NvMhnBfE\nVOSUFNTYCu/2bFoKXoT6INZi/ToG8d3Edn+uayxXE28tKM91adDC5Jjy/0/s\nFrmnXKl6bbGR+2pZaqRj7IeYz+hA9wu06abDRoTmCtH9a8d27j9IEwzSJnVh\nPGDspiI17rKYx+uD/KUCXIg/I6f5rWrYfNBR+EqCnecTtAcJ/C8ad5c8Qf8R\nZgEVfve9f+qfHLxFvrtTXvyh269VUIdxCJoLT84TCKXbJxPYAB9zjG82n+Yf\nAXl4DRBQgABKMtGKtVC0Cv+DrYTOn1/DF/SkdUCCpDwcAtdaL2f3aar6BPZ6\n3EeLhENgVfxo0m55lBuQAqbkqcY1LfwFyvNJabD5j0m9C/sY0YIYX7LKIRsL\nk54qxvk8C1LHaJPyzFfs0rkgfakvCS5oJboommb07czqq7+6rOO7Cx7YFwEx\nW5IpEhMKkjUH3MsJ8dB0UBT0lv5iweVG366V6M+TBJRryQFoT3HWu3crGBl5\nWWYX46/43Q+CDEuubWLfru7wajTIohp1F2MDQFXuKfaqCnU99Ptk6iVfusuj\nXz0m\r\n=I8H+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b12a79842ee7ad4e7802152fa8908c513231ba2e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T02:18:11.687Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.22","@balena/jellyfish-sync":"^6.1.110","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.115","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.304"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.149-renovate-balena-jellyfish-config-2-x-b12a79842ee7ad4e7802152fa8908c513231ba2e_1637979744043_0.5828866418717042","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.150-renovate-internal-patch-58c086b2a1491fb3b017b782f66767519036e0de":{"name":"@balena/jellyfish-test-harness","version":"8.1.150-renovate-internal-patch-58c086b2a1491fb3b017b782f66767519036e0de","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.150-renovate-internal-patch-58c086b2a1491fb3b017b782f66767519036e0de","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fbbb904b7b50743e4816069cfd3cd0f7a6b2a9d4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.150-renovate-internal-patch-58c086b2a1491fb3b017b782f66767519036e0de.tgz","fileCount":28,"integrity":"sha512-j7TN3HS0OCrRA5KGovyC/vVI5v68ZjScqamTQWdBevVyPeHhBFRXdq7Fypvua/BxQAdQ5LGyQVF6UVb/pPJM+w==","signatures":[{"sig":"MEUCIQC5DmKtwwKTgZ6MLyvYnDnSvzTaGrLIJUa6X3xFI+q+pwIgEdp19yQzaotOHGsdxhH+Z4Q49aC1lRRMrqAyB2C4Su4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221190,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhobplCRA9TVsSAnZWagAAZGQP/31JlM6oL6hd0Ouqm/2A\n/hwjB/ESw7kPyii6UPnnZyaJlssfTxZYyMFJ8aSG1AnmRqlrQ+COtpXIbnMZ\n+33VXU/xxQC5j9w6+I2taNOJEegiaVV+vW3q0PyIhaH8Mdg18iPAbv+eaN1X\n0lHmIdFmG3f/OREMPxyTp5X8x4715gkG6+zVwaZVb1S0ZuEQ0/8rDGhsND4A\nrBeS885C1hex9UFnULlFmd92px0IG0mGZVoXK7Yqkd/cQPLw4J+TbfGJXxCF\ndp+WIDc4TzPDUAwXl4+akaq2OHOFJ+vL5T3OwGBvPB9cuLWODOo4ysB5LDFJ\nZ+UyCafpFJ4nbhFqgkb1+0D3jOjnnHcCSg0b/z042LjkzYoNAXeJ9sqAyexv\nzwRJTPkfva6MVVv4eEJAecPaLWvznjFhmSpbDYBq2EFSUpcod3IlTE6RY+9B\nQR0yCSSp4ByZI7YZbMmVy5khWs3YNsktWP3+UAz327Ii4tRVT2MWdIasOFnQ\nW13OCl0F3bMInsfk5jioOteL+UNhG+k+Zp9OriN3yEOXvJI/0P+ftXpOduoB\nXmnt9FXaeub30bXuujTfcCGIZXlfjPqWzmj43FPDIBOD20jXAls74+XIxN+R\nEeb2/KES8k8FTyKV8U+w6FU+Hx4Z2mAJ144GxhcyYDnJGS1fcfa62qllXw+F\n0/7N\r\n=iFkI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"58c086b2a1491fb3b017b782f66767519036e0de","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T04:52:20.848Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.23","@balena/jellyfish-sync":"^6.1.111","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.116","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.305"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.150-renovate-internal-patch-58c086b2a1491fb3b017b782f66767519036e0de_1637988965160_0.0007695148613160452","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.150":{"name":"@balena/jellyfish-test-harness","version":"8.1.150","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.150","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e9d5a557a35d8e20efce43a26b1239130c189f52","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.150.tgz","fileCount":28,"integrity":"sha512-8Gcg2paPDSvwpz0C3cmU0auutzjLH6Y5bez9aULLR9LoQlmxoDKv1UkmdsnJ4DZSoBFVvHj1HA4vqN2GPI2mTw==","signatures":[{"sig":"MEYCIQCBXzv+LvaFJ8PO2kL2q8Pi0haEAQLQXvMpQRzPrA2uPgIhAODbFu0VIjMGr22viaIQR3gsXxMAWcG0es8ARNJ7nGLO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221125,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhobsxCRA9TVsSAnZWagAAI94QAI2K59RaMqoC/8UmqAS2\ndgl/SXOWmRJGH+tOtm+P7IdjGBsmtljma937yLp40KoXTJ0LJsbpGujYTLxy\n3Q+o6Z7e/UAUfVp1q3phCNFqQPO+cQmpAg+RnAepq2Oq/FHy1v90nVvavMN/\n3FM4BGoES/E/cdWbTebcvJoriXIhJEwVnIpWx2N/07EqTYOvOlcCGAiv5Pc4\n12vL5UWfYstFfP22+xfNXe+i7ixTWqv0gRQY0O7oopq/fEd0Q2uVWT9Jku1u\ngv1mClFlZy2zbe8xRVtXJ96pl9YWppK3Kf5+qRKcCw5dmZELe09n5ePvWNQI\nM397UpxgwBm64XAOj5OoJ78Sge/0m/ieNHgsuY5NDUq6qDXEoG7zLfaBu2y6\nHCIA7lJHLUlR/9pLeefGbIRaM4wJWKu8+W2ntJlWGXwwR+iPEphHbhPoxasp\nA+tnWZTHYc61lF3sB/k2JOg7eLGI7QJHIC53WA4JBGWQRLd5648dds3MH0oL\n4ObV9BDzUeIH+XaOiFnbvWnFWutgOnb+SYXCKw1ACKo2BnrCB+esW1M64von\nv3mxAeO4h+j0Bbi94UoYPgKtcOFzvdn1buQw9EsbGGTOOVEX+FdF38YKGCEY\nMCyqWcXlaVKNc4NNbQ1UtWjaCwZA/wpJ8pWbT9Jq6KavWB1P0UJqNJrgVr0I\nyjwe\r\n=gJ3g\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f536e28bddb1fa566f7f9108f3a8f281b919af2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T04:57:34.197Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.23","@balena/jellyfish-sync":"^6.1.111","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.116","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.305"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^1.5.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.150_1637989169170_0.19626002335864312","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.151-renovate-balena-jellyfish-config-2-x-233da244ed512ee75db2b6dcb90579d6882d5732":{"name":"@balena/jellyfish-test-harness","version":"8.1.151-renovate-balena-jellyfish-config-2-x-233da244ed512ee75db2b6dcb90579d6882d5732","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.151-renovate-balena-jellyfish-config-2-x-233da244ed512ee75db2b6dcb90579d6882d5732","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3202ce7dae4cb29634dd1ef55fb7e4c6e948db26","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.151-renovate-balena-jellyfish-config-2-x-233da244ed512ee75db2b6dcb90579d6882d5732.tgz","fileCount":28,"integrity":"sha512-a7m0fl8tGdgdSjqhqAABRkyQrrjjnEXQILfM6THMY3HPX92rrHARqS2wm7hh99BPJqfRQGyv+W5LA3ethLtgAA==","signatures":[{"sig":"MEYCIQCo3RmMJ5Jv6e5K0UqamlB1i6qhRuBnlfixN/qpXOTrMQIhAN0TnlAuRJ7gc0+G7pB7UQYw4S3i74y0mZBQQpnypckc","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221305,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhobyACRA9TVsSAnZWagAA34sP/jGsP1mMB6gfaMqTsm8t\nOslwSEJsmfP2UIVXaSaY43dyyVrtpD5kdTEFVjIjtIDPfobqn0m8YCJ74Gcu\niROPg40T4BJcGpFxvXjLuAWsd8yvP+BExp4tAK7QLEdIOYV7C2l4cWaQYI0+\nhrYlVrhbSbjLpYQkV2f0u+LeyVzxy7fCCU7FmgnnEzNBrOkVdYsu7+1wffzJ\n2kreyey0CHdWWIPJpHNHoc/Je6xTs3DU47kroJtY9CqAvKcj9x31j7CGZGg+\njZsFgjQoq113USNlXWFKV+OgA8XDGELhjd7ewji9O62SxoTo5Yl6Y0EdvWFh\nRgcnX2DEHtfGBMCnN+2/CdFZ7t1Rzeg5FJWtZsrocBdM47TCXQZql0FvINmp\n+VOSuFWwJt86TFFj9eM5CdbHX+YAksdftwPfdGs6Bfk/ZG1AdvOjoOqCAZJE\n40H7JkT5Eu8ksNZiiDVjAWZAjjnlfbcdKyth70R/42X6UoaBaACa2GdZ4aXf\nrl7l0MXtr+V9nPgcB44keAusQ4q2IScMFZ5NrwdqePON4uy+bEUa1Ax2iTNb\nzR6F9bJacoexzioaNf6shchrrw2yToa2CURFdwJHFnoHNjNn3YBJp7IH7DTJ\napodved5z74HSX18pv5wT9mlI059hIvZ2ebQ+uxrK0PRMyp1kXlhnb5t9L6F\nOEZv\r\n=ZyBG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"233da244ed512ee75db2b6dcb90579d6882d5732","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T05:01:34.665Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.23","@balena/jellyfish-sync":"^6.1.111","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.116","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.305"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.151-renovate-balena-jellyfish-config-2-x-233da244ed512ee75db2b6dcb90579d6882d5732_1637989504622_0.28647882972577454","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.151":{"name":"@balena/jellyfish-test-harness","version":"8.1.151","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.151","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"dab05eca91b4dd5855c72112979c8173d757e225","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.151.tgz","fileCount":28,"integrity":"sha512-1Y4d38rydqOrttUyrIbHEtwmUqmIF7rN6Il0SU0GzMgrMoSX9nztIr6vQotGeDU1AFQcErLyG6+AelPBmauPoA==","signatures":[{"sig":"MEQCIBraRR5At83cJf3vY0w6ElMMdRG7H18SrehZ0Igqz4zdAiBjNxwYes/RxIPMx6JCcJtm5WnYO9k7F5pGZsz7zNs7/w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhokRzCRA9TVsSAnZWagAAfDcP/iojWn6Z/cVkxSwwIg/j\n+A9RmZQqqQ/PhAF8cLju7Yjvj5D42Ly9lx31rJApRVr2W87DqSst9FwWj8Vd\npUF+OAgAKQ4Sg56MKA1h98Mz+NLOSe+ycY59Pk1Cq2EKE/dEOkJ96tD2Cb6P\naDzU9GrbvLUeRci4R/C7rd+9A7Gf8sN/PzBlhCG9sgNynTBaLWoPVoCwit6C\nrN58XyKyuz7aH0U1t5nvXFEr5cpGJE+yUesbDj6xje9OB1tJt2V6tgkVy222\nAfDzepEuxnBqLgk9Nrf+bjWah1/ZzPYh89TWroM9UzQ4K90FUnaNR0KkvXA+\nSwmWXxlVO8RDoLN8UDNz4Lth2wqzV9uHHlsPGsTIeYFuT/5glVoiE+kXfGPh\nf4ysSrGF42tfkKw+wFF8+qi6NOZjrvP6I8rR/9OsXMV8JYBdSZCM63XWwbWd\nXI/Tk4re/Ju1XhVta+w9ZouXLyp94D81jYingEKf0AWiyKrNXxlwOW1JvIyf\nFCI4l57CoC2rZOJnC5MwRYc1zWtn+slH3LouDiIvhaSt4J8JcX93illuvj4i\nxzHm76i4sHsQJK3uo3AsGKG5iCNfScVyD7tXsd/dVAWpo5+o+NEJSKRxCVh0\nkg5YUmPEQBLf3jObG0im2RuObKQ1hdxgZnNN4Q1zuL0r3PiOgeyhnne97g0p\n0P9E\r\n=sXjI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"97a40e30b231c455857f6e0a6df841861b93bc14","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T14:42:23.159Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.23","@balena/jellyfish-sync":"^6.1.111","@balena/jellyfish-queue":"^1.0.357","@balena/jellyfish-worker":"^10.0.116","@balena/jellyfish-environment":"^5.1.25","@balena/jellyfish-plugin-base":"^2.1.305"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.151_1638024307517_0.6309999860536111","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.152-renovate-internal-patch-9ec39ff510416e910789236963224a2165ebd32b":{"name":"@balena/jellyfish-test-harness","version":"8.1.152-renovate-internal-patch-9ec39ff510416e910789236963224a2165ebd32b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.152-renovate-internal-patch-9ec39ff510416e910789236963224a2165ebd32b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"873faef76ee72341075e84c7331fad23307d7414","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.152-renovate-internal-patch-9ec39ff510416e910789236963224a2165ebd32b.tgz","fileCount":28,"integrity":"sha512-B2ozOf1Yt7u0rVGHGe8cFq3VtE4WIXvyDaj9ld2ZKvydIEsbHccqxBYRIC7/GD5lF4UatKyetucf++UK7uMKTQ==","signatures":[{"sig":"MEUCIQCJrTp+2d+aISJuUQxZfYLBJEodbQqxTJW3dF8m2H+wUgIgI2Kw9p9u71cvjQd/S5iSVaoQ0KgUimHjWToNXKkYTME=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221367,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhonckCRA9TVsSAnZWagAA2EMP/2qGty9G87GJfx1sXUIJ\nkmeHCMkf0HVDCgmyKlnOru5GzzywdBOMbR6PhOBmvfupglEiuy04uVKvKOPT\n5KIB4GPFK5sUa55zeT6+jkP/6MBgRG6PicWOoCMC2Ff3oSL37dZrfMK3gSC8\nCmH/Gs82WP0cAhVgwR+omrHFQHHLBRdJVeMOU3jXxeww3t+1selDZPPDE59Y\nyitTMW9oJ11C85eShj5G4am2XKAawGn8gs/11AGB++grehCSjPC2KkRJwa1c\nFm8QmIZBmGthwg1TCOtsx/UycHhlEX2a5tumUTozjIaZI5hSrn0G+s09cz7q\nn+DMfMoSUwD7vNaTI4aPTZlurbVNinv1O3hPKFGO3jUvn6ORUcu4jwTpk4eK\neSJFxXzJX7uY53SJTZx0c8sEDY7u5ZOIc6IruQ76jaF6rmtkSJYel/fximH5\n0MDOFXFymLbnfI09bDB9SR0958EmZlKHvzRe/t0CVho07OxTId7ygC7SoLnR\nYG7waeYgyMokSMBfovPYrvNf4YV/Dkb+Nfe5R+TxzJRLZAZfyt6bTcYdBsrb\nWToNWTSSCtFWOaOxHSYEuKR6r6BRqy9eMM5TCXgDk8Hs8frHGqKCaU6WBAD4\nWqPAMGZbvy2OoOe8YashTwqt1oFm0XDwmPhyODZ5nquTIpZa2vdSVMEQQtog\nZf/+\r\n=h6Us\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9ec39ff510416e910789236963224a2165ebd32b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T18:17:48.109Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.24","@balena/jellyfish-sync":"^6.1.111","@balena/jellyfish-queue":"^1.0.360","@balena/jellyfish-worker":"^10.0.120","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.308"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.152-renovate-internal-patch-9ec39ff510416e910789236963224a2165ebd32b_1638037283939_0.46121257124836035","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.152":{"name":"@balena/jellyfish-test-harness","version":"8.1.152","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.152","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0f943ec22b4a5b2358fcf36dcb56cef5948e9ad2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.152.tgz","fileCount":28,"integrity":"sha512-pTJQ0r8LfoBxCNBIfMbcOvolEWI3aqKPJBIaDjGOQ/xqJiCNNMtI6ZArCHqnQvGuGnGgbi2WXv7OkKWNYUgfrA==","signatures":[{"sig":"MEUCIGeA6oaZf6riZwGmTRD7pi1QBozzwG6mPn9FE8TmB5sGAiEAlfhnyib0gmoKMflEeBvGHARdU/apXzsEBq1vMlygkhk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221302,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhonhMCRA9TVsSAnZWagAAQRgP/34WQLFjUtyagLyA5MdU\nWmu2WBiPfSsuuuH+kLqjPOjntyYNDdYhg9MtghWWbkRVL6yuVeEJb3s8yymV\nmbs8guUVuV+7vQfvys6iRmOHXAVCti1mJLTHklU79V+ETbHyLF2y73YdpT8j\nVYeU77KiVQEkfMKQonHNFnKQOn6gXuLSKw1K5JeUg46GUJstosIuxKuZ/Evt\nfsHRtz4JB5et2zFNxRNBsh3T3n3dBmJnag5BeNJAlaogsSc5lwUZgnpCe1B7\n76RUkuJVAtdJXUXWPqwn4T27UdNPktYgXSm/2jo0JV66tYnHpNiK3rdDC+1Q\ngekgmlP2tON3KbsIH6+xeuspIsrb72ZcGO7ajakEVdBlOGXvwsDy2Lrw0tew\nZDXII/gPNmF26usoa2pxJrf7MneB4gXOEa+MMx3wx78CrGEPi4XiSWOSDpyo\nHCinXHo8Btdki3po+KOVI5c9SAh7Dkoz7ngBmAsKnZyn2S3RZA3l6lHh8+u1\nQgrxMNpDZJOR/Vnjj5eSc4u6IEKUFC+BDARoNz6NrajMlyWdyNiIvOLkxtLp\ndtvD80ot3NzJAxl06SgI+rT8NLZsyRqx/1Gdqpy7T1gScwUwemdQUrHURNCj\n2C3Y4gm2CJgTi/OTKcPRUb5bFnfs4ORTnDCNv0q/EPEnrPv78H3JwpsCKJka\njCiK\r\n=gCSE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"beaa68aeb58a14a201ab7c31580d94b781d9db8f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T18:23:32.407Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.24","@balena/jellyfish-sync":"^6.1.111","@balena/jellyfish-queue":"^1.0.360","@balena/jellyfish-worker":"^10.0.120","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.308"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.152_1638037580127_0.4186226797967312","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.153-renovate-internal-patch-8aae5ea485aec665e719b845988caa35ac00a7e2":{"name":"@balena/jellyfish-test-harness","version":"8.1.153-renovate-internal-patch-8aae5ea485aec665e719b845988caa35ac00a7e2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.153-renovate-internal-patch-8aae5ea485aec665e719b845988caa35ac00a7e2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e728100c59dd20f1aed783e83e2a70f2121e774d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.153-renovate-internal-patch-8aae5ea485aec665e719b845988caa35ac00a7e2.tgz","fileCount":28,"integrity":"sha512-5akBel3+mc5yA006mIqo2CTIcn9m7cu1AEZAJ4nl/3T7sh0yvrzn/Rn/5YCWCO8T/UPNQkHQwWA1mr8DQf2v2w==","signatures":[{"sig":"MEQCIF5VFbVekd9rDGaC+MlfAcEEcFXlKdCihqSun9S9FVDsAiA1A6KPkaiB4lSIkmGWtFpM9DwLsTNt7Wlyu1X9PSTOBA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221442,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhor9VCRA9TVsSAnZWagAA1hYP+QCxox9ELqKZEL1OMnZJ\nemLhTdpGd/WACXhrszS79OYem0hs6iOfHo0hwOs7wbKm7btaE1OBttCQuiHO\n27fzHbX7NmBPhG01sN8DsfSSsLbNOKsYZHTD+1wWDjNjtD8ihLX5080NzFyW\nwsuxgEsqCzniyKhUSgtzcm2JAjytlPJUT9yA4kwSy+7k/qKZg3/N4zSwdvuD\nbubODE2RtzqH3U+q9al43TxmCzNtOjUmoRdNpoeXYe4p/ZDeqjrUU9MftH8p\n5jaVxhcoV7ttsPPMcndzslncGKQTAY5Nfhh0mdYsjhwWP1Q0d08WLDRX8Tvo\nCMYIBdM2Pe/3cNs+4h59dX5um9EOIIo8NJoeJoiKfvhI8kgRp39ut+y+xvhO\nm6eP65W98tujVheO0td8CPSqm5ZxZtHMuFM6DmZp10Xq3MLqfqjksolXf+zo\nlvsfmfCMxAONuv+2dwUZ/QT0wISlJhnsyG6MfR30ckgFIy2TjWjBhQ8R4V8Z\nCFheobgFlqKcpJdg+lLpgyEAciWK4xJAsrgvStI20rvQlBNXVfr53F3hDOGG\nZOdhB3wzdYRtn5BFzT95KACxqwU/bPiGd3geRjQ70wchPBmjDUaJv5T9N+4a\nQbwciSBuAhJGFEo6TXoRAKjMopNjKVcntOiWZ4ndmj4QQ4e9foU2AORHQBH3\nVRNV\r\n=I8xz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8aae5ea485aec665e719b845988caa35ac00a7e2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T23:25:57.358Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.24","@balena/jellyfish-sync":"^6.1.112","@balena/jellyfish-queue":"^1.0.361","@balena/jellyfish-worker":"^10.0.121","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.153-renovate-internal-patch-8aae5ea485aec665e719b845988caa35ac00a7e2_1638055764914_0.2279028932109961","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.153":{"name":"@balena/jellyfish-test-harness","version":"8.1.153","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.153","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"754eac940eb09501d1d959b3e53d109ee82dafed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.153.tgz","fileCount":28,"integrity":"sha512-zUcMspm6E2xiQmJ2zr8Hkh8zhIla4yIfM4XldcSjE88CYnK9B0QzcQD9ER+SoGvQoVhzfHO2PCwKPZw/HQRhrA==","signatures":[{"sig":"MEUCIQCFh/Df8Z0nEJ25U/Dz9B+rTSRgMTlbS9FvWtPJ/wiesQIgdIDAZq8fTqJDn3VkTug1qKkoQvyd1gQXOHOe23rkK2o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221377,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhosAtCRA9TVsSAnZWagAA690QAJS3Lx/dyepL0rpzQ+y9\nN8ett+dw202MGwbHC5HaHAszl4BzJ2kYuIMNGBeN1xQqD39nEamMorDyeQJD\n5cPO3OOQtFGXenVQeDjF/20lhLK6qUDjJAsIT11roGP+NzCMoef+hqZ86Qpn\n7RVqX2yB0dKaJn2Hdow4dHEU/zx5JV1JF3WT9J69D6jhi778mYY0lFRd+cWj\nUZcx2J7GwA7j/zzEUmQy7RM5GnZ+iLUSWPEO0yn8QyKFaCoNgnszJgOIntjH\nTpYMYeui7GUSDRK8B9jl4CL2q7xIkVDz65J5GZVXdxz2aGisNJ0p2Rb8qZ6L\nX5z3JLY7c4gsdq6JJ56vyWgmzvJb7d0VvlB+zPw676XeDSdOoIO6/bzooquh\nkQjFva8XHaSgXEzTeVQXIkCmDDg20xWz9Kp5ahGpMg8OqYH2XvYsK27eeMUV\n8aJozotFtDu5wuBzTQZg+sQUOKmM0rJxYvalGmP4IqGgK5yXosOfJf+UNhya\nMQnoN4NYVOxPfz+g2ll571qUzZ3N6R0jy+VFs3jLZ6poShdoObyyzkdA+WxZ\ny9YRA1BxuRxgC56a16zh4CL+BYqIQ0NBOB65img1O0KO4t0L/QrTY2pKgERw\na6aPMpcsEt4DF7wA0Y5DmzBgpt/RrqKrgtOy3DArU1TrARvKMOZH5OP1dEhZ\nhT4l\r\n=ot0Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"de53bab6b9a03025b4f60639d150dd49d4f5956c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-27T23:31:08.245Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.24","@balena/jellyfish-sync":"^6.1.112","@balena/jellyfish-queue":"^1.0.361","@balena/jellyfish-worker":"^10.0.121","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.153_1638055981620_0.4803122742766843","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.154-renovate-internal-patch-6bc5c15e26b649a130b4ac1f98f97ca1136a3277":{"name":"@balena/jellyfish-test-harness","version":"8.1.154-renovate-internal-patch-6bc5c15e26b649a130b4ac1f98f97ca1136a3277","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.154-renovate-internal-patch-6bc5c15e26b649a130b4ac1f98f97ca1136a3277","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"681cc64d1509f6cfdc1b8dd44d4ce8d0afda7244","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.154-renovate-internal-patch-6bc5c15e26b649a130b4ac1f98f97ca1136a3277.tgz","fileCount":28,"integrity":"sha512-29r+E2q22GRYt/lVlQm8B9gltD1DqeQrnptxoQWpgboE4arWrxhp1WIzHoCzOiS5MxcpCCHGOuZvXH4f9iqHfA==","signatures":[{"sig":"MEUCIQDIybJIVulKhRF6nsyAreFl8F99uTuy89DZ/buU62723QIgKWsMC5/fGj1wrZp2E1uaV2z/mewcDR9n6GlQHGsBDS0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221517,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpFQwCRA9TVsSAnZWagAABrAQAJoitC3nGhF4VrzcnLm6\nYoRzm1nliCP6mfcfc00HZR1RtjAH/QZp0um3VYfQMsSUTiJz8hdJHaeONn65\n7jSWhsbG/9EHFQM4Kfe6TubwiXdxM35a8+aTuNUnEh6qeXty3IA023RdRbr0\nSBcv7CtqVWyuM5/ec1bPkebHtMjcNLyNx0DK+b1Y58Jt+UsvE7BhoOCv8/Md\nuER+2bAJQkAshdnJ7SfYxeRFEO1p1ZEsyF1zYzKEG3H/1XOX1zUxLpyl1xcq\ncV3031Ia+e+pvzt2XtHAIkitEEMdchP5dh0gLV9n66h6i1NkkzdDfRjn1Lhf\nHiVweN+aGFl/HOap+fXJbHgezCvX7YD2Dc2RXEVYrk1j0eWk53ZCYCmJvlQ+\nY9rA8jRP8XHyq95aHaGKDlV3Ef+uzkKDrD9o+TTK/V2x4jH5kr+uduUIBUx9\nBFtJqYnV7KAyAaW6SXFXhuDQZ96YejPUyBYdKkK796GKw1Vxp3PLnLqEWQnL\nCPvg2S2LAPWCJfXz0LigNI+4M7UNpkPF5Nvw3khcRZqe1A/zDYQkZII7lFx1\nvApB0YYiOjNWtOCi6ehkgS97nfoM1R6pasFeV150aeynO5ltOiXV53kXpQQW\npP/kZMzDGHtDWLhxYokk01MEafdo9sdzwF12Uy/F8XIpkBtQSq+20UVbSI3i\n7i91\r\n=kHI0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6bc5c15e26b649a130b4ac1f98f97ca1136a3277","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T04:13:40.666Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.28","@balena/jellyfish-sync":"^6.1.112","@balena/jellyfish-queue":"^1.0.362","@balena/jellyfish-worker":"^10.0.123","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.154-renovate-internal-patch-6bc5c15e26b649a130b4ac1f98f97ca1136a3277_1638159408280_0.40732391207661833","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.154":{"name":"@balena/jellyfish-test-harness","version":"8.1.154","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.154","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f3b8afc520a9e15a6635aae8c38486efc4337556","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.154.tgz","fileCount":28,"integrity":"sha512-Htl2Tw3j0OAQb51RqtuW60xzRORWytVR7jWs+/X2IuIv7IvlgBRENKJlVT2J6nCfFBUZDtDGNF0gPdkW2VezLQ==","signatures":[{"sig":"MEQCIGBsIJ9TU4jRigIQuI0Xyd0jAF4N3B6gnWu129U68Z9SAiBYCM8Mz7X2H4SNpieHuUObr8CP3aeDyza3OK6leaJBlg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpFUtCRA9TVsSAnZWagAACvAP/Ak4pj7bnHRhJrW4cu00\nkcLNtfe3gtr3LxmBzPpTdTNDDVE+/K1qKM4GyXq82wgo/htpDXfdUliNSKbs\nNoft/Ia+4mnezzbiJH5fSA/Cs2TROKmFa7/u8ikOGIgY0IHey+9D2ZWHnXyn\n8wfCI0pTggf7Bv8DzJW9SBFEkaACJsxkKQtNN0bMZKI/ELScDuOrLeyse8Uv\ntZFmIfFD76kZRNT0A98ikT94DwO05QBJvyzWy5li3bmvot6jjBL5jANlCr5C\n+oCIdOEpfr54ewNPP3Qtmqh4i0wPpR0wtLL1cdx42SNfpleuYvpjVmTTNXWd\nYAdl0s/ZIe8imINuya7YIFA5dFKqB8q2HA3AztskKp0jdNDoogXqGe4V+2ed\nJ95jB+A3P5XWP2SJEZEvLA79QqIBa+B4sl9+DLJPA2Kw0sL2E2GSenXZTF87\nMQt5VNuaiRfbn79NihnoH+ib1l6yqzRA/taThH7FJUvwwI94y3pRYeWQj7km\nXPXo4tLmmwo+WQ5NeFoyj5748xCFwXDaIUzcpvSuoTRfuZl6sTmhz2y0yLJJ\n/+C8joTChWjijPBcavD82HVY9129+D7n+ytDzmPNH0z5PkQyRX/HZ1d5tBEY\nuEtMCy0WolJ+KXdl8Try5f5zpw9kcNDRm+RCoW47Ipnup/7esDEG/u7qvY/y\nBhbM\r\n=1YvZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"87463e1e6eb0b62956d846726a937b02b9db53c4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T04:18:35.262Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.28","@balena/jellyfish-sync":"^6.1.112","@balena/jellyfish-queue":"^1.0.362","@balena/jellyfish-worker":"^10.0.123","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.154_1638159660928_0.4784891758232672","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.155-renovate-internal-patch-6abe0ff0eae4d864f3f035668703f9e77bb5ed24":{"name":"@balena/jellyfish-test-harness","version":"8.1.155-renovate-internal-patch-6abe0ff0eae4d864f3f035668703f9e77bb5ed24","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.155-renovate-internal-patch-6abe0ff0eae4d864f3f035668703f9e77bb5ed24","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7335bc4a981098a2ca4898d093ad96c057173cb4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.155-renovate-internal-patch-6abe0ff0eae4d864f3f035668703f9e77bb5ed24.tgz","fileCount":28,"integrity":"sha512-85MrHofsz86/dQPw5t0vQkR+ryytwW2rFj7IQxVrhpiYkPc1gkqGj2ppFJT7NHUiRqJ7kNuIgmMqxPcOaypCDA==","signatures":[{"sig":"MEQCIGfkUwdrzZYL+r2gshr/OxMFtN27FF0YBkshOrgUhKSvAiBKURZmTwFU5Pv0Itv2u5VwO9gi4xorC0OI6trz6VSPLg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221592,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpJIbCRA9TVsSAnZWagAAWkMP/1BpHlm/eNN3hMmXj4qu\n58GUiqJxatFntxAwagBYZjj/+lmhL4SGiw0us7lm+EKUrXOTF9dIL50PFOWc\nP2GlAw79RDbRzr4jCQiIeGj0k5+P5FFVHscw/+VGjYg5/q9LIa2x8+M2+hid\n8jcqwbclgvYSyHobdui2kf5waKuSJU2nMdRXtEBKSmq+xXR2DtYx913DmCR+\namNX6imDw2KwD9JpIdgOSyRmgw5tTuRofBax+tJFOxfOcHJ+Z3zRgU7IjGMH\nuJdcgXEmjwCrM9di5MQ+WnqRvGXETtN7sET25NXH14w8euEzGb1ugfKh7FOw\nfDpKKQEJQpTWAe8HU+wexVzx1LlnGIgpxfSNFHO2ikw4jw3Y3dSJjwi3aqA9\nsB0g+Fn5Oz6k0H7V5/IjUJgpeYo3XnIf6CqDRXPwNmVZZPDcQNCZtb+4cs4F\nL8Cw9+ZEx6rvEms3R2rXkTc9edwfZwJd6fAiG4lWePM6ZNjw5cWJBJbKly3V\nRTkU9d21xZ/DGJeUIITwJeqQgfYqwWa3mEXminoW6G/Hd8vTeOpncyzoYhpq\n5iYXp/aCf5wYAzgISpdKJLBNiTXiYSoMLzX/ngAUrP/7aFChlINFNkx95Sf+\n23Er43uZOTG/UWQCAy8WdMrS26WbgpVY+yYhgCV0vcGSKq63KURa8BvrOcj2\nizAW\r\n=gv1C\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6abe0ff0eae4d864f3f035668703f9e77bb5ed24","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T08:37:01.130Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.29","@balena/jellyfish-sync":"^6.1.115","@balena/jellyfish-queue":"^1.0.363","@balena/jellyfish-worker":"^10.0.124","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.155-renovate-internal-patch-6abe0ff0eae4d864f3f035668703f9e77bb5ed24_1638175258987_0.12727088406188414","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.155-renovate-internal-patch-4daed099c112bb1365a5ef258fe0e7747c648dab":{"name":"@balena/jellyfish-test-harness","version":"8.1.155-renovate-internal-patch-4daed099c112bb1365a5ef258fe0e7747c648dab","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.155-renovate-internal-patch-4daed099c112bb1365a5ef258fe0e7747c648dab","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c8eb727c53ff98f79c15a4f9c9efc9c50017998","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.155-renovate-internal-patch-4daed099c112bb1365a5ef258fe0e7747c648dab.tgz","fileCount":28,"integrity":"sha512-S9utVuBBHGxUF9+45PowLCaSk3d4JawEjN6QsDrS891qton3WYC7Uq3gf72C/wHaBiHknfYe6zonrWD48hE/7w==","signatures":[{"sig":"MEYCIQDo6PKLZiwBy7PgHVCSnVsGLRw/YCvgpMYxZ6j3RDXWGgIhAIM+B+6IDpqKWOz+se7NCfc7+3gJeUbMfXOtDWiM3JBS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221592,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpJLyCRA9TVsSAnZWagAAG7QP/jn1sulnhi2LyPmv8n9+\n8PWhaiV/EN3SptQZix7bJbDrPX62Q8qtyG7DLr5FSOH6ok3aY+cGeotZRYh0\nZ5dG2KLp6OFXqhkwxSad+qT0bRJnQVDkhQoaqL2uXrfZDToakJA8uQTEc12x\nUPqFX9fYPRqBzUkirTQMlDgEU3pzg/0plJfoFre4RvGFaYXQUE9pXL8VE7HY\nUeF9if6TuntUy0DUGRYWKiVOJHbllXn1nvdJzOwfJGklGT1gBe9hSxnSAOaV\n/sn6tJamiK2zvxlmLtSQHbPLZTa3nryya9bpUT7pcXh0kxhBlpRFOsi+z1DM\nR0mjFztDxtuOp/xufS0BoZGZeWILzD9hKWMCwX9eFy0eIA3upsYbm6e97egz\nnxTo0E3aMo/xQX0Hfk+HKfx1uHaW+vBCPBGCmSevlfEM8T9DrCjVZHEDIJXy\nyBbSuaTlwRZIgq0BsCvrSe0HNrrwAWnfTfWFT9Qj7rnrV3QeIsIa6NSet0Ha\nXJq62EtmYvgwmhCMT2vLUyED3u7cAr9I1Ge0rpiez1VSE4LDz6N8t41Z9tLw\nuCL1EIXGYSGxZjTLGjEtWxlLqci19QPzK3euOR6nn3GmTNpFNvuCvh3kpGLD\n8XLt2KUrWcQyfKBWvMeRquhITDe0qUhUQhY/EskVk+iGsSXF7jMBAiuKwBWl\nS/q3\r\n=WYca\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4daed099c112bb1365a5ef258fe0e7747c648dab","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T08:41:31.936Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.29","@balena/jellyfish-sync":"^6.1.115","@balena/jellyfish-queue":"^1.0.364","@balena/jellyfish-worker":"^10.0.124","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.155-renovate-internal-patch-4daed099c112bb1365a5ef258fe0e7747c648dab_1638175474163_0.27511054484242004","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.155":{"name":"@balena/jellyfish-test-harness","version":"8.1.155","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.155","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"96eeb8cc6a5d6de95770182a18c2bd9cfd0c1cf2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.155.tgz","fileCount":28,"integrity":"sha512-nId2iFKpKuOLJ4WWasoRHBo3uMaxSLdxXIgHWRo14+L83ks4JFuLljlruk2I8sN/DAeVGUmyh+tJtgp+65RbKA==","signatures":[{"sig":"MEUCIQC00M3xwi4Ovmi2PywIo0gZ2wMGPGD4ik9j+eNMkzoIjgIgSEdXwPLimHjJdFGSwOf6Flj2TU/nXQ4QEkXmBedlzms=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpJPTCRA9TVsSAnZWagAA+IUP/i3EtnqzYB9invJudGH5\n6Rq7qVtqOaku2ND57DhxNBn6y4n1Ly+9fcbF6+u2nAIj0RJ1hIAtyYgrpJ8v\nWTg2qIQlTZX1VPb/DYjO9vxKdGVgMp5XeavzCWxAWb4zlNa3ATvu0AZxUJba\n6luacZPYIapRsx7xttsPPAwgMI7imAXCzccY+1LGZv9lQsqhV2vIDXKAm/R2\nAS0haCdTD6Wr7E7XMXF7QrNKkONgFyRUYO1aP8xJsPbmyVkEuy/aVDFcFUlS\nmiupKtyB3/1GX1OvYm6G+VR/1mE8DHJD89lh8eudrQ3aD6/cQGNaI6ufCjM+\nbe5WuuTIbgRHgWIPkvg/mAL+HBNuTrk5eT241CFItXnE5pPdw2E3ZbuCwAtj\n/sUK6WsCX4G4sbj1mmXlEJas3+Jt2+I8oIEkmMuovsEErmuP6K5u6hYj2pqo\no0IS8nc7Oi6LK7p6drkF15YlSOX6cAjurp0KRxcx7bl9ed5eR7krjwNx38Sj\nr5Rv1/yZWQS5E+L/nGRgHA1VB2UCbvecu95laMDPzHsmvAzxwQlkDPWuqG5H\nYRoPPF40KrJGzWD5HQ9SjS1RRDtKvvX/VjOn4TE1qy8Tpdodqd2QbKHU3grv\n85X769LJ2lR2bdgv4OVzkSY7/SAckOU/eEoWyGJuJAGavKhlFHddoN12/Xk9\n769W\r\n=qb+z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"167f5634b75f19a837b1bad7856ca8280621bda9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T08:46:03.172Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.29","@balena/jellyfish-sync":"^6.1.115","@balena/jellyfish-queue":"^1.0.364","@balena/jellyfish-worker":"^10.0.124","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.155_1638175699213_0.24531146075504195","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.156-renovate-internal-patch-e57a12fd662a97520199f09d382da2ba620b6c1a":{"name":"@balena/jellyfish-test-harness","version":"8.1.156-renovate-internal-patch-e57a12fd662a97520199f09d382da2ba620b6c1a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.156-renovate-internal-patch-e57a12fd662a97520199f09d382da2ba620b6c1a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1f6687ca9f3d6edd43d78f3c765be6e5be360fed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.156-renovate-internal-patch-e57a12fd662a97520199f09d382da2ba620b6c1a.tgz","fileCount":28,"integrity":"sha512-MTJfFDRFeWcNBGdddVPIl2Scpqr+Khdb/gFynRHWAZTpWpPEM0rQ8m/ReamOQZMd5xN3x/p9XEe5szAqlyKYCQ==","signatures":[{"sig":"MEQCIGvEZDChwwsyQQ9sX8jugUngDn115Z7EtqJ5p0sHxe3vAiBQ5fIozNNJuz6hUw3fo7hyB1dCB4A5jYEMfKlSoAPkbg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221667,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpKQ6CRA9TVsSAnZWagAAP+0QAKNYhkC0Pi3vEP/Ju7N/\nIs3JMBlsGe1GpAiOkjTeqpOXiy5x9kkG0t/Ak8IkvGSsR+NL3O7QqqhuywSH\nasXybBap3MyaH/qv6kT8MbFxCqq02qUBUlIvjBPTCZwqQ6oMoGx9C27O5q7x\nJKmCDkuPdmJ3BqLiE4pMyRwDLbr5Y4G2s/eU7e0A8XwdRRhmj8ev670OpCme\n+vBvJg40xtAE2+0fK9whZoXM4opM5J0OLW3RGhqenQhGEsfwn1PXPNewHWmW\n9z5kn341nYRLZf+8uRgQ58mhFF8rgQWFze1Ccpl97/n0ZZaQqEmko8eSaUol\ncdI1MmeoWvfg3qKp8ip96fZPTmqGa3Pct+L31fd/QoJdXhc2kgGbe2YNw35H\nAn+XEhoF+V2h/8QSwJp7TYHXuTTCTX6eWfaEEkSeZj6eZHjrHdM6KzAIlf5q\n3ThsRI81xW6lcTjToLTlthvDlAYjq0xO7AP5tTkgjOm+3YH/WoTacxGQVUVS\n7MnrjyBBx4bzYmFzx3gLpQW+f872EF8ZWFVEcig4PWDmKxmMY+Z7vx1A8Gdb\nv7XrogkTwLbW2RO4wPGVi+vYyENgFqjS5bi7uAUH5nS9hf1/xQTD8FV38K41\nMpIKx16A6UmXCO0EX3QkF0MWnWINOvBiZG3l1JTrsb9Ymmo+tJ0zFZc+LaFF\nq5cu\r\n=JQS4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e57a12fd662a97520199f09d382da2ba620b6c1a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T09:54:56.122Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.30","@balena/jellyfish-sync":"^6.1.115","@balena/jellyfish-queue":"^1.0.364","@balena/jellyfish-worker":"^10.0.125","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.156-renovate-internal-patch-e57a12fd662a97520199f09d382da2ba620b6c1a_1638179898398_0.03644590047214713","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.156":{"name":"@balena/jellyfish-test-harness","version":"8.1.156","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.156","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9946dcf96e3255cc6d9ff312ff8077ae1533e8c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.156.tgz","fileCount":28,"integrity":"sha512-SOKyoc1sMHua1RFwjZCt66Afive2BAOhCBWDLf0Mw4KP0cU0nntl6szXPP62HCipkUU5hRB6RTQoE8KpPJHbFg==","signatures":[{"sig":"MEUCIQCPcixzXFAIS8VrgcHk9t5PPJyatfmM7W5GrILZt9EM1wIgC0Zx6wNdFTycBVVv8aJJH0gUK/0XYxPd8uBMQWB/lIY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221602,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpKUVCRA9TVsSAnZWagAAkLMP/0dE9/kgjM+YWREFtyUE\nOkXWPckT+po0sYZ7zCMW2owWuovFPzb7LewuHZckyHRRKsHdKiG/yzcogVap\nsIuRGMZNhgiXoAdM2U+g8LVQZd+9DXA9vWTNzlAiGQEBdBrxPb4t6imYEyPI\n5KTu77gcyAU9kW21fMxYugUV2eY+BELDJLPZldJZ+dWKMC23BUf143yiBxi7\nUOZWMJK2QOMydVtOgIlD6Xg3S1BRW4txuw9BarHh2s68gRh1GFotSwIAFLKc\nJ62C0WALigdTbxwe0z9kkOPjWECy8ibW0iKndjMFaV4NCWlF47MtuRB84zsW\nSetYFkKI+W/1A1vrIn52MO5URw9/N/M5RPPt7DaGovE84Rn1xN9ODISoBIk4\npg7uSUOvQzMhXuHZI2kfqKSzVOpCd62mDhbdJ3V6GPBIoQ9Z0g+24fjRrge9\n5qZ8kIYFE8NXV8ChNDuCk/rZ8eD7buObyCgCSPtf/XulfCPtWSs9FNH8yEQw\n4IdijblaQj4XXix+XC7xQocvCvmoyr2ACZVOnvfb1Cia2I0E3/cHpUVzF+lK\nv8U2cu4DO5rZf7MMzoUffkNnsjSXwB+FXG2UkfcUfmCTTNNyCN46t1Tpgu5e\n5sMh0jSXpOO4EOF+FoO/BiKufuT5JEu2bXzhbYRpPdj5aBpFSMfVIWkPTrE7\nRREF\r\n=LGli\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e7b08cc8bfa6f0b84fc8f7730c88f20a1707d133","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T09:59:56.056Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.30","@balena/jellyfish-sync":"^6.1.115","@balena/jellyfish-queue":"^1.0.364","@balena/jellyfish-worker":"^10.0.125","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.309"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.156_1638180117791_0.5365791287116384","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.157-renovate-internal-patch-e8fa7f3026b362c43a12b143c40ad1baf7f0974e":{"name":"@balena/jellyfish-test-harness","version":"8.1.157-renovate-internal-patch-e8fa7f3026b362c43a12b143c40ad1baf7f0974e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.157-renovate-internal-patch-e8fa7f3026b362c43a12b143c40ad1baf7f0974e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"238dfe6fdd9c4001f1e429b116d0911be68f93a6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.157-renovate-internal-patch-e8fa7f3026b362c43a12b143c40ad1baf7f0974e.tgz","fileCount":28,"integrity":"sha512-ghkwEpH9UhArUcE4QA/sJoeQcpialvKN0/8FUH3VvHOSIm4ynUh5ak8VKELR3+jc4opDFfll565eo2eyCU8Lmw==","signatures":[{"sig":"MEYCIQDU0CK+E3C7y1dwTnSWPpYJ0zELWsd32hC3okGyR7ga1AIhANyn8weGNDaRePqOzWJtPUOwohir1T2zDnp/FbMgkrma","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221742,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpOK3CRA9TVsSAnZWagAAXosP/2Eg7JOmnOjP3eSj3PyL\nrd8OI+Sy1lXiTwLbn3u9nzTadGGhFDrog+CW84HxB3RwRs7jEesp66ZQwGKW\nlw9evG1KAMWU7Glyi6QYvntWG4xqJkeKJcy6/3ltJ4IvEacFywRlBwl5bAPd\nhtjv6+Qk6Opz4x5eXaOczGlpJWFRAdQS+1bJiTfRVTy2jdxIiH8G78sQwmLd\n/DKVpnfTLICVINdg8s40wnhoTaJiRLusVv071Z1mXtklnyOKTr6Warg/tvo0\n0UvL7NcF5+1Dyy40NOxA5iUYz9ekiAv0B0Zt7tPRF/ydNKBw7pFlaHNJ+1Uu\n3+zHw1IPfXM4m02HM8ls5NEptoD4Qi7evw+9dZAEQEmvcw5+nGcGVaciENfm\nL5fVka1qD0QhmuYBVwXepIJqb/PlNeEoD3Jm/MJ4spZmrmdXjfwtubBVb4Vi\nvZTsItAD0M+r6Ktb527HtXTNiW7KgvL1FD/yVriKEY5mt9RwFaHQt+/rFOBp\nOKb2XDue2fCnILZLv1R8yZ8CkhQty88w8my1tDxclcLtEDOkpTOMlzZGtCkN\nqBVQ7ZQsZhTBU9Jy5KWvPimkoeNSOa0WqlAdvRHt0BrgIEDGmtijM4aIHEYD\nItKR2D9Z3KFbw2L2vY0mSavR3SS38TgX6htDHHgBC/L4jqHIEiPlapIqPBsP\nQPZh\r\n=OFM2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e8fa7f3026b362c43a12b143c40ad1baf7f0974e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T14:22:10.674Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.30","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.364","@balena/jellyfish-worker":"^10.0.125","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.157-renovate-internal-patch-e8fa7f3026b362c43a12b143c40ad1baf7f0974e_1638195894988_0.9358944513286935","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.157":{"name":"@balena/jellyfish-test-harness","version":"8.1.157","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.157","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4506ab933cf272f99cf36d55d0a810d67899f0ab","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.157.tgz","fileCount":28,"integrity":"sha512-NENd1iTJZ2fE0yWw1QzPsG0V26XWHViMpVyJrbr+0NWLXeWKqDQPFeE7Di93gdiFyLuB9T8JaN/j//i+9vec9Q==","signatures":[{"sig":"MEYCIQDoTUREeSEb2Ru1jGG4nn3SgfDi6890xQXd52nD/gx3mgIhAMBvFbf+WbR/LmtVpf8Z1WeRBlWROZYrc9xfiUyFddGa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221677,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpOOdCRA9TVsSAnZWagAAADsP/3S5zD9vFefQGDBn5b7P\nIZYX2qtvFC+FGMWQJzhVB9jkXitskJHRXAjEtLx7I2G1g9UyUohLWOKP8ehD\nuK+BGaLHLNxVpqCTQyJ+4ll09fxrEctLTWFalK4qqMrYZNQcOYT92D/wwsXR\n3a8MgvQ8WeKGIKfp+MXmWyO+VSOvRhrWimw/Hn9v6S6QYQOzHns0tswLQa0B\nN6cnOlWjbGok9ouW5V/3CjM/CO9/90v4oPesiCQYs9PDtqwHGWMaE6GS4k8S\n9JfIcW+8VnNU1s5wWNF9FjOwLzn1f8OkOKnSv9zkfQCWN8FYAL9Zv/nE/Vqk\n5ouulUexrgdRn3/MaByNFY4N24c90o2OW7gF2NiAP74rxnf+v6G3vPEx8WBY\nqsABvlExpPzI7OJOFWzypEiWZFRDBe3MLNy72TltpN+sNO0jeHX83P2WQTm0\nmWrRH6QYBMx1Vrbs8bObm8knp99GviDAE7GxICRZ7ETps1qyyrL4D7TtuvCs\nNJ9UykIJwAFftz5i456UN/2norG1Bjy3OEuLApvOCFWykkofIokMfYudxwmS\nJ7WQzEjWsSK5jBo1N6omIznBE2v/Ao64+EMg04c7kC2Ft2avOY33+D3gx7LQ\nLSwS387tY0IeD120JRDjS5Dfxj7kguIFzPCtA9xRfKxxpOEnNl/AHBW2dVH9\niZ6Y\r\n=s2xM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ec3f650aa7a18a1541ea7f91f536567ca37343e4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T14:26:51.003Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.30","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.364","@balena/jellyfish-worker":"^10.0.125","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.157_1638196125011_0.01063727654120239","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.158-renovate-internal-patch-94b2a09fef21b16d456032083d73d5f4dcbe5c22":{"name":"@balena/jellyfish-test-harness","version":"8.1.158-renovate-internal-patch-94b2a09fef21b16d456032083d73d5f4dcbe5c22","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.158-renovate-internal-patch-94b2a09fef21b16d456032083d73d5f4dcbe5c22","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"081c18cffa175ed9ab13c6e05a860f58e535fbfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.158-renovate-internal-patch-94b2a09fef21b16d456032083d73d5f4dcbe5c22.tgz","fileCount":28,"integrity":"sha512-ziC3CODIGml547hGe7wuj1dUYPraueMuros1ulw+cXQYvuWYRUY0JOk9B0DHgwmsBR/zIoY16HPjEkFIF6JumQ==","signatures":[{"sig":"MEQCIHgQ97mRMMX/5Eqrx9XGTHcUNqxcgDS8dASPr7rbF5iRAiBRV9ViIxRC6u0oSm1JF0g6Xr0jorBhaGXnW7ifd4Q7nA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221817,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpQaICRA9TVsSAnZWagAAoYgP/1oeJ44xNtB9oYVVpNtY\n2qOrmFejW2hZIxsrag0XgbBmqY7i35Wgw/juaO4D3t/iHD8UMyLQnPHTPtP7\nMUYq6MfJlFS3F67KF4NyTkKn+EZSxz9OPwu9AlzUHvCncdetwxWA5hEji9my\nJwdgkBQG8Otu5Q5KnCriVp70a2e05uyhPqgfLYKSr1lEGXVXK+MIqkiJz/fQ\n6UR3/aF0lDJuh++D/UOM82BBQ/eYVOHYY/YhcuVJeHW7WDb8dYYAh64KXz3r\nARA+5tNFdQxMaehtVWUt4Nr/HqxskplEGUNcTKN4uKfknDwxgZEP5yIjrjnx\nlYz5CZAntqUvvCE1sD3yH5nZIwcXXkJXQeFqxP3xfaa0LxSpv0pOaCEaxqNY\n1jc30t1URSb0Yv4WQCUkbKdOzy9A4uAtv2aiIPVTntIdrHTH/7PaIIe1Nus1\nXal2sgysbeRVLPJNTyNib0SpxZYPdEo3UKSnbe7zbjoMuVHBxMAP801U6HyR\nhmNegdWbMlhwx2C6xLu5oxU8O7E4mUhlblpmubD1hSygVf/v/j1rtmCbYxH/\nHSz7BVNKc9jGc3YaHH+VlGvycbzSjPGC9uxLFtAxJpUmoawv+Ba/xSSNMwoA\nSqVWEJ29L9wBuwV+nAerEHVsxV5+tMrviMte+rgin8OHtmNK41MRCd1EFFh3\ndTTH\r\n=6rg7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"94b2a09fef21b16d456032083d73d5f4dcbe5c22","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T16:54:27.189Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.31","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.365","@balena/jellyfish-worker":"^10.0.125","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.158-renovate-internal-patch-94b2a09fef21b16d456032083d73d5f4dcbe5c22_1638205064590_0.5517468670627093","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.158":{"name":"@balena/jellyfish-test-harness","version":"8.1.158","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.158","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4c3b579bfdba144b72da2856ff23f65c4b89dccc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.158.tgz","fileCount":28,"integrity":"sha512-s/ipfTnZpMv85r0/0KC9AdieYMDaMFGpX6VGzBan4zaEEKxvT7zUJqHwo3n+jou/sr9VmBoq2ize1zvVms7dBg==","signatures":[{"sig":"MEYCIQCHC1XvMBWak0ul8ok5EnGqLxeeLZwZMlQ7sxDim9ywiAIhAOYkQQMIYtGCi/7hyoLUq1txfg5ugATUxr790UMViPGt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221752,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhpQd/CRA9TVsSAnZWagAA1SUP/jrrY67X3nkKFeNVV4in\nlXBoW04/b8wurTZe8RrQ1rurtJxfvSV9UUNewRfgvejn+72o7YXGfUhRVWsy\nCOG37ejqjrtwAFDUr2y+nbWTTybQBB5QKFEW7HUEU/2Y74FyU87D2Ptertv7\nR2fZ8CQMnLHoyRquRofP0Eldhq5Ku6rGTCqyRBdNJRB9iUvxAZZO+mBbdLGR\n6sLxKI5DTVvAnGCzZ64M6uILOTb+7lRzFspeaDFtnAlM3yh+lo3Zz2Qc1apf\n2wrqzAZrhDlPxyfHlor0FTo30YqX+ULJFjSuftR8xzn98YkCrtC2MyzUAhH9\nhqFhPCIkp+klcq+dzD73Lakruj2/sqJXREd1tH3rh98iJryScy+KGiYTlMcE\nRO18KteQIVx3qsxPkufJWyUEk6XjF7AUTs9OGZcPD/UBubAYgBDL5fAzqAye\nlnxuaBVyqn6P9XjRzenIsD3sxtlW37yjlptlYnJJi6iEEnL3uMbtBPcH4sht\nQ6XOviHTTwqaP5u2nKAwfl7tSCrcJeJI4XCV0BbD9v/YpDkLq2XVQkd5q5sS\nlN/Xg/wTrkRwxmlNAY6zvJ4KNAIEiFI7CeQsAkH54wJAi1iGCrt62Jn7zzXe\ndVjs2RnZwxKgatZwQa8yLDA7/ctf1kqfccb+8miwhFlLMVXunmy3wdM/Vcuv\nHQB9\r\n=b6A+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8525b2ab10fb348c2b02b890d8ebc918223215a0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-11-29T16:59:36.362Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.31","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.365","@balena/jellyfish-worker":"^10.0.125","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.158_1638205311504_0.9128955158595622","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.159-renovate-internal-patch-fb53312e6de9d9103e9d1a02663dfe97dee9b0a4":{"name":"@balena/jellyfish-test-harness","version":"8.1.159-renovate-internal-patch-fb53312e6de9d9103e9d1a02663dfe97dee9b0a4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.159-renovate-internal-patch-fb53312e6de9d9103e9d1a02663dfe97dee9b0a4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a2219032ba1da8d71151ae92591a20f27464a765","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.159-renovate-internal-patch-fb53312e6de9d9103e9d1a02663dfe97dee9b0a4.tgz","fileCount":28,"integrity":"sha512-6zmUBtY5X9l9Iqx6otj3W22X94GPjK23PhHlKHxS9XbPXSACjD8Z+qZoLSE3TrivnVnWyyWf732bU0QEY28JQQ==","signatures":[{"sig":"MEQCIBsjYqtzXkk2cqCQnPiz0nyFiumkvG18F7fqrxncnhslAiAt4yrywgsqZoxVkfK4j44py0cfGhBqFfr0lcuUPyk0ig==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221892,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp04XCRA9TVsSAnZWagAAa+YQAJxVUB6phDTP/zokyr88\nVm7eJru6qDFsuIUVeoMQdOE3n+RMMz9/u4ignnzuUoJznG7WyyxQ35KYKsMW\nyzJCRhLg5OLQGpBGXDwSUgiY7Uhg547FWN+aBAGjyeB25gAN87CB8/g0iiS2\nT3emxfjELoVG8G+gDN4LVIk3HzsYsxV+xA3ixEJE7gCGK3chc+nxbLAy8V/c\nk0wHoY+c36rDXX/rshYt9szhKfN1OnF1fpUKGTwRqOKRKzvZZr3xTcF2/feW\n6hUUuPgQMlHJugyJf2b29ASUmCAEmsNkET193s1s3OVzDRpXaIHs1jBZfWK0\nOC7rR3xiNJuN1VIfUIA6137WeDjrrzuBVr5Ys+ioe3RiW/w7aGcVN3f509Hz\nXjcmTEjwcGBbrdgOZfHnoPAcLhr5OO97CmjmKcWtAVahmA8ideH/AcYrUqI0\n4/EK9XlfN81bBFlY5qg1XyiVo8IzbNBKn2w2/1MA8JpkWoY0YbSPs7eBtEy/\n18nDsxKscVgN9kK/UUChA/U3a4pig8kVMbb9Rj+jgCOc/BGFrmBMZBzVCRVZ\nS/NFqDgvlFNq4uhaSMML5t+rb3f3leQvoLEpo9KRzvjYrP97k9nDd+SkU1zH\ntEBdWPJJLWYJlqPEeqhGObcK+bZ4EJBrAjdjfY+BnJAf1hny6sBU8EOOaGjq\nvl+3\r\n=/Oc/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb53312e6de9d9103e9d1a02663dfe97dee9b0a4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:23:26.860Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.367","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.159-renovate-internal-patch-fb53312e6de9d9103e9d1a02663dfe97dee9b0a4_1638354455276_0.9119438325869484","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.159":{"name":"@balena/jellyfish-test-harness","version":"8.1.159","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.159","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1c7bce6b9d6e1fbb5285b9c7867f15ca264c6b86","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.159.tgz","fileCount":28,"integrity":"sha512-X/2xl9mDujt+Z51hvTG/5EsJnt5TPU/O4AcJz3uuvlYqvUgMz3CILXxetOYCSRc+gixwV6SjOEWgERM5IFKNVw==","signatures":[{"sig":"MEYCIQCifa6NrwR128Zn/KXdTROpjF9+PaPdHbyJPqQZO7KdkAIhAMzPR9IJxPNonsUAZ06PUcobfm4YwLVkZpTtLwXP8/xa","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221827,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp09ECRA9TVsSAnZWagAAg8EQAJIgw6hYFa3xem7HOlJf\n0oGFiMh+eW2pFq6/9bhzBLozwNMnrQIn/sMV2I/kFZQhIBgGU1NsAt22RKtz\naXw8qvwl2797mDTB0oByM3PGvch6TEH2kXv5acuPoqkSb1tENTQPIYUM9GEJ\nkLPU7QVxTYJdjh25b2afoz1ElWUkqpOFoRDnUqZ4m8/rfmToOany9TxB1xLh\nsD1HOU5f2RoT1fRC5lVRbjLdTb25uevDH3b2u+d6VFiBfsjwJPoWGZAiRosZ\nWM0LwHSiIY0BqyXbD3W0R6ti3u85RGt4n170h//GYLi5KjfLpfIEKIFgfCwV\nZQJ531jhpaWcL5If5YmZaKHgqpnhBTbORED/C4ResB2IoZPhfpDcjXUr05eW\n9jAEZbrb/4nOm8K+jd/LyN6JvaVH7cV4vL2oGY3n7oZK+fVKLLDBx/H9PpXX\n/TiX5ld5vQg8xW4TXj+wCruWtcuiA6z0Br7KVlpzftYObXHiiFAxuFWgI0Wm\n8mi0/QGBick67S6+w3x7s+NgclzLA5N6ZRZ1GRYHjP0RLZisxskJM45EBnu6\nsDzXn/R/pWWuKr87FWAYo9mrc3cGO4L30Jkjosz0Ooh4qP8Z8R7ce9SPS7im\n/scoO5nIO0z651MhsBLefa7Ti04OaclCiWw7snm4I374OB3H3zmoNFpwFux+\nZGJL\r\n=kK4h\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2ca87e1905664b0a46368b5dc1637950de1b80ae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:29:48.392Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.367","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.159_1638354756564_0.8842131416628523","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.160-renovate-balena-jellyfish-environment-5-x-efaf0cb595085ae7ef285ca7bf448f2d42cd6f17":{"name":"@balena/jellyfish-test-harness","version":"8.1.160-renovate-balena-jellyfish-environment-5-x-efaf0cb595085ae7ef285ca7bf448f2d42cd6f17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.160-renovate-balena-jellyfish-environment-5-x-efaf0cb595085ae7ef285ca7bf448f2d42cd6f17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e7b1593b185577d1a02986d954110c3b7a707a13","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.160-renovate-balena-jellyfish-environment-5-x-efaf0cb595085ae7ef285ca7bf448f2d42cd6f17.tgz","fileCount":28,"integrity":"sha512-hkdj14NR4kNyIP7wMi7pU78/eGPkAsPIscW5E/ywTx7XHNMm1A24F5T/32N6VWlyi6dL4BFa4SRjs8WEhnSJsQ==","signatures":[{"sig":"MEYCIQDRLIEG2lgBdrvpKom+/AnoGMRIQm8dNX7Tbqa2kJHj1QIhAKUMUZBLDpfpbIR3X8kAX5xZDEoJ6nptdknzU7TgVTWi","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222020,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp0/sCRA9TVsSAnZWagAAdWgP/Res/P04X3OJw5izArxX\ntITxZMvY0SLbNqyIQdXsmanCG4qUDJ2QAZ3KH+z8pDeP8P4SdhWhbKyaLulx\nCGMHb+NVJizekxS3jz8pcD4aOgfmtHb5I59K00mrdgWGzIhzP2MWbuAQm0hf\ndcEyaS4H+kvqQD1VjTrs97e0D2zivRupvp623ARuMeV2NUpuYFaxvQHOFnUk\nRxDzsKt1CYcpT/abqIqSU2YXZEKUm8XnnIDzIaHOh4yE8e+QHL+F1TsKoqpc\nmRA1EM67mUlyWgVWLekC2NA+oeD9+uxQ2X9vdYmMIw8AFMAbvqltO7WYKr1Y\npof91AQzWa2DgTPZvNbMRuR/muuglW/ZC+yeSKIabVD78dghh63BsLEOn3w2\nJigoAPjo94RCH3+jFvpickAH20U4iidbaf9AOUwQ7fK+PUH1HhWcFwC9+4AT\n9z/xiZgjgSdNpe+LwAZqNrSJubmOiSmDVFxfo8e7u0D2aMOPshHvBvi+2yuY\ndd1ZsvQz/KmFXpyVx3TR3nzyMFY/addtab6fQgoD0jCDvljFZzjQmb7sy8Im\nSeIqGNKhiXqa91/Uc9hx3qz5oOMGFXahnnPn+q5+GBErjZxldLaUmghqFn4T\nOWQPdZa44Y6AZvXX2E6/61rxOBWzqIVD8s2Qfk/8RDR1Oky9b2O3/pVR71S9\njq3c\r\n=fmFS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"efaf0cb595085ae7ef285ca7bf448f2d42cd6f17","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:31:58.862Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.367","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.160-renovate-balena-jellyfish-environment-5-x-efaf0cb595085ae7ef285ca7bf448f2d42cd6f17_1638354924213_0.23509247670738054","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.159-renovate-internal-patch-bf78144914fb2333d0b2f9ba478b338343aff32c":{"name":"@balena/jellyfish-test-harness","version":"8.1.159-renovate-internal-patch-bf78144914fb2333d0b2f9ba478b338343aff32c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.159-renovate-internal-patch-bf78144914fb2333d0b2f9ba478b338343aff32c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce8f4560f164d7d8f2381e7680078151f7bc7d5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.159-renovate-internal-patch-bf78144914fb2333d0b2f9ba478b338343aff32c.tgz","fileCount":28,"integrity":"sha512-EVBCdE7elSbKehE8ZDUJ4r5Hr8CJkL9pLQ8Aw4Ra1ozaXzE93muyF2R+bm4rgZR1n4MUVJqhYGxjNr4YDRt/pg==","signatures":[{"sig":"MEYCIQDKwlfdEa/Cq9kGbe/c9S9Qc00EQcwRzYkuAuxjzkoQnwIhAPqCi636VfVwhUzcSTr6lhSwYQj0JGxxYC3wPny4rZrQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221970,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp1AOCRA9TVsSAnZWagAAoFYP/32mb1cu6TgDM5Vk8KhW\n+cuWiXNTVue3KxkU5b30ZuajOcNlT/foWlE8ajvNlbxqB9H/R5dG2h2AoU7v\nclt6+Qn2P+8fLKiS5eW+uCNl+SkDegggqw6qZ0ThKCevZk8wTagGGXiDcPm/\nLLAaJOlck2iuqeuRxCdb01DZ7Z5BR4DeHBEf6PQKAgslQ/R+dTehzevnw1nk\ntyPlxZC7blNNiyoFy1+c0lj27ftyXXj0pp9tsN38LAQNNo7+Cigv+vnDO0hh\nV4h3AphExh3+X9GMgnHRK/T4qQi8qUdgL5OENaroVCypQCiHmk10Kt8i/YUG\nYKryGOZg6uHT/cdhzxpxIIeq1h041qiyBE8QWt1nrvqhLDDeXArQ0eOJ+K/J\nTY5KyG+YMhvM0+D0AmWErEbAnEoDUcE2Xw3lEPXXrVeF74FHNPUYIeZ8o+0X\nmJsj4KBh2P1ILgbDihczK8L8EBhv0AnXDMI+sBfF9fmAp2wqUOIXMUlgaK3F\np4sLGzwe/F9oDApbUv9d6ATv0ThrGq3za0lmCOkTjQe/V8ss6wXpHAijCPCt\nF6JhEmO8OCjSzYsOoFKJgY6DtXUBtraNwLxvxvEq8hh9I9/xUdICgqiVQkHC\njpNlA7txpk0f4gGeMB/z8bjzJdPDnY41ywEo4Nu+C7yCIy82fxiUzssz6m+7\nfqgE\r\n=7IUh\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bf78144914fb2333d0b2f9ba478b338343aff32c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:31:18.699Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.368","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.1.26","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.159-renovate-internal-patch-bf78144914fb2333d0b2f9ba478b338343aff32c_1638354957862_0.38120516019837813","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.160":{"name":"@balena/jellyfish-test-harness","version":"8.1.160","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.160","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d12854b968ffb3b0dc42e0b9e6b35f1f37d817bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.160.tgz","fileCount":28,"integrity":"sha512-xyFCz9GZS8EtuKYysqx/R7f5oqMWNWBJwdYqEOKsoCtyGL4Ytgj4iiunQdqGzL0KX1dlw63MbfUVOBDWpWVauA==","signatures":[{"sig":"MEUCIQCgqDIWTfQVpQHH4KmGbU/1oKWCY6OHXtlzmtuYOgAYqQIgHlDv4Zlj0iFVNyqyp/O1xJmVyerJIv2l13l7bFoeBWg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":221937,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp1GkCRA9TVsSAnZWagAAhYAP/RWXrK1fBoiwAbf/ja+r\nA/gfhFDCvj9hJz0J9kE0MUJtc8WenBX+VbBBumOzw8uGsgXJ0hNlSTKtrShS\nMrz8cU4JDS3AgAQRRdeaExJREYALzxujkJS4hgvKquDl7PxRQK/tclAoClGe\ntqKjTJoZ26ITv9HzMwULl96xk4CmdZG58KHCS3eYRIwkn8MCXN2a61ZfYHBx\npp23H36yCCm7rJEVWnO7ZjnbROEq5mlBQrc9mLm04jz/j1JrvSwBijqyHInZ\nCZXlxpoa5jUQ8RQepw05SO8Xadd9Hxo94D22cNPOURBEBj9BKdCyu7V+WrUx\ndYGBfhPph1iT7erBsj/UnU4W7egWboimJdc6/bJgaJ0QXFKicabE+9i2M0Bc\nWt6DWQVlVjSjm+XdY0qrCmptbOWEfQ3LG9HiMyUSwK6K7PEbEgaxMF1/HesC\nfKszj/HU+39whGryrc98O4O/POZua/mkQVlmf2yPHFRqQrNBo23PdKOGrgdh\nDpgctjAt4xFfC14C/G2xZkqtyifyXm27el4vKYAJeWYL2iO5fDXvv6Nejztz\ncf7WHW9h5+BO63RjhEI8yndMfcJ/eT95s2OFjSBrYgthos+ZyX7JDKGqIB/E\nPf1AgbVx/JglAN1TFdpyBjEnHyH4bX7YgAlrGNZFbL8AR3LXFwR48e1hQRSj\nJaNz\r\n=FOls\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2892a690210edbd644c4e3ebe00b0503aa0776da","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:40:08.307Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.367","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.160_1638355363895_0.644636049394131","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.161-renovate-internal-patch-d6555c929c96788958ddf764781ac1616679398f":{"name":"@balena/jellyfish-test-harness","version":"8.1.161-renovate-internal-patch-d6555c929c96788958ddf764781ac1616679398f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.161-renovate-internal-patch-d6555c929c96788958ddf764781ac1616679398f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f45eb8cffe84cca1b8cad1beb660bd132d909bdf","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.161-renovate-internal-patch-d6555c929c96788958ddf764781ac1616679398f.tgz","fileCount":28,"integrity":"sha512-bWyrJbEIcSpsFPsLKGE5fd8KMP/hQsRUtvvvSN1dxEx8ahDtlmK9Hl3DmZ4C3qtWkdeR+VcPHO33QPoIlszU5A==","signatures":[{"sig":"MEUCIQDb0hdevIJH1qsO17SJ5maEqWEXplM9+WFbHsJGx9JRcgIgHGY3eoq1OryxM0nMC0IdD1XbiYNFcO/FkaUa3Zl4cCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222109,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp1J9CRA9TVsSAnZWagAAS5AP/iwh2fpWcIB6Y+yBoi6u\nSeQMRjsuO12QlYNs6Qq8c50xRmksVeeqmXrJsJIZxneR2Q/XlMBmDe7yUe/3\nXlZFXyN/AKoI4LnLoYRJiQTQ+W2/Q8CG2t4oDfG0xBdqoH/5uzYQxkrD4Lva\nqXAidos8eNL1dcKEgsk/0Dhwkp2oOYQGadZyI0YOOkML2NwLO3DfFfYgFhpQ\nEADkwWMrit8hmLc6U0h4Oe1xw4eK0LG15w5Wr2Q2tmBLWXvfq7zLBhI1oZS7\nZ2JIhIpDOm0CZ39/KJwfuIZOpeQrZWzbLtBGuvX8Vcw48QETrJyb6fh/gi55\n1We85VIXrjWiqnIBl6aGsZPIb8K9eNBQg8Vw5g4b869beb94i5NzZvVXgXys\nGvZTY68PotxdjPZcnyCOUsakE5fYceZBzo8WNCXpBthA0/DBfLH0vabji9Xy\nQHG+FRXOlbN/rXHemmFDeU/I/F18a7k2ifWjDyd3dj0K4eYp4UKE9KlY2jB0\niXmQU65jBEgeFeilTgvznH+R2Okk+kKYXubCz8LaCk6RAv8USTus5W1h4eH3\nlK5Q8jUVuOkq8TCMQCixoY+CUdXIUtxytPkJCmhmMoCkqvkRT/GL5TzH9oog\n55fmYKKkaeCXipqjGUYS3nPhjyLH/Jttzivpttq8MFy9pu3E5JwmsjQCoFDu\nHdsa\r\n=ohpj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d6555c929c96788958ddf764781ac1616679398f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:42:59.530Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.368","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.161-renovate-internal-patch-d6555c929c96788958ddf764781ac1616679398f_1638355581373_0.6136889349215999","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.161-renovate-internal-patch-4317345f4b73e13482b2544eaee9f582232af41c":{"name":"@balena/jellyfish-test-harness","version":"8.1.161-renovate-internal-patch-4317345f4b73e13482b2544eaee9f582232af41c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.161-renovate-internal-patch-4317345f4b73e13482b2544eaee9f582232af41c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8a70190392764a3b5819c497cbed901cb1c5d357","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.161-renovate-internal-patch-4317345f4b73e13482b2544eaee9f582232af41c.tgz","fileCount":28,"integrity":"sha512-wi31PBZvMCcbi+Ps/Z52l1xVtlYdPkHdnYCXzq49U42OHI2DYhYgUfxQwzbeqh9lX6E+IgS3Ue3HmNT5bUmeeg==","signatures":[{"sig":"MEQCIHx3MheWuhIMTO90AKOoNP4sugpMnBHn6PgG+kJ7/2puAiALrAZZ+dQgcv56FgZezmneqMhIdkN1rTajmb6WUB09xw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222109,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp1LiCRA9TVsSAnZWagAAJQUP/15+jOhOFuO5PXSNHbUR\nrJMU8XJGTQ0/T9SkhDwHejUml8g9I/+zLY22ZHf+4UIIxCsHAAbFLqNdSDy2\nIk/8+7uKp+TDzBZfzAuxw29u2W49KeMifWHqsQMFGxtBLoVc7rwyT8YOsE7q\nncNCN3DDZ2KNYaXl8myllbWP5BMWJPsji2h15sDLi0RFcPn8F7ASe5k55ezg\n81Ql/zPSDw455COxMAnu20ToXzzKu6V4Xe+l3zQog5N7gnFHGNMjPp/fY1Eh\ncqXZecz1TLEwqs4iHH44EPVOxa5PE3isZQAszfqqsChY2JyaZ0z5qq5II2Cl\nwLFGwBlGVrjCeTVxfOOMgF5+fl9+lFgBq+/pDb7S0Pq9I3g23LEC7iEPAyi7\ngFPvsN+ODDU+vvkFfPNMUlbZD3ma95NkMg59zWvkhjgujmcMCsyuAuThM64K\nV+CbVd4eJhhPLYhgMcAwj8qRUTJrW4CQNxmO7J3RO2hvcQB3TXN+sqY22N1r\nFcQ1Y6YRh7C0/qQ0BOTMNI96vsWZtCb5woMWqNw3kG22MRWEXA7KGO8mHvlQ\nFAJ4wvLaNk1W3CkpVVBZH3sIoCUS/+dnFwBaSz02pp0ywv8OxeL0jDk+byYK\ntRk37i1W/j0eU8Th2EqDS4SrdJTQn+YmNR4vfbRso2lVvdpwJjlfUcPMltQP\nVK8B\r\n=ShRe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4317345f4b73e13482b2544eaee9f582232af41c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:44:41.370Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.369","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.161-renovate-internal-patch-4317345f4b73e13482b2544eaee9f582232af41c_1638355682731_0.4205422779927488","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.161":{"name":"@balena/jellyfish-test-harness","version":"8.1.161","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.161","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8acea0346de7768aea8a560e0d83b2452a0c492e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.161.tgz","fileCount":28,"integrity":"sha512-+Ad8+hqeq47P5w6mIiesT96xzLtt4/QLaZDzaIH+K5lOWCbiZK1L16Ei4P6liqb9j0lz9fMuY3vze7gLPAMV7g==","signatures":[{"sig":"MEYCIQCkBKVhVAEm45IE+26qF/DzzWCNMR1B3m1fU5W/YkBekwIhAOEtNTmOWlfhSCIy87P1ZsSa2yCa8iRB2Q36OmqVBye8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp1Q1CRA9TVsSAnZWagAAfPMP/1rIG1wFYfa5XWTvZ+aP\nkN5gfVqU9s9xp34VPmQIMfH7v557RlUK6MoBC9qsTBtFMjNNVnBX6EzfmNxl\nx3WAZs5JlSwlAWxKIRkZx2D3k1+REgx59bdfjFi8xV3gWC6LDTES/MLQw1Jd\nVKJHZZ9hEnUTI5VUNCTb6HWeapqaOXKCX/HQhqRyO/PYjFoKPlAbA3F7oYLX\n1IVoGvSicn/D2RgHvWl6LVpJZmA/fC/DZfNz9f96E4/WRKI2dSZTqrBUV3Wn\n5AoecRxkUsiDg6vqkbayvEUi75zD3GS2mhZtLp2jl1+kt4tO7/nGuX/8eyVA\noTHg49cPx7Z/yT3+DDFJLpT97A7edoVqaLMubJq7R6phkV1+D9cQEG9aypQN\n7nzWKRgQNFM/r2uwf3pzZ9G1IHM6NaPnpZ//a6wIMp7wC+mdfMrO2k7JYWiw\nG8Er8tkmaggpWmTGCPSFJ0IV24QEK0Hrb6rC4r+PSuIZJq4KgRKEV66rGSEy\nT67xZafm5hxHQkVLyAhDTTcYq892szMXrXrkdkhoM9TJgcH22CkM1vIiLnmf\nnQQcbUUBTxuCeHH8BFMbSs5/ac6X4lXsr2dHr2VFjecpRJbTdy+dYYMQs8sE\nKGDW03UztKbSU//KLTI1qyC+ko+L1IlS1os/rDn1bI+C9+l2iZVGuSxQ7i2A\nFnjv\r\n=/pLf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"447b18b8b2ed74f40f0d4a39e4f8f9729dcd0dc5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T10:51:13.736Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.33","@balena/jellyfish-sync":"^6.1.116","@balena/jellyfish-queue":"^1.0.369","@balena/jellyfish-worker":"^10.0.127","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.310"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.161_1638356020882_0.3632405661568494","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.162-renovate-internal-patch-937b66873599bbf5e474180a7aba0b6706d56b02":{"name":"@balena/jellyfish-test-harness","version":"8.1.162-renovate-internal-patch-937b66873599bbf5e474180a7aba0b6706d56b02","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.162-renovate-internal-patch-937b66873599bbf5e474180a7aba0b6706d56b02","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"35c3ea80a9477629976e7ff7536f99f3e5668586","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.162-renovate-internal-patch-937b66873599bbf5e474180a7aba0b6706d56b02.tgz","fileCount":28,"integrity":"sha512-VnA5xbJ72WaOuXFjYAsCIXsyuqxUmWZxk1VRw69RBodYvW9DuHfT4TMIcQ397suy2GHGL4iEdXzR9s80zMZ2cQ==","signatures":[{"sig":"MEYCIQDht3nq2pM7j0BJqtzX9acbOD7pmzQL5ytU1b8pyzPtfQIhALAnzmgbmc/jBssBSYpAm3zDfKOzl68gBxh5t6GlX6VO","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222184,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp27gCRA9TVsSAnZWagAAFUsP+QGnbDiQ0h+c7fsT+2oc\ndB9BxFxmZXBFD8Vz/iqxmpKu/sLU3IdRnUFBPm/kwk3D9yUXy78RlGSjG320\ns1ZLSnICble/NbK4Q4nyNrvov8T/Ec5TEeK8hfmtetO0tQJeh/RYdb0gWuSv\ngI0Sx8FKvOwnvkjqisXo5iBp7YbYKohvNm4ia2CqiHwfA45vGPDO6cpU0hsJ\nSU34nyYsUxBJVOyqcPRzr2GpdKPuFyw5wOpPxOCe95naDHimnqhjurTDGTHW\nxbzuuNv1ZDUdbEDD2ihOwiOgHfxz09h0cb7VDpeWiV2yOdNou2wFK4ii54gB\nNcCN7HrWCRIUvzdfDK6dkkGyDoxqVRDn7/b+t3Oo45TFtmkW3SxE0NCh/HUk\njJI+5NepbeXWA8aNpkELHQ3rq9ucbL32vQVBB7SZv25aSU2RKqiGBlEHk+rN\nkZM6spNtHGA+P8QknpmD6KBYD9XBT0BbI7F7egFZXufEyswNzFX/wZnNedTk\nyfHu/kRVFdwmuES0E8Uyf+De6/e+Wg6PXv0U/0usW+A5aVwqPfssGtLVjaeM\nD1zeLFlaKqUOtfBrKDAyYA7d+8KLRd5JU5Qk02I+Pm21dpdMyXqMpiMTpg9I\nSwEii2KpRCOvRnSc2+zVG06MujFoU1Yhn8EQKOSTAkTJzFDZqFQKbSUSxqZT\nSCZ3\r\n=V5Uz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"937b66873599bbf5e474180a7aba0b6706d56b02","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T12:44:39.850Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.34","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.369","@balena/jellyfish-worker":"^10.0.130","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.162-renovate-internal-patch-937b66873599bbf5e474180a7aba0b6706d56b02_1638362848743_0.018997647779538607","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.162":{"name":"@balena/jellyfish-test-harness","version":"8.1.162","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.162","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bfd7a969685054d16583056f7079d69e72557811","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.162.tgz","fileCount":28,"integrity":"sha512-DkvcGaifXGgccClYTWKxd9L3v/+jBz1w9EsJ6J7CGo7c1hPO7yoFL/HyqVA1DQJbs0YHXUXBvY65SCb+vzbKaQ==","signatures":[{"sig":"MEYCIQDmUMS0IkjGDkVlIks+GX3CA7loM9I0P6podpT9kxBDwAIhAKekqLhsHjC3+ma+1GELI6Dsl7h8bWVpB8W+c8TpqoTF","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp2/RCRA9TVsSAnZWagAA56cP/iMs/Exa7aF8VkUazDjc\n1Vma9COBhd7ojJTliL5qCMw/REGzzCRHIP0fAl2fwVUTGTbh1hsRFeSqqUb1\nw/HAZAaeSJBU7VTayj/O44iYyl3cvCJABiKYbswgnNSwfN76bjdoCUzgAQb4\nTCJX0m1vbb2w8UARJml4ZJUHSLo9WJuNeF1bL2Aj0aBlqnr/c9syIBlnKeKH\n7NwKgWEDTuHc0g5fhwbRt1qGdOiPhU+TWIgb1dqc1XRqP9wLuA7W6ni8xeOd\nsB6mgDaaFIkO/OMevwWogfra88LDDa77VtP0eSZwSqMIqFlEniOWHn1KbLIX\n8y1FNxqgpK9c+WnL2oePR/EV++Hj/c7maq6UngCvOHBt05pNOZtTZ8+MwwEr\ngy+q8hjZzeDoMKsmLoQ07sqhyLgiVKtbuGvrM1mn2cPGdkgZXejobZa5fomM\ncEOEsTTL4/P0sDg8vxSdRHFo5sEvaGZH/bWaAKEoOjqic6D6+Bb5OOLiFHG2\nhWqpEjTR58uttYsEKnB17uXh8H6Xlm3lICrNDy8xfS1K8343e87toG0z1zk5\n958x5m2KcTUN0OyJff3xCzz/OpoiTT5k00Zo2akf1uwZEKsO24yG11ImqZ9C\nB5R9Hiqd5t1q+9qR+7bWbJgvBMATzFofxTIHp7OcpQoHZvOo+iwJ3RuAAlRC\nMj83\r\n=5etP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a9a47de247d8364f7cf87b0a6359da0c1a15ef07","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T12:49:21.062Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.34","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.369","@balena/jellyfish-worker":"^10.0.130","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.162_1638363089191_0.1625314356792522","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.163-renovate-internal-patch-7980691127f569d543121235b7f50ccfd24bf088":{"name":"@balena/jellyfish-test-harness","version":"8.1.163-renovate-internal-patch-7980691127f569d543121235b7f50ccfd24bf088","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.163-renovate-internal-patch-7980691127f569d543121235b7f50ccfd24bf088","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aea821ad02002baef98001ce6d7b7b2884559c05","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.163-renovate-internal-patch-7980691127f569d543121235b7f50ccfd24bf088.tgz","fileCount":28,"integrity":"sha512-Ki8KqT+DVTJYL6BXn1YSz7tFqz6ZBsHQyxiN61KRwumBDJhPamYmfkr4l9gfp7E6jejmmI7T7hj3bBLs260ZwQ==","signatures":[{"sig":"MEQCIE55hwFW7DWMVVu4wJtLwFRuLpjCA0xzZ7hqAiVUDlUHAiBJ2zGCJl87NzO16zp0sXM+HOndU0Yx+1x7+MY+ZbXSJw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222293,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp5AzCRA9TVsSAnZWagAADZYP/3ToPH6Tp5alxr5aTwfF\nvF4oLkyy0icsiVOZkudQjovZQeRcvGqjPXzvz8QdCE/AC/RnuphAqu2L9jEx\nhkThHRBIZnVByugNLkW4C5Ep1HLo8p9oe/RxaFjyXQb4+mg4QtyubO+Rd9jf\nVgK+Zx2bEnZlEZZPGGOlktwyfEQdBF+AjCgSKazAc3BpMVuVmC6shomhykO9\n4mQXWl9+Dq12jpI3xNGM66NlqLsi0jiqz2vDO7pIxaOiwGSg9Gp+ULQZ/m7y\nD0AxN3QuuJJ2ke19g9BCeaG+OTktm8ySAbuJlz1C4MhEQBE97kiKVSt3/ICd\n8smdQS7HZngXOnUHL6LvkYT9DG7glOl2kIMzs1/4EA/QylQdu17Sb/As21QJ\n+sM1n0kgB9KP6oLIqkJV2QkAYP0s+d33vFhc3J8LPia56ARX8jwVL56Cm3Wt\nDEZj5uHAdYZTbnkV7q7ezvZ22oNNRmqsOU+e8G5u8fnGviAlfeBPeXONnbpo\nq/4yvtGmkePwM0R56PFWhLhaRCdsThBgujcs42Ts0a/rU7OqHpnbY3xy9VIP\nsQogzb3L1BWxIWil8UlEacIflMChgDZC4MqSfDqPYBvPf3OUV4TAUAjfMm91\nGzQbTlszFzIQ/Xw70LHwwH65Qa+53xEKpyBYFGQwMctMRh50tTbqRUUKrVwd\nWjpo\r\n=S9cr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7980691127f569d543121235b7f50ccfd24bf088","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T15:06:32.715Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.34","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.369","@balena/jellyfish-worker":"^10.0.131","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.163-renovate-internal-patch-7980691127f569d543121235b7f50ccfd24bf088_1638371379510_0.5824338259691937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.163":{"name":"@balena/jellyfish-test-harness","version":"8.1.163","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.163","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0ab0eae9314de75889ba2bf55388bd14d41a0f28","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.163.tgz","fileCount":28,"integrity":"sha512-Jhr5cmQ1PT7Zxxi2jnwNNAQENadFK1njQioJ5rf0EjFEedkslDvhSkzvq8K+5OvBgnAyPrFseHioHJ60mJk1vA==","signatures":[{"sig":"MEUCIQDuy28ZJk0yJPhIUoe5gzDWHuyEjPssnUGsIH3tbBMHjgIgajkt4R+5sk+IaruwmAniljDXhGHs+urCRRFiIvE5ZV0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222228,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhp5EOCRA9TVsSAnZWagAAJMQQAJXSKDVEyT+u2E4nbADk\nzIs30iNxQMm+XAOKmqMwL9gJ3f1iMwgfV5/p86msfvGNzCGqGY8X00D5UqNS\nYrwTmiFlBbuSOqIq+AzRdJ8m1poWL8hTwtXl5p/zur6El5HqfUatHD4Esf/F\nFFGAfhKfuTYMLL32x0yHCS9XfZLMGSrPLYAOSbG7ZktSBgQjnT87eoxG70fH\nsEjRvt5THlD9e4Oqg8S2hErves0m/fOpXA6v4rb2Y71/R5muWf7xmMH6fBgN\nEmPslGuxg3+Zju+oH0gybb6i+m8CQ8NJH/apSoM+AA+mEtyxu2G8N5r9hOPP\n88Qjqa23CCAJzQsMw0HkSt3bvFKlTRNdpWynT7hhUl/h/wCAZad/q6F756kF\n/v36nYRQP3D2dvieSJpBB2YmenovF5F39fgS34XenmYIxrc72GSyYWvKMYxZ\nQkBC204CMEoBRL5/f/7SyuHQaOwAc7zH15zBikjQ7Azj6XpMbP7lc+wU7LbU\ncVP3kHbj2Z458jN1U5J8g+YU0CLRZCnpKLVY3vPkmCUKOXCSNpU/lyndznfp\n7JF3wYRsznuhhSCGwMxvvNFwodHQzHxOv2rX5IV7lIh/aAPpx3xLFqahyB9K\nsn3kHVfA27Ki7ajojSkymg+sm1gT6hRXjrgqjOU9Xho3czSozhoyq4XJnWYb\njzfX\r\n=iU2U\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fc7fc30a116338e8894027f3400a7a8b06dd444f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-01T15:11:05.672Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.34","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.369","@balena/jellyfish-worker":"^10.0.131","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.163_1638371598444_0.4882210838319374","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.164-renovate-internal-patch-a5606a13e33592bf0197ee25166cbba11dacf0dd":{"name":"@balena/jellyfish-test-harness","version":"8.1.164-renovate-internal-patch-a5606a13e33592bf0197ee25166cbba11dacf0dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.164-renovate-internal-patch-a5606a13e33592bf0197ee25166cbba11dacf0dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2cb1dc31ce903550597decaa2b891144b8a6d520","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.164-renovate-internal-patch-a5606a13e33592bf0197ee25166cbba11dacf0dd.tgz","fileCount":28,"integrity":"sha512-bMkkNB70LH8XmbftOAOb/SCODplr8egEsvKoPDw9eQT5ho8d/BzD6vIGhSkAu7l0RVJ57n8O3FJba+jUNVy5Dg==","signatures":[{"sig":"MEUCIQCxamdMFs8pZU8UUOwzvjvvIVovahCv9FDUEuUzZ+zSwgIgODbM87+IRV1FxCx8NjqWS4fo/5pJTO0bLvOU/m4oBhU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222368,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqJ4MCRA9TVsSAnZWagAA7MMP/36xdPvnaN4PV2cU5aoa\n7FlZZg0t/RV2kINoBw+EnSQY7GJS2sRg5isjFY9uqPD3A3kb/IRtdQ3Z1RoT\n05W3Gteiu/KzO8HFBG0iUg2J+am78zV1ne3qKdAabq8kODTKibNukiXVIqQq\nFFH+pugEQPHa8VGEZQBBnagv324jTiZbyL3Ug1LzjYmlooD9yjoUuGIPHa9G\n4d1vvqtm3WNbNLVZ0hvgaM8OslxnZZtj8HGQgTZsK6qsTD2DhJVNcvdX4NAU\nY6wxo6jrenbWyoCd2SPIDRXtVgD3Hu7pf0xkDZfCJmW+TktJK0j0TCU0c8VW\nWctO+9YktP7MmDwaprIizVS6b1VqY8utJdPBXJdXb6pbN4eFy26GoRyn5UlE\nWN8r/8FGGb/dx2Uhv0N8R9f66dN6VF2mdILESd6MELo77ipmLxG8V9C0ubSQ\n7Yhh5h6EsjFLqyJ6oJ+aBQ8CipTAvgqoJEJauXGalEMB8Youpi0yjwt7yOsj\nIo+aLRmCpjtCBPYiX6MqaXYSPEGKhGwoVUf51QPacbIGiQohssLoJMBvpEcW\n+0k9PLKq5I1lREOMpz3oz/Ho7hBMj494LKHtVGqOdTrb8mDqICA+BY9Tj2PC\nt6wKjSe0s/VMtD+qY5rKVakyNkwualSNiTjMOuo0NkI6IeYynC7+CUhWl4Gi\naSb7\r\n=DqLX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a5606a13e33592bf0197ee25166cbba11dacf0dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-02T10:16:31.450Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.36","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.372","@balena/jellyfish-worker":"^10.0.133","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.164-renovate-internal-patch-a5606a13e33592bf0197ee25166cbba11dacf0dd_1638440460624_0.9383421346020604","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.164":{"name":"@balena/jellyfish-test-harness","version":"8.1.164","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.164","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"584dc71e5cb6875289c12ea35b4d16a517ce339a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.164.tgz","fileCount":28,"integrity":"sha512-YTazbgevw/H8zBlSnHQUdvS6COnQe6T340qM4ckT8KlH5SNkfaCBoSsjT3VInvyAVf3DH9a72/ECI2puaQdjng==","signatures":[{"sig":"MEQCIF82GP6SEpcQiHIiHYqSbdBBe07cDI2d/6yAd7fRyMaVAiBGwA8WN0FqPgDfahoo8oIQhQ11pHoL+SxWMPxPxcLOHw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222303,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqJ72CRA9TVsSAnZWagAAL3wP/RBqS5ird9vfo+6OCfLt\nHNZSgrEvGKSI+hmNleRV4ufyBPGJU9XmSJSQQGbW2oLJvYj2TVlsqD5pfKPm\nqOoo58pq/QPNpyLYAGEv4UtVTcH3Dk6HGTKMZHw/vvsWgkBSY+ovSYvxStQe\nNXb1TD+3lbCvswkhDI4t2b8oJ2aH9G/ORK+vRZs8FftL+HWlPbrzXC/MvfG+\nf2GeklpLlnhCP3DA9kj1EMShfzByPJWvi4e6xemKXg71JnrlC2wK4g2L7Jnf\ndamLlz1aZDHejwxR4eXZflKax0u3hZhMn6a7tmGV484Wjv1liC8EknqoYALn\naKMBDKdTlc497ofggj/fHObtxOkbyL4nzxBuMe1KtidbLtneVGTlpXlsgiWk\nht2EB871WHWA/2nsO7DJJCwpYvlqU/t4Vh3oOyzYHo9/KO4baiTPDnzWdMnB\nHxzFTTOMQcsN16bCHlf/1yY0weUIPqvR54g1y3qkCioRxqV6ShBjUes+K1F/\nxRuoyBcpFVQnTk2e4oUwOqpvsYPmbCpGYsxwIWbL5yeX9uj6CDH4bmXJyGps\nRFZuPOYzOkNajhS8a8E+xrXIE4Sq5OAIsb0Mt3ZNl2jnKS7ASeHMmhANku0u\ncPPo7slE/Xn4iigAvr/hljTmkxDzocUmWS3ehEPZ4uUrvJyA8jHOysEL2X7e\nL7Hf\r\n=IF7R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a0dae0c3267eb3b2be5b55d009b1e5f77aad0704","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-02T10:22:54.733Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.36","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.372","@balena/jellyfish-worker":"^10.0.133","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.164_1638440694196_0.8055916544892177","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.165-renovate-internal-patch-609ee60aa19ec5e798caa71c347e74cf2f418e17":{"name":"@balena/jellyfish-test-harness","version":"8.1.165-renovate-internal-patch-609ee60aa19ec5e798caa71c347e74cf2f418e17","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.165-renovate-internal-patch-609ee60aa19ec5e798caa71c347e74cf2f418e17","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"faa10f6c78ccfbaa49e5cf45204e2e799a2537a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.165-renovate-internal-patch-609ee60aa19ec5e798caa71c347e74cf2f418e17.tgz","fileCount":28,"integrity":"sha512-gG1OvzFxDBxw8IT4bbfIrTaOoTFhzA3bW+Xmxd7XUWbod7IqD0wByLZfmQ7irzG5Nbb9RnxyBit1hqyhKw554Q==","signatures":[{"sig":"MEYCIQDeQWyueXGy1K+SWulNFfmwBxzLuoF/O9e5VGAzkoMYvgIhAOhgsEHBSNg5ktGl2b4b8wGs1TbEIW5LJcfJACfy3nZk","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222475,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqKCQCRA9TVsSAnZWagAAEh8P/3uVaNCUw+a8CCBL9t0w\n4+YsE1S3V+5D1A4M9TCW5mS+EE1ucmNkS5AzuJw4b/GprHeNBvT6ilV4rgPe\nRhD/rpxsqaCrQHE45fwaWs6DItyVS58I/y+u1KLgSjbKUUfMmyYgf4j3ZzC0\nSDJy3llVzM8gxpuZUKvZFQXEYnuhloQUjhFt1fOzR9G1gb33ORrjrSaAZ7xb\nmRDDqxXqCyYx8H+5ipIVnfIvS6Cgi/ZItbTMWcHDcNoa2Q1vdN1pQEnxkW0l\npS7AdYpVwK9vuCuHKDfUKvd3mqvTWxFEsp/ePxP1EGWfvDtq280EP/p6Uhu+\n6RuKu3cUzmPJrCNA2PNnveo/tlxuigMYAKs37kh6l2pSfhQFAa1zbWeyJj/3\n5lDIX2mLzbIc+Wk/HuV+4t3gzIa3FiR4haAYQWApYpMz6BB6WDlvDK6XRK2x\nTpKwfUq0uF3gPcwv6DwZyX2GJh08nijuD55fR3n8ZCS4CFnjhmDKNoZ9VYG5\nkTP8EeIjaGFCayM27AStv7AU1DYH5DYrz8hvVfWmwdozFBTEMA46LKtn8RTg\ndHVmPeIwWGggBsIdlLiG8ThZpgUZrHzxKTyOiuqmh+xuWpfnEjtN8EAITs52\no/YRnxh0Ud1ovbaCjW5/4XW+As3IG3OxvuPGy7GCmp0VA1HlJiefjk2ZKRwr\nEcWT\r\n=b8fZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"609ee60aa19ec5e798caa71c347e74cf2f418e17","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-02T10:28:18.205Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.36","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.373","@balena/jellyfish-worker":"^10.0.133","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.165-renovate-internal-patch-609ee60aa19ec5e798caa71c347e74cf2f418e17_1638441104227_0.3004349241535966","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.165":{"name":"@balena/jellyfish-test-harness","version":"8.1.165","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.165","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3c8c0126a42be4df78492dbb51bfe5e6ac687e8f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.165.tgz","fileCount":28,"integrity":"sha512-C9MKTFN4klXn4/UWwzGMFPF+OsYctjFJOmOlg0IPaU2Cpdo0taNDbLgf0vO4/pMIRI0kFy5ZEz/HHI+4i2le9g==","signatures":[{"sig":"MEQCIEi8dmuqm3OVh5bCKMCamrqU7zWnBkK94dw6vk340unuAiBcxbiHUeZTjPzqKqr4WXzdh8B9rQ3msPrwbYDppqeYzw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222410,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqKFGCRA9TVsSAnZWagAARh8QAIAwZG+MGwIGOiRsuFvC\nPGYDCIhtSscIIVXEHo857l/7ntEReFfkxw/MyPJW2FCweY4eP790UNpx7U3U\nFPSUGIe/s146wf5xsvrjL0LBOjbW1k2jYZCX1+a82WF/BfVlnMxer94GtiMr\nQlf4v4daspXcPFS/JAZTYx5/d+Qmg7U7UA3IStR+2siwrDzHI+d7uoNorWKx\nbMJEfP9jmlUAtBy6DEEJY3c8G02S1RhDiEn7I8diZ6CRUOmiY2x0wP8kGo7X\nNUi2ornEK8jhtrNFK3rBxllEmiCw7dUtHpz+Bs0TL0EMw0xXavvMSpqYw35J\nCUg4bg/NNcXnclrPwmlxRK/qg5wXuFdXVcVwxSX92xiCygxloCZYXFYEWF2w\nIWMI57CTmwBdWT230oFumWisb5t4H7PEx2U+i8vN2jwBHSaDh8AsImBEv++m\nha9k220tabQ3ma1HySTvvnoqdZefHpIMncMgcLnLz8Tq4uasWE2e0PCO8fnt\n6v/DLlmu/DSBJPSWfsq6sUvdc4MQn87Npo8mlGcYj8x67XzA7uOPQOk6ynK0\nZeCWLkbEfWjVh72PeLtpAekIDKeRML5DR/t4Ba2XT70FW5c1UdwRaBE4Wvmx\nRomo6SFudCPLCwr4jHl7Bbvks+ADfwx4GcRnNBRdJmAhoBjosWW3TnzkHIx3\nY4Ha\r\n=1sh0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"380a85a1f47a95d6408f9f636d51c279779ead23","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-02T10:32:41.845Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.36","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.373","@balena/jellyfish-worker":"^10.0.133","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.165_1638441286132_0.656471541737152","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.166-renovate-internal-patch-20b6cce1db855a07bd025eecbb5953944b62b043":{"name":"@balena/jellyfish-test-harness","version":"8.1.166-renovate-internal-patch-20b6cce1db855a07bd025eecbb5953944b62b043","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.166-renovate-internal-patch-20b6cce1db855a07bd025eecbb5953944b62b043","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"51043b10963ecb8e2b6eb7a28b6bd510ad39d9ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.166-renovate-internal-patch-20b6cce1db855a07bd025eecbb5953944b62b043.tgz","fileCount":28,"integrity":"sha512-cy4zxHub6scEejQLIXi9JJQFfxxWcogENawjmF/rMlD0cLQAptijHhGV6ALoj7zQjQ+wMVXfIUOWdAZkM1cohA==","signatures":[{"sig":"MEUCIFlx55CBNQz/OlrRmC69wwQ0E7UvqOcVfy6z7qQeB13lAiEAs2D/6eRvcAES/2iUfWR3WLwq2WyOruzdFyX5fY34cCk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222550,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqeb1CRA9TVsSAnZWagAA4/0P/RAODpX5MG9KbNvIj2OU\nrSMJ4hOp6UgJqgm32tEjfavnCnygJU/UUwxiSwfKIJwy4BGtn1Sbny/YWuLu\nGt1QamtfXjwdWH4mmpwYGZ+qgAj6qo8yPJyaaEtR4kqd7hScS7pBTYi4N4Qj\nCZGFyRYjMVDzyKzSmbu3YzieyO9wc0DF1Je1y2IYUvgw4iaYqJu5Uu0HqjAU\nhWVI0nhbWRLEUbEVtZ8ZzGVzqEhyHqRSYu7bPPd/dVElomEZky3x/41NACzB\n+l4W5lX4EBCZH7MptU/Xi/MPOz8imWkrZPP6qWMc/fLaVgOp4CWtWIu8RsY7\nYo2k+B3KGIpwF8KKTBU+t8Ax8pvgEYiBIHdcxZmiDBCbsQPSflWrDvT3wnCW\n+rGaMkoo3zELdjUo6o0fM5aA5toJSrEGNtO6msmVSgGsTuvKf9Je9JcJrr2F\n77b1e/TUqvdTHMTFpFcg5op/iPgn4MSV8gFzkzPBmv+OP6WIVr4sZ+4h/Fme\nhfp/EifjOgFddySvYF5mkJL1Pfm9srgt7Y5I2RwwhCV1FGsQtAPgvukcK/5A\nUaKkK7XDRkOGgRmLAkg+1WGmaXmjQ/k+Ws0jiWEe2pJKSr5M2st152bCrzJU\nrrLtYJh+IqJuNw59eQD+XC9tkxlfdOlDuwVjhaqeqrlbZaLa/h5RqpgSpqi5\n7lDU\r\n=CUIm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"20b6cce1db855a07bd025eecbb5953944b62b043","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-03T09:41:04.058Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.134","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.166-renovate-internal-patch-20b6cce1db855a07bd025eecbb5953944b62b043_1638524661672_0.49398019453564235","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.166":{"name":"@balena/jellyfish-test-harness","version":"8.1.166","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.166","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"333dbf0ad5b6abd988eceb7de10bd74c1b2d1aee","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.166.tgz","fileCount":28,"integrity":"sha512-IhZLp/MjQsvHwb95oZRjv/sIpOCZTAUI8edS1Mz0BuCHI52V3aTMYTWjpFSoX8hbbUYeMb0bb/iuwydkyxhXmA==","signatures":[{"sig":"MEUCIDBoIW6CyXJ/jG5YTmDnUZwVBKDAMHIElbmZtyWB8+1ZAiEA7gaJ56eU3MLscpeGktndXPvUlOEY+8cEwbI01hj4mFE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222485,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqeejCRA9TVsSAnZWagAAMDEP/1XzhP5aqxI3J0dWC5a6\nEeR+OU5HYeACtRTtithRFfeEjXGwGIuus6xJ6quu0VSA8VcSsbm8KS6GYsnX\ndr8YbUqPb4g+E78wyTFxs1YYxiaR56uBWlmdgkpEf7san2HMIULccE8uZxeX\n7VUURRp9qyQtBB6CAX26GBUUXPWzrX2SFTJ1eEwOeR18TJJ/pGrBpt+OHPD3\nCRIAmaMYvEkiykmDEDpn4jAURjF1Iqqwc//4VzzwK1M6RjXuCjxgu9yNM3ZJ\nHwx/IDpWIQ/KvuxHEC3NH7pTEJ/dRPs/bF17VVeafIUGI/VaB8+ECcox5nv3\nIF27PjRmhjrtil8Q9NJwHJlkQbFhVmNVduUFvuvo+qEoF8I5m7Ytc3y8XRGJ\n8NIxhIUNvu+XP9qNZ32Iypxu+lOZZBRA0YiN9iQUByrWZWcViuyH5RRmQydR\ngTo8OpAiD7SygxxJ09RYJphXJm2YtezOAIeA1PYkKUDYY+WJ/OnUUvdPtwZE\nq/4NtlmabxKkY1dKU7IdpQxHDxt/yu0uSXXy1aWmCERhdvslNU7oogoBSKQf\naAPgeqbx5o63puQErq5wevav5MdvH1YRUUYbBVw9t0MKEc4SxKcIJesl765y\nyTP+aGWTZ0G2KWzUS9RISRaNDaL/T2R5hY5m7PIN5LT6aPpVTTodrUAKGA21\nOdMY\r\n=5SlK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"257e7220f9a82484280b4040a5e9a277d74fd607","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-03T09:45:13.758Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.134","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.3.1","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.10","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.166_1638524835349_0.5190821708469149","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.167-renovate-external-non-major-757179b7d53d1ee79487d658e2db9df79ce195ae":{"name":"@balena/jellyfish-test-harness","version":"8.1.167-renovate-external-non-major-757179b7d53d1ee79487d658e2db9df79ce195ae","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.167-renovate-external-non-major-757179b7d53d1ee79487d658e2db9df79ce195ae","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d6a5402d16319a12cef03dda3dcdf29c38ac3f32","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.167-renovate-external-non-major-757179b7d53d1ee79487d658e2db9df79ce195ae.tgz","fileCount":28,"integrity":"sha512-z66P3iSRz0d7hmn5nEoGATxIhid7frZRUYQ/UOuQF1yCgMcVHN0STu1i9KgOJzqFJR9mv2q+JLjchmktVStwMQ==","signatures":[{"sig":"MEQCIBBg9N0IV+1czr25t0FJj3cViLKH04ny/mEODFm2VbJbAiBE5ZmYC+brLrwbiFPvudxHtbl/gU4+uBbCKpw49fFdog==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222633,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqsKKCRA9TVsSAnZWagAArrAP/1q7XKkVFCue0VPbDcuC\nsd+gxbKq1e/+Wm0miCqkIDTU2/6vtiRDw53+HzdS/0PRqml0px4B6LW5AcRT\nVLyNydZuZgTPxVUpNE5WtBO5YV7koJa7HfYqEkzf3bISFnT3iy8G0dbgNcvl\njTWSL5+VBDW86obWblTPs0gEkvc2PFispr2JlRQ+4RQEwTjDTAnIh8Pcim2w\nAkhyHmKMgrkWO5h9+zHd4FXLujUtTjKaXttWb6llq5Ge5LiQpbIEi5PQXCO7\n0cLzU/AKV3e7gbtOVgorcy0UhZVXm6OarX7aZZSo5/6xE/OPnsXtcFP4G3H7\nwf5KHzi5kUvXQLRAqUS7MmUd3IJJ1F63dZxxJbn3M8GzwQcah2ss1Ng7rMKP\nEInpvA0jiOw343t77y90bzimIK0ZxNM/pRNDvsS/g2XThEctIo1WA6QL0u1s\nct46h6xYUkDMF9hdsrB1593tOpH6f6u43iU60/j1UI4pJmKPndrHEyYHXwW+\nwcV84fjlvPvddkysFjEcilmktT6oV7sNxpkplkV7cP3WHu5/FHoDxndmTsVI\nFTtDsqIPcVmHqNNV12NSDHG0ZylhpHvmtrRS0wgFVSTDV3a3N/gEYSTpd9Gd\nieqqFS7DpjIyfENQZ3tavfJbpSX2DRNVgplk3cEWMkj9mhmOou3ZVbMCxa02\niL9d\r\n=Dc3B\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"757179b7d53d1ee79487d658e2db9df79ce195ae","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T01:18:26.227Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.134","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.167-renovate-external-non-major-757179b7d53d1ee79487d658e2db9df79ce195ae_1638580874088_0.39410896586536426","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.167":{"name":"@balena/jellyfish-test-harness","version":"8.1.167","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.167","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c5b6d3f703307217ed30be159476e04cdf1940b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.167.tgz","fileCount":28,"integrity":"sha512-gamhRyjSp8QUs3HG3KOrpXZ+EywCNVrGGGMLeKscwqt+5khohIV7ZviyKyFGSUxOh03YwCClExOQvlxd1GPywQ==","signatures":[{"sig":"MEUCIBYdrFhS+Chhq7CCvTTnCdmUuBylZrAVTiFclCZ/5vQhAiEA0l5c9z24P42mKZaG/NXrsotvt5DuFnRXBL5YXgM6usE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222564,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqsOTCRA9TVsSAnZWagAAo9AP/3Jpw5yfQTrO19/0uFYH\nYxD9E5ee/qi9o3dm97IZaMkDKoLlVtdalSY8K6odeTPOXX1QkBEgSgqGBayT\n9uJEebEBF3mrIyPmZdGJQW0ms8Lk2KKrSfXI7hptSs0MxpydDaQM0FP+GEuc\n8pf2RLH/n7pdxiFW6Mm2H5HmPNC/pfUebPE5pNkG0My0lysqccb8kMgdyHu0\njclwFiinkwuEEY6QCPSLfw7iFSLOk2RFalcGx6nG42CTNmeiOAV6bmxinft1\nNFVY6mhNYp1wm6skDalMq9+1ym+UO0ki6RfBgWPlIm7dp74RXI3ylFiGa/E/\nGqd7JN6ItNX1jKNutWMqiegvmsqIuTsqnSPcdymCmYebxSKypolgi7tM3qve\ni7aswawPbTYnaROWCeB6/G9RDAIU7onkAAukpHkFnf0AJXzPwisOVaFep3Vs\nxV0qUuo/Cc4yzDYJ/WK/+IqaAaRoU355BzeT7cD3cdTZQ7FD23403QMIxo8v\nU0ZPuWBe56yfdIeEgtight+nj+7Gsx98w/Of6J7B1RhF+a5PPdn3ZeDFWy4T\nR7bHg3G9ZwaHkUhmdAzisiZU1fiiY5V2y9fX8jEC9pj0NS9LlI5Ro57oNQ72\nCajk+ghgQcW/O5x0ZlRLfJ74p83OBpE7hxo5cqDg6TDLA0Qf0fVWYdGJhnRB\noosG\r\n=DJva\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f12afb733e92cc69a8eb9984440d3e633530ac6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T01:23:19.705Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.117","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.134","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.167_1638581139115_0.4771057016792588","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.167-renovate-internal-patch-c2be726e1bb2a41ba758b0912d87dd453ef632f4":{"name":"@balena/jellyfish-test-harness","version":"8.1.167-renovate-internal-patch-c2be726e1bb2a41ba758b0912d87dd453ef632f4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.167-renovate-internal-patch-c2be726e1bb2a41ba758b0912d87dd453ef632f4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce2163f2379ffcc22fa3f3796e7eca8f88b3c2f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.167-renovate-internal-patch-c2be726e1bb2a41ba758b0912d87dd453ef632f4.tgz","fileCount":28,"integrity":"sha512-O1ChyAAfk/rXSw+9SAXypENP4gYEyd8EMx9+esicl1/x3212lMKH8aUcH/6zlW1oH9SZeUiAeLHvmCyaZVUaNw==","signatures":[{"sig":"MEQCICqMqv/fwMxTvEW7a8+WJv2ek8PrWAfQeNqX+zCJQtcAAiAT3vZLNRlxnTI8Xu8dB3xhvldpmfn5aVHDHzTbxKZ4eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222675,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqsQcCRA9TVsSAnZWagAABIsQAItP0bVz2sxBBWITRTdW\n8HriX/Af53uSF62uSJu1VgZCSKkzb6K+7d5BAd43p39i781lw9Nwvo/riD3H\nuefx1ZNBP1ONEvziMGTty7u7h0IChXI3HGlDz0wxYqCcV69Sx5pUcxC/iLjN\nZAe+cmNco8/CZKjumRfRQA1eC2Jpz82zOYmg+Z8PaNaen0pKsFEQbF3Gu57D\nqgJYQWvJbnIkDgPUKZ3khQsBXbEhfuDaKOL6L6VEzul6NV58Z1L3p07b2jzZ\nBu2JvQeU2G1QTVewKaBT5KDMiFvNWosVN65Y/4/3MDGEMFKEjviWhbswYsJT\ndsiGd513XkGEZvQTUdTplTmC7SvoDwgW6KFym7Q5zeICbVip1iWHB8mvQLO8\nPlIYx2T7RD5nKA9Yg5fDs02Q/m/aarGK7M0MtBLcdd5JFRz/COf4Ge8SOXEl\nO73nQvRpV4id9xuw/O63n/hdC0SduSUQG6kBIDuBt5F+nqFczeGaCVazkMai\nFi1ZMLwnAB99yBbPkJ5NioAfGyIBnzVAe/yQKKsFR+1FGAOIUWqDqFJV/H9F\nA6tNjcg/gI3u+q3j7NMC3idaW6GvxT45/99S2aW4zYAd9eKRh74rM099qI1C\n8dXCY0mFaMIXK1I1UiwJZhyhbF7O1GqpT6fGEE0GmfwfZqh76PdcMxSn2gQ5\niu4G\r\n=P9lQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c2be726e1bb2a41ba758b0912d87dd453ef632f4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T01:24:28.094Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.135","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.167-renovate-internal-patch-c2be726e1bb2a41ba758b0912d87dd453ef632f4_1638581275798_0.35753665628886666","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.168-renovate-internal-patch-3ae23ec40dac02b24579b5e92b35602e514b9dd6":{"name":"@balena/jellyfish-test-harness","version":"8.1.168-renovate-internal-patch-3ae23ec40dac02b24579b5e92b35602e514b9dd6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.168-renovate-internal-patch-3ae23ec40dac02b24579b5e92b35602e514b9dd6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"26ae9299a3073c18cb3c90345b41993d62dcf8da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.168-renovate-internal-patch-3ae23ec40dac02b24579b5e92b35602e514b9dd6.tgz","fileCount":28,"integrity":"sha512-KC0VWNBxKoBkDhbuxtqVQbo3blLGomtDICQbj8cUihUgsE7VHko7Q+b0Nws4bwzlxLCNSHlxDvKbUaKuEViCRQ==","signatures":[{"sig":"MEUCIQC4OXDtEk52DCiV9dOsKICNUgluzcu8SQLnlnnmlycRTgIgNUKJl7af6PCoKNx67NgVPP7D7V6VhyADICD4iDCNf2o=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222704,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqsTtCRA9TVsSAnZWagAARLwP/3Z4p6jZt6PDyXxZ4qGv\nj+U0XiByeOJGxUxNrNQ2ZLDPSlb818FluX3XJRop/zhZ5knmG1Nvkq6QJfSO\noP7vWbmCnh+FLtLiFGw/VQNz1ajmCbtUL3rTTbVHOxp07zCp/vfYb2CJ8LU6\nZ9NJM7PByR2XN/3idrSWFRusTpb0DONGljjtfmoltLIP12YN7S4zAb8cs8OB\nK32/ntW2tCgl0f1jC5Gwf3ueENTlbkN6Rfa2YM+sZABprPC1o+55GzHh87AU\njR/Uuvaq3Ux82oUe8BLn0+Rdy3WVFu649xxSSK7FgyV+l9FWLbw4MVv198/a\n+eUocqz1/SOHwzd9DQejGNEf37yY7If7+VUz1voOxA6XDPT/LpuqxkI5jtnw\nEFqdeXOiNUDD0Q54fbYgpRLqlwlAJ1Cp3Xrlpr8bfjtCx0dtPNdT8t4awgeU\n1qhH9of1iLTfjBITR+GY9+guHGqLAbFymrNeD7j/AtoolHK0REYNX8yT17cJ\ncv9QytPabotlSXL46SrPlitB0AMoOV09q2pkiEtVRSW+FQH5qqlwJJ/k4G8y\nrWXZj237RdGvwmg1867kVH2owZB9+0MOwGkK6/dJqRrS9s/76dvB+yP0xCmE\n3NWOL1hQKnH7wECbUgR22S8cppc9IRmYoGFTKUwSQFvxVrX1iBIt7Y78EL4Z\nWhWY\r\n=/9rd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3ae23ec40dac02b24579b5e92b35602e514b9dd6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T01:28:07.673Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.135","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.311"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.168-renovate-internal-patch-3ae23ec40dac02b24579b5e92b35602e514b9dd6_1638581485162_0.8754705065121273","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.168-renovate-internal-patch-1a8f6e75323f87b2a25afafa9caacff680ee998b":{"name":"@balena/jellyfish-test-harness","version":"8.1.168-renovate-internal-patch-1a8f6e75323f87b2a25afafa9caacff680ee998b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.168-renovate-internal-patch-1a8f6e75323f87b2a25afafa9caacff680ee998b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3236deb880157a83241a4affcb9cc742d345ec90","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.168-renovate-internal-patch-1a8f6e75323f87b2a25afafa9caacff680ee998b.tgz","fileCount":28,"integrity":"sha512-u959xfV0JRnfktGu29qdkQx5uAEk7LEIGqFuibyOHUwi+z0HldzNgSIIBQp6usxhEvKePoQpQJLHUrQedaVMwg==","signatures":[{"sig":"MEYCIQCH2tj75n4dB63lQKi/5enjyXCx6srapLC1JcmTzGsGeQIhAKYdtHiOk3SOcfA+gcNT2LFCGYhhI393BWHj4slTq5ri","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222704,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqsYbCRA9TVsSAnZWagAAy1kQAIlIORarqh16g1wKR2I0\n2QK6T55wOo+H6MXHWfGhJnXKTQR5Foav2xRwv0gl1Jth+bDEFHoXsVojJ9lA\nMi3EWCpJ+kFsjS8Du0EfqLtuO59mZBzqg7gjJKnqfXO20E+HyencpDBylQEI\n/l0hver8KL/CpOKvBwv3or59keOMv/P/c12bnSPPEoRhUc37DwidGmlo10qW\nTbTTC8/HD2h9UyxQO7ZOik4t1kCM06Ji38O85O0fHubvLnSs/uTWW/IAK2u1\n+cs/+Ia/B/fAL/QyqgNY90UN2cRkgzhohDciGfGj14U/xonwD0e5SjGdE9qr\nutUbVPQMjhiE2p57QQPAtQRyDduxgy4+tT48NH5dzMGebOUYtNkU3FN5rFfv\ndiTSNsxOLzzpsq/D5t3P7eAoTABHBzcT03eDGKTGE0O4G1p87czzAXt7SjQo\nl4OqLXmBBt+JG3S7S8z+dkZ3h0ZXxsxyW6cQgjAEHiuA3rfTscgxmxDvZ7q1\nWbhM0v/vy7DXa4cBz5vFyo0pDgMs62r2DQbcWqW/UvTjZB/sh4lHoCGl4Dbc\nV23mR6j0NXFTvLnF17EH0Qtykwa3CpglIn+uy5kntE/SPMll3e2EZuvnwzoD\nupcSEKU8SmrgvYdgYWE4L1K0blUfZeRS+F1sm7BYQxEriaeTAvQqgiAC08fY\nHQuD\r\n=9uIx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1a8f6e75323f87b2a25afafa9caacff680ee998b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T01:32:33.396Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.135","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.168-renovate-internal-patch-1a8f6e75323f87b2a25afafa9caacff680ee998b_1638581787399_0.47309904035603045","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.168-renovate-internal-patch-2dd4bae67e3dafc967101b053067df1d18929f10":{"name":"@balena/jellyfish-test-harness","version":"8.1.168-renovate-internal-patch-2dd4bae67e3dafc967101b053067df1d18929f10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.168-renovate-internal-patch-2dd4bae67e3dafc967101b053067df1d18929f10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d860aed04e752a9b3204188145ec4ee87919c93d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.168-renovate-internal-patch-2dd4bae67e3dafc967101b053067df1d18929f10.tgz","fileCount":28,"integrity":"sha512-7Xl8ZQGfF9Xb/tMpQMrBVefw2/miys6bWD9SM/PcyU4bbwaUjp9DaEq0z0VfmtKcrkJ7nLXSkcNIWcIDqAKKAA==","signatures":[{"sig":"MEUCIQCM6IlY+tZNuj6b3pi0FcMNZ5N4nP09P8CNCk4w6ey+iAIgajFQt6sRQGdHoIh6r/GGKOkFIa/qrms9m4saAAiHrUM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222704,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqtSNCRA9TVsSAnZWagAAkkQP/iOYR7vSnLqmzDAjpnnK\n8qotd85R8mQM1VhdxGeMCVvX6aX/YaQwBS90u26by+GhR92ROXVtiKwpD0k3\n4g2M8DchihGtrzVLiW5OfQeTDdRsMeubHaxQPfGJcWzekZyoca9JcIcmP7c7\nFjYDfDWW33D9gXGuQSQz+z+iVQNB9YtHdKVXjhSlqDz/1ctgAn3VVPLtvSl/\nu3tEh4cT1qmu4nA1YbRlKd3jaZKz8dCc6ql9TeoA3V1e6uRAVZzYiKMcH2jG\nOCQQZK5oVpoYUCmYJyLbPG9S71YSP8BMznmxDmYss8cmqufZB3vu53vdqXxu\nmdi0rk19UztZwOpn0Z55dBXVCUQ9me8sQGedE/y6DjCGMtIocq9pRRQuQKJR\nqI7b3sae9ZhNN1/o29TIuxUP8wBcFb9PQd0ZvfeculFumB9HQhS7Rw8c08Tw\nYwSezSYeCANTwAHAjvl7QNkkMOC7bVqhVExfKughfpVKk1GSAQVo4TaZUUO2\nSjc+bmrUfC9Si1SQUJuScEqOxABjN/72j/vhzcxyioSSRRZxicPzFpvgK0Hn\njHN+rUaUNqV+gYkNzqK18T+UTW8RYx5pj/Ymz+5ozToXB8Xgeuu8+JN5+pMd\nyEIsCHerg1H2RBhPbUbMhtIgwpSRzi2D7GBPjcGcvVfTMLGW9zYeKKYyHUOH\n2mmR\r\n=wRAd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2dd4bae67e3dafc967101b053067df1d18929f10","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T02:35:01.598Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.168-renovate-internal-patch-2dd4bae67e3dafc967101b053067df1d18929f10_1638585485554_0.5134193320088722","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.168":{"name":"@balena/jellyfish-test-harness","version":"8.1.168","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.168","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7eefe55b582a5159b8c48b5fa21355b2883bb91c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.168.tgz","fileCount":28,"integrity":"sha512-BDzAV5ZIU+bDmGbIXnkg6JM2pbKQgZEDA9aPMaq5hRaIxW3CRTVb1STerj3XPoZ4FstYVoTE6mzUCBA+0Acgyw==","signatures":[{"sig":"MEQCIFnqfX+bdvDyDz1XLEG08w3LYrUAAb+WzM0y3YF3vrzRAiBK+pIWaAjRLW2E/VvaI9op2ceTHNWXmZFsObfJW5UswQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222639,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhqtVsCRA9TVsSAnZWagAAmi0P/jyEdlAjnFk5CfKaxP8h\nkpdeQ3YPg4n6q3K0JzDChTLm1UZLDLSLBj4mfqNCqNVXaDV1iOzwbaq1yckr\nmdwMGhzLuqavsx0KANEsZkNtZ2a5zgeBC7RqV3Z9Wmo98ZJRwFNsjiRFf3WY\n9tKc0Q+qHk9o708AFo7anhOZ+xfPwMA4/IIGnos/W6ySY3zn4yjuK/g5N9YG\nW/MRNgXI5tkucVAzPTElw9r7otpVHOHWZy94FrZYBwvn0QeO6dXb5eW3U89L\nhRC7Dlgd3zg1YyTuDMmvr8kZPz0bjSo1FTF7v7NLJR3kW18ZFql+zf/qlODo\nIBUfyOnFTa7Ww1j8o/DAQOwubbGnITrnhuaWGjsqmzt2OGOdwW99yhbAkwDL\ntAVMfDdWnQo6Tw8BC3kudcLc6M8GiqH904F7ykUIJleiKUU5QtWbO/+0E4JS\nY/LYEo4f+DAt5ndEEsrPOdLI2tHF0F2iqsH/fvv75ymaErwlF633CJkXLm/X\nRc0rL4OrVZU37v/yxMuEYrnaDpqaCoBa7k7AoOPVgr92QArBk5a+JPlWUwEo\niNeqV2C41MHNCzAT+sNgNnjWhEs8dUns2T1K3wykNCLzs1LkzOOwBpjB8PWB\nJYnuse1Syb+EBUCjj+IlpnithtCTPoNj5aCEXwgMJyxWqg1EIbgNn3H1mh6e\nbCpL\r\n=rKRy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"24a96acf26e53a428980c82d78710fc8c7949234","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T02:39:36.152Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.37","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.0","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.168_1638585708144_0.49982235831086896","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.169-renovate-internal-patch-dd1a66f22bf52e9982cb7de814884254b4e86368":{"name":"@balena/jellyfish-test-harness","version":"8.1.169-renovate-internal-patch-dd1a66f22bf52e9982cb7de814884254b4e86368","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.169-renovate-internal-patch-dd1a66f22bf52e9982cb7de814884254b4e86368","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e6ff26580989e4eb57ff5bb40495e1a3281a1013","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.169-renovate-internal-patch-dd1a66f22bf52e9982cb7de814884254b4e86368.tgz","fileCount":28,"integrity":"sha512-LcDpU+MxW8/C0DROp0W2Hz0hpXhakQTojZW9hhPN99h4XgTjGy1yPv8QkI9GwheLlTk8y4rgfs9jr7kG6+g3Bw==","signatures":[{"sig":"MEUCIBqgIes8aG84anpntPaiOIj64wqYK7WQTMEDD5b18COHAiEAnUhJpv/tToCJMlBbjNxKq2njgpnqwEr5sAO7B8Calo0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222779,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq7ERCRA9TVsSAnZWagAAG1EP/23IQUt3tLxLHvT1DSAw\n5wm5lulFpmvb08HbyAppbpUyfERapo/Yzoid7yekvOIIN7OmKSjCH3g8la+W\nEgwjsML5e377a1tGFrtJbmRR6GVea67Q6okK+GHKZsAQ2hL65/N8dcLVAQth\nb2HExDysxn0hHEyPlVn6E6o5IDWqimVPwZhSS7bROhwz9rutusPnz/pt6kxN\nkUNUrJ9XgrYZIJqEHD3rwhy1KorIcSxD86YwhkBBEr1f3plMieAdfvXwfMss\n/IimxR0X8FsJqawdVtblHgM3rwZagAp8h7Pt0KFVLt2emmgdW4NesUAX75Su\no0fbePuhqEp/DFPoec3hcRQkpGky1ISpk5uMAeMHAgc454yodubAsNZvCl5W\n3HxgA+HLjxJ/mGN0JYdKfvsAuVl93+g/Twnl1pYw2+CCUQFNzV4Il5eR9JVP\nbliTYXb7aVBqv3S755nX8fB+vByjZBJQXmWZoVzECe7mBNuWh2XH37mRM8ms\nbG+EQF4LiKdS7UdB7PKRxscOjwSIDYIpf9xkGBCoX6whvYy2/4PNUaQG99zI\ncIOwo9g1yOXvBOZyclr1qgytXXFW9krmV6Gy9caRTy6xVWVLlCc7RspVUOou\n+lgL7ZjYIy2S8aPgWBj8zlz7YdLQnhXo1DgEOHZNT+OZ6LtMtlTJABgg/i0K\nTLka\r\n=o6Nq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dd1a66f22bf52e9982cb7de814884254b4e86368","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T18:14:56.692Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.38","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.169-renovate-internal-patch-dd1a66f22bf52e9982cb7de814884254b4e86368_1638641937341_0.7105009667903646","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.169":{"name":"@balena/jellyfish-test-harness","version":"8.1.169","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.169","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"30c20f2cf7c95143c9f5b277d9753b6054f0ff23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.169.tgz","fileCount":28,"integrity":"sha512-AdCIIU/xrk8APimPo8oNNlubp32+Z6rfziBBhtfLwzxAAFR3ZC+L5YaPF7dghRX0OewcLmXp1zxGXnXRu37SrQ==","signatures":[{"sig":"MEUCIBkD3ExT8uSxHtN3y2gdtPrrWPBhpXtEILWkJn0dj2UqAiEA+wCl9+hvMLXNNBw7lp6QaC1dc5nN1nXV02IHOO5Lokk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222714,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq7JICRA9TVsSAnZWagAAGosP/2dKTDe1TgCVvIJ1PAxe\nWxi5MjWI9Kx+8bPo9H7tdw9FwIUvFB+GNqWnoRFZcsEiSjIVbdQBVFHgt6Wx\nBuLQccKZ6OkNezaBvpBdbLTlXkmYdlUJjR5WegQCRnKocBeOQN2wZrjADBNf\nc215aNsc0hdTy72HxX/Do3RDSPZ0JtjFmyETvYumszC8eSUrPiiKK7uo6hDQ\nF4lKOD415W6SU7txOpVHk/ExKX0jcOmLJ2XL59V7hbmlZqyUKJu3kZvwmDbU\nJUBhDcTp3Kd46R+OxGHfzNN0KVCAP44nujosCzxQvdXYSym33xl6Km8aawZV\nuX++IDEr7Z9K76doojmBAUo8W5GOvXKlVwAzCGYw/8pZDjdoKb5UvleTuRzS\nvZuqwbKFNivLjfgUg/xFwphkN/emUMY1lfxEuxIEifu4t0YveA9nkkFzkNTt\nhiQeZQKWTQaVMjv8pGdptyGJpgQKl32YjqW29QD9qomCO2Z58o5sGECy3GG5\nh4kALjdzfdhwAbp0ebC2RfZ9QOG68rpmUgIN1J89ILObhjRVnPFotyM8rtmj\nX79Or3dD4DEbLNnZV3cNvcWJv7Or67bHPmX9jqYgCkzSu94SpEQtK7WspuLB\nSpuZL6c+gymFOKWwfUHGdcaCAU+VppTUrigKmNkFvWrFXKWiWMYsk7N1vCad\neBdZ\r\n=2MY5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d236d2a25fe13f8c121ae039cfcf926df9ea6701","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T18:21:32.645Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.38","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.169_1638642248506_0.5303675425255938","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.169-renovate-internal-patch-6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a":{"name":"@balena/jellyfish-test-harness","version":"8.1.169-renovate-internal-patch-6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.169-renovate-internal-patch-6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7a35d76035886d713bb29407338dbd74aac14468","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.169-renovate-internal-patch-6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a.tgz","fileCount":28,"integrity":"sha512-aBTg6sWMoOmhNCHNgwEqon63hXzEAmiNfVURbcTnlWdWFC3HETve2THYp5ZKyZMVM1J+Oy1GO5PoEN5Ud9WOlQ==","signatures":[{"sig":"MEYCIQC0R2qm+ulithVwaHZ0weLfhT3IDBU4hKn07YXQZn1MCwIhAIXPPt3+WI6taZv4EcasjEt7hApNDBpVOKGUW/sP9k1b","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222855,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq7LJCRA9TVsSAnZWagAAngwP/jCdGNda5RkexZh3Djab\nxrGDUCaRm3jVKpXRZezb8Kf54TE5ntmWSJ0M6FK01OHfB1X89gXDWH8IYaNx\n1U2vCSoSZy1ZXkndm3h+kla4Ufzmvmwo4JDhQaMiMz3ux7RovSkCxqsgsoIj\nT8VYx9dG8m+1OrXtCJtgD2Ygs7+HgzvmLM4Y/WoROw0H6Q9rHqRDUtSfxNec\nBqJkyw3cE2HljE2YV88JFaY+74ve+NqHekOMHAhdDQydly4ovSxiTPyBqk9n\nGgfjXy4JnQ4UyvSH+DMBHrqUTTwfZEQz3iq0T7PP2HrwpyjYiRviMFuHLg2R\noByXnd8ZyPaf3md/R+81J4r4KJHHKmY/2FPrEXcgEXg3E0T1MnYD2SuF1y8F\nARSg/mRKcGni4bEDLIavNR1AeLwtgXrcXfL/Fmh8Iaptsw6HGF3OMwg5hV2+\n+b/cUhm+pcZVbxMCSITtb6IUPxTTBJfVO4qrB4HUOlFQe1QWMMx2kUJyUoRc\nDQ+wZBgj6QirqYlwhtuVJ+8FLxzz9GZXMuGyq0ec/h/COQMG1nPLgKHPvPlw\nrx9MHQIVhDp902CyC94ScMCvMzTe1gT7fVlg42iO4G7ub1r5KbYtDYjV25mj\nJUiMtnUhS0CHKNLr1Omaf5x76RxQs0h4zsRnG32NdV855cj6aC5ngL4L8usb\n6xfj\r\n=QPzd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T18:22:58.512Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.169-renovate-internal-patch-6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a_1638642377777_0.14199491743042025","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.170-renovate-internal-patch-9069940a5133e3be604aa34364e0a05e09afc4f8":{"name":"@balena/jellyfish-test-harness","version":"8.1.170-renovate-internal-patch-9069940a5133e3be604aa34364e0a05e09afc4f8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.170-renovate-internal-patch-9069940a5133e3be604aa34364e0a05e09afc4f8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c714ae92242b3dcc138b7c526c579d8f4c95f731","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.170-renovate-internal-patch-9069940a5133e3be604aa34364e0a05e09afc4f8.tgz","fileCount":28,"integrity":"sha512-eqER7eztOv7VrnbpliMYQy0P5g53QgbQ3HwLw3J+nNyYebGc8xpRpTsAlqm+nmLEhOUmrWIyIofhRRil80AdMA==","signatures":[{"sig":"MEUCIQC7mmOT3wdh75lddwep5z9/LSnruRLj/BGdb4z9vJ4E/AIgJc4SDl1N84C63YQB59JEBoTFU+QHbEs+BILWGwD3zV0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222884,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq7OkCRA9TVsSAnZWagAAXmcQAIcs6ohLoCgfTotNh1B7\n9he/KTA+TGxrIqxPc4z+uxd9LtNpqPCzhC5/3RW6z4StN1mHeuymizPr71Z2\nRIrBv41bZZ5qBOJ7whqWbxcFUV+KB8AOFwOwDAPDyHoW3xNJ3EsYx7jf82jt\n78PqMXfAyTfvqbLbTbOd3mrRDAFlFstVBNk58/yrYrdtHem3HpkqY36dtnyY\nU6aAZdgaXpdswHjg+iZGlypBYgN4LLJwDmD9IyV+Mez6X82YEI8cditpnHbP\nKtNcUuZQ8RZtu5gcXS8GP90CyCz4AbVyqzWLlDQitPIDAppMj01/3510hH6f\nI1Cfq9FuGJrcEuYDoY6Rc3bEmrdXR0wR1XbBXbndpeafCqCK896c8JyKsMAT\ngPJuHS38AGzO2t+zA8Bix6u6x/a0AmIYN2tR52zEmP/bG8tgknZEQ48JD4z2\njd1b/MfQPSnJ/bquenzir8jRkjG3VHbbwbe2yUBa6jXIeywOjyM08TyO/N0D\nxRbbDpKxuL52nyYVCvWx6djRzTJuOZQrHnGKhCaxbDSFpiPNW1AL6BXWQfre\n1D97/UTT8DqNIhlHAv7sI18sJuhU2H/MuNVqytgZ/eGMzWijj6OFtCxYk8Uv\nkJQBXrj3Qhm36x7v9oU1+vggK+o5JHAYt7iifW0P1BNeNDdXhkyDk3uOYsoX\npp0C\r\n=Vhim\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9069940a5133e3be604aa34364e0a05e09afc4f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T18:26:08.238Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.170-renovate-internal-patch-9069940a5133e3be604aa34364e0a05e09afc4f8_1638642596414_0.5472941619895004","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.170":{"name":"@balena/jellyfish-test-harness","version":"8.1.170","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.170","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d3637a0cb91c781ae42655af6c3c3c034265ef78","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.170.tgz","fileCount":28,"integrity":"sha512-iUvkD+Vq+rs7SbXWTvAkmG0zEhN6U35HDS6aXly/Nl4uDzTxTmeib/6PpRABSqEOELkqSk+TRhmVJQaoOjAc6w==","signatures":[{"sig":"MEUCIQDFtx8YLxBoE1gWqRsuVQGRXIQUc2A27ejQt9fZVpm9HQIgP1xSHn6rnlBvr8ON9sX3rN2hiNFG3qS6JydzRyCu03c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222819,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq7SgCRA9TVsSAnZWagAATlQP/RBr5zuYFXS5QoAJwmlm\nbHbImbE6OkEauc0qOmqcj/pvGJk0HQW8/Jkr4AgSsqh/b1P35TcJEEQbpet9\n8t28dP9pzZuj9MYYrdsoFqz4DyXXK2yI0xF/yiPU/m3uTYUkz9upEUgrf2r0\nZXlIvOdYSIcC9MmkZNaGm0cFceS3QayLvXJXp2P77EQrygeRP4GCWyfxBxbk\nsceSvz20SE4D0xcRXlST3ep8Xuwp7Z6GOe+/mT5y+cSVs6mjJ+9yQcE9kC47\n4R7IHik7TEEzXGrss38it4u3CFsGfYp8gz3+nCuoacKrOz/FiQ/gvxVg2Oo0\n8mUptAV/glRlkvQFlFdx8w6ZfQ5S71sjgVWmxpxaVk9hH07F9cHSA7MS8wNw\nHF333YNokWb9IZ5ThVte3CG3nqATOOTRNBFqkdpf47nlkMHcNFzlv0STygDh\nUsY4N6kd482EI7iKiv9D/n6zSU6c0RVSdGaUyV1YTFWIDGKUgi59k00ju96k\ni84EYJv9YYj/3bR0VSS4z9/GigIlfT+4pWE25VzoxS6UYRcygGwX7uRNUyfL\nVOIlKyO+NgDVmps2Ldg62F2TRIEiaoS4aUUoW53GnOgwTi8KeHbqZ+1WptDm\n5fosn+0n8V7qv3KeeVjf2JSP6rLaWqMC2yxJj1/AF7VCXcbtvwOgrNeSqBPF\nslZB\r\n=e9jN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d82dbb31a9464b76db8647c2210a4e4ff408c283","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T18:31:52.135Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.119","@balena/jellyfish-queue":"^1.0.374","@balena/jellyfish-worker":"^10.0.136","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.312"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.170_1638642847898_0.9445262903414888","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.171-renovate-internal-patch-bc02e5d1493c4105c01ab389bddb4ed541cb219c":{"name":"@balena/jellyfish-test-harness","version":"8.1.171-renovate-internal-patch-bc02e5d1493c4105c01ab389bddb4ed541cb219c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.171-renovate-internal-patch-bc02e5d1493c4105c01ab389bddb4ed541cb219c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2364ee7c828f926db8e9fa09be4bb443de114ab8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.171-renovate-internal-patch-bc02e5d1493c4105c01ab389bddb4ed541cb219c.tgz","fileCount":28,"integrity":"sha512-BjGD3HCu0jE7WUzM2bu20DOTp47dvNs5O1adluZfk5+CPRRV5lx/9M+VSjKILDFFCdMCJnlOSn1Up7lkDKbJ8Q==","signatures":[{"sig":"MEQCIDt0KXwV+xHBna5zRkj/jfz8/Wup7eV7/9qflcnCampeAiBKR+OBFx38P/XKc5kjE5yYxKIJqF1P8za9LllmostSyA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222959,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq9j2CRA9TVsSAnZWagAAKSoQAJ0FrT0K/PzlqI71kTjQ\nxY8keOiVDr00pNS+ZJDSGt450AjVraZ+EIfYhWBg+NHEIXUSulJRVIOmQ3d1\nGfIWWQYVrGu45ArvCEC3hnQ4TLNL1l6jNwjKqCUqW+bSkhArn+YH/4dgc+WL\npPBdUDjkPIVRRjfuPc9j3SWxR41YsT/xsLgheUIb0eBoKaiREgPLFPh3gsVh\nPb1880oF6O6XeX++DqG2eQCxYqh9Gti7oFoAdLzyi+q2iealW1ZUrKf9ehxX\nZQaDQR3cZXWInBg97DyZ8EL2rpw6i69v6yrNVjgPD0c2JiKUMwXgJTF1onCa\nV+r1NqTKT8nUh5StMT2ad3dvag8eKlhxT++6VVuRcoxeMTEaBDKd2tBmFKEF\n/7C+bCHMrheCHSKw9ocpfJDzAA6AXIXZC56VzAAQhIPcCQ+3RgKi+czCB6/O\niWXCa3gl39XIQJHQNHG0GpxQfFs8AlqW3T/uyUPY/NOhaW8XE0Zj0WSDXBKk\nssd+rx5tU8i0Z+RSn23bOIPm7zL3SQUthQQTtkLiJrSXQOWXBID0vj/FaUJn\nEd7BAAxHwhjrfZWSI3B9XrULlf5R8+2Wpopsd9xmxhc9XyTxqCsQ3keBHQE3\nD6TM6CqdyHEfRnEPmfFaNnWWdcrLKBMfH2ClrA8ndZtalnFyyZ9ZxS88osfe\nTpn0\r\n=A2fe\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bc02e5d1493c4105c01ab389bddb4ed541cb219c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T21:05:52.390Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.120","@balena/jellyfish-queue":"^1.0.376","@balena/jellyfish-worker":"^10.0.137","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.313"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.171-renovate-internal-patch-bc02e5d1493c4105c01ab389bddb4ed541cb219c_1638652150357_0.7267860702559656","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.171":{"name":"@balena/jellyfish-test-harness","version":"8.1.171","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.171","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc3b2fc9c97feff3621e7ed5eded21c084d29290","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.171.tgz","fileCount":28,"integrity":"sha512-9roXp1mkCprsWxNeFdlTYNRU7dTULXYiTnhXNjz1kBbOBDbHoBdPbv8SONbS2+Yxp209DDc1ZR1xgVhEFf6tBg==","signatures":[{"sig":"MEUCID5bimkLtEbM7n13592mmAet/uyqD5PPTkzrzSqfCjVdAiEA0eeAyHyA+Q3IG1phO07Ak4xNrGB3SLPqMJntpmhaUJM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222894,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq9nTCRA9TVsSAnZWagAAG0IP/0HmxoLaTeLDyo/3Pq4X\nrsW1k2KAGlbDRyhs3KHLHh72chG4e6voCAYUYYuCpEwPMK8Vk28eHoIeWaIj\nzDo3xCbQg0dvvOqLhuQjSCiyL8hrBHehKwry506Wfq0rOfQRtLPiSpgzlqoE\nT6EkMJpKjnyzX/4upBlZ1KnkHE5G50RFV4HbBhKhwzPoqkkjWgghKI7+rnYI\nhqlKKomAx65/DYHZDativeaLqfdJf0hzXDh1XLkHzSIedIjta1ttNOOOMmXX\nJ5XmMI2iarkUezsygGSshySje+A0YKg/MNAiyhGFqFxL3OEMXhC/qq9JfXQT\nQwJ7DuxRuSz941mNimdZlbFkThSOT9bdL2CzjqvTg4cuY6VV0h0gP6Ag0BUP\n4IOKz409vXhL3xZn/8fa48dYHmiFPQHUNiIcLyJzPFXIVkv9XaP+k92N40TN\nqge6c9wR9ztKkmy5AzYeUgu1NWxsd+hPUIh1cTpy5v5WZcNiW3mW4I0T9hJq\nNAe7oRopMVzQjZRcC3Cxtr2z4UV5frzGc/BQTzZnrEBdFV4eHgJ6LryXhJO5\n/5GU86nOA4/68ATJqGxI94o7Af3M4eSIJ8TYnskpKGRUHaRZKa4g1/CPoqFD\nY0CXOMSSQvO0rJqLR1V5NzSwYMKwMSZ/Ll5ePli6hbGC6+1YVom2vCsiQPqC\n67kX\r\n=XkcZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"88141ec6348f80d9f7d2048c8592fe2e6c6d62b2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T21:10:37.248Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.120","@balena/jellyfish-queue":"^1.0.376","@balena/jellyfish-worker":"^10.0.137","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.313"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.171_1638652371359_0.7624075516427442","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.172-renovate-internal-patch-090af89b3932dc0a563bd6c492205162d8c7005c":{"name":"@balena/jellyfish-test-harness","version":"8.1.172-renovate-internal-patch-090af89b3932dc0a563bd6c492205162d8c7005c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.172-renovate-internal-patch-090af89b3932dc0a563bd6c492205162d8c7005c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d53bc28e06b1b2cc548f052dd868cdf286d33e3f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.172-renovate-internal-patch-090af89b3932dc0a563bd6c492205162d8c7005c.tgz","fileCount":28,"integrity":"sha512-khHaCriOdvMeAD3Ck4wogD+RigIcqWQE8TIWh/szthj3DuwfMXWM/IEo+J8Os3x5rKdqgnTMF0wdcK+qaZE5Rg==","signatures":[{"sig":"MEQCIBz6Yq3H7yThbF7F2p7M12aIrtS3GEG/5zLVJ7DuM6jNAiBZ311yT3fi95TZ+pVv0HtvUJQZ76aAbGYr0Mp15Zvw9w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223034,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhq/8rCRA9TVsSAnZWagAArdEP/jwoQ9X2fNhu9uCVg2GT\nruMu7Fz27DTfWNbON9gfPtpKStrEQNEtKLwaghltmpjmm7qVQuztMUjmpb0S\ni75DnPfFABlvoGQzZIIdsC/borjwLU9jmTbrgzBFZRGcjG1hRXoWPZf4DEOR\nqlVsg7lQ1UBs5984G78aga+CvzouXaqFtWdr36eKrcTqbE/cQybLXgf5nAnu\nE/UIPY/C1FaaaDmdl5Fd+jAB78jzp97bl6l1WvZP3bu4OeJLdzR7b4c7ieXm\noAUVgnaOE08cfzPm/cZXzQol2zSHTGJskZ+CaRQb2Fy5Gc1b3Pk4TCWK0jhR\nwaYKl915DanRwhojDusy7tZDU5MwLrRq5Gq6tfK7zXeN51mraX4IIBkJ/HUU\nrZmNOTWPOPtQspZU8+BYWZ1S5HNRGq1CragAM7kcFxUSGlNcbtWBOjpOQvRu\n+wY2VnBw9r6l3oMu2OmGpOKcoHd7YxAbI10dBz+2M3sSYDH7NFSglij8rPKH\nsAMUwbdfUUYzHkgP2L6NtH6lzOydDIrKbzWDMkFxQhVuv8o/SK5NW9k1OWxZ\nf/qchFI0EqZQKl5bM7qkTvKN91bbtBzFeOR4rwqUVu0E+BT/1bhMkjtlGGNQ\nbAfn5hal2LDe9vRzhaNV8OeWGHKw6felCCe+nWcHKoS6Tg+lu9w3KO0dYEuv\nqWnj\r\n=vFe4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"090af89b3932dc0a563bd6c492205162d8c7005c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T23:49:04.545Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.121","@balena/jellyfish-queue":"^1.0.376","@balena/jellyfish-worker":"^10.0.137","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.314"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.172-renovate-internal-patch-090af89b3932dc0a563bd6c492205162d8c7005c_1638661931543_0.9724044033833688","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.172":{"name":"@balena/jellyfish-test-harness","version":"8.1.172","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.172","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7ebb3a7e7992128f847cd9e530df6faae454cbe5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.172.tgz","fileCount":28,"integrity":"sha512-EHvC5PK7YsumuwGfTZrlMONydfC1C9Hd2++nNFydNh4vw9j1XIZ1H3VedQObt/PT69Uc5JaXIOpU9iQ4pB+O1g==","signatures":[{"sig":"MEUCIQCMIjn3FpbXMZ8iysatIiQIhnUt2p3J4PQmnGfbWIRCggIgMQ7h1VZl/lVB6w9JdJtAZrXMEmDxXG2yZ+/iXOxfQnk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":222969,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrAAVCRA9TVsSAnZWagAA/lYQAKAcDhrYchU1LEapJ0bB\nMCLq6iPKQK7eibgyMU893o/x/4rxHDa4U2rmAVC5XfiLYxfTd6Ch/EjA028j\nUDSUCc5VFI2ArqdRzPFlEA9FxZ3ZuXMKxakpdCpYlHmX5v4cmHCYC1MvGzPZ\nOn5ZjqXFTz33NP9DVGcZTcENgY7g+VLpwVSwBu4K6Mlx74Fsdvlgm6m+HqP7\nuRZil4gAmHRtcvi0N/3ISWMmavdF3wKAeF1e8Y3Y41IMpKobYwaXXYCyX+aD\nIWC2pszchC4CTMnIeO/dJjEAs0jBEJIm677Uzk9T4TCqzkEaV7jb9470CMXh\nZpVcHpV+mFeVwa/XTzYIvKhoEiNULPqfiKSMiqbi8jw4qDh8NE/iqeuTWRLt\nzLWkLRk+KX23eFTueskBtWCERcrdyNtDUA9H5UsvpgAB76VI22ZcsIfeg+FG\nI2IH9FDYNFwospZ8YdxIKqA62eUvPT/79ocYf7tZoSMr9VptiWns2DItiq22\nJtQIQbcsJBui3J9uz3O7WOe8wx6zz45+lsmLUyE2kNudWGt+hWjcawFCuh/2\ng3ozunZgzSv/o7LXhNGX20Mty1IsfhvVg9XAUjPaN0E5s+Ql22HxJQiO1kdR\n5qY2M4bj5xwRaQUw8vpPCI1gc/huoEI6eTMF1tkrkyXWOzmD9VHyQpr+RMdG\nIpFM\r\n=Hznu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c5ac80e1a80ea4c48ffa9ce691daf880f2ac8a7c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-04T23:53:57.943Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.121","@balena/jellyfish-queue":"^1.0.376","@balena/jellyfish-worker":"^10.0.137","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.314"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.172_1638662165085_0.01235982414444603","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.173-renovate-internal-patch-e674ec8bcff155121451dab43564bdb2636387c2":{"name":"@balena/jellyfish-test-harness","version":"8.1.173-renovate-internal-patch-e674ec8bcff155121451dab43564bdb2636387c2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.173-renovate-internal-patch-e674ec8bcff155121451dab43564bdb2636387c2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3e4bbd94fa3b1cd880595e026576c9500e652581","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.173-renovate-internal-patch-e674ec8bcff155121451dab43564bdb2636387c2.tgz","fileCount":28,"integrity":"sha512-z9G0Wt9wpsvt3h0S0+NhkFg8P3DyQGfZCSr1hJO5DoUcOpqRNoSRAtA24JPINGRIyvQ2hft3evYiYqWk+qEW3A==","signatures":[{"sig":"MEQCIGEMwmY6oW1ZMetHgcwAUChRmJvN4eWOL5oA4KmFc7XEAiA6ilWGxXfB/QEo+MsWrzeJfwwrBtjfhIWxh8Vqsnpy8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223143,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrBrLCRA9TVsSAnZWagAA/bwQAKF9e1mQVyyot9wDyDjX\nbh0UcJ4QQxlYiA3Cj0fstA94cUOs/YSBexOedSJPJWt/rr/1GELZboSROhWb\nW0p9p92oAbS6k3CQq9k9fBXsJ3gy48u93YBg4PVG6M3b2SHahvTWCf3bzHc4\nM45XOAmw9q5DpOXRoCPV5sdVG0XFP2HunSwguuhiositVwjgrKkq+ZavvDeG\nRHxYlWaUNG4PyGrbCp8k/C4+UphgyHpKIvY6fvpJMsokve7c28E7uz8+MdlI\nBXbI2EdXM0PMjsWFO+maJ+z3Kzwizy+HvWp1cfjBvSjCoyaO4kCF30HsrSMh\nzOaFM3RVmKHuVuBAjLo34rKZw0CAaYAoQyjFOXbie0coaXOAb1FC0KBidVa4\nsiQnLFoiOUtyrpoqQEsPEC3Q/f5oZ3i0Rz/1lzfJyjpbDfdHGNpPHPumpOTS\nziFNpKZiUC9G5Ai7BvyyGPKiByngJMZqvVRoCZMzHNkdhHGNz+PzRwD/TUIA\nwwHcwN+0nqV9BEUSh4/CXMAIyfOzUYGiEh33hkYkuvPp10wqgh7y8nkqkSAQ\nlrr/G8MAKqC9jMD+qhFgyJ3LHY0yL3hJofwlKhqtT6yLQnHb7/ixBfUCBBWj\niTI/w3QVUShO9TGKlYjp5hr/sVOu0YTPM1OZTeT76iPiFR/kFPKGAhpWqWr0\n1pI8\r\n=9nW2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e674ec8bcff155121451dab43564bdb2636387c2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T01:46:40.236Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.121","@balena/jellyfish-queue":"^1.0.376","@balena/jellyfish-worker":"^10.0.138","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.314"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.173-renovate-internal-patch-e674ec8bcff155121451dab43564bdb2636387c2_1638669003016_0.42475781080942987","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.173":{"name":"@balena/jellyfish-test-harness","version":"8.1.173","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.173","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c3a526a566ebd2493b587961a7c5c3588e8cbc9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.173.tgz","fileCount":28,"integrity":"sha512-M6wMbYiUVNClCZag9m4Gi/eq6orYg4XpRDzuTXoic+3lvBEV+E4kvj7yFHCj+cTV/7tTxr/Is6MICyQvNbOg/Q==","signatures":[{"sig":"MEQCIAvRH6BBtQpNPdIjbP5BalwwYxuMAdRQoPB+gNvs5dttAiBFVckXgIC5rKmlMSTgAkCoRQThZ4+Y1SsrvoJPNkI5eg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223078,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrBurCRA9TVsSAnZWagAAOc8QAI+2PfoBy3ZFhr4LZh1N\n+SPyN003kIB81vJxE1Ne3A0vFlow5HkwvBzk2BuWSLclZq+GI84UhMz1PdRR\nZNqooBHuRlhbO0ZCAQbytd0BddWcfOOZdxCWZ8Xb4tspxOxuR172lslPukbV\najrBy99UmbJLKYoHyPXf1qZ2uMzTvQmSeZmaE/LWolWkLP2zUeRWFA+slkbs\niFFlNq5HJi+r9HhSyTBOemOPB+a6V6jYv/4sBqvxrIRb7VVJVwDClSunYi1t\nY6xNkTDnOlSRgk3zAMr2J7/uWkRXaauAfE8y5VRQhkPovktVhhx2+pHBk6j/\nveo4J5K079b62n3R7zqFHLu6OirXwba+S1Z1uBzqKooSFgf+UiMBQr0TSFEo\n++WMVuoMKmD7GwTtB5N43VM710eWpHDOg+p6DA9uV3/MSLxZgtHztSTIrQzw\nQtTKBrRSib/AZE3iwzB+71k/SYMuTjwUTlxO89OV8Ugz4MyJPwYiK6eJ62bw\ntgVedHr5iMvHmBnvzpXVhdH2CVKi17jEwi633L5M5067cMDftmGwdl3A/ZHC\nsbF6dxMt2WYX/bj1uXtdxlOMZ3ML0LcMnmbIVOV+qf1CFJaadgA8+KNrOmhu\n9lWcevkhBTu+cE0EICPRrZ0cvy6GVidqd2zItkExApaXHKhtZ7hvulnokedx\nMYTW\r\n=kcll\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8e6985cdeb13d314657dce126dbc20a133feebd5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T01:51:34.255Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.39","@balena/jellyfish-sync":"^6.1.121","@balena/jellyfish-queue":"^1.0.376","@balena/jellyfish-worker":"^10.0.138","@balena/jellyfish-environment":"^5.2.1","@balena/jellyfish-plugin-base":"^2.1.314"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.173_1638669227707_0.09893764646640846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.174-renovate-internal-patch-9171fa713f3d2aa1515afd96443bbae221628ce3":{"name":"@balena/jellyfish-test-harness","version":"8.1.174-renovate-internal-patch-9171fa713f3d2aa1515afd96443bbae221628ce3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.174-renovate-internal-patch-9171fa713f3d2aa1515afd96443bbae221628ce3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b6238d8b039cc375a5eb26b7f66bfccc6bf32a1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.174-renovate-internal-patch-9171fa713f3d2aa1515afd96443bbae221628ce3.tgz","fileCount":28,"integrity":"sha512-BgLwX5n4YFoLHQgLbee9MqYIsRhIqvnfpqB7WuXaEReCqzuWCiQB0K3XdehXownFAkPPmd+nmYC6D3ZqaR7fMg==","signatures":[{"sig":"MEUCIFKQTvi9Uz/nsg+YQZ3hVrMdV8YQNTGgDZlz7yYO5AqpAiEAgxjjQP0L7qXFg47JH6whKBYfsj53OHv9T6BCsuppNA0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrLHrCRA9TVsSAnZWagAAWX4P/1Be1syUL1WYja1xjPmn\n2ww38+9IyrJux+9b7GVMORvsTp7QgRcpjM0E8O+OwZtutGtjPpy+vxB8lTu0\n0N3TDVZGUGpQN6J3UHN1wiRs3d9wA5udSQKeOtVUQbTagtwMVvuMMQcwTJj9\nJzYCXGkmGFmOTirZeL/qUmfzZPL3fJF16bmdH7U8zz5E7gp/7tykqKvMoYA5\n8tllehX5bTvf8Guyv5g0GLsHq5qOhzUKf4shYpYKaAno1nmPy/WSmfNSoNi0\nVL22wQaBaQQBfbKqkVU/zsh7rGdIYVx2AfUyI3BWhF0yRhU6wxYJuLjQsNnY\nrds6JolMMbSaz5AmoT5o2EbkBMmVPNuzub/az6u5V61FKimlTUUSB5w5bWzy\nEt74v8DCcT7CBVRcdDo6z9alzgVyvsHzVOkZPRthL7VbHuFXo6UHyHehj+yu\nmtbCaSgkTd/0LEjyHlDjrCe1SKt8TMCilZ6EHWukpgumMhUK/bgGmuljtJyh\n+kyxZOTnWpBwV7HUgLNPsknb5XNunykUBk8fIekGytBlabpRAM9Kc/ZkBX74\nzLLIGjP/xKBzPK+kQQU8J9Adk7vSKGbT1ubkMGuLy1etOEsMK7wJkYtD/4++\nPO8oR7tQlerAtPV+k9bUOtLQDaxw4Fwv/gBc9pbtpJqqyRJblWUebmVzn/1S\nvu1B\r\n=HV5Y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9171fa713f3d2aa1515afd96443bbae221628ce3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T12:31:20.904Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.42","@balena/jellyfish-sync":"^6.1.124","@balena/jellyfish-queue":"^1.0.377","@balena/jellyfish-worker":"^10.0.140","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.174-renovate-internal-patch-9171fa713f3d2aa1515afd96443bbae221628ce3_1638707691238_0.8805170849903954","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.174-renovate-internal-patch-a9d6480e983c0e50519bb97515c73640ad811955":{"name":"@balena/jellyfish-test-harness","version":"8.1.174-renovate-internal-patch-a9d6480e983c0e50519bb97515c73640ad811955","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.174-renovate-internal-patch-a9d6480e983c0e50519bb97515c73640ad811955","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9936853a8470069c13516efd9e5830cccaab6271","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.174-renovate-internal-patch-a9d6480e983c0e50519bb97515c73640ad811955.tgz","fileCount":28,"integrity":"sha512-KupkKlok4bUAfWUrKKvXNlbRcGy9jgD7o0+t+RWoQ5KQ3gqOLapPAPogRjtK9lcJueyeoU8WBEptjEcdYEtwTQ==","signatures":[{"sig":"MEYCIQCJL4t1VbiwpV4Y56oEMw4HpVweZIzbMoYgeaO3igit/QIhAKyXp3wuXEzCnlApzbEXnn6kRVj/X0YPIjSjwe5k6Rwy","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrLMPCRA9TVsSAnZWagAAIqsP/A7AB3/SXcV0oZzJZvkw\n69bkgZOZCEe/xQgbVSG7IoQsPkU4UlwdNZt5hKkRQLqec15ikY6kC3wYxWbj\nRdo8vDcNcUtrR3jh0BOioXsEF+QLbzx1EsZeUpdfZwosM1wU0NYZipbtVQWN\nEGdMnBMqDDw8HCb7+Hht1ETB2ymBKDbnDxl30ec91DgowJY8gPkm4aAkJQke\nQerCBqVJY2Ai27MkUbDDopilmH6fFNDL2HYMfsmhNJP8gCeNbTAiyWdjPfpX\nnTFiNVxGRYWLPVl4RL2TO1Z2PnCh+/BOvmXJANOwqFeP8bLGmotandTgNGWE\n3fcsSgC/6OALYFayD+TaVbg54AtE4KXpDrQWcW6tpv/PqqV3ZRINT+D5Lr53\n9fz2BOdDKuRJL/ADV5E99e26uFxqSn4zg65WRDBQ5PmGV/ABkwCSWQRC/Fek\nu1+Nj39zdR2FkYesSI3APjC5z1SxgO3IAfuBamqy3aDOxxwJhCSdcWLNnuHn\nHrzIqWTtucx1yrtX2BR0X77r/7o+mV2EEME5wI00gRs4oG52t0W3nMoX1PtP\nz5oSm6KSYyyqLJkGMIwhrK98W0ASVSVWXC+YpTYEGYx9Ve3EndKsBQn0SA39\n+a0ageDlDk98Dbs/p5v9GyUare9XITJvr7tXjCfevAIqb6tUnObRGX4G88MH\n8TsW\r\n=RwWi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a9d6480e983c0e50519bb97515c73640ad811955","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T12:36:12.333Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.42","@balena/jellyfish-sync":"^6.1.124","@balena/jellyfish-queue":"^1.0.377","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.174-renovate-internal-patch-a9d6480e983c0e50519bb97515c73640ad811955_1638707983602_0.9126544029169943","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.174-renovate-internal-patch-434feb55002987337556845fc6c56968fbb4b3ff":{"name":"@balena/jellyfish-test-harness","version":"8.1.174-renovate-internal-patch-434feb55002987337556845fc6c56968fbb4b3ff","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.174-renovate-internal-patch-434feb55002987337556845fc6c56968fbb4b3ff","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c25919085368006f789bf7878d7cd10417a85e65","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.174-renovate-internal-patch-434feb55002987337556845fc6c56968fbb4b3ff.tgz","fileCount":28,"integrity":"sha512-j6KJrcx7R80/xSWHPVgrUtO8b1L87p4c9QmUxRCz1pqC2eJxKEe+Inhu5zATpwRTCQZRnD2hnt/oEgLaD+lCaQ==","signatures":[{"sig":"MEQCIE4/x+E0+uoKd1kDumJzsL0e7GqudCVnYaiawxK3zajwAiBV7yPe+5fpSRoyM37iSyLoChuywfbwzlw2AM82lRyBoQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223218,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPYsCRA9TVsSAnZWagAArosP/3H0NiAVTJtgg5aFdGj9\ngHr2Ndwq1blxrIdKzlLKtOf2zNprM4AuSZoEn8a8YbVDhkVKwcLwVrJ9CoEB\nEWsexi+vaqlbfNP6vMuuYP6zmj7auGb0mkkzpcVr2msV2Xp8ybpAt42Ugif+\nyNP8Ng75BVpOvTovhzrzhgL0h6+YaBcm1+OQxGSn/1ROzXHZHQxBAAFWMIin\nPZX3vbwaEmNDdz9g3cKdYSp/wQe0iuekeT6CpqzAdV/W/kI4IKM+dJmw1Q3T\nmTdPqSLSAFRbFIEC2H2Hns0iQPh9C1uu98uBHY2uljVRvHdCa4TtKqqBOWeF\nD42ZodwCbMZ5KGaJKFu0ifbNfVTuFvr4l5lWpSk+j/VzyG2KxZ2408gqYdra\n1PVRBm/C579wO4YnCEWs/GOv4GdsJV3N21kua5qv+zrtt854yrGc6sKesGRc\nVc3T90O+/oKQWFmDU4fP/2Fdkl0QDCeYGmNE60W2ycbMYEZ9D5twytMVjdxh\nsraKoqWmj8S8mmkzWZSKNtlnDgj7tfTcPucPXKkapiEZSuVO7Ql8lo/zw661\nBoC07ocn9655NQjRePGKsv4LUFa6VhNbHTliohqVxbBRAh36AH/Iq31wFT/e\nfjQQBEYuqEJ65ts6q2VWW0fpG5Brm58TRkmSooLwuIsqELzFkfMw1RMQ2GFE\nbCqt\r\n=mSVq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"434feb55002987337556845fc6c56968fbb4b3ff","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:22:17.569Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.124","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.174-renovate-internal-patch-434feb55002987337556845fc6c56968fbb4b3ff_1638725164311_0.3022185942419242","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.174":{"name":"@balena/jellyfish-test-harness","version":"8.1.174","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.174","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"43fcf2f5741585956b1c75194e89a8ba63507616","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.174.tgz","fileCount":28,"integrity":"sha512-3IBbRwXFIXTMvxAVqVryS5gpq7GhZeueQ0Wg4eUsr2ifdie4POx9Fqzv9LMIkg/wMPboLYRMZIUncQWWrH0/3Q==","signatures":[{"sig":"MEYCIQDyc3YXFf88Xon6aRAqXqMg0SQSKUfIWQdVhantF9ygVgIhAMwwD2i9H3mZ+pgZIazKjeLoPOwP/yxVz063cImqcoHE","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223153,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPcACRA9TVsSAnZWagAAvZMP/3y470oxyFW5oHTw92EY\nDIcjyXm9rlSed0XlG5DqscqqjP4v9gzyacFSONKRQCgFmFGRpaxt5hCDd2ml\nhvDtNfRcmcFlT6AZaS13qMXlvemWd67abzYpNKWQdTTvc4vahQOoLjQDnzw6\n2XjpupJQCsTy8LRnEmb0ClIi1vjKzMvcjb0iKsoU/tui4y49/hKtow8EiydI\naDPCtqMZhDVJA11aijepUomB84yBZ7c8SFQwav5dIhKlgalNjZaQBtQpZ4uO\nNrY+gixOU28b9BvzDLpxThCjOjYjzbB4W1b6B9qjTti3+UfV4NZrs5jeageq\niPPU+X7JoWEH6ISw9BUQB2N3VcQR5gwQ1FvAIn7NEx/BSDYddPA3kvVEN2n/\n1timpA9EumvYflwJb40/3fXFNj6YC9FE16I4JaMbNtqxKnrpytXgRHyP6N1w\n4fYZi2zX5X42R+HDGFKUle3XtX29UeOdP9Ec3eLKv4q3if1SQ7kIQHjy5zpe\nqLaHsjqxaVFVJm0uTRO0CLJUaL85fKIaUCwBxeDRPFvy7yc3foa0CG5deJBs\nmzbf4f3KUHBqaZsL8/Sd2zlnmZCvY3JWxVQuSu/jF3Ls3rB10/2dsVUuUawe\nMIbe8PApfXUgRH4FQmAteJN/cRaWVxk1SKvjBHuJRc7itw0PyaopqpX4d5a3\nBk3n\r\n=aZNk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"32521ea35577cbad11ce8901117cdb30d71b6b5a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:27:16.987Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.124","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.174_1638725376662_0.2219193798464183","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.175-renovate-external-non-major-26e16c7759ed74535f2c8d47d7b22bb5df101c60":{"name":"@balena/jellyfish-test-harness","version":"8.1.175-renovate-external-non-major-26e16c7759ed74535f2c8d47d7b22bb5df101c60","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.175-renovate-external-non-major-26e16c7759ed74535f2c8d47d7b22bb5df101c60","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c82d67c4a7de962b2b123b5d575a5694d5cf56c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.175-renovate-external-non-major-26e16c7759ed74535f2c8d47d7b22bb5df101c60.tgz","fileCount":28,"integrity":"sha512-UllrgHH6H3lPt8lNMJliG1zW2d003p8dchh1Qx9gr2KL+AAE3BBcaXOHVEB0fXjLYzPRdn5NgijBpLPPSqL1BA==","signatures":[{"sig":"MEUCIQCBFVh9W6jSHmySyPnpAT2utxAxKe81bmwiyc6uqAy4EAIgF3/Qyp8X2COEQn7d9ZzgeTHSTX4S7z/na6icekwkM30=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223312,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPe5CRA9TVsSAnZWagAAo44P/1d0J9eG6o1xtSgoVbQj\niAclYz9xVvSS1nXOde2QxDD6DKDMX59zLF9Bm7umwURDd+XRpneadSy98nye\n8yrGGoGsbcRBULN1r6jPWi5QQLzfxyYXdjBqt16hY1QY9DKKGy/Bdr3fcMLw\noi5sFW2IQJ9+HeXe+Z0ZnFjT2gW7lPdTUmuyaFMMMr7VJ5SEkOICk5IHM2nc\n0x7SMu6jJBXb5oWGMPRbIV4J0VitdXuCt+f6vIEODm4ENuJU5Pg2vSiiVrii\nZ16sSo5QjTIOo1IKYGQYLmoYIbYh7fK+vDMUlw0zyGpXji/TKBLtIo+wBqYF\nMiKyXJ8wVCKyt47bhBvExBFutthi2KJKo7//Q5XcdKyIFpxrKRpSNW5vmSBg\nOqQz3CjzVEl76HzGzthYRGbsnur8GP+dqT7CJtk7gNI0K7PXeCxVTr8EfaFF\n+1GQOJr0+rfr+t//DLkay4tDNhHzootAwdQ/wePoQXr9UDvhNILDIhgwFkze\n3JPwQQHUv6yav/KDzaQtpKC4G2uChlHApVX82IHXi48waj1oPTAjV4XqoK8t\ngmGTs7ZCsqD+HzLZqVcOW68MgHa+U5m5xL8OmFvK+bDwbd6FMpYgM/1c/yGO\nYTAfTba0wAShQ0e9OgF1lsP69HYGAQhPNa6w03DytrifodprnAMZaBIFicc2\n4eUJ\r\n=vMaE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"26e16c7759ed74535f2c8d47d7b22bb5df101c60","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:29:41.188Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.124","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.175-renovate-external-non-major-26e16c7759ed74535f2c8d47d7b22bb5df101c60_1638725560839_0.5388536726047801","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.175-renovate-internal-patch-a2201078d65fe69990ebd209919b758bc05d679d":{"name":"@balena/jellyfish-test-harness","version":"8.1.175-renovate-internal-patch-a2201078d65fe69990ebd209919b758bc05d679d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.175-renovate-internal-patch-a2201078d65fe69990ebd209919b758bc05d679d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c02a2741297a0c1d8a4de3db71c1a3c58cd9fa07","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.175-renovate-internal-patch-a2201078d65fe69990ebd209919b758bc05d679d.tgz","fileCount":28,"integrity":"sha512-vhO8Y8ZFOMqhBiGC2XnAmem8iZaENGCfPN1mceN6pAuzjv2RTBUbrpLCfUjtM6FrdqEGeLNNjdFMMmcex3/tCQ==","signatures":[{"sig":"MEUCIG97wViwac5qxCQWMgwgcJKDbPpoOXWVcQomaNOZQnfxAiEA6R8/YlKAxtnZODNI+DM51yZa8T26Fk+SkthSY45uBvk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223324,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPkCCRA9TVsSAnZWagAA5EAP/iy+r2S3Ov8JITvD6/Oi\nXDFMpQg2iFOK2CNDkmxhIE7VVEXbqQcfVzoJ46u/luUpYstODsvdnYYRgE/2\n2i2I/Nd8ZHFIy1hWmY3yaTiQk59nCxD5RIn6AZ1niWq8DrJ/tcyK+XXl5Gry\nZI6MWzFV3bfHxJ3iwzUENSBvRdmNjup/neTdqjlHCjXbTEpFLIinNlX2kkzi\nuoRqSHs8SmXFtsTwWbFKqvipCe+CkMuy64oYb5IB67CFrs4kf7gMRFFIo69Y\nUp/SVdSnwvfBrrgTwVQTfbsFYuQs+LyIzs2OqNiuLbq+dRgdTu5SGYDRi1WM\nzpCE11rXwRxmx92gXh+jZ93FNdGam2yYSwH2q7PAWSiefZm0PwsiWKPinjmx\nf6G8xDxiB6JQDeGC/b8zFd6UxHLyPEMEg7YeZBWJ67glnjxyAP9Is0jPzCsY\nwAUZLDCLkrA1g54ifQBiR6o7l+Co5/diHflHQT40bgjFBCQY07WsBRlCAd0O\nUiilj4CKO7oQSHaUOvwpyW5ywAbWMsz+iCZq0Fp42Dv71KqEkImLGKWrEIR8\nmeMU4muyyzr3TEfHxSEqFXfbrz81Oeq54TC53OwznS6SztDuEtk7udh1f4LK\nROAtijRJnMaGngs5K+rBjTcLYqONE45lR1a+huT1IztXInwWt9fHI9ejd1ca\nusNy\r\n=iiEN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a2201078d65fe69990ebd209919b758bc05d679d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:34:35.209Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.0.7","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.175-renovate-internal-patch-a2201078d65fe69990ebd209919b758bc05d679d_1638725890728_0.0511043469693786","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.175":{"name":"@balena/jellyfish-test-harness","version":"8.1.175","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.175","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"34e88aa9ea0185c582737e46e4f170b7d351a7b3","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.175.tgz","fileCount":28,"integrity":"sha512-4pM+z3MxN1jcU1qDW+mJpLWsnGX+NBNMum2QpXUzUpQh2fatDuTen18/k6EUhCmwEK2JglVvlx/9du3RFLaqQw==","signatures":[{"sig":"MEQCIB36stQWO31g/umASFSo9KPGkWDhoRYT2R2H82H4VZ8vAiBMm2vouC/3oRBzCKC4gETNJjwcTNWT5xkLlZINhKz6YA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223243,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPlFCRA9TVsSAnZWagAAYCMP/Am4K+EQUtGJEhT/d2MV\n/cXmbDNUL4G6o5D+vLelTQIdcmHp9jWFXuyanbKDqH/ARJnpnj5m9IVJ/uR1\nNu5CG5v7JRWNfV3gbcipVh5+fgiY46NBftT5fRDbDE94CAqmxu2FCgf2FXEQ\nq4mwqs+Hzb46OPbx+Eh/1JCoVmkZIbmuMjc1MBFDkYHnEePg0u/6pUHNcGyx\ncVKobo6kjVboB9oD/EiDDlUT/CoJZiNxSrdzx+A405yShi8RtZWhld0Cl02f\nczbLPBCpMvDtsbBaKOt7CTmncoOIuNuKQDrYx6E6d8ElqlBsvCW0IJhTShsT\nAwzn2htY18YO40VXvwgYag9ZYybLrllkdwsiV5pR2JHa5Xke7WyeUtmR8rzo\nsW9O2igoGPRa+J6EIOQwFP3iplZhUZHs9wluHMutHodrw2nFlpOeankmjMNV\nR7WO9LJSKLXSwrcR+Oc3TLaD483A6tK29xpRsRyLrEVPqqBoHg+7LmzHPFGN\nsHLejf8nM67VwzMXsDtzp+5tPa4njS7O1W7qYbW7HVh2MLjmWxr+v3nM2Crh\nH8GH0p+l5mD+ZUDLUdcNhDtqx+YSLTc0WEdPnGl+5y0GugX8FKFd53MbJ7ny\n9G3CU+j2O61CfZ55xixaKZzqxthsL2bN6Yp23/gCwOAmhsWUNeJsYs4vxhTC\nPMAo\r\n=4D28\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bce9e5abe9b7f3640e2e8f6c0a04ce3c9e535292","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:36:45.760Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.124","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.175_1638725957746_0.4377997447653632","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.176-renovate-internal-patch-b649c632b98689a8c9e0fa50c73f1f058e004b01":{"name":"@balena/jellyfish-test-harness","version":"8.1.176-renovate-internal-patch-b649c632b98689a8c9e0fa50c73f1f058e004b01","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.176-renovate-internal-patch-b649c632b98689a8c9e0fa50c73f1f058e004b01","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c1948ca71f2f1b37bd0c9ca22b4b12f769190184","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.176-renovate-internal-patch-b649c632b98689a8c9e0fa50c73f1f058e004b01.tgz","fileCount":28,"integrity":"sha512-YYD45BIGm9o838ORQ58vwNy3M7N3qpMONtmb+Yx1yGWE6qCYr/9mTMTKOKJO50iW37f+Wn4h0/eq49Mn4mTPRw==","signatures":[{"sig":"MEUCIQD7g4iTHZOD8oPdsjrbFXRLU0cdsTBqVc9EiDtmGMPNjwIgOe6pGMMMq6WHe28FeksY6tEZ+CZewsqJPIZXZiW8WgE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223414,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPqoCRA9TVsSAnZWagAATjAP/iqHoZK3HopKtR88nzMx\nYIMAc3dtb7WO6VZ+kH5BjFIE+d/EMXleJbAGjDIz85pdaO+M/ybqg/eoTjcv\nBsNJl+8ocdfJp1EZIS4ji9RLlXxn1mN7do+423oL6hApdWyXm4OpNMza6vCH\nofjERFwIAXNbTJ7CAE7TV/nYKfzd9rCg/R9f/1fkCgAVpbc4ic7DsRFGkBcx\nbrSFOqRTqfvEbs8KVJHvSqPWU5eHnABJhg9413p8Hk0GSC7R8OF46IKr8Z/o\nJ0hKAgi+YrPiDqVYbDDrHXiQ9SR8gCtv4KOrJi/8rH+ok7MVxYEnvxM7EKs+\niD/d3HYDRCPBvvvfYfX/x6MGMxJfWquTf7vmcO/pA8hNjlG0eKwpQtOxiPTt\nH88WKW5avphxZcxdXZIBbgCaTkNzHJ3td0uRHdk5VOF9ldmOH44UXKIrvFaB\n6l1zgXiAUwr7z2Hs3C2PPkgrR5yGDVzBx3BIKdpOrtWK5PAG5SkcfzI6mBol\nM/HG8lJiLMeK2D2rEjy7EJwSqmsLBrS6FZQxE0P+sIoWM4Y/YRCPc7lF8Cxt\nrB+9PcKw0UafHRCbfQHU2V3Xq10e3DyaTh5UDJ/39480nm2zP3U8NR695Xrx\n65Jmk+NWu/jxxZQ/hlug7jk4XlSmbgiWLw/OS/B/ROxhsh6gy2D8SPeCwyVE\n89rS\r\n=xzMt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b649c632b98689a8c9e0fa50c73f1f058e004b01","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:41:28.706Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.176-renovate-internal-patch-b649c632b98689a8c9e0fa50c73f1f058e004b01_1638726312396_0.3705114606025155","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.176":{"name":"@balena/jellyfish-test-harness","version":"8.1.176","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.176","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0028a2d256b6b51f995fcbd491f63f9562b00064","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.176.tgz","fileCount":28,"integrity":"sha512-8OiFZowWvYWcxqVMRLWjvYWrO/4XEZbkYbGvxAbHluvA26wHmjbOtJQW8QxjSOM2Jlfy7QREyWZhXaPbxiZAJA==","signatures":[{"sig":"MEUCIC992ijSIvWwEVoUXUVzMtgaAaWE5nmBffwRIA79cD1AAiEAstkPPl6yTwo5jGOM/XZUwqlHrZOJlbwroVJOgsGG8c8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223349,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPuyCRA9TVsSAnZWagAAv+EQAIXrRrGgD0ZqNjXliBrK\nmgWPMFYa6goBCSfzlguFXOWddIGDe4c9Rw9mSHW8N6N6emtlj44CRtCAxOZB\npJVnUN/RKk7FNoJ8evdT2WD+IgosmW5y9zqL1oBWGaRkNP7sk0sZKEw52AhA\nBhaiMRwiFvW+08Byp7O6EVJrjrAs08ehfhRe7SRktXoI5PiRAeG0i1k9idvZ\nlA00Mj6/L59t4oKIeTcg2t0OJ5zFn3mJDhy4hAdBd9vRpAYqoQB+u20NDI9v\nIkU1hwZl19feIafmy72KB6Cl4VESPLp3aN2W9isJ4R/lSoOv3LsYwER542+h\n4asoPTJfVGsZyOfy6B9vYWFv1YTzgchcZycj2ns4RspnOYKGEpz+Q/Lb64wE\nzZVRgtU8RxvYd3p9ZKGvHmRPg+4RqLM2OZ2/JpqhlwvT9R8Rj0udTlBhVf+M\nU8wYWuxcjnuVAY/WvqdgcLbfuEBlLPenwQMFuR5Zu9z7rsip3knqHZpEUR1Y\nxQPaG1AmYLOVX6uYzTqjADm0wmjEPxKmUQUcubzCFfPtkS1lL/SRgVeJe0k9\n3459mPDoMTj3Bc6V9C/Am8ZcTLESi2TvthcS7omwm1ukR1j2CwlRdvtUtCyU\n6pGTfTshdubYsgoQQ44sca6Mtyo/L4fxVSurnSYsnkdRKWPWhNLX9aHzCMCF\nLHPv\r\n=PcRM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c473e4c3a4820365f2f98926dfbc67b1e4f85d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:46:54.504Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.378","@balena/jellyfish-worker":"^10.0.141","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.176_1638726577964_0.6391574200944121","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.177-renovate-internal-patch-3d65c57c771006e4ff5299eb1fcf9ce576ca5873":{"name":"@balena/jellyfish-test-harness","version":"8.1.177-renovate-internal-patch-3d65c57c771006e4ff5299eb1fcf9ce576ca5873","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.177-renovate-internal-patch-3d65c57c771006e4ff5299eb1fcf9ce576ca5873","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41bc49ba235b4a19ff4da49800a9891666e282a8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.177-renovate-internal-patch-3d65c57c771006e4ff5299eb1fcf9ce576ca5873.tgz","fileCount":28,"integrity":"sha512-5bRmmXr2sjfM8/Y0SfBd0wYMpMpC3s0LM2ypykPbu7NbUbE9greCjpYbaommxvSriJJxxyeNsqX0A/dIsmNrdw==","signatures":[{"sig":"MEYCIQCKO/mMxhZX9b1XrgBcjzrdKDEmAPWfQpX8zyx35Vgo6AIhAO8RJ5nBkMRBzK7MpLxqLXA8QPGkcAmpN1jkn5WW9j0w","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223489,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrPz+CRA9TVsSAnZWagAAc90P/jio/kdR8Kcj16w5TCLg\ngq/sb/8EnyzibKEje82/Iwb5+0pqXgigNynV1g2SVU86T1BBzBSQ8NBIW0UL\nyBoaxOamKtr1S4UdqBWzUdiFapin6O4KYSCDP5xh1G4c5bsb0kyV7Bd3WDRS\nfnjwSZLLbGzelC02pDbJvBsPXhHueq7xzU/wFW/zDtRhfrxxnUpzYOuOYEuH\nR+EFm4sP66FDQ77C1Wvwa3Rh/Rvb0JqrcXOOXSSjl+WD8QFPtj16ngH8f6bz\njG2ylGvi5zO0wOU+QoWKGC/WLwWCXmRnxN5dR6caGlKU6PVhN65VpLjvyayg\nv0j9iXffdVrH7LdhoopXdE0rpYDtyaCfSPi+Cbn8xxYUZC1mi2jf0ZPxrc6X\nK+qUnC+98Zo2DdMo0AkdGEmkt1LGi4qBBhv43D1fiAd2RXVuFeXwWI44xKIN\nFvPYUxV7CmRT08DPNSGVJgo/r8S5VBYyKA+HVnrjphwwcXZ/l6h/HJMmsHKN\nsub2mv35uNz68Ftf3MAY3ZQUG1uZR7VuQwG+evWzsNRIe/Wu52L/FRbNUMEn\nB/QFy9qrHaC/opL8yRk59H6pifIPVz2M2Dq2zEa1W78ppVyZRE0HEiPZPjec\nAQtGQAvGYq8dSD4oPDBgw/Xcx6+RxIoUp8RTLUiu+kjTtySIfEyzOWddstLG\naPqe\r\n=e3nq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3d65c57c771006e4ff5299eb1fcf9ce576ca5873","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:52:15.596Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.379","@balena/jellyfish-worker":"^10.0.142","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.177-renovate-internal-patch-3d65c57c771006e4ff5299eb1fcf9ce576ca5873_1638726910650_0.2338800858214669","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.177":{"name":"@balena/jellyfish-test-harness","version":"8.1.177","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.177","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3063acabbe5707f029c2946658c2a14eed8207f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.177.tgz","fileCount":28,"integrity":"sha512-WY224UCdzrfXwFmNpit9Xc6U4k3ToXuYtWzljCX2qLueHuN8wZObd45NrLfcgvIjFOBLeOG5K3v4008a6Akb3w==","signatures":[{"sig":"MEYCIQCnyb4Xb5fv6kSoTmp06nELLbZ5llf+/AI/qLWpM5dUSAIhALoFca1Jmgk+UeeBCFfXbKG6MOu7On8G233a2iPNb3+D","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223424,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrP20CRA9TVsSAnZWagAAHiwP/igyzy939rlTL69ksWu2\nWEQ19el5cIDEPradqNsnBSWrhTTRV2i7ITViFVdh8XIiKNSvMDditq1HrEI9\nIyO5Q7tqPI/96y4VAfADsBtIrIMkzKnjUjWZcLE61+0+ID24tQEREKQgcxZC\nHvXWI76NdGRst3MzdgMbsGKBNGQ95xWmm7ZXO2nd8uGpJy42/khm4/3cJlX1\nfrspg8TG1+qoLkmvJmxie6C9wCumnNBPVtDUGt6dWpibFBSxzE4Uq2nnhG8d\ntQKYofqunyn76oAyp9BpYkEhgtBimIbq7YoCmwZxU7FkN52VPwgotLi2sp1J\nF36X6s5cCtmk/kDnEhlZCP0s8Hu3E9jVoXVLreWgFCHg/jWjqmZOWcpnK2Jx\ntAI24px9B/aBvK6W247NHoZiGmy0uObsJANs3Oa+7qKV2UCS4DrBBG0el5bL\nnxu2KcKoHOrJhDLF9sNZZlIqtZg4P4V1MUNmZCDZovC4jZFM93C9YaSUKQfu\nnC+5gnsR7VvfCwf7WerJJZS1KY3wxxycNinrH1X54Yzw/9c5kttGc1Um4DRp\n4jgbG1hDcrSmgTAGg4lY5g7esdnO9/nJUtJboQPTVxvkNVzjqSpTPxdUAC3J\nqe9xGmwONXg9TW6FDjwew3/MsQAkvgTSnel6kC27y5ojpyZ6BoCiw5HyDBSp\ntiOC\r\n=joxv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"472be148c0dca5afbebe3539358a70421253aa6c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T17:56:02.081Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.379","@balena/jellyfish-worker":"^10.0.142","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.177_1638727092253_0.6365191375607062","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.178-renovate-internal-patch-c4e6c0b1a83b910638d5c787a440da1e833b670d":{"name":"@balena/jellyfish-test-harness","version":"8.1.178-renovate-internal-patch-c4e6c0b1a83b910638d5c787a440da1e833b670d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.178-renovate-internal-patch-c4e6c0b1a83b910638d5c787a440da1e833b670d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e67e36f32abc627d6ab6c37fa7820762eb307a7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.178-renovate-internal-patch-c4e6c0b1a83b910638d5c787a440da1e833b670d.tgz","fileCount":28,"integrity":"sha512-Vsloc7HvFsH5Fu+KJLkL/nfj2dmXVlIkshUAYLtwAylUGdXX6WNSelsA9AYaz/bBWCdu5ewO+Bar8fqHHG+i9w==","signatures":[{"sig":"MEYCIQDLx2r+q9d8LD6/X13vWj1WeLhAUiJkhzZ+wQkzj6uyLgIhAIOmc/ePnZCCmf+0fMD5k+VLqJBOg8syZ/xWD95x+g6U","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223598,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrRV/CRA9TVsSAnZWagAAoRcP/2ZdI3iUh3Fx60z2/WH0\nhL9b1/KZ+Z3zx+IY5GxBh6PT1DczhIri3Eif2UOo7awMQ7dzA0WRDfsXpJRC\nCh4NPmQSgb7mjgNDdu7gkEFojjo7MYjcqGoW4jKtOUHznlGu1a56ArOJZ26d\neRebhLAm0Su2pO7G4YT5JlCFGEkl7S7P5UABuBJgoKRidD8I7OJyhXCd3681\nyw5JAZbyc2rqDeHMWhWPIbq/tc2fLsO8HfmaSeU7Dfgqk4CcVpg5ZiwQfDvS\nJO/Coxmaaw3MCOmGi25o/uJJ7RFZVO31wchZhTIuN6Gu8USmoukiKlMqKO3N\nu0L+3n/v/y6y2JZ5DBvs8U2Cc0SDE7fO6eIZUwLhFijVMkXWG6zMVo0GiS7W\nMYW2SPxp6fPu0JoPCkASUjAkdYVnFBS6DFTD0FD/qy1DjodzNKRIFYLEiMOo\nL5FwnCPU8jxqGP9LlP7GepZccx2kOZogY8ObmeRGtAUzgT+s1scd+LQH6bG0\n0rFJKfvp+cvYHQAEQYs4Aj3IKRVQimmeU4zzy9ZzxYOSMYjJ7COnDUm8UrpC\nUyzRtUVMpedSqCYaJFBDsXC2S/E32YWcJIMn4IjwMqLZJ27WTSLBD0ItJwI0\nkh24gANZPQPXSCDz1fKLTJn7SSGnZ1hXfhdcW5vSEgq9g6nxTtTzeK1y85r9\nGe2E\r\n=85YV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c4e6c0b1a83b910638d5c787a440da1e833b670d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T19:36:20.646Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.379","@balena/jellyfish-worker":"^10.0.143","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.178-renovate-internal-patch-c4e6c0b1a83b910638d5c787a440da1e833b670d_1638733183101_0.2735545302015321","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.178":{"name":"@balena/jellyfish-test-harness","version":"8.1.178","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.178","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4297075112ee119c46ff06817ef1edb9548c7335","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.178.tgz","fileCount":28,"integrity":"sha512-MNkpxBLqqgR9xURAgXxaB3bDbsA7KyTwl1RxNEvRsALRsAcG60ABHMA47/3iUxr8fklMhGrvjCHP1kFNyXvLyA==","signatures":[{"sig":"MEYCIQCWjB2enSzsZcyodOgpySiix+pGaoGGi+kYxF9/I3wcvwIhAIF+vbcz4PdFjTY5zce30dRaKlRBsD+0jXYl7h4rabLS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223533,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrRZhCRA9TVsSAnZWagAAHzkP/2C3jc5cfIuXOqs1yY5d\n+bVIIj0CViwKYX06NhhdMj3QOb82yygBfYppu/fAvCOkahwF2U9ziHXs2CZK\nuG+zOM56qGSNeqNEnbpIc1JHIvr88QgfyKFD8FUvqijjq0UCXClSkc7wSV7x\n583MYiVGfQ4BYmLdoax5wAXrsLYxI0rGgbwHri4gt5OGEHTq5gVAOu1rJuay\ndHAhE9Sgx2cahGgk4msDyw4F0L+JXnTXTscC5MjM/eQFYtUWdTeAwMcn2bEh\ncIBH/q1Ecf0EPdjSKvaKx8Kq8L0UpmKtULfzubqsihdQcjcoPqPrcB77/443\n2nT0ZH5RgWunOhS5ndhuHi9kNIX+ZQSlYYjC3CjMUyIF0OJnUq2Aktr/NPqQ\nOyUAfq83Y+hGCgolb8cDmXegyJbhn6go8SgqkcOQySSIPnpDawiBNdtnwKvY\nsD5J2c7bQqGB43GnWvvFiJZTjpD59YUOJoLXPt3yhZlDwRcQDcE28lMel4OX\nnOIRhcfJoMo2JhomZFr3A9wzvnVY94DpcVsNXy6bmEx6K6q0RKfWoxP1bFzN\n1tryRAoRx7iKSAtq/R3me36JTDNsRyzq4nepj8qy7fPHg+C4bVS1KrD0kP0N\ncWgBVEWz8wC4sdO7zXvH9MQvwnVIbAO0/ucH8DRQz3OGDjeRviEzOFRqclCO\n/AGZ\r\n=MBtK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"af8d95b6371fd012726c2bf6aaa6fc5963264069","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-05T19:41:31.705Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.43","@balena/jellyfish-sync":"^6.1.125","@balena/jellyfish-queue":"^1.0.379","@balena/jellyfish-worker":"^10.0.143","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.317"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.178_1638733408919_0.12170684256534048","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.179-renovate-internal-patch-5bb1169b6d88a52a63e62f4113343d04805be8c5":{"name":"@balena/jellyfish-test-harness","version":"8.1.179-renovate-internal-patch-5bb1169b6d88a52a63e62f4113343d04805be8c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.179-renovate-internal-patch-5bb1169b6d88a52a63e62f4113343d04805be8c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"355eaef71796aa2387611c1ff61323aa1991e47b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.179-renovate-internal-patch-5bb1169b6d88a52a63e62f4113343d04805be8c5.tgz","fileCount":28,"integrity":"sha512-TlnMxU+/+n00LvM6BPexGUHh0dm8CJ5kD61p9dbiIspQJa8dsqkA7BUcFo7ViCh+OW7ZsziN43IDhyoGIPK5Gg==","signatures":[{"sig":"MEUCIBHDD1p/bEH1vflor6E/6DcSHtYVBSh/MQjZrPFRXpm4AiEAo5k4y+hHccydhIZh9IYqpzy1bcHLE88EI0XDPzTchL4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223673,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrWFvCRA9TVsSAnZWagAAs+kP/14se82zdhQFzw49M3or\nQ8LdZDJVcbhFYk7aeZ8uLHeHRUMMV/QANG0/Lyi15BoUxn6oWeeB+lb/Lelu\nd2Baozrawl9gXXIVXW1j2aaSnMgI1q82BOL2NyUU4BGnq1FGcq95PVAUUZNf\nh2H0ijYbNCsofRG3zaepp+ZSnjL4BBMWdQV4EocaxTk5z5Dhw8VNWDgzLCG4\nSPT2VxQu7K521lt0reOiWIlvelGofr6noNqGE03sfTMHa3DHXFMPJJrK3Ehe\nhK0jBucQGWFA1tJXI8uC7Bixwp+2CkNvY7dO1juHQstLHxX6gQvD+tMkNYfr\nCQlphECz5xfSHQ3XOW7cFbrhuv2KD4yuYOq3Pztf1L9GeHXM1RM1In6Yxl75\netUuWwjNNkAhV2IHt56hd2JX11Hs1PI3bpvT/XQ5FX1gqcGGbGL/EgcAxLmH\nIhs2iz5rFdhnmXFl/Wpq1ukrVX8x229jtVtbKoUpgHDBFUHKN5OhNq56BNkK\nfxJ7GRwCjDz6llcjn+7XkyzcBt267IH4Rd2H5v0wHcU83QhWwqmLsOxxCN2C\nDS4EC07+g4C/f6/T5HMARlyYPrbXnZRsbRFyWD0WQBvHGtat78orHOnS81aN\nE65X9KUljYWzDuAzpU8bVgwEFWLYgcQ9Mn+fhWOuMtGdq7d8RNDb7dJESPZN\nvOBX\r\n=4ZDC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5bb1169b6d88a52a63e62f4113343d04805be8c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-06T01:00:43.884Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.143","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.318"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.179-renovate-internal-patch-5bb1169b6d88a52a63e62f4113343d04805be8c5_1638752623290_0.16527279368727443","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.179":{"name":"@balena/jellyfish-test-harness","version":"8.1.179","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.179","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"49fdb5761eee4621d58c2231b8d1a1c2bdf74ac7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.179.tgz","fileCount":28,"integrity":"sha512-MHTQW9hCySPj4ZnvoExtYgGm/15soZMEE9Zypu9JCEklWmvbMVBdt+RMcUdrPBGaiNQYRACZf7fO56aVBrUQIQ==","signatures":[{"sig":"MEUCIAgFCgUX6+GvIkx2C/t//QKb4/CQIUXpPOw4mh/ywZeGAiEA6T43P+TwIlkpuJouHVio3sqN9zyjSdMnu2BeREQUUBg=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrWIgCRA9TVsSAnZWagAA1j8P/171aWXFSpqAYDO3g5n0\nvTodsN1Q4LFCkAmY6ZQ5yi4ZrqNwSWdQOxqOyEKPxj9L+dOlaL+BSM2VP9uE\nWDUO+UC/+wc3HzY7pY3dh0fZUQTKUV3gWj5d1B1rQOVBW0jjNo11FLdIHFC0\nS1gmgvn3baTmlwkFeu36npbSMoAY9ZkgaH+Eu+eyqxSDo9nn6oHzlxbZzbuF\nI+/P7yY/jgFloCol+AkcqXS7wAat5UO+QJHNB52UFbw+xUuQlYijVVl6/Jsh\nItCga8n72G9RdAJaS4HD+DOVy7N9aNEjec8sZzDoF6K4thM2aio4fOxN6SWG\nvYArCk07BiIsroSgv8KCc4x+0vVoeUCgqIE0xrxsZs9u2yNthwLepXnPaW6H\nLRZSFmJCxiS22vrVouvYYXAh8npZKpdGaxLoLWYfm+1W1aILlIVU601KCLr9\nMZZa7F05EjGnnv7/gwqbAeRbcWe1Axgu+4rub6CyYozl/VaJG//0pHXSdiAo\ngYxCqlIopZ80jOKTgtl3SoG+U+/HzhHLvT1GnpCrO72FTDd3FOSMO0xHWkCJ\nniAOCMQHtKoI90Wt8uPzNTTK+Z6JvJqS53u/HjykJ8gNr7QjA+VkMXGukwXL\nMqzK4xb6HFsm8CSTOGDQtkDasEhtka9xrVZsYENqtaRZxDbu/fx4x1VBmYF5\nzxou\r\n=croa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"37595fc9d4b154fbe10abd2c01a686b96cefeee9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-06T01:04:44.706Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.143","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.318"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.179_1638752800032_0.6317663870609627","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.180-renovate-internal-patch-d84105bd9f471466e339c13b5985467fae845d72":{"name":"@balena/jellyfish-test-harness","version":"8.1.180-renovate-internal-patch-d84105bd9f471466e339c13b5985467fae845d72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.180-renovate-internal-patch-d84105bd9f471466e339c13b5985467fae845d72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d1f2b305e6f037e781c5392bd43001bab3d3d95e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.180-renovate-internal-patch-d84105bd9f471466e339c13b5985467fae845d72.tgz","fileCount":28,"integrity":"sha512-reSyQGz1K2ft2Dw98QVjoTEIcKFVRJym+wNXtNOwoorJgcCa+9ad+MoRa183LFN5M8juaDT4bzBbKvbRlnFinA==","signatures":[{"sig":"MEUCIB7CvRdPkVk1qM0Zmb/i8AUoj2ZS1Sc6zV++HnkhIaKbAiEAo3MYcqPS4hdaVSeH9AN935rNmf0pZH+8yaXlu7lONQI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223782,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrX61CRA9TVsSAnZWagAA0i4P/ixh/iWKsosZrawNBuFh\ngOUOvCPp9BXDXwRz14gyM06HgvHMTK9sV3Jn+kBSTz7ABlWKJOkUo7jWh91B\nu2QThZp2msnbLWIWaBiOqjJ3OzUBtcC9RhO68NsAt5WNogbRBguIaW95QaqC\nY//EjfalH7HTUBWWbk+kQEMH2tVPWT7tNYHy09XvI4u9vKu+D5eNZ4audWwH\n6bJLfTEir4CDH86k0QFVPhCrNaurdT0b2sDEqoWbKJbFbOF9KMZOXTRSx2wV\n4bBKJVwIyIcWpc9eoS42IIht4fp21bCO4ciGkNmXAjNjLtqJISSkeDfp7FuJ\n1LV9u2go5bJvxVrRd3Ehq0m2yQvhg4JTzTQu0tWXjVIesKr79hZT8szu8Vuy\nlYg0yRG7B05N8CtyONzlldwolqqiPRDee/juwbHUv2lhrUKJReonpvFVY56T\n5Vv3Ew6KgAPw9BVH9oiWti4oC7hDmGkH6lPTr1romSlZsUBWr/2BWN/vt2a8\nqGbfIgEteSkMd5A30lCNQxmKmMnX4+0bAE77PRt5jpgLWBjnv5Y9bpJ/q0qR\nrmYYXW3qh6YvczBMUfl46CMlbYvYbWxQU647gk4Cef7IWh7OysRMXtxqTHUC\nbh528raMmhHxsDiqgLnT7HCHNu3G5Z8sQOEbl1tkB2jTtkWJfkZPTSCwAYW7\nkx2u\r\n=BjZI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d84105bd9f471466e339c13b5985467fae845d72","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-06T03:05:30.732Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.144","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.318"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.180-renovate-internal-patch-d84105bd9f471466e339c13b5985467fae845d72_1638760117578_0.1937814903937638","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.180":{"name":"@balena/jellyfish-test-harness","version":"8.1.180","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.180","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9ee0eaf2b76e1437b06f56bca8ec436bc088d389","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.180.tgz","fileCount":28,"integrity":"sha512-QW2r2gG7O/tgE5aYbKSXeQPkp6ZbpfEwFUqjy1QMMMA53KsqwWYfIxwK+dg+YmSG0/xcPdVUTUZ0lldINsBmaw==","signatures":[{"sig":"MEUCIBpIJP9kjZ3mh2BQGt31mWt1M5qY8YF7sRnJbYKFFYL5AiEA9wjurr+fcVhHsP1wYjO5Hm3RnzpR9nSpsYO2MvaJBOI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrX+tCRA9TVsSAnZWagAAYBMP/31ff/ltu9cO2b0i+96U\n2mBGks3FoT6jBic2SsJCpAxFvgpdoWFqrUxN1O2goCVdJYm9xiw+IKEoxQyP\nOYz6HcRJpZYIOW/AtmUk7+VJYtRcwP2TQgZ2KxYBLcr2rP1g0Nj+Sgs51X1u\n9YIFfuWHSL5asUolwJ0hcj46yB98G77iPGmHD1DdPC0kq8L0mw9TaqKAPqvx\nnGRH1QATU2K66iytr3KVMH7A46sG2S/DrWG52yvobmyDqBila87Rp2WNT9Zy\nYjUFe1OYjmqTgWjPcArdhGKmmyhRCdrMIyg1TC1/RjtN7/OELc4Zcd3POH9F\nIvW1FMe70HC2zrzrodd4UyXRq04qJ2v7ZktHa3sMq+g5L0McHs4LkH+nADQ7\nyMscWSrt3TWsWiS55jRombVzaGVmwm7dSG+rTkFLVi0IGIqk5KUpaAHJL81u\nc7nP3QH39lVezX5zd+bpFeQCvqyL+8dMJVcjoDlfIT/P/NkuJ5WprlmquNCX\nPp4+GVSTrMmfMGp7eIFpVpC3A6EJBPjOG68hOMbnjCjmK17DajmCodpvTEPB\nzwI32QzW8n9DgvqdjAyldDtYflE1ANYxybGdsC4wE0w+njSrbXy8C4XGbxqT\nuslvLf+za7eRqXIS4KL7+h6f/DyIkkZlQXO7K9itRHflq42ppMCMzJ5vLkrI\nrEng\r\n=yzew\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"04f4fefb3ca9f2dd4804f30c6acd4f155b1aba35","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-06T03:10:35.344Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.144","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.318"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.180_1638760365202_0.2531359240868074","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.181-renovate-internal-patch-00cc409a28e1144cb58ed7e141aeaef979d2a31c":{"name":"@balena/jellyfish-test-harness","version":"8.1.181-renovate-internal-patch-00cc409a28e1144cb58ed7e141aeaef979d2a31c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.181-renovate-internal-patch-00cc409a28e1144cb58ed7e141aeaef979d2a31c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"747ce547f6ecc070bd1cd67973eb3d4095e72f6b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.181-renovate-internal-patch-00cc409a28e1144cb58ed7e141aeaef979d2a31c.tgz","fileCount":28,"integrity":"sha512-fq1uvAO8qTPQEuS6U28rc/W2cv7sgoRJkoa7OaSP8G0CoiHo8qSFVLZBY+gLVj7F7k4J87jzqtCMgdEuWpNxaQ==","signatures":[{"sig":"MEYCIQCANdB6XwRTf+nufnx8XA1+KYisn45MtvwJjmdfrfPFqAIhAKTyEjtiT6qBSsGKfbWSQ/dZmD25HoNQScpfiwrkw0w1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223895,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr0B+CRA9TVsSAnZWagAAR+EP+wZQzmCWKhZt8HLSrLQG\ns8cMVo4owRGeNyZmuFn5ewLo8ihZFt3gjrbPGmLs4ZhhvPBFsktXBWAB+0E1\n0uiIeSiLICUij/gOF6ZTdfs4b5ENStmm2MC8OKmaagySEYEtuDOkUkraYsZQ\nAS115e5hg9/pIAhWtUGd28w3AVsU1GUMVZc1Y8Jeit+9RFFfPrI60COI0FtN\nZpzpSezdqwX8jUc9bvB1FWC+YpO8I7b1C528xwnlX4xeq6J5ffKR0QiArCek\nX29SK6I5bHRCZ7hmrikITuj8XDQVTmoQalDK8cTJJkDceM237CYYbF2j2CeO\njl6obrj2cOtbZW1ptq5SFNk5bUgxoyZaXi/9mBR6nTN5UKAHadBtuU3df4Xg\nay2nMN6hsupjOB87FKiNlxzuQywtZ5g3yvfVzBwfLvRsoCRqWgIgetZtP6rQ\nTlNP7KG4qrmc02FaP0DVP11J5M+5OWqxrCssslusGN6GAbHQjw6xm47zS58G\nxwjf5cFFWyhlD7uDHVssfKZZzlfQVgEaxMaZtEWfAxAourk/qmWinm+CwCJ7\n7nmcItfU/7UTXJA5NKP7SQx2wwRRJCD2kJDV6yLWLkKHI084Ih8Te3jujxVN\nEZK6e9iRbC6ptCp/7VkX6eAbu+kH8jFsVhD11zF2cyHb06cO+tQ3du03SD+H\nUiz6\r\n=uZgs\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"00cc409a28e1144cb58ed7e141aeaef979d2a31c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T11:03:33.756Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.144","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.181-renovate-internal-patch-00cc409a28e1144cb58ed7e141aeaef979d2a31c_1638875262095_0.7908474384043926","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.181":{"name":"@balena/jellyfish-test-harness","version":"8.1.181","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.181","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2fc4acdae22009fc6b302202fcf19d40d3f4e9ea","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.181.tgz","fileCount":28,"integrity":"sha512-lL4zA9WCWpD8HMAj7oS6HOPu0m97dL80YU4obOzcwY3qkUxhQALKUHA/leqFGMeRi3zh9l7gG7AcDHCg8HpC+w==","signatures":[{"sig":"MEYCIQDZx5f66E0y9v7stfh2zNu/9ne68LDUMYaU+vNMtCuzNAIhAM4rMYiUtfvU+nvHwK0dNOBD49qsjjTaJXdg7GlqsKi/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223830,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr0F3CRA9TVsSAnZWagAAFBEP/2TTtodY2TvL/MxSPboQ\nxCllxwpoPSaNfLv9Rl/xVyxOauE6mIr2sLgGe8HjQ1Nmv9e66RbnlyjKRj85\nbxEsofv2XalAaJF6VWBkRT84pyCw1oPVpdwld6VBgm9Mh7jG+aSeFmB8rY2Y\nhAnAs8y6SR0qJLR/uF2sxjwWCANQOwbgjqTj71E0JHlydXTD9gpHoxPg+8VX\nai/aex/2XaHC/71F6V7jYcreGgbJChmcD3YisgDPKF3AzPJwZljvQ+bM3lqs\nhgLi7l2yOcLHS8qtYjApGy1sBj5pH51Y4ImfmrNk2ODcoZLHAq9oJZFX4Kyd\nE+t3wYUA6zq8pdUGSBr0cd73yNhz5hxskYYvovGergsAaS5+T4RsRJQS5bZe\nnsX/nvzBRP1mXt8Bjug6ERtznuimSMv4yg+0aH9vwBYzCr/rBruWhCT0dqSZ\nwfCXyAPuLPoktn0wR761pw+PntQQAMZLrWOC92w6mFRvR+cnCIcyyXmtPlIh\nVmuo2U9Gd+JlEsrbFbnoUgB/EB4s+LGrnx4cZJC5HCfL58Wbnp2A1rxzEd1F\n70eewIpSVrpiCKyUyEkA1RAan3efTTN8Ui5f+ZIPZ/gVWE2uwQKKSGznWAgx\nldfCbQL2o3xsFcuGVG76uW+p4YLmhLSUUi3KOiyDxGAd59PCpJikjf+cVPE0\nl7vU\r\n=Ubno\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4aea1d863739579ca1e27f6c86436952d256354e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T11:09:12.429Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.144","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.181_1638875511438_0.6327959767485656","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.182-renovate-internal-patch-f12e3710dc3ba9eab01f45531498e76126219c26":{"name":"@balena/jellyfish-test-harness","version":"8.1.182-renovate-internal-patch-f12e3710dc3ba9eab01f45531498e76126219c26","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.182-renovate-internal-patch-f12e3710dc3ba9eab01f45531498e76126219c26","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"269c27eaa9149a806f81c02ec4335e16230db209","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.182-renovate-internal-patch-f12e3710dc3ba9eab01f45531498e76126219c26.tgz","fileCount":28,"integrity":"sha512-nIXJByF/EF4yMBkJtenhgrlGcA31kMSzqZ54Hgz4+1eQBhKDIm6WGU54/BMz1yzqVNZ75vTYaunun872SkEqdw==","signatures":[{"sig":"MEUCICIAnxeHrtvptoKPuHkxFf2CiPLW4e6bfLyaXbrHbUzXAiEAqRLSp5OebqstFQ21eYjK3O0alsgNiC5Xe891yNw93Hk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224004,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr0IyCRA9TVsSAnZWagAA9esP/jzPmBU4du5r02vdtfVy\nF8nuqEVf5tTrG7yjx1n2QjcEC508Lih/JOl+hoHZkslmZ+J6xKm2KJaeFesZ\nNpvUGU1yASzq0uFyH94MYr0I/PwcQttcf5xyRMNAKwnvm8z1cpv6BmsYY9Bs\nUxV/G7wgw1ny5yRW4LuriKwfz/GzI6uLSpzFJKYx1kgq9QGusz/C40HsA0EH\nPT0Hq3RhX2i/3vI9LnwqE+33IZFgeTY+HlIeZnuSHsq6Wn7sz160IBGhCQGE\nMruasZwSJ6HJ0y3eUnqdUEeuFSB6eDna13KJS3UWSS0p20ELN99nndFKXjkk\nwf/B0vFfnlRiXLXVoPNkqLEAbDUywQrQ1qf8JHmDOLlxoLHN2xwhjJqpDZax\nB0z+i3f6Uf4FnrX1QLnLwzdCxQbP658unmXd8Ipo9yNJ1+pHRnVdJf6t6nKl\nuerGcPn5egoqqih2bFHoEvoCnSegig2ktNLg1lSZkGRMYKSX3PaoI7zbdL5U\n8idLrf/2dGx242lCx3vBwWmZ0FVD39Vi5Rl9fopkaw1OlbKzo/sn37w7ZYZv\nb6S6m431d5In/r56Ez9aAoJy4n+6OsJS2/XBwNrLgvrHJS5Up4z1+khsuree\nw/GHCku5/UrbMXxzmi+Sr6U5onTpJXiqJyTs5X90zGxWxKjNfCGOv9+83382\npNsY\r\n=+P02\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f12e3710dc3ba9eab01f45531498e76126219c26","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T11:11:28.730Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.145","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.182-renovate-internal-patch-f12e3710dc3ba9eab01f45531498e76126219c26_1638875698718_0.3569915280887397","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.182":{"name":"@balena/jellyfish-test-harness","version":"8.1.182","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.182","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"381b226f50c112fbdd1fc8a3c164b30cfc6df106","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.182.tgz","fileCount":28,"integrity":"sha512-BxvQ6nLg5XgPbZhZonF0knLQIpg4nB+Mv0440PW0Qs2LWDToThiAntYDt2XtAJ6wKiXDag05CS3cENEfZIbHIw==","signatures":[{"sig":"MEUCIAUS7PGpBmSiqoqf9/JF6iBIRftbXGh83VRHiQRjsndkAiEA6zRuqh5a4nDzpM4iqNDaejTnKKFEhyMyAE21SNKWEPs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":223939,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr0OICRA9TVsSAnZWagAAeikP/1KQ0mkP527qP1g2q2Yt\n6yVSoOhfh8sWSA7QAEHxzaY8aK07qmVJDtQNuruF2mH2AlPwLzugBptthGEY\nOFqE6nDE5mxysIg5TxlhDtOf4TdkgxQZRssqh0ncjYQ3sdJk/LaiIyCLLwRb\nawlQh9vSoX4tWLCBj7Utp9I6LFnOsHLocth2pUERfPcUhMVQo5VStQtP0pKF\n+Nlo6yOxOjSQlhgWWQ7dN7NM+SE4qwI3KYL3J9QeGSV3BgVV/jQVFDE8CoZh\nxecgordb2spISauFusHOD3p5difNEY93cY3X+eVKqcIsOBq7EKiRAr5RIgB5\nns5ggvGDHR1HYavau06WDYUvaZnkDVEaH6Ru/ZcyBjoKuBDPeVzLjXrsDkud\nbU1U2gR2rj2qedELxaas3G1r9mOFxNPHqfNtH4Sjk+g4I0gqkbjGlE2iQhaG\nhx0ttjfFlmkAniKW9I1dY/ESEPXC4oHDg7xp/IZmVwejNhA5nwdphSydeBV8\ncXGy5sp/cNe6qo8rW+TijkD/+fkc+w6aNhbFhCPHJdMKS9AxLuzJTQKj1oHO\nYSVP6jDRu0+BLBwGMeJmWWMhr6xuKPuh2bBpBtcOP46tbuJ7HyrD+wsUi4Ii\n84ApHpGMPbE1pBNRGdmIfQIklUJD8SuuZ60QdWgrsTNoJeeA6ykd9qKp0baN\njtGC\r\n=/iJf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d92f27369e16257f87be028b6d366834f8419ce1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T11:18:32.670Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.145","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.182_1638876040177_0.9369155942631076","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.183-renovate-internal-patch-03d00070251bbad11d2900116653807136849ab2":{"name":"@balena/jellyfish-test-harness","version":"8.1.183-renovate-internal-patch-03d00070251bbad11d2900116653807136849ab2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.183-renovate-internal-patch-03d00070251bbad11d2900116653807136849ab2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0e15c8dfb169dc024ff629685e41639bc874fffb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.183-renovate-internal-patch-03d00070251bbad11d2900116653807136849ab2.tgz","fileCount":28,"integrity":"sha512-A8w+2uYihuRYQOszMwrT8ka0BI2MoW2jrkJk97uCcZ4mRx46D6ZVQhI3FwAt50nRGN36XbKFeVWG3STjYhdevw==","signatures":[{"sig":"MEYCIQCYIN/96ce8gV2uEU1LOYecPl3A1p9CVJzW4SuwegDXZQIhALQROzy+zUmrNyuPZBwjcoMBrgjahWFhyrgyjdHIriiQ","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224113,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr0T0CRA9TVsSAnZWagAAPrAQAJEmBnOkWyW8msF5QPXj\ny2R5rR1AqKW+ktFjGGBdp6YmI5mY1FHSiHzvniGZmByXhGl/ikfuxVNDQ8LG\nRpXsbd8kPCvXOcZTN43Hp+SDNzrvqhmSbd30YX2DlZJmYw+0yze3qycT2jof\nDH//QPWz9p8kOal3eufaLG13jNMndeziIWRYUr/lI9T98x/IPr5/vF9rQY4U\noD4WfscmOO65npsO+75pnMv1QMmz6mYU7iAh740t/atKObiazTPXaO2/2npf\nAVmRXgSHz4Slry228WPuN2SO0LIOXbPOwe5qoIt4c0TF75mvYD3tEOY5kFho\nUqV2YnTtI5gP83Knx9Vf82Co8MEIPYd4cZroEBQn1BTJHFIxYKx4LryKmKBv\n+8wd+hqmWHB2/18Pj+I3jToX+1dkgKwlupqkga8ThkwvlEp/7WJqGeAMKuUH\npSf19JTLFPEZMAjZqIrL9PAO+olC7SQR0s32IYNNQ1nXOJJk6ml1PPhJPpab\nEF64NgkNGQBlYRJ5aNr9ZqWpn2mXsyI8O6fENN4rO40Bt424/gy/bkrYVRIr\n2lRO68x7GzNcG4NK9NuR5JGwpakQtTRH79qYuKAVT56yhc4gbiOyat6j4ONZ\nfD3b7iDoAxm8aXcPHcewq71NVA+b5Q1EyQ0o8+1ge4gIJSmp0S1mRG4BqRiH\nhbMt\r\n=ByEk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"03d00070251bbad11d2900116653807136849ab2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T11:23:23.938Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.146","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.183-renovate-internal-patch-03d00070251bbad11d2900116653807136849ab2_1638876404835_0.8452836643224737","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.183":{"name":"@balena/jellyfish-test-harness","version":"8.1.183","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.183","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5418ecef70bf958669f40fd2127011e78c6ceea0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.183.tgz","fileCount":28,"integrity":"sha512-7W6pYfKqpXglkjzZlVzbXbJftXoE3pwLGZoTXATVFehWikn4KHA8cOqD/iTKhq8pCtFYLvIOpJB4Bo/1YHt06A==","signatures":[{"sig":"MEUCIQC1yPpbUr4hrO91DxXbSiDaXCu49Rr/XZtCQIk6wWKbrAIgT15ChgZgmO3iNcBzLZU/kl3RnU0/1uaOs9p11Tcq+qI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224048,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr0XLCRA9TVsSAnZWagAA6/UQAIDZn1ya+Go2/AorDyHD\ne236GUazl/5wnWzWjReAyYSjw+Gj1YSBDSQHK3Tv3/KLwQw3haXO11D9lw7W\nLWLexBLrafiNrrTZx1KJbpRbWSvlTxCed1Fp3qNpgxic29c0iblxDIeWJP9e\nuZyg88GK+rFWaMLAH+Xh4ZZ3juAnHnH4XpyVFWQPeOe6gVAH4+M5xhIVl7Ky\napIQvBfyzlfjMr1PkpaEgiG8QstDPVbzN9WGVJOZsCOr1DpEX3spNLc3D56t\nYquEY6jl6Tjo9VkfxmiUD//vNh66m5SvTSaQCOZJMGUA9pCQcuNKSPMHOjsO\nbF7sxxnQkni0Aq/sF8mO9Rvt8BBAwELzWBh53zXsc0W7roSfgFvp22IXuNfu\n3If7AaiaPCL9V1BlKJy9rehFQerqk3j5MjR4BWuNt6bPsbLOuLwK5wuv1Zod\nEvbvRCvfnTh9HkEirNGWmQVORfklUJtVuvHix7NRDhS8WPz5cw+4q4QUcqPZ\n4eMnT8JkHboBdd2/eVdt9h6Xrbk85FIkxeT5on63eNMvnlrY0mHWJVWEo2oN\nwmUuoZV9F6ceL2yHW5QWHJ4/H35bYraLkoCw6q3NnAdRQw2JJo7rJNA6Im2Z\nQ5xhdxfl8AA6RdtCNYAXNTI8PgRBIordX4Zz/Eis39pxL1j8senv7LgSiVU8\n3KuH\r\n=Lf6M\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bc7230f232ad8de5759eb88b931a86ca5d467ab1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T11:28:25.510Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.146","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.183_1638876619374_0.5015374668190873","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.184-renovate-internal-patch-33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df":{"name":"@balena/jellyfish-test-harness","version":"8.1.184-renovate-internal-patch-33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.184-renovate-internal-patch-33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cc98e89ad6f971385d55463495879b6ad34587f7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.184-renovate-internal-patch-33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df.tgz","fileCount":28,"integrity":"sha512-YY5KTlkiFAOYR+fGonDQurGDQQdj5wEBrVlaNx3CTF8S3a7FObBLFo77FZZ8c1dDgkLsr+vphJlRSSabiC9VoQ==","signatures":[{"sig":"MEUCIQDBlQcPP8qaicCLffGjTltb/uvVEZZmfwjCpT01vAWyuwIgS2UPkaoIDsyA5dI0X5/LpGYFv1aThexalYYAEOJYBVs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224222,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr2mbCRA9TVsSAnZWagAAPmgP/RXXPjg9bN0EQigKhxAV\nbSogdVtVZWB+6uvQUgEZ/IHii4XHQTJAua5d8E3SC6vQMn23svqBlEGekYZM\n5riZ7DMkgfZIlj2pOxTC0DwJsUx4CPdsbFcJ7Mz5J+EnfYXS6yDeik65BT5n\nX1c6Pv4uDBRfGZlOuxE4EqBxrbp/mpur0xSz916iscrerZH1wc8eItI59mTO\nHT8eapOgZ7cTi6Uw443EeLQIaSRaCmIiCXy1PM4DJvTCmFR2OdTQ86IihUa0\njQDVnM62CEmUAgIc1+C26pbopMpvO3MYLrBUA5rAeC6CZJQZR+pDLTNDglQH\npcOoExdu1bLXkqfUus4QBjQBzpFnr9mAneXaL4nPcRnZE5TkAFRdW7zcbjpr\nH7I49VRD8I0Cnnh2fwkxkp/d3SRwLnIS64tXPKE2lhlzEeHFJ/uzf5NdSZGv\nxCR6TMl2+6YBnwtqzAc75QghYwg4zz64FOJrB3sIdPM4fI+NJ0E0TBVjV0Iz\ntSA86OtnqqsiqJESfUtvbMOUy0l958F0XJE6jsdD0I27yyaLPUaU14dkHgul\noGkhbcVS2TPQR5ij72hYIm2fEn8y9203QPPL1rFGet3h0tNmANKqSshDLgju\nu2RacLwXsEM1fSMfja3d6n5F+IFs6PSWj1Xu/sKhy7abYRi+gPsjffZLk6Df\n8jh6\r\n=cSC9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T13:58:38.626Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.147","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.184-renovate-internal-patch-33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df_1638885787773_0.14136822212357636","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.184":{"name":"@balena/jellyfish-test-harness","version":"8.1.184","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.184","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f0c89cc9c9d1c18db972f84bf98f26ffdce2d84","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.184.tgz","fileCount":28,"integrity":"sha512-UgAg9asDpI2xFLVP7W/8UIDwhD6MHIwTeIsh40D+2r4n5E6NitueYWjsAU1xdZrnj2Xy3mSNBH6M+U0QrMWO2Q==","signatures":[{"sig":"MEUCIAu1C36Udf/No7rmQX/0KXcauEYW36NpxFy42C9xkPsUAiEA8BOjDCZa92gKndexOYjqKtuFf/Gwhets8qux8aDkfYo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224157,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhr2rhCRA9TVsSAnZWagAAFtAP/2GzYHCmJVfL+Gy2oONh\ny49sWhAKooYByPPQ5oR2OzfMwMRD+I4kuXTny3XLQhSrs5z/zBIN8wi08oN1\nUALI4v3ZQwVjNtHFxfh2+bM9Ih1gzIb5Bl5iF5s8Jf5nTodWcVOXMgK84CWP\nuW8geeoEkq+7h4XACk7jaCUxR7z0kRuSLIR14eynDE7Nk7HNp34gJD+isHEj\nbkn8M0w8Y7Yx4O2Yh5TktOqdFEmw9MG0cZ9XVF6S1Z+XzjZbljn6AxRRnCwD\nEM6MPij2w23By60v/9l2OAU+uIdiI9gnQaGfbWMDg9onfGbks2NPANkaNJuM\nL5Le+z4J8DH+TiG/umIdL7twvWWJ7nb2iNvB0WaYcHDX5sKVs3BM5kPowMMw\nQizE2n7pRs4bHrIOOdZqTG0w4qJG6FUogrjXtr1Bfhm92zJBck5mVhVyR/iI\nGBMmjOV0BC20A/ljnSIGZprdBd8O0if6Sd0/M4YR4QArCLgey4a9dLTXaZNA\ntuN9dIZd/eUvp4gnObqp9qsg9203qBpCvGjqBTQuAbmN70L6t+xmsEKWS40p\nsXUAJseAg2+AIxblvwgeoMqBIY7/hg97q0fpVTKKi/+UlcX2/KrQFGwte/tf\nQSUloZ9RxvK2jj2JwjQ9aKBkft7JnNebe+tbdSM/tF81eZ0tz0vAQ81aV9hm\ntiIK\r\n=KGKH\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ff1d27473ba8bfeadbd8453892e0b12ce97b8b10","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-07T14:06:03.108Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.0.147","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.184_1638886112995_0.6138480747284529","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.185-renovate-balena-jellyfish-worker-10-x-8288c9864accf597187524c839a5d66cd021bcd0":{"name":"@balena/jellyfish-test-harness","version":"8.1.185-renovate-balena-jellyfish-worker-10-x-8288c9864accf597187524c839a5d66cd021bcd0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.185-renovate-balena-jellyfish-worker-10-x-8288c9864accf597187524c839a5d66cd021bcd0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8e92215a7e604bf52916f19ec8095cfffb864796","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.185-renovate-balena-jellyfish-worker-10-x-8288c9864accf597187524c839a5d66cd021bcd0.tgz","fileCount":28,"integrity":"sha512-8fvacx9z3GOP4/nxvaZVo8FknHjF7ooooHRnHQm/iu3MJkyxblWsfHYi9Yf9rcV9cvKbijHL7BEEljUEDQ/XRA==","signatures":[{"sig":"MEQCIEQKoCJcjWA83WrqI2TqeJqFzD9uaAZ549q6iIcrXPQMAiBJZyYCGW22H6AEEj1B8E49rZcdERMvA5HcQbIFXTMvcg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224341,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsHleCRA9TVsSAnZWagAAPZIP/jruteMjcijxuVnWr+ru\n7ZSUsT1myxy9i1L/qWflxOi7tnTo0ZEdm+VE+0Fl/YCGOESibe6SgrGyCLqH\njiYlyRUL/8vCxBAFuCA5xVhhh//a4dkqC84pNwErJkt+gml2AXEpYL7uls6z\n7FlnU0qgJclG6lqyKv/yje2c7A0zkOHRTK8/ZarbEn95P7ddCu6f6Jgz+nsZ\ndjzgGgxO0wZuBHc83jj7THDQ0kUsvsuTKrZ1GqZqCAoFMz6FEupD/KvcY1lh\n6zA6emV9GXH9ccSR6Ox4VwLM3m5zj4k1VF0MRZCw18SfGjkONKeW9+OSA+6W\nzM9oKm5iKXAWVO5mVL0gQdYfvCUnm8+sorcAAZxdkLcgWTYl8O2mEn7XUNNw\nI3yTui9KhPcx54bmaSBUdHlVN3jQidLfy6rzDwKC2G12K9Rgki8W0kYBLnJE\nu04BBDX2ztclpE9AL4lXmmO4rt7lvr+ZTsz3THKrbV2aGX7sm5n4Raw8NeQ+\n3UPzC96sE5woFIpFwkXPGvgVRDJNjQvUFyBNyZdHWrIrFITPMYlaTDR03Kc8\nhE2/SDTqt7RA2cZ4LT/kjzDwkeJsgyzHtOCNPa6znINE0XzgVbddrsUmdVCe\nOCVvyauTdHnaDsXWvDgJIgQXQ+SMFzSDJS82I1KaYMWJjt1kDKwaXOQp1DEI\ndwvr\r\n=PrMf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8288c9864accf597187524c839a5d66cd021bcd0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-08T09:19:00.423Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.185-renovate-balena-jellyfish-worker-10-x-8288c9864accf597187524c839a5d66cd021bcd0_1638955358301_0.441626627443658","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.185":{"name":"@balena/jellyfish-test-harness","version":"8.1.185","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.185","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a14975edf6ed41f5b8487219bf370c1fde5e519e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.185.tgz","fileCount":28,"integrity":"sha512-6T0IZt/k4QcXfmZlFp0zF+ePgl1/OBuDwLZTjvSAeZvAwJJ3vvnt2k0FMocyhMbsUUdGxSk1z+dDCcFTY8fapg==","signatures":[{"sig":"MEUCIQDSlHsj8l5HDZlWC/EgfCQpAo7WCwDiFhpoKrztxiJtIAIgZUN3TEuQZY9U3t/8H2gmRG+/ytyrZQ3TbERzVJzMqtA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224262,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsHoUCRA9TVsSAnZWagAA13AP/jVC5aS8ReYHwbvLe9Rr\nHftk7hQfv89s1vnlwrcBwQsj0w3RtstOyXWL/YjL5i2o5l5ZhdLKgMfEaz1B\n+IebVXU0RMl+0eILVHS7wE2pJ85Q2lqJmIDo/VQDDVp6CTzzOpRfJ/UFyZ0c\n6ISkbeLBoGFyBItlJ9igT7vpD8SbiurBGN28M7WpLGCqGb8+8ONmyfxhxGvs\nfEHHvpdu9+97rOQl9hed666ShXyAiRF9QJTDIFKvgKid4Y+GmyJy5oZZyUC0\nPklzaDNhZ6H3cGbVmCepk4vSFyl8HklBbw2I5IyemhAeV89maWgD0ZZ7qvW7\nzjhrfbiHvgBTtxBJ82BWuWlvpoDHhSVlgey91InVglNeicUlOHZm+KQNd8z3\nWdSZVvC2LjZJuy2+hCuhGMlqnUxlutFS3o688jv2g4QbNtx++rUmfipenP5i\nHi9Jwn7CkQtaOlP+X4KElGjPEhq/p3AYJGOucp27wvnsxb/XROs1na82xf7O\necBA8EjbX9arxTRPB67sp1emaMns2TGyErMFU+bEyMuPdMxQus5sr008ySQS\ngeUVgXV7Yp3YhZOsfwjMoZCzD3t7veCjlTM+i/GzLE4a8+yGM7uLf1V0vkuL\nCUAVTapj+uVZA9nR/DZjVfBSkHFnzVkTrs0bAyX14U2c3SHzMxAZwtf8+8Sr\ndrzp\r\n=/f4S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2a3b395610cb0abd3ac0937087a98077411b4a68","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-08T09:23:36.090Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.185_1638955540792_0.5551771147687243","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.186-renovate-balena-jellyfish-environment-6-x-a595c22f2fedceec77d196a969008ebcbfa54d27":{"name":"@balena/jellyfish-test-harness","version":"8.1.186-renovate-balena-jellyfish-environment-6-x-a595c22f2fedceec77d196a969008ebcbfa54d27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.186-renovate-balena-jellyfish-environment-6-x-a595c22f2fedceec77d196a969008ebcbfa54d27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"157f6d0b61bd8bc7b63f4d5434ff360748f7100d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.186-renovate-balena-jellyfish-environment-6-x-a595c22f2fedceec77d196a969008ebcbfa54d27.tgz","fileCount":28,"integrity":"sha512-Z/FfvJbrBBaSPle5oML/IP8Ux60k2F1EGuE4VmG5Om5ofGh++Rgb9XKwHemyZ2s1lg1kSsbYGX7/ZeztsVMd/Q==","signatures":[{"sig":"MEUCIQD3nDdV9d0Rzak6mvGBy8BwGB1aSHTbFmNHvwFGjAN+wAIgdOgb56akWUSEfZdktz78SnFF9fMtaxB3a5kwaxpTNYk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224452,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsUaTCRA9TVsSAnZWagAA7GgP/3MyYRtTBiACnhnQp+gZ\nfJwrlsi56iFg6/4ogo3JSQ5WhgXWKY8XJg/k0wp3e3Kz9/UjM+YksP7xov02\ndekcJhyGWgebl12FfnMm9Ij9cKzVJfFwTK2JwA8adiKK1qQxkJkC6f05R6b3\nH9MEitq0ko13GHz27rgUf2f7AxARm1IehX5Unfjf4QR8bNqhba7pf8JkMenN\nX+D6giWnBwNaj2Gy4n6NPM3nAB9uEu3gCKsRoAY12HZVP0855MoQGcyuMANX\ndyH5zO1aKUqiy91/KknAqjTl7tR1A9Dh4h7ksOfq6UAnJMEi5fcpwfMn1WGt\nyrzv7HyutYxRBuzHOGQTLggxXtAQVRpndD+VXlgh3VP0BTc0jwzvuwluBWux\nFpTan7gQNThQy9VoD88n0geBje0tVLERoFXaTcObmCzuosZz747GwnjSikXQ\no0KLhDGx3rQTPFIw4ej6E4h7EEpBmdG4qB4ghbsLoT1Mdtx4P2yqlW0H/e5O\nrdmzAO+AkxLvc9z5dkKZsd0IhJf6oItSeynisuHKY77BFUPRjOk6rU07qUYu\nrPSMhgcChqwJIhcVFXCgtOJ+z54VNx2w2lOSXUZFE6dSwtZkwYUb4dpge9kN\nG9OoN6hpvu8eZkPwpaJ7gtjVdVPrXAEIOchwJ1HdJKWPgAiXgl4HRY6hIHrP\nUsZs\r\n=88el\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a595c22f2fedceec77d196a969008ebcbfa54d27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-08T23:55:16.508Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^6.0.0","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.2","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.186-renovate-balena-jellyfish-environment-6-x-a595c22f2fedceec77d196a969008ebcbfa54d27_1639007890929_0.2809371543270309","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.186-renovate-typescript-4-x-153580858b3a76154adf24cece4aca567790d7c5":{"name":"@balena/jellyfish-test-harness","version":"8.1.186-renovate-typescript-4-x-153580858b3a76154adf24cece4aca567790d7c5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.186-renovate-typescript-4-x-153580858b3a76154adf24cece4aca567790d7c5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5eed65b8e36be1567000e79392603c429b2907f8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.186-renovate-typescript-4-x-153580858b3a76154adf24cece4aca567790d7c5.tgz","fileCount":28,"integrity":"sha512-GqT03t492EkWssX/Hnca3975EpylQ1UCnYEReTVbEXSWYMeyypu/4eD5HiAv90Z6dY4QV/621kyGrjJBsCrmKg==","signatures":[{"sig":"MEYCIQCsACsuziPGE1ytGGnQuoFvdamniZZHIrmc645EL/ozkwIhAM86lkmmJkPTZOdvZ7gdydFVD5065kQvVMhOLYOZ4zMt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224419,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsolHCRA9TVsSAnZWagAAYioP/1cbEuovLAAbHjgFxugB\nHxuzqLI+9jFD5A4DVvhSKDNAZBdilWO8Y7YxaEi7kM3zmVFRVfAedUi6BYWl\nAgytCSUj6/Mjn69alS24UhGAnjusmabeS46lQhmGtEIrtx1KjIryRQ1LCYBx\nxAXqu+rqSUpLJ5dTnaSstJX9aWUg78vphoDRffrRr0mmayj28XBiAw/nHQ7N\nNN8MeBGaVfOZIqbVRNLDhUkWHpc2odiYx/HRq6l3P0DTfck4aM+bVWHk79+y\niKdobj3bPIx3h0rQAWGTGyeOBY6o0+A1/wvHaf+brIV8N3+IGOGH7xgIgZqm\neGo7yfbv0XxD3DtjArnigRW1V/U8cbvC2kSOP78HWa5gJJO1FXViqJOuAAXq\n+nFuEn3FU4WAdY8zi5QQ/Ma9Bu0RcrJTCPt8I8OSVTD6SjgAi1uUZKKec7E0\nDKiShyQ9VdKdi1JHJtPUA2fpN4Y+z7BlehO6mRaJB+6Yni2c7COZiq5ZGuYt\nmgd4yu/PD8QZcq3+uvw2Tm+UZ3ReAEmxTnnyg5/c0jEViymrPuh53+wScB/h\nlXC1umIke8IploIgtDwAchCXA9RHRknklU5GYZ9oFCwLU5y9tlXRPwHUrfQh\nkOLcbnI9h7BgMgl+jsA51QaBAMOwYcOCMZ7BTIQHadLZDwd7iJDXssUpM9PB\nPUf2\r\n=+Ozt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"153580858b3a76154adf24cece4aca567790d7c5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-09T22:52:02.864Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.186-renovate-typescript-4-x-153580858b3a76154adf24cece4aca567790d7c5_1639090503477_0.43027054740206405","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.186":{"name":"@balena/jellyfish-test-harness","version":"8.1.186","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.186","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5f5be72b1f6951ee22329c32ae26c27818360984","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.186.tgz","fileCount":28,"integrity":"sha512-rFHG+gp4RbE0DGLIxd5K7KocEGvUZSpQ3va1Iz7DeN97jiMO+ITeK8EVhET3bohJQI86fU9ZyzJxpkptm4WTRg==","signatures":[{"sig":"MEYCIQDioC4aQArmbq/2DrC2RxBFnvhjZeNlNTk25ovH+HBfUQIhAOeKddT46ZWvrZP7SAE3d97SY9wXriXFSf/7RRiL2wTA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224354,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsrW5CRA9TVsSAnZWagAAnsUP/1aCX/tDZ2Q6civPlAN3\nd2BaE8XX/Fag56eG7Ak2CXfGL7HAPKu57aGp45MZZezCQv6fS5/D7LM8qK7W\nlZGaLP5prXHi4f2A7RdE3iRmBVZeE7EI/IBw4FVGsciE7VV7kJ5aB/TNRAqC\nybGjGQWIydy/sTt/dvlY9N/IMffFYQmBoOnL5JFnP0JWXvWGBvCOJAH3SSNk\nA7KffS9bawtssq+HyUzVbEusnzmChkX5jDyd2d59QTUuOGrH8dAcVrWU4wsz\nVKCKnDELbFi2pmxUNyO9oF6il0q9XkCMKFTFm2Mdy33iI4S/Lqt3q+frC6N7\nyjvKCCJEWKqztTLfBnAVcWM5Wd5238Z/vaZczU49vAYHRITCHzUVLCb86KyU\nKvNjg49O1fmvFqzkubdjuwZTWyA9ps0FNV2D7LtUlQQdHkC3MLE8t33exST7\npVCWJQmMbZsFq/pjKZNrBEEbI4sPspIBdPcYR7UTAGMXBUjZybP+daBCRgOa\nhVT7bME9jFzgVf+6bElXcMkdn8IJ36OTGYxloZFIgYztCbpBjkH+kEzpR2s9\nJiCzhv3qWuttFikzUBbn9DUfsBMLeK6o0P0gNh9Movvq2HX7IGFQ+r4TPz+F\nX6bevBPJBM+/PwOFfH2EVZF2rszJRcXnjwwMKcg82ZXnsHc5nfdxa4cLQ+X1\nQC9q\r\n=mpml\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"851b9c30d30b81e7248043620d2768684570fff5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T02:01:03.830Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.186_1639101881424_0.8696511099717679","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.187-renovate-balena-jellyfish-environment-6-x-4eff1b2a0094697109521104d4a324015ba3854e":{"name":"@balena/jellyfish-test-harness","version":"8.1.187-renovate-balena-jellyfish-environment-6-x-4eff1b2a0094697109521104d4a324015ba3854e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.187-renovate-balena-jellyfish-environment-6-x-4eff1b2a0094697109521104d4a324015ba3854e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2cd6d47c92af0a871393c70cc2d8e8c9d024053d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.187-renovate-balena-jellyfish-environment-6-x-4eff1b2a0094697109521104d4a324015ba3854e.tgz","fileCount":28,"integrity":"sha512-1LM8sdnQnHyoozp4kIU1EeQG2juclc+xCbHEGGJthawLSNOOVAaqI8K63hRD9xiiU/n0ARdEovmdxz1V2Nlz1g==","signatures":[{"sig":"MEYCIQD7LV2EGWcRw3UeABobI8G1/qUpPDlWPJJdEXoSAdspcwIhAM5eEPLKLpbszVhLP48l8Ok0cdjGztditEVUBXp6AxEM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224544,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsrZ0CRA9TVsSAnZWagAArIoP/0igUjZYMkyMGPE6tAg/\nRq8bdIVwD6HAYsrA6k1Tmx8rauz9nS5Yw0BLDp2Sii3Td11Lbjvu9ysHjrdr\nvcOVjx0ixWOLrYO/G880+RcQQ4eYIMroANbV3/reC1azIZyl3D3EZWaB47R6\n/2AJ5BTN6vgx9++cDAnLGipDdq3BDY6gBntzdK03L2tjwl/viqoSomAwYE0X\nv7W8sqA/WJLj3d0G3aXmBs/3I2KnaoPUQJFhMsDHhq7dQEb/aM9zhhtCjlkq\nYI03B0h5G/ndh/fF6ii09p+mgI7W6Zp3IlcC+Sk2zmkIld9/1VHA40TyAv1J\nvcGPwqvNA2jaCyk00fUGMVuK8chbts3gpKHjQ94679AYUci23GL383Sz3vOk\njElnwVF82jsW9VjzsLLy47PqI7YWZaSHTPpqLPTZsKHe/EqrUWlc1w6fb/pQ\nNWqgJrP2xkE4Q8LgWuIXW1jdZ1+FZFhdt0z7o5aYsjHmcLTSSaXD6l1EPedJ\nqz8FNgWKQi7cmTY2BJ7H75SbknKVsbAZDvtR0wPKgstbt/96LworPu2PqyGa\n+QJcTijm+i7WoaiUNUXg3gjrqDdgCr4+ay2+lzlEqgsQBDzpGGtOrWnigfAW\nqWM350Kr3cG276JwQXBW/5evoQTWnfXIIM8DxB5U4BoIsysnsp2V3lRI+FKD\n5SJV\r\n=nWTx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4eff1b2a0094697109521104d4a324015ba3854e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T02:03:52.470Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","bluebird":"^3.7.2","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^6.0.0","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","@types/bluebird":"^3.5.36","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.187-renovate-balena-jellyfish-environment-6-x-4eff1b2a0094697109521104d4a324015ba3854e_1639102068627_0.9474767808704407","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.187-joshbwlng-remove-bluebird-0c1f6419117097e8ab363d73483e704a71f69382":{"name":"@balena/jellyfish-test-harness","version":"8.1.187-joshbwlng-remove-bluebird-0c1f6419117097e8ab363d73483e704a71f69382","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.187-joshbwlng-remove-bluebird-0c1f6419117097e8ab363d73483e704a71f69382","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4964eb280fe6274845acce8759915ecd50b5022d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.187-joshbwlng-remove-bluebird-0c1f6419117097e8ab363d73483e704a71f69382.tgz","fileCount":28,"integrity":"sha512-WuEQx75YXVirz06jnMSmb4Nn4b+k8EVzrjO4HgKU4XNUlW7oe08hZzAG/WMzf91kE3SSFy39L0qLZG/Fb0pH6A==","signatures":[{"sig":"MEUCIQD0AS4yHVUTa7cHF5c7CVBnTT9IzI29ZOMMfWbqVpGjwQIgTW4wpwJ0n60ab9HQ0K78SLblr1G+YV6Rb3sG61R60i8=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224537,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhssQ+CRA9TVsSAnZWagAAfdwP/2UAQmZAy6ZP5Y3pzYMI\num/3DA6MJEHncMfbDIDfTD2UogPKAoRocp9B9MG3wSq0e+sIgJ4jk9f1/1S5\nsvz0nqCrLQTxhLYyem3ZcofVRqNYtJvLAPy0wLCvegvrOvGT08QLtcP1UsNg\n3wonnUx/9sVRce5/W07xHGn3Nd3p7/YGhvA0R29dnedU1PzHIY8w2eJErIIz\nZuMA6Z3V6grkaiW4/DRjeZKdftSa5QDRiZsEE33SpbULCGBP4MEokHqRZ3Hs\nun5vzg8F4doQXODsicnoKu32QsO6IwVLtq+0cCfbf8mYIU/WsJYaOxu2TQvQ\n9V+X1lnNZqrHTYr5rE/cvioieEa2IyK3VAy+esMdmcGe73dicLesaQPjJOtu\nXqVi97oDhp2UJwfTZIKrFG/f5h0H6BfVsCY9XLzzugaN4xxFyxHP45yTunhR\nUOIUW3tHKXigK0fhOVxEGP2UfwyUEdc6Yt14vnAUbPc4dq40KSJxmVQZkqLN\nRtG8qAdP+Kk+KdJiLigzf28YU0wNxpuh8ZLeKotBIeRDH8PmuEUYvj51vjW7\nJ9oVCj896q/1pK5QnoTYzm3SRzb7bLXuf6dDgkRuEDbCGJ/PJhDSdp1YaY4i\nly9jRshUWEmyR1WkJfHfOIOR8HhXiXsnnQaq0NVeIRDQ17gq1Ak0F2sEfcrE\n/9vk\r\n=lcJ8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0c1f6419117097e8ab363d73483e704a71f69382","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T03:02:27.728Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.187-joshbwlng-remove-bluebird-0c1f6419117097e8ab363d73483e704a71f69382_1639105597899_0.8614327422107368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.187":{"name":"@balena/jellyfish-test-harness","version":"8.1.187","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.187","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bee71be6ce8938d3790b0561106ea7bd33443231","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.187.tgz","fileCount":28,"integrity":"sha512-/YpNrtNppgH406EUnVgyEntmp8tEC9uYBaq90xlMSg7eBPsE+oNU4hrClCb8DOeL3W59tyojkjSX3VsMZ81oVQ==","signatures":[{"sig":"MEUCIB3GSD6KP5gwaoJ6ROUsdu9faXq0MfeEHXLqAc+7xLfhAiEAjcqPQ4gHdRP6bRSnBV4A5KueU3WybEJYTRTxtr/hgsw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224470,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsskBCRA9TVsSAnZWagAAibkP/1oQ3/0tHyfM5dtcA3HV\nVap1x7yGgnR0dKijtsE/uL5lM7kK3x8GJ6jqcY819ot6at1XjaGOkdygBqbC\nbKjYJwQS7i84Hlb9elwOZc+x6BlE/N4oEMn0jjXn7V8I7sNHKK2+nMTaNFsy\nOyRfqEVhxadUpx1I0xmV0CB3hehZ7LEHK+dkZkRDX1jOx3ynRr9sXk8TlYWB\nOOwDe5j3dH5tmbeiggfRnclWu4HRxUdC/N1h7Qq4qu0KEDNTKGoIwnt/UuWx\nJj+3+cXvzu115Uq4zHrdfvPXeOVOncsXfolJ7Mb2CnjV+B9+e+uyH3U5JpZd\nszJDZ2ntHLAKzHtV+CHRaECaewMaQgD9Qnq2PV9qjvDxkNfMgWykzxp8j9G1\nDm4VUZeuX5r0KvPs/XT36MJH7A8AS/iNwVGpsNmxfQryS3RX9ds11BauffRJ\nP53OaF2tmCeeCJBHyhgimQiK1nBEHCxYRRTsTBYKIf7fl1KcX6AyxZdJpdBE\nZ9Je+Jm06/Xg2WyIcUnKD9mHG7DQTqwuIym/xS/s/u4z7taKIU6h0oTB5iYh\ny4o9Ussc9+8CXLqjUAMJBdFvGa8//QBAic9c+OCkwsrOWYE8IT/aePKbJMTz\n9+xXYQ2tHY+ILglTDkZJyxoKNYhu9uhpk6loyvlqmlA0PLx1Ovh3PSSCy9BD\nlyIE\r\n=xvKz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f9705c51a1727afdcbb7b018c567254bd8d2c429","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T03:24:05.062Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.187_1639106816907_0.09150395781513132","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.188-renovate-internal-patch-f4ff382447d18f9bfc4e7be3c3910801b453c104":{"name":"@balena/jellyfish-test-harness","version":"8.1.188-renovate-internal-patch-f4ff382447d18f9bfc4e7be3c3910801b453c104","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.188-renovate-internal-patch-f4ff382447d18f9bfc4e7be3c3910801b453c104","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7997f1ecd723aea4b91fad8acdff75e8ab0daa73","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.188-renovate-internal-patch-f4ff382447d18f9bfc4e7be3c3910801b453c104.tgz","fileCount":28,"integrity":"sha512-g05YC0cnBauthh9aeQVl+n0dtKHMTThq1yxtSCcpj3OEQhOaKQ/40f3AetyJF4adTRWQV472bMAZmxiU26grJg==","signatures":[{"sig":"MEUCIDp/D3/pLDHj72NK3Y6MpiVXERpuVbD+yivxE3etPk9WAiEAmTcOA201UrCBxMnLlA9HE0FSn9ez1YaTetCY2A+Fzkc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224610,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhssnaCRA9TVsSAnZWagAA/x8P/jd2VEUEHGGwV68Us8lO\nV/8DB95SIdZkg5oNX/UKOKuBSuvkbW0an5rzCpcX3ILDbNjXMMUXXu/GpTye\n7dYHSPAw3T5cWhxD/lyHgY7J0xNFOThHrdbORhpU+6rSxsH9KukGwpe8foW4\n+1IgRFBhQTRP8r+udAEQtWHYDlQb38GFnFKlt7jMgTDBg+yiUpIWx3qjHIMg\nQETyTWUjs91DDU1jjQ+sQYaKDISRc+ZkJRBgwTeMrY8BkUOXO7uBIuiNF5fK\nY4sZVGkRV2b0UgvgbL/8Je03rmeIIt8l2T/wvuj0bYlXnSrjS/mgal4/I1px\nsZ3umBOMX6udnkMGbCDfX5siv4nBBj1HYhOyEKJoKmA8kUd6SXmZDGbI1UWI\najPVqFN1uJekTmAbBPCoiFlqcFoObvagYad3YFKNXR37EFtbO6PxxzeSPkGG\n7aUHjOsVsrWC/k0R8dpYWPOsXyCpIsL/sCvX2uNvJL4xHL64wvQ+U85XzRNb\nQKkpzyqG3c+xM6Ot2aTSn9DwFyumS/KJCCjKb4EblTeAqe5BD6utGJ5oPj/z\njk5JN5ptJgTR5IBXH8dbTu9NUxg0riaySLUwsncPCI8TJE7AYdLWcKLTs37k\nIZzXMBujg7DX3i9Fn6ISoc5NHV6rf7lM4U4uEbmrttS84gIDryKGzccMDISw\n/+qY\r\n=/HkN\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f4ff382447d18f9bfc4e7be3c3910801b453c104","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T03:26:31.866Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.47","@balena/jellyfish-sync":"^6.1.127","@balena/jellyfish-queue":"^1.0.383","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.188-renovate-internal-patch-f4ff382447d18f9bfc4e7be3c3910801b453c104_1639107033891_0.6715440635303778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.188-renovate-balena-jellyfish-environment-6-x-3289a7ede882839a98ef491e90136a043e4b35f8":{"name":"@balena/jellyfish-test-harness","version":"8.1.188-renovate-balena-jellyfish-environment-6-x-3289a7ede882839a98ef491e90136a043e4b35f8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.188-renovate-balena-jellyfish-environment-6-x-3289a7ede882839a98ef491e90136a043e4b35f8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0c0ad570917c543f6b5f0551171f5512793d9056","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.188-renovate-balena-jellyfish-environment-6-x-3289a7ede882839a98ef491e90136a043e4b35f8.tgz","fileCount":28,"integrity":"sha512-OGuOCJAbqrV4YSlVPvrn7BscrFIO9fjh6O4mjlq6DrKSCQsHqwjMwIBUD7kaoakric8AaO19bN7WkbEsQI9HkA==","signatures":[{"sig":"MEYCIQD9O6z8+qVqKHeapMO57L77h0978JDWN4yNyx5P4DsCDwIhANOh4OkHzs97eo3vuuJLjnOXHqjqzGwm8yguSfOykPlw","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224660,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhssqrCRA9TVsSAnZWagAAQKkQAKQ8zn3xMsyNmvjPhbt4\n95mAaqDHIyqI2rGUGxo0AXvFJuZROIp2uVpnQUVZl4kJjb9UNpMQMyZN0LhB\n/ml/CKmp4kMp2kpCkI+/bQhA9G1AJJoAb1RUdgCGXoiaR1ZH00P1LfI2wJO7\nskl2eqFFlCkU3WsBCTTCRuPQ8fHNNj8nyylleW8yRzXn0GALJpNkoC4/1hDc\n+X4bmxYWa9Pkx/dykJwYCgtw0L1bSKsyusYDHToT/diLoxSy2NBTGuNcUUaa\nrhnsO8m1XZmxuVN7CG71dyOGocfyiPKzBgxDTJN5y//JZVrM7HLdEm98B7UT\nqy/YqXUIzPiGEKrm5LKSdlaSEH3Zoem7QyUIYk7uJ7qpqj4PqRxiSgaQP22W\n5VHaCSwoFoG/8QvTBaxOztcrVxDI36wSBXC39Va+hZTI/gGJcTZkoSZvrbvj\nNQvyLu3bGAKzzr6jDmjtOEgGOQNJYnj0n5JUUVK/NGen2lon7h4uMwqqf99d\nsPaCFi6utkY7Xtmawor3LUAJ2B1qet25sLsK/5aFGTR1B4oigmvpK7x5EahB\nCkad2YghzRsy+HkPsxXdEWcXmN5iejOX4j7DfgpMbgLi0z+HHSPThjmI1H2S\ngYu3qdmf+P99qgyOG0Ayr27KtRfISyQwdnNxhbehp+S21xA9kcucCwd7Xt9U\nT5ND\r\n=c4IG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3289a7ede882839a98ef491e90136a043e4b35f8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T03:26:41.748Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.44","@balena/jellyfish-sync":"^6.1.126","@balena/jellyfish-queue":"^1.0.380","@balena/jellyfish-worker":"^10.1.0","@balena/jellyfish-environment":"^6.0.0","@balena/jellyfish-plugin-base":"^2.1.320"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.188-renovate-balena-jellyfish-environment-6-x-3289a7ede882839a98ef491e90136a043e4b35f8_1639107243351_0.6855841109529894","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.188-renovate-internal-patch-62e300650abad40e994f9d3ae548e7eb454bd8dd":{"name":"@balena/jellyfish-test-harness","version":"8.1.188-renovate-internal-patch-62e300650abad40e994f9d3ae548e7eb454bd8dd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.188-renovate-internal-patch-62e300650abad40e994f9d3ae548e7eb454bd8dd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4187e8ab1672aa9d0c107dee97a506deb88e8d76","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.188-renovate-internal-patch-62e300650abad40e994f9d3ae548e7eb454bd8dd.tgz","fileCount":28,"integrity":"sha512-DvCFaPugfhCk6cBRE7sziRLvVNGS7VIWcO0TB/P9UwYj3tyX4QxMm45qTSTj15FeIZHpp8vPHeL/9NiXVnvniQ==","signatures":[{"sig":"MEYCIQDF9PAN6f3TqWg5I5Y97XZd+3uqHodklBo1K43vTvOUzAIhAMNhFpg5e1bNL6FUnP+1gl2ScYLNHA9ppy0AWyD81zCM","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224610,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsuoACRA9TVsSAnZWagAADWEP/3Vkh43J4qtSgw7v9sKl\nO80LVtGJ6PPCVDfF/af//9/KFtVYX8ZRMS3PCm3bPDBxXtf1EkpybEXiFflr\nuXPXU96u11vJZfCAXHPAmJ3nyQPaS9QwFUUob4uVv2x9x/lc7X67oARqUtJp\n0hiKP2f5vDU226Jv9jTUg3CDZomIc/fjo1WHVGt/Jo1RxM0n2vcD3+cmVXXF\nrFTf6JU6nUz/pcRZLLoxd38sK3miMLHEJsdRsGckL2jaKGFgepNydOOZtIiY\nPNp6eLWYEo3GaJU6/ovuBU0YXoN1eB6kNNCZkj5zD52E+l3WwOKC1uFHeu89\n2pBnooGzDUNOpEkm4ufFEsBmPwNB410r7p3/30AHQaXAzM9aptyCMgkDKHYn\nAjQKVUH/JaHKxvMmtud+oY/LEL8NkDDhVbdrPmNAV7WSBExPJqxhoQOjInpE\nc0EIv3WfywXfIhoJnlGNTmx4kpKWzCKwKS/Al9/ETTWKD82B2H/iwSL2Vv3g\n3cceujZgxCLZSakuQv1kFjyy8Wm1tntTWpsUN4k1MvVJVAk7xxDu4VOkpkoT\nF7rMn2FiqX6/hjH7Aqr13PxRhdvPpcSzYA+HJKVEJl/Shh6uCndGlu9CwYEY\ndcMf3kcEG5G2dH4eOMNHd8CM9/x0lPvrzW8Clwo9FtM/UEFCB7rOW4xnCRp5\nsMir\r\n=XX2m\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"62e300650abad40e994f9d3ae548e7eb454bd8dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T05:43:58.395Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.188-renovate-internal-patch-62e300650abad40e994f9d3ae548e7eb454bd8dd_1639115264224_0.42400794997011904","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.188":{"name":"@balena/jellyfish-test-harness","version":"8.1.188","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.188","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2a56265db43bb0d2ac34c3a2128739655e4549d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.188.tgz","fileCount":28,"integrity":"sha512-4ZLC2OHBCfrgRT9cJXIer8ykEKIZuKJbffATzKKy4WJMeW5micMDKMqx6CGvZn0eyrENgIM2wNn4QKrYbIr2aQ==","signatures":[{"sig":"MEYCIQDs4eqnSIQuW9Kz3SRD1wxALTX5drZRFgOK2/n2n3y5CgIhAKzohVaVlzVeUCKTMQuBCGY3tfml+zCXnOgk4PfUewiU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224545,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsur9CRA9TVsSAnZWagAAlSwP/380GxGp2dSECw1GVYTD\nBRgcPoXAAFHM6bzspOT+cPHc5CG0BsM0bHeg0AKBR97J2jsaPh5w3Jl4ybVh\nAc3lTnP7zjWoXfzGS3utNfE1FAEoX5rStdGClHNo/ImE9wc7B+zgINoB1QG/\nPug5pIotT/M1GlihdMHhrjyvL9izeLUI2ZhZi2moE6shZWuYVh9DxRvFGpP2\nE8dNUa1ZF6tDppz0hAsOGObz+JIf+ghjvX/l0c+q3EC2idiEjXavAYAsRXZO\nbIjbaYGjv5MQ+o5jakdjm7qANViIuFomXujosGhmL6azgcK7adQr0RnhjHyY\n+yPTUzPU4BWywCt2v5KP+aAoaE5/fcy1kZ0kay2L3HZOioWCqCtwRXknwCWD\nYhDDHUHwgc4wM2qOuz9KTeNDzcrytWqP62qbZfhNpwlZYe/zr7qnRR2t1+YE\nBUE1YcsANXOWuQwCW3S3nxBMTXoA52s0I3XNLW7qs65U4pNknzHoRkJuiyjm\nTPBP4l53p9YcEDdUiouCUKAXnRI3El8kWhjK8k+L8v6ThD4bfwYiM5KuYBiN\nCGlNpwC2E2aO5762+/1WQNdsXjJyx6pkm4ued4f59e49rWXDGM3K7WqdNY+n\nt8LcQQPtQPOHGwJPIVTqNtDRSuSpE2L5TF2i8UQTUN0OrGIRjU+evPh6Jgv8\nwT9F\r\n=LMv9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c03c6f62423e6cc9e6ce832ada7d33f380065fac","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T05:49:28.026Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.188_1639115517374_0.2035620125071993","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.189-renovate-balena-jellyfish-environment-6-x-1e1882e5e1bb0dd506916ef7855371f3d2621ac1":{"name":"@balena/jellyfish-test-harness","version":"8.1.189-renovate-balena-jellyfish-environment-6-x-1e1882e5e1bb0dd506916ef7855371f3d2621ac1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.189-renovate-balena-jellyfish-environment-6-x-1e1882e5e1bb0dd506916ef7855371f3d2621ac1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"16afda7e1d618c072d125a9f5c747170b0b98dcd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.189-renovate-balena-jellyfish-environment-6-x-1e1882e5e1bb0dd506916ef7855371f3d2621ac1.tgz","fileCount":28,"integrity":"sha512-xsPKT6Tq7W4ppDomyyqUCtYe4QnITDoyH88/CGwLh0HdhE+3ywgsmQqvFRYp/8nklFTxfmY7gYRpx8FxH1a37g==","signatures":[{"sig":"MEQCICERkW5vcad5sviuDtc60CEih+Bw9aMYPJc9hEvVsmHXAiBmIPhHesRGefWxVjpKSX8YMBOYDRnLc33SBHh0kS0TKw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhsuwVCRA9TVsSAnZWagAARvoP/RnpShJki3xqOHwTeIdF\n/9+XWBjoKeQFEmN4B8o1cFeyX/0u1/4M+pyRbhIL5Z8TWMs01Sf5pq4gP6ng\n1M+MsFpMus6OyArXsGrj4DFZMs+bTs07HEAenwF33AEbf4Pzm988xdN2yksd\n5mAnUkDNw9xdyo58WouOcNtGmuAUHpusjgEwKHwRncd19qA/mmHBsAM/Lqk/\nEV62/v5dn/MMjZhI5dMprvTphX17kYPTrJRDav9agcJYD+Ni4N2ZbMNGaV/t\nE0aBYX8p30NuB/aWe6txDudN1XP6dT6/MPR8Qc4Ji204ozZxwGF8Vt28FCCl\nT8oZdadTBt4edbvyf4SL1brtOg952zguzHtZUIwk7lQVesUERWcoHqFYgNuB\nDJCSSvBmCEI2ZJar5+KRspVfWThQidHBnSoVHnZLD4wgbnoqHxQNEMKHkJxQ\nvr+l6fHapKz0zTks7y0/6hZWQ8bkVFOxHAMGmNxXC/ymA6D6xX+aGmqHrRxR\neI5ebiQWK98ThruZhG/2klJupVgW1B1A+dsYVoudyq7AJQ3raEcWbdkxfM8Y\nIjupY+8ZFE6Q3sIAm/3XZkoe869QIQIAJcoY5N8mCNnl2sOPL9B4K0ebbibh\npRhYJg9lWcw9jaC/PSyC7uwrvEEDZmYAl0r6AXbixFejMtaGGfZDhgL8eHu0\nC7L8\r\n=I/tm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1e1882e5e1bb0dd506916ef7855371f3d2621ac1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T05:51:46.718Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^6.0.0","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.189-renovate-balena-jellyfish-environment-6-x-1e1882e5e1bb0dd506916ef7855371f3d2621ac1_1639115797403_0.3884495607003502","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.189-renovate-internal-patch-b719b46558e27a6c40ba5b5559f869897f6148bc":{"name":"@balena/jellyfish-test-harness","version":"8.1.189-renovate-internal-patch-b719b46558e27a6c40ba5b5559f869897f6148bc","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.189-renovate-internal-patch-b719b46558e27a6c40ba5b5559f869897f6148bc","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3071868b99861011516bd50eea1e9e9754f32d17","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.189-renovate-internal-patch-b719b46558e27a6c40ba5b5559f869897f6148bc.tgz","fileCount":28,"integrity":"sha512-nB5VsdhQrmrOZd5RYCaF18TdkZJuGFzfta3eNInzOzvJhjbNX2oUL02HT0EstAyXt6BEtExoJKl5yytlRu3meA==","signatures":[{"sig":"MEQCIGm78W+CwVP5NGERgJ82807tJioKYGRnRysdEFkdGfgfAiAQTCulx+PS8TtngZf1PNkzF+/t84iyLkZEBZBonOO2xA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224717,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhs14kCRA9TVsSAnZWagAAm18P/3ROva6L3zmCGEvg4yph\nDtVZ/aQL848vhRJ7mxcana+NozdMOzYicQ7sHMMbGfdcFBxHlkac/8DPYWJZ\nGNc584qb7908w6EVNe9R+m+dquqjqZREOsohr9zHzMQz5kBvdhw0Ib6c5QUY\nuNUN2RxA6QrFnzaD3L15ZM+n3AOJptOiLl5jlew+wvDgHIMJYcoTIrxX78NS\nx0KDEm4jiciBoLA77/fzpECRe+fhXMuHhP2F0vlAoDQAaMhi3Ic5u5tbcqoQ\n5tX8KrCvqzIUV4lApac1sIkx+/itLjgssMc35eFOVQf7njox2/k6CsidrMcD\nO09alkg5+g73dmaqRIU5TBe41VLOtTQdn4/MxgobPA2JnP3Q0DrFe0bVRwVF\n2WF3DU/JVHwKo/qUFIXTWjXtJVfEtTP8GBMuJSHRSa9WCZ+M3zbg5Klm4EGM\nBFTYbpqZVCMBjnBaxcsjKUzCMOKCxctsBu9FmXcNTwHsoduVUW9Wj9GVU7b9\nrv3rvvtIkdjjPxdrjmF7GiA9K7erEcucLw/QRAiQ837P+xYRS9VTBAmCGxyJ\nXWnXcjlgs4b3YjWmd8fM+w7Nl54eyP3NJpOj13z+t9IM/JS2xpFYML2cAfd7\nIwgTJd+OjhTb4CJAKAkICqjU/nIXTts16xypH6GjIoKM6zrn2F762orhd8HQ\nKF+8\r\n=/lfE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b719b46558e27a6c40ba5b5559f869897f6148bc","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-10T14:00:45.842Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.2","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.189-renovate-internal-patch-b719b46558e27a6c40ba5b5559f869897f6148bc_1639144995981_0.27485075331799","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.189-renovate-external-non-major-ca057820091f675116f9e131dabc1afb1df5b87a":{"name":"@balena/jellyfish-test-harness","version":"8.1.189-renovate-external-non-major-ca057820091f675116f9e131dabc1afb1df5b87a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.189-renovate-external-non-major-ca057820091f675116f9e131dabc1afb1df5b87a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d08540458b6fa9868e1bad353397a1667808fd69","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.189-renovate-external-non-major-ca057820091f675116f9e131dabc1afb1df5b87a.tgz","fileCount":28,"integrity":"sha512-JaR9ejAK+70TlzvoQZWluChduyktNegp3fdcT6otl58RjxKI5JUTopqODehxwa8NcEsOEdPH4Dl4k0osiAA/uQ==","signatures":[{"sig":"MEYCIQCKSrbdujB+SPLh4shZX2BxRGqzR3zxJRlc/wfnOF6+9AIhAKcwlW4PJXMpsXoMmPNvSGMMANlfguvcj1RpZE4Pyb0N","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224693,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhs+8uCRA9TVsSAnZWagAA7KQP/j3zzcluwn+x1muXinhJ\nrNQ3fdllP8MVCQ27BAynAD3/SCGMQyPqVhFnrIMP1wHiARQqIwl6FjfCWJXa\nNogPeZMlCju3Fv+5cxrCMu+AuTusM4wCn4OP9SOeP+Gl0YPyQUakMOP/yiyw\nli3oMHhYFsB67w/1A8vkELDAQursYylU6LS7xHZ55j9WytcaRvt0a9cuRQ5Z\nJMtAstXwUylEBKjONurDrpmD0gKitscEeAvHgBpEZD/4dDctDs/gHP3yS1+s\nEYrt0XTPAygLYA6Gh5y3p28DYN80akx6jayNvVA31n4hxCPLqnJdIYx8yfqt\nyKrG+ouFkb5Nx0Ykktt/UH03McqXp+NUYSLlm+yZPFmFEgkrRIFnUk2gr7ym\n1fxIvhSnj/JAOS32mAdgGXC2Xr1vIIqcq4ZMrsY5oW4o9FUXBlD61vNEGfy5\nuKgNc4ZRyuFu5dbxBqqAXjn1GOwuoBMNE8HtKOgDAOxRPh+vSTsFOwdwu04k\n79XuDeCZOMb9JbKF4UBmPAD/qB8WizoSoq7sXiQMqcHxd1WH9L9/fz1tF4Dt\nU+tPYXEA5RAAVIiRqPYJeBo8O9o2AhwZexDIJcNDjzwqfZCz+1+0lvKe5Nuf\n4ZFCjFhtEmJVnUYQtoCYTLkBzMvTVNcnXKJZjThGYRlWK6BaqryzS7JM9wOG\nPig0\r\n=zE6H\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ca057820091f675116f9e131dabc1afb1df5b87a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T00:19:21.091Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.189-renovate-external-non-major-ca057820091f675116f9e131dabc1afb1df5b87a_1639182126215_0.7516487128878666","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.189-renovate-internal-patch-a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66":{"name":"@balena/jellyfish-test-harness","version":"8.1.189-renovate-internal-patch-a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.189-renovate-internal-patch-a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"097359dfbcae48d101a1bd9ab4817b54f357e53c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.189-renovate-internal-patch-a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66.tgz","fileCount":28,"integrity":"sha512-nZOkzGjxkO5uGj7chJMzckwSDufEUwJ5MsJDxfM9YKzmkKhTIX1PUHMwsymVmkG8bLguWBn3CZp48D/Y6mXNvg==","signatures":[{"sig":"MEYCIQCoJ1BWMukWcQYnhkF7m5fh/BbKzaGqpAKwRfiNEgp8dAIhAKFm3Ks1wSWhVJ7bv8o6QbwsqGI9NVf/Uu7Dx3WKAxjs","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224685,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtAjDCRA9TVsSAnZWagAA2msP/jhepsiAlC0MsH8zjMfQ\nG67mh8fXsvTZxmsWWD9EPtHXsGN6kaLUe4L03Xet2I9WrSRNJKjXOV7Y3c5+\nYaEro41AJiuUG0HR5jDxpR3wIpxCutKCXB3PF2kvv1QMJVq16f/uht5aBy/c\nnpB4+woQ7gBYetelP3u0HhVQMSk0Aeusj1A8MekrPgnkAVoIZ4i0+tZBAnwE\nj2fAU8KMLrNkASCKfETpnf0qXtXwlq+oZoi++O1VVioI5rMPlFVMs1VzOBWk\nfrFMEAwvI0bzK5C+lgHmqO2d282dWySTrB3bPa1mjcieOFgZuPlb4LKIVIMy\nkm/yL8U9PbR/cHtcCLyJsOUd0TUXKhu9MTHldqFvpEDB3SDzvgZDpLn8wsgy\ne/0y+yjR2NQJl1378txx2t6GQQUGy3KJyP0Qj6IbjokAbPXsvXEq8WVtQfsJ\nus1gUXbpoovLtsLRILKtwPShsit2hE1JAhbbE7hSBh0C3PRbTs2+kx6r9Qdo\nub66lxriyJ/2vVZBYDhO1iwFRUK9SXNidTYe1EegD7zvrJeRo7LVe1ugn4C3\nsiV+5UTYl2qfgWqnw+bS5EyjH96mqGQYchwhVbAuWy4wviRWLOxfwnrDbqxn\nXwnAC3PWeHw+G4o59ePGnx0f+pOCXtyNNxIQ3AoeFSr/uE9zMdMKHAyr8tm2\nG1Nm\r\n=a3nk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T02:08:21.993Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.49","@balena/jellyfish-sync":"^6.1.129","@balena/jellyfish-queue":"^1.0.385","@balena/jellyfish-worker":"^10.1.3","@balena/jellyfish-environment":"^5.2.2","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.189-renovate-internal-patch-a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66_1639188675168_0.3053800111241509","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.189-renovate-balena-jellyfish-environment-6-x-236abbda0117c427a133291cb82a6bde6fc75597":{"name":"@balena/jellyfish-test-harness","version":"8.1.189-renovate-balena-jellyfish-environment-6-x-236abbda0117c427a133291cb82a6bde6fc75597","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.189-renovate-balena-jellyfish-environment-6-x-236abbda0117c427a133291cb82a6bde6fc75597","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6d06503dd62b580e39ac22c05e0fa380f8040a2f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.189-renovate-balena-jellyfish-environment-6-x-236abbda0117c427a133291cb82a6bde6fc75597.tgz","fileCount":28,"integrity":"sha512-LS+VJr09N2oIOXC5piyHITivh26sjpwH1BST6d2RDPRHyH3mIuR1zwO6fGF0HxK2ek83izSeyr8BVSZBmQDm3A==","signatures":[{"sig":"MEUCIDf+rjvf385k1jEE5V2YD/Qgx2hIZ4yOj3cA7WyeLPKKAiEA/8d3lv3XH14lvOyEh8ydqL2B7CNyfHRe8maEXiu4Iz4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224735,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtAkZCRA9TVsSAnZWagAAkGwP+wbMxKtbTphx0LE1ptW1\nc/kW1e1atHEOe8pbnk9eaPcRucmBHhZ1dM1g7QvduL8TyuhKTnUevz8oUqhG\nGmT+zPxEnt2r1hXPXTnXXbNgmSWjmNziQKF6ZzyhtwiXGqUHr5o3VA7IeFa3\nbTUpxUpJnVz/F8DmlsrbqgnAJNOHSMdQAUwpeYfqvZaOLGIg7LFODfJt9i70\nmquPoKa0uXrgMTqrVCfFXnOLLEM7SZbsY2ufkdFcHn3npPW7QaMutu5n873n\naySCsLcDpvcvVK87ymPLBT327dBeStBkgdassG+zJRy9Loj9Q8vpE85nzETL\ndBrVEWyamY8cdm5x4umonDAFNIg7gVzEXdAoiiWZt3LXDBlD97u1eS8enCSH\nuwK4jPgRvlq/YC/HOv8RUHaIlLRhn1S05yVnZTQ8sa6Ux2W9PvsINGYUdGIt\ndvDy7rrzW7o05JpSnGOpMoWh67zav0H8Icg51zaj+soYyt6QJ4oSdBKX65bk\nqlESt3QfRNiaRMZi+JC2epRTB4LsJ5jng6V1I4W17rwSuNSxsf9VHZgAOHNx\n3hBNcUsrdtNU2CmSu0qoR320sTNUHofs/RM8Q+vPuyevoZWVRYHgzQUjHCxE\nAoRECAMc+j0UV16PDPYVgq8n2LCY2HJjUfzF3bZSuk7hV9JwSWxy2y6FIeOO\nWzx2\r\n=W5Q9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"236abbda0117c427a133291cb82a6bde6fc75597","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T02:08:26.319Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.189-renovate-balena-jellyfish-environment-6-x-236abbda0117c427a133291cb82a6bde6fc75597_1639188761424_0.3492930612751899","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.189":{"name":"@balena/jellyfish-test-harness","version":"8.1.189","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.189","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fbb7915047110468d520da3835a24a3b86cf6483","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.189.tgz","fileCount":28,"integrity":"sha512-7xaRzYiyLj/CQakJemaQeRi3/nAPG4pjdAmso+cYWZjLof9CuhwAHvcjYN3K4io0PUG8w5vrajx82E54j+Xx5Q==","signatures":[{"sig":"MEYCIQDEfWY5FryUnHkeEmVXJbQt62JetuZltHuVGwIijH8BUQIhAJSD24YRLC9NYQLis0ZiTtLJsdnJT4+3HkxTtVKqJ7jm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtAoECRA9TVsSAnZWagAAbLQQAJAe9R5X+V5H5MQzgjyL\nvB8visKSuH99/UfSrMyVYMhi0DmI4sfI7zBKACOpUYWb5L6U0+LLfPluX9eY\nlsQ+Cr5lYYBhNQeqklVdJE/wg6dOzZIHaxXe+d8kiKbcug5L0oq+1K9MChuO\nqxlgmq9r+SESizD0/QuqPZzSFxmfq4EuQD94ijz9Lm95y8WT/n7xenyX8nsE\nBhdNnxSz369UzNDayeC2vVuxrufhzWDtoPcI/I6I6yZzADUvjW6H11pXenZ3\nH8BTTi3jeACizvtlFVI7KkzMRAUO4RsWSuQgDpHbmLGayQL2ZVNVRQpZ15bS\nxd/IUWCA9jmXHEu/HymCuOhPGqBP75F1H0/D8zXkbaktTJVax/XuzXNLeTIG\nJ1vqDtg0pUF2XDV1JZjwPeogjE4sW12lvcPW4k+jHED8M5YceS3Kkb+UEYhP\nQQ9NJCo8QZACeilyYSn0KxX5SIkp7ur6MBI7ukVbEJKskHGgQNUGPxlFJvog\nbWNZEmhyPuDkghEnUzz1eAlLhqQwkHijjkSX+G1IfEZa/SDkLZgrOpDPqbqz\nZiTd0MehBbxGuFQ3dQZI3bphL7AssjMizYFy0zdSC+RAqlMPrwF9ZG8Bbnch\nTyfKTul9El+m90kjwfkxJry/2eylDNBMAtXYvySdiVKzfhpm6KvaIrvUakyO\nj+jc\r\n=2GMx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ee652f258d3b2db127ee719b7835c0c26d797e3c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T02:14:32.355Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.48","@balena/jellyfish-sync":"^6.1.128","@balena/jellyfish-queue":"^1.0.384","@balena/jellyfish-worker":"^10.1.1","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.0","@balena/jellyfish-config":"^2.0.1"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.189_1639188996027_0.014784452154064542","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.190-joshbwlng-bump-deps-67b6b28a4bb7896b803423eb326608755fc4e472":{"name":"@balena/jellyfish-test-harness","version":"8.1.190-joshbwlng-bump-deps-67b6b28a4bb7896b803423eb326608755fc4e472","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.190-joshbwlng-bump-deps-67b6b28a4bb7896b803423eb326608755fc4e472","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ff217dac8462ee07fc4e4b39a61e6e542e2541ce","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.190-joshbwlng-bump-deps-67b6b28a4bb7896b803423eb326608755fc4e472.tgz","fileCount":28,"integrity":"sha512-NP0pi79coDsDKPIAKrUOmX4tK5T59abCOTOEVK0m/+Z93VRWNI5DS18eWMmcr1T540IwzPENYSWA5E9PRYTESA==","signatures":[{"sig":"MEUCIQDTBOj9e32hlunZCGd/3Y81rF5qtp/jADtyBre3ax+WEQIgR0sdXo08PhLkvPPbfc5CaYRBFFAAisIxzZtXGf52L1Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224787,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtC6ZCRA9TVsSAnZWagAAHXoP/3sqkeKikiXtbhcRBd3n\nlIxozd+1l6WXHs+9m4hEuy+lLQDsJ+Z0H3B/RRIAXbjj0lXh35QTstKmpYlx\nxUm8ws9DDvKfiYMicvjY8wLxeLFRY+FHnXD5a/5Ll51rHnsYI0R1LIfgJvQq\nXKxQuK4hbVR8mDEki5zOo4MmSJ+ynVUjAdOykjXIrvaAEZVJjBjhcuMsWziJ\n4kCIzKC378woeNXQjCtxUpruQaMO8qQXynmAnW47/54OIFNh1Xa5tX7nQmRq\n7zxY3akBnlfirO7STFhApoex44LUda4+SYolfpyB9OhopFf+jn2rZOECnL51\nkkLuk1caJEs+2hMoJOzOX54GBIw03e2sJ5MrxHB8l/EPFFhhCiDlSRKTrwpS\n/hX2cgI1jVly2wXM4eG+LjomU91QfSr+4X4x0yy3k9JpcbHb1AZN2w/ke48E\nVMUWkz0HwArBnXnmM+MaUr+FKopt90RY1AUuV0RGMVDI+RN+Dh3aOAXHF5mu\npgj6zi7oQ2S8TDizV/gj/2TGRb1URte1RJRFUYLGQ6OHdJRlnSkDKfupD1dU\nLt8CPy/PN8WxU6qXUCKnKTmd7NgAHtxCxe3oB6ypbhTqmO39L/Q7pDuHeO2q\nGEGH5zIvpnl3dX7NoyaTEwXTIuDhLlJIabYq/cpJvIftoVoPG68KH3Iwvqvh\nvijK\r\n=wl0+\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"67b6b28a4bb7896b803423eb326608755fc4e472","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T04:49:40.495Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.130","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.190-joshbwlng-bump-deps-67b6b28a4bb7896b803423eb326608755fc4e472_1639198361302_0.41985489193421177","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.190":{"name":"@balena/jellyfish-test-harness","version":"8.1.190","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.190","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"db7837e50b2e89b0a8d7ea2eed780a69e4995833","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.190.tgz","fileCount":28,"integrity":"sha512-gKEvFyAeiCgAU6edHIvem70yNWQ9HHS9vVGyl5eFWDQHg9VvN1dDcA5WDMop98neLY5Q/1LmWYsGUl5Nw/UNTA==","signatures":[{"sig":"MEQCICz6dwsz3QXqeowNPfpeQI89OH1eTDpmWfnJ/WeZo/umAiBhB9gpfheLmN7myFZC3eu7SqtmHDKXFEtQVzK9YNwJhA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtC+KCRA9TVsSAnZWagAA4NAQAIwfwcuhuHxaGJfykds2\ntjPs1pc5KDVCiFWuC0dSXHxVkLJVKYzWRFDqPBnsgqn0r+c2hEatzAzQRy+i\nH5fNtgPJaOyjEVcLLNfoyJ8XZc5ouVjLQcbSITRdYctvJxiEdcyXYtRS8nJ2\n0bMAajqP3CXS2L0QLliLDyDbbp4uNSQUFNmWAJzwzpcOjAGzRRLbD9qKUF+c\nQu/CyXypRHR1yPJOsHa7w1ABG/OR7kYLu+kkyV3rAm+pnldXHepIV2Mazc8a\n9JwhdnieaDkRJ11XzCPBmSruEmzxFWiunNv6TeWN3Hy3NN8ny0wrYjfNvyBB\ncYU/uerJdxxYQwb2CjyqJjC0d8BZhfaiQeKsZ/I4CTl8VheXUwdTL1Zw2TzI\nF2LQsF4mLX5SRnZ3REcMDih1KYNMwmSW9teEPENwLb959xSiV4UQafACFHbY\nxysb5+G9YgNTQ31PjsClScu4zR/RFbBoTaUnJkM/KlXDq1afpbL8i/lHEHf/\nWf28P6sjUgmZqzv6JC3iGj93VgIyxVAdBVAvcLBYHPHdvms1aSbEiL2kYxn4\nd4p5AUCgTICfhvIvurxMSDVNOcFSa7iEY32OAIQIoViso5hatRxGL5oSNCRK\nmvDqAnMG9/CbcxBj3yS/DAYTYv1AtcNLbynqn6jkW450UvMGJMLXqYJN/pu3\naB+M\r\n=Z4I5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2b542016f403ed01d35b6723abad382f2f3c7433","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T04:54:28.075Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.0","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.130","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.3","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.0","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.11","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.190_1639198602117_0.23400588568542458","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.191-renovate-external-non-major-47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7":{"name":"@balena/jellyfish-test-harness","version":"8.1.191-renovate-external-non-major-47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.191-renovate-external-non-major-47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"15d209d6ec1951bcc2115bc67fc4488367ffe381","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.191-renovate-external-non-major-47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7.tgz","fileCount":28,"integrity":"sha512-ChPaRfrq/8WLA0VSKZUz+d5rmzEEur5JRxkj4BH97rf8R2rAHeVOPVVLtODWCjkRgBPSWbDFTOc9TSPz+xWXXw==","signatures":[{"sig":"MEYCIQD0GV90Xh9wlta928TDkf+4LX1JnTWQt+IDAlVQKGTs4QIhAObgZzAHFq9mYIyMwB50o2saAeabop5OWAS58PZ/eOZ9","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224874,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtG+8CRA9TVsSAnZWagAATzAQAKLjdGRla1MnunyRRkli\nJ5LphxwY0Yvy63FQzQswi9mf03/+nslW3j5yy4qe3zr5XLJIwvgPr26zUH6e\nCCT349msojaJwXtyYRNxl34oLfvNbjMEcAj2I3QkPsZvhlFk/Yw7MAPfqv8x\njfPUvp8zVrUmjawhCSVrDqmsbhYvHlYzYEUejQofAtzLktqn/Kl+XJvbBbII\nMllziXpy4iTK766UwBf9zo+xoKrtDA2igGrpHCETrAi5puBThQNzntyV9FaF\nnfXDGrSa4d/NnA31xIbWaHfaUgD2HpNEN/4/1l5HIOHNG/y/cMWNwi09bWUJ\nHrPOPDToIk5T8BLqgF+bo4AYEl6azHP7JA8yV3la9r2MsgFB9pMICvV8xBl1\nDzNorSKX7646YsTwKqauXOA3zYjesw8ZcpuhIpW+rqIIk7yeg0xNh6xb/jLg\n95PzYwKtX0IzSMzO9kI6zp4+WGFh924HkjHMO1qjLktvuMbjfw2861YlU6ts\nNWwQWaTjJNPSGZRUFva1WsP+zGEdpdZbRxuz6W1LH5sWwHxl7wFCCJZgusn/\n60wsxkAsRj4OGTq2TAvj8dGVmq9w2LLaoHvvtYRnyIEy7GAPzRaEOX+eCob4\n/5UJQvfEet28483dT8wLAnnL6h8VYuK7botJUyoz8TcdYDcYbd0Anb56cXkO\nmGHW\r\n=wEk7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T09:26:04.979Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.130","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.191-renovate-external-non-major-47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7_1639215035956_0.45706951199700563","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.191":{"name":"@balena/jellyfish-test-harness","version":"8.1.191","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.191","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2ef47944fc812c98209f8ce7995259eb6174c341","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.191.tgz","fileCount":28,"integrity":"sha512-UP6mtJPfvP26mjmebSnxdJVsmOrw4TPtwiLk734uYHFsaj+g9nRQMJhiyZXrsrfWKOmEcF+KiTuFUWrnLn++zw==","signatures":[{"sig":"MEQCICzMU2u75ZpX0D4G9Kvs16wrtwoR3gHnSdbXkVjYBRaRAiAbWANxtFEXrVkbYA3bKdcRVev3tb179k3W6tiBaGKd3g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224805,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtHCsCRA9TVsSAnZWagAAArMP/3JNaVCciYFhD5/rzsiB\nTtRQUUOjatnNfm882XB3yhS+DMt3XMe8iJjyxd3rdWREH24ygv+DJyZhfcrK\nZuBg9NUqUt0/nfXgRwfaVbUNS9ePM7R3OKc2NtCyi8bQwk5l0Cgwnx+nk3hq\nN79w2+jwmogiodzAo+a/cPkbZckABUIGVd49SFUu9wR0pyL7otOL0wXsExLD\nMIFsR5CLShSNm+Tw+DRXcGabyu0wgFbNZWtCqm44mplpDcIaAJ87MTd+yb9z\n3jtPknsghzGFJxlpp+2QSqCTO/FFunp0wce34hSEjQ+qCBn4i89h1gfAoMT4\nzEMWzj4SCoO7zWWokwCsbUA9sfKw9FZpdhy4swU3CB1HKN1gQkSDYnDCAUd/\nApTxOrBrBx/CaJvSW167htc1nRNJ3ZTeAGhIX0T+8HqYOmXxBYinWIcOVAr3\nq4BEjUdip9I5/AMDcf1AyeekCpmQItP34uCuaGaGbB8UWucKr1OLXv80juyF\nburoxtgZ1RLLRuHC2UEbWBFjZmNP+GVVerSHXarqGrLc0r4ulsp8wnMFda6t\nLB/o7HumDjaYmT8R4o5xmj7qfIvodpTHnRsSd3UWPDSS9w1FvWRKStw8B6EG\niqyM2H5xIwQY0qDBxqpI0quYz9bZD2Y8Vtwe9wC/E/Igc23udhbuLLT3lDBr\n7gQc\r\n=itWX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6059b5ec3ada6e2cc369ced4a30f8f33da7f2f5a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T09:32:31.907Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.130","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.321"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.191_1639215276810_0.29930798647515755","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.192-renovate-internal-patch-9cd53156437ee491fe8fc4a2cffbe47cb5f155e8":{"name":"@balena/jellyfish-test-harness","version":"8.1.192-renovate-internal-patch-9cd53156437ee491fe8fc4a2cffbe47cb5f155e8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.192-renovate-internal-patch-9cd53156437ee491fe8fc4a2cffbe47cb5f155e8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"072142edae6cff66bfb723f616c09aeb4a2954c5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.192-renovate-internal-patch-9cd53156437ee491fe8fc4a2cffbe47cb5f155e8.tgz","fileCount":28,"integrity":"sha512-1Ea4iL45eohCn+ylkDJ99+a1kqk+OlN3B3pts3btHdGM2M5qen4yldb9AiazKxs9pYzUMf5XaqVWWNM+5EYhIA==","signatures":[{"sig":"MEUCIAxqlsgjLR6DkBZ9sOjxUGrhMp9e7RM4RSy3U0TMr2PvAiEAyNhnAPsI5iEMlm8l6ljO7S4+CeX3vKps8jtC0lkjt8c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224983,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtHJmCRA9TVsSAnZWagAAspQP/0xE8Jh9oZ1M1LqY7tx+\nTcq6ww0mMaeBF9j6KDJSrV4N+gq3FRwtCr0k+k071Yt90tnJ4ic0D7LcBOam\na08AOHLFEFKyr6WiYCQ7N7IHSf8LFKV2jYO/6ile/Z0+63Tf5t0uEd63H9zQ\nPA3PuoP1k1iE2lFLnaz0otyRfTpL06ALsMcDi7nEXd0QwAtz8swPhXMyu+zl\n8wvpkyfus6Z48lNFwoHsuXS2dOyQ+w/70xP0BlFTMyugjufXiF6ZpxbC852B\n96AYs2IE32VohCXbmElbpMfg0inuKRDmiIPepUaQZDpLeVv4XLuWlR/0CjDl\nfgkZZXYVZa4uRiSOh93M23s8ih6wb8kCTnnWWpgX1HWDlCmMsmqG6HQ+eEzG\nSlTFL+kzigBBaNAyznhDfnSgb3WZAyNCVfaZe9VA9wk7U28IXhU2+qcSVMv7\nqC9ORdSzRDORT+bgz3jTUmuHYXBsDycKwwqDWt7SsQz5MIE5rxnH3Gf0evk0\n+bRGTVvE3qJ7zOq/3xDWBXFQ98YcQ9TJP+RystxPEHaapTReom8R0TnYpE+1\nF8pLHBJLfib7+Zps2tNJdwrPpq3MDa+kbSCuzU2m8liJMWsOQrgIuLekEEdU\nNJrVKstrEY2zejY3CuZMWIWBgUMjxgW9NgY1Fc/pUmzyBTKiuh9EBC9D51l1\n9cSo\r\n=Q8tS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9cd53156437ee491fe8fc4a2cffbe47cb5f155e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T09:37:58.224Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.130","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.192-renovate-internal-patch-9cd53156437ee491fe8fc4a2cffbe47cb5f155e8_1639215718245_0.801632338797311","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.192":{"name":"@balena/jellyfish-test-harness","version":"8.1.192","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.192","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b65e01dde91d74aac7bcf74d9f7f2ec7b671f8f2","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.192.tgz","fileCount":28,"integrity":"sha512-oz6gK7gFcNDej/FAqRUIDpvo6Fw5ePhZIP5RjjsfVi9MnHCMnVq28Qbb7AJEPGzNFNDykMAqt/6+WB/W3GGbeQ==","signatures":[{"sig":"MEQCIFVPjAsF8irgp94wGw7JSvml1cvDBXRTZR1m2SJN1e1vAiB1X9d+r/8fLbzcNLZO/7TATcpdW+baig1EHjr3Gacrqg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":224918,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtHNjCRA9TVsSAnZWagAAfwgP/0GthB5QQEX4CdRG4Igj\n/7DKzeYA5r6gfJmeGlp9xyGtLIRNRjGecj4YOMqQ5PimyND8TRAX0jrt8qKf\n/mGmOKCmbDyd7Gkyx7cnbkIXppTjf+p/iDImjzJw5y5NhegCqc3aPK27SHo3\n/F46hBYWz4uf5gGVE2siUaQa6D8kjWAjkkv8tQaabBl2pUEzMB8xezIIAsW3\nW1CufzSQFQ0jSXc5tiqG30U19kD8nsA749ZAcQC4b23sGO0JTv2Pw+dkOemG\nc+BwYmBC6UiQsj91XoMkeE/ZW++VJUlHE8TbprKf5KxRdokLEllOnTk4er4D\nSJCYayj/4Jg8UUyXMcGXoyC8vD+A499uXYD2MtTf2YhuYwFesuBrh4qYMh9d\nZA4bh3jWe7U+1JtYK1qTt4FRZSLc5iedeTwgbfkNmFAnaOljLPWdZuzkpboc\nSf5eHcnjxFRdLBTxDJeK3J/W7EK4B4v5AB702t2g9BeZ1Z35SKwGe/gZ4e0j\nfQLPD5hqHGINCHjkBsgc/fKwAsJ2yWB2nfGVPDqyJVmiQi4jnn5rBSlXoV06\np0lKv2qVbZ1HzayIJsgPPtz/Iy1tggiwDwVQOczplsYEj+zygXpzMQzdNfwi\nv96VK843iO/Lkn98iGLAjbOHMdCWiK2Nf5+9W+j/P0HRt5LFj+4RlieBo3dD\nCSZD\r\n=Ljzn\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"14acaf6acb4b6a9d2b6465727daba5fff6f094df","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T09:43:47.098Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.130","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.192_1639215971687_0.6884959164113158","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.193-renovate-internal-patch-07c36d353adcde7adaa92d1831a6034373b9142e":{"name":"@balena/jellyfish-test-harness","version":"8.1.193-renovate-internal-patch-07c36d353adcde7adaa92d1831a6034373b9142e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.193-renovate-internal-patch-07c36d353adcde7adaa92d1831a6034373b9142e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9cc2d639563ad06046d0b43361a5c4a81dfdfa5b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.193-renovate-internal-patch-07c36d353adcde7adaa92d1831a6034373b9142e.tgz","fileCount":28,"integrity":"sha512-U1hg9f7BI2QhHG6PlsS6E5XbRFIQ7/1xCGpm38w70NIbQcFPp/3SKoXZEKeOqTULMbeLaEK49rYojL6jXtd6+Q==","signatures":[{"sig":"MEUCIQD+Oh44ZCsiFoYj8ZTeIm+zKn7RJA0xidTFIAulE46zzQIgM3l2S+3C10BCPv/QCZxZr8QnbObIzyjBey8Txlp/iJs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225089,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtHT4CRA9TVsSAnZWagAAaW0P/0BxiZj3QvAB4BIt7ndK\nVl+s7To91piL6FNuHZmgX8Se+u0W0tAidS4FLe68yNGMwG0xmQZnpM39Dpu6\nYd6YZjubaEixLpgSnlIkAvkx9g7flWIyyEnumGT+ulO+ilp+XrrereSK7Yov\njAYEywOSRKTNpUkEIVtyW/lm5uYnqnTOFakAXnTWyU0GYIlf9ILRLrSZjiGE\ncRgeoEhyz++8rAW4aurRxfm8u1+VwgJxsxVtBlfU0xK9KtMcQbBmT9uL0hi6\nuMqaF37yOa8xwR1Mi/1pCO996bVFfYqB1gbCBCEnUYWILvFv74A+fTvks6ty\nff88zkCNASBj3dACWqZEgIr+Xrqo17nZzEQPNKJQs3xIQCfmsg1hu+XzXl1Z\nO5Hj+AvhPnmPA2o3oews03WR4fss2Pwr44Xm4NagRVgJQrmbhb8d5TG4yfv8\nnWYhT1qP4JH7MNfBsCv34nh0WlF/A0c0wd0ZS0WAyof5jnRpLTSKKuvRRkp1\nrI7Xb99Kdd4g6tpRC+aUN760gZ2zRPQTiq8TdGrQ4vTSFUGs1qcQec5PQzQz\nFFIRu4wi9YaJjiVRvHrZmYXi7b/pCJEitoRtbhkRAN36FfD4/xAjs6ZI8ZkM\n4iOXQPvUACYzrhbA2KGabYYBhCOV8nbE04GqIKqNzxbd35pJgcKU+zicIhih\n7Sw3\r\n=murx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"07c36d353adcde7adaa92d1831a6034373b9142e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T09:48:59.753Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.193-renovate-internal-patch-07c36d353adcde7adaa92d1831a6034373b9142e_1639216375950_0.42538299103303956","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.193":{"name":"@balena/jellyfish-test-harness","version":"8.1.193","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.193","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"045f16f90e4d844830fe6d1488a4ecd3a5207e27","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.193.tgz","fileCount":28,"integrity":"sha512-KC5ZSBo7lXubCSFHNqk1dg2Bx1DlvCaoHs6HfY1jqdpKynmHBHNknvye51ZVDyNBryKik8PtFaxlaGtNj6QeFg==","signatures":[{"sig":"MEYCIQCObNT2oT3VaXQKzRCMu/NeU7xtW18C+XiT6p+LNS/YAwIhANLo66Z2wS2QppGu/jcAul89Z6Fszz+D840JNsbCzuvt","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225024,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtHXgCRA9TVsSAnZWagAAMk4P/jSK5AtDyA0GCVpdFhK8\nSzzRDlY77Hyo4CXqe24BehEjdHb64TIf2DkDRLjUlrrFAkSr+FRSIk/sc0Ft\nT9Bpi/Rn+s4HofZMQCvl/Q1AAYsGz62vgt9360AlkJexRxbpHcyo7Gv/DJOx\n4Rfp1+doWzEFit80dfKaZnf/bUR7x+hwnwpU76/x0+ZuNXAoGLNwreu1R/ou\nQdUtFBcNFk7jyELL+pWzlpCBPPv7WWIyCDge0MEspkgJhB1ck+Ja7i9F9kA3\nlQ4LuVKJDedxT053S5Mcyf4ZBLHeAYpKQfFUtA3EJDhUlzRndEDGP/DtsxVk\nVr3Hkwhn+5ciW+hwYpvaF0EJq1yujbW69cwizAhJ7kw0UoPJkDe81adpxOJc\n8Lo/IFDBpvUqjrlAFi6nxV8UPayvYl0i0np4BWDUBoThYrdQYW08SjXYk8BO\ncTBnB0SPfWQgFxSkEH/GWOh7I+tSS3B8eZrmPPymiRv3pLhilPp0xtvwjbcN\noE6Dj/Rk8XKPWqB2XR4tPFKdzwTHHHiWnsUsohiPSukDxY5/VeOY0F2j7ZcE\nuSNcmN94K346xBA7jjKh5yJHlqRePkKV+my2LwhO7NnJenRGMc1pI5Uft8Wa\nBykznzvxWVUtS1XuwsBl0cFJu7XYSvFKzr3bF/zgI5ovXjFU/BJILkbv6J1p\n5ouO\r\n=4XNp\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"64812521dad3212ff7d3e041a0e0f6cb5142924d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-11T09:54:40.090Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.386","@balena/jellyfish-worker":"^10.1.4","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.193_1639216608111_0.23035908768704538","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.194-renovate-internal-patch-6a4e3acc698b4a0027da3ae4e49b723649b9f2b6":{"name":"@balena/jellyfish-test-harness","version":"8.1.194-renovate-internal-patch-6a4e3acc698b4a0027da3ae4e49b723649b9f2b6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.194-renovate-internal-patch-6a4e3acc698b4a0027da3ae4e49b723649b9f2b6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b2445e92493e989a4db98e6160a06c9071d78b3d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.194-renovate-internal-patch-6a4e3acc698b4a0027da3ae4e49b723649b9f2b6.tgz","fileCount":28,"integrity":"sha512-0OzRYKsqVlfLPiiMkj9rI5E7J9aWhgGFudpq8uB+IJMaZ1cHp1dSOovA15A3RCBdpxIOy32lpYyilJTMo8s/+w==","signatures":[{"sig":"MEUCIHcqYheQ5DYG83REr3Qfj/D146eP7K3eo/w5aIYFyMIXAiEAj0Zr/blVHpmvaaFsy1w/bw/TJF7/PdKgF/Gavzdk06w=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225164,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhthW1CRA9TVsSAnZWagAAhvkP/RSm908ihu2gSw+PHzx0\n43zkkvZhRc93kbc25uXjKUnifVU8eL0+S18cY6I19MTq/Fyz8OLOSySza7j5\nO824znzcrXvLu7JZ8rRsSIh1Jb4kPGnPGKi38Y4Q4FQHLP/Jr6IXnnrvdJ5L\nAvTn4Vree3SPkc7l/qBU3ziLGTgbu8KJaUnTZ1PPaqIgM2U4XCPH+KPRFLVf\n228WzTDgeVDes3LRf+BD8Ekp4HdU59gcbfNfNn0NfeA55mr3ovumZqLabJQm\nUGtTANTmaW4PZ9sDZOWJua7L1nzSo7Spk7g6F5fvPoy8T4azZxtRbxHesG/B\ngTfnKLT0uOovsMdm6252q2+oGIr36Ui/wVZuCM+5pN+OdqfY7ZbgxhtOzXTQ\nIIZW37v8Z3PWYNk5LzcRR8y2dlKnYrml8mH4/gNKuZpTGkag+/6m3csidxZd\nAq/RkbxLGcQwPZOQ4ULNxiO0mvETRoHi2Pqpf3/WOuVCem5n5ouCiov+IRRE\ngs4IbEz4VCjKSlfLbLztFWqBpboz/UGIVDJorw2Y64rM1HhkFVc3Beqw6Si6\n+zoSVVO5iKgq4idk/345bCwesxaogC6YeUiyiwgHX/MbIR8R6dwKqUIIW6Ds\nyFRCY7t2CirxZLEvBqua0WLHRY27AQJDpGa3kdllgcTI5YeSPb7MLDlzwkCu\nRs3P\r\n=xTJX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6a4e3acc698b4a0027da3ae4e49b723649b9f2b6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-12T15:27:28.440Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.388","@balena/jellyfish-worker":"^10.1.5","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.194-renovate-internal-patch-6a4e3acc698b4a0027da3ae4e49b723649b9f2b6_1639323061145_0.9109955454254806","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.194":{"name":"@balena/jellyfish-test-harness","version":"8.1.194","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.194","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c16e8bc2d29020598b9e6ce9a632e9b70c6acdc1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.194.tgz","fileCount":28,"integrity":"sha512-Vl/3mYvukuW/BYYneF93n+8wEE/FiMjLdBkuqH26+A4WH5DIywNUgqI8Pceba46yu9r/0jObmnkbk1loQqyUKg==","signatures":[{"sig":"MEUCIQDoxVLHhbp7xTVWMZ0NhDzpl4k80hqw91mrKfB9sgANiAIgXBrUA8xGBS0ANoFEfydFFr1R+NcPbwYuimnk+N8DxPI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225099,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhthagCRA9TVsSAnZWagAAMwgP/3VUWoukHe3rJKKfqEpu\n1mYXEsS9ySXdnN7MFP/rpGCmnSXgU2tZV9LrReYjEjw8n7gyO3pFWcYASoGl\n96+YzHJKEW7WmRMYegZNrIv/cnAWUA6CBRHIYFfxsWZfmyFsfxhuLBV3Z0Ta\n4t5u+lYwbB2hHhayvKhBmxVFIPLZ3OKXQu0Tqx/do9BDia6uIinLGexHS8T7\nqZfDPBJlueIVtUurIBDAMJMQI1zSLVl6vcrjItjB/DaZ/xgzdTRnrFxby4HM\nYW9R9EV1i9EP07sUJgq++uMfWhppNoE9GWi1HYq2H8zQPHZKGiwEUtGQFbMc\nal2tJJri6N1YuJscVt9wtI5qUhBmjyt2ZxfNbtTfhfEEDo6XA1QmYb6Xo0xY\nzWnVd8cYGcZ+yL6e3+tYhNNJceSqzp7ii/68VdqGKitIIVtocnNyERtxY8a1\nV5STtD0QqHsrQi0p6ogQdW9NX0btji8muQmggHFvrrNFbF6wi9Gz7CUckHG3\nj4v1pGtq1Pk1D0cPNG2MShRTCw53PumpJJR8EsUxJi76GcXWCQkCvJJD02Em\n2LGzXi74o4ueUy5vKIIkBFZsC1G/gxYCf3hmegA7ZDgs7OrYyevsHmFqYQv4\nfoMMEj4zsd0EGWQbyR7hoPljFRYsyx5NnW+sGybBO3vzjXkKEtiX+1UumqD4\nXcO9\r\n=wGHW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"43c0eae1c9f11f2c84719f752a68112684179e0d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-12T15:32:50.049Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.388","@balena/jellyfish-worker":"^10.1.5","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.194_1639323295946_0.3385005740524474","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.195-renovate-internal-patch-978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70":{"name":"@balena/jellyfish-test-harness","version":"8.1.195-renovate-internal-patch-978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.195-renovate-internal-patch-978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fe6a6df8750e6a8026e25ec0a9d456ce6a61beeb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.195-renovate-internal-patch-978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70.tgz","fileCount":28,"integrity":"sha512-JgPY1FcNUh2gGotPjy92F9ii5iMVGMYzhyleMTzpVBHd+7JJ4eisrfZMMPp3q02V7Fv9KBoVyCRCzYM3BrURSw==","signatures":[{"sig":"MEUCIBKN1TFoV6quY1qyseIt8acf4UQYRjVU7pMcpI2JNda9AiEAyABwYn2dYlnG39G4qo03OfzrEblGKJj4c1aXfLRVJuk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225271,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtrZ1CRA9TVsSAnZWagAAsA8P/Rgz05Xd4XTNTnzV64GV\nMszFSsV4+PkFUjvqL6qLXDiqhGCciTnFes5uUqmhL2J1yVan+5T5UIx+4Fbp\nJxMt2clQNoE9o7VaFubKmiRVNz0B1hbR1ZD4Zaw27Q9kud6WJgXIRyvOuSt2\nqfYk3SbcZQJc2bI68JD12v5Z+LBRyaNaom4br4sIlQ+h+wSPq7XdogtNrUF3\nQBC+np1jXfv5+rIdHTlTta2p4MV2EOkY0J7MeRdpoYrt2gfdBj6N/u73UZ8W\nURv+uyAy7UI/qhPhfyjU26S7Dv+30KKD8AuwUR/Y3bAMHM4K7EgRUSEDbTrc\n96KzKtiTrZIMQqLlUljEk1xbOZM9yECZS0pR6KFRujt3qXGubE1uWE13Qazq\nlWq3ZPcvH/UQ2emmKacAZdkYlepOOzwCYsjrpsTKcxNjWREBhWzS1vsBcIL7\niV+K9lP8ucKjtRlMS6j0qJ5NwJhUWWQE06BNcqFaPsIzHjeABJfRfFFqjJ8v\nVxu32VcmEkQLNelGIYu1G6i1MqihC6aq8GNgf09/WoFHM1myLIUKu6xu2a/1\n0+8sDBXTn/vmOjTwEXK+BeVavJrxystm2DvRspyL8GRIPAaBds5V8e8DWcIA\nIREPedzo3Ia86oVozinuqoYogZNXDYpubl7I9sYdGGDzxvCBLD0xKlhbIt0U\nPP/0\r\n=XwZk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-13T02:53:35.512Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.388","@balena/jellyfish-worker":"^10.1.6","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.195-renovate-internal-patch-978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70_1639364213431_0.38261005434430495","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.195":{"name":"@balena/jellyfish-test-harness","version":"8.1.195","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.195","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79066e420cf92e1b578b1295237d001a05dfe426","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.195.tgz","fileCount":28,"integrity":"sha512-cSZLXUxZH4lNw66o3KruCn1TWaCMydF1QhP3t4vwsE0HbKj8ahEFbPUIC2gabWl6crXLGRbJaJPOxciKl+QpzQ==","signatures":[{"sig":"MEUCIQDw2wX0goYh+UK97QER4oeD6oh4pgRak0fVtvPjr+MDUQIgQnOhLGFF9yuAQvQlIObNGMLwfsfQuvdAtZhPkzZFaBM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225206,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhtrdkCRA9TVsSAnZWagAAdtwP+gPj2bnIqaMN1HYxxcs1\nsf8Exwcv/1tKQywpfiH2FjQcmkMzWaL4frdbE4aGCmG2f0PFq8LPAczAMK+V\nX7j6Lf/mWZLEHx83Ra5eqXQAG0505CLv6jiXzWvKlcRDAQ++8Mz+5mhe5scs\nGF3s22GbQiZS2wyCCrdjYY7sFLQSgqndMmPYLwJeaNrVXz2alSBP7g188fWb\nBXNKDEz6Pn3OoiMwA6HBeFNE0LRD2bIVfUMpEsexoZDT7C/Ca2rn0fbYhQbT\nDH4I8ynK3MAKMOg7YipzIuZIQBmvSHjri+i01wW7ldtNWLlh961dgExSH8wB\nUEnMe724DdkJQF88cRW479cuSE7u5Zk6WxIlDwqcxIbfCnPBHu16fa2yVLqm\niR3cQylVs8nupkQtE5g597PcsnvRdZ1TL4BDaKv/tKjv49YeWbyye0tN6VIP\nx3Z25xUIwahwG+chWdZPEJDqqKRiTNSALwiESTA7XMpcDNRuVV1DuCy1W4vh\nFCUkNFsUejJVIUnvh8ajktL89o3NIk2TspOmFm8VVY54sy1mnUqd4PQegSBG\ntObf84R2wd5+qWRK9pfFqNPxftF6reoYA1lZ/j8oEN00BFlzULbHqAjz9RP2\ntfYxHiUIuCifDn0VtIMizrDAGmcuIAYcm5IzNng/a3dNh8Q/Vb0yAtzVEqzZ\n9vWK\r\n=mQti\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"57508dbe90e4be553704717ac57ab3c9a6c0a1dd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint && depcheck --ignore-bin-package --ignores=@types/jest,typedoc","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-13T02:58:39.565Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.388","@balena/jellyfish-worker":"^10.1.6","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","depcheck":"^1.4.2","typescript":"^4.5.3","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.195_1639364452358_0.022461535954400258","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.196-joshbwlng-drop-depcheck-b5561b39d135fc52eb7ff069649241a2c6ad528c":{"name":"@balena/jellyfish-test-harness","version":"8.1.196-joshbwlng-drop-depcheck-b5561b39d135fc52eb7ff069649241a2c6ad528c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.196-joshbwlng-drop-depcheck-b5561b39d135fc52eb7ff069649241a2c6ad528c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d81eca1869ecbddeadd4e67886b12c3137d4cfed","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.196-joshbwlng-drop-depcheck-b5561b39d135fc52eb7ff069649241a2c6ad528c.tgz","fileCount":28,"integrity":"sha512-U68eMe/st3TLCPTLyVn9dNzy8dXtoainS9hww6pvq2DWMzu7ODsmjmbQDNgxcKQWEI9Cevm21XmU8YRknqbB0g==","signatures":[{"sig":"MEUCIQCch3fMOVjyWDyIWszUUqCLK7UN0xrWd1DvckTxWQWadwIgfG2AdzXF9L47awmCzE7r6tGW7Pd8r6igThVejxar9rs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225259,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuAgYCRA9TVsSAnZWagAAhEIP/AzLA9+EjUfgPK3gwqzy\n4TP5Zg5Ksm5/HeAlsSMj0+rZero9BDZFMB5ZXaFXaV5RAMAMhQwKByfrL1VK\n32MhMzjW9sBxgAbS9I/lR/tUq4eoHnFotXdHCM8DTXz+N9OqZI5kjEwJE4+k\nhNe9eJk5375xMHbmhfTnBCugh7PKlF/fwXZC4h4z17nToEyVz7xVxdC1vkcs\nAipK2Di1KMpfZogkcvRBsTvHZco3dDeeyQwy45zv0OLR3p2Yk8AFeofzlimw\n4sEV+9Y4qYP5bpgD8euTCO3IdsaHUjoDf7Sd+fuKoTwsmpFhUrM/YPS774st\nNq6K29DnNDlxqOnpARAGFhFxpfzwhvN1MmPbNOt3IHR/c42z9Q9j00DkxUDV\n70Qj8EncbD9b9/Y22vLsohU9eq/0LRe2UDK0rBpGNSatwPzJ9CnzTneuFdJa\nRX5ml6b1uuxdEeLnF7rARrM8chAVzH505w5uwQb0eCuDM0Ioeblb8Nh5XQeb\nVHZ23QkwflZYVaOcD9GYeKYRaTWIE1YW0rkV2aI/DgCQnBtv9tpluQJpM1Tw\nU0s5AYJXl1QwSH4vD2poFFtHDQbmJivVtICQDO5qF3YdPUmScTa22chRr+mU\nSSeQ5zGzlQl9DHnzG1LnBMK/bS0hoR2aA298sloocPXvlMu3FBodAxOSkWPN\nzaDt\r\n=cD23\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b5561b39d135fc52eb7ff069649241a2c6ad528c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T02:54:21.022Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.388","@balena/jellyfish-worker":"^10.1.6","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.196-joshbwlng-drop-depcheck-b5561b39d135fc52eb7ff069649241a2c6ad528c_1639450647909_0.5553456763403","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.196":{"name":"@balena/jellyfish-test-harness","version":"8.1.196","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.196","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"087e45a287e4613b667cbe1e9a70d475307f2911","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.196.tgz","fileCount":28,"integrity":"sha512-EYsoRj3nQCnI97GwQj3mwbHxaahKT+etorC2sOCRPZPcc7pup9zW3kh5SaNujgSMXOLLRWifEMeiUYxhHccLWA==","signatures":[{"sig":"MEUCIQCVcQIS/+nZqag+PHb3Na2yx1UkJ9VNxLQ+jr1hUFRTwgIgM7AOCzh1Kl1AcmxbMu6klLVY2GHv1TAqt7NK3serdCc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225194,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuAkACRA9TVsSAnZWagAAUkwQAIO87eeSWTDqIxdXJHWV\nF/qogqH+S+4voq+D4NQ5JzF1QLczhUPzLj6aP5FgqA/PXAwojKXaBC1xc6aa\n97fm8M28c/vTJVC/zSf8pWqkircxlX2rXIBo7A8N2tsZzAIfR7uNkRXptwqb\nqUA9O1JYdIcTl/JBA7VCSRZ05uBU3bOGNpgBCQTHZ3ggokmasUuTWYKBQTfd\n+nMGF0T6dxT1byID0KhTQtOsRxetXYfaVArnGMW16QnjgaR8Be0iNnfqm6Oh\nuekJoxkjlxiluBwPvfDOZakXntdXYhxuOpSgfT/O30huHBPI1/bXHAcY+g4T\ngrgOvzLxIVwiFRtmyLc/5++UR7DNHN30qR0nJKNVY5hG8l5NjN098ZCr70Kt\nbk0YQGRepww1VV/7rSGlGef+aFYaIEQHvo/zQGp/G2GgsZzp8ZaI0RJUG2wR\nZt4jYGasc+eIehno6FVtCxevoEWVGh25CD4u18cUiu7YSJpEqwlir8nUliPO\nJHBh0bSAk0M2Jz7vWlT+bgKefv0qqOWn8lS/2TQ9kQdVpe5JSSbFMCcFRIQY\nawTis/OYiHxPctYXjnO2sab86kCmqvDgU3Nx5nxgwF/41KqxXYm3Mi8N+aAD\nrHlZhJxUo2qsLrZyJeIuBiFm5nGmmz/Wd9ESrylJfR9wVRXcq3leChgIa02V\nHTuZ\r\n=rLBl\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1403367d8c6cc98136aef5c1a3796b3cdf8ba115","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T02:59:16.072Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.50","@balena/jellyfish-sync":"^6.1.131","@balena/jellyfish-queue":"^1.0.388","@balena/jellyfish-worker":"^10.1.6","@balena/jellyfish-environment":"^6.0.1","@balena/jellyfish-plugin-base":"^2.1.323"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.196_1639450880120_0.39889926113444707","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.197-renovate-internal-patch-cb8c481dce22e656b95075f7dd1bb938d5bbdcdd":{"name":"@balena/jellyfish-test-harness","version":"8.1.197-renovate-internal-patch-cb8c481dce22e656b95075f7dd1bb938d5bbdcdd","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.197-renovate-internal-patch-cb8c481dce22e656b95075f7dd1bb938d5bbdcdd","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"94812797519cc78a78a7f93addd740bc1e84055f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.197-renovate-internal-patch-cb8c481dce22e656b95075f7dd1bb938d5bbdcdd.tgz","fileCount":28,"integrity":"sha512-lmYnmN+3KXxBcE8t3EnSvFXVfJDlwrp2h+nNEiUu5IzYOazAuaKWrRt6lT9li6u3sFrT+sonUjQ7UZR8/D4YtQ==","signatures":[{"sig":"MEQCICYaq8PhDJcQ0jO93WsUiZI383ITDJw7ovVHVkLBND9XAiByOUVlebKiRl0G3AbRHIlH+tGw30XeqfKWB8MzozTlsQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225335,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuJLeCRA9TVsSAnZWagAAO5EP/jgqzGUaAcYnYo79wIvp\nHhAVKxnrjuJpqO6QNMlYahcEhkDVvaWgMb5T6s5xlRUuXVotyfA4A232hwNu\nc8xqC5YNlTm4OQ7FBmv7QvS1Hgi1Itzm4w+H09WBQxe2f4FfvlyEoiTboxal\nzBHK5aXv2LtXtkP0J6/oLoAeY3bBpm/uxY4yKhvdUVKBXKTUxl5eaLF5fAo1\nFE2QlbxmdmRGjQSj5HUpb9/XQBB1aQKQrH/pE118tRY8wAjh01Fd+wq2Rk0r\nMx05Tb46IoFO7JaoPzsBcDts0qF5ElE0R2Mps+sizhpmqsoRd+EinII03ojj\nCmW8UpbN3wtPVSCjfNQTuYOBoEyNnS1IjwSyHw/ATkSSAFQrllygXy8Ue2HQ\nIQopQbBdri8lPTiKZFMiqr597d3eoHtYdA1bMsmj2iET73yPueI3aXhPf9HY\nRatKKdgj/dl1pB1t5q8MEnkeszSq6QJXf760VIuluj8O7Zh78XfSnv/maYzF\nvBEWum40RHMbHHdGWpbE2/J9tgrFchc82zTtT//OoWMBqltoW9sBRo0RdBBh\n3TvqNOLNtRBerD74dMx5KBdvWKdoDaJeTkCAJPTahQ5O+D5kiVdxEnq7IPzQ\n1TmzzqkFh5sqSiNqv+NEjdz7i+PRUHcedl4QCvDGnlu8szjd/fey4ihukLJi\nVsJc\r\n=0qYU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cb8c481dce22e656b95075f7dd1bb938d5bbdcdd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T12:46:18.697Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.389","@balena/jellyfish-worker":"^10.1.10","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.1.324"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.197-renovate-internal-patch-cb8c481dce22e656b95075f7dd1bb938d5bbdcdd_1639486174012_0.01917530545021351","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.197":{"name":"@balena/jellyfish-test-harness","version":"8.1.197","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.197","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0fc5998a5af8e454792d00e0c7dd4f9c2b805360","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.197.tgz","fileCount":28,"integrity":"sha512-L+hNIyS3iG0MoeOgXWv0PkPvhepNYyPQkaeORCheawyFdaJByhrWuIvena6HE+sAMNB4+I/QXQ6Lt0987ujwZA==","signatures":[{"sig":"MEQCIC0QBCX6SbtHHJAWqoBus96QJx+qvpztWpO4heJE2PqvAiBAo6AoXUh5q2p1kCIMBosuaF86sBz5Lf+MOKaBdHRPvQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225270,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuJOXCRA9TVsSAnZWagAAhEYP/jT0hG3oxm8aEtkUfB19\nJ5E2zXY1eseRB5CKgCCx0KeHPuRgPJnrvidZmWzDtYjNBurEBni5jvywPbuI\nrgB4X2IdurSxVPMWiy1sa4qJ2mtotuR/vWTRvD+xBKGDIDFe2v+dEyDJa45T\nvXzbMAbdyhqPc9+dI+3lcLt5rvKYyLE98o+KqT5k5Xyhkdp7d2nI6bzYSqzP\nBGUOdxKuxlin6IeeaEMqptZcjx/F05NVzXWWBriZHAfYkETbJE0Ut7YHRnKJ\nZMUGk+qx/2xTycRrY/awLEOWVtCevUIaoSqBCtwu+qFFL8viUdipgKkYjCcQ\nsynpzuCfLd0PPuw/MF4LoAM7xcRc1mQ+vAG6/C6Nw1BwmbPtHlMnUC41VEbZ\ncnm8ycdZ3VCYn2H5Z+Nkih+0k/jG6kCPmOgqj6PviLFOLxXCxwoQzsCMqHEg\no9G6wKZ2ydSMeXM2yV+uAWFbs7Ivcb6w1iFYJF7lDoA/Puj0ftZdAywMyjfh\nMqROqokX6UOiaOob90mdXNYI7ZYDsVRG7uMqRy6dsWW5BQh5w/XJz48eMTKx\nmVNd7DfRYoxsHheCN/3ymCukZBsRCIer4lX63ZI8mz+IaZXDxxRgN8A4rvjV\nkYrsGZvnYMKFkFFPaqv8AqqU0bEHyTMwl/nhZltzcPRED5M6PYRxrIBpnqcY\nEHii\r\n=EVjC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"35a2ad5222981956f816616c3f18e17f88e0bba8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T12:50:28.286Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.389","@balena/jellyfish-worker":"^10.1.10","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.1.324"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.197_1639486359634_0.05015736183553732","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.198-renovate-balena-jellyfish-plugin-base-2-x-b92b6662b4344180867e0afb01e824a6bf5f4c27":{"name":"@balena/jellyfish-test-harness","version":"8.1.198-renovate-balena-jellyfish-plugin-base-2-x-b92b6662b4344180867e0afb01e824a6bf5f4c27","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.198-renovate-balena-jellyfish-plugin-base-2-x-b92b6662b4344180867e0afb01e824a6bf5f4c27","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0c865eb23c2f7a5e450f041e2f3ff35eda6a458","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.198-renovate-balena-jellyfish-plugin-base-2-x-b92b6662b4344180867e0afb01e824a6bf5f4c27.tgz","fileCount":28,"integrity":"sha512-OUkJVVxwrsNYdLCT7UARY9jJDNMbjvnm1W5q0Z8Rm23KUY7svgFYHmt2hPHPhsudBuB/QFhw/MDf3jhnotkPVA==","signatures":[{"sig":"MEUCIGIXq2i4WJRAkEHyv1JvGpBSApDRLuZ8dQYHCvwAgkzjAiEAzfM9rNAeHjKTXYwYlhacyc6yzPGmy7LZ0FE6Ad4bj10=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225462,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuMmBCRA9TVsSAnZWagAARPgP/3kqsmnYCEBGleKMBHLd\nqBp6dgR0fL304hMPvVIfuJAI9oAxc9wa+CYmxgIivXiBMzq/Y/AsnOYu6azm\nPWhNzO2WsEWAMlpCBweaHUXRL8K+LJUJniwSlEJH5UrVazaZWb7we0aYpCLT\n7JBSOOAM4aozcW0wVlcxuglQ0y4pssE1A5JHkkV1KqKrBvxqCc/8K+SyT6Ye\nqbE7LVkV0BCoBFqcPw3eK3T1/jhzWPZ0OyQC8g//mEC0P4sqeaXXe4+36BBv\nCbltuYHqGM52UjJcJOH7Aer4nPI1nWKPu9WHSVyQ5iVXbWCmVDzUkZ+KAGjc\nZa8ai0N8ee2XReOP6SPInYe6wivm9IHR+9uPLIyHEQVoKjfl/TZJ9L1qmxKR\nO97sTkb0TpXtd/KbP4v6SUmkf0pnKTEbVoTy3twogJ+V7QhXZhxzrPd4KtEs\nrwvClPcNf09CbXTScjD04OIPPG94vwieH01eptgOeQuW0DokfcmAG3VWSX4N\nNtHii7GBz4dMJ6kQ6vKUIY9OemXnivzqcYDoQYQEB4WzuotqqwpT/moBF4O5\nHtiG7XEhfQk9fpdyMF/nVDmvpYDDT3BdG7Joh8nrLEsORjklU0LZoxSN/eBk\nD7j4zUSaMxGuseUFGo2DrKBZWkwISErrHTK8lF9eI44CcDzRY/FsP4+lm6gG\nfejH\r\n=AmV8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b92b6662b4344180867e0afb01e824a6bf5f4c27","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T16:39:17.675Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.389","@balena/jellyfish-worker":"^10.1.10","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.198-renovate-balena-jellyfish-plugin-base-2-x-b92b6662b4344180867e0afb01e824a6bf5f4c27_1639500161049_0.20021526039809046","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.198":{"name":"@balena/jellyfish-test-harness","version":"8.1.198","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.198","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3ccd311eeca97f79e97a0bf8c791206bbf4a6d19","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.198.tgz","fileCount":28,"integrity":"sha512-ub3hVz4nk7YHgDEpg0wjlslqK0pt9K6CNRMYujgWXfs1N3e3DCXxM8MDnYxDu4+NCpjEaer77lQ0xJKHnDCIIA==","signatures":[{"sig":"MEUCIEeh9FRzuSDyO7aripqJWEqh53REZVHbULwXu26WdJy+AiEAmXwgZoAhSXKkFbU2WO5uIrxr+uxM9NFvNANXuuq8Ogc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225379,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuMpvCRA9TVsSAnZWagAAZZMP+wZTzjbTl6x6d6NQMX2q\ne+rxyHSxPzf4m7LiUEb922v2E7qFY17cXAIYuthF8zR0ZZTz5Oj3t2trcpQM\nAxtBnT+mTZ9aLhnI6DlAisPl1P9DMex0KkMn5uTrAnLSHf9J5Mec3im/wR6j\nC9LYAvlY12NFGWz6JqNlM0CSR8H9yeCKmCp17Zq0muz3jPqyJoFdTwU+exZU\ngv5hHgLd1ehxks5iNIX4qKBJmVYi1C9dk42+9ke+NUK0udShrLqcd/iLbsks\nJmdfx3qZLOCNs/8jTzMNBAolAngK4b4AKog9BMZ5dOOWC4OB5f0JkrRcKyjH\n75hclQZL3LYN49Lr5QIf+pmAsjuD5d2pz0FPXmgucFyI+qFo/AgZFyeO6mMk\njtmN2zP0SBYupt+NP4cuHagd+bcxFQ4FWFCzGUT7h1CWmk0oKRqo8NhK1iRc\nNUdz7yM7B/tFNch5W6oY54W3dOeoj1I07z5zEdiSYtYVo3jSgy12UpKYk4Bg\nTOxz1JYcZ5YG1tnS7JACbrbmcRNwvQmdZeGnDsJH1KYGv9Umjc2NkrQhGrdX\nG6/c5nOBUjCdVEXQhGccywqJR3cKB6/ZsvafiWykl9nfXpWrri24bnX4ZwwH\nF8vHdHjjMnAKQ57SGvltnD0OniA+2YECmXqRB1uk6/lQhB+gx2h4LuHmITAc\niomd\r\n=A+Cy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b007dce73888cb03916241d6038c242c550767d4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T16:44:41.136Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.389","@balena/jellyfish-worker":"^10.1.10","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.198_1639500399050_0.8924627945252781","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.199-renovate-internal-patch-3f2efadeaec0e2232e9b1f043781ad867c43862b":{"name":"@balena/jellyfish-test-harness","version":"8.1.199-renovate-internal-patch-3f2efadeaec0e2232e9b1f043781ad867c43862b","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.199-renovate-internal-patch-3f2efadeaec0e2232e9b1f043781ad867c43862b","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c412110dcc99ff6fa8dd4ac945c732b3f62db7c4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.199-renovate-internal-patch-3f2efadeaec0e2232e9b1f043781ad867c43862b.tgz","fileCount":28,"integrity":"sha512-l/NfQY4C61O8SN9W7XaXCaHqAVsgYgx19NwTco4Yh61lbtPCaJDPiLokbmmGArl30IjaW0v2KdZdxvmTEMDqRQ==","signatures":[{"sig":"MEQCIG/Xzm1FzxAinS+wsA0Y+tPgzskFAZQWHj87O0S89jyJAiAT2sgD8We1FM2UhYdM4bydgPa6HU3iUDxZXbu2jCakkQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225552,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuOADCRA9TVsSAnZWagAAi74P/RdMefsxZsqsD3S53ynT\nM0FKCTIPdcO2ji2Sx7N7US8yPgQH7r+PWJq+YMlpmWdjEluMvptwDEA5Qelg\nUrc8pYhFez2M9HYMWFoDCT1hU1JPeFcgPRiwuclPzB96Mrs0+Axw8T8kgWDj\njOoOSVvRggveK8JxABC3SAkaLl59KDSlnXOd+rqCg7ampp5jk7hqoTSLUfrq\nIG1CHKGbGZKcgdXB1OZ19lsWmF/tTl+t7lXZMNGbGARf9LCpw/fF9I+k2WQF\nZQItb/o8Q/EkYCxq4VUj9SWvLnCyvRy26fUbiilWBHzCMtNCELLiFsn/PKwd\nxRN7EsOn8QKHiJKftdZYiM9auKO/wgekm5fWgXYAXs70MhcQqoIOp+SJGoLj\nbPX4sNn24CN5/5jxF3vf1zCpt8x3oxkcDbyCvEaCRt1GfWdpT8thkVbpsmWM\nuoBFPhEYTbTK3UdVJ+BqGYAE7fajRRKCO7R6x2Pi++Q90kUL2glW/f0wkGei\n751EyuF8X8i/cu8xrh8yy9oSJWYq3F08x8VIg2clFAXWQ0eq/u5C9MuaCXJP\n+CERwhkgRXW5D2UgB+r5H9gP3ssxP6LuczsnX7Uv2WLVrby+8TjA1+Hfta++\nT4nlIyP9npDCi47EkdvPwDjpK0hmgb9HD+9F9WKW/FOPriYI8PI7kzyBwMAE\n8xW2\r\n=/MGD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3f2efadeaec0e2232e9b1f043781ad867c43862b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T18:15:23.042Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.389","@balena/jellyfish-worker":"^10.1.11","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.199-renovate-internal-patch-3f2efadeaec0e2232e9b1f043781ad867c43862b_1639505923368_0.47160968457552377","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.199":{"name":"@balena/jellyfish-test-harness","version":"8.1.199","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.199","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"744d8ea07cd392a71f7ffc86559d8ca768f29fe7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.199.tgz","fileCount":28,"integrity":"sha512-5Ez+9s255FA8pV+40MVP3VFEslEEev/JXI5g5e9p0cm0YiRptobKcTXvDcjymJ/Umg48OP30RqkweI74pxa1nA==","signatures":[{"sig":"MEUCIQC7IpTQ3sAPkY6P1o1RF6BN37pTPUsZLSTVQ8ilVUIIEwIgUoprsLHhVtW7VS2Jo3gbcur/89ga0AQ6hsLwqP3S4ok=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhuOERCRA9TVsSAnZWagAAMZ4P/380uA98y4QwjT3tNZ1L\ne0d3/wfNVRH+KIZVRrTbwZYBRdDd4tYTE+oWQBXYpxMXCv3GrBrKoQwNeFGY\ntanMcDsOTe0/MQpzFhUL/tbWwHyOheb++LWiEp0V2zil5eLTTz8e4WAsPin1\n2kw+upR6VtsLeJTr94O/19Kpzq/aIBYQb2l7M/g0fFdAE6IqfNZqh8DKSZsk\nr92CxKLZL+3fciMFFfNsKIgSp/WsmXXtiuA6JlF25w+AgZznyFFQtWJkjnkI\njbHEfUCwNoDWhgZ1lTKjbpHRkufMknyyid4wZaGfCegFBxWJ1GBCXpXRs3n9\nWULCh0IX4SSRo68nfxiB6nAhBop//Etd05hK1p0PxsA4ihwXxFykP+apXhnd\nBzA/q8FrE00sKnXVBxMjV6SE/dU6E0N6H3/JYwHpnuasKdxRurLNXHiBa9QE\nsgLUAj6tHhxsRBFTPUDDSDmSOfc3zPET8eC6kvKy6fWKISnqRRGp3ALAvEMH\n7jxP/DvGPtYowQoFZKu1xEF8TlTkYMeslUFHT7Tk4P4UeeqZiQJk2bgEtLlL\nS37lZKNQN3w/67OBxBlptVGaudCCtl2xpE59RXGzbNZ09smjrKpe6hEXYuPR\nP8FfQ+FHYr9SQYPXAyqAdMPCm6fKYwBvcUlsO+KC6PyqtWgJhDNpnxr41DJC\naw2f\r\n=SdMd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"69869a80b6d902a6592ac516aa385b3a6798f0b9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-14T18:20:40.859Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.389","@balena/jellyfish-worker":"^10.1.11","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.199_1639506193777_0.7624627957386778","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.200-renovate-internal-patch-b8c03b04e9eef2d09ae2a1aabe38adfb1073da99":{"name":"@balena/jellyfish-test-harness","version":"8.1.200-renovate-internal-patch-b8c03b04e9eef2d09ae2a1aabe38adfb1073da99","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.200-renovate-internal-patch-b8c03b04e9eef2d09ae2a1aabe38adfb1073da99","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1658f07ed198eeef5509f81a141339e3c9a003e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.200-renovate-internal-patch-b8c03b04e9eef2d09ae2a1aabe38adfb1073da99.tgz","fileCount":28,"integrity":"sha512-l2z0UXq2ko44SQX2tnz1FHN8P2et+hkvzodSDX+IjjUkEkThHfvCxehNbArEsnIipcpgPH6AuUG+gXzx0gtF4A==","signatures":[{"sig":"MEQCIG62TcrqgovueDQrt3Il0+Dpr+YavAgSCZGRN+ViisoJAiAWtirFIZPJGfbkLWnoWMe4+ZpAyR6XQ9cGFywWVs4YJQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225659,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhucJjCRA9TVsSAnZWagAA1T0P/i7JvGMvsvSNSgU2pjy1\nIvIVQ/QSnH+7OkKjSmnP00KrP7INHj8ujLoaTqUyGbm+MEvKoenuixD2h+kC\n6pto+BZ8v7WxhsSnP/Ket2DTYbBFQl6ue8NKf51mGZBR8P71zzVWffKWyhpE\nhAY8WU+wL53QtYQ347r1hT8tWqJ3NIQ16x2I8e+vQcldjdGm2a8kUB3/ww0D\nWsXQ9jnonJONWaWMooqc450Tpo2n77SbIsmgsiAjbqf42AhtG+PDTfvSZlqT\nQUv487Kk9ZHYf4QESlXSfigWkPlAXVcSFKDZ1zgLEdoTIKlcFJCb6tc/O73Q\nTN16w57z/YvAbzjBYp7A6nXRs4PmxWKPlWEBsAs5cOMbAeLG6gs84CSRScpt\nC8gf1bKLlBkGrMwt9rIJ8i7/W51XHj+UkV2ooySzVAVSnrfy1YOulj0GM2N3\nfAUHysA8BWUEVOEPYTFE8XlGkmca9MXqY3qpgAYKGJws/pOdjrJez3nuQpZp\nlsFUuHekA5HF4aIA/zkSf8Muh4VyJk/V5HZD1RFKZdKHIKBGih9KJZTQcHKw\nIUt3W6nxUtbLMqxisyFNZdVJyH/JZML/zkSBCbNS68EHEJ4/AnEixi2PkJTf\n26wkVPppI0r+XtFthSy6rWADN4w0/HUm7XZBnEFPgBbliT1SzKgaI83ScRde\nMbXp\r\n=rJDg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b8c03b04e9eef2d09ae2a1aabe38adfb1073da99","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-15T10:21:15.343Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.390","@balena/jellyfish-worker":"^10.1.11","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.1"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.200-renovate-internal-patch-b8c03b04e9eef2d09ae2a1aabe38adfb1073da99_1639563875614_0.35395480394169","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.200":{"name":"@balena/jellyfish-test-harness","version":"8.1.200","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.200","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8fb233bf02305aa85c6f41126b097e0a58caab66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.200.tgz","fileCount":28,"integrity":"sha512-638JH6N0qq1qWtMlJupxKFpZZiu3TCaFB8ZG/jG5BATBmakqn6APqbVAYteOH2MeRyDET59FNtssNtXqGAga9Q==","signatures":[{"sig":"MEUCIApbxUgj0L8l58PuiDNj3pmz2vpkVLZUtzb2c8dUEgwvAiEAnbJwVZ/fB1nDjxW23vi5Cw0OODHtRKT5RdV3Nm7e7Ps=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225594,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhucNOCRA9TVsSAnZWagAABT4P/3NSwpgJZLbJgVXLQRZo\n5l2BzlKgOsb5efJJYe3/Vn1Yth+GfxNw0s81Crc14h/oyRDdk1c7b8E1UDpb\nEt1kxcNDfEQZAvcuv5vAtS7c1F4caG8T7HOiu6Vqj0s81jWQNpkXXuU0cMQ9\nv3RTBoDo4zOH06QV1i88zl+6VBRb4g2TtbbjdxC2XIPF1Be/+Y+IL1oATz1A\n/7FguiN0diObAsB8rFY/BhZ9Uuv7Sy15LvkIF+hQKCVHbkanhZWM9kSBCzxL\ntpWiOdmf5yd+GzT5xr51n7Kx6wFGI7ryv1YL6nq07T5nLLOe3GBbhuThzAqu\n2ahYVLzxz4P/6ePH6HO8zVoAsLjCUH4PZjVTOInTAt7cNOdP4Sxn6rb77kZa\nUZ0JkOIRfwKoQvUrEAcUxiojzf8kakBd+/rezO0LtCMEFCJO4yaYwKPe7n9V\n0CzF3WXWZI5rEBQG0qWktLAKaO0y6n16eKA2iJIZm7/A7fZ8+qz8BLN1epyc\nxqeIuRhJiwftJaWCkCDVc1ubSxRq0l6TrJeZKyoFj5nAEsqEQLz01Ji5qQfo\nKbtrj0kYdYdNTvIBdohkLGMhYGPwE+l9mbcqBK59obivhUToAnx4rdkCgE6X\nOhDF8NQUdsKPdz4PQAfZ2aKEyp880bnzfMObf1SEkeM5GbUP9+hlJkecoA7z\nStpz\r\n=CSWU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c208413de4c90ec175d1b2e5957793c945f97636","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-15T10:26:19.196Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.53","@balena/jellyfish-sync":"^6.1.133","@balena/jellyfish-queue":"^1.0.390","@balena/jellyfish-worker":"^10.1.11","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.1"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.200_1639564110640_0.8755562819314047","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.201-renovate-internal-patch-f50b379c01439dd0cb3d062f5cf7c9e09cab1e03":{"name":"@balena/jellyfish-test-harness","version":"8.1.201-renovate-internal-patch-f50b379c01439dd0cb3d062f5cf7c9e09cab1e03","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.201-renovate-internal-patch-f50b379c01439dd0cb3d062f5cf7c9e09cab1e03","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"380855457fd0f44a53b9e095530319b09c5efc2b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.201-renovate-internal-patch-f50b379c01439dd0cb3d062f5cf7c9e09cab1e03.tgz","fileCount":28,"integrity":"sha512-NFOKErCABLj9zdN3JtVbCmpz8srfpQDWMrCjZY2LODyqeWpiFdWt+LvoRFayQtmIbPhTJCKWlGOyhE9yFMUOcg==","signatures":[{"sig":"MEUCIQCS9phUQcIcwVFg2C0zOrODZI/NNAH8nafx1bcfQFX71wIgKzZkwIrxJHf/Z1hnmh/Ip9vYMq41a3qjGxNB00Avi48=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225734,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhu6i5CRA9TVsSAnZWagAA9ykP/RxmEW9yfTQnjnesyWjs\nzzXNkWghBwxKuTK+fH8IYhdnKmTnC07MLP3fewtJUkCSfNMqeAEAg9nYesoU\ne471ZqbR6iI3Lg0bsMUrPcsvWhTyOjIvlRezTVLj4awPTjq+yZEesc5GSbY8\nygTfo3qsH1m1Cjp8lD2zUhpRa2jyiDi10JHqyPsIcdW4eK8+BuG5V4M4rhQx\nUpeboje/JSYa7PXdgw+oe6zWEjwQVDcWBvQuzevbqwC1fcr4mgpiAhTstPeB\nYRFxShLPWhznDsltqApqNypn0TQ/FHfbSjSzMvs3AUXLaOaLcRrpQ9uwOGqI\nXtIS1bhwWj8OSrXZVRJlst+OoMt0fUgrLUpWfTu4Kd+Oj7/eWSJ9JfqnoPac\nYdwB3+1XWxxdkHuy/Px1i1Z1MM7IiPTHgaBi6EBthwAM73N+T1KYZ1nNqRP6\nza/xniBuYtweToihRD2meM6AZQgYDTj7BoeqAcQ2g7V+ZQivteWrEQIzeNSD\nuyQ9iLvHfZzLp8JImmZ9VENQpulSBHzZxG+fn2RTgEycJLFHOvFEhzpmy2Ab\nyqrDDLz80skYQlAFUnwe3oDd2FZbk4gckhKlztZWDbH9G1UhH7sevcBN65hS\nzO5l3Yf8gdFFhUd2+okvkKBqfWq8jrvM8Hm8gzURAydwbtG+bFCGirzB9ZAT\nz+j/\r\n=Sk1Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f50b379c01439dd0cb3d062f5cf7c9e09cab1e03","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-16T20:56:23.675Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.56","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.391","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.201-renovate-internal-patch-f50b379c01439dd0cb3d062f5cf7c9e09cab1e03_1639688376911_0.5629624382312295","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.201":{"name":"@balena/jellyfish-test-harness","version":"8.1.201","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.201","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b88a3385b9adfeafe99cca7b811b7e30541086ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.201.tgz","fileCount":28,"integrity":"sha512-pivywRLUKiLNgVmGvTt74NsWLJkFIC+bdi5cDjUXZXVdH45jFPVw3+P2rXwxS8kAP9aQkHaE8EcBfumN/E3EJQ==","signatures":[{"sig":"MEYCIQDzFwSfPsVRjg48U1igHwdToorbFNL4/sw4ALrA6049hwIhANAxYxRKTPCVyDPmscZht71aJ48wH8ZUh82OeNMk88x1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225669,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhu6mkCRA9TVsSAnZWagAA3xwP/2xkiBFFAAimNe/3IDwX\n5nZeF6DSIJPXclufcDaRmXomGa+I7vFsk7uY8uEFWSc7ui8N9EnvLc6vD4JF\nPFwvCHiiwWgkr1R8oSjfHrQ0jV7M4MJvBF2LMQpJAA76zr6UyIMnTUjXCjjj\n9jsc0Pu8wx1dNbD3elcgDqT7WvC2l/Zfsc0YHI4Absr+NphKj1Sck515lIuo\nqkI0/IbXyTC9ELNbjcfigqELwVRZorvKl4Y+luLOsH7djBcIqBiuuMlGPewR\n+WT+DsBjjQ7bwkasG9UEpIA+wkazcCeMTVmO5ODw/oOqDY6R/hACTE8/Y7gB\nYiPHL9PsAIBzG/8kG6stdBUsRgsiQh8PN3SKNDP9Sp52Gzel1C0CWk949Okp\n+LsBoNYSRhgi1iGWV2eOe0MtHReqMi8jEyQs/tTJI5G0tdT/crdPf1iN9AEh\nSlkegtjCFSFtJlRNKmBFl8fsPmqfxgUdWytoJUrfzsRDU457AKGz279xqcoU\nvi48oE/GLPGPpxWNhs4KXnlT2u/1JvusTX+RAox/gCwGegYeRePe0BXUAuSZ\nXJrcLKt1GavyNCcGyrFq9Sxwilz0cAs/IiAKBntgyeYhNcT59Xz7RUUGN6T8\nm8Qj0F7kL6qCE4D+sp2C0QWe0AoVfQ0phj9p4qKXAvW36j+AzI4bOAeLL75s\nIG/P\r\n=8P0c\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f2caeba87cea7270f89c1493a3c8989c135bb92b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-16T21:01:20.735Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.56","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.391","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.201_1639688612823_0.6878389282040771","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.202-renovate-internal-patch-d84e9d2aa3577f2a27bca4421cd1251608008fd8":{"name":"@balena/jellyfish-test-harness","version":"8.1.202-renovate-internal-patch-d84e9d2aa3577f2a27bca4421cd1251608008fd8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.202-renovate-internal-patch-d84e9d2aa3577f2a27bca4421cd1251608008fd8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7700bdec278aa0abc6c993e32c9ba0dba24600da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.202-renovate-internal-patch-d84e9d2aa3577f2a27bca4421cd1251608008fd8.tgz","fileCount":28,"integrity":"sha512-cfGiVkpUXPSnfbDNFRmCGd8OQIZitKt1z0mmm+X11AJJeSWZEjFTdYhmIyaQ/Q2oQ98NIuxRnk9OQJg+6RtzBw==","signatures":[{"sig":"MEUCIEduonjfh3vBHI7s9XK+5E1ZgsMsq+rlqlAgQjf2ZEl3AiEA9qNfZFQGYYjEs6v9ZDY8swdI2ZJeoLmGPrZJLGibNO4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225841,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhu8TxCRA9TVsSAnZWagAADbQP/3Cdj8afhoPe5EEiqCS9\na48VgHVcUCFlAnEKkLHWy/p01867aqaKB9eTZo7qCf5TRKXnBpYghg/ySz/+\nmIhmAreuQ72azziPN51CFFxWPqEZQaaWEMgAXdlyBJOBq/M/fYdmRbOES2oF\n+0vLK/zf+vKGnwYrkkpab1I+JIEpUHNmpoh/0fgIP8rR8CZDYswGVJj80bK6\nzi8mgsuqvRUWbGj4/631Sa/TeJzCJhW7nlJqq3NZaLf0AxMGXn1rEQ+2opfc\nD8xm8xOT7DoHL92LxNGm/uhkPO22r8xH50X6OOYhWZ8Xv0+3IWu9qN8K8JTH\ng4CG7ivSLTk4MOJBEZV8YKowUGWNCjWyVGtLHK5HDpy0eSm+ItRWj47xjKme\ngoECNZkk4O0F2im1OkQTF0pWeqZvqpE2tl6nkaSELS5vUI4VuSN9XP4ixcQ3\nNSRijbU7yx1VisYY4ZgupufHj6lSszici06HZsZdZto5/pP2qvO/VvWFa63C\nQIwPVjeb4M6NJ3TJnLmqhvR0tPxe8G1R705qie5zTR4T9GJWz7k7PbkxrdTg\nfYWsZ2/hVJymfscGOyPiXiRO4rqO8nwQ2OFGUMSH9ufr24XqpfPJijBky81/\netWJKo7InPkXc6bIE02XBqt/EMH3nSfnx4Wpnx8rBddi6XUuCHepmMDrxes2\nYyM0\r\n=Imbv\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d84e9d2aa3577f2a27bca4421cd1251608008fd8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-16T22:56:22.662Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.56","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.202-renovate-internal-patch-d84e9d2aa3577f2a27bca4421cd1251608008fd8_1639695601048_0.005080705281303999","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.202":{"name":"@balena/jellyfish-test-harness","version":"8.1.202","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.202","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc0d09039c12e13ee68f514b4ec75fd68e16cb30","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.202.tgz","fileCount":28,"integrity":"sha512-f78lYHa8AUDSe6+kIu07AJYIvVG+btS2/rxnecLtWij/F8lhraZlOqF64EtCueBRqW/c7rz2V0vuk5l8U50lSg==","signatures":[{"sig":"MEQCIAUZ/u69agwRolMWE/ndVLOdRuQqLPq5DF86bC2IEbuRAiAeVb6eHRJaPO8+/wi2D2HGRpc/tLI6UMdKTSS16I5SGA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":225776,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhu8XZCRA9TVsSAnZWagAAh4IP/i1KlRTXbpiurIfzsFUw\nTGJp+mcTGJa9FKqifA8Kqe55ZIM4ZYDyS93CcIK4fX9eOHdkG8X0OVH7UDJn\ngQU0SmkOZ3/OYbZGlSjS74ghfn5BxkJycI3K9TAypvHpYC2tx0yghaq2iCS5\n899E3Q+AUoxcpv/B400cFpjyH4ibBO6mooBvMOOMKllcMxw6wnZovV4I/EUl\nUMgE2cUadrNkjHOJQ3tPsLGvx3Jlkt9gOKzDyTzuaIReU2Ax20skvvxXZ9t2\nB2u+5pHp4l+ppD//rsT2Wu+v1XyYppVQAp/igD94AzYGnzYcJQO0lZdmQDS+\nDS+6QF8J5qOq6n1aq1Q+QXpVNpsD6HDrlXbPfETXSSBnsBLatGakuOuzlmYK\nSKxFwa9UZAa8kpuQU33tKPyPeV1ElTSXVf/gqatSZC55yh/BKjXEo7cqRs0K\nsOAqzly2mZ5VIFHsh4VgzEgkvhnQTE9mfBDyYGzhp/JyzJ4Ty0xSpKniMj3C\nWdtqM9UoqQreJf4Npju+bcpvpWphbKKqE9fJL2R5fsR/F4Dxt1Nxg3/AFEjh\nLp2qKV5MMuGX/xI4VhAZc4j6rSNMN+mB3xReO/3lDXzPyykGzZ/mwX0UJzic\nDd2sm3VPSeGbhYoxhvw6gBaGXX+P29Hrdmg0r2Mh7KJTDl1McoFg0T4acs6q\nfXPy\r\n=jCWT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0e891b87c1225d15582ff8868fe16ae0bcf93034","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-16T23:01:52.985Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.1.56","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.202_1639695833546_0.07382099055128655","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.203-renovate-balena-jellyfish-core-8-x-09977d39231ddbc5366731abc3d242a089643a4d":{"name":"@balena/jellyfish-test-harness","version":"8.1.203-renovate-balena-jellyfish-core-8-x-09977d39231ddbc5366731abc3d242a089643a4d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.203-renovate-balena-jellyfish-core-8-x-09977d39231ddbc5366731abc3d242a089643a4d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ca56a48b782a616973caceacdd8031eae5fced23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.203-renovate-balena-jellyfish-core-8-x-09977d39231ddbc5366731abc3d242a089643a4d.tgz","fileCount":28,"integrity":"sha512-CfWw3xi5yiMy/w4ZBLsysNUgWj8NgKs5YyzU4s/2sO1FpL/47i6lTCdtnkfDI2t11ItrLxuE1OdQ1AylRVWZEQ==","signatures":[{"sig":"MEYCIQDXtwc0Rw6m6IfICFcV2bW4fFRLcrFk/sRIZgpRSCWDYwIhAIrwnQ2pf20/9FSaAWrKQyCJIRvyWABsDJYq09Jgh3QS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226481,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvVFJCRA9TVsSAnZWagAAciAP/RHIJ0AORYyurve3eXNl\nRdwSs2Kjy9eLJY8Ccn7kebO89r2h5PpSvhkHlEwQvAPE6PuRvULjnioQKU1o\niKsPsGqJYvpRzXc2uovx58wksu6/ed+a1Rz1yXv86tbuIbTfJsoM5dwlH/OF\nZqmLKbIZyEyEE50AT6qTutVNVkcibh4zbJSqcqJQPw0JhlrqQGpVnTTcNS8z\nx8KCW315Dfjwkn3zIanhyom1DPDaqJpJENH2xytqhLpdJuswKH8g0tGTJY17\n3NXgFWrKLlYTdmnV5oQKP+CViDZn1bMt9JPgRHCUwUaJmIpNudSO/3oOEZXG\nFhO7CsRkPHBB70gdNY6LnS0TN0GU+6Cu/cv7BAexT44bDC/bz2mSCEsfork0\nGqKx+GXApATO5mmuU8SlAilWcITk13PZ0dJq7o/xtedrPdzbUM2yaZKjE5OJ\nhM/GcuMNAC7jeuM1wMbpmFgUIecJ7lyWOzVgRkb4d6YPwJ+wOGBypE/NoQRy\nhWL6Jv6VtVTF9jTgXcphp2jAIDjRcNo34ddSaKuJJ3BzMAnL1IAgNnnyOTwa\nvzllXdve2YrGejhkTEU2+XRBs1/1yfKZI+yZRmEiy5wCJmtBZdYXOSkUnuT3\ne9msrevf+Z1A2sX6th8+MPdN+TFQrv3U2ZTaitDlDoLuC91/R9TXpAJ+NSYN\nwL9H\r\n=NbwG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"09977d39231ddbc5366731abc3d242a089643a4d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T03:07:01.412Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.203-renovate-balena-jellyfish-core-8-x-09977d39231ddbc5366731abc3d242a089643a4d_1639797065414_0.77675727370524","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.203-renovate-balena-jellyfish-core-8-x-7eefd5932fae05bd7af461934d35b936e7ac2152":{"name":"@balena/jellyfish-test-harness","version":"8.1.203-renovate-balena-jellyfish-core-8-x-7eefd5932fae05bd7af461934d35b936e7ac2152","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.203-renovate-balena-jellyfish-core-8-x-7eefd5932fae05bd7af461934d35b936e7ac2152","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"126bd14a9e0fb6f097664447d81530b3715dbcd4","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.203-renovate-balena-jellyfish-core-8-x-7eefd5932fae05bd7af461934d35b936e7ac2152.tgz","fileCount":28,"integrity":"sha512-WzseU7Z5BZg89sVetT15K3Kmu9J/yohcaPF/GIl0hTyrxX91O5ZGKYitO1j0RJm/TX+H+agKywNIqUKu6DMBbg==","signatures":[{"sig":"MEQCIFQtp1TWlzS1cDWWqW4c11qxkLnXNDcHV7nI/H/oS73WAiATIJJ0M1XQuvewcUvr7yVEmq04O/GPC04hzNpPTHlW7A==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226652,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvXVbCRA9TVsSAnZWagAANpcP/2b23ztdTzTJ1KuFiwfB\nb4+bpf7UP6Abn/ThLMvcWiDYxK7M0pOr+KYfnArWmnhNGWwWH1ihXOmRDuag\n1GR0EnSQqQ42BIursXFOgZGgxEMWAFhGeZ2h3n3HvZjcTV7sjNch7xVa8UFD\n2qF6UXIoc2XDoAYe4eB1emuLrh7ZL/9IKBIhHMmH6iQWqHcKMOr6NefNE+vs\nKzbyIfUhxWpKugfqre3RuPsLlzSRfHFSTbh4j2/oow5vMq0lW6LQugL11T7c\nu9gUY7TDOUmu/pkxkj8AfL/a5V0tVyhSDLFjcawMqsoDf8HkAZgzk5zQy6TT\njWk9h1a36dP0jIF4Mo1rEovwt3YGjNN2JW7BO3Ai8ZlGhKnm/kVpAcUTYMew\ngFAgHDAge++kIDTsy9HbNoU1u7SZ6X8PhJ/fQJUA4UfKGVBsuvEHUghwCOO2\nLRrJFkcUKX/V+M0fsTLNVtB9s7Q8VwNEwmlDS4mEz6iEdWywVE7WHoP5I5/p\nsxnp38hZ0OvN5D4/y2ahEA6aPT2wyX1AyAQ1pp0aJ+Z94RdTkiJWDp83Ox18\ngV0aQX540VetpS5Wdp+KRs+oNztvWZ49K8ySxpjvra6PfRrmK7C4K2dXx1Mq\nmkQ6njcISpGCTyqzMwCX6O7BK8QgMMOcmanteEzS/mckMtY69HnPbwUCv8uS\nKAo3\r\n=EAZ3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7eefd5932fae05bd7af461934d35b936e7ac2152","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T05:41:14.850Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.203-renovate-balena-jellyfish-core-8-x-7eefd5932fae05bd7af461934d35b936e7ac2152_1639806299552_0.40739983904191956","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.203":{"name":"@balena/jellyfish-test-harness","version":"8.1.203","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.203","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9521d518a989c9a981efb0de7c8e1b641a314085","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.203.tgz","fileCount":28,"integrity":"sha512-pAhu50J7HRe9sWn25hMc8hfQGqXTYqHSi2fKmYv92aZGRnsCQZjlPFOaVl/cglmuTC1YB/jYLrsbIEXobg7Eyg==","signatures":[{"sig":"MEUCIQDCdgOQo/XG1kAEjABOoQFREwTQOtWFf5vjLy7gcRR6YQIgTNPLP4cJKbso11KFhffIAjPIgaBHm1b/sLGnQ4zSPgM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226576,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvXsZCRA9TVsSAnZWagAA2w8P/jvywrDftYTi2FgwaNra\n5U0dzsgizws2l1m4mVYPyfl9VYCv/opUBkp2doFyQgaCzmoaKYUz1q8KyE6O\n8qROtl8KivK8xoHogp/d2pf+kr3ft70tTxgXaVNZIFkXfSdJxYsMUatQo7br\nwQsocqzSeQa+r5O0VXjzXZntWDXGoNe+PsApWialjihbUGrDIghQAZ9guK9P\nTi4q2pMDC+kPoSY5EYA2RnQL9lc8Yse/REiWE66lX2HeT6GVu54L7SJrnnf5\nRwp741qOpNUACavLGVN0XchWXEly5TSYHBC1W3NIk4uoGcPSGAtwJGiimVss\nuO86/JiVy+wLBqwJ9pAqkiExxNJ/1HkQgJdwylRdzl4TxQbWllB0Bmep7cEV\n/zx038pX9RtlDH/eyZYwTiZ3aPmI9e6lp6XlYz2ovfVRUFBj2n40jA51gBuK\nqIi8RA28oMT+dbZZBIzNtQfOK6sSCJ9hOgOvpS2xibM9O/O83sc3jD5loIzT\nZVKeMu/rOIQs4xRmepQyOVssU6eJmQV+EthPhRO9Y7cj+bMEftqRSoqcUe4y\nDGu8tZXwta1slcLBX822E8tnrtzowxOXSGcEACPuD4uKnOU+r0lVpWZZW+pt\nH3li0IN7XePS6N45YUOAJj5xERCF+DEC/lnbDFogip14ePhzHMCoZ0zSFkNW\nWn/U\r\n=e/S3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5aa95206da5f9d7dc9927f83f3c7f1097e2366fb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T06:07:18.195Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.203_1639807769617_0.4323852376595472","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.204-renovate-internal-patch-3fd35cf69ae4ce14cddd4b074ca9e814d25adb82":{"name":"@balena/jellyfish-test-harness","version":"8.1.204-renovate-internal-patch-3fd35cf69ae4ce14cddd4b074ca9e814d25adb82","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.204-renovate-internal-patch-3fd35cf69ae4ce14cddd4b074ca9e814d25adb82","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1cc964326f85d369568b75f0076b270dc1e536cc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.204-renovate-internal-patch-3fd35cf69ae4ce14cddd4b074ca9e814d25adb82.tgz","fileCount":28,"integrity":"sha512-Jx6/yyBvYUz3QdWlh9xG4Ah/xLnScmFhEnTsbSD/SmMTlbGg++ON4kXsgDUr7G7P5EoQVte7/vM0Jr029jnzfg==","signatures":[{"sig":"MEYCIQD2wmNevvtd7uerMPSUXAOJbgO1n4wmme0N8SYdgV/p3gIhANdXaUByMwsJoSKZ+e/OPn/Wo5zkmIsdajCQSzaLsauY","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226716,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvXvlCRA9TVsSAnZWagAAGvUQAJtlmsr5kzeG9pOxFZTZ\na/CvJpKiHE9zSttzjjtgnhPQwnh8AG76IhsQwzpKYJ76VXbck1PrIv3TOJjb\ngODIGKa1iFuuBusS4EOzeeUXbvSfbNkUJ41NiyyKTR/ofkhhmUI0H4uG4ic7\nL5VToOTWg6x9bfE+729+ex2u3Qt2Jjkzxg+guK0FoYB1HyACku7ZwHPzKVIJ\nvZC5TkHGPc7jyBLTIB0Q5Z/gR3hupm9XlHlofv25xEmdWmbwproAIaMgYIZl\nRKyuv+CJ1+vhB5D2/xS/EetWLAxV4HyBwqDPNP7KiWvuoQ2eHDXH5dRj+pE0\ngPBxFmRCaSvqCTyGUCd8hiJOImbgY91Jn6qyK8DyQ8eKrCOqCMwjcsT8nkw4\n1QVIv0C+VP8+T7AgZOebECa0RwncAA+HDN4HP1rOO0G+UJwiiCLs1a/msWE8\nbAOvPykGpvrvFwf1Kc/r4s1DHdsvDHc0Vswu1UAb2tuQotHdEJ+Dnspk/H2G\nQpfcWPbucWFrzxKHbnvpZsph4Cs9O4MBLjGplaI3r1MXB8w536Setjg4i1h2\nNQg6Osn5pQHijwtuG0IySTRKbuQQ0J+8N7Gm4suZVk6AdXo/Yv7ahwcgfTVG\nnSV3fN4DnZ4839yyk8Sk5XCwi8syY0rQ0mXaXJRVl32bJaV+ikK/aEQd8tKI\nq9l7\r\n=B4us\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3fd35cf69ae4ce14cddd4b074ca9e814d25adb82","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T06:09:19.766Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.1","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.140","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.14","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.4","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.1","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.12","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.204-renovate-internal-patch-3fd35cf69ae4ce14cddd4b074ca9e814d25adb82_1639807972458_0.7106832099704459","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.204-renovate-external-non-major-e4a307bead485c0faf3d84265c137bc0530cf248":{"name":"@balena/jellyfish-test-harness","version":"8.1.204-renovate-external-non-major-e4a307bead485c0faf3d84265c137bc0530cf248","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.204-renovate-external-non-major-e4a307bead485c0faf3d84265c137bc0530cf248","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8de6e97b465c1694500a69c145686095fe91114f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.204-renovate-external-non-major-e4a307bead485c0faf3d84265c137bc0530cf248.tgz","fileCount":28,"integrity":"sha512-YtmTywn8vItHOIdd3i/V6zAtbVgNLMrJzpmD9igATG0PXPxIj31drZlBX8wF6bnn3f49JXWgpWO5rB+1MEXj2w==","signatures":[{"sig":"MEUCIQCeIyWjKk6VugnGZqkGgn4+Hw42BhEeuxduvcti3ae31gIgVD8TS82bHXF8tfYV3VbjOKzkXWxBgZYyrCf3KmS68sE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226724,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvXwbCRA9TVsSAnZWagAAUmcP/3AZeTnb3mEg4uTEDSAJ\nfu8VETl/KktOdyZjq6lWhjXsuz6yLA83U7t41dp/NNDXq//e3WAYzfKowJVr\nB/bzssgEGnYCU61r8qOgOVoblD7Fvoja3qY5qrG7VTh4WLFMS6kbyvyUVUxE\nBIT0rN02v7bTjXr+zVGyXAuHdVoOf4I3RHgM5vY2nPOpK0bmuHRbsI3G+k6Z\nd7YVps0/F3dk4MhIajzsrcXMCdOgsV8zkQK5zWe19fu91J0eZNWor6EJw5Pg\nM6uRtCXmldUE+dGg78PmTRQQVfGSeJ5brHXNgl4Y8k3oDthm0gHzuQwGLf6c\n/v/eNg+9gbytSi6t0j+B1KOvlVE8tsluYYpahnS1PJYJuhsWVTkOC2reC3wk\nDb5lfH7mQbgExLMwEvgAikIhIHbcbXzpM+lzEMRO6k1DHBMw6rNjrYQ2yASy\nt1t3Q4p06f8ygw2QJ8Oa34J+P9SfZnMT+ZACr7XYqsVn2S0lFan01zf0EHhL\n/ETA5jFdCa5W7e5rvlraZMblySeEaay0XHX2NMUCXvJ+pOEOsbWay5mY8Jhz\nzyH7mhlF95Y015pFqUkUpEgqgVtsMuOjhgASvK1rmU91Yt/abelzeCGJq0b2\nMWFWW2t9HBoIJjnPbQBPGHckLl/yaBQU5B+nDjXmURxsy69sChW3VXSQVyZj\neBXs\r\n=igo2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e4a307bead485c0faf3d84265c137bc0530cf248","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T06:10:45.274Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.204-renovate-external-non-major-e4a307bead485c0faf3d84265c137bc0530cf248_1639808027714_0.06527995934579955","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.204":{"name":"@balena/jellyfish-test-harness","version":"8.1.204","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.204","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"53bb9be4e20509496d1a15491ad81eb21fe76a35","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.204.tgz","fileCount":28,"integrity":"sha512-xCFGfP6b268b7brVO+oDpsWj8EXfmGDOVwFtRPMUzdrgllRTKi9+f4nChAFNCtpDAIIgcYU4yXnGNsYRmR8iYQ==","signatures":[{"sig":"MEQCID2lZJAtFkhK3HlOyEZgIwyYJTgrX2rBHw5xOJ1ccxfeAiBAaofYY8Rlpm3nqO0LPlHaU20B/t6ozkAmlnjIuhWd8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226655,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvXzECRA9TVsSAnZWagAAThEP/0spTA/WTpPM8z8yQJEh\n4JxAa4C55PsJMwMPfwCRRcXKkCuB27OO+2wCYpJgMmWriEwdPNk1f9/NWsNk\nAStATmPXNsdA+AKrH5XBlpNaWRy3gRCKzDKybNIklLQ1FL7I8zO71riYRnSG\nk3QMFxLoFOnJypmfzwVY0fVAzBoHQMS3JAfzwIy8PwQRaIuBOv/7T2jCzMXR\nwuH/G0ZyWnPAsghLaa98hlfDcP7I50Cp0OngA/E393SxdU6UtbD7usXxYbWs\nbkokbmz8RckYMXG0+xkIGlzlm1lNj4GrOFu+tnPyX4wzt7Qh4RWCD//vv2SI\nyCsusLyQlVEPbQ7IMPssYQAh6THnZrk0u5hhI/GljpGV7qdpjKW+5IvQSL0C\n0eHCD1v4WCEsBotqGiT5q/ZJISv9cei5ogq7srEqKj51QEzjQXq0CS67+0qI\nouBpg0iKOaIVUDbaelO1mwJ0xPiQWevkIsNpGBrGRqxMjLlA/0nPnDMod5o7\nkJZnC1buEQadCKq9QFcHieeqBnNu2wvY5G2u6rbutjY5mj20KVNygYNPYEFO\nysB1faNmLGIStpBfZxnKZtt4Mpn1FwwZ91vzUfcDgr6c3UHzAoVaOWVqcQsv\noFVuGziapuR+E5CWZIvBvGtp4MdZrsFJ2eUgYtQOyW0qPHil6ljNgXMp7PvL\nYQnd\r\n=KGkf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"59f1525c0170db0dff9124ce3b5cfdfe862d034f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T06:14:34.464Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.136","@balena/jellyfish-queue":"^1.0.392","@balena/jellyfish-worker":"^10.1.13","@balena/jellyfish-environment":"^6.0.2","@balena/jellyfish-plugin-base":"^2.2.2"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.204_1639808196460_0.7175700988349609","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.205-renovate-internal-patch-4d17b038473586e5cb2d9f318bf61227e0db8043":{"name":"@balena/jellyfish-test-harness","version":"8.1.205-renovate-internal-patch-4d17b038473586e5cb2d9f318bf61227e0db8043","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.205-renovate-internal-patch-4d17b038473586e5cb2d9f318bf61227e0db8043","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"04627c537c8659eb225552474d38a25e734a5510","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.205-renovate-internal-patch-4d17b038473586e5cb2d9f318bf61227e0db8043.tgz","fileCount":28,"integrity":"sha512-rtFG0mbcbKD81mbFERIxWHokDDARgdIatBlxU2KYF6/42hpl/C0imhz5ixkgPQu408oIsdl8vV2TfVl4QfJPHg==","signatures":[{"sig":"MEYCIQD6B4TFMNGGO1tw4ezfm/5YTsqGOXyhbYft/rpXUc1YPwIhAO+mIb7SkFojtmUkJc4T6p8rc8hOtVd78nooPdClwv3P","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226795,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvZtgCRA9TVsSAnZWagAAdT0QAICacKU+sjuw2FgKdGle\nVVCHqgEar4nctkqlJ2PI6B5ncTzgoyYBrLCjh3Ry7fPzoCqxhQ5sqsVdK8zI\nx7ayND7bEO/JglAuOToABz3ZvgYHQKfGcoxTO9VwooJeTzgL84a6Vdpk2fkj\nFEvBv/5PRZ4EmVExAj9WhKbrHh1HQTMyzY3cvxwiVcUQ53ClaT3R9ODKTOWL\ngIzKZCzHPaxQ0LTUhLS0vpJA4i6dZdexTvg0KG25u3rNXal5x+mGX6n7G7GL\noflj1gcZ5v8xF/jdC9vKsDUaYEb0BgMKgIH5CVZTLH1Ekfa4DFFyl2CYnsvZ\nqgY1TT2LpQdnyj8bnN7AK6ZMHLZ2LYyFX/1r75fcGa/ZDhebReYYTH80oYUC\nx7F9XHTwIME9RXJDfNHlqz4GQL8Sre/8vjHypCX0DmL5pey9B9j4vb46pRuF\nHpL1MCDH6kG9rCed06VjbOby+AASjaqBZO4UzHBWecfcPVs6DXeUEou4V5Go\nE5MfEY48wCZfA3WNUIo+KeCDLRnxj2f+v42KgE/1G86M9V3pKFaRQarTJGuV\nI/8lLT4ci2TutJHWI4pmyn6d6AYb8AM5NYmQL+9SWhCJk+P8x87ww1hzjD+s\nDDfW4Tpp0izqCESJ1gt4kPFPmg7ORBidxV6raawsuAcsIwmHdOueOKLlnvmt\nBqR2\r\n=P5S2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d17b038473586e5cb2d9f318bf61227e0db8043","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T08:24:05.982Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.140","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.14","@balena/jellyfish-environment":"^6.0.3","@balena/jellyfish-plugin-base":"^2.2.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.205-renovate-internal-patch-4d17b038473586e5cb2d9f318bf61227e0db8043_1639816032777_0.7434157602075548","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.205":{"name":"@balena/jellyfish-test-harness","version":"8.1.205","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.205","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e33ba95b7a07cacc74b94fbf7ecb58664f0bf2cd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.205.tgz","fileCount":28,"integrity":"sha512-S8In3S2nugxpLP/nil1UlitmztqSNJl5dXky//pMPIbTwefZTmus5+EFBuAb7t2EKejE3s8wzjwaYSFVNcFcoQ==","signatures":[{"sig":"MEYCIQDmeFAZiK0yyqedbTKYsbup7od35M8RRfcy/+weBlcKVwIhAIndlz9DrH8iom880rWsLQNlckpyekMTa/wfvBaUytFS","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226730,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvZx2CRA9TVsSAnZWagAAtgcP/1ivV9iUPTNq8LD+FPeu\nRdz4ORmJS1vbhuKpBHcfHnkIKo/6YvqsaCRrd/OWBuEyvLd0s3FGU9mhbfMx\nx5wYlU25PJeZ640BAB9FWZj3BF2DoK9oZGwtmGVBVN1f60yLxRnHAeeS4nNp\nR8boWMj1Og090oztV6rue2xnBJ2tkr/Z7xmEv4wrJ8KARCKR9lWK7fioIniF\nq1lyPYEAoeRfNxB7/YhiorRviaIK/afIC3dqi262NDy/92P12Tt7F+Dcnonm\n1OgcnFMSEJWh9NrgUubPNPEs3hulZ05HjJJpWg/DjDrENqOZ1h5PJ76pN8in\nayTA2TxWOfbeSccf+eOA3HthT6UzMRx5mfQFiwLliJ8JQITA+O/gPsUeZrkt\nTrUYVwXQK7PCW7zExFgpgxb61rrXMK3N3xvToGd9bNAdwJWdWPkij2pOwZfx\n31fYPeIwwK/y1pRo24A4FV+6iCSDofVMXgRV/gtJlTCFqpYcji2JY9pBUGh8\nlDoO0CkmXVhONErudhyPvtoFm0o7+0zwlStvK2bOxOkyeZbiEwnV/jjqkrAL\npzDtMv48x1VcsowSSfsYzn/IvVPxBjpIR3JprtNa5FzxYWemsKeW8v4U7eED\nnZ8zSXMDQQQXjy55RifDQ4MxXEFF36GqbKQpSE7MzqI1GEqVc1r5ROSYFF/4\nlBBm\r\n=eDY0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4af4081ad854c427a15a97459387b35e45f8e55c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T08:29:19.699Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.140","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.14","@balena/jellyfish-environment":"^6.0.3","@balena/jellyfish-plugin-base":"^2.2.4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.205_1639816310729_0.0034737055605245093","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.206-joshbwlng-improve-core-context-53bc29cd26edb8a267a4fb8038a8b9fb2f43069d":{"name":"@balena/jellyfish-test-harness","version":"8.1.206-joshbwlng-improve-core-context-53bc29cd26edb8a267a4fb8038a8b9fb2f43069d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.206-joshbwlng-improve-core-context-53bc29cd26edb8a267a4fb8038a8b9fb2f43069d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a4e6df2adda285e383e59868b0f9bbf255027397","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.206-joshbwlng-improve-core-context-53bc29cd26edb8a267a4fb8038a8b9fb2f43069d.tgz","fileCount":28,"integrity":"sha512-OpMmDQ1kRdglfJSzLxsHHpsaiiyWd8ZU442fHmzEFystDjtpvuEjbqoXhOQaFPxQcXlhz+R8uRUdg3KnFZfkFw==","signatures":[{"sig":"MEUCIQCJ40t1IzaoF/7Eg6oBhbgqCShbHvDB8nUPAQiXkp06NwIgGr2zEZCEOHWdjj9quAWnq6nZAt+48qNXRqPAuE3hJYA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226655,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvayqCRA9TVsSAnZWagAArlkP/102a1mEcNEb8Ko272z3\nmCeqo2HtlPO0a1U1A1tfYnIdI2oSLRYtznx5PzfuVn14TeUlJ9VyIZOoSYFk\nMOTxU61/FxA9oZzAAZjsZKnO3eZNX3fDCqUa2xELnHHTDeovyuBdbfBiO/vb\n3BBM1ZEoosoixEncUCHQgJRm/EEnv4gl82GMkvDcPhhvGbhLrXEMMT3Q0Ja+\nxauo5ugyK9ruv1fMwXx1+PZfRoROS9JpL1XDRrUgMBAi6aeojsqt1m5hdSnC\nCMsmdGvep42FGzywjjG+OEZItg6VGzvQp/8x3LKjyUOx5P8iAuCPiBFmo6Fg\nshNnVg1jTvAChzgxyNRg4t/2uHtKzr8LEIkQjt7cbEBPLKRtoIr7+jiXrFau\n17uJ0cSnEo3xvkXjJr2cepRg/sxi8XEK2vVP8ZlxXvDIBwl8dja3wa0bwBtu\nSenk21TifVMWG7etuRoI1PGTgdOuqhJu1W0dBtyiO1+fdTWrxWnZG3vxruQz\nN6egY/PH/w6y0EwkKxolPtRd8kX1AflMoJn+nVzEWwPrZFUC7ZbQIwXtFCh8\ns+gUNyjZBCOKfO6GTodKfmDYezXQeUzDU0MFAu7lw/EMIF7qW8Jn9Bxce3cZ\nFOJcRv7u5cwWona/YWsegIXMzJclZIjndCYfMuLrt2azqz23s9zNmSYiStyV\nhdXv\r\n=onOy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"53bc29cd26edb8a267a4fb8038a8b9fb2f43069d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T09:37:08.234Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.140","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.14","@balena/jellyfish-environment":"^6.0.3","@balena/jellyfish-plugin-base":"^2.2.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.206-joshbwlng-improve-core-context-53bc29cd26edb8a267a4fb8038a8b9fb2f43069d_1639820458604_0.6545942032478391","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.206-renovate-internal-patch-08b26df2a2352241fa8be7739e8930e2364d6a42":{"name":"@balena/jellyfish-test-harness","version":"8.1.206-renovate-internal-patch-08b26df2a2352241fa8be7739e8930e2364d6a42","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.206-renovate-internal-patch-08b26df2a2352241fa8be7739e8930e2364d6a42","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"444aa7904fc5fef01f7fc3a9344c190ad04f57da","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.206-renovate-internal-patch-08b26df2a2352241fa8be7739e8930e2364d6a42.tgz","fileCount":28,"integrity":"sha512-i00eJ3Zi67W5LjxlYy4QntyL60XGjroSre/Xr7Q0e7+bo3AKbZ0eJw9v8pMmuOAsrIJYziLahZyf4S8edFdiJg==","signatures":[{"sig":"MEYCIQDps7ubhiVm/qF9Q6xnPDAzzMUKLWwaM5TZXLAkNync4wIhAKuIAbml99H5IMs5Zjy6Vd/AAPt43QZRezU3Fo7kxtjU","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226901,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvbhwCRA9TVsSAnZWagAAIJAP/0lUYdEt++tXEp6KrdbH\nFPJehSUeF7iF6NSg8WizVbc9xhlBK7oq26eBTj+ZIFJ4MmgVeIGJBIKKtu5M\nnfW1IsCA1SUjeHgQIk/oo8WahtsR3D6CXL2EQTMZfRk0oOTjlkMUCdQA0CK1\ni2KCwDZr8r4O9NzXoQAsflMJZ2/fAsa+GNFgFXzWGvhygU+OD5gcfJyEVREB\ngWhCmfGhXWB/GwdE/H/oFQigEZ0ObMoNcaRBdJiMD5fwTzR/siuI3fSzBWc3\nzSqqEWE950L2T7Ny3HRb+oqVD4X8QsPdgTRK8qS5tFGO0NJW2Humpab1BM0M\nMnyudkJei3/STIR2S05sy5hKv1YWnsFwcj2bhjYy8ezaT8z0L+/MfkChX7aj\nzyXpKz7wDVksig+QXGMad0c643WzWBv5mVYy6xPBOicE53qIVe1sUbbtb4pl\nPGukzOsxQryIoxYoXwFTgOgia2pAlcXc15fREe2l6wHSOAQImHh6TlfhEgX7\n/2PmzvuskanOv3tj7wJvPwUP85hIZEQUEB6n1sVdxin0hc7ofupnNXmbpDkb\ny/I96XOTfvKtDDth/jPbLeVMgOzlZU/4REgDeooProrgvhdE1YZwBYYihS6A\nMTeQT++oSy6VODeu2S9MXi2nLayBMN8ehJGdqNG3nGmpOwj1z1B9tUTbHGCV\nVYYp\r\n=BFop\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"08b26df2a2352241fa8be7739e8930e2364d6a42","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T10:27:59.094Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.14","@balena/jellyfish-environment":"^6.0.3","@balena/jellyfish-plugin-base":"^2.2.4"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.206-renovate-internal-patch-08b26df2a2352241fa8be7739e8930e2364d6a42_1639823472142_0.7213085260579657","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.206":{"name":"@balena/jellyfish-test-harness","version":"8.1.206","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.206","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"21c68129ddfe838f47dd6d1070a718754af68497","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.206.tgz","fileCount":28,"integrity":"sha512-zMAKv3Rb6IXcG1CPIrOJJEheDYaTWUlFxlNCXRkY3gMdy0Xf4UDylkSdT3zeONjaYKslL5a7nbGhtFtrM6Z4Jw==","signatures":[{"sig":"MEUCIEgmlyRZtP0GdfeLTwAzimJFA2kok2+fG410o4r7CyZzAiEA+Y6lhbsdloYK9W33HxxO9/V4WYqM3ilpfLMEaDZ/Zx0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvblcCRA9TVsSAnZWagAAfl4P/2i9vKZW55lAe+V+Gas+\n2XWcdpDGRHZVm3VP4EQ5weby+9eQRaw3ccvYmrhurSFzsMxb2+LqNKSPn5dZ\n5ur0KlO/We7LsW5OLevfgCXwB2SDvEFGTf9Ih5dZ5KOQrday9AWAojMSFiA4\nug92BPppIvK+laOv8TlSG2sYEnHsVLXPlv5eJ8bGEIA7UKCyNCuiGzeBEkHv\nuBYZT6XBQDastlMug0U+hRjNNbFQZwlugZ3uTuDbJUeV6STSP9di03/Mr30v\nbIEFLty2SejJ/A6t+38OTHRqtDeSwM5cNO7jJYTaleAiNgYLH+YQIZyFR6Hu\n/gkYXxvifI26TOCy8hjak3nedFfwO8hhwihfv0PK7BrdTaDejkPJXg1/wPDx\n2pU2rbOuy2tnNX/GkLNrTHj3s3Y69auIB2GLec2AAm9HbVmrvGiM6obXonVN\n98XP5p+nvlAVxWjPuqFUuojRHTca1aal/IxKTmZ75+uNWDmj7QkWFQcmnS90\nSvY2z6Fy04ua91KsmRYydpSh33wxjSADat5jgk4tH+/3PLlmk7KiKnsi5osL\nPbSIjsFprldlkbX/Bi1W8x098FB0SyQ9HoH7EANKVQjnp4iI7NIYXPkDBTP5\nif5nXKvf1+p7OeuaVZEGN/8BkmN0RvX9jgvKjzeKPGxQyJCVbebwc9RGfuvY\nG2am\r\n=yUpy\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0ab569085ebbb6dfd6e444380466cee40f29f3e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T10:33:03.979Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.14","@balena/jellyfish-environment":"^6.0.3","@balena/jellyfish-plugin-base":"^2.2.4"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.206_1639823708007_0.04543510464286715","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.207-renovate-internal-patch-017615c4a5b5d6dda5873d6b27a9361112aab111":{"name":"@balena/jellyfish-test-harness","version":"8.1.207-renovate-internal-patch-017615c4a5b5d6dda5873d6b27a9361112aab111","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.207-renovate-internal-patch-017615c4a5b5d6dda5873d6b27a9361112aab111","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"917e961fdb512fb388e87ac08fb53e80f7f0954c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.207-renovate-internal-patch-017615c4a5b5d6dda5873d6b27a9361112aab111.tgz","fileCount":28,"integrity":"sha512-VW7klQDdrrK3kT+6FdGVnvWm9W+lMoIGlhZFXcsRK4t7pVzTbKsFd9QnVBY4T6LI5upbjXj04rz1bfetBE6Sbw==","signatures":[{"sig":"MEUCIBukLRJTBnNE6vpc3GWPbyZ0iULxyydrOSt766pUIyauAiEA+k8oFuRC8eFPjokxfz0v/sYA86yjWMLxk9g8xSo/ZJI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226976,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvdINCRA9TVsSAnZWagAAVdgP/287zoz00kP4oUeK+jAX\nBmzGr4DdcIGCMetnGWmOp0+G2V7bJ9OEjW632zfBhMOYvaFdnmEwI8hV/Hug\nGJa94JzoZnqTl5PaYPGHRYwJao07uNYSI5E+Y1x14Z2fkMOyIHUe0DRoeQiF\nlyXDPnedpAgLn2tUKbQU2RvtxEhl2EYmnV9SkFv6a0YlkhVb02CW2vs01TWM\nNFQx4ILozb2/WRubIu2Lf8REBpZLzzecvtouNYTDGU2MDIalUPzs5O/NbzC7\nB2fCVbA0SxXOl+9P7BVXAEXuAkoczhKwWXD1T1QXIjSDhavaUEWnFD6bKV97\nQMwFb+6Rj3cQmlJ2BeXt+T1HRfk6mHUe9IimxCOro4w2HTJJPl3oGpR9HX6d\nTkWb+0OyvTY8JYyyzLK9UopnSLfR7DlMF/2wFkjSAijAdM3778Zl+l+ShDSb\nyWkrDvFUpyFYjxE0Uk53kWdCx8qYmA9ruenGFsC8aDfCNW3TkfuwSQnP/dE2\n4cy08JFsyaqMj2m37tkyTMxZ958aAxFX2LSEEnxpgO26RNmBuFg6Se1n48VX\n5jUm2roEuPhyXbA8f9CDFyJgwdaJ9F9XxCv5oBa4+RSwWyo2LYRLRcIFJIKa\nejg1GoMUnmCOusVo9QcDq6tklUNaZtVsyUYSoPNZHLCjIPXQ9ZRjwhlKbLAv\nMKpW\r\n=aQnQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"017615c4a5b5d6dda5873d6b27a9361112aab111","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T12:16:49.305Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.207-renovate-internal-patch-017615c4a5b5d6dda5873d6b27a9361112aab111_1639830029395_0.19649924308202338","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.207":{"name":"@balena/jellyfish-test-harness","version":"8.1.207","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.207","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ebc750303b57acfc16ecb15afbb9c407b71c38d6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.207.tgz","fileCount":28,"integrity":"sha512-Ivdx5u7oHLsUALocbvBAM5HI5I12trGMR1XcAyuR/H3gftpk0SKUzt0TokVhXBDgo2Tjk39Y+v6Mx39m/W0Alw==","signatures":[{"sig":"MEQCIFYpasbbsH+PQ3gif29Z3BVoE/kQ5rhyXfO+/0PK4ZWSAiAMQ6lufjkZfdEeCeog0vmwlcuamDkytLe0kMrIvamNLA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226911,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvdLTCRA9TVsSAnZWagAAwWsP/RKi65m0wXgdPTL7ASDk\n7P92WPSUpGaYt1n8uoevhqClsd7mPKW7+rjtiNxJNOads8ObJH5ZgW+ki+p7\neUd01MuogFAE1uI5vVlz+mqrev2H1+e5E3cHeOUaH4W5jI7TA18SCVx4Ns1x\nKK2JLikwk1LghanSyphh23RnKxXipoyYKONk2Ycmw88Y7Cryv6mQyvzDyrp7\nPXSuMw4mzhNj7woAZwK56gNqDcS5LxoY1ncEdE9akmRtlZgLlMRM66H9hwnf\noBKHxMGadBTlYpPwN9bABLYE8OuvV853aOEPDZcM7h9YOzz0Ezyjz5W4m04l\nQ54Us6XaL0i3VHmT1EYVtU56Py/yFcWfybXEU0eRrPtc8RE8J5d3qD0o6fDc\nPb26KuahDqeSWnheDU9F6Soh2hLlzW7H4FDk3ygiPIV0t73P4oXPTmz8jG8G\n5aaRTWhri0qkhsfQAkgfbk431RRtyS/fvMq9AyIjTQJ/V6qCXJu7A0JQVaWU\nVmN5mCm0p2DgAKzNRqn7anUg8pIkMhImedQ+bL1ajimAp6bIALjDevedGtj1\n0HY+zROBeOxOSmCvG8rPQlzzwJKIMoY6pu/FcwUnIds91vyD4cNYBV6leF62\nrIWhbunzpt9RXGcqSVYkb96Sv4FhVcjkccFmerYBwRdXYGJsWhaD00/EBmkg\n8fMr\r\n=3cev\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"02b5ddaaa23ca13e5ced255f8f13e62db82850d6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T12:21:41.404Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.5"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.207_1639830227089_0.42178631361914554","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.208-renovate-external-non-major-74c108218ddccf31018d2bad6ae4fdbea6a20dc9":{"name":"@balena/jellyfish-test-harness","version":"8.1.208-renovate-external-non-major-74c108218ddccf31018d2bad6ae4fdbea6a20dc9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.208-renovate-external-non-major-74c108218ddccf31018d2bad6ae4fdbea6a20dc9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"edbc31a4d2ee483bcd98f4a3047c5317f11d4a76","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.208-renovate-external-non-major-74c108218ddccf31018d2bad6ae4fdbea6a20dc9.tgz","fileCount":28,"integrity":"sha512-g4x1lr8N5FECq+Ks1oliYFawZZMwyGyfv94xuo3KjGyBylMKea6mR+Qds2ZGqbkRe6JaXW8az38/M668ABDlxw==","signatures":[{"sig":"MEQCIEz1ilY4bBK0s8iBLEyrpek0YMNavkAhh2HKyE9piOFRAiA90gxjzPm9CNcQb0iasXbC1S3jc53mJCTvf5/O5O5pIg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227074,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvdPlCRA9TVsSAnZWagAAJ5gP/3kw+rXgOBVop4l3l3k1\ntemz5a+M9hRTv5ZrLUG83VL6Xqxp3XBIyZWq0Zhl6N53MMbeN6ne0uTpnafs\nHY2bVJL2hruifw8O+WSu6rnGd6qpGCyvawQ2k6fU1QOL1t8AnqrUXlimjIyr\nesVhf6uWGJttIbS2s5XP9YmNWOnEwAD2ws3lrg5jtQnhIWX7XMM3vhiKWNOP\n+erORRvcnyjp/iBMhbiDp2Dh+FAP6JDT6CF4/EESIDykWy9Oy6oaRn81ktat\ndGZRsfaOxssI6eH/bhIkQCNFLg3AiHvBLVzfURFB0Qt9Jl9ODFBCBqFykB1w\nJoaCD2GDi93gTPHYJK0r4nwzJ9QZPHTp3KxbnXqxAhDMLLuOcW+sGM8LoA7j\nOl7HF2S4WlP2ytiX6lgY/zq6Go42cge9KO/J42JrAk3WGQan8rsfYL8h53AI\nl2HJw29pHCRmLlgzCAPQGjIcKo0krfAkscj+uzF7xiUsokUdrDU+yJhwLJ5g\nMa48Lxykzc4ge1sL8JcboRtP2HGYw6chruKUg4drFsJSH3qEb7Yh9VsXSszg\nK8a6mE+DMtCM1wYs68rQZb+Hslz9TLvUtpkEaVcVhvwUWtyMpP2/ujlniXJd\nW0LuFtCtI/MwXIefQq/U887FkmEPXHqLX6X1z1rDP/Qd2FNGTo5KRaPElKbY\ncxyS\r\n=0o56\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"74c108218ddccf31018d2bad6ae4fdbea6a20dc9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T12:24:52.508Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.2","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.208-renovate-external-non-major-74c108218ddccf31018d2bad6ae4fdbea6a20dc9_1639830501352_0.5922477960256614","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.208-renovate-internal-patch-512c2e41182ee93531514537a8c21ee92f8f7bd4":{"name":"@balena/jellyfish-test-harness","version":"8.1.208-renovate-internal-patch-512c2e41182ee93531514537a8c21ee92f8f7bd4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.208-renovate-internal-patch-512c2e41182ee93531514537a8c21ee92f8f7bd4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb61a209572f3bcb6d9220f218ccd6f34bdd1311","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.208-renovate-internal-patch-512c2e41182ee93531514537a8c21ee92f8f7bd4.tgz","fileCount":28,"integrity":"sha512-jVThRUt8Ad9GOOBMxuXoSv9Egg1V4ldR3oNcKmJC1m66rNLhTNvVSJrPHYsFrW2ubuTBuZMcDL/qeHsEcJGxBw==","signatures":[{"sig":"MEUCIQCCiSkjYrTvn8xjA4o1n2T9kAjwUBIITdnXcZrz4YNrYwIgaTAJ0AMBuzxi3ui+liLeZJxMjfssChVU6gEGSEkfAi4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227051,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhve9XCRA9TVsSAnZWagAAFoYQAJCi8bM7dAAKnNBBy7O/\nkGO5AHo8ydoq4E10S99POxSk/QhhDztfNWNSAtk78iwsNS6hrMT3+jqhWOLs\nNNqjXz65xy9dAGrT3wHZLAchP8FcQgUSzPiqeDBwb8IFLioU/9pIeOSPOX7F\nFfMOrIgUmTItn5HwMs2YoEvmd2eGi6fR9YFi6z1qCK0Tg9Ac0Lb3qjuHB8ez\nMs0HFb2lk7KXm0FBuEig6OG0OPyEAEIr8WHS/nLXCJZtbDBXj5KsT60YIesF\n199GaJmUKuMJkJb7yRacjUz3obvttpqueaChLBe3+CJu/iqfwbGzYe9ZPROc\njKb0tFg7l7fbp5VxxA/moK1MLQiYQ/+0Yd1sM9Oid5l4i5Ghf564nTQNA46R\nlEEfOa/B2XBcjhtIhVAUmiOLb93HNEwRv+kJvRD6cNazvfKUPr0vRmuAj6sC\n6Z3RvX4JRfzRJIfiDxMg/4QvYEGe29xdOdgw33WOup2YvIjWMocBx3jRFSDI\nNDLtZb+4AKJx4D7muqYcV9etxG6SAmnFwZumIZFJgoFsbUcAmUXCOuRJhQGw\nLkFdmRHyUasGRRvfvnO6tle9EASQlQQT9choTHwLPcxCGYm01nZUGBAEqhS0\nZ5uvLLJTXX+mcDqgMqVBbeAiYGljCmgtlnxxsguIKIa6rXpNT8wUpKUhDcsN\nPzC2\r\n=E5TC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"512c2e41182ee93531514537a8c21ee92f8f7bd4","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T14:21:08.698Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.208-renovate-internal-patch-512c2e41182ee93531514537a8c21ee92f8f7bd4_1639837527319_0.05235777302312483","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.208":{"name":"@balena/jellyfish-test-harness","version":"8.1.208","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.208","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"92f031d87e357cbdbadc3d9327aedd36f1e0406d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.208.tgz","fileCount":28,"integrity":"sha512-9xLoxUzkIvobEen7iowp9hpWjpFEL6qIDkXCD3u1YAPSHGpMvYNNBHkmeze/7d8ozeBZZjEASxreXi67Z4o8UQ==","signatures":[{"sig":"MEUCIQCuWJmwTc7ktt0qi7P+CYS8h8U05q3n1l1BX8IagR9fBQIgdXlJcCl+tKXJl57MCzlW9Y5h94oxj5TCglQi8XviF9c=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226986,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvfBRCRA9TVsSAnZWagAAkV0QAILhNeOtO06lPszqHGLx\nDuSrMU+PCCow99VZipZ3tDl2ke+WSqYJPo2PrnShiEwZ3bNgFX9SKE0kQBtX\n/CRjtxUZ8gtQzJwVSRDc77g5ruJ8aaMoRPMzUILxEmcFK0uqe5DJ+2B9u4ge\nBCVe9AkwyRqqf1UkHNEnqkDS0C+5TMUDETeJq0dstihHvoNXg8INU7apR++M\nl6a3P1UGk4E4XcLx5YkU/L3zXkOYld0GrxfSpmLGGHrIdcfM7yqfthcfepH7\npJdrlHuYlYm++0yeOEvry7xsAeu32auvKnUsFqXMHHBVAcd+lX9a3VPf+Tr6\nTE/Lzr4D2spWMkQbWZuM8OVTJGOFUYnlm2VqG7rNHC9ggyiuAEsQmGEdft3B\nYbcydxnc98qEddHT3Vpipkgi7PZqDpsbhMze65bR86W9R5rsiAFJt8r9NGlC\nrNipHks6eSERWGSuOGxzGxSj0nL8FSZJUEgMThT/zWgi0W6gwZbvsq/aBy/v\nnZ8tkC62myuf6FaIgbn6GL05+2eVNeJ5pUrwB7pGNBfkPf+x7jVoM8eUchU+\nWdKJii3tCKXOB/xTdvnbw5YP1iDao123GAXXZK237tnLf6unLl6Ert496xwN\n6jw6hu1Ntls1RCVF5YgFmFYQlLY/OKrJ11LLWIWS2Tk5xllIswRay5j0ag/B\nUgjm\r\n=Zl4f\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"23abad7262dab59c92a98e791db7e9f46d10ed3b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T14:27:25.022Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.2","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.208_1639837777439_0.0860028435750877","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.209-renovate-external-non-major-b7cf3fd1b834ce91891b6070aab266536294e7d8":{"name":"@balena/jellyfish-test-harness","version":"8.1.209-renovate-external-non-major-b7cf3fd1b834ce91891b6070aab266536294e7d8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.209-renovate-external-non-major-b7cf3fd1b834ce91891b6070aab266536294e7d8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bb86080dfd9aec987b7e4e78e77a3fff6ca4cc3e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.209-renovate-external-non-major-b7cf3fd1b834ce91891b6070aab266536294e7d8.tgz","fileCount":28,"integrity":"sha512-yoHYaQQjg/RscBB0rFQZPL/qWaaekovCLfPFntrWZJLCBzVR5kbmvwSpCk0Ab5jQrdsBDYbuf2POjwUfg79lBA==","signatures":[{"sig":"MEQCIAxHeBZ5kHu5QwOs1ISpmaIFwliB+5tn2AQI0bAGX8SHAiBxiyqkqoMFYVd4MRE7PrRDZ6lvcyKlsTZUpS2AtDlKDQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227149,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvfFCCRA9TVsSAnZWagAA1okP/j4wFQpnSxRfuuP13gvZ\nXBi1q2psLrobROJ9TNJ92zzhShLGABCusWx5bInpcVdoXJ7mq5JzbMG+PMr8\nhzRQXeSGC65VwD9oEfz325tlj3MqBPJvY0ZQIhO1ZT4dnt/XNDYXECjr5BfX\nw9cdeSw5zhGi3PW8oeMurmpqS0O/dRBGdNZ8bEhKTAys+V6a+vdub+PQ0x8Z\nf0d2WnTz9L+VJ84c7TRi9pHFoeb2FWiJL950o2BICWiLiCi616T7loKNsKut\nFApGKwL4yfhQZY9HU4dq+12qNHKwy4JfGIWha0et7BYMJivgeOuqtyFauG0U\no7DeNFGUTXVwHph4Fs9evBVb0PhJNyCOLqvo+Ewl2IjASAw5Xv4DR3c0veqg\nehHcotsMaNxrMa/0Jj/NBCwZ41/nNItn0vt+/d546TmoTnlyBGfND5MI6P67\n8osnAMCQE71fijmYgpnzBvHZZ3P7KZ9wywlXXRyTJ1tuh5rsJzMVip6o4Jcz\n3cTGIZeK7nCCBNgckzMhXtop2l2f6qjeyK5a4Pc/qHQRNG6XuF1jXHIqnWNA\n7oFh+6riVNXNXCQXqyw9sadJDfDrt6ngtdk6voWIdn78kemLt3mu/ar+AQp7\nsu+vvgww+C8Ug+0qTxG4Evxc+2p4noaB1t1J7YuSVNMw23nmVPgfOd2rQxpi\ni5Xj\r\n=J9Q1\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b7cf3fd1b834ce91891b6070aab266536294e7d8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T14:29:50.588Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.209-renovate-external-non-major-b7cf3fd1b834ce91891b6070aab266536294e7d8_1639838018509_0.3665026316655937","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.209":{"name":"@balena/jellyfish-test-harness","version":"8.1.209","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.209","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5ad97c9b41491ce029be3c591332a1342ad30f5a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.209.tgz","fileCount":28,"integrity":"sha512-dX1PsoVxZqBlsd5q5r4AUjeqX3uku0j4APV/1rHqIFo5ZTYnhxvnocxUaDXmzy+WANQogfv/EtU3ER5SS+2AYQ==","signatures":[{"sig":"MEUCIQDAnWxihTEaOBzF1CYH8oG3wvOG1JPI1pAO/1QMD/U5NgIgNkie6jyAorgUfGTI174agDOJHQUHfcO8qN8Z2S62W10=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227080,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvfKICRA9TVsSAnZWagAA7SAP/3WPw7KcEeIgGxRFH/fD\nAhMAxZ1TFxOfJvThjxKWI4f905OGIroS2NH53leElMfUoOpTo7VdzVIkeWdo\nWHgYKZqgBmXHcsQ6Tq/rB4/a3sXvgpVX5JEmDC3xpy6WXQLRtJje11WvCdTR\nh9lHE3aBnTAdynfiabJEK9kwPqAy9RKQ6IVTswZoqCiO4/XQn0KrJTXDYiFh\n+vL2eF7pamsmnk3jB/eayk75YEe4aIMrelMfPW2OZCOHFcNof3M1PftlOhYa\nrk47fR9gyo+Bc7vrM/ztZJ7cqIk6ksJiRw9EjwsXVPJjoKq/a2I97A4y14AU\nM/JKBDi9fkl3jF+yLtxc4py5L6liyGNPD6jl7Hs5ldfy8gkHd0O/+RYI9AXF\nKaqbYarnwQ+gKEGN9qd6d7RVE3OPILWfBHC3OPruSL9yfPq2igNZR+Gavb8C\ny7F4RBprucj9qOJt9O/193Spn7M/ma+FnSu7HGMKlafBSVO5fYfq+az4wml6\nHEe+fLWgkUu6pmUcpCJLddsw/cT9IVoodcgcGWXHr+pdPL3umSTUFuUnV54o\nl1exH6Wnal26DMAE8/02SeYnjWkCxggQ1hz/5tqnYEq498yMB5qykwViZuqm\nqQ7JsBIu2zD9PbJFVPwe//dwtYQF0VSwvxFK0aXjORudIdnMMgCb+vqoO2yG\n8m9x\r\n=MH45\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"695a32d9fccf253612e4719ef33ee955216447c1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T14:37:05.137Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.141","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.15","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.209_1639838343873_0.4472424653918665","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.210-renovate-internal-patch-61794751daa7d9fae3f2a900b7b98ea383c6c4b7":{"name":"@balena/jellyfish-test-harness","version":"8.1.210-renovate-internal-patch-61794751daa7d9fae3f2a900b7b98ea383c6c4b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.210-renovate-internal-patch-61794751daa7d9fae3f2a900b7b98ea383c6c4b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9bc1d40474c989e9236e842a19016d0f3e45a901","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.210-renovate-internal-patch-61794751daa7d9fae3f2a900b7b98ea383c6c4b7.tgz","fileCount":28,"integrity":"sha512-JBPdB8UvBK1s+Tyl2WgknXG2sx8qSF/AowchtwTLomHJ6ODkbMpe+uLsFDuHSU6HyIJYrrMy1Xx8OkVg8nZm2A==","signatures":[{"sig":"MEUCIQCejJSNw/6eZ9J3xjv7kmtDd7JdaVqk0psTmZp4WQfUBgIgM+iNSZWIa4fkdq4n4FGf/yFRWHw/surrwTXRmc7BP5I=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvgXYCRA9TVsSAnZWagAAn7AP+wY36k6pRD+yrqYBk2oW\nGh5Mo4Dm3INU7b5J2Euc2H6atN+UmLKeRgqh0FowdPM6hw/J6PfVbThHGl1G\n+qPUZkXFVfi3dTilGznrICpbjdwYWqD7s/8PFrkJIcfyNfq98bZcoZ4HpEbO\naoi51DQ+AXQRfhHnVvy3SiJN81p2DAiGERfT2YwhXQk5ice0EHACpRq9hF4C\n38BmaXJuuEBRQ/1N6Rc19eaGKTAIPzrYwnb3m58UnCCtwThG92BGd+2qZ2r7\nSsSPSeKq9HJyBqkmijJGuap8F1/Q8/enSWPpsR7OdpW5+MDmVQ8B6+quEzkl\nz5cBMwRRqoF2nXzRFWKQeAWSlU1hKfzZ59FXwGqF+zLX11+ABpCGgkkrJF72\n5IKYwkh8dEyccqHlTZwRqXLuKkOs8q8io+ogC0G8cZsDBcl52GmfbnEBaDG4\n6pZEKUQNds5eb/fzGJpbVEkV5pndsIRhouMwqNX3o80JGVE0zGdEdLaWTExl\nJRNONEKMQScIlzhpzFRlvl9njTLtnaJSrDAkAgzbO4icSN+V5gP3KNNBYAvZ\nAeIq0g2FOSAKCfN5Gd3nn2vxVXS7bsLt+f2SmxRPwWVA4GoXVySNgyz/qvQm\nI/UaXC0B4h3eDCxDGbACixn9YN3+CCQ4Q67bvIbHsG5aRTy4x3dW7v0x9d9R\n9nHM\r\n=jFai\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"61794751daa7d9fae3f2a900b7b98ea383c6c4b7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T15:57:42.438Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.142","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.16","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.210-renovate-internal-patch-61794751daa7d9fae3f2a900b7b98ea383c6c4b7_1639843288337_0.11788931644608103","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.210-renovate-internal-patch-7264859d44b993c62a5ff56e85bb4047e3ad072c":{"name":"@balena/jellyfish-test-harness","version":"8.1.210-renovate-internal-patch-7264859d44b993c62a5ff56e85bb4047e3ad072c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.210-renovate-internal-patch-7264859d44b993c62a5ff56e85bb4047e3ad072c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1e3739a9ddd5b13c08a816819cb137b1a88af513","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.210-renovate-internal-patch-7264859d44b993c62a5ff56e85bb4047e3ad072c.tgz","fileCount":28,"integrity":"sha512-g4vIj1jrjWBLyOHHjrIs2RD+ft2fDZdvgosqGyj8wxeSOuHXadlWTwRC9FBaBOxBRvlE5BWAqF+H8Dagi/A6Rw==","signatures":[{"sig":"MEUCIDlzSLyR2HaA/C00Pkb/g4GsWKsSYcPZOTjDEe1dBpM/AiEAy8X6zKu0elrJPh2aVDaETs6cfeQ5wTbVvDaj86Pu09g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227220,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvgaoCRA9TVsSAnZWagAAGu4P/1jN66EfjbdGcC4jpNRV\nIifkmnJk5Y7P1HTSjpLcbwIYybpvS/UiEZ83YlQ8WzBeFWyNxZu4/GSaBg3o\ne1VQgKtJ9ihzhewTrxknSGXt66Va4f+n4eHj1sPtCh8soZ/zfpVJaYZb7jUu\n5rhUFvXoaF15ribSdgE61/ilmjBza7v682AgbClmHahxIN4yV7XbXcPYlDXr\nhYr5POoPhSCIk1CA+ViNNbloZaL9SVxrlMgJ1o1aA5XCYPxenfaUI4outTUE\ntuuQs1cykJJbx76NtIhnId9jMNb1oDEvrtHIYyf/UCDsqtqwxHe9aPSJUPH6\naQwZIqe6Ql3hkAhNiyDmr/Lgx12jtd0VFIgN5HwzY1hOaQZBuwVsietKVXNC\n/pTGCmgAAZ6We3xMEdMvkmdkm3a3SdmrMQ3RPC3FpECBCEiezQcwcVIwAEOI\n5WH9t/bkJGyoHszv6oWzonC73PqbyEG8ZViyjCRcncEq3nwTM7GL6mO47f8I\nQm7u9GHy1skOUbpG9nh/rMnzwa7tb/BBMrEva0KQnUFlZv2XOQYPjhO806mY\npX+/ce+9sJRtEfFGPMzP0HhfY2fu4q8sGgDs8cG1kolmxpwgASlsyajNJOVz\nCOFYJsB0FLkS8/Ubi4VGPVGEcwpKkFJIjUsaVx1mUHV2bJ59ZirLssygF184\nNMyb\r\n=jZHC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7264859d44b993c62a5ff56e85bb4047e3ad072c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T16:01:45.251Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.143","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.16","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.210-renovate-internal-patch-7264859d44b993c62a5ff56e85bb4047e3ad072c_1639843496370_0.7885868921784756","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.210":{"name":"@balena/jellyfish-test-harness","version":"8.1.210","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.210","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c95313d8c22c6da87a7c5f681109125d6b317d01","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.210.tgz","fileCount":28,"integrity":"sha512-7dBu/1XOvfCz5vi11ZDNwM4fNGdOHsQt6o2oqSTh1fieTmko4E0v26tLydKiswvS1bcn4zWkwP0UfqlNw+4A7Q==","signatures":[{"sig":"MEUCIBAmtic1N+6Qin/amAmJNALUnmUC6OWn7+hOeupjOG8LAiEA6yR1xXiUOGrpSh8KtAk03K0Vaq3ZAVfKIrjcYtvJjG0=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227155,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvgeFCRA9TVsSAnZWagAA8QEQAJXjb/zeFkmt/7+t3rHH\nwntoLeaCDnj0aZmmogeYjC4ih0P3F7IUTkj+aoBAJ5LEPXlgJi71cloRdEW7\nl0F+Wuto2b2kGpE4ceUGODUtkXVXiCRRt1g+dFdyjV3EcSwVZJL/qYBDCgPW\n4lO9qYs8DwvSpH3gB+3adj2+M2KwFPM9+UpHpOvUPpWJzsPoOnc6eZICwt/e\nG9EcFizXRO6d7YkYh9n85+DfnIiN+2mChYVsizqoQZWc4+eFvb5rGcciyTzK\nubOaYiX1I1IgwP50awU79fah5ha9b/GerZdqeZt7cSOMnqqTd7SZBV6p+VXt\nEZOAMKuuWN4U6vSesQpK7FsVhPJXY9ze7e2vvY7HXRvK34JlL7AKvLJmIok0\nnTHN/mqEa2v9wkb9H1R+VgpWHgn8Pwd/CYb8s4XAX7Er5m/ZebNf/kvXA1Xy\nyAMY10VGuLY0bsd0J54YWra8TJdbvoUugP+s8CbCYqBoSgsAxx0VwVIGownE\nVPFiRGMUW8B9VNPqx/NwGaICK9npupgl8qPahQ2QKTB4b+v7XTRkXkQlF65P\nIyIHCAdX3ACYJcRYMkuSGIrK3MLBpGaRg8p6nf8AdfR7s3eZoE1SAZ8LDIpj\nkLIXQszmii94n6zG5MGlklMNgHVokFe5zBoE/QITU9dqOkJz92lwxfuQwWrG\ngD3v\r\n=r9IK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8d5d50474d19f541a2c0fe447c32ecd746361cec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-18T16:06:33.735Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.143","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.16","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.6"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.210_1639843716960_0.3305713377110415","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.211-renovate-internal-patch-61fc75f01f2824bd7c64d2b4a553642b8149e9ce":{"name":"@balena/jellyfish-test-harness","version":"8.1.211-renovate-internal-patch-61fc75f01f2824bd7c64d2b4a553642b8149e9ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.211-renovate-internal-patch-61fc75f01f2824bd7c64d2b4a553642b8149e9ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d582013804c33727579e152abe9ef1ca4bc93de6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.211-renovate-internal-patch-61fc75f01f2824bd7c64d2b4a553642b8149e9ce.tgz","fileCount":28,"integrity":"sha512-XGVXHODuS6fyZvD6ckRwjOx/7ZWon7U610/C67qjdPEJQUIEwv0n8Lpa2LLclkoOSUBwUqEw0U2QoHiiy4WPlQ==","signatures":[{"sig":"MEYCIQCEbKI3aFkkWex2eUsQH7e1fLONNqZT0sgMXHAXeq2NvgIhAO+JTVgG8t3unvNdMZjisQUnSvP1yOWAJC/TOLDvZWDL","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227295,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvqsxCRA9TVsSAnZWagAAYggP/R9VpVUDjNguPk5xJ1No\nDA+TddyjauYKeOk9OfxiMCs0X/CNzSGPUADYVK10hZIiOSMycL7BOQkr2zaN\nOll3JECcH9KyYxb99SZWvttx8ZMRyv+aSZ5NClXYcvlfD6+kDL4owzGU/JOl\niHpdyBWpYdRb8y5LaA+K94txlfIL8VKPOPWTPSv4gVPfSyUBy9jKooDaSNJ2\nygAzfi/KypxlwNtBiCQ+mKw2aNh+7eUfkfN0ii5ftu5zBa1VVcWEXnvbJYKx\nh9Sa6HFqQqVTabTj7mJz7pwetVSZTWWga4syxeMNSU4JQQOxaj7b9GQMGsSH\nwY11mQxvfTlPco/dTen+x8fV8Qkm8S2Ov4ojG+GElaOVvw1PH4UN/HxKNa6I\nMkY3d/k+b7bADVze1luh5pHbVuQdjsNy6s9b88WS0l8Wg2zekMGzdmXxQvdv\nOLLG2AkAjxC44BRgPiJ71mPUmMMcB8UlOqT2YKuEYXlbrVK2xBTSV4MqNXJF\nAjAT7yaYqep50aHRB79ra1TtEavzO03npfCXhIbk3qA4CD1acNANbpTYmuCv\nMWtM9ZbLznacygLIt0/rKnQHlte4bDYxPaW/0VqngZQ4iJa9HZGE+quT7mcN\n2fa+JUB2ErYoWv436/1JMfsi0D/tDQaQsxTkxRi06cPW3Ki1B7JgthN+nON0\nlSUp\r\n=QWz6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"61fc75f01f2824bd7c64d2b4a553642b8149e9ce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-19T03:43:50.476Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.16","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.211-renovate-internal-patch-61fc75f01f2824bd7c64d2b4a553642b8149e9ce_1639885617331_0.6232839481383856","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.211":{"name":"@balena/jellyfish-test-harness","version":"8.1.211","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.211","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"536ed3695a748526a0b023c1c0b4bb4dacddbd59","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.211.tgz","fileCount":28,"integrity":"sha512-vds1otQa9XAd7kCDaL6dI8pmp7tIeMvOKJZzsVmqn2cVu0zHQJoHQBBsSYBovhMhSmjX5OIbM5Qz1S5bD32IEQ==","signatures":[{"sig":"MEYCIQD/x6EtPXTSy2qj40wgYwwglcxNy+SPAzkIYCGvyOje9gIhAMGRKqHuCe2VPZAPJocZ/3CL+oFTskSm/yo1DEH5FDvr","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227230,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvqvuCRA9TVsSAnZWagAAl7MP/2/jWU3ue6zzK2kr1Yjk\nB+Oe6tMgib3tBFlScB0t71Zh2q/lzshxStRXXYev6tYk/jtksInvQwiGft6O\nxBMSfyA0h5GIr+fyuRNCAK70J+PqfF9Vcc+Sg/Ba8wdrOt7jiDVUhHOJJ3MK\nMUiqVXyD8aX3Qoa7VAw1jegWijjwAkSacj41aayeM5qnRg8Jq2rqapmxeHnA\ndnJmMh6Y7xQzDOb57kdt846hBtTN1j7g1zuI/pjZq8A5PRXKQjnxE5ku0c9n\noJC+fegPG/xA6Qq0wSNAMkJncxp+dwoYZPGMxPg+Nl8h95lji9uoCqGFtb/V\nHYnlY+PKFjdWMjNbanCXQMgewfBuNOJAJnW+BhbNdmqJlkXC6PBmU28K42AY\nTYXMHSMOn++8yi3kaTqd+VeW+AQ8TOpsaSvH+qNOa0EcTM2n0kKQaqMb91Rg\nMfBk2QJ8UGcQcnZx6A4ObeirSRuGNEuolsyI59B/2xX20F69IL5V8sYYYYy2\nSVoUcZBIaNcn6eTbArwKRSP1x1ivmA55i79LQb9z0fKiLZGmb/hFX1j6fgVL\nqbZasQc/x25+2XOpwG+XkGE7mjqVigwgcXMPUY/8JfuDrzXY+IuWZ0Vw2FlQ\n/Of5lXvuVoWDI7ZT0lGB+Q2bR2Exu4CFkrhsk8AkI6WyUYAt8g+4DQNW36pZ\nPNSt\r\n=WQyX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"24ad58dc64fd8f555ab92e84088a8039f5e3abc3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-19T03:47:56.308Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.16","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.211_1639885806682_0.5895781918455552","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.212-renovate-internal-patch-d4bdc8edf146ffba7987aa192c1acfe98edf87ca":{"name":"@balena/jellyfish-test-harness","version":"8.1.212-renovate-internal-patch-d4bdc8edf146ffba7987aa192c1acfe98edf87ca","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.212-renovate-internal-patch-d4bdc8edf146ffba7987aa192c1acfe98edf87ca","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a743c184a56db04f2180069f19e5df7228a1af45","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.212-renovate-internal-patch-d4bdc8edf146ffba7987aa192c1acfe98edf87ca.tgz","fileCount":28,"integrity":"sha512-QWekIq2Fc2DOyBb5lOlEVPhfI0UShiNy1AxzWMunqEiAvI7q5jzBpGdKPtV/DYYtBGplJ1mDl0C+3NUsm9bhlg==","signatures":[{"sig":"MEUCIE+/N9be9jsHrGhdP9Xy3l1tM0b4Hs6AtUxk+ObxqLbRAiEArU75+p9VxlejunWtFrEVtD/RYhzIWfGHBYsh8Kgxr/k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227403,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvsQOCRA9TVsSAnZWagAAJZEQAI328ln7C/uBP+VLZpL/\nuNsv6Bpjgaw336mrac60JIxck+/EqGNWZx5YnvwJoRMUiHCZ0MSmhVIFXNbR\nNpwDaNN3KVpjY3SN1OagoqyO2AL82ewDQvZHxA+EMlYNpd8lTbyCvaeNpFsv\nHC91J4N32FP3Rh+dLsA1sdnwAeCxplUmnG29vTllF35AenniTnQBCgp3+48k\nIdyIZ7xHzfyOtcdXsQ8DAm3bvmiNLSDEwPbrqAcKrCT75nUKn4dV83lCFukN\nlFTydLnjStbdRlCyHavy9qxxugw6Vme7Eb+m5AtfTznjYMhJA/qeiqUTc3A8\nEgt1Yw1MNKZRJ6IIm3RiCDHXDQTp8MXE7CVHgWimxT9XjkOqNFGY++cXdGsQ\nEV9mxfTZT9E5zCBLr5yLcWRuuqo3wH7TV9OvzTk7YNA9+9SbjPCXMWYXH+PQ\nlislWjPyG9fmY8GF5zJvgavtNcRGXmgnvscAMwlML252DXU4s/nLok2AMzB0\nIoslIuR9NF/qZDnu80GaeIVlDppjIgNJKRqKItWmBXO0DV+V/OHdEbE2QaOM\nd3PENNL2Ub+0ZuZ7b8qZwGa+fpFWASbb9mNEReBgPaOLjFC7V4wkI62YSg57\nNmrY8l7Car0xOMaQjtiDkQRRs+u/+grZ0g2byGEAmfId47CZsJzGC5bBRR9+\nu5q7\r\n=Tnij\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d4bdc8edf146ffba7987aa192c1acfe98edf87ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-19T05:30:15.139Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.212-renovate-internal-patch-d4bdc8edf146ffba7987aa192c1acfe98edf87ca_1639891981993_0.2790857215206186","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.212":{"name":"@balena/jellyfish-test-harness","version":"8.1.212","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.212","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"50682d53848ab7ae354e67efecbfd5a493816c79","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.212.tgz","fileCount":28,"integrity":"sha512-ErfBId+Lzm5X+BESUTyrc1wqku6LBzFzO5Tg9UOhvCarx4xffjb6j62WqyfRCrY6gg14+0yf7hxC1oUmwVmQRw==","signatures":[{"sig":"MEQCIEMSAtcMPhb4luXQxGSkYHhpnAyLrH3GH82RKO70smjkAiAUDGqhIO1oMwfBvjQVXAEahKnD+j8t+Ek5J7m5tjVd5Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227338,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhvsUBCRA9TVsSAnZWagAA21EQAJvocLgoIjGlndw4G3mn\nbr+UaYxqay06JZqCHnEdbfy3uD+6ncewER+hRaWzT5j22VuQbTDv3FeJvjij\ndtCYh0aejza6xLcwBFkrtWGOfQW7mEeVm4WcMHOkotpqhzrRd0FhpKmTYgd1\nefXso6NzEFwp2n4T7L4aKY5oVuDolasPC8OOhbvtANwjhQtQqVxLP9bOxuTB\ncf0X/y58i8El/SAQP5L2B9hDlJ6RGnfPNyGvedw0FFKBzuSEWWLpVx830qWJ\nhoxcPdmdWsoreK7la719RlrN0JJ5JmFgvuvYD48C2ygDyOpCIZw2TCoPaYcg\nx++YKfd/hquMR0AsbUS9p303oztt9ZVdPXcwFOXYgw3Gdxwsfv+na71o8+H/\nBvMCF9YYoPOzTZBju6YQLXYFOyjNLf4HY/YLtzA1KnrgZoChk9iM5i1bDIir\n7MjrN4y3MkriIV0vskbry3JNVUDpgxxg2AF4gdc3IrNNuktdFj/dWX7DosHQ\ndDmNJ+gl/K2QaMt/01yPlGyAjihmd1EdwbNN2H4GnDhSqCDC5+RMr+NcuQRG\nsyjzf7dGRmdqBGjF4e3Wltwh8TgJOJ6YcQzFkeUoarzKDV5MZziXzHFX12Qy\nIj2DmzcaOuJ1cEADDCnZDDidekiOURqJNjBH7jt8CtzLNO7wQsExsRXYqKeI\n1AF3\r\n=/f/L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6db25e9bcc100064d02a582a27f37c4f7f3e976a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-19T05:34:49.392Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.394","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.212_1639892225223_0.4124634963464695","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.213-renovate-internal-patch-43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1":{"name":"@balena/jellyfish-test-harness","version":"8.1.213-renovate-internal-patch-43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.213-renovate-internal-patch-43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c297f1c9c8ae8f055f049ba28e2f899ebc636ace","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.213-renovate-internal-patch-43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1.tgz","fileCount":28,"integrity":"sha512-JHmbEcaOKqXaQ71hJ8U6hZG6CzTv9E5UwDSfwaPm3WxZSfB4doIK2rzCiBzdBpP0I9F7v6t8IoSQiuCdbP6LKA==","signatures":[{"sig":"MEUCIQDLutb0XkhkLK6K2EHckL0Kkbcy4qTpfgq8S+cMVIjM2gIgOYz4fbqiQ2fvbHQ8ZpJGsyAzv38Cp45Qxo31OjApDyE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227510,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwGr1CRA9TVsSAnZWagAAE+4P/3pUk4Al2qEPxO/00i/0\n5HXSwC7B13ViWbq8/VkS7sJ+pizvvcw9319XQRzdSOpVSINvZUE1sEoDcKln\nKj3BrQ2vwXhnI6Pj7GcN70AZfMF4B4zRd9dFqlY2bp5V2p0595zs4F+ljHND\nSRzWB4Mtl8o1xvxYdLyjRASgIhxmXWlyDjL4lDkdzU04sR4WTUJnj23kJaK3\no1w6ZMjjlMSDiQ7WHDoYVfkrmfjYkDcr1Hy60p5py7SLxX1ulh62gorBdxf3\nt/WPKYXw2I8Gp5h7jr+8rLHkYFFOt3rsRmnk/yGJ4uCiB63nv1zbysvTe467\nUjGsDkgZeIg0KJ8jfn745gTBigc+LZlowDkWuUKXKTID+3pVWQHGvdyleR1i\nfKMs58Hzpf6B2DE5tY98miOrtb0pjIVzJ1gunHif3m74FoRntxD83uKlM2XN\nOShf3J6soIkc93YpLE1P3k+Y8bJOwMA9zhbdUqFkdC1MJwviYJPWJizNbc3s\nQX9UVccP/sqibK6JwEsIe6O9n7AOK1yINVoB8C6H3SIF2Qu+vqLgeCInlcqn\nJWnFiTuBNLZY0TOhXQa8BB5BEiM30vNkRCZeqFgFuuJCFcQGHaEnkD7geR7T\nQ/5Kx/uhbTnPqNC9Jg7WdNioXk7+1ZTgIff+wLhy8NRsxsDfJQcZIyx+3QP3\nagez\r\n=4kVu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-20T11:34:42.235Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.213-renovate-internal-patch-43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1_1640000245605_0.9442449878389201","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.213":{"name":"@balena/jellyfish-test-harness","version":"8.1.213","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.213","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2280266a31dbcde44d7412599c86163414c6dfdd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.213.tgz","fileCount":28,"integrity":"sha512-64Fh/V7XGRwwlYVmoE8gN3+bal/HhEQWiGBGYoNqp4b3wW8JKrluzp8VT2FVx+XNPQi/VtXHb0fnpTOaI7Okow==","signatures":[{"sig":"MEUCIBef3gCBgXMK85JO/bh3IzwIBO94KqXRYQ5uIESrdoKlAiEAmZJPaM9uuy5D7sGmGlXXjPrE3LqzrzEDZhahl93tFeE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227445,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwGvkCRA9TVsSAnZWagAA030P/3hg3nWGo/4cpfi7WFcy\nVXOlDy2/Sd/rfNqErEGMo4pOO6zIE+PXsWgIruPVLUfEibZPO4N/m7csveb8\nfJwjDm8n9JcBNG49aAPM6d1l7k4Yw1qujI8rvQDka6OUwSenf3I88a59CKrQ\nuxuIQyVclwoifNx5cRw6YA6OMOjiGY70i/2pHWJsrlfKj+qg8rmVdhRutCXj\nY8LZe9cFVjpnH3bLs+mGdlTwD51XPUgtXz2ugndKGi64Nf9DnhWGdvf18RVZ\n6IPoBceE5aBhrBne9RiRwFDzy9FDLuht43/xMI7UiivQIMsiPJNCL0HEauuh\nFJTEp3jZ4TF30zwZL+NNiZlRKgalpAn9ouB0pG0Oj088Fdw9k3PZXbZtM1jR\nCbPixgEbY3UrQzIS7brjo9CeNiABon4H96kk2JPxVTjove9yTwhl+qcyuKJC\nbJ3/ShV4G+wjL6OdPH3LxifuOxYNaXTEsC6uYwf4xg35aQkG3hxJCdNoyShZ\no0GSr94ulYiH2Ol+mx6COn4gJyxjtx8pgHNVA/KVXK807R5FVukdZI7+ehlK\nd4Yo3vVmatl9gXlxeX4GX9fhg9mB/WDqyPVuTtFvx0XWv/oCC3f7+pbBbakr\n0YoBeyYSVB1q2j96zHx3J4HeYl2wK2334fTfqoycgxmuuI63zL5pYKmWUZt9\nYRN8\r\n=DGer\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"527289c74594f940c91c659089f3a268c2152a96","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-20T11:39:31.451Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.5","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.213_1640000484540_0.5830194002845286","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.214-renovate-internal-patch-badd17ab74d15b6193becb190389057aebe300b7":{"name":"@balena/jellyfish-test-harness","version":"8.1.214-renovate-internal-patch-badd17ab74d15b6193becb190389057aebe300b7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.214-renovate-internal-patch-badd17ab74d15b6193becb190389057aebe300b7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5936f79dee67f2f18fbd6cd66fc49cbcf702621c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.214-renovate-internal-patch-badd17ab74d15b6193becb190389057aebe300b7.tgz","fileCount":28,"integrity":"sha512-IaCJembu2D0cwaE+7hFZrJMuY8IOIu4+U0wecokxFptNCo8nUg15bXodhMbOxDYodDAt4gv4yznUKfJIrghOsQ==","signatures":[{"sig":"MEYCIQC7Fe2ZPljy7cy9mwFL95h9D2VyIJCHxHYqaESHDi8sGgIhAJkslfC5eyL/vFAUEO/LXAO6BzBqe2o3D/xVgK52QZYT","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227614,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwMbHCRA9TVsSAnZWagAA1JsQAIeQMv2vmk1d6hCtiq3g\nc92L89gsHPmdxg125khwSHIp8as61Je/uz4tmQbhMAdQpjL/K30J2yDdvRKs\nLITpoc/z0EJywcyX3+nDVFbSbS2Zbvuqcm32pyr7BS76RiZ7ZtfbOqYkmMz+\ntpe2bF39YcN7FVwcPWCD7dTaBS+mv0PdNDjFHslmy3dL+HnqGWIhLOlkIOad\nStPPLVxjtIRwWimcC/iaYezBGND8mwx4hn5EKjDPTVDZzVFFjoUGCePrPNCN\nGUx4+C257i4FBN/NK46jwp/atWLC4eGm1QDF27Y7fKhmN0dsSez0Cl6crKk/\nvbNK2wjEAvTz2DJiuWFSUwfxQLrI1uzE2M17EK/9p6MZQq/PJnDkcgd7Uqz4\ntC4vACiy0Mhey2ImwyTl/hluRPlcUFxZm6LE+w8NdnikBQNyBNGW0wmDcNqm\nWK4QyKTGQ99hdnfEm2KbtlrrN/2rNQcBizAzc8wCY6PpIn4DPqT3QFg3Hg7j\n2FqmY6VA6uXqMVGaO+bzlAqEWF5cuCaimkFeUOQEpO4cQ6dU/DOjQW8yuCyg\nnlM2bEkGMNaYCFVr47icLfSA/DnjaeKjq935J8Orzlqbj5nBvc0cCcyxan2q\nLvEiYSpe1wxHcSWG8PWAOHnuQR9z6JHVmHBfGkmALznVR81pR+zpMR5lS834\nj+2M\r\n=IA2S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"badd17ab74d15b6193becb190389057aebe300b7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-20T18:05:46.150Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.6","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.214-renovate-internal-patch-badd17ab74d15b6193becb190389057aebe300b7_1640023750990_0.6396567875046089","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.214":{"name":"@balena/jellyfish-test-harness","version":"8.1.214","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.214","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f2d919cf23adca38fe1f00324aa3b502715c62b7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.214.tgz","fileCount":28,"integrity":"sha512-+ph4+UmtWLgIYJj+EOKG+kR9qY01R5rB2B+j5TiOzTSVLgfr5lSs1s1W2T2E2O22k8Df27yTmvP3KsVrUevGMw==","signatures":[{"sig":"MEYCIQCx37ENpxeohf9HSmdgOq0AjNJlDnyd7P4Qq7DrjlMtfgIhAKNQe1SijEjdDpyPg6Gi7+6aMWYtBuymMgF1CDsHBiag","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227549,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwMeyCRA9TVsSAnZWagAAzrQP/00NuAIpv6RhAm6IrGOw\nBpOAfx7tHZgymbPOAUy827alIn/RL2UoHf3N5HenfuUcBTbwjCTq5aPdbaJ4\nHDtiYwbl4tR1rrLhY0gRQFGnxv6Vy5nuA5JP/8tiTJXLADrjyzgYgSfDfXhy\nE2l3F52/9IvYBui6VhMLVXdBwkn0rGaxoQFTFtyErO2HqQivmreWQYlqHcFx\nuZMcegTxvu6lJ8WSo2rbP7NKsjsjRBkSo8tBkW1JrJNhccEXTaW837lH2uH0\nCG6NsM0Ln5DS2xzPlM/MoQYreEByXo4YbbdCwnf39TWd7wRfDzTpSxQCt2d7\nWwLa3pp8s+dA7zeqAXyGboYB/OMxKRinkNGUYUdm7Y58LEc9I1NYMYdxpC9D\nTMFmI6FNsJYRQNnedkAGa29qmX+uPoYFjrkKkv1WqOvGJ3UtlyQ3feWCD1uE\nBmYox1pUAGyIV84EwfpG6k7gaZQGEKyNTt5l+WSidOjJw9vFPmm74MsegML+\nkrREBxrH8sjPHpFGk0GGF/aCs26WTtYMaseIoewfUs2WlPLQ+jGnXM0HYYCT\nGX+W69kqG4kT+vupsFq7ECiezJ8TVwxnkJE8A+cIOr5Rxs4oQ+daqSEdUm3X\nHnxle9kRkG/FwPvshgLbif5D0PtJByLkaWBZnRLiC/EXbD2BQwvRcnKJP+jR\nYaBm\r\n=zMV8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d0a32442377061506d6da36c484a3018760480e8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-20T18:10:37.249Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.6","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.214_1640023986796_0.8848047142478099","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.215-renovate-balena-jellyfish-types-2-x-fdfb9a7134e5c1aae9ea607e127af008e9482798":{"name":"@balena/jellyfish-test-harness","version":"8.1.215-renovate-balena-jellyfish-types-2-x-fdfb9a7134e5c1aae9ea607e127af008e9482798","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.215-renovate-balena-jellyfish-types-2-x-fdfb9a7134e5c1aae9ea607e127af008e9482798","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"26ebb02c9aed2cf99157336bbf06aed7aa323113","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.215-renovate-balena-jellyfish-types-2-x-fdfb9a7134e5c1aae9ea607e127af008e9482798.tgz","fileCount":28,"integrity":"sha512-LTRzcEg9Jlsq/ub5qE7ktguAZZyyzI2Eye7iLKe7SYTCgabSvaMNPVxQuJ6O3GkDb7XyVm/NkZQUE308MDZehA==","signatures":[{"sig":"MEYCIQCCiqt7Zz5E8hqnrL8vsZJ4PeaDRp8jfaVmddNGlVVVfQIhAJ2U0tkvarlm6gZIOedplQJC1YEOS+wSmPEX2CJhR3Z7","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwbq7CRA9TVsSAnZWagAA5a8P/jpA/YFZwC3pErBBjesh\naiWUCXjshZy5LrGbApun972Tue33YMIezF4gCtQPCNHaVoKTLzEFbHJscIOS\nmUUx2k+qWQPCjmegBkSIxVUZ3bI/7bG6wy3E3IfoUwVehvlEOz/lcZQRCt2b\nA+LDKNbWSOu0YZ1kS5c9s2vztv2QLV8f4Ed58hevG+3oFByi8D/6uNOH8DyS\nW3zCJQPKATTB92cYobi8oI1IJHwjJOtCovzgRkP4Tj4006V298VfsJOKjydt\nHi/tbJPQBNjQnyACjiCnGKu6SoXfel1+Vpiary8t8N8N5lHbhNw9oyCVLTFr\nubczp1OhiSmb7mhSluJGEwS2kYPweiSVydWOnucOS7+TKExPSq4Y6iWNp0cy\nDvtgtAWvcNfHiIYOq067FxP8WoJ0gCDRg7DRYB2kAFdYhYRL9zixCy3mgmAe\n/6Ab5zm5DQuuxRcj3TmsMTbiNOIdrVJFfQk+Pt/KHg601u7AyQDAFN5kim7K\nVGqYyrUNaRLPTV5ErBfm2AJuK34M2gHZFkmsgslL/qmwyIiIxuaxCDbM9sH3\nrGX7caV+9SPjo1AT/NWktZ06C6rli2aYH8eSXl+GI3yAbpYULN5xM00YsiPj\nVgVU0+QwjXRG3ehvt4vOGSYEwD6c5A2TgdAPHhv0eE2KCusgyMRrgJ1IfWlg\nyZqR\r\n=dVQf\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fdfb9a7134e5c1aae9ea607e127af008e9482798","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-21T11:25:01.800Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.6","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.18","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.215-renovate-balena-jellyfish-types-2-x-fdfb9a7134e5c1aae9ea607e127af008e9482798_1640086203108_0.8673726759523375","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.215-renovate-internal-patch-5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e":{"name":"@balena/jellyfish-test-harness","version":"8.1.215-renovate-internal-patch-5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.215-renovate-internal-patch-5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e04dd15e95f8e64218c3b54bd6705e025ece83ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.215-renovate-internal-patch-5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e.tgz","fileCount":28,"integrity":"sha512-vILAJh5Uf/AHwjUZxbSp+dQ9XcjReOxSGxP9QxgKqmxCkkglC4BRy7UOuxyJGH/gvzWJ5YK63ON1itby5S9UHQ==","signatures":[{"sig":"MEQCIAVeM9GUgjtOCBoD+TXiM0g6Zgs7W9BqZ+FZ9BBWrltiAiBl8lJESXQjn6JMyF5Nyelx5XYT+nzpw62gT8NrTOI33w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227689,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwfUKCRA9TVsSAnZWagAAhoQP+QDocbowwiM+kpGblGm6\njovj1VFY4r+CHAQ5r6nSZpjAgZIr9Nf1GFLTN1w2bAqmh+vpLE4QMyh0Djtb\nMSBS6zKsBv+svC0v2xSqF3/w4S9hGeuY4KDWTovxKApVtiiQT9jdDhBCSulN\n3RP6jF7i1eK4LCrRFVkp11FjLV3StKzJdTyTbOwuN+dt6WX6a2WcY2CkHZyx\ngyK9d1o+C6BPnBuJnZmc5kast8o07pakH9IZz/L7BrTACEOiLk3b6S4vL+7s\nmlG+ldCvQVdjziQm4q6esqHB9EzYIrHRBAwzXPLfxQBl5f5wlQPTQ9hLauYW\nvuKg7lKw7HcrurkduW7mNoDHQHH1umqUMuTGh7pZbg98YSEuz0ZcaIJzwelF\nMbaFzD4f8B7lZ/4YbF4PazAI4s6E9pnh/CH9Tdgn7u3QdBy21A8vLYledhxP\nFUM9I5rXhNgSxv6rFypzMbnCJQmycbYczPxEQIYg4bcKREW7+3wZywjf+3jW\nbgCA4U7XF4DLfcrcslU1rLmJdORhx6UxD+BxRmSR5zwy47lNLImAtSt2Am6h\n48O/fwHfUzjPLHFXdAHEW37TuqviXBMGDN/oBsKLKLh6/9QFz5ccZbEbMznl\n4IL3U6Do506BdjkCsD34SUaBcqdRxFs9/gw5HAnv4+dpnfabXT9YWujMgjFi\nCMpk\r\n=9odJ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-21T15:35:33.572Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.19","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.215-renovate-internal-patch-5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e_1640101130606_0.2521774239765384","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.215":{"name":"@balena/jellyfish-test-harness","version":"8.1.215","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.215","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c988f333938ca545a0be553e54b111fd459e1a56","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.215.tgz","fileCount":28,"integrity":"sha512-nMIcHah7B3QVsH8w2V9RvTa7bwAytVXrT+OgDOG0Gz+cWiS5BuywrtX4vQF1IOp2t5V9cnYpOat2JvED8gpPlg==","signatures":[{"sig":"MEQCIDFXmX771Hpx4SQhth0T9uP5xA35ApEd4MzlvyvxfKs3AiBZPyl/cOgo/aFr9zyHij6PQiohZa4XloN01op5XGPMIQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227624,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwfX+CRA9TVsSAnZWagAAlW4P/0OzCMGfHpj1D4isfgH1\np1TZ0acgbfR26tDKWX1WAyd1IXiX//RsefnIOiLzZZnqwjODGXm/eGbwfesj\n128SV0WvVLaIam9IXhGLqVfz0Io38CMM/SQijY0EnGr2cz4anNSml1eTZAPf\nsDHp35thb79QxznnR7f2CuUz3UjCbC5MREYT4Po2UiKNLV8OYcSo4yMwH4WX\nj0YgMPXMYcNjU+VUpKM6KHjxwhTsHFtesaNEIPfk1K+9s/+sidwasJpm6Xif\n5D+LcqoC9e40F6UtjVjycfBJ34Qsf5dMOSJgYlCSzXF89mYOAAar6MTYZH5R\nBgdJGgBOs4X7Fv73fpzX/3DijYnAfMLdosoav3pR9R4NEzRcSCJlcEKTV37B\n/7BJmd+YgjvYmjR/qhzIB66VWNlgdbDg/QHCcWBP8xzImoCTwZuYJ4pCJYhE\nnWFrvZrTRo8q9Ey+MGDxotHa8HZ7kZ2wE11skC+grdHwPxz4auAF69Giugai\nqOeHMsWtiYjd6CC5a7PKVeUfv5+1pbQmtYLG0Ypq6rGJzQaW+OqqmJSiJgbL\ngf80IioD5DfRHDIZFAJ0pfdPjd+XB4Ojg7LeqzaDHshutXLA3fapBfLdJW7f\nNllmwFL6OetsnTm613di/YtOhN0XonICDlSY6dfaXPT8w6KJOLk0OlpGG4fq\n8/YS\r\n=hqpD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5b8f17558fbe68881b36ecc4d9fb886236b5582d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-21T15:40:56.857Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.19","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.215_1640101373839_0.9341398652423107","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.215-renovate-balena-jellyfish-types-2-x-81ef35dc2e4a513792f86e13e0df6a4830aaefa8":{"name":"@balena/jellyfish-test-harness","version":"8.1.215-renovate-balena-jellyfish-types-2-x-81ef35dc2e4a513792f86e13e0df6a4830aaefa8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.215-renovate-balena-jellyfish-types-2-x-81ef35dc2e4a513792f86e13e0df6a4830aaefa8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1b984d0e9fbf471dd7f43f219cc53ccda8e0abfe","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.215-renovate-balena-jellyfish-types-2-x-81ef35dc2e4a513792f86e13e0df6a4830aaefa8.tgz","fileCount":28,"integrity":"sha512-lmU2ayEhPaglohzlmYIsOrHZEhZYSe34iEwRM4TJdWqip8KYmU19pe8Je70yql+TVCGmhA4VBsUK7E2qYzr9jA==","signatures":[{"sig":"MEQCIHnK7AB3U2uOb7QGvXnkKYXn7Dp8fXu+lLlQLEGv5v9BAiBl9Xqns2tZo69Qej5rX6IBfpR80BY13N8gruL2t4JuKg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227772,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwfbACRA9TVsSAnZWagAAqg8P/0gfCfARyT9wPKjWtWGo\ne4UWoGxPLWac/tbQbUkLyV5U+XiW/jaUWnHghgvoS4jMFqF/+X2o+KYJeHZ0\ng/RPXbvWvkYtyPow0JfNCNL1Ay7AKE1cbt6m7Yvmhm2MXPdL2zY2w+E6UyLK\nfBFwLu3VXY6scclwIGQSwZmP1r+Z/HQZCCZOB5ZCGWzwLqYVjYPvz/vrAP9G\nQjiBthjDMLxcT/NehXUj1/K+sNbeR9QtcK64Ck8JkvLhaUKuZeyuAUMMPzkZ\nGb1O3+E+LqweVl4TeA18fVgBq6BKt9MhqU71McIDrOtQzAuKE2hP3X2HaSEX\nzccZhfOWCwlOhqkLe08/zO8UtahevtLaMr+qEYWOmFsFr8VeZ5yeWvhJ1jtL\nW7cPa26OPH1/T55c8NmuK1VxSizvbWs4IgRuL2jTfViBIkIyIZSfaxXeMToj\nFE1o0xRe4a0+Ulk7jwT5GLd0ugZxfA3bWPjrAJizoLdPjaC9CfdlsRdykJX1\nMXhl4u3uVPNm0yDf5jar5e4J4gxu6gZqewazHKrwOPtUun6QVJ+LToFvY/VQ\n2Nr01BI20HBHh/NAy6XTVlzoK4ZiRfdKisLjq4GNCkYq8U+JGq/4FgBVSS1E\nB16rubekDQlbWxZ33iBMagywJCuiZph7pRJuWujx0VWVUmIl6M0bUTF4U368\nH8oI\r\n=JmG8\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"81ef35dc2e4a513792f86e13e0df6a4830aaefa8","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-21T15:42:41.722Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.19","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.215-renovate-balena-jellyfish-types-2-x-81ef35dc2e4a513792f86e13e0df6a4830aaefa8_1640101568536_0.49076879682007424","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.216-renovate-balena-jellyfish-types-2-x-0bff3b3dd1e89743e685f7930ea77624ae3b879c":{"name":"@balena/jellyfish-test-harness","version":"8.1.216-renovate-balena-jellyfish-types-2-x-0bff3b3dd1e89743e685f7930ea77624ae3b879c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.216-renovate-balena-jellyfish-types-2-x-0bff3b3dd1e89743e685f7930ea77624ae3b879c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fc5195c5d61b17985e87fbddca3c995fbdae9c66","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.216-renovate-balena-jellyfish-types-2-x-0bff3b3dd1e89743e685f7930ea77624ae3b879c.tgz","fileCount":28,"integrity":"sha512-v0O+3Q2DIFBYtlYcrrmF0FRYT1bqQ0PsXreN34Tg1TMHSSFHobj+EQ6IkgNxS5Opo+SyYRWV++ZITbIIkejmGw==","signatures":[{"sig":"MEUCIQDBY1xu3EE3RPuBwWLsa/3KecGJsxa5voHMu1x1Ag4U2QIgQipOhkxtiEdUIk9D1KxRajHtnj85FOos8sZOsXGF+GA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227801,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhwfdYCRA9TVsSAnZWagAAMGEQAJTi3oaihRc/KxEHWilD\nql8wxykt55k4cSvCgV6QLqIm6hD7uyeJLZwEa9zCDRnxfY6O0hQtKm+53tmG\nxCop0TUY/2r/jg1UeEQ7GKgs8LIE1ufpMafabG69tH3C5i9Vj+EM3C71L0vb\nRsad1JxWVKfrMVkvl9hvgSx7IwpRYFjiEr/b9Qu7ELoVE9J0KWuwIzDRA2/I\nPjwCVJTjg/Z6SejdAnnWkljNX8jVg6XAs6UU64HURg9poRISRxfkQnpw2MTX\nqpodm5zaj0hysuRXmV+dnsdxpoyBMc6v+9jxTkcpwXRm8JqeY+VRlrEe22sD\noEVNvX3Uik0UPIkncUQNq8jZseKIiIaGN34iXvey/2mUMl7HeNVXc0YqhQF0\nD8sRpX9ZgOZ0fSfAlvDqa79fkP/1ffvpbA5seWgSfdGJF14Kck8UoTrjqbPf\nghOnXPvEUl2NwVrdpCWm+DNrzXAKQWbaShqNHJHFerYelJFuSfPQ2YWYMwSN\naQbOj1MkOdRhcsQVTXZHEoL8SvYfqAQmmk4JZ2YuWINcpUCW5ug8lHdqVWJa\nOkBOG08KTr4XtVPzj0BNKp5BhA/xuhk33aHglXDO4j30JOdTkr6HVxFs2dhg\n5xpV2fl8o+tjdQnqFNYlXPoDbFE+JrmqmzJkBdGhcv9jyVk8u+etU5wMez03\n4t2i\r\n=wKff\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0bff3b3dd1e89743e685f7930ea77624ae3b879c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-21T15:46:01.757Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.19","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.216-renovate-balena-jellyfish-types-2-x-0bff3b3dd1e89743e685f7930ea77624ae3b879c_1640101720389_0.42997255348573504","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.216-renovate-internal-patch-c4a6e851cba0f0407f0cb135b9679782d67f3baa":{"name":"@balena/jellyfish-test-harness","version":"8.1.216-renovate-internal-patch-c4a6e851cba0f0407f0cb135b9679782d67f3baa","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.216-renovate-internal-patch-c4a6e851cba0f0407f0cb135b9679782d67f3baa","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"97bc498f1635e70128e6e1a8665d25116fe9ee04","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.216-renovate-internal-patch-c4a6e851cba0f0407f0cb135b9679782d67f3baa.tgz","fileCount":28,"integrity":"sha512-Sznu9ah6G1dIFBWnK5man3HV5GpWWtAsgn5MtCp8Tgv5XLvDpd3T+YErFtYkTpVrQoZYdphUhaxsFVgiCIKB3w==","signatures":[{"sig":"MEUCIQD1mg0hqaO+trhU8GWXqBZVHgfNC8jVUGR2EmGAYIgc8AIgEPqCBRrhaImrf2uJljAXX0YhyAZmQaKEyc0mZi5m4w4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227797,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw4UFCRA9TVsSAnZWagAAY7AP/2erpOeRAsyL7WjeoMM1\nlhWm0bJtX8D7Y8z3SZWsxN2poDL4ZgPwbo2larGMo1WnphhORTo9MpuGYhS7\nwQ9RCshylNH7HVf6jiXwNgx1R6tSaQ5ZbeTTsHKqg34DvcyNC2FUYyQv/0MD\nVU1h8so4vXIiahImuwD26WBm0H0/iaVdiw/tf9NB9k03BS0Dvxu9sNtI651C\nYls82DXl6MOpgBcKpxXOExdZ2r9fUAuOjtcZt8P9ZiUkhR8zKUvDb9Nx+aYw\nzxKI6x8OwTZiHxIlXEkhSxzHpEyfLpL6dY+acCSnJdcythS69fq25Qua7Xnv\nKdsB/4REIIHgqQJbrYSdkHXQQytFObFWWNbrqdE3udA4WtnUCeG2KKaz69y3\na8GuGhVsoEGcfm/LCCtSpgnjKPr0vqGy7BfxgxAoF8sqWKii/zOQY/97LE6h\nYaBw5+bxGNU1Ijg7+SAlloonGSZGUDGKnGXP3B/4GJsus1R2S5ZGBOCmK0Lt\nGZ5ZWy61kfx4AIEw2Gupml8i6HjVQBjeit3kLFmXbgiQz3QrPsagOmzmk4F0\nGSlsAw+2gC2qH/BLsvofJ854jdk/vbPm28LkuEWEph4oHXdqeH+P8Rrdy94b\nlnEN3as/G3N2b4mrycgXBDfnxfqed1f6BsyLko5b/aR92CoYnKX4MUkRGQMz\n0jL4\r\n=TuuK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c4a6e851cba0f0407f0cb135b9679782d67f3baa","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T20:02:13.007Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.20","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.216-renovate-internal-patch-c4a6e851cba0f0407f0cb135b9679782d67f3baa_1640203525543_0.2506901521326075","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.216":{"name":"@balena/jellyfish-test-harness","version":"8.1.216","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.216","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ddfe35a722e9f586e1f7d4cb64dd5195280ea796","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.216.tgz","fileCount":28,"integrity":"sha512-tqpPAM72SXvdL3qDxgjSRKt3AtHdIO12YWutJ3ZMW4lMXQMZKfVI8PbeY1/fCA0yLgUFrJlNPBw0WEhvnvMv1Q==","signatures":[{"sig":"MEQCIEZFyWN1Dn5qM5z171blrdXJ6f4/z/jkxfNds3kUOMG6AiBTs2qlBXhOTT0aWZC+hzZyyEn4uVtGZ7kaZHmqKXZVdQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227732,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw4ZLCRA9TVsSAnZWagAAprMP/0f4jX+0HsDOZPBw1NR8\nknpIu4uRLSAFKGylkY9ow/nEmyD5ue7kr/1pWlxyrrBiS2zPhG/6hUO5Ph/a\nT+SA6IoLnCeMU1/tAAmJGqKGJDMKSkA+Iz74DAcBh0CxXwXV6QD1+xknNJUn\nXTAwU0ygVyB7kkAC2PHy7SGRynn1kyvYnS+L5AzeoJ87DX2fZzylH7jQk3iM\nhRdUfX+wXxCSWMKDvy6sFBNN5vgB3axa+glm7ulEO8/LKkG1FjOx8zEMGY7J\n0l3QOqoF1vSMo2g9VaAzG6EVkLxZZbYvLYVXJZVhuTeGJSlZI796rfMA56y6\n5Yx5VphQqBrJqsD8HDo1qjy8VcMgH3NctwcTvm6MKvZPjRV4KFWknhv5sGuL\nOs2SVGUZSr2kDU/nEf5wx8/Z9V6Sh+jcHXxOEgNkT5WBsKzIETmzf0/Ma76l\nvY1nHBGdoECCkKtA06uqYUed0xPZA6rKyYH8/LnMZ+lqWpqzbnSWLLxa9GEO\nLGybZCE0SYWDcDSGfS9uAhgM0rz4MnisnLXxM9agZd9THpYxUwnzcJxDcqYZ\nq++aD42pDJwLCiCvAtQG71g81kYk1eQvWYdGOc4EM41x7KcKEaRnBbzn8gh9\n72K9N4xVtYmF6DwRKsAtgw7crplma4+ER2rzdWAue8RdlHv6DWX2Gn+nF66X\npx2z\r\n=ndqF\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fe32082140b363f918a1cfecd3a5611b7663c58d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T20:07:10.497Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.20","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.216_1640203851365_0.7414460545084993","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.217-renovate-balena-jellyfish-types-2-x-e6216cbd82f73b268c094ccf207b6b9e9da16f91":{"name":"@balena/jellyfish-test-harness","version":"8.1.217-renovate-balena-jellyfish-types-2-x-e6216cbd82f73b268c094ccf207b6b9e9da16f91","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.217-renovate-balena-jellyfish-types-2-x-e6216cbd82f73b268c094ccf207b6b9e9da16f91","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"395612f35a32cd7154a4245b178ef088e73b4ddd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.217-renovate-balena-jellyfish-types-2-x-e6216cbd82f73b268c094ccf207b6b9e9da16f91.tgz","fileCount":28,"integrity":"sha512-60KaiaA0GVVVWXQTecjanHjMN7pm+RQY4J0WONHpbCYkmHusd3pjnKVZOI4FmCn/MpZzKrOtNGfKWUUcLO768g==","signatures":[{"sig":"MEYCIQDezjQeyscvufacmczlJ4JPgCzfg/+rJlBqSDBzyjPj7wIhAOQBWnXhCBWN21Ai3ieHxCS38gcQOsf6sL4JD+VniwVG","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227909,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw4dWCRA9TVsSAnZWagAAKxkP/2jwtIX4Adpa7cu37tdj\ninhHGA+w/eAwGhKWbxArXDiFfKn/MfA/XqKwb1yHQ6LhMP+ZVLsYMkZgGQGf\nyOzYeNR9IrVXTXfGXAB5aeC/c3h1byrKs2J7DyYFbHIFiWXh3BNy2euERIUe\nQSp1IiRjHSpVjR0Piqnemd+jRq94WhSP8KEcgo4mVJ7Omspm+jjvAw1AkfjD\nGWBuSUJb2kf95MZu1/xZ1JOj2haum2M0GywyXldXO7+Nt8bmE9cPbvohsfXe\n/y7bUKnqpk/d7RgqTjnH/OD+HF0C4E3PsdK7oYxk6ytWxj2/Whii9UQAM2xu\nJRZ0Bco4Vpht5CKExeqast9QnvZl4a/7Sz59b4zo0uQm/xoGwbUi5DW5mjmd\n/nB799/kh1vRS2GhbeIRHrkaEBichTwXlHBYWyY7o/2iTd+M5dnrmHnOkZZ9\nXBUkCrOrBnduGhMvdPz2PX8ohkoPN30ZhM5AXuW1QCaAUQWq6Nya9VXb1CQQ\nNKUDQAOygPX92JNl/K6W3Gi2b6yFHtyKqAgMkMEAfdeCQx7LSdeDsUxmOA6T\nt4t5/jEfZyvDUFfL3oZohSLIBjbY9LThGr+Yn/+gBJi0OlLr0WevNOoowStK\n8FCLL1+eaPnyfUtEyGAHfkq5XwDCxAuH3L4Jtvim4plMqeFqEgMbArjJmi1A\nbdeK\r\n=Rk4G\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e6216cbd82f73b268c094ccf207b6b9e9da16f91","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T20:11:00.007Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.20","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.217-renovate-balena-jellyfish-types-2-x-e6216cbd82f73b268c094ccf207b6b9e9da16f91_1640204118388_0.2526312418311669","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.217-renovate-internal-patch-302005497a086d524b95f51c86881bed2c0cdbc9":{"name":"@balena/jellyfish-test-harness","version":"8.1.217-renovate-internal-patch-302005497a086d524b95f51c86881bed2c0cdbc9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.217-renovate-internal-patch-302005497a086d524b95f51c86881bed2c0cdbc9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"686fac6d0794636de3dd8d02a8672ce3efd5fe1a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.217-renovate-internal-patch-302005497a086d524b95f51c86881bed2c0cdbc9.tgz","fileCount":28,"integrity":"sha512-YBwHs9jlej6xKpOQJchtb5NDJqibI4MmbEijePUfHjVxrlzt8oPu7lFv7gdnMu7QgavTVgBR3mrpVclSHOLkdw==","signatures":[{"sig":"MEUCIQCpm46JI+giBpjil+5iblwwIM2Oroz+UJnZETKOtcZozgIgLd3WE21kGVIg5s8U7O9e8i7nbRbaQQ3TM1VLtIgemqA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227905,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw6jICRA9TVsSAnZWagAA5uAP/jyZ7qySZzkYC7PxyWDq\nkG7uQ3ftVpN9cJzvTTaWmlD2I+yQK7KVLm9DuUzC8YCqOzuUt/6uxHGehFqt\ns8KH5etAwVXUhZxLMP8CkpaR82Vzx7VHNXjoj0B7aNGfof9e4cp2slpBJTu+\n+D8G2K3daxMWHrOtwgLyr0qsjWS7IY7+nsxfc4V8rW6xbjOFhuDkxBtaw1JG\nbm7MQGKr8uqKlA/Chl+r66RBrPIbcC+CMtSjvAJiOVhusPlZ2Uer0y9h7f9c\nSXfdvN4M6xYnEXEskd6uAlb7vvg0J+kSasVCQLbCg0sXds20SEyAztJb1lz1\nH8AYjSG5sxVwXSyKe1cWUIPTwSJDPs1Syx2s3kFhj7xRodyi/LUBhci0lovL\ns2JxgAaU+UmKbANaPOH+q1JG5nXE6wnmpsBunuT2bTTblcSn5zaesQ2jXbEz\n5K1yt3DQotIDaoudfWBRs4cFzS9uaGqMWXh00eJWm3zoB9GbT9xFPqQHbs1P\nAd6KLwUhGBRzWfrsBZNM/B13dT+zICmPDI5l604Ns06EwtKlskByKQRXlqdH\n7fVgoB8XUpUs+WjwPGwUyx8tgw6uNjsBE1Ld9lg/PZx/9kPFouOMhVTvpUjn\nTcyYrTLvmEifQMHiVljWLAee4j+SAKS9ui9bs+lPqb0si3LzY200WEashhos\nbZeB\r\n=rWMt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"302005497a086d524b95f51c86881bed2c0cdbc9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T22:34:17.488Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.217-renovate-internal-patch-302005497a086d524b95f51c86881bed2c0cdbc9_1640212680413_0.9443057286076844","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.217":{"name":"@balena/jellyfish-test-harness","version":"8.1.217","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.217","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"308c22b64b0e178225f2216c068bb462a07c90a9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.217.tgz","fileCount":28,"integrity":"sha512-aFPmf9eJEK58QtVKffSHnO2QWfOuCUF9OqCdLb5Oxn1smiJrMMkLCPhKhB8XolMHAYxB7tCb4K/NwUswX05d2g==","signatures":[{"sig":"MEYCIQDQ9OZkRTx6ONajskXwT0HiuWjYJNnrNjtmyHmA0OP0fQIhAIqNsazqZQPvnedDwUqi+17zr4XcWJqQu5lfJULCwZ5q","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227840,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw6mwCRA9TVsSAnZWagAAF9IP/j2lwpqxUVuZk2/Gf0TL\nLxR8PikuwGuXN7ZgkQIX3rSjUdLC2SjxuEtD8YoDHtfJ4cygYOK2wPjPAWqr\nSsxxXTvS481PVek343MGZHIVaOu10iWKJTZaj25q6jJ0/LdnvSzyQc+PDCEP\nlDTe92LZcteKB/Rx7L/mzknYlDDVwz4knxOnudPY893ywWsg68F8+mn+jSpu\nU0/Kdx9jJS8tKZGk+DqRhKspoVjqVcFAB+I1My0h6/6uyOTa3lp0jJ0rzKkl\nadUT46z6x2/P7XJuzEI0LpINA9n6/sWV31stKelX366kLCl1j51BHvN5B2bo\neaVtjgFnguS8EGYXJL3O5zCSpVHVZyt+KK81MPE9fzpZe87nE5f3eAenUJNK\n8AIOyvzPvu+jjlMeP3Zy22pes/OOVUlqOUb/2kgHInnatH5c2EyUS2EqsPlr\nPk6WCpp6DyiRjWnTvXNmfgT4n54UB2IWEyf0633cW3JniBuC4cjKzkDRQS24\n2zza2RoPfk39Bo27n3nj8vvpuGQEBRkZc62nSBEZYyNzgb1uCKU2BcBGgTMn\ns64dugVdJPMTsQ9PFEzx7i9K9G5I3puejDndKUZ1LCJYe0XNZPrhUmf/72zr\ngMCEQ9EuOyylwm5FNEH3XDxBl3vVkEP/94DBmt1qbKYydk8U0Jz5P2rDu885\nsaDC\r\n=3G1l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"397c928588c2e8662d86aedbd55bd05edf4fe53b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T22:39:40.466Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.217_1640212912798_0.7757446566927417","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.218-renovate-balena-jellyfish-sync-6-x-1f88cdc31cfad30f9bdd2c75517e2626cb201e75":{"name":"@balena/jellyfish-test-harness","version":"8.1.218-renovate-balena-jellyfish-sync-6-x-1f88cdc31cfad30f9bdd2c75517e2626cb201e75","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.218-renovate-balena-jellyfish-sync-6-x-1f88cdc31cfad30f9bdd2c75517e2626cb201e75","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ab6ebee51f18595d61a6e103de2842475bd06faa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.218-renovate-balena-jellyfish-sync-6-x-1f88cdc31cfad30f9bdd2c75517e2626cb201e75.tgz","fileCount":28,"integrity":"sha512-8g88kR2TF5Yqbw4s+zalb1UKunxm650r8uoBuRZ3C+FcI0CfRfhUC99KmaQPqFQhvorrJ9D8nUHnEBBpmNwi9g==","signatures":[{"sig":"MEUCIB/bfDHMQXFZ2KnOr5BDWz7A2SXFmuaka4QpdAWVh39xAiEAyFUhZRk4y5Lc5chLfT0hZlSmALRYTKrzSiEhrXygALU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228018,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw6ppCRA9TVsSAnZWagAAERMP/Atfr7PjgES62u2f2SSm\nYc8774o0PopjHzyVnm5P5DrFwssJtYVj0FE5rIK4+Tl0+WRnYvK+F0jyiW0i\n9OWit5EBjnNhnGOuaQnEmtwimPoLs84S2yFxrbT/3xasVO1dMMGx0v7qeITt\n9ZSuAH06EvVkLSpU1QMYr7AYUDzbs5n8D45hoR1YDpL46XLqm6SZfV0UQXAU\nWuEPAfCDqTfItn81o5RAVRtcQf8rjfrUWO6inlbVPjILGq4btvUYA7gGiK7a\nvQ+PFRnyAAwFKxVfdSQnVFRZregVudV2k9cAipV11EoL2FSS3tCm7VjC+n2O\n4MZFPYPcuwLzm8Jzx8cs0eVEjqKWCgnSJoSGTFowFaxAu0oaMJ5Vl336B/fe\n8ixQih3wS1/jtU92QovPxWROcKopQ6NMKROCmXGnBLSB3ALMxTRyYZpYl6wC\n9Vm4OgwGGHm6ezaxPCbgLYKtap5lBXq0NKnYJiAL7PomtyWP3WSeaxoFExSK\nCrCp4qUUHJpTANKk8F/t9XxDdGcapZe/WkaRkvEFLeOgkJ9JNIxyHdcPc2cD\nlxb5JQj+KYURev9F3FmrisDs2V2jT6Wq9/AvMVnWqGYMve6sRBH04CrFHMf7\ncPYBZJV/n4xP9CF6Rq3N00awC/mvf2y2YIzrz8oAsps8wSEnrhp0XBNOgjqX\ngTIs\r\n=Bim7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f88cdc31cfad30f9bdd2c75517e2626cb201e75","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T22:41:35.834Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.218-renovate-balena-jellyfish-sync-6-x-1f88cdc31cfad30f9bdd2c75517e2626cb201e75_1640213097682_0.41441120057838443","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.218-renovate-balena-jellyfish-types-2-x-fb59c79c5738c92c298ba831f8a1fbaacc8d1398":{"name":"@balena/jellyfish-test-harness","version":"8.1.218-renovate-balena-jellyfish-types-2-x-fb59c79c5738c92c298ba831f8a1fbaacc8d1398","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.218-renovate-balena-jellyfish-types-2-x-fb59c79c5738c92c298ba831f8a1fbaacc8d1398","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d9960fa4d9ebf0c954567eb508aae8b766e8288f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.218-renovate-balena-jellyfish-types-2-x-fb59c79c5738c92c298ba831f8a1fbaacc8d1398.tgz","fileCount":28,"integrity":"sha512-qmXaRLaYq2jISVUdfAvb4mt3tjH007yUJ4WpPTlmzuB4AkhNBWKuVDoU4vA+TEmxcc1515ObKY4s7m4nPZcS2Q==","signatures":[{"sig":"MEUCIQDEVrCdz59V8aB2Mi6avx9W21kJaCPW//8YCA8sPXTF6AIgavSon1D18xA8jtdYvdJPTPyFnXAwc4nWJey9zEv84QI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw6qICRA9TVsSAnZWagAAY0gP/1ftmFW0vJ9s9YUcisdb\n7u1/1hBAbPOABByDCkg41AbOvoBUoihhkT7reI4xAnXz4+Igjsx5yla6uv/W\nXGMufqXGeZzOYS6btXsrVvjBS3oK0Fm1E+8D78PWV6GnOdEgtZSDI7TQkgLf\nncLCZsnQ+bF9jEgcFJj6mmrwhb9rs5nDma7jogU55fCVnlKIodWC8UZ9C+6K\nD9EgjBznABrFkzC82IRMyM7ltX6fjC570JCQh9DD8eAY/0fl9rQXY2e8TVpN\nLBv95Lq9M2bBOftXC84FiTkgPPtQ7QA9+TmV2ora1Wy07HVPVnSTZp/tf9g3\nSxEOoHPbzZyfKQoQ7Fdi0taCkSELF0v8EqC/geR7O44wi6GBwZrWgPn/R5u1\nea6XtfJ7nrV2rhqXDPUnlF+987GbyjCIjWi77kue/jXxKME79DJGAaeWa/EX\nEmi5lnXjlJxFccfRRxczFans+RPlmaOR/5gMFBh5VCFHko9MdkbsxwpaPJJN\n4/ZyzNQRxcLhN/zAlqk+Xf34p5Xat3pTwgf66jAQ9wx3RcOqscqAMzNdB93o\nqxxd0pckpzBCuZz14EVbV7W8v4IaUlD7dDHkpeuMPC5lWFqG+EolmcAwv3WK\ny2tcy9JObdxxkU9qQOcZxojwdI4kOLduihnAoKmkKRZk7PCE2OqRThzCgUwr\njgJ2\r\n=9HxX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb59c79c5738c92c298ba831f8a1fbaacc8d1398","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T22:42:29.251Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.1.144","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.218-renovate-balena-jellyfish-types-2-x-fb59c79c5738c92c298ba831f8a1fbaacc8d1398_1640213127909_0.5261295004268864","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.218":{"name":"@balena/jellyfish-test-harness","version":"8.1.218","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.218","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"12028163c14f76c044b0a50988aaf88c69c89cc1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.218.tgz","fileCount":28,"integrity":"sha512-I5gaCiaoOHxvlqqmpQw9wXCmJzHaHnOm1VlelBEBYEULACBtDNpeoWmlhkVOG9tlsvOhiGS3QjOcmsFiDXMUqQ==","signatures":[{"sig":"MEYCIQC9owm9iOkhJTaTIpz+LdqmovorBYEleTC5p5vJ5+gn2gIhALPQLS+i0mDzqm0E85xFzmKXs3iW4M/tI2WV/EJgp0a8","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227942,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw6vwCRA9TVsSAnZWagAAFvwQAIBN7aEoP3gVQygti02H\nFUk9Vn/XgOVpEEXu0tsNp4lJHehDSxT6XwdL6VERuF3pXK93ZH8NhzTeyKT0\nujGUbU1X5m9LLznAhB2ZafIfx5izCf9WtxAwhtsz+Je4vGtkzOvge6cutfRF\nc3dlqOT3NTsPkY0bLw3wpP5nhYPWQNJTtrar41H2NFGJfejod44MzEENQ24r\nnMCCBdzy0wydAx3yQjFoQr5HUunGwXeB+filuAOStzArH6ErBS6BZTMjJIc2\nPkWCuIL1cKfMQ/gGunz0QQ/qkNh2zH6MpFV6v4urcUUx/A7WI4wLEhTPAH8G\nxBC058d+1bUz4QCBnn06rBGp0JOhfGM+Qnf1KBzVm31Je1BEQqZC9FntAPHw\neRsDXqWIVKL7xDSTBHs7wRY8BCo8TMDcggwn7Gk5gIqPlenPt42qJn+04Zjc\nLsrh5Fnob08l0WChnoQHSSHvFweY4p1H5DYJXNEQf9zJXFUCBLamQvqz1Nob\nmT4QV9qJw1CD1WgKNEcXTrRbjUM6EcYdymsv7+y8bssOYczQHiaAuTndDzNk\nivpptKiTDy3At0FPmjhrepL40o+oUfK1kUYBy5k1fSgLhmYD2wdEsqaIqUPh\nnAdP1q0zG44FEJtQMik6Mj1sNIYBC0y5tt65yZVY9ZGHYl2jLqkTajLckRaF\n2oPh\r\n=xQOB\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9ca52f4f2de8032a6ca5a6291e4aa89598ee780","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T22:49:14.646Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.218_1640213488065_0.16216123980756914","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"8.1.219-renovate-balena-jellyfish-types-2-x-b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea":{"name":"@balena/jellyfish-test-harness","version":"8.1.219-renovate-balena-jellyfish-types-2-x-b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@8.1.219-renovate-balena-jellyfish-types-2-x-b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3aa6180dd6d03f98fe133fea29b43c434667a5d9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-8.1.219-renovate-balena-jellyfish-types-2-x-b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea.tgz","fileCount":28,"integrity":"sha512-fhvqKlTsKk4tRdA9Co/vS6QTkN+xuJBpH1CjfYg/HVDOuSX6x5IpkcgXmn3JuDFvwSxpPkUN6BsugjmoTH3RrA==","signatures":[{"sig":"MEUCIQDAR7hDULMj4CCUGQHZfD/vZYGdZMtAs9NUdIOftxR6tAIgS72bZkbKAT/Rgs1Hf5b3YX8n1nHRcCUqPH166Yerk+U=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228119,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw6zUCRA9TVsSAnZWagAA0acP+wSmzWxigeTsRfdQ7yAP\nQP2GBVnxS3ztbNIF7Vl3YVscdvkUbnAUIKA+fJdGgcF3IxYBAj3k/0KgRVpb\nD8/zVB89l+tR8HofAm+QJkVyAEJLIHD+EXLLsfa2DL1hcQb4rX6oZcwVL8mu\nEBaGT20Zx2oS804RN4LugdisK1HQkw/N0DFIM+OUcZWwKWneQGM/oAvZYoxO\nrZKqXTDLkF1mr01+c27+22rJDahA7yV86C/q9MHCjjURYbZeF0FSuL1abjxq\nYbkDNefOu7kJNUIOjfaceCU23a87cQPRf396ilONAhs7BLAaD52OTMd6rRCy\n126l1YSUe9tQJUFMtwtdb8a4qp7YUKpeEIkzO1i1w7uwnk3+akVVDJszEZz1\n1Ey+Hd0gM0m1tesMBWA3tuPipBlmGHdJPHbD87DI6s1jBdVgDoSKC6QVoDTi\n1J5yiRxDabf6+PAqLqP9iWyZxaDlol2daKRH6Qauj82LuSm6RwNVKWzaa5P2\npUKJPJFC8mVOUVqYHB7G1TmGxOW1Wvxy6Hq5W4eMexhx2ylYFVTOZCcjku65\n2xwlsoGdHbA9RSSTOQ8/7zdEQK1Hjd3AOTOS+LXIzfEG9iVgVZ5mvL1sh0ID\n+IyxPdDwS7p996SEvhsmx91c4bjdP9P5hE5O2Y7yOc2+6b15tBt5CTMqEo8+\nXn1U\r\n=MF3y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-22T22:52:32.640Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^8.2.7","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^1.0.395","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_8.1.219-renovate-balena-jellyfish-types-2-x-b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea_1640213715921_0.2885504255489446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.0-update-dependencies-c719c9965e26acb37b5188fd27f77aaa42fcacb7":{"name":"@balena/jellyfish-test-harness","version":"9.0.0-update-dependencies-c719c9965e26acb37b5188fd27f77aaa42fcacb7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.0-update-dependencies-c719c9965e26acb37b5188fd27f77aaa42fcacb7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7b1d485fd54dd5ae8ef0b7347a7c84d51a543326","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.0-update-dependencies-c719c9965e26acb37b5188fd27f77aaa42fcacb7.tgz","fileCount":28,"integrity":"sha512-q9dtYaD5J+HBSkJfIEIhZhDx2ldX9+KlNDOaxVidcyHT+QPYJQ9RP45JTkhRpbs3bJR07ZqhbQu30KkEjpp6yw==","signatures":[{"sig":"MEQCIGj0TzjskKwV4RtiRMWANGXx6VLHpYlUbt7nD/vKu3YGAiB4wKCRXQ+Kifh0bU8SKPaTS8LAVu0tpWc7ki9kv2Gx0w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226317,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw9JvCRA9TVsSAnZWagAAkdMP/1SVIAX+/baVydD8VYgf\n/MwgUFEGZ210Gfy1gM8h2FhWXAwQUfDZCbPGPaSnARL//xZbikSeFQ4KKHnT\nBT6iBfgFmnsCdplQGr1ZaG3FJjPrtd7qgnq96nj0HMtPEm553vPo2MITpQ81\niiOpKKLM+RqkC2UpR13kXpTRqPzZxOzKfhSpbBxmPucmf8HIoS1w74UwhMXm\niWSE52bB3zUt8IyPdarVxfJsyx2ugVlgQlAVNcEug5o7PXv0ZU0rLxXULou6\n087+y0sfP43O+6Z9GdSLNVdjnvrRTHlUKCJWtLiF7DjZtCqlP/P20b42v+5d\nroJVCo7/h3KZghtQc5nIEnCj39TddcTVQCkkgL45EBw/pVuiA0sqVDB0AjjD\natYjIpfTm8ATX324xIhxRsWF3s6cDrFpOan67JCc85GjmONiv1LmiTo/MWS5\njQnvkep1+40LQTy1PqB56xcnZ1wCiDcJXoUg2LKztMkhruup8pqwPNSaiP80\nnGAVtRGBQOHgKYv5ZpddVD+7x9MRqzwlnDDBBGkvapbCQS8SbsC4KIqhdcDF\nP2Hl9dYJ5HMS7rY3CmKUXI31Bqy4YXhnbH3Tmss7WnzMafAjMria18zEEZ95\nkv40YBX4OYJ7TSamKkoPdRsQj+hj2PCIir043Trle3c2GrlY+MHXQxy85ab2\ne25+\r\n=mOJu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c719c9965e26acb37b5188fd27f77aaa42fcacb7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T01:31:05.147Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.0-update-dependencies-c719c9965e26acb37b5188fd27f77aaa42fcacb7_1640223343781_0.8774369393585548","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.0-update-dependencies-87d9e9596a12d6326e2b715c84d546d35cb00a76":{"name":"@balena/jellyfish-test-harness","version":"9.0.0-update-dependencies-87d9e9596a12d6326e2b715c84d546d35cb00a76","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.0-update-dependencies-87d9e9596a12d6326e2b715c84d546d35cb00a76","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"98fdc6182b1ad56c46957f2c641ba43a5f3b142b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.0-update-dependencies-87d9e9596a12d6326e2b715c84d546d35cb00a76.tgz","fileCount":28,"integrity":"sha512-Ntj+ED16FPO8+OhqzsxBwoWbZQz2scnWeQujiusY+FSM9Q8Ih6foOWqnsAIyXs9JXbjpmAy7x6dt0j0Zf0WjlQ==","signatures":[{"sig":"MEQCIHrsn54g1T/2aMKvFHJsmO/ryg/67+/mq+/zqBzlQhrlAiBo7qcA+xnwTSvsENbJYi0i8P0g0+wY50F6vDLJOX8FOw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226376,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw9WZCRA9TVsSAnZWagAAPKoP/1d3h1jaI2lCGxAE/Coz\nvWRMDLWqgR5R9c1i6eD+PQU/3AMkIMCPdwoijwXgV/stzV7fPvgeEIo8qRzL\nRegZ1Gbt3f1/OvVn8IdVDFGCAJGDdund0yRbC3Atn3oQzewqxL+uL4BiXflW\n/3DalMr0xaeZVU5QtiA3JyU6aRZ9OfdC5FjTbNsXg9kg0bikSwvqwootJ67z\nXItO+hBcsHwWLEZcSpBBDE3tvczakN0BAfj52n4YiS+a3RFacOpEklQWAQAc\nnYkuYkjBwBrZv22M3J4zQSB7yY1luuaGqmKkmfyMzT+YnnH0m8Hel9MLs5Lg\nOMEN/X9LktWLCh1kfWUeVjcaciq1+SltHYaZGUirIc296cbZoS+AH8u55fNI\nZ448ivsNYFfJaWz/JkDNPOZGRyYXkIYLieZyJ6fiu7tKmU7P3Mw9v932yFI2\n3LETu3FKuKO3eZyXVjW9m1nRWaRJBPKIlz+97g7Gk587iQCMj1BcQRrZaBz4\nzHEupr/tlGBvkjq2Tk6ECoAAk5CrSrPmGA8cpbvIz2zTqCfNRH/Y2sFa31Rq\n9lPWHMu1DNGpa5ADDiBv7ucWpbsAeEvloO4scloujHG7PDwxzJsakWhTD9va\nULUEQn323p8gbsUDnn8Vu+O+WphEifKt5Nxt7GHLmE3zVnp9HzEcfneKjalV\nZn06\r\n=YGku\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"87d9e9596a12d6326e2b715c84d546d35cb00a76","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T01:45:39.551Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.0-update-dependencies-87d9e9596a12d6326e2b715c84d546d35cb00a76_1640224153207_0.8910413587308657","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.0-update-dependencies-4b5cc883727fac8845f86337370348d1fc99bc3a":{"name":"@balena/jellyfish-test-harness","version":"9.0.0-update-dependencies-4b5cc883727fac8845f86337370348d1fc99bc3a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.0-update-dependencies-4b5cc883727fac8845f86337370348d1fc99bc3a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4f3888efa3d23e0c1bdcfa2585ea3e02c66e3c1c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.0-update-dependencies-4b5cc883727fac8845f86337370348d1fc99bc3a.tgz","fileCount":28,"integrity":"sha512-jFL4emL0hLoptvQd2N6bZTsFOmOxslaaNtdy88eEkS75kXW8P9KMXdS43tdq43fKfVOxRxZ+I0VkTdV2mxhuGw==","signatures":[{"sig":"MEUCIQCMZP/UyoCvj84ttgE6WdY2Y5UGrB231ex2/M7U+lqmugIgeVIZZApm1sdBRY9tqiQKYJ/l9rMgdD4AUp0XWpMVWrM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226172,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw+anCRA9TVsSAnZWagAANzgP/3412t0E+5S0yNRRimUh\nIy8L9J+KY9p3jtNNapxn6oWze2ynrcP6M0VRIVI5s3psl32dduAd2wrYp7CV\n7d3N1lNGiXhmSyUX4J4U8aGt6gBSslmWDQ78EegT4zdoRR4W5U/zsYrWnEZq\nAz4i0hAMv26AJeVAuZg9LgthMR8uUVexfSpIR7OM83xzU9sggJYKen70plpM\nEwtg4Sa4umVhxStUnl7G/a/msM6R9wbTlx9ttHU1xpBjPx1aC1yvycOakWzf\nsW+pg3wubqHYRTuPTZqsCI9Jb18EGFS13AmWOlaDB2ut8/mvg5h8cG+6t5OY\neTqxt7AvjaoYxmydqtKnf/C0w5CGpELOPXRCO1V67g40LY/T+KeOCUYRBXsZ\nZZWyWdMvKETTQ3expv4/Xz7uF52/dcaOyOuYmbnI0eyrVXdQTrlEgBDcX0Ve\n5LX5pzt7SjOOxTO9ZGGPAKwDgAGYsJ4e/4bvyyvXV7cvj4shVtKPyFzfcJSO\nhlaSvXQi+bPgxbDK0OxbvLLErvy/EDnRby9cHHqUk/L+jS57IILSuA+96ka/\nqmB96+v0TMNQvROp0x9irPKs1ox0sEcMWp21Dn57t06VT+e5Bhl8X7LOAqjG\ny/FZH/2SjLfW4OomVZo5U09Y0qfopyn4AHQUvP4mIMtjXnAxElV8xZwF2FQw\nsHxM\r\n=UyaW\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4b5cc883727fac8845f86337370348d1fc99bc3a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T02:59:09.180Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.0-update-dependencies-4b5cc883727fac8845f86337370348d1fc99bc3a_1640228519369_0.16495781944307808","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.0-update-dependencies-20a300e5c2215465dec06cd008ec87355c88ab3f":{"name":"@balena/jellyfish-test-harness","version":"9.0.0-update-dependencies-20a300e5c2215465dec06cd008ec87355c88ab3f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.0-update-dependencies-20a300e5c2215465dec06cd008ec87355c88ab3f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"bc05659b92d17ff0163648dbda64547d54c0fc39","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.0-update-dependencies-20a300e5c2215465dec06cd008ec87355c88ab3f.tgz","fileCount":28,"integrity":"sha512-C3uUOkiUMNQKAaCYQYWgzXekVQqfamlJ76GW1TYhe1bFLD9EstZXUfwbuEks5GERiknOodofUIFicWZJ8gkCag==","signatures":[{"sig":"MEUCIQDJfVVqlCgv8Iis/B8zlr7STE+Ry2AKvOt9CzVSoCPzSAIgIkIw2+bvCHY7AUAtG7OO0v4OtZqrHyv3VLzFkOszN/k=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226398,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhw/x6CRA9TVsSAnZWagAAIs8QAJQTL2pXfGkWjPpvA4bw\nJnGyxSl1hGtP36Igiz6wGAQWKsxg8MrIO74wMNYHnjC/PM5vXkVFuBoLIOcJ\nv7rGIyFb/RBIVWRxVDKeWaQL5ZFMkW/Lbjsh1Whk00kA5fHD/GrTGvIiIN46\nIIPBy9Nd21iolqcHYBI7RpKcatfVL4CNGR+rMo7Szbz4gvRse2YN309oQnBL\nzzWrgE7gJbm/ln/w0H027ne5EdRcU2rbU/M2LhjwPgzZlH0UzSeW3RoiqZwY\n9FBsNOu6adEub9BzZsNqQNhf3xLQB/mfvfGLF8KqHmJpYl/TpsBmdYUaQFGE\nRm1EZiMssZX4vmbZ2hce+D+O3yZ2wwRmLenSIp+U++a9Lqown69H2TPxcVzI\nPamXFH9zMvlImUgpugtrMksRp2rf5gxATyusFWU/q+bxXVfhdQJCiCX63Vnn\nvJ3Xvnk8h1EZYCvh8JT/CjXn8fTQDIhKDa1d44lkHT0794vqGN+4uwuXFs6i\n/EcMNobgNs6uN+WwTP7t/gDv/Ss0jgg9hJ/2TCC05BU7bkRorQDDq9Erq3BI\nPRdva7fYp2SD/qDE6v5vxzNb8dJ7pREHN1vUjes3wW3rcyjFH55bCMCce9qS\nm6wEC5xJtO03isGQ+kmwXzMYT7SP1EJrmtt2akQp2ROrUNrDyqZCmHpp4wZO\nQkLS\r\n=X2HT\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"20a300e5c2215465dec06cd008ec87355c88ab3f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T04:32:15.010Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.0-update-dependencies-20a300e5c2215465dec06cd008ec87355c88ab3f_1640234106522_0.6886687996687524","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.0":{"name":"@balena/jellyfish-test-harness","version":"9.0.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c9c9670e360f4dd176a164cf82fcc18f90b31f02","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.0.tgz","fileCount":28,"integrity":"sha512-dYaiCpDrbz7QOuBe1leYsWmQX2WRoTLM3iF67gRd5faAZkMRloBM1BtZLyrDliwHP2yRCFKiJG6NEUnoaU+JcQ==","signatures":[{"sig":"MEUCIQCj8OVVY5PaML7QcscNKitx38ndqJFGU0FOvXRzJpU4/AIgTcMW50rwoRVJHmLv/HASrRfpqRBoRbWDjGAlGurgnhc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226337,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxIVkCRA9TVsSAnZWagAALkQP/2s1U0+3fMDqChVhImMm\nBXQZaw52W7rPRYnNnZCm1CjSu/BuQTNMZ/jXysH3/YqCNvWcdNuuDED1tEO6\nOR5gWOv8WAqaxjCXCCihqs53Hwu0JYxmTDt0dzCW7fCjp4Cp8Mka63ruH5f7\nnNLSBLGlVRzuj9KP3YNKtIgKnj+2/CDacBjSY5DeJU/JMiBH1+Tpxt5h9Ihb\nMTQfj3W4fBCRTC7s4rcwzwzFcDcXy6nXgqE3b1BOP2IKNvgqdRBY7Hs4EB1k\nL3JdknxyMQqdaloem01dFKVQRnNR5yFaLrr/RIOABUlslwZhQ9vR7fIUsBCN\nWbzag5Za1+bFdxpTlXoZfIP3QI9+x53iffK1b/rF20o+nY41A7X24kiFinWk\nyhXlJeCIPINoAvcCoLMJxc+rKxs+96RSB3P1e0ZBsJGhkOwgq4j80VphadZC\nul+EuZ/iD25k66OiySvHAHQQctNGbSDo38JRibwalRks0rmtN+SfkBQ7sOo8\n2nR9PcSmoyFxKWboHaJ5/YpMo2AB4/c9TBBDi+7d4M8UhbPr6qlh7WTWLgbI\n5PieoMRgdxgqbaU+V28F4Rphtei7u+WAIFe4QnmUk3t7BZy5Ohe1rI5LoN1l\nuXo7RAr81DMzijMj65mNidspeDbQdoKBclqc5vXeTs7uUIdv+36BFJg3+WIp\nnpy+\r\n=peDg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b24ef6801be4bfc12adc8a2bd6fa956991e26135","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T14:17:22.139Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.0_1640269156135_0.5315796810108269","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.1-renovate-balena-jellyfish-types-2-x-dae7874acdf8d65f730c3d90f9cf8cc54b2fd004":{"name":"@balena/jellyfish-test-harness","version":"9.0.1-renovate-balena-jellyfish-types-2-x-dae7874acdf8d65f730c3d90f9cf8cc54b2fd004","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.1-renovate-balena-jellyfish-types-2-x-dae7874acdf8d65f730c3d90f9cf8cc54b2fd004","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"25a87f3f91482934941cbdd61b79c7fb1b443e5d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.1-renovate-balena-jellyfish-types-2-x-dae7874acdf8d65f730c3d90f9cf8cc54b2fd004.tgz","fileCount":28,"integrity":"sha512-9poLxJNkaSyxqflVv5vi+OdXcbL0xfIWL1LfQ/vetL5FswYjAwSqpQPpM2bpSyBiYO6cY1O5eBoKGNna1PPZzg==","signatures":[{"sig":"MEUCIQDmlGeHO6HkVHgp9ERcLicMy9xz5kWc35xkMOxtw9NaCAIgZFhuvv7nTgin9CP9o1MVjb1nhOjbFB4KnSmPHAxmSCM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226512,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxIY7CRA9TVsSAnZWagAAOHcP/RezK6y8uz5zI1j8R7Te\nJb7xvZDm7S3kuKvM15PDEk85NqoNMqJzci/m8+WytzRjFooWafAQcC/u90NP\nyzdMwi/L5fLJ5Fj/mwVpWf7rM3N8o9FIj1Tk1gcVX72Rxi4wi74n64geEqmv\nii5qxUGwR/wPIDzYkaXC4ttFw59WdmHcoOIz4O5EFDywT95YRqua7GuKi5We\ncsW3JVXcY6eOjQg1WBRFTSAFggpGZIC6rFjhDMyaFxcuR4WJpMuqVw1rplYn\noREOSdvLspvN01qdmnVVodGgsWozPme7g3rF6a1Q/uo6pC8wONW//9jlxbaq\nAleaMigRHjkgevNxtSO7TKdy+w+LEodtCFqISteqTU4MH2ZkxtShE9pv+Ky3\nf/9t3LnllN5B1Tx2a3u2w4kMbXkFVJNsReKrjfC3A6nSQnVL2Ge14f0jrEAp\nyu3xEt76/Z0o1MeLhJXnIcXWV+7koEhKYT95Lk7qc8+NOsIfnX1tAvkA3x0T\nty4L6YRbonJT4rRbBdQSd/az/h4Cjo6nPuEBovKTjM3zMIBIlwAUjoz2i3/N\nUDdLL7spcdHyfhYrOHc5Tuu/Vb+b7fYZUkRXhFGA0cRfDEHEfPErv045rP6M\nKY+cDc15qXGbwIWuq8/agaI2DGoa2w/VHtZR6rg65cojGMciwiY06woxthGz\n/7On\r\n=ZvXQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dae7874acdf8d65f730c3d90f9cf8cc54b2fd004","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T14:20:00.016Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.1-renovate-balena-jellyfish-types-2-x-dae7874acdf8d65f730c3d90f9cf8cc54b2fd004_1640269371323_0.0119327395644524","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.1-fix-processaction-f291923ddbdb36e96080aea1352a3a1a71c16c47":{"name":"@balena/jellyfish-test-harness","version":"9.0.1-fix-processaction-f291923ddbdb36e96080aea1352a3a1a71c16c47","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.1-fix-processaction-f291923ddbdb36e96080aea1352a3a1a71c16c47","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f00b1f548696082723e6e065ef930465a0fd636","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.1-fix-processaction-f291923ddbdb36e96080aea1352a3a1a71c16c47.tgz","fileCount":28,"integrity":"sha512-+IJL/bWyYzFmOhb/xh2ifK/BYwBQ1w25T1cNItMpA0op5DP6HlQXHDvNG6ewLTXJ8WBr9te8JqSEqiBq7s9Y8Q==","signatures":[{"sig":"MEUCIEB1jZL4A8pt9apvmC+H3cWG4ddwSdXs4m/T60NWkWkmAiEA21ngjXYNNNJIQCcJHVmKA9gCzPBmVT5YX7G6gAMzgAo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226487,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxJgiCRA9TVsSAnZWagAAlj0QAJkWVUMh6v/wNI2/uTZc\nVn+oHSEvpedZT/1VlOoTjQUujntTXWJFYnVkEh6yYIdVtzBk0YX8VVaUWE1L\n3slBU6AW3kyKjUp2+ui1wH2refLDh6qc9u3LGJn2oZjEMZKNIYvoPr9LHwH7\n0MHxCUcTHqdVZCOIX1+03mKSf7TBJJa00GxicwayW4X1LEjDUuboKhf3OZyV\nYSLJQPsB9AKEx4fj3nJcjS04gcb9jHgaxBvNCSF/jkSwzerP65CxfxQz4ATP\nAoH3jaFo+iIG7oLy+w1GG7qYZslNH5m50u42Vj31YQLUEue+BbmLdhDJ/f+x\nj8CFzQzB+IvjBgdN6YP5QD8PHRmUvbLxFMv12C8Ymy/KqJxS61HBYDJIfJIl\ne3CUZg7uy5a7ZPiQGrVa3wJ2si1lemODmn8GHfzARuj5bCUrzEDfldLvtIBB\n6eX8dImXmxK+cfb0BxfthLEwz9gvIQM7e8Fs0HZuEgfKMXuJFHFnv+rViP/6\nQqjD+cT22VbNK1hTR0Pt1V/NN9yuzBZKjoIUDGoRdpU8ZrTUkSOhZ3dxQf42\n7+rPQjng2QesxZePE+vgy/k3fpqpji8XlCWa8KB8mysgjGzpoecJg5zZKyRB\noOuc+KCZFdeXBlENOmb9jGN7lM+L5ZjvmPPviNpaQA/Twr3Ht8x0TLSmYavO\nz9jr\r\n=ANbS\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f291923ddbdb36e96080aea1352a3a1a71c16c47","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T15:36:20.008Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.1-fix-processaction-f291923ddbdb36e96080aea1352a3a1a71c16c47_1640273954043_0.887087673247644","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.1":{"name":"@balena/jellyfish-test-harness","version":"9.0.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81e4b9c80c9b79cc4ebaea28588f0168f7dc1e98","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.1.tgz","fileCount":28,"integrity":"sha512-GHGK+I3INSNPbJh6IPQT4pNVMCBbWTou+1q+eOMwbsJ8iUgzKx8slh657kfCx0SV1Y9MCjyIRIxrdvMMxkZVbg==","signatures":[{"sig":"MEYCIQCUEoFOvVmngp6NONdEFxIo39PCgldvyndhxbvSjTgjqAIhAIucePBF8+9qtWcrwt5TarfHNaVAGV2C2HfLYAgEYK0i","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226428,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxJkPCRA9TVsSAnZWagAADtcP/A0cX211h/x0sEeV88P2\nSn7n0+uLZ23TakUePKqVJUmHL/TFcX8MmFb06sCH90iO4o1Z11aMrXhM/6YC\n2YwomquPgRrk+BgH3HrFQu50QDlP/L0okF5Ws1w7Lvv4KBDVuCa0U7G8yvUg\nQ58461/+iGcpOKzEO9M3K7/BQFRiAHcBuO7ec8ZPuyROqwqGDly7usO+eSmz\nNIIcDnNKC6C/S8W1LDd7dswlIg0mb8RgtC9XzyAmO6lELFBKxXlBNgEX9Rhm\nCMZsjxbgmt76h28Y+mjLp46FjS0Z/VP8ytx6K+0LLEXqMW66eylX2lGiEEd9\n0qeFOf23Ha9W91h+4lvofpw0bBddbCJZyn0TOARFyD48Q8yVGNwt5RbYwIzw\nuMpOZR7kW8udTY6KaIwXbOXs23xQnV45kY0ljBk7KLlz8svtWKFkLuT8R8wX\nB77ATevq+7i0oNrV0qxUgAw8eFIlZJ+zbEBpGQLjaukhDwewTqsliPeWGH/g\ncw04Q1b5Hvut5FDciaYlhkYeXHAmWUuljjO2h6+/Y0Jb1FLcaKbnRmDkruoZ\nE1Te4Io6XQUJOM0w7Bqxo6h0iKsYNrfaGHamxy8Iw9FY6Kagfg6/NWbRQY/X\njQo3Jw5M0GvCDrgXbDUbr1DftxPfGGSdUXRoP/lHwHa74Lftmg506HThsfHP\n+VaJ\r\n=Am6L\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"c2249ebf39909c43f2136c83c6eb7ed6b0108dec","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T15:41:20.332Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.1_1640274191495_0.4442489785257884","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.2-renovate-balena-jellyfish-types-2-x-54e8ca93e06008ab02378faca31b55d67e3ae68e":{"name":"@balena/jellyfish-test-harness","version":"9.0.2-renovate-balena-jellyfish-types-2-x-54e8ca93e06008ab02378faca31b55d67e3ae68e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.2-renovate-balena-jellyfish-types-2-x-54e8ca93e06008ab02378faca31b55d67e3ae68e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c35e4bf9a9fe891b981aa6880c9cddb32bcaf2a0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.2-renovate-balena-jellyfish-types-2-x-54e8ca93e06008ab02378faca31b55d67e3ae68e.tgz","fileCount":28,"integrity":"sha512-b4HQ8fkid8G9CX4mn8GKvex3oSPqBKSmax1icG9aDdV3KJCnKMjt8U+EhS8g8dZRX/XC3I6c6lctK1cPhtmn8w==","signatures":[{"sig":"MEYCIQCw02jCefIJPJ2daxlXz6W0eKWdU24Z2rvt4qKeP1n5nAIhAOhMm90YHQPL+LdrK3G9KjOhfH4rLel8yn2AY4XSGUth","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226603,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxJpoCRA9TVsSAnZWagAAk3EQAKCCRzf3D25eb/9HCBZf\nzNw9fwtOHAfN7jRbqrDzoLjbf7dJDz4mBh38FVzXnO40gELX/PrrsJAx6HtK\nytJnzSbdqcbNlRuEClXrwzebKy3fC0H5MmmZM7xR1ln3Oo/1hjow0AG3z/yY\nJ625TkOx3KS4JTvTt6ECHq6FkTilBPddrlFjogCmdT34ap6MJ5BC5Kgp/vg4\nbHv1gODdN6zAgSwVNNdqruH8LPaM/2UbQDG91hrzIREi/d1PznE2TVf9Jy/E\nfBncvV/vma+kaBAhdUte5RuQZAHRodYA6S4n/JbUInP0SlHSwsOYgjjUzWdG\nQNl+esI9MokHtdaHLyJs3x4gOV2s3YuE9U/dIJopKcW9O0unOg9MXGjLJXHI\njV7/2n1pjjYN+9UuGoPckbkcWv0NSYGYb2ZA972D+2pFP4XpfgemAeHpsAdo\n+mTKmgPKEkmdS/4GfJyf9fl4fFSC+WosAwsi1lV8FKfvwf3vG7hiIKedFIDV\nG8L9Uv2UKYrerWLEpO/QrDdIIYfv66fh2VZgHSPLmfETUseDtj0NWT2XGTOQ\nKxBgug7hbr1EsdL6m/4daGjncxQ5EzXuiXwcj103+xb2JVD8lq/zPGki+dvH\ni2LkVMve6PakVkyZePVWQ6czXMEkogTl2epy8E0rOhjAvbkj/53oVxyx+AnC\n3NjN\r\n=Tvh7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"54e8ca93e06008ab02378faca31b55d67e3ae68e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T15:46:00.776Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.1.0","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.2-renovate-balena-jellyfish-types-2-x-54e8ca93e06008ab02378faca31b55d67e3ae68e_1640274536232_0.13128839701594308","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.2-renovate-balena-jellyfish-queue-2-x-1f962fc7eb9743b2f5f81059ffbd013f68fb7e78":{"name":"@balena/jellyfish-test-harness","version":"9.0.2-renovate-balena-jellyfish-queue-2-x-1f962fc7eb9743b2f5f81059ffbd013f68fb7e78","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.2-renovate-balena-jellyfish-queue-2-x-1f962fc7eb9743b2f5f81059ffbd013f68fb7e78","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"52573d965ec78d0513171efb48c969b533b29750","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.2-renovate-balena-jellyfish-queue-2-x-1f962fc7eb9743b2f5f81059ffbd013f68fb7e78.tgz","fileCount":28,"integrity":"sha512-DeBdzNoWwIhFsDW/5Rlfsdc14hlYwJFK4L+vXKC+x5z471FdrkjFGoHE9dX/m+PZVp2alJz6u6CKhDuBn22Yjw==","signatures":[{"sig":"MEYCIQD19tUxABMd9nPyN48RYxWESjn3d9XyxBplXPxc+0u1nQIhAPDnMUd/bPvLIYiLFgtE4wwu0Dn9BFNOxpvjR7+x55ab","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226608,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLIECRA9TVsSAnZWagAAzNcP/jwf+ymzFadz0Ou07S/E\nWsfXaRU04Vykv2a/Q09ABMMjgGkMlf/kykkD18sATNx9YC5/Hl6c0KtoXd8z\nPnqkuSaSlWweh6VdcVUia8Mb+qhQzEsCRmQCypgH6yin6I5uZ+9P3VMCKY5Q\nL13AIrTKgRqUYD/hn0YIT8qGomPF46kjfDGxM5tY8gqczJNJHkr/yAIbm9Zm\nl42kTdzc895+yuellmXAvR/xsuGNcU3v3kgOBdMS56dHopTwjkZATbUfRunB\nw4Tz5tGkAM+omAtPK7iyzklRZd1PWv84m2l5S4egqPrOD+18Z3AOy7T9pNEl\nMMjS78+qBevdtxFnvtm+od6lbEX8G3x4Mw2PcQynLTw+8B2sh+gohJLQJbA8\noH3mCxAc9wXCOZx7OyLy2vds09K4wcv8ky91f8lpYmAxIVYEsh6zyy9xrW2s\nlwpDpUFkACZVV3F7WMfs81dhD1hBtaj1bVw2q1Nh+jjKdljWgq8htMUsHO74\nkAzHNlh3GmSBjKbJCmxu0E86phokxQRd8b/tjwTVv4BHbLI0qSmDaNwK7xC1\nQljxiTULUmZLblvZX2OqXCvs+b04qGbKaXHEa79JfspbdZKbozsnjVi8n58W\neujGcUIy57vD8QiDnUdostt1FqcNGSXDQ+WlLqnIuqYZup6RN97qmOM1Wc1v\n2//v\r\n=w0Mj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1f962fc7eb9743b2f5f81059ffbd013f68fb7e78","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:26:38.558Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.2-renovate-balena-jellyfish-queue-2-x-1f962fc7eb9743b2f5f81059ffbd013f68fb7e78_1640280579912_0.47511190788415947","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.2":{"name":"@balena/jellyfish-test-harness","version":"9.0.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2676cafe30be142c35ee8a0e0eb831ee64973a35","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.2.tgz","fileCount":28,"integrity":"sha512-F9AgEWfQ92E31prRVLhUgR4d5y0hBwQ6uO/nX9T836/vhI3LjktGOFTZvp0j24zoR4zcisKhtEP5yNeQp4Fnkg==","signatures":[{"sig":"MEUCIQCzaVzL0Zr/2b5FcTAeAKge/EjbOTPjliAulx453DLPmAIgTlGDn4h+En4PQ5rM1mscYwwt6ce0a5GMQ/9EcL8C7tM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226531,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLLsCRA9TVsSAnZWagAABpkP/RafYgBNy5m8riRor2oN\ntR8FTgdpKGLSAh/Gik6DD+PTnU4n+WhSvv+3OLsoCcLrlH7p0Ch2Vte13KXg\nnAeo8AQPEOgO6yopP5MP5McY5E1+OWUTNqBO/nkaI+7w9+SCTZ53fYRFWhZn\nKLmvkdt2e0/OrFcPzhHGOhrVvCKuzFXK7rNqy43+8jvaq9oSo2/4cdRzKYO9\nTDOmkJ+hTE0eV4qhPJrGXJloawDBjgwrmMFyi8EMpk18Owf29fFcbgc7zM70\nkbv7UrPRHhR4Ll+iPMjkFZWJJcVl7uRD4al7H78sOJiyoCvxmWR9mUuOSfjd\ngSNEtp6ZTPiWbUwW4QRQRZMYKvA36fAGeS3mRyqSj6uRREHwc02blHJlP0AX\naPgDBJet7kszTVHogNVnF5UZEV4T8/3PDhFNOgtBFp0qU3BZ7dpHhCaYJhpG\n9GV8pfQcTh9sL1ybgTsGjWvKiiowfFsNwgUFGS+acayM7JTXAOKnhRzE/Ish\n+hE93AuOXatMNxuxpP+Grz2peKkGfGyTryvFjs14g1BcstNOFGrRi0fmwpLU\n6x36nAmxWRTQ2h1QEdJdRuxRZX5BiubfOvsqTuqhcbAAaK+xKn/curk/AvL7\nbP+LOZ15ZZow88RXdQL4xwkKbOToiU99QBxWhyC78aHWGL19wmp/YuVAsdtj\nbxxI\r\n=qWXk\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"61a28d03954867c87499d457cef1ed5d0dc187c9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:31:28.917Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.2_1640280812054_0.5481837871249684","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.2-renovate-internal-patch-17633c16c0ee6606ad12c89356428b6e1dc09842":{"name":"@balena/jellyfish-test-harness","version":"9.0.2-renovate-internal-patch-17633c16c0ee6606ad12c89356428b6e1dc09842","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.2-renovate-internal-patch-17633c16c0ee6606ad12c89356428b6e1dc09842","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"aeb353999b349777bc5122318aec4cac3d843b97","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.2-renovate-internal-patch-17633c16c0ee6606ad12c89356428b6e1dc09842.tgz","fileCount":28,"integrity":"sha512-2/Mmn6uXVSkUhkmJ7OdY/jIBXx0RMz72K00LIYzsR5t5lpAGWGXOxRf32pU4CFxq19aJt2h8ARUwPINuPmUEvQ==","signatures":[{"sig":"MEQCIDqlgUM/hiWs6JsP9Rq1wm0UDO/TmIjfHvyWm6SSXjQcAiBpEJ0JyLe2bJ6Bn6PY7/2tJoCjQif3KK4dM2QDr91/tw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226672,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLNwCRA9TVsSAnZWagAAx/QP+gPpOkZSqJL3YCuwcue9\nP2EwcKxxQlFsXIPDlC2L8Ar0PeBoMzSMxXPIsWPOflHTXfpwJhti7GscTgZy\n8yxmSWMJtgrjjLUKSFS8XbKlvREfWzUqeGZkhKb6kytBBvlZbXsvREHzX6yM\nymFtlQ6dkssa/whlpsui/XYcQnsfZJsmBdWOa/jWfqbjAnO2yiySmfiU2ivb\nSj8XzgbpbUod0E1A2Gdy1EKpQ2CrAbpc7o+VZGV0cXbZnU/3d5BNd5tgyy5E\nQfkzv4Gleb5AklnDt7i2VAAn50pBGooPxTifBDcu4XodalOpmc2RZY3C3kgd\n2qss6EwNrUlBJDM6PdtVYRRPFoE8RyuxwZXqkZraUOF6a+4oRehexp/4pSi5\n9n/YkO6BQIgkppf8a2j8oUhXqPgaudtAG6TcL8fku7XMxWvviHmAUUjyMtMd\np4ddA2emhRyyCeTm1UdPjzMmKC4ynO2icNWdWZawG4eoKj72PyiE0M1bT+tM\nU3J236TWDbz/qiofBqCv/Z315XknYLAxFaGka7sPdBJHoYfdUbGm/C+4/KE8\n6KQjTFqERcUZZonXQzosyNBpK20oq8dB9EbX+vRvimNQGoDd5mL3hQpsXf1O\nVy81+cODjQS4vbtJDSMKbJT+SVUH4kUWYCSRq537ygBd6r3iZBoaKaMd+VCN\nQc58\r\n=2e1A\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"17633c16c0ee6606ad12c89356428b6e1dc09842","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:32:44.112Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.2-renovate-internal-patch-17633c16c0ee6606ad12c89356428b6e1dc09842_1640280943891_0.3826645641276496","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.2-renovate-balena-jellyfish-types-2-x-30ed4d7e3b7c10a11eead725d88ccccd5eaac10c":{"name":"@balena/jellyfish-test-harness","version":"9.0.2-renovate-balena-jellyfish-types-2-x-30ed4d7e3b7c10a11eead725d88ccccd5eaac10c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.2-renovate-balena-jellyfish-types-2-x-30ed4d7e3b7c10a11eead725d88ccccd5eaac10c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6eaffb810a5702640551402a936d52e12bd3a03b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.2-renovate-balena-jellyfish-types-2-x-30ed4d7e3b7c10a11eead725d88ccccd5eaac10c.tgz","fileCount":28,"integrity":"sha512-CBm4PY2GDlXQWZ5a28p+cfijd/Bi6XjhUI4goTo0FIyeKyf9wR9n0MRttDu7Mr2tMMhilRgZrL/8juHscKacAg==","signatures":[{"sig":"MEYCIQDrnyhmgbqEM9A+EfPZQVMVP9eRf8TQOGW4WMJNiTrPmQIhAOtg/i3vHmnjUieBT7IS1sXqbvoTuJB6vqCbc2PFHA57","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226679,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLOFCRA9TVsSAnZWagAAEnMP/jS0Uyw39L4X8qxUMT8c\nPljcCoFTpB4kakt0D8HS4pW8NC+j5ncFoej87q/OUX4bInjCsel5neN/kwCS\nYRkArOlHd/rSkLy4wmKVQgomLaZ28AsMuGqCATrd382o9L28I7pqLp+MJedH\nTjcdjpLIVXIPJYPWmBcDzMlE6/rcFi4OJOl1Bo9q2R6aAZryk8FIfnsNdZTn\nS4VxlzH9PGFAt1P/NikhzK6+IYSdk1brzpegB26sfSsUWW+a84BIrJrjW12a\ng0FJY1/uuT8CxzVyBhhcempLErcofANtLQ1aFSMKhqqMoOVtG1/N1DYmFOtN\nqsJN4WLkHPp+pg9zUobJtgT4iIrIZZ83KPL8tUIlPWcXM3WY/+YBEdEcF+u2\nZMpdvdh5unCa2+GlXNqDc2llMS6LxEFiO3IzAqAXAvWmqXQJUexNrdOT2zDO\nSWL74qaSIFwRyfPZyGM/vOILS0RXfAU+H66hc2EmUIU7LbdMn0bTK2MNO6yW\nwqaAxraks4LN+NS7e/Hc3SvCIrrNU9WuoqCz4fZRTOxYmVFYVCh3B2ktRzJV\nbSTmAt3lSIaDS1RLdpCrMOWLoFQBmgvU/BbDZDsu0r0hLhYKzUyrbGhPqhs1\nECxv2ivrpz5GkXC+pj4XHe3Pwl45ABXcGvALSv4UcSDgfR/sgLMLo8OcBRYK\nsbL/\r\n=2ACO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"30ed4d7e3b7c10a11eead725d88ccccd5eaac10c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:33:06.530Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.2-renovate-balena-jellyfish-types-2-x-30ed4d7e3b7c10a11eead725d88ccccd5eaac10c_1640280965353_0.09713204233987471","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.3-renovate-internal-patch-63cd7c4a8174948140a5e6b68acb73d545e49fd1":{"name":"@balena/jellyfish-test-harness","version":"9.0.3-renovate-internal-patch-63cd7c4a8174948140a5e6b68acb73d545e49fd1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.3-renovate-internal-patch-63cd7c4a8174948140a5e6b68acb73d545e49fd1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ccb0eeaa8a82d0bb9edd9d7224ae302eaf8ab511","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.3-renovate-internal-patch-63cd7c4a8174948140a5e6b68acb73d545e49fd1.tgz","fileCount":28,"integrity":"sha512-s1IYULHJvMb5OxeYw9nL42Pe1LSASp/WzbyWFnRrRG5AOK5RLYtD4l+OCD3KFcoux+QVFpyQwuwudG2p5SG0Xw==","signatures":[{"sig":"MEUCIBGcVbsYqurno2nZSEUuFPoUdIb9uQy6/qiwGUMjxsDMAiEAwtFYdnzQvtLZRFCGfOpjVx64IkLGOLDQ5ZLU22IjvHo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226699,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLQUCRA9TVsSAnZWagAAR+0QAJ/D3fHS+KzN/78dgzbn\ntrHJhBgNmsFth7Kdbws6NJtdUfoIYjHaTyrvtAFdlAl2ukQm9NYO/RX86aU+\n14coBrpAS5qBBnfOyd2ppqPdXwsKTqrQgIQic7yCAB6S8wIHrJDnwpQKMHVy\n61FCk0AMmdtiUK5uWGI5i3vD1ib8Y5M1p78XzvXBDkOKaS5m3ihXWgieTh7X\n4clAsKMtLJvYhr0G4iKcHkOW5mLAPN+bB1V74YbRWMPqP7HUAaYy0CeCvBve\nx5TzcoIDsfwXGgBDFGpRRVZclQjqrVSMsZe2NPRQ9ZFq50F5ZNyX0WF9L/Gk\nsXT6tErhYZ9Xz6S0fwmCF1G6BxEfRqAAsXHZNYWVKOhSZw33qz2sTgBYeF5z\nTw63CIyU8V1/WjNPG/X8wEZqpOA0PS0tf6JYaSmmJ7ffRokKh3oFIyybzEkB\nR7Cnjduu9g31sBUKAEgQRB6SI0YHZ6F1asyGoANLM4ZsuNBJ9geyGCLswn5l\nz9kKxdvNG+NP//IMDzTt+DfLMsg3BZD7+iBKFUenKx8bPjxx0Vu2ZRXhgzt4\nikQAtvF9R88JO9FXVGdFYMqPFTo980S5BxcSgMMnp7DyDxo0Fd+XnFDyaZzl\nvOGxdrEn7YaRBBebq6rycOhzJs8cD4kohqX7Wo5lq1+6ESBaefQj4vA94TAw\n0BPd\r\n=HSBg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"63cd7c4a8174948140a5e6b68acb73d545e49fd1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:35:28.017Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.3-renovate-internal-patch-63cd7c4a8174948140a5e6b68acb73d545e49fd1_1640281108532_0.0012334361150283524","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.3-renovate-balena-jellyfish-types-2-x-e92a73fb3019991033e6f9f8fa5c74de0119c4b2":{"name":"@balena/jellyfish-test-harness","version":"9.0.3-renovate-balena-jellyfish-types-2-x-e92a73fb3019991033e6f9f8fa5c74de0119c4b2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.3-renovate-balena-jellyfish-types-2-x-e92a73fb3019991033e6f9f8fa5c74de0119c4b2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e30ddec567998fe1102edb3ba814401d65e3330b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.3-renovate-balena-jellyfish-types-2-x-e92a73fb3019991033e6f9f8fa5c74de0119c4b2.tgz","fileCount":28,"integrity":"sha512-aZ1WKNTZZOhNON9lEQsfN8gkZbmvLaxLR6MiwPwu3GVEQbfkn7D5soQ3grs4tcm9bPYYzziXiP3ELSMECnNYcQ==","signatures":[{"sig":"MEUCIQC2EVKB/Ym0dD+nmx+dg1HnZzRqjbHYvWkZnL02nF168QIgClst89KA83skSzFeRWKzUimxvUNfivf1kJwgWO3vnAo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226706,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLQvCRA9TVsSAnZWagAAeX8P/2GxvEvdfjaMngVg97Uu\n8zzJ3BcPuAUo+piD/Iz7hwQhq/Aodt5rTRTn9dcZZhnS91zzs28a2FCE21Kb\npsy0Q1ZfwzGR/I9bJSLMjKFbRQK/Hy8o9YCqbTXAbd4bP32crr4FMWgOlRd2\nlhWVsFY/MJWpzAFb2yCnFjAjlRelXvQU5qkKiLwyZ2JmnEhvoRBSg1+xNNzt\nkeq+KpO3bxmj1BwPDB9ZsOVEY9miQf+c3jq1EoiYY2pZuZ2yyN5ryxidrQRr\nyNzLSuERmZYu+z5fsCvG5F+F8+ZgFlir9lG/TfzInkKEL9egbw4qIclszO0V\n/bhkr9g1in127cdzG1Sq0V7Mvv3SpQLkyFJk2A8f4p3YNUUwlPq8e2n5cbfm\n4BrAHq5v1WlIHGssHtO8azVBREmKyU+yNFrPkdbyJzGdh7qZtjAIcqnD/ZJ/\nPqt/VobKdg8MOblFxdeiG4xemgTpwfApvolnt8Knc1fzBkOrM+bfJ/ZCsw83\nd6UVqzp6LgRzOw8U2CZP4TYa6pbqhCOXQFhH/SxigaBPcwI2wKKKFvtoR99s\n1ErJ7q/g/X73jD/1s6tVCIa2NleFMIHV2hpzp74dyiHTd7IMvM6+OqIVBaSM\nxThRvBJXQ2DGuGX2VRfEGKCZBgvkvMp/AWH/3ABUyUyhnlyrDfs3qMZS6qJq\nMhtz\r\n=INNu\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e92a73fb3019991033e6f9f8fa5c74de0119c4b2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:35:56.383Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.0","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.3-renovate-balena-jellyfish-types-2-x-e92a73fb3019991033e6f9f8fa5c74de0119c4b2_1640281135280_0.2866715070029344","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.3":{"name":"@balena/jellyfish-test-harness","version":"9.0.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2f9c855b61a88045559c7666361b94d25908fded","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.3.tgz","fileCount":28,"integrity":"sha512-yv1DfnptiPXf4c0I7oCAowrD0nBXKYSd1j6RtqInpQZiEkpsxjEllZQ/027erP4WiV/9OT6gPAbxYE9LriWCeA==","signatures":[{"sig":"MEUCIGVTXq55GtNAP9Aigxd4RiUGqSuO6KJJzdQJZzWr/rl7AiEA30XCW7neHrXHRMIEouqckKAOe91FNJ1S44+hqqu06OE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226634,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLTxCRA9TVsSAnZWagAAcucP/3CWJnLOL8IXxdMlh/Pc\nNkgsh3fQQbEa6pU21YwPuVl+5D+hZs7gaOKXXPCwDew7gbkFBHJ6ZgIju05M\nvyotFlFjcI1AgLH2sX3yOS8Vd/GaYUTL6D99kuIU3m9JK7rMAjVHV2vMu146\nprS+qI7DzU/QihrX/hpQUfBS2JSpU9JUPAtWs7e7qjyjLcB8yKR525aZtxwh\ns9ateDQR031P+Q/D+y6ODwZvJv61uJ5lemxcOvehmYxPoo9tEMoKpj4CJ+xK\ne2paOxyCKZHKK/MURNbL14ni1ZpQ2ope5DmwDgCmAoA31t9AdnroiEv+mOaC\nAluHU5IJZFKZ8Th4FOrO15iCJuJMmM+l/MmtL8vTwRZFhhwfr4nYKRPAx75R\nSNomRzr8979VYmj9Zd8Uecw7rJE5hbGrFo8ygoF5s7SdFdCqgrGmSHZEDWTI\nf+73zYGhKwOB2QDimloQi/SFeNh1Gb35V7WsHM+b7xtPKjrwZVRZqieyglQk\nsmvgvOL3DowHHomqkmwGY8pPoidEW0a7axZgDUkwkZ1X/1PhvUOx4L6c+Rt6\nYwcKy1j4g3KFKXpi/tY7gOPC0fkX+bomGoA838v6j6d3wRueRhz0WDjC38Dt\nSy1ZrOu5gUNqTbRjQXF6SwRUg00JGXnJCKjStZWVHNri378bnRptmcz+LacJ\ndKh/\r\n=guaY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3eb63c90ccfc490acb7735e5204b46bc5732cb8c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:40:00.860Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^1.2.39","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.3_1640281329118_0.6376627105281008","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.4-renovate-balena-jellyfish-types-2-x-3da017bb8c6d9d675c84161abaa865bacc748815":{"name":"@balena/jellyfish-test-harness","version":"9.0.4-renovate-balena-jellyfish-types-2-x-3da017bb8c6d9d675c84161abaa865bacc748815","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.4-renovate-balena-jellyfish-types-2-x-3da017bb8c6d9d675c84161abaa865bacc748815","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6323d1f8a6facad36cda50c45080685d2690992b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.4-renovate-balena-jellyfish-types-2-x-3da017bb8c6d9d675c84161abaa865bacc748815.tgz","fileCount":28,"integrity":"sha512-VPeEG4NC1Ca/GNP4trSTOTHDjg1nNOO2DGrU9GU1k3HMVbkFMm/yKe8m1c3SER1tFB4n19OWk3E+RjAnU1dglA==","signatures":[{"sig":"MEUCIQDl1wVpe0x0idioRXk1f03QKYUrIuLf00XM7Gy/tD4mpQIgVL+juOP0ciJznz678O4rkQS1wIBfafOUObnObniFViE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226809,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxLWyCRA9TVsSAnZWagAAYAsP/jLMLEqyc/1SQmww9jeZ\nxx6cZdzmzCbE/QxA+Teogf9SsKZmUYDvOOKU2lXMzEV4rKWltBiF9T9bXMdm\nM6eM7NiN9Lih2oGG3f2VnjWcfDfspGsrqIxy5iUE7yguJWOVr2tGdvZzdMAh\n8pgax+VXTD1rmfeN8YJgSjER7ctNXsBWD+rKVdT4kwzzyjcspWrmUFOpWlBC\nHURfB7NiPHCo/aLmWGEOftirDR9TcyQft4+AuoVCHgeCyyGafdFa8nZTSj3/\neoChqpI7hXeCQU/duBp7k3CZtMAegGm7muAHeP0ZlPPhCsTZOb4TdTsdtjBd\ne62bScU9fNxwon3jHU5GG2UISl9GPFzlAlT6ajtNQqdF40bUCgfMOgfDREU9\nRipyWabjiPtL2damXksn+uWmc1EQNZgd5Cbv+9yNpyd/8VRwlCEqoSHwNuTx\n8WNrPmTqnDNhflSiYgj87nttM/AVhg6VQKst++Pg813APk//Oew485Kdyuo4\nlKKzmOuN/fWrirhCRomrDrTccsB+822AAjRyKzJ8645mMyXrHvZCZg5sLAUN\n8HIoJJf/K3ugv81foeIjxLE5Vx6tJs9HAKdKta1/sKuY96Z1SNQ0QHyid9vy\nzNI/yHvtNzOAPFQwmk4VM8m0LAhvYpS/SgONJJZP6iM0YRKph+WlAIs9KUyr\n+G5j\r\n=A2fQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3da017bb8c6d9d675c84161abaa865bacc748815","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T17:42:46.669Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.4-renovate-balena-jellyfish-types-2-x-3da017bb8c6d9d675c84161abaa865bacc748815_1640281522654_0.8510589817547101","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.4":{"name":"@balena/jellyfish-test-harness","version":"9.0.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d853eaecdef78ba3ea1f86b5a55c52e0cf0ea20f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.4.tgz","fileCount":28,"integrity":"sha512-+ktwBklHD+4mj3MvUy5V4UOkPvupI6+NeOVvOaMeLMJOzWze4ZflkR11P23Z6mlw335KhO4aXk4LGeYect3DIQ==","signatures":[{"sig":"MEUCIQCFIiXejXwD4DIvaqb0OBKQswLoIU9PEEwsw/5SrudH1QIgOgRBNxmRNGp6+YzlA4oRDVsxrAAIa/9pYQPEYpmpUes=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226732,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxMDrCRA9TVsSAnZWagAA1swP/0ceRkK6ADrHG5S1t6K6\n2RhZ2jwE89iTZbeRPErPETPO3SZc/TDrHkAtNP3s+WwIImgC/ZrIc+dz2J1O\nl+iYOdyM3v6+3s1O88UWLQV7TTYWeg0AHG+k8OBUG23BvOFPjs57swHVnt4R\npgyiKMJVy4XLbTsusEvN9Dn8dLKMbl4md/C5c0yTZwlbXYiyLv7nLhJ4n3sH\nGNwrJAdqvDRhqKJ0M7aDqDeQVV3kwff6KiaWKkcwtssB0DINt6X6Hc9OKbZH\np3E5Ie7UeEWCn20toVwl3Gma5Nzg9p465/lAa3DSeGkqxQdTnz0Yn4LV62pl\nBEFvHjfU4eNU9E+17mIR2Cp1EZnsoWU9+jM1X6+MnSmfRar/kQJOrxkNyhSY\ndqB6ap5IRX/IvvwJKvsiF+UoXeE2TZxisadg+k0Y9sBu9U8sm631xo09M3+J\nHHwC3jjaDgRyDKkNHzIK4LWCoeoLH8qlbEy15vgU+OLXHFxMqGAl/n2wEbzK\nxXFTx0NRlE/SUxf//SEeK0VfNfVaSECDmmqBmu7uXPQYP5O/of9WuyxWGpwB\nr23Drg1vsI2Z3TajZt6oswYzFGpi+Bun4YzvF3qOavkNJm7dObuKGmmpYIVc\ni76CRk5DmVrt84zQ6HrO8mk9qK6GcNu3aj0JVyzkHQJXoZm5ISTx57LnO+UY\n2m8b\r\n=sB4n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8bb04e9d0bffa042899bf619fb93f33870f994ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-23T18:31:23.040Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.0","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.4_1640284395463_0.0822670533963108","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.5-renovate-internal-patch-da858b0cefffb961a4da05211f12c63e756dee04":{"name":"@balena/jellyfish-test-harness","version":"9.0.5-renovate-internal-patch-da858b0cefffb961a4da05211f12c63e756dee04","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.5-renovate-internal-patch-da858b0cefffb961a4da05211f12c63e756dee04","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f64dfa0f8b9128972ba6d8ced5036f9ebb6be957","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.5-renovate-internal-patch-da858b0cefffb961a4da05211f12c63e756dee04.tgz","fileCount":28,"integrity":"sha512-IvOMtWUuyR8LSo1E/P0pTp7v18NyHZ3GcULPMBYfVu72GxfJfQetpUmZWu/6X9cpAlduRUqvm88G8yXg1MMaCw==","signatures":[{"sig":"MEUCIF1yb92Dkir6f/8ZPUA8iuDhl9/39fY3L8XtA0MT+etGAiEAiZaG3OR+Z9/xrZCVPCc9lT8Wi5Msz2JgBx05YBGQmQI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226899,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxTr4CRA9TVsSAnZWagAAmvwQAJon+k4MoR/zsH4niNOg\nn0oce0q7diebKEUr5dPDTfy/6EfyFvu4yhqGEdMdxeJWvSGuKuFcwapw64bi\nwjpFeX6Y1LxKdyUdJxmtrN8SlRGg0Kl2SKljltliqqQV91n645n+xPjpm4RE\nJ/66VGB8fJIb/uDXHrisQWhVwUkoTLm2NiFVOoIC4na1mi1nsj/y6iPy6urU\nAQEdT9oO79heFSYCePjSIHyyxuHEzcVpB1CbkKmiqwLGw3Y4ncfYvdagv3yi\n7hSdBeXVrvS9+2K/1XQwetTOtW3a1ledkbUc+cK3GJh7dz8KlzmY21jZwEU7\nCjVHZCSrQVMeqch7oaQkvhw9waC0E+5sZrerfvxrHMg73/mKqXPKCTcIX1bH\nW/hh6TEpKRH3/+pbQqvx1jtPmGVsWO9bD0UCyhhU79cvqnVidCZedX5lNmQh\nhKduNl6pE6JtXQoz1nfB6uurEm4qWPAYOBZRydVvrxJ1ybeJ37C4EdhkocKo\nz+s5QmkBGg3YBChb+i1c0iXHRwemnJ4im4QK6oGfwsZA6zb5jpRp/TVtUMPn\n2Dedn958l/tivZ18lpHD1hlvKFK8iEcU2gOZNk6qE3ve0EyOXPEJCZdmmycz\ngIhcqdGvXNz+sQeGV9jtV0Xm+ddODmQkxx9zEOYapxXKZNLpPGfablJsv42g\nFI9u\r\n=wa5n\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"da858b0cefffb961a4da05211f12c63e756dee04","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-24T03:10:21.216Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.5-renovate-internal-patch-da858b0cefffb961a4da05211f12c63e756dee04_1640315640625_0.19950622433449383","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.5":{"name":"@balena/jellyfish-test-harness","version":"9.0.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3280da3772441a7580f42f0d820feb80b426973b","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.5.tgz","fileCount":28,"integrity":"sha512-08QJmODNfX21pQxze4+yrk6+oRocM8wE0ko5GIhdqsK3xgSoVlEjKfkKQnYdjSbSomhdUQyZdgeQYmmC/FuEKQ==","signatures":[{"sig":"MEUCIQDVivIOc3lpgSWnWjoW53Y4blOhBoMEIHoeAmyNsoewmwIgVpGW+qP/kRJHKvXFrT6oXCDwRfRbuniIPQilMCFEUsw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226834,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxTv0CRA9TVsSAnZWagAA9MAP/ivXXk12OYDH7kYCSY9u\n5eMJXEt1xbASDwNUsJOv1duXkRoVcwopOQs89njmc5fl3rdus47rZNk79obp\n0JpntWOtBlPLh3dxzvwHCvkkNtbGsiza8gYfLKNTZonXE1QTMfu8ktcjAMdG\nPiOpcLMJ5COdyICEtFTcxgUDhPn7ZXXL+0pzu/8moQCDZx5+BhU7wihH4R0l\neKXj0VBJv/6Iw72aSiHKiOEBr1QSw47LTqNcHMLMeotnfNHFK4dyMIoc3GBn\nWTtuN5Bz8AQ3iYHpzVVKutTQ+Qoh+nJnq5wxX/bpBqoEfWbrwQPxa8P4UjYw\nqF1Pz97urmaA6qUVBs4u3FmukfBL7x0627WWLi/EJL8I++cA5aKZimU4SHLK\nhbeaFBJHRMr15gRG2NRlUUkQC3jGSyP2iIY6t0/MuYCKJ0oeRJa7QQpyAOV2\nmnmQJFonbaVvheqEmZLeRGxJkv6NYGDWGA0tqFaEYNGvhgt5Pj3FwtrqYGdA\nyfZ/tlwZ3DCeE6zA3U1G8K2nPgSXnuajSN5D7rJw3MxYXkVOgUVO33vtYaDu\negRKSKFloJ6pTJ8GmY1KAxxqF4AwLVUEiRe+KjNdSnbWLqm8vqgl35BPTb7z\nQbJMGGGVmlVEB2pjvPsHVd1T/mA4TmtqHa7WYO7wrAZwpIwCMHH+wqCcZcqp\nx2wU\r\n=vySL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d25610027a3317463d3d85c6746f811df952130b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-24T03:16:17.752Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.1","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.7"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.5_1640315892742_0.17248828332212285","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.6-renovate-internal-patch-44b83f82376e33a3bbcc61d6983d534ca854dcf6":{"name":"@balena/jellyfish-test-harness","version":"9.0.6-renovate-internal-patch-44b83f82376e33a3bbcc61d6983d534ca854dcf6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.6-renovate-internal-patch-44b83f82376e33a3bbcc61d6983d534ca854dcf6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b944a75ce6a10e3c2cb741c02c5256a24a5af9b9","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.6-renovate-internal-patch-44b83f82376e33a3bbcc61d6983d534ca854dcf6.tgz","fileCount":28,"integrity":"sha512-ljQK5oVQ2brvNPZFNUOHWXP3fBW5tCvdYZMMZ5ZBKrtnTGnanv5JCEulv54fYK7s2DtoouQVznMTnZa6epWU3Q==","signatures":[{"sig":"MEUCIF7/27yzjeWr/9xHeFP+7Wn+qit8AInDgeB0YNvaK39sAiEA2qDqjGpLzKF0mn3ipG6GENO/TJcKI0+lQENGoR4zACw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226972,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxWNjCRA9TVsSAnZWagAAzAIQAIR4SyKx2Yz1Nw01n0jk\nuYdxC+XRfhtdhhLzA2fKoOsiG3KRoswIRUlgUyMWhmQXrVVQfbyGs0Y1wJXq\nyJS5OwavuLfiINXFgExYD/dxp+5B0/fFMY+IRFw5cy2eAFqCI0Woi7z3AkwI\nmoSeXO26qy73L7lGiI5P5YUPAeGH1UpLsBRSPaY3zNg6mRDN0wZ/4XdaqyPO\nFHMOm7cl6BvbZpQRinkvCfanVdM1GD4Bykvd8uQqmcGy/IVQW6+33wP/lAqR\nh3ROattlRw69G0re80rMuCTswxxhXr5yHyJIW8nziKsV+uPqSRycYf5sZS+D\nHJP+wFPy+IyWZYNdvGTZaEZsvFjFJdCmB7M7kMRH4zLsXhNsX/8TDttEj9xx\naqDWRAWCNi+QheAyOiX8d0lr0ju+X6QBnks06ea5n8MjGDaOWsaRqgboexr9\neuw+AzjXKPbDrtQ1WPSUlcVHPcbgNmUZ9NhZFlm+CeBiqsLWf816dgt7ThlK\n7I4Inmf0L77HY3CKz1nA5sq+hqXlRdHSKetOrfHKALKVYxC1Vf6hblgm7TnJ\nHFfvKaL2UTFpPpLRI1bF1Y7gLigrccr0V/99tVJlXfd6JKkE+8XgISmRdV1v\nIS+Vk+xFRe707UBKKqt1O+zavggWM//MQKX7JEtdNw4LY49OLim/V8ZiLYyC\nmr0m\r\n=6jYb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"44b83f82376e33a3bbcc61d6983d534ca854dcf6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-24T06:02:59.103Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.2","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.8"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.6-renovate-internal-patch-44b83f82376e33a3bbcc61d6983d534ca854dcf6_1640325987663_0.6927870025729399","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.6":{"name":"@balena/jellyfish-test-harness","version":"9.0.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"373c20df9ab09f63163809a7a54d1e240e3627fa","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.6.tgz","fileCount":28,"integrity":"sha512-uXah6QNBZSaIebXKZXjtj2E20hkLxyF2cvSFE6WAToJuJTYxSU1TlFvE+dE7DvzLt4R0PukJfLGZ0WLatVTtBg==","signatures":[{"sig":"MEUCIQCSbl98B29RojYxRB7kKWM5Hm+4C5MqqWsvcE2JXZqjnwIgMiAlvb/J1bhshzVw1ZS2gvaAQdqKXF7RUZvkf6gKbOM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226907,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxWQvCRA9TVsSAnZWagAACQYP/3enT0OaHIOrdW6OzMyu\nSSz/V50ULDqdynhUN7PLopylTQsR78B/t4BH89oXwXcEKC87lCPyxj6qZ/dt\n0V+cLO2RreG6HwqbEFKoSMH/Pph4xfNPn9tSPSjiElEDJJyYtcrzfzaGlKS9\nHcI5OoJ/vZXgTi4v9s4mDulkJ7hHKD+6jC5PgjoU72umXGGd24qw7ymichq/\nAIQHAlAAit+kh0CLJnyOSV0qydeN5QAnp56gSuPVQ/Rn4aV54S2zuWU5gbly\nv+Y5Gj0MZrGsnyqhCEpOtNaK5JMOeB/mE/WT/AA6YInThWTNLnF0d5F1OomA\nRcM3f9rdxvfsWJfsZ+CSiw1O3BoND+aqibIASVusqYhVnVvnxrUtBEeMdgTs\nyOXkBKYwy69nXI3P2gx3OvzMehzha9pTHd5Ugw+yyMsd46t553NU9OW1aj0c\nKR7PFnnf5rH2vMRsmGy9QWZkuu7jy7R2oUPlfN4WUzoU9HyXddNfIIV4xbTQ\nXlTuDMARwdmRqm5Zq6rPBTItMWAhZn/KhRNwrHwIs2jvyR2uad1QtzeD+XtZ\nO3JRYqXwx8jGG3iO6g0A5bMohYm+9lD462KA8MTAykN0or7agQLyMjICC610\n8B/jZGvIvVZdl6NbRGz/ALn78RypbZJVl/S/qrP73T3gf2f26J/K8Nx+0XNk\nHS2u\r\n=oKMx\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f9893bc420f687bbbe02958af87746a54432d51b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-24T06:07:46.492Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.2","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.8"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.14","@types/uuid":"^8.3.3","lint-staged":"^12.1.3","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.6_1640326191751_0.1087850781507056","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.7-renovate-external-non-major-4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e":{"name":"@balena/jellyfish-test-harness","version":"9.0.7-renovate-external-non-major-4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.7-renovate-external-non-major-4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0d429173a88db8e64b0722e5991817b6f91950ad","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.7-renovate-external-non-major-4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e.tgz","fileCount":28,"integrity":"sha512-v7tMxfaa59e4FbDym+XtDjnJuCR8U3qc5LKiEzrEy098NF5xiyRVnowOxtRGXQGFb8rhmBeYxMZJtnTQB0YlKg==","signatures":[{"sig":"MEYCIQDBQRPKxy6g6J/FG7I9iM9xf0DpWRIHkGGoDM33RU6m4AIhAM6DJXpyuPNC6Kdz+1hB6sqwOEvUKR4tRJtQTZZ6XDEg","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227053,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxmCLCRA9TVsSAnZWagAAWjwP/3hQEErtVdLopmfPzAAA\nT1EKau7TLLjkQPyuuu1W4dfEoITVBIQZP3tZRkLipn0ZgLhc7WE1k7T5xH3K\nS2/YWHvUh3tSIIk4H+mOPEea7KCd7ibQ/3qvsC9wAQBciZ8Zigvn998rDQSy\n7namG1g4/MU6PBZ0dvKgU+aWYIDIy+5EqdzIM6cIc+iNrcQ1TpDjGwxQHKpU\n9Eab5I3KBfZnj11DumkQW+aE7IJm//ADkisNEsw7kDFMnk371Mw0/ZWf1Jtx\nE2YhXbDSR4nqnoWGtGIOBJ7t6RbcacSQ/V3jZaq8NDGhtIfjEC9Wb9SCMocm\nLri1XhTGcXEMJOpXbgNfeq05tbZpvq5fTehK3Udwa/5oos/fXY3pTu5XgwTZ\nzDu4zIF4QuKqKs9PJphG1EuPStdQaA7Vuvp+HdKnr9KXGSVlSSSWVm7LarMg\nMlGLTYiXOgJ+75zW7Z100gHIIaO/xR1uCr1plsAa/DvQsurBOCUALlPcL33e\nKufS6BUemCa49eDlp1Zk1VvEyqwGIvDEPUki2mriV8HF2FobeMil5jRDBUz9\neC7iZKSE9J2AF/uFcxwHwlNlJDPLZRz5gJVVYsXmmWOujxOSagGC4nti/jBg\nZ0k6nE7FpTtqOcyA4ey5jUNdinqUPgSuzvFADw4sTrM7/YYJicGdWxyokv/C\nIawr\r\n=x6BM\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T00:03:27.126Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.2","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.8"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.7-renovate-external-non-major-4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e_1640390795689_0.31282765057666406","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.7":{"name":"@balena/jellyfish-test-harness","version":"9.0.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d27bf5a9d5f0056ce761a71ec9b7f922bacb65d1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.7.tgz","fileCount":28,"integrity":"sha512-QVJylrDdiE6uuU1r/xenjcKWoWIC/LI7klbBtqIoDNBjuGVjJbfNC5jNoTKsB16V2RWFBdX3G2P67FoBw6CAYA==","signatures":[{"sig":"MEQCIFATR0JVDwDa5GjqxR1ikIWMvrzSFnpvA/S5JuW3K8bIAiAX92pAJywly0uslYk86ybazMfQO1B+od7+VR+UCNKEtQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226984,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxmGSCRA9TVsSAnZWagAAw2cQAITGN1L+8FODZ7jLx/0Q\nKxbshaZaxOh7srTv1uNYaDtcmUIyIbCuTwyq0zd2Awu0SO+f69Z2TKeoMwO6\nvXmDok9SYkc2ZJM8slhtHKsuY6ejYxDbhzQeCLXbIM3zUvxLSHtCoitALoBx\nOl41GZyG69rqIUYQJZTiOrVYOMzFwi46GHHCLsXpFNpv7QybiGuks5PjkX3s\n/1HnbWkpuKhd87CWAcK6kc2eg6vpnaIl0thlLQX8PFshHKPl4vYpLRYJSJ3c\n97KdTjXOFoEGRVpQSOUqNNJize2IRQ1iLLvwlxu5S32pSWCeQ36Z41Jz/szC\nCgTq+XARrLiK5s3XcBrgwbw0uNYenitGN4IFy9+rmRmb0l8tmDSwhSFaSgLz\nQ9BqcgTlwQnvP92Coi1IzHRTreszQWSDcj/sTxzkaPNdD9dJvY3wJxot7uau\nQusrAGyO9CdPsDAGijE0yuJufNH1RbqK606RgTve0F8mK1twsv9Umz9i7/m2\nAZ5TwB69ak59mYJo2t31TVBDAw4q2OtvuwVqBLBIHvd5hL8GcMMJe6/41/XQ\n0qrzP8DKi/mYSGaknZDG3vItBMR580BNtR4DnAUDvPXYS17UvyXXd1feRmE/\n1vWf8amRT7l7f61ow34Mv8y/uidabVtnoWaFZuADsXbBlsrsl+CNxoR6qOif\nXMxC\r\n=W0im\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a9bffe39eff265a6904259ac8892ec5ca4a1d5b3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T00:08:38.908Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.2","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.8"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.7_1640391058251_0.026447652446097702","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.8-renovate-internal-patch-f7f45b6a5c7139ba2447feaedba89d273ee629bf":{"name":"@balena/jellyfish-test-harness","version":"9.0.8-renovate-internal-patch-f7f45b6a5c7139ba2447feaedba89d273ee629bf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.8-renovate-internal-patch-f7f45b6a5c7139ba2447feaedba89d273ee629bf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"09e51b1ec47c29ec6854f3cbb685d24d87ddf1ec","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.8-renovate-internal-patch-f7f45b6a5c7139ba2447feaedba89d273ee629bf.tgz","fileCount":28,"integrity":"sha512-op6EA+nn/T8bJmkVS+8w4cEEaRRVoTMw528dm8q5dAPEmKSpsVPIZW4a2fDvT04uToP/2Kei19H18DC5ae6Dww==","signatures":[{"sig":"MEUCIGchyrwmyxrRIIrN8dDIr9qyHZNzQcuCXFDTSiTuOqX+AiEAr3LMMhDqiRrb7tXzvFXpe7Nskutxi5MX0bShUx26njE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxmLdCRA9TVsSAnZWagAA028QAIJGN0iawqsE50dIccx8\nIwF+Ad1Ps7YMyRZygalhxOcQa+OGaxwMpgTtuie2waOwxe8buuKEL+QyP0rW\nrl7GXJY0uXZIA10mXpgb0e/DkoQii2J9OpEuvBqdQzvySfS7/syRp6WWehvv\n5V6Ozlx/kFGBZzqixfp/dXlhNtn9iaaOVkQf2k68QKkt6Neij3BTdot1t0W8\nihbzlpWmugtcXmsEH138VCkaR8eZrwHe7LQyjGt/1710JUifAHuDH2McPhMl\niOYQy3bhnTkBVKj6DUbyI6RVa8+EGlOnavhISQ1Ahbm/TKON7KwtVDATVn4P\nvYPEr1iwxAQb0OV8zInefIDCRbHdWGYwfhoAfi6wkF6nA2gkJLgAwtBE9tez\nPFYnIZb3Uv+9h4aSllaYd/8Jkj3z66Ybhn8KujqalIqksyX1o8gX9Q110wvT\nL0FbFOxdZzVK+kDXf+vI6D+DjtJ+gFh29P6Rq2EI4YY/Obd2pTYq1pyj0Ykx\ne5VmAuuWjkfFVCVfFF81Rxd0gW0PxHMjxntYFy/j5d2WZE/bSCJh5WkVRTsW\niqXVD0YWJgRihuY43oOLR8BzBXFf03//EhBstr1tOJk6EBIOoX43oRyH2n4Z\no4XaNGcCw3EV+Qse6VRgafeq8eUk4kXxN23CJ9rJJ4oCscrbZf+zzdHlIfe5\nfuOS\r\n=JX6R\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f7f45b6a5c7139ba2447feaedba89d273ee629bf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T00:13:06.985Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.2","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.9"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.8-renovate-internal-patch-f7f45b6a5c7139ba2447feaedba89d273ee629bf_1640391389183_0.15374926742887296","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.8":{"name":"@balena/jellyfish-test-harness","version":"9.0.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b4d7af8b08b579f52600ff97d6889d3322121068","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.8.tgz","fileCount":28,"integrity":"sha512-11i/J6B1F4Z5nDWBQapRSzbXv0KV3oeUsiTqf92K/H8RFbd4nHrVO7OVmSSmqF3bp+Fin45TU6Hp15Ze40kB0A==","signatures":[{"sig":"MEQCIFvCDilTP26+wNCtg0ytO2pnRdfWryWJmtam6165qyYQAiAK9pr+C2ViLg2SDWQnvacRcfvyEKwysU1rCUxahqsRlw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227093,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxmQACRA9TVsSAnZWagAAHxEQAJ+Js+par/wq6WSGQaqk\nCce24llwBlji3Irs3SJ8GiIiPnGT/db6UzDnlKG8KFXlgKytHgaTtOo6Ukqv\nYNGvdno63EM75CJyUUroH0VnIweXXxe77BI/eDYD02jYpz6gc1cUmTlQVsMO\nA1CXf4SBl6IlyAUGuZdTYcmtj+KpQp4LePZVRcEIFc+Qq07iwklPJFG6/6fp\nLeX97IM/uXSHmXsUiwgIpvxxi2ZfDkMAPgSBwdblMMO4mDwJq5dC7jXzSH56\n44m/3kf3dtF5hu/6AhIgHNcKVEPkLZ33udGK10BeyITjvzPn0+Gf3yBc9eWK\ndsXrnizMb6+qwdn9mkjGSLXId+43c9MkvjGRlNw4INhErjdctI5lUOCEa5yX\n2Dei2azTGqqJF1GDGsX8+xUGsyDGLXl2IWfGfRI2kpIBydEjM8RyD2rLE8vJ\nK01D1E1xzoXaJbb6+AxR4vMTPe5xXy/f6pjuwHceMniwU/Z6Dl0CJky3Kqve\nb6P/1F631ouarrJ2fp0j+WN6PccBwTXYG9zAnMGORCT4I2oGPu7kO/HccYpN\nDrC/1wL+AzcTd5/NcHHDNAFrcU2gcFjMmdCUXaT6d32xMKyWMhc9FH2I2fxC\nb8cvO96gDITFsxU2U1XSFFIuTDfAN7iQo4A+PPRabdLE48HlLcfqTwfZBpcb\n8JMb\r\n=4VnQ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"275b517043abe4036603477a9ab27ea6abeaf837","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T00:18:46.153Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.1","@balena/jellyfish-sync":"^6.2.1","@balena/jellyfish-queue":"^2.2.2","@balena/jellyfish-logger":"^4.0.5","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.4","@balena/jellyfish-plugin-base":"^2.2.9"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.8_1640391680270_0.6833145739225923","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.9-renovate-internal-patch-22ea33c829d8d8e8d548d073f48d8df93a437ecb":{"name":"@balena/jellyfish-test-harness","version":"9.0.9-renovate-internal-patch-22ea33c829d8d8e8d548d073f48d8df93a437ecb","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.9-renovate-internal-patch-22ea33c829d8d8e8d548d073f48d8df93a437ecb","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f345f97db43ae03cd66c748bc035f93d13320a25","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.9-renovate-internal-patch-22ea33c829d8d8e8d548d073f48d8df93a437ecb.tgz","fileCount":28,"integrity":"sha512-N8jniNLfzGgWxY9/XUPHW2T2Di1W/TiGhgpDnFy6YVySnn6fJV3Lt667qUAqLsJ4OuZ5Xe1esct74/3NMNZ8BA==","signatures":[{"sig":"MEYCIQCa1YNZK+CpcDpfdKSXXSVufoBPUdBKkZ0vwlz8WJT8EwIhAPnOoKVz3uLTLCSBQO+Y4amb9s5GujFhHr5aJsjU+fe3","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227232,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxoNNCRA9TVsSAnZWagAA2i0P/0gVeg9aMxkI27gB6Bno\nmvqdsAOUzR7L8o0YauurGpX9BxuWnJyWKqRRGqV4qsRylpOd2FKqahgMqGMV\n7YBW6aeNhBajuu8is3eo5KtJ/lDYsALx4eEwMyjKaJLCJoCkmhZVCJ8Dv3j5\nHqIj+FU/rXWnJFcek2mz6hp+Iipt4vUR2RmMWgMQjOHmDVCFUWmTJq5g/78o\nIgPVVQs/Aa/DPPJzXeXBQhFnbSCAY+Z9XcjftQhAx7O6EJtkqjByRyCr3kf8\nreno1y3e9NNkJTbitcxsvBrHAKBkhViDDxo4MIDDwLthlu5ZiC45oCK9Xpk1\nzEDEcjHqe7B9FLB6MmfzU5pyJdPABH59h5LkSmcuD0uuuCZ1WVRVXLceJrIK\nFewe3Oy/G11NwzcNQmy/pkd0SOLP3PgmqEbT/ieU48qdYP+aczqV7KJ3mb2Z\nKbfV7yu76XevyT3QigmN/jJVAGTn+M2338EdZHeEnDtVoX7XLF7dj8bluL64\ngkqm0ox8kB2RDwH1WNwfO5QlJJ58Rl89m06Z7iXin1Aw/yvmfAQpgGPLKIW7\n7EJvnu66xhykRbjzpaGVKtS8QqZMzeLG6av8QjoA04SS1KAvWR0YsX16Wbpd\nByrJRUX5v0fs3sn/cZu6wnF3DjZZjDn/mwwysJYC9rUIdIKY215A3xLPqxPE\nWmZv\r\n=aT3y\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"22ea33c829d8d8e8d548d073f48d8df93a437ecb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T02:30:54.245Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.2","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.10"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.9-renovate-internal-patch-22ea33c829d8d8e8d548d073f48d8df93a437ecb_1640399693008_0.9881845749403408","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.9":{"name":"@balena/jellyfish-test-harness","version":"9.0.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a1daa655646e17a3432a4057ac576b08736cdd55","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.9.tgz","fileCount":28,"integrity":"sha512-LR+bGj9ueiGCrCjx+RIltiWiKJNoifk3xvjl+5Kqve9Kd/oB4uTc1RjUlk/CX5l/u0cB0pcwZXmUZkuCsypcqw==","signatures":[{"sig":"MEUCIDi+BDicWrOLf9mGC2AmrYWaTr1Na07P02Ao7qG7WL+0AiEA9UT/WpEeno68Q8euJsRWefzSgT6Mp+ItlrXAiOVNhAk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227167,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxoTJCRA9TVsSAnZWagAAYcAP/jbtl/790p2VRVKC5pnT\np3IV/XrDIb6YVUGyzJdo6D8fj6pRgi5qHfsYBo6irMm8P7PZhjyznsbDx00f\nWBqcB08A8hxRaiZNxh5fGD1FTFIGHngbzowBDEbiW4NJ+nCa+oPtCHlMVu9k\nlgU6T0tM80G8Oj0JCunWjumpRHHgVzQGPSZydFWkc3fzgTs8dxW8e5T6Avu1\nigzt7ellvEKJVjwVeJ/mEyKD28A4i5ZE8J4BvjtAJFvvpbucEncVvgAzEPdt\no+xpWbdQIL2rs/bRvzp9dXFq1ahXx91rol3IHZFY5XcVhenfZpZL8CWJmXDD\nIB1RpYDcfasjSwzvzMl6Lf0WOb4C14yd/XPppulcckqH6eF9C0uYhAWuGzsP\nWZxhraC2ub0hb7tQVpajP7RtB3VfKwu2MMLRknIHASrovZ7DXJt3so8hj5Xh\njha4FNNX+Sz1qfYBoGx8JQPGnkksYLcXOTKQgaTnOYsmcxkyVZ5SHlmRsWOJ\nmLqPQCQtxmo7Zvnev6MmGUk+CE4qt7JN/iqbJj6RmSy9yDrGQorLJgQBPfG5\n3LWRpNLvU+VSk4xo8+sZem6Xz/Whx0Dy0S/iMwtV3xguF0/4hUr81IMquSIB\nL+jQGH/7E2w57mC0VvBSwijwUeB+MFAsS9PIhY1GVeTcCHy3JtkcjUEVNwSg\nK6Sn\r\n=Zok3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5ca7b0043cdccc36356e45f444d60602fd93f4d3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T02:37:29.914Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.2","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.10"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.9_1640400073392_0.810456408923032","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.10-renovate-internal-patch-cdff1a3d025bc2e38aff412a85f0c9efde192b10":{"name":"@balena/jellyfish-test-harness","version":"9.0.10-renovate-internal-patch-cdff1a3d025bc2e38aff412a85f0c9efde192b10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.10-renovate-internal-patch-cdff1a3d025bc2e38aff412a85f0c9efde192b10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c0819e2af8c89b2995d722cf7259a5a05ee7ec14","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.10-renovate-internal-patch-cdff1a3d025bc2e38aff412a85f0c9efde192b10.tgz","fileCount":28,"integrity":"sha512-cnD32gu8dgM5Ozn5I8MMwxSdpvSzpS8xE8lEr/MYPVKZrwFxSgpbTHAJFqIAPaRXgVbwsyep7GR4BbA9UF6GEw==","signatures":[{"sig":"MEYCIQCLSLMqlrEaBrfrMIllv3yAEbn7j/mWhnOevLIZByKb7QIhALveK8UoH2O94jnuvNS9GDl7NPbgIAn1pmKMgq//i15x","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227344,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxodeCRA9TVsSAnZWagAAyxwP/jK4RP3Dqi3PZOLOAe7O\nbucf0+M2sUvSjnvv80h7AUHsarvGpc0C8WL2+vHpprXgNVMgK/KJPec22ttU\nWY/hjwIlJHP59QeU2ls+Gitt0fY9qOM+uJhKqMsJijdIbzt7rQqwKqAsPR5T\nAs5uPPVI0TOS97LQxqVYzyCjKa2s6HkfenQWArY59TZQIMIY0698Kr5jhZfV\nJtbrROMV24svz/rKi6Hn6j0qiF+k/Rklxasion0NpjXMcJrV6n4NsKjikgy7\nclkCtxPNoAnagPtBTBgiXO+9PjO71kj+94IOFvixPchv7LWGdp6C/f346zkm\nyM2KqY6bf+8dGBgxKZb28pEDw0vXeO9KtZti23h7TrxGuv9xlWNq8VebMGrr\nX0XaMviD6pW/BFAmbm1jM+FzLu4o78rifDUlk0+H/r8FhjMd0mYl5iKlcNFB\nrU+q2iKrspYbvAcG7MwGzRKOfr1Zl+JvZkAWFTbYhegCfeB2HU4q8o5JPtgF\nd9bxOjS6dR2XA0EDTBeGhwltoJXedgxtiyHrp78Z0bry1AIKNN4C5H7c2v9z\n4FbZtiqVtV5Pw++zlc3BMvXHIU3AYnGlSfLHj44xk9oE/gXo29qHZ1451tT6\nzEopMyn8KLshwzOs41TfTjWAEG+uQVi3yq341lPWYWyF/1qDxgwnANWO1fLn\nvjgi\r\n=LxBq\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"cdff1a3d025bc2e38aff412a85f0c9efde192b10","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T02:42:26.281Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.2","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.10-renovate-internal-patch-cdff1a3d025bc2e38aff412a85f0c9efde192b10_1640400734752_0.6700382874911934","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.10":{"name":"@balena/jellyfish-test-harness","version":"9.0.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"91276aeddc0b93fb3c0ec72da241a680807a4845","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.10.tgz","fileCount":28,"integrity":"sha512-jRYzmr+NaCe90QPCh833ip9lYWBAZDOk2c6NR9DwvIMWkHaEL1nhyEwJi+1uqcluiFReb3LvgeuzOLWiTJNTJg==","signatures":[{"sig":"MEUCIQCDkn5ZARabQE/oiSIL0rar+MXCJyg0Q37LwVpKvXFoXAIgIuJS/hDHUjRAN0ngYSaLTgIU3n3E7JTmplpJGNok+rw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227279,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxojeCRA9TVsSAnZWagAARtAP/3wZ518FaNpqJfVdtr3L\niih2AMoPqgtHqM3WpJEzPQ+rjbaTKyGl2PFgu/8XEFQsLECDQKWrGE0SkjwB\nf0y5ZmElh9gi8fQx2mpreacoGxOSe+gDeL5EZOxpdWM8IhMfaoKVciwXqIH6\n8OfQSLYd+e6r4R2KO7hTGvY1Mo/bFlXB4Y7jdO//9m+35smbZwv1tElY5PXk\nK1xjZIqeGVAm/0T3VSGvGxYMl3VvSEzmF70B0IOcqkYUaD6Cp3lF5uuuXdGp\nSgjmATGY1JXzK5Qdg8Rl8lTjCUpAqKODkMN5lD0QiBnMn/M1oGO7AlqSu7O6\n/fCgFfWJ31d7t+5dQdnj4jfzCq9s1w+JNEx3rm7Mg9alTdm0PLg6ssprdkpB\ns6Lmo4KBX0SiE2ZHFY/UbLnRwRz+K4Z2WXy3Z3gmlMhC750uDsINsqytA1Be\nDNctbnAESvHib0TeIVrZ3ySxHg2nmkbldZa8W4iPHeO30IPe7m9TFhASdH9v\nSh9vNDt8fuqHHBiVlTgjVOMTp2+9Rt7fdqDWbbk99TkS0a0WjS9G8K9+rYGM\njR44GQs89Gn9hdthyDjwHr+R7WgpvY7z8bu+0ceR+3uw1L4GGvYIf4w+SqZ/\nh9XvfKpx1bAqxXFCF663Vudj5F7eMwQHY3WeuKkBzNtVD5Lx9RSy7frY97UX\nJvA7\r\n=XCfj\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4bf8efef1362ca306982e7e31b9f4ea0c27c07f9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T02:54:22.942Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.2","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.10_1640401118024_0.8558917853656247","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.10-renovate-internal-patch-caa16a16064f887618b5a44b5bf6083815de3137":{"name":"@balena/jellyfish-test-harness","version":"9.0.10-renovate-internal-patch-caa16a16064f887618b5a44b5bf6083815de3137","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.10-renovate-internal-patch-caa16a16064f887618b5a44b5bf6083815de3137","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c8cfff43197c7dc5962021615e384a54ac38d006","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.10-renovate-internal-patch-caa16a16064f887618b5a44b5bf6083815de3137.tgz","fileCount":28,"integrity":"sha512-66D1Y+amp3pToYpP2+4bDd7X5c8hnp+K1A5scrVDpXfF/HS9S4uyY9wcLQsTrFqUJ8UFhr7SbGFt8LPHIal/nw==","signatures":[{"sig":"MEYCIQDJ9BO91VHFKQbhRkSliQA4VBuvtbQkPLT8/F+qA3WWowIhANojavIkTB3TWVxaO0bLxJWk3q/rG7//qfPJCcgvUMV/","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227420,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxolACRA9TVsSAnZWagAANTAP/jhQh+ZE+DEaeEkDD/Fl\nIYFQlqoM5ItA+qe0rWnAcrRYjpBo9neSALcdxQJC827iMFvRp9IeSzXX6a7D\nUam8QWxW9McU/u9lGfZjxm+u1ChIU4wV0UiJRJx3D3pluUnQn8/7clXcb9Oi\nwwQCmcWSaEwhIvpF6wsBCYrNkpA1IP5AIJhsfttt0Mq6hOn3peWTDvFqObi6\nRTZzDGYgKtmnPtOyiRVMHLnjm9alSj2UVQCEYhyHG/+IXI5UD19vK2PWMhF+\nvK1KZ8xdJ/sV8oXuPsJAywt/8HAKO5QhYxIQqUMQezr1Iu3b3mj+Q6XIDcce\nIYHFo+8IoHrASfeT8B9Tq6Lw44XtD3Vedd0ZlLqZPeItHxA8Mh1CTV2gwbp6\nLZHCB3SkM1k0fgBjTAesGZdL0mjeMXCM6lJbLZTn1u8GHjRULp9ZjfFl+hva\ngnandqIn4RnATHvDU3Ytk/qm8ptl/g48tzyt4thXSgQssDXv7QjEWToBUzzi\nhC9DTldSWI+g4o8SnLcSu6xChUGiMo/UJSQTnAJ1RDrFnpjt5qVG3ri/U90d\n5jaQI/XZlvQZ2WJ1rJMNloa4MMEOQF75BNKVN9qTz60hisoL4jnDcjcP8xv9\nIf8gvESL1pHDMoH6Lvp0QSwRUFTgOHQA9wrwOnMJT/biEkaB/VAVY4eUivCT\nXMye\r\n=GD/7\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"caa16a16064f887618b5a44b5bf6083815de3137","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T02:56:51.298Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.10-renovate-internal-patch-caa16a16064f887618b5a44b5bf6083815de3137_1640401216024_0.48411627072908714","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.11-renovate-internal-patch-3f32dea281fca9fa5cde6b25188b70498659fd5c":{"name":"@balena/jellyfish-test-harness","version":"9.0.11-renovate-internal-patch-3f32dea281fca9fa5cde6b25188b70498659fd5c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.11-renovate-internal-patch-3f32dea281fca9fa5cde6b25188b70498659fd5c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4eab5b2871a047809d9f0e96ca5d409a91548dfd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.11-renovate-internal-patch-3f32dea281fca9fa5cde6b25188b70498659fd5c.tgz","fileCount":28,"integrity":"sha512-rl3mG1C1qW79RzTTKZas+nj5edbpHwwYdjG1N7kZ8NilRrIaXgBhWOcK+npYhGpwtOp0pYypr+V5+C6clbu8zw==","signatures":[{"sig":"MEUCIQDQxuFp/JUZ83tVInpbNPF/80B3M6zfp2jsn/jKP9UwGAIgcDjjQ9/ZlIXOJQ6JOzVkqGmXXDDjsgDNlod2GYap1SQ=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227448,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxoq4CRA9TVsSAnZWagAAHmgP/RHtjH5FTa5yNQy/1Rxv\nGb2noD7iLe9ZKabwA2OWog4niIWRNBnNnditntcROsZlM0v7JkWD6trPZ/KS\nmnBMlh71ds6Bst2pXZgUQLARI6pt6lUY22apoHymaS8DDzS/PJGHCm+lr5FT\nlpuNRSj+ZisKjNLSCs3O9so6Z7Ag0w8WZvIQGcqvXWmM73m+b0Or0yry4kdz\nozZt7Q6eznChAMdOJKZtewLKGXxbFcTOgQcKsGaT2/bZ042rmclsimN9zoMS\nH++MjIVT1/e2rNvlhCpiDVyPetAQpE0fDfqdUVfPDCMs+uNZYx7jya88yOuN\nwr/qOLYATtRxpK7P0n18WnHJF7xzlGCzNGQSpXpUe4VAoJNUa9BMTWu0mSu2\nnzt1yQEcXQI65xI2+nbuTyYu5QIJFvhM+o0sUOORPTVm2tYJD/tET/wZDvoV\naiPGAzr62SkSGwAIOqJ21PR8xH3NlXUkAK1phJxZ4c47AiC2aZv37kB591u/\nN81cKSNsxiZL8djdFCMNn5LkI41zvS3Jedg8/bgvNHpD917bPCVN1tcr2Nxu\naamJJlzZ6M4PbNaWiyIdmXhaVl+ZWMJS4cufFLjdEk/xvh06evD9CQ9M0bhZ\n1GmtqTT7eicpzLNAruEPQfJk67w973KI7JrGO3soRbGAxsn7Tdugd5I99IvP\nmE1M\r\n=PNA0\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3f32dea281fca9fa5cde6b25188b70498659fd5c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T03:01:22.262Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.11-renovate-internal-patch-3f32dea281fca9fa5cde6b25188b70498659fd5c_1640401592573_0.7120215717706448","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.11":{"name":"@balena/jellyfish-test-harness","version":"9.0.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"286ecfa7b56c8eb5538c3683d508c0f5c400c954","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.11.tgz","fileCount":28,"integrity":"sha512-vVljbIdChWqcYu/X10n2HTuMmpVpdvBq9eN1g2ElgeYCCTdq7YE7SGTqkEG4uG8NF4DWFdOE2uIjeeF66QJMDw==","signatures":[{"sig":"MEUCIQDhs3UVwCdAUrGGI1a7j5Cs6wu1nDaNcBd3rIadsma5PQIgMLYz+PNgSRoH+l8xqgAZTlAaq1ZOQIRPYe0kSHLxM24=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227383,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxovDCRA9TVsSAnZWagAAJtwP/jA1l0idFtTYf45LVSyp\n7pDswP+hLxOiWSQMVbdyH4ywtXV8fvz0ES13SInXdXP1gOzqT0R6ek04nwhQ\nr1POoYnwacZgJLtFcFmtB6hMKgZdMfnVWAESYSCFxWGO+mEYbCbDCA/RrJ2o\noJXWDcYsFTt286YCDhFUV7M5GyNAOPTjO06u8gaxb6LR8Q7sbC3fFFqpPyx1\n6nmgO1SX7M48tyNRs2EmtdXHpiJXsnHrQdJsdvLAxZZgr61XUoXVDwN8r26C\nSjMmzq8IgK5T6hRJhkfEEjnU1xERZfRqTVdy4PF85Ny7aiRpRqp+jsdphbF3\n7ms5Dhwvg6rtRrH+91GfFXCJE8NhYNjK0DEVoHWgFV23sCq0GIjgEMh2aQzK\nm9JSIiWtDiC0UFc9Zl91Q/bOSUgX5aMlRaeNkM8lRx6ahpImCeSaX/romDEj\njaT+uS97SzpiPv3kSErF6CCxpATiSmp1fAkL2TLJ++oscXz6dWI8n/kPE2sL\n+k1tU/iRA/gDz9dcnTcA8gHZ+Fc7Y9Kd+oTazapJaglTTXMYfCb8JF9v8LtJ\nWXRha0PV6ni68A1DbsQUlYmp4m7ac5TmtyD2jEGQBBm2unHyOvFOTflkfZrI\nK8P/4Q01t/lVvqUthiE3kiixcMAZ+OUUvgzu7kZHJqD98grqIN0P1zhYDASB\nHzG5\r\n=4OwK\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0825c7df5d20b535ed0890f3c0737a4ad536eedf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T03:08:38.722Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.3","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.21","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.11_1640401859515_0.8255521889857353","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.12-renovate-internal-patch-9bc8ea229e86d6a2d8b17c77df2ca6c76602d478":{"name":"@balena/jellyfish-test-harness","version":"9.0.12-renovate-internal-patch-9bc8ea229e86d6a2d8b17c77df2ca6c76602d478","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.12-renovate-internal-patch-9bc8ea229e86d6a2d8b17c77df2ca6c76602d478","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"45326a7e7a736eba8d89c5e55c3564269a3abcb8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.12-renovate-internal-patch-9bc8ea229e86d6a2d8b17c77df2ca6c76602d478.tgz","fileCount":28,"integrity":"sha512-aF7JNlMvokBeOo2mhoLBdQYOtase651/JZQ5WKXdzzMa9+xggnk1rIy6nRN1AVDXZaYxwpa4eTZSUrr2IZ6ZMA==","signatures":[{"sig":"MEQCIH8ZTcQcAF3ty3TLJHyoKDC9xIaC2kbPmo5rCnn1nImtAiBOm6Ys+VmpneUeWKhrsSNN6HzVcm3YZd1dObZpNa9YTQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227522,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxqDgCRA9TVsSAnZWagAADFMQAJ1NGVbLV1ruezIctaE6\nbrwU62f74kquf8MKNVfitOTonos2NAn13XVL7wdifhqK5JUEwiPJMKW65fMC\nPxXBcBsAVkZKxTR2r5fRbZ4FSQOmUFLc82dSTqUQlX8zKEitNMQUBb7J/kXW\n2IEeNFOWV0EwfnBuYLjZkLtvvf0JmaMjU3SCYjX2WWGo8hXFBqdF+IF9vHcg\nhC5YYlcnEPWJAIyy5jXFD5sJpHyJEzi7Rmx+YmAftkzLk25vuvfMWDBS7g/A\nJfdwpD4X6/tVMQ3ZRA/iFKqAvXPcpJeXMjGKiQmuTW6W+jnwwi+wYldJkaxk\nRA88ZYRGwXMMsstqOymXJvIC5PJCNSrBPOUWc9ClGU1QoQGING4Npo0ttEll\nGsJfGuBQt8znXJlbRnklxbCUYKS58U4m8e/jd1QhuCia4JShzEXOyv3F48j6\n/ZpnB0BezlznBsDONiUoyaojHKuMd2lsn3RI/B0jG8EkeoCVGnTLGDL5qL+F\nuqtfdywTBXjsLY0tFqJvIvVANmRxeXzEGEVfNwyVXW3Dps0SHBOVfT3lvdLE\nTa5oz9EC8X68GU6CUnqh/MTIcA4GsZDdjV0mWolzUd7uQiKUGtvh0PGP2rHV\nTCsPPHX1L8j+v9iZ1GbNXv+CpAI3U3kaG6rQb91BHv8jXs5X2jdgnfw9DmCe\neeja\r\n=Vec/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9bc8ea229e86d6a2d8b17c77df2ca6c76602d478","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T04:36:41.551Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.4","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.23","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.12-renovate-internal-patch-9bc8ea229e86d6a2d8b17c77df2ca6c76602d478_1640407264728_0.18868197703394118","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.0.12":{"name":"@balena/jellyfish-test-harness","version":"9.0.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.0.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"39222ed5d0477b4f473f70421166c775654697cb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.0.12.tgz","fileCount":28,"integrity":"sha512-VRmr8syhDm8MBe5X1yJM8hD69CHBqBKhIsi2BUfqxBeUe3K3hvy94w+Glomjmt3OO4eZfs90FBvZun+85/MJYA==","signatures":[{"sig":"MEUCIAH9pEt8yiGNd4Mymisf/pIv3wFj5jpS1R0/GJaw4bg9AiEA1Nq4Kc5lLJGYJlYYySOOSN1B66IOf7jxh7kM4GAQtAI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227457,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhxqHcCRA9TVsSAnZWagAAnIcQAINe16IGMgmPXwYxn/VB\ndd6b7oF7QJhgIDVqAHOdDgvWGk912QVSQCgvUIvJcbqTAm+KbOJmiGl688kH\nIWKmP4YgjJjULw7JxCdwmdbcNyNbRJ5hZHS0WCTAWz1Our+K5PFzb+4OjLkk\nw4pxGGcNO8J04x+61tY/3B9pfPDflgdUyUnBESNwbexJjrGS7Nyoaa7tqjV4\ndFJIstHOgeh9p8NEQwK9NActxcaDSIiVIzXyf+AZ3kg2fIbsJG1u2b9gALLN\nFwuKM6Ut4c0PtddxdL+4vzXV931cwEWF0CqWvSXUC5eELZ1TTUo5bLmQLhVH\ni1tcxvmbvEr+1v1QWTnrIRh+G1Q6a961PA06N+MM8jzVKD0Dpm0SWXOWVHWM\n40ZXTALNsAUrk2iMMucSlSeD9Kh43Zjb5BbUtlmAWxDVsIQXCgP2YNOSQily\n6PixDxPBuGoRXJbNahHk5TFMwtsiF7ddy6RXII4I0omNLlrwOur8rl7HPA8h\n8FcYxvIkufBcfHpBpJtmAgXsDJja2dRJt/gV+He1WxOv1RbRdDd7JZYK+Ch5\nm4XHiMsQq3ZTwBY9IgXlzmMtCojXX4xoLOhDo8C4sx6OKu9h7MZpg6+bjlLv\nVgnGdxMP9Gy9jtLsiWAnMPBw1kjDQo911B78Moa0x6aGGPe7+ovp8mQbVYqX\nx91A\r\n=pzVb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"ab07d6775e2cb842b56068ebb24b07719e2ab5fd","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-25T04:43:20.635Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.4","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.23","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.0.12_1640407516179_0.0033988416911243657","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.0-export-setup-options-a3a534ab7f4aaf83fb05706208426c9eb51ba2cf":{"name":"@balena/jellyfish-test-harness","version":"9.1.0-export-setup-options-a3a534ab7f4aaf83fb05706208426c9eb51ba2cf","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.0-export-setup-options-a3a534ab7f4aaf83fb05706208426c9eb51ba2cf","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81fe978f602672c159581e6ac6b4a141533ce60d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.0-export-setup-options-a3a534ab7f4aaf83fb05706208426c9eb51ba2cf.tgz","fileCount":28,"integrity":"sha512-u7sMzLyycAfToKH0wzLilS4awgQhIH8EnPbqaqEDMAPHPY3Ab3mRVriqKl44A2zo/2jimDc1C6WIJ+MBInOicw==","signatures":[{"sig":"MEQCIAH0WAHH+2jXLIgiA7pNYAIke/p3zHL4RlXEDjT67tKIAiB/mrZX84vIIojWCXrN4zlsJVJ1ZADozhuYF6ua5KL3ww==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227625,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhyb/SCRA9TVsSAnZWagAATMYP/AsI8GpKTGmb3qcZU14r\n1COGrhCWaBv/Ww1SV0E76p6Q+Enk2rMlfQBiQxqWYssy64sQPZLMOWM6bkmz\nC/4z+1gEUbb+iuhXM4ieDogq04uFKoRNK6tu44HMWi9JkY085S4hAmf1eZfk\nSpnZCL1ys77fusvlPgU3NQRWt/z0bniUf7WrCLVY5L3AZgE+onfUg3noSklb\nP4/RxSG0jKof6DSpktxM/ENQhk9i7NMQul+i06z6/A3OobwR5wIgZKTWQbbx\npd84HfvQ0WtWa4GHFZRDr7mFT3BNl7Ib/NcD4+jB2bNxuYHEFwKT9sEUU975\nD13gSOFUsIO3iRLeZGpUB/X/MrItd9el0HTXfE1adcT1x4ogjY8Bv0Fdiipo\nsYqclW5lM7Spfj6cTI6acVww1fimdJtJ90Sgm1diSdeWdk+NThaYQIkdObVj\niAPChp48TvbUOABydpCL/AwRxbXyoagNZFoUO648LEBi+ij3miLjmZG9P+gm\nEvX06um4pD9FKbPzfpDl4hI7mvoWZrggFaBSW9aCievTxeJ2nZ6DLPu/hxtC\nuu3wFveNoZs8kL16VSCblWi4u738tBhKCWiRhEMcIeRAEf+zwKd/7LhFWpEf\ngPxs1+YeDIzYKecv8HVekkh6UZlDzlzXs+M7a0Qy82z5OhKlnp05iuiUe+DX\nCR0C\r\n=YSZY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a3a534ab7f4aaf83fb05706208426c9eb51ba2cf","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-27T13:26:48.005Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.4","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.23","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.0-export-setup-options-a3a534ab7f4aaf83fb05706208426c9eb51ba2cf_1640611794546_0.40128069952188894","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.0":{"name":"@balena/jellyfish-test-harness","version":"9.1.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b5a79e213ddb90d7048687d04f9f3ca9f84e3d48","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.0.tgz","fileCount":28,"integrity":"sha512-khoAPCDLJE05jHVRnufQFiY6vXF09N0xD22EsYMM+zS/q4vUMgiAK6Xvd1ueqxpxB1s0St3r/t5BF8W/Ky+cdQ==","signatures":[{"sig":"MEQCIHrR0QYKQ94gucEcZeIfe+aBOXWWDCnu0IED3FTp8IOmAiAfC4MMsi1X7H2qRokFvcgs5+zuqJd1vy9hZuCDG5d7lQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227563,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhycCJCRA9TVsSAnZWagAAhWcP/2+2hudQ68gnq1W0JUND\nvVjsk9dU9SEnclD/U5IPg12p/bPHlRTQi5kvKfHWKPW6m6HkZdTin96zey5L\n47U3PURKZkbpai6Fyq6dCNBHKRMGc1rDW3m+3TpUh3AHhASYQy9+Vb80VIP9\nflOVLhGcNZRmFq9aHU6SmFuj5tUWIc2Bs2VYY7g66cPIg9nA/x0mBl8Bh4YF\nKONFFuT9o/WufUcnQ1SFr4ZlWAzdx9awNz/aNoBdJNmKg4sV3GfEKHh1Vv6S\nV2tsyAvcsWf/1QiCqkraXI+JeuKsS+0SkHn7XoY6Uh1J1ycU6kzD71ZI07mN\nDlSbQT6f+6q85c8w8RF4vJg0bMrxhffr7pba18nRXO4l7UgOCRbAzmbRHmDR\n2v9jdZ9LrKb4XGkJuyKsBh2gGPEd+Azd7UcOX8Uho7INknz4iG8IXPxUfJOi\nxvR5Rk8X8Yl+sSZ7+/CUOrtO2VuPGMRdYiC85wtz51PFstnoV00JBFNKXasX\nOtqHxujSwrlbVIkOHvTJikr8Cfmh0zZJVgb7u+pJEW5df6j/bkU/4W5U+u+4\nze0jrlxBah0RJDgwlI0aKJHsMhrfgVCd22cy/1wNJPEcXH3fwGG0QDiwO3vE\nis+jNI93J/y395xopR6UvwljvvS5TYp3cvrRijc/0bTMfMivBQLrmzAYPhId\nbLxs\r\n=zczD\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"1698234ca3feff7955db99af0ff860214dea193a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2021-12-27T13:30:58.976Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^10.2.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.2.4","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.23","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.0.3","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.4","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.0_1640611977079_0.39405264585954436","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.1-renovate-external-non-major-d0354deb0b8c6de50e65d4c191afaaea539b5525":{"name":"@balena/jellyfish-test-harness","version":"9.1.1-renovate-external-non-major-d0354deb0b8c6de50e65d4c191afaaea539b5525","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.1-renovate-external-non-major-d0354deb0b8c6de50e65d4c191afaaea539b5525","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6e3b883e7a84684955b828b82f262aeaa6f1065a","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.1-renovate-external-non-major-d0354deb0b8c6de50e65d4c191afaaea539b5525.tgz","fileCount":28,"integrity":"sha512-phDJ/kQz9iDY9j0sO7NSCanUzdp6mvdE8ExQIGzI66QNK4MbAKewulsb+n5QCC2wu2ooAjkXw5ZoDjkCi5a6vg==","signatures":[{"sig":"MEQCIEkjF879sEOjzMXeDkTpOwdNcoawLXYfLw11RCHsSRbQAiBLjvDM61/F7cRMNvXlba6E34P0uQ7po6l+4gleaUl9UA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226724,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0oFKCRA9TVsSAnZWagAApZMP/jV7veCX5uVgic3XJjOe\nqva9MhmSltSQQUwue1NYu0657NGfLCDbY7vbuukx73jW+G4Ikn0ruMtGF1bq\n8VdlFMETjkNm8sBX2a+Z6lkY+kiDjPFicCgpqSuqueYByPEWU+bkNe6wnlI7\nruuZ3lbCwH2FMQv4dY6XNb36UXxOHKeNKo/uevpB2AIP32g5N74OpGpk+FSB\nc3Naycc27jGtIRfvNcdm/jZZ3BZtT+XA+dZ/R6/IgfRBLI+EHLxieqlCtdwU\nZCTFV2Uf2abbSByDD65O0Cm0kJlR40UFCWh/t4l2AtSaHeNIQdjCWnvhoD6j\nVcRDl+cGBpjJSdLyVheYyYdUD0z4wCe4WvfPZsX9CPUWS/E0O2Km57uB4xkO\nuaA8ZdmF9gRvkjCuPHr3nzmyOm/ej8E3064L3ds96tD6CdytwwRzOfty1y3Y\nMcE8hhm4SRwUWDHJ4aoHDo0VQ3rANnnAATX5JX2NnvOuoFWiFq1CGh1iTKiF\niALWTmpPeXTJLbc3V+tKLlApAtHj2nuRLnMmc3XLnU+ydVQDH0KB3T71P8XI\no81/FDQGiLW6VeJy2fuC4tzAUCk/ZW/9OSifMNcypa0utCmIdNhA7TfYh7pf\naDXePSjTGjODkOwUcB1pFg5VZR9B/vlV9fEvFknf0Zh9HU1nsLTrJXqnlt7J\nyVda\r\n=PGTO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d0354deb0b8c6de50e65d4c191afaaea539b5525","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T04:50:32.387Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.4.8","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.23","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.1-renovate-external-non-major-d0354deb0b8c6de50e65d4c191afaaea539b5525_1641185610099_0.8347153505498379","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.1":{"name":"@balena/jellyfish-test-harness","version":"9.1.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e73f4d699616b9014bc92d81fb0702e9680fc2fb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.1.tgz","fileCount":28,"integrity":"sha512-37F6fjZpUQDHMuf8kd7Xn6piaPl3XG8XVGmZ/1pqTHIL1dgs8893oG43Dvi1qc2PlXUmMIOxn4aQ+8If2kzdgg==","signatures":[{"sig":"MEUCIFjVttwbrudCKOok4tcXhG4dY9meU9YNSNzdlbs1c5p6AiEA6u4lfAhCjp2b48e+tUgFhU8LtuJoU6Wd3sQAePVVuLc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226655,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0oH9CRA9TVsSAnZWagAAQMEQAJ6Hwy15epjwmSnTSrZs\nVujxQhZqFSBFI4IJ4lpyHpjz2fCADeB3mSOW5rcLGiFUu6wa9ozhjLDiqK/2\nCprLKgBSMZF7yfRe9171sieKWi0okCoHJ6yy1/IvsTGoBFcd0kjVfHs9C8mb\njVLDi2q016qX19/a34KFSd36kG+7/ulu2j6naf7jdFJ8RELWbO4DhCIENt/J\n51pr/PILrxk9BmXGTPahJs78U0UWRQ/h+AwqqtyYVvyv0QHqkFCQMJ4s3lLF\nIS5A0eA8v9wWjWuA6fE1zHI6gCtP9A0O59pkLKBv7v4fYwB892EFXOV/XoeI\nsdtvnHQdEj82eiscHcWHADPRfo5tcH0RhejkZfs/R4LuAZrfXGkN2q71tFNd\nHcfxWu0qh5cKbtyyQYHZud3fIzYNZdWYThnRTfrd5BibfqyF65859A2F/BvL\niiF+K7TjVpd3ziPLjKptY3xrasTSw4EkCDjdD13TWN8jJrn9ey5zd/dRpgbE\noxOeeV4CbwfWedKtdjPp8HtNCc/YWucxgBUOFIX4xV5H/vGbELElkV5QRifE\ndsY6B+FRYdfkXmp9h14+GEe85i5ACNn/AM9isVaXCEw8SmFbwUGYAkZQyRJd\nNZ7ABsVrpys78CSw28/Kr2mSasboy0N5MOHM7p8KkfWb4hEw59K2cDySnDdO\n1Kj2\r\n=Q0Q4\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a9defbb3052c09bece5ddb8ad5d1df795ba45020","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T04:54:35.177Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.3","@balena/jellyfish-sync":"^6.2.3","@balena/jellyfish-queue":"^2.4.8","@balena/jellyfish-logger":"^4.0.7","@balena/jellyfish-worker":"^10.1.23","@balena/jellyfish-environment":"^6.0.5","@balena/jellyfish-plugin-base":"^2.2.11"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.1_1641185788854_0.8159607864286091","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.2-renovate-internal-patch-fb7397ca93727f4e48034ff52825e0a8f297dbd0":{"name":"@balena/jellyfish-test-harness","version":"9.1.2-renovate-internal-patch-fb7397ca93727f4e48034ff52825e0a8f297dbd0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.2-renovate-internal-patch-fb7397ca93727f4e48034ff52825e0a8f297dbd0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8bba0488ed2831823d2d23522867fa1858de7415","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.2-renovate-internal-patch-fb7397ca93727f4e48034ff52825e0a8f297dbd0.tgz","fileCount":28,"integrity":"sha512-nGRAYdmPEFneAO9RjXKltavSmEXJhazWiAb9q2hRxW2+ATubHMAAvUK1xR8vTOCtjAguVvC9OVX0ngRgLABjHA==","signatures":[{"sig":"MEQCIE7nXq8F/HIWkN066wzhBd9isJu0MSVDO/YZaBE4QcwBAiACw+YeADv3GhDNAxmD+CTk2mIIqATFjKnq+kdE2EFKMQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226794,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0oOCCRA9TVsSAnZWagAA5KoP/0u1MfQuXSYiUjrP3IJ7\nLesdP4CAAhKSsCe3WHQvyNxVf/HRvSKReDQAI0c6v1ROzbrSbuqQaXdsl2pc\nX+G4MsYGBZfAnD10TnFD6cQbCdGb4wG85JryXlLPsWki8C/Ln0jv2jsO9LPZ\ns9GJhaPl9FdGJeTS8GQCo0TnTfjA/zwCN2Voiq22Fp2+mygSIi0JdvhdIkOV\n/QKvCLLpAeqFunM2aniu+q4AkRcd1nGhctRrmE7Yl3O62gS5pZjaKD5PRcPb\nQe00XU4ZxYwqfE16efzm8k5gP1VlHcJ4TpBLgCoKLUD22RthiLS9S2qsnRM/\nhfi1/SsvXHk4tJ7xEijEzOJ8Tj8ST6SCsnpK74Ul8yecMv8ckL4Gj2iXzgEh\nWZdGiykaU/glPIA2I59Buxx3zoRMONP097jWF173JifkKdpHvqLudoHc6X4y\nJG3xugLmSfbeJg1sKTJATCsSbbJd23ax3YZ5Ol5A8+60umgDQ5DLmIJLhktU\njm8jpVd3TjwPrQAp+kkVaVNoj8OkxlmGiaAtKxBYwIJdGHaXGIVhVeF2zX5X\nlDJLTZ7cc2HKzqYzDwOMzunln4KL01ENno2IhDOqACBAicxz/PUc3M9V+XyC\n02fI+7sTYkW5SxlEnDxCXa53mG9qxj/H4kq2mylDGBW5E356+BuGwc1C/vTE\nDfGE\r\n=W00F\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb7397ca93727f4e48034ff52825e0a8f297dbd0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T04:59:48.752Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.3","@balena/jellyfish-sync":"^6.2.8","@balena/jellyfish-queue":"^2.4.8","@balena/jellyfish-logger":"^4.0.10","@balena/jellyfish-worker":"^10.1.24","@balena/jellyfish-environment":"^6.0.6","@balena/jellyfish-plugin-base":"^2.2.15"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.2-renovate-internal-patch-fb7397ca93727f4e48034ff52825e0a8f297dbd0_1641186178562_0.5507355582749918","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.2":{"name":"@balena/jellyfish-test-harness","version":"9.1.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2307ca9ccd8e647eb97be691c76245331d211055","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.2.tgz","fileCount":28,"integrity":"sha512-afK1GYRoUkoGJPvovPw8mwQ0qx3+HpBvQMfX+o9lkXWcMa79DDwh1Xy8i/8Cg/ygw9eWgFGD2DQ/ndwIcgXphg==","signatures":[{"sig":"MEUCIAhQIm8r624zdR2GtB4DXpKvNkV4XdjJlmT13vwR7chIAiEAiaZtwJF+FUVxmecrAVvzP/9rcKmpnJZ1YJtXF1McjJU=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226729,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0oRfCRA9TVsSAnZWagAAU0UQAJX0NuWOb7QhLoMLVuYq\nluBWaMwWGipMnEpciGJz0KrhxlV3E5KXRCvkmjfAkrVfPiRfEz6bb0vjUQDH\nraGME34THiZUC1g+KWLMG8Iu6tqvZA7cyzC9LzhjKpe5p0mmH+HfaYbKBGDG\nvViNVk39GITnxVJMdI+1TYaKPWY6A0OvGY2p8AKWpwkburw4SbGr6E8IOjkg\n1gXsZMzy53sKCHBJcF15kNkJBYlZ4yvqFDY+TaJ6NINFh+k9PCQAbS66FjOE\nN6ZKjLlG0K4eEwXmgP7brpFKejerCrbUSqB4YuWCOOZMkiDH40yPdlC6SfXo\niwn0qBuU+ww1uq1GNPOhtw/ta1iQPZharSRrv0ijBzrLkujzd66YnGnfnpeT\nUAPtMW23mO4QZ6uWc7Oa7JK728po5NTz0gZMTszpNPfFyNWAEQb97lnj9/W7\n9cedvf2L8ok5iyd1F2loMk3DYjTkjUAp1+qU96DJHKyNZ7H/2j0wcJAZYqfW\nqWxlZ2xYbLRX5jBtkipLmzr5uNA39KBI35Tid2ylGPorDsJ4S9Fg148My1tP\nVnrAiiDk33d77ujYeHY2y0n4N7s5GDhOuYdChDi5wAYLqZyvDSCLxHBuu5kh\nYHsvMxbG4KDAlcX4nUsh1uCbXH+4vTTR4/zypq3akZ8P5Zb4ZpKhzBsASjTD\nQ8aA\r\n=igcA\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9573f5b58673862d3f35bc755f87547e2afa95c2","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T05:04:10.565Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.3","@balena/jellyfish-sync":"^6.2.8","@balena/jellyfish-queue":"^2.4.8","@balena/jellyfish-logger":"^4.0.10","@balena/jellyfish-worker":"^10.1.24","@balena/jellyfish-environment":"^6.0.6","@balena/jellyfish-plugin-base":"^2.2.15"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.2_1641186399602_0.36419033204711093","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.3-renovate-internal-patch-4674864b794b4ae75a14f12d16cc8239a3d608af":{"name":"@balena/jellyfish-test-harness","version":"9.1.3-renovate-internal-patch-4674864b794b4ae75a14f12d16cc8239a3d608af","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.3-renovate-internal-patch-4674864b794b4ae75a14f12d16cc8239a3d608af","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"455e96c13a6dbfd99b83419a8b68c7edbbcc0df0","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.3-renovate-internal-patch-4674864b794b4ae75a14f12d16cc8239a3d608af.tgz","fileCount":28,"integrity":"sha512-fGli0MDJHVerDABG7KuUmrgwj7dhdelojdrD6i9fT2lkg8fhFp0lVKGxmKZ8+2lTVbA1E93d2rdaywdYJiNimw==","signatures":[{"sig":"MEQCIBQq5CqpflOteCpfxHNAHzk9/vHQUJg8oochNtsewctPAiAwQETrWSYlD7Sw+ZPYgFoip5NGqUQLnUx/JrRVh5B5QQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226868,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0um2CRA9TVsSAnZWagAAYS0P/3g/yAa/AziYvx3Cn8El\nqMw3R8O3Gt96Iy1lWkCvOYcN87k98ShkXldhXvh5lINcKyb8e1/7RZLCdTe7\nvxJwnYnJtYknxPZD0o+E/4Ghci5zp7CPXqqK19ygAI4BKd+3pMpuhDRL8T4j\nBFoTTMQH9blGDuuOtAQvY16laKHbbzZzpMcVQnJ6gdZAd7KJe40nva1o1dLf\nTmYXrWWpr4o0AeMxGOUxGjqGVdK2ZJyCsmYUKqYNWNvKb2VyPTZTVdZpL7oH\n+xPtSPbu13ictIC0KfOlsNWzE1tRh16aANqr5JFzGCg9FDJL7w4LmegYQMem\n5KivaufgfMEy3T3iYLiKZJ18Cmn6LkzaEAeJRyVRDQTiSEMLn+8TkSF8vPpv\nzyfh9h2MmTSqTLM2JTRo/hqgKQgYhTI94FJQahlVvGU/sN8aCmlvXzpl3MP7\ndVoeD2J5JwEL9cC3woSsA+aD7Bl38ffUvpwoL1iY2oeKYb1B1ydeFpZTJhHc\np4sAtT+/d+JYqNI/sUfTWG/Y6p43FUuMzyDt+lit5ZjHWypPTkEtVROVPdsY\nJtCP60dQyzlAZ4qJW4uLcJ6cohDQt71q+ob6v2U4Ydg9RpICWDRS2NVDIBHk\nyJ6hBSQ46ty2IhTm7M9EGYlFRDctALS+lsmYShFlrYcZWq06eXDP1Yhz8AMI\nYy8B\r\n=Ukrz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4674864b794b4ae75a14f12d16cc8239a3d608af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T12:14:36.237Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.5","@balena/jellyfish-sync":"^6.2.10","@balena/jellyfish-queue":"^2.4.8","@balena/jellyfish-logger":"^4.0.11","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.18"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.3-renovate-internal-patch-4674864b794b4ae75a14f12d16cc8239a3d608af_1641212341832_0.8757691227503368","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.3":{"name":"@balena/jellyfish-test-harness","version":"9.1.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"8a7ef54ec00192b85e8d118d94ddbc1d469cb28c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.3.tgz","fileCount":28,"integrity":"sha512-KPS+FmB5G2jvhFFT/dCZccCLckWscdDk/oaS0lbqPL1L4g3owqcadUz6AwAHcwDNG5/1qI7KdIzIJXUsD1h21g==","signatures":[{"sig":"MEUCIQDoszrii4I5gH3vANaGoSD4l3R4Nm5LARuV/pawOg4ZWAIgGeccXlgz7NaH6zeyKvIrLBXJzwiteqw26kl9ejGajdo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226803,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0urJCRA9TVsSAnZWagAAFWQP/RMyl16yJHBM985cpfGB\nMff7h2fxOClC2YHgcdZ9nC4tW67t44iXCyZZYofGTjDbfW/PzjBEe8lpcrjt\nIMWnP6p4nS2KypJoPBX1/FbahonrxQ8xFWt6Z9Sjlj1FjScWI59fOxgfgXfw\n6WiKK+6JDuo++VcFfsPV8Q0rJYz5aW1lHyqMop96OyRu29eTwLW3WIQU0xUO\nH7/R9ULXNPOtjZKaqlvRHKwBor7DjoFvsPxiThSbIGiNn9szHwQpOxgJAIif\n9dqcf60G2vgxzGXVcNbd3T84QDK/wVq88byof0Q1zB0d/NL/QLrZKBT7L2FR\n0IZbcVTsSaQJ9RI0Z5s0Xg6ZRxkpQWg3LKTbz9uTW3OVibYmx7ouWdRXJHbw\n8d0COPDKc51yI375Ghld92P9xvVHroRG1GjGF6Bd6N4aqdrCPNpNoyZpfI9s\nfIxFB6V/sm+ZiGmkmbfyzBFr1ET8+AsiIww05VlIyJRT5cBmzsjfa2IODBHx\n/U8xNzA1ni2JsIczKiev0jtoblGKCmv0idz241I8SePzTFsE3114NIOgzbMm\n5wqF1NiSbeDod5sT70ktSS3+AaY9cniAucg5UN46dYxTHY5QhIwWelQGVgIe\n90CEf6IOq4eNUcZXDzjucEOPR2AbcR33fWphbLJq4MGgM15qpvx67OVrLMA9\nrfoH\r\n=zLE9\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"eb2ba026f17c96d6ef232cab573ef98b1f5a05e6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T12:20:58.572Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.5","@balena/jellyfish-sync":"^6.2.10","@balena/jellyfish-queue":"^2.4.8","@balena/jellyfish-logger":"^4.0.11","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.18"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.3_1641212617402_0.08726196922832341","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.4-renovate-internal-patch-dc4ac14b062a965e9488af46c1c059a85434fd23":{"name":"@balena/jellyfish-test-harness","version":"9.1.4-renovate-internal-patch-dc4ac14b062a965e9488af46c1c059a85434fd23","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.4-renovate-internal-patch-dc4ac14b062a965e9488af46c1c059a85434fd23","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b259a38ebffd0675d4e904b9b242bc5ec831173c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.4-renovate-internal-patch-dc4ac14b062a965e9488af46c1c059a85434fd23.tgz","fileCount":28,"integrity":"sha512-T55/hGTl5IT8LMLmqYmUG68bGoK3iSdADhvFLlkfz7ochDYUJS5gXPG+EzWUrs1tTD6mYV6RuXwvtZUHW7uNBg==","signatures":[{"sig":"MEUCIHwRybIXbc5IBpgzy11lBA2kR3mrJVINZrSRfHthw+XoAiEAnsaUxWmCrfa7Jo7xmt7M2+g9E2+DluBb780aU7A+598=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226941,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0xNFCRA9TVsSAnZWagAA17wQAJEANxHsrbAA5ZzKckko\nhycDIt8EcjhyfKolg4ak8SXlVGJDN3zfxHDkNzzrwKrwIryWchGYU9ZiuPC/\nbcPeEHxjAQpzEO9pdx/ZpgWzNQdpw6ZNYHsPi/VrJoKcJsOtLLgkd+3jk8tG\npupB5k7o+am1KuXHUR+j8HitnyUwRpAyHpsIqALkacDsqEGLLy9P8yd/5RfS\nwCqlex9f5+9ZtR83RqXycN9neDCckpDF5Cfy96ms7H9LBvI0ADIbbg9ByD6/\nvm4J2ko4oQgY94Rn6ziXrlovzuEqHbdnnqXkXGMJVPlKoOUkplMJXUlExxcj\nEGXivZQu28XFGoQPU/6KBz3MV0i74VOS/H5wVMa/qzIdhWV88+h5jgAs7VCZ\nc0vc7QWu7YaZN/Xv8mZxtZpuxbYdqkLc/xTrqvhi84ZFv0gJRZ6GI2QOCBo3\nC2FDBvMe6qZHuBlr1n86tmc5FcIGCI+CUPJkUm5/pLpXGzxQ27bnRgtRK1FX\nXHh2f3qtOdPm5LPqqRXUZEz7wghnKrmc5RF3GG+8511syX1MDobj3I2MNBiY\n7XhpsbothJ9Avcm+ixdKn+0acTEuNvlq1tklgXgO83HM1NXpmY9f9Atky5P2\nrv+sPo9vs7DfnQ1Gsm21GW7bXd3g7AgHJsMF/ATNvLjVm/33C58X6Z1pAipn\nY1PV\r\n=1GnL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dc4ac14b062a965e9488af46c1c059a85434fd23","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T15:12:58.734Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.5","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.9","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.4-renovate-internal-patch-dc4ac14b062a965e9488af46c1c059a85434fd23_1641222981555_0.8684110033462376","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.4":{"name":"@balena/jellyfish-test-harness","version":"9.1.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"a922f114dd27a188b1f1e7e32431115257f01423","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.4.tgz","fileCount":28,"integrity":"sha512-Ovfrqt8GVILrJCjSD96WMIbKgFNKCjcP7qYRjDvbfGCxJFTmqENayPbtHX02ObIFXWAaeGSzv+qmQTJIErZceg==","signatures":[{"sig":"MEUCIQDRqW0DymmDDzfzIY5Zg1X+twGDRhgW6Te8ypybNg1stgIgd3s2vShI4SrQSviLRgS2IsBMaiMSzsXjOdjZau5sTJE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226876,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0xQaCRA9TVsSAnZWagAApMMP/R6DSfgy46POkO4WGCG5\n7quLGQwmlHLlnrEhRYWYnrwX056xolvbRhVInIjFbuFUeeFsPEEM1PopFN48\nP5MNCmtRba2cLpj43f25lkEg+ExWSI6r5KPyD04dnGOp4f5a207ThHf8yT3h\nyNHIUGXe6Sw2E/XSDmco0Og94XmtX/l84qqz7WtFq3pZ8c+iXHr1TlYaG8HN\nbhWUJ3jBW1nV02kFKqPH9euX0yvq9juGuly6eKop5i1WoiFnwRtLoXOU1bxC\npffKX/NOfALmwJ1No/zrtQVSpK6yJihO6xqPhcHjW6hCMltHSboH11GvWXJI\nNZtGk2+tZmMCREtAtas1MhJGYLld+dAmnR9wqBxm94FIbadqCxv7xetQ1mYr\n9rTmzqrxVc54cnT1Bz02iyhKCzmc1SWH0z1dJBQNJ1JT+BTTfkA5sOszRPdG\nT7K8IKV1WZgaxc2mBtCprkB2X76T40coOEQN7clcf74DOXAGk1nGKAlrZ6Ui\nH2ggFYwJqEiYovXw9VifFGE7RxEgxqjl/NHL6Z0TDfhfIIK4DC+Gb/jXPk7e\nKjsWCu6erAUfB2J8X8RFmtpnIIsynsuJi96khAuDOC8qjiQGJpaPuJvEdpbZ\ng0hj7BTJbPVuTKDmYQSmdQwhYrWW4Mpfi5dUchEiJcNiqm/7UDwePafr/fmH\nQLlf\r\n=ro5d\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8bb3b9c04ac68cb1376ccee4734f891c06c3b608","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T15:17:35.133Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.5","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.9","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.4_1641223194509_0.7502363469000815","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.5-renovate-internal-patch-b0051bf15e09134597bb0d187d308b3ddbef62d3":{"name":"@balena/jellyfish-test-harness","version":"9.1.5-renovate-internal-patch-b0051bf15e09134597bb0d187d308b3ddbef62d3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.5-renovate-internal-patch-b0051bf15e09134597bb0d187d308b3ddbef62d3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"3734cecdc9e61dcd2c658efeb3da218e1184d279","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.5-renovate-internal-patch-b0051bf15e09134597bb0d187d308b3ddbef62d3.tgz","fileCount":28,"integrity":"sha512-hhxH+tS4oXgzijH6DTQ0e3Rbc8jL6DOA9vMW56MBVygu79hausnIVYBkDMvQjBrLBT/u8gbwtE73GnawiXU/jQ==","signatures":[{"sig":"MEYCIQCpcSVjtTL1QbNbY9eWB2plRsbXUo0gdq85MD2bRmKAGwIhAKiJxT7jsADUOUNt0uRpZyaHbeftLwmDy/cTSucTb3jm","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227044,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0xU7CRA9TVsSAnZWagAAbNAP/2V24SkYjwXk5VpEE7gE\nDGtaaLLe1jEo9NtheCSZ09SB5/4kfXAGpfbFMtHnq+RCVgzDs7Pxue4Dpi0P\n0bx3YcT6Nuw7w6ZX/7dMyMSYFmVv4XLWsbOiWyss5pCYVr33TndCE174Su//\nuA4So2g8PPVtM4XtTDxOsNEQHjYnacOVyVcF6CfCSoH7mJnEsyedEyAXO/Rk\nz/Kxh7RYxf3WbpCiWYbX1YxW7LussmSXJU/jnUR8EqFxu62wMgjDPtY6ipB0\njeGY2sLD0v+EjCIm3cOzU6VIOh4XgxONMOsxYEbK9VLcccQFthbNF4la+SGY\nPaEChPHq8XdYuwFFjPlt8ZVHN39nPTLEmeq+bfbLTwoOFmOICKuk0cEB9c93\nUvTPjovfLfR2CCVtKFMYuTsK/uLv9O0wRWTW3N3Kq5bhuVF6XzqQ2xZqBr/B\nWpQJGggKPBaNLLje+zka9LNQ9XKp6V34o82PA9Apqg2CQD+OOC3HtTB6rc7x\nvmoBnac8THRkdwT/k9vUYYC0P9Gk5NvZCiDwkfCVt/PDJHmD+GNJbpYQD6BH\nju87OLKtDjw/f298XWVM2CIzXNDPcGzfO+RkWI9L3ZVYCiibKIKpco/6pGw7\ncvtOwHm3H+Rc9OV+ji8N52Uf7kSIxOwDvGIBAZ9F0Luqf5aIrwVla1lUgKUS\nj6Cc\r\n=hHHY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b0051bf15e09134597bb0d187d308b3ddbef62d3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T15:19:57.133Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.9","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.5-renovate-internal-patch-b0051bf15e09134597bb0d187d308b3ddbef62d3_1641223482988_0.003740661730421868","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.5":{"name":"@balena/jellyfish-test-harness","version":"9.1.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f654237014dffa0b701a449e6e1b401dcbea5457","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.5.tgz","fileCount":28,"integrity":"sha512-/GumZfT22kKy9bGg7TgjCy0uowzi5b8RXCaNd9ydTyuBAGp7UtTFsjPS6IT0FgXye5rZ97MdqwNlbUpl6X2ijg==","signatures":[{"sig":"MEUCIQDbXRYmIrxMNlV1Snp8SRIJ47emAW8sEo3FIQ+ocWa5nAIgOwNOgF7G4QJ4x7F59yqeQUs2df5yvzZFltTHHI5RUKA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226979,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0xZQCRA9TVsSAnZWagAAa70P/11GvWYn5lFAcs4I/Rvi\n+2QS/MXszkEpwsmHt+pEo6NKdgeycouepr6Qf9IeUEqAMtbo/ni6bZKn2/oP\nqv8cokJmq2cTSa7xYU720wsSU6iadefGmww/1iHmoMz0ef5Vtry4p70iOSgr\ncKgITrkCdjlW+20kn67cVkwwemqxZOxaX10bdwu8bQ1ceXEXIBNyDAHUnGae\nPj6qhO3FN/WcOdoAP2ZreFl/jH2NAXVSj8dJBizPeQJUp10Ti9seszAZs0Hb\n2YDQ1DnkTzP6DmoS40ywa2KPd5VmqCAp9pdNAwveJOb1q8DHur5qFG/lDVyv\nvKjoLjqjuJi6ecxoDi3GcqP578FEL/XdZJn5Bdqnmz9wRcJ6hWn8pBdP7VRz\nIYQE5e173s1K+Bd1fU5+J55cEEkdcuA8ukX0Gk8EH4MapxiUHpMitgh8K016\nCrzPslNHjtiiXhMGazd88I200Ief1QjpmKrRlq2BwnlagiSOR0qaIXzlp6DJ\nSGvzvm4EZGCLvH60A9vm9JFRdpZI4zwWjnOZPHFoUkCFyFw4QhVCVQC1U5eR\nzby+/s/uPET+ryYBl+tVgldFSPY5LgFurpAMRIgO1IR6yiNguxO9JzE89L0h\nm1IAAsy7adWELqDyWPX/9ISGkQR0c84TQE7J12V2Q6s2Pdcitfvmjv8dOX6H\nzngN\r\n=ZXU3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9dd7ff80c0217ec9fa949bf35fa75d19690b338c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T15:27:21.505Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.9","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.5_1641223760089_0.6253040537997712","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.6-renovate-internal-patch-4793eeddffce58e3acb63be4f2bd3da012a9165a":{"name":"@balena/jellyfish-test-harness","version":"9.1.6-renovate-internal-patch-4793eeddffce58e3acb63be4f2bd3da012a9165a","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.6-renovate-internal-patch-4793eeddffce58e3acb63be4f2bd3da012a9165a","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"01b4be3d0cd7a6959ee80146c6becc52425b192f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.6-renovate-internal-patch-4793eeddffce58e3acb63be4f2bd3da012a9165a.tgz","fileCount":28,"integrity":"sha512-9NVS6O/GGh6csdPoJo3/hEJomCzQ2Qe6iveqsvlX6MQ9VJXjDesCdQTgRLlh996DzvCg3CiZU0iGQGlP8pWPsg==","signatures":[{"sig":"MEUCIAGN5qfXTN+CmJdyPvn40KIGYugKp59yRpmdDAjEQE4QAiEAseAGaNwJb7zBl4+Hyp8UubFpUNcTgWFsLgSKc026XMI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227149,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0z6eCRA9TVsSAnZWagAAKysP/ii/Qn+DgRInOGfh0DP7\nOHf4ApZeFgyFKJ0R3t3vvxl20XEtX5ZYkMY1Dh0s7sWwPrwk0gLGZky6fsE7\nC3DnOp7Z3ml3mEhlVDJ6woVyQSFLGMDjvjQUncw9aiUxMDZiD0NxQhXILnGQ\nrZHyGbZEf4eYKLkfqVkIpydu/cc0s5tlnaxS106fkaPoh0rihmqZL98T75RT\nc42PL//Qkc7h/uOVEwvPmgFXfURr7VcbZWb2CyjoOkvRcNVBowS40IgszvjS\nJB/g2rpg940CiYPZ1H7zhtEA3kNtQ7A3wak2E8pQSx8YCrYHU5g98qCuDeFs\nYWfMHmumbwFbhm35xiYDyq4KH+WXmJDA56nCx8joDkapZlmFEPTOyMCb7QoM\nHG8TCShmpsrscI+Rdr/OFx4GKV+o4hFmdcxEjXeH4+9+tHnn8+eczOom+I8s\nV76KYbKxktV8tpbbbST7o/J25JtX3AZT6xEdwFHDprFtUv8gJa1N6nl8s74g\n/vsEWTuQ4qtsXeyYIcHG6HSc4sFHwnKiZYCnhhAy9GuxgnDqpBNAQD5bx5ah\nbpFIdwaXIjrUCe25c9ox/nsiTHDcbpnQt0zeZci9HztLTu6PPZamMdrz6DsI\nWkghIx3nCQbSICoFnmBXtmLejJSW4muooWX/ry2Pj6Y//2+bJ1gnV8gjuw9G\nGAva\r\n=glYP\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4793eeddffce58e3acb63be4f2bd3da012a9165a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T18:18:43.772Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.6-renovate-internal-patch-4793eeddffce58e3acb63be4f2bd3da012a9165a_1641234078380_0.28766182954814146","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.6":{"name":"@balena/jellyfish-test-harness","version":"9.1.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ce2840a682ab4657898e01b9fe4b98d629bbd245","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.6.tgz","fileCount":28,"integrity":"sha512-AIAq4jXH/WVwqeSjzU6bcwQFBxLuEcKVCyW3xbpRv4Dc36S3tJR38rCLhBvsXOHMo9vwrfzDx3qJZQv3YfDKHQ==","signatures":[{"sig":"MEUCIQC0A/B6dNCOJUU2NxOFTDpWK3aBjSklb0WxxFefTT4/cwIgeClMZY0PUmmcpmyReKGsC9MA2qU3W5BAb7kc68W7UpE=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227084,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0z+XCRA9TVsSAnZWagAAG8AP/1lmcqC6TEXX24G6wXbl\nq5kpmjCdfhO18lXdT9ypFbYqiNDxkjP7m9MDStB09JgjX55hYL/QiiwKGhM4\nurUYZcd1SrLBVzfjcZ0x5fwUfE1ZqffFN4aKO4kgio56eBfJOtWD2XdC49Y9\nUCApTQX6dgw7Ng/9nPuWMAhVYwPFi/vnM776ssaiZMF5HookrHCXGVyzWZ2u\nZzb70bgjvwTgrVOdyDjKt5eEjX1QBpAqPoh4U0pj1YbyxP/Ay97ufEomxzm9\nt7FjRBFFiHYMDUrcPj52im+YX7iivCvxdzCH0hcG3C0cjvybDUJdAQ4cZxVj\n0zr9ESiO+4A0bynjOMOkY7rSZczo7NEzTCHF01QN8jZuLKk5fJy/xJCJl/Ib\n0Eurpf7TEwWlB0DO1m4OOIIbh8Wzd9uIQqfbcZitAf6yEkRnK4bnGP/rW0hj\nMc+YqmjcrB5QJR826oyyFSvE8qps3VxnBIbkfm8+27Jjh5Nat1iXcVBt1Ro2\ni0Beb3CDhpMDpmLFnfKlHrVqwWNmWByUJuq1J7WwTz9QlpXKoLe5nrhC5VcG\n942k2dBgQO/j/zElA5Wy0/dcTUuH7DNAMuaOtvENBN0E7UlTqpnqaNVXCGqi\nZy/u1TjTH63TFmawC1Vwj2bwiKS3GlgrQGLegs4w39a4eCOdBAuNNCWhKm3W\nxKb2\r\n=TsJ2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4c195658c75630e84355296d85b0af31e0b1d393","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-03T18:23:17.938Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.6_1641234327696_0.5383100623747665","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.7-joshbwlng-fix-combinatorics-import-80d8c684f0e9b84b59b64b93023fa2a2353137af":{"name":"@balena/jellyfish-test-harness","version":"9.1.7-joshbwlng-fix-combinatorics-import-80d8c684f0e9b84b59b64b93023fa2a2353137af","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.7-joshbwlng-fix-combinatorics-import-80d8c684f0e9b84b59b64b93023fa2a2353137af","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"4896ddab9fd4f8fbc6835f70bc819694cbec8729","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.7-joshbwlng-fix-combinatorics-import-80d8c684f0e9b84b59b64b93023fa2a2353137af.tgz","fileCount":28,"integrity":"sha512-HaHWR62V6k3nC/rsYFazHIQ7Iv5j2jsZujQLT6oLb5/5R2nkfmRklT1sNOVfqUxQD/1bHK5NuBmk5hV3+66zZQ==","signatures":[{"sig":"MEQCIHLZd4j4CJrdJ77Lo7+WNMIcI+/e8f4kBU/qQjuSil9DAiBcV9gnJPLkJTT/jj1p40xqBa5kuIwJZ9xWUGStwZsb8Q==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226999,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh0/1fCRA9TVsSAnZWagAA/rsP/29Id6e0HxOpG4ZI3Amd\nJvDbN6XkTJIJE6FZRTsWV3lr/uqtZF2keimvC/q2ijteJkbjG0crQs4ZYvZs\nTV+R3QNr0J7e0WWHIK/f5L6jNIgENieJpNFi9QpLczZVQnQoI9ILY7kqHcwx\nTksNvd7K7DFd/knIqgtxkrROKHS3VjFIV0PztOsdaPhqX6CaFXE/PgYxyRdj\nIUfoJHoBAu5SAcAlSzikfZIoZ2L4ffdGqTlhBq76OWuh2qafaNF+9SrW2ksh\nltNC4w6xdMMtQDdT3F1nTJDC0/Ahx7/LlUPHB69Co5l5t6Qn9ep9DdhbSypu\nnQucyXI/SZb+mJygBwfFAMxaLcHcqVLYdU94tLK6luQA8wWRW3Z1QP+wRbnL\neu1itfxnUX5P9jDZtvInQokFfOJMZyd6/6XMfjxno4USGk3ZjsXouE6DEEuh\nFdvIik7FQUaLEYPekSgY2A+1pU4CRLHSWVRBbHRDZJux6LEn+HULTsoRRApy\n8UvSYnUQOC0n5t8aFS/exWKg8myV0IENZFaaDF3nEpWxzAl8qd36y7P1yatU\n846qyigJW70aVGHjSQij5W1OvBO/Y/OAt3k9BY2MXGN65eWk1nsSjUwh9OeX\nsnlAOrcfEZQflWKHWUoCmcbmGmoWh4BeWASdz8xTpRZ9HG5sOnsexIgbSlnp\nyqqH\r\n=t7ul\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"80d8c684f0e9b84b59b64b93023fa2a2353137af","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-04T07:51:53.167Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.7-joshbwlng-fix-combinatorics-import-80d8c684f0e9b84b59b64b93023fa2a2353137af_1641282911483_0.24552873130960595","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.7-joshbwlng-fix-combinatorics-import-4c3a4f102ba6efb94a469f79faeae83bc1c644e3":{"name":"@balena/jellyfish-test-harness","version":"9.1.7-joshbwlng-fix-combinatorics-import-4c3a4f102ba6efb94a469f79faeae83bc1c644e3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.7-joshbwlng-fix-combinatorics-import-4c3a4f102ba6efb94a469f79faeae83bc1c644e3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"81908854972048f89a74b8f2b11023a34140175c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.7-joshbwlng-fix-combinatorics-import-4c3a4f102ba6efb94a469f79faeae83bc1c644e3.tgz","fileCount":28,"integrity":"sha512-azVF1YjQJ3xLQWFP5TQl1zQJlxIA90AxLmhRz8Wi0k2CUMc/Jt3vbWaOeFE2JSc9RmTAi/oAwDfPK+vkRqMF1w==","signatures":[{"sig":"MEUCIB2qVsWH2Ur3NMJiixKXg7rxOEWwQw1hefWkpdadsWkaAiEAlPxHyF2F4UnYUnnw3h6OjePZBuihHAHdXXiVzQf3uig=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227904,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1AVeCRA9TVsSAnZWagAAqvkQAI1r22ev0uHwevQdecAn\nh3pn1M8IgeqZx3WieMeQtmfR+6vSx+aPKTKkau9GPHwaA2y26zpTbEbkBf2p\nx/7gvWrtLQPS3osdU5l5tWZt2rBiHOtjnBVNi4q0toepLYk6RfAlrKaWHZBh\nxUz3FF2jQDlo8vD5FawhfO10OeoCbKrVJ/pk0g0kdSN1loDc8fSFkC72/s9P\nPbOtih/5xJb/P/UCuGD5MoiRmSzi8coBXihqNV5QB65yqfyUnuoko8j0qPk/\nzgfzn9Co3GqwiXPTFK+FyFEw7oxrZucDVb5eV63xMBuihuHrBbQ2OUIE+Zep\ntaQtNKvQgNbP4ZjxsmH0Kb9b8MpYXaANB4ckg7etGZ3I/M/Oij50g2+H6XvV\ns42OkSyjILFKi2WDCqugiqj/virvIRmPZ1v22JtgZ4WXsT/BF1jZAahVUYO/\nSnVzDFVxy6mI7B3bP+x4TLCgeS06fhUNqc2kqZDakhRPdmxFSaud4YKC0SV8\nT2ZsudUvf67G9+9Si8koiwRsygJ1o+mpBWME8FYhwthZhnFTTDaxhdRH5Gpn\nEaRd4SQDxi9imcXETJlwlb2GqIwpNQd5p23BRxQ1D3bVkGeDNkh7eXtgPzAZ\nsp8qQMFRn3X90iIkLo+5Sj/cvAOKngGU9ZQfxQVOmwf7+TZxBVeOzeZsQC03\no49K\r\n=89t2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4c3a4f102ba6efb94a469f79faeae83bc1c644e3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-04T08:25:56.716Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.7-joshbwlng-fix-combinatorics-import-4c3a4f102ba6efb94a469f79faeae83bc1c644e3_1641284957960_0.23785478694625684","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.7":{"name":"@balena/jellyfish-test-harness","version":"9.1.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1170e750139f316e1c0e280de3223483d332cca1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.7.tgz","fileCount":28,"integrity":"sha512-315AXmBACF9cCrRmpZKrymsIvoKgcJiY/jYWp5CADZWdV6xCeYyxYot6EvDx+dQUgQxal56gbVsyKPfliv13AQ==","signatures":[{"sig":"MEUCIQCofVLt6SMGoAMWTMa/8I3hYQhloZM5y0OpAmQl0or8rQIgVBpxjeDo9Qh61oaXELuEyExXUkjI2PXI+XmZjYtBJGo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227828,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1Ae+CRA9TVsSAnZWagAA4L4P/3QkXHdHW+bwTZbSQNvw\n9Xk8xILe80D/8Aujs1eEQl56noi+FCGsanBhV8I6eLPxExWXMJ45TnT3cTAs\n+TXTmhg1POhiWs5rgVQb3bE43gXAVhN4YvJFu1fxdmEpKlxHRhEfZ++fMl2G\nIKi7b3Wv8DbvA4NU2TtlOxqkbB+N58I3DYHdg+Q9/XPqC6DrwuXHCuv76rDT\nUsZmd1SheYIaJNsGtwB8QlyJsQf3Q8h1y1bWiJy0/W3FB7+FsXcZBeIE3O5J\nctb7pZQlqIzd/LXTtEQmvwbStoMvFUu6gRBTaj6KIuMrcyKLatJ+hnKhRqVn\nU9g+mxCnKeHySPwyE9okxp93Qw59LPzRlPEqPb07OR0UGVZlgQtusXxGCX58\ni/CGoMeCrM+dB/xeZiVlt/2P65nj18bPWnXQmxeT8IjgWTDtPgfH+fm3xhyx\nj3a+TCujHWl+LIGQvcgIgUeovpPMDci6ZujFPlkHZXAdjzC8s7Sziwvi0aK1\nOWj0uVTHC3EcuRyXLpKNtoTDYLLF68qowrLXYzxIv5bV/axOi5a0Ik8vzNU8\nXXqRWcpdvjIEFn4MDjU1vcL+QAT6QMmqvr8RaefE1SRI3Wx6gj8D7j9JM7G+\nnY9yUXTvqqrJrRQlqqpF2WHw7pnXHR2Ca/oYI3MbgoRQdpyWEBlCGpvQYh9H\n0fW/\r\n=B76I\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"882f7fa4a8610374b77ffcdeabf56627e71fbf01","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-04T08:37:08.179Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.11","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.26","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.7_1641285566424_0.2113382900502272","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.8-renovate-internal-patch-5d295b9062295ae3ba97aa6e4767dc6599c017f7":{"name":"@balena/jellyfish-test-harness","version":"9.1.8-renovate-internal-patch-5d295b9062295ae3ba97aa6e4767dc6599c017f7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.8-renovate-internal-patch-5d295b9062295ae3ba97aa6e4767dc6599c017f7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0b2f45bcdae3b2bbe4b8e043675a5a512c2e20f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.8-renovate-internal-patch-5d295b9062295ae3ba97aa6e4767dc6599c017f7.tgz","fileCount":28,"integrity":"sha512-grgv3C7Tgv1rQxAfNHnLIasmKSHI0PYWtTwN4ynpLBgdJKSMr9FY+94F82WiPiUfXAthTWFhKu86SmcNTuPZVg==","signatures":[{"sig":"MEUCIQDfzJQZjdcswbPFWLv2liOOiDo+u0lzrzs81pgyCB6yBAIgQDa6+R31T0DqBOAA2wcP0po4sj0naSt6rVmkv6aOel4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227966,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1CfXCRA9TVsSAnZWagAAkakQAI5js3c2jvObIWpZkSLv\nQQZELktyzfvpczhPKTXN6WgPi49ZYD/OfG9KYya1G/DLDjpAXNtKVvVU6+Hn\npsz3xOzEfCh1fvGIF1w3lyhiODK++cmKhSesvSk1xxLeeO7g2OVd3A5s5t9Q\n6sITv8vVNgMWw9A73gonrfXqwYmfWfDUNHKK30CdwP2E2lX77+0czO+s5Yn7\nYxQzjWp01K7785V5MmyIlim4T37dNLoB4So+43DaHU80LdIVX+tG1yyBjO2G\nvj2M0xrNZihT4DO6UlVbRb89cmML38oGN8WCm2s1Pj2tfHO1eobsofVGR5VT\nY2auKZhya63K4hCvR9o2U0D7Ob2cIX0zrrWZabJe70dmEMg6/YBV+sCutcnw\nWoSt0Gr6zKd1ffk3znxE4IexcceCJ+uimF9n7jzoCJn6Kxmg8EPVzQfbDLOE\ntD6mMZlT/JdlVDQ8FVFaYiVcWPTmVuBlR+Z1muZgNKIv47xEhyth26cKOFzE\nojFpXc4rPnyTE22TABqOK6c/fIo0vG9E0oX5NQ9AAz6IZTXMCLFteAviWluD\nb3EB1N+b61sPVF3v2YcrFJpDxBSSHyxJy7tl6nhAlN8I27NvL3Byiamj7S/V\nOPfZaCpwuPXUa5WDiJJ2v7RrSxYynlSQnoV/sHXBpiYj9KO6mKJes+rkufXd\nTxXO\r\n=L43l\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5d295b9062295ae3ba97aa6e4767dc6599c017f7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-04T10:53:33.851Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.13","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.27","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.8-renovate-internal-patch-5d295b9062295ae3ba97aa6e4767dc6599c017f7_1641293782889_0.42029041224190045","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.8":{"name":"@balena/jellyfish-test-harness","version":"9.1.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"66fc2a3c0c7a2f68b71ee93b77c433d3674ffccb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.8.tgz","fileCount":28,"integrity":"sha512-0xszFYi0ZI1nkwFsuYfQJxnJX7eqoMzv84tRnPrNqjpuW1MjUxFkmpoI47eERtM+vQKPRKr+noKBbJtTHwA7qg==","signatures":[{"sig":"MEUCIBnGjwvDjzZ8mXWTiDgmmaYfRyvE8Y7TRBIg0qW22fVuAiEAyys+4qp4f1akThWdBEgjoIiXX+oqLxozzcDckfzjZpY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227901,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1Ci7CRA9TVsSAnZWagAAE2gQAKSoTLl38VzjvoP0bfht\nef9HFmEhVHwiL1zCLKII2i6nMx+TvyvxzLnXt0SkvyrZ22dySv+cBr9DGGKM\n2V+LjZCjLGt+JDpeZUkjdl1kZYvw66/e3GsK6iFBge2hEMcyqgZSfZErJ2Re\njt+ih0CrT1rmuPtpdIQym++hfalzrGOJjzKEpbJ0/0I4VieezpLD/T/NzeBU\nwcMfwNqFrO7YlXT/tMUpbyqMKX9vrz5/HYYD1X1bjVGCfc7MRqAr6Fe0ntn7\nSKEdvmQiJ16C5+A8XIdXZvYz2QuEi4INi83qLaXB/H4Cj+XRUnTE4o3kVnkF\nS7z6cl1B+2LUQzehiG6Xj22Gci3mZQvez/qWXkzHYDS45llmnsPCzKZJSWq1\nCraGa3QHCcLkVa3z0RnqOdfVJ9i8MwjJNbNORWQ3RSOOR6g+y1fqXZpvtY4N\nNcb32IhO6rm0wAsAdRPylC8bmEwEupAEEhAXMXZZVsViXaQXN0iNW8ujyy5m\n7FSRYw0d0J4n12183eLRrIfuay50E9MoCTMT4HwaVISrKuzzSmEkPJg7nX7R\n2GyT3rBrkjTIlmEByzLMUncKpuLEIJe++GsGziGONIQ8s1VSx8x48FR5ccyN\n+61F7OKcCGLLL5yqlRbmqPJ39nq/J9fRtk757RnUO/hKVFk+y50gamrl2K2y\nAT9S\r\n=wOGG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8451cadba97962540c8ad3a1338c00859d70ed8f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-04T10:58:14.249Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.13","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.27","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.8_1641294011223_0.5050782156043447","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.9-renovate-internal-patch-58ed8f3b55355485833646380a8a77a2e1cfb536":{"name":"@balena/jellyfish-test-harness","version":"9.1.9-renovate-internal-patch-58ed8f3b55355485833646380a8a77a2e1cfb536","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.9-renovate-internal-patch-58ed8f3b55355485833646380a8a77a2e1cfb536","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"faf0e56be0e7ab28367a3de0036d126163e015e8","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.9-renovate-internal-patch-58ed8f3b55355485833646380a8a77a2e1cfb536.tgz","fileCount":28,"integrity":"sha512-AQch9iyGv0b3MTTFnp2nY40uLl5vzV3l03ZGnLcIRfp0rqV2EnSFiJVSVVNJvGHXtxiB1TnX+RWbOhG1ZlAG9g==","signatures":[{"sig":"MEUCIQD0AZikGKpTwOhDPe1RqEdWAsugQlioVC+nXN0a4YmswQIgNOSvSpHlzwJrcleW8hTXkQlzxFp+SW+D+derfXO4H/g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228039,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1XC0CRA9TVsSAnZWagAA9AIP/jzJybnkuiDauDqjysFP\nC/S27i0kLNwHHluBivf5shyTyGljT87ZshK1vIBg59xV0tD154lfyxIpycHN\nNUZHNZkiAORZ+Ifpk4UUtN2Uq5nnOHXNBPv+CpbgJqepqYdmA/dWwZHLLzkO\njJJwrq0Kf42LO9fMl7rxxUTwjBcIQIzAgfQotfB1bEZdYNU9bih9R6FNGrMN\nZ1h9H1sKBatDQg66zIP4tjlDtKuWbbT1hlUDyfyyo9CKv6Yz+jjIHyHhKLai\nxER493IJknk3cg2BkV9lx/gf0v69ngpnodYEqkEg28rIBn2XlixNDopZOZQi\nORmZ9j2dc/JR0Q19D4m4LLDa8es7q12en1I/GjaINOELgEO53NgBJ9vEXgXh\nLkJNzPkPmQwbzoTxHVyQRUCs9jGV4bvnszcv9yDbHbenhq+Qa1L0FHNLY+8x\n+1IdUpEoDToZmvB5KcKxNSoB9j1IMr5PGpWRDoJcd3FBdltcUGEMPE8H8WzL\nvokaFHeIGVlcPebXXmJtmhpkVZFyxmMUL0kwPegqS/kX82lkLVJeaVQC4jZ+\n3S88Pmd3J4aXy/4v94xZx4h9rthuyrnEbltjLEc/dJdCAZbr1ZuEgFWquECx\n9/ZLmoQXR8Dldg0fDOZgONQeJIRL/fLAf2D0Uz8p83A6YJqmnXPDuaD8rESk\nxEY/\r\n=OcM5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"58ed8f3b55355485833646380a8a77a2e1cfb536","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-05T10:16:19.843Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.9-renovate-internal-patch-58ed8f3b55355485833646380a8a77a2e1cfb536_1641377972309_0.4697279054824446","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.9":{"name":"@balena/jellyfish-test-harness","version":"9.1.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"41ef35237e5b4c159a560e902a3f68d742cf60f7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.9.tgz","fileCount":28,"integrity":"sha512-8piBp3AKcbFkVlObSgDurEe8gUMH5rYvFoOvSodH6S/j+aM6TnmYs5+hUd1hC+UDoe2v14o/gKIj+6PmW54rAQ==","signatures":[{"sig":"MEUCIQD+CzSA9pmZiA361MNgVNz3TyJ9bLnZQvAnQaRbZDw+twIgHYDZwLdbgePnYez8r3udpr8o8oyMnQbfs/hsp11UZ1M=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227974,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1XG4CRA9TVsSAnZWagAA99wP/jxg93ddt8mIg3OfJBuh\nGB6HbmY/wSPye8hhhDc9Iz/lf5jODg93XJU40IDac2cFA+MccXoj7QuIv1zv\nYt8ezrDj2J39AIgsDGDqtnI9pyS4liNybsHdLRWyQc6SwkhdNA/34u+Mkzrk\np+RkPOoMocFh39VEcQnBPDkfY9nxBcHubNqYn+s3MdvuMjNPiT5jpsA4hLhb\nw8MkvTmOmVyCex5nH03FeK5zdNIXkNxFHXpx9BQ5Zti8HpGRT8bedPgw7Suz\nGZ31X7SkCS2WETVGhL8QEaamoBp+4SIi72ZliO2V+vB4S9py8MxDVeSQk6gu\nqXoWDXk2R8BNMgsXFfZvrgZqUu4lGK1AtPzLdR0LoJp2GwGbaTKw6Z4MhJGD\n5M8ui1NwNaQ51xjq5uZwD5eYAfVqi0ORXCsPBZcyrj/mrsUPOn48NOc2PmqB\nItCTOsKTnunnRCJ3Vc89TCEK9ay7LPJAVGulJgoC2v26AQmi2tt4TldcKmlp\nLFy0aPJHZad/6/wV7kZnsKrwgb9cuF3uiQUgaKvr9HjOzuXUEjDmCI85WsHt\nAY2g95a23iav2VoXf0pxn9QZm0zfUqKzuXxmMvof5yNCy0eZS1t21gS73C7/\n1w1/JWHR3U5HUZ5duLG8i0+RlXlClO2/dLMOuCPP/DxS5pz4JqmEe95kXXUB\nY9cS\r\n=yton\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2cc46eb20190770cbced5c2529611e52f0279383","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-05T10:21:26.301Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.9_1641378232165_0.7500553405617749","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.10-joshbwlng-fix-2b0730fbc7ee1de9de70785c43ac87a79e9698d3":{"name":"@balena/jellyfish-test-harness","version":"9.1.10-joshbwlng-fix-2b0730fbc7ee1de9de70785c43ac87a79e9698d3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.10-joshbwlng-fix-2b0730fbc7ee1de9de70785c43ac87a79e9698d3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"79a0e8ede242420b5d4d35446864b68a0cba9b90","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.10-joshbwlng-fix-2b0730fbc7ee1de9de70785c43ac87a79e9698d3.tgz","fileCount":28,"integrity":"sha512-6ccOkI8OgL26wz6CH2BVpsHjApLS8YR0Hs5oxXpSVW6iNON7t130svpc8yhpqizPCF5boyfnjfOlVoRVBrGxdA==","signatures":[{"sig":"MEUCIEe728234TEd4HHoesEW22orCzYWZslnWCbeI6cx1J5tAiEA3W74ZaMLonASBSFccVAnuy8zBatfiaachQKkLKPTnFk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228125,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1ls3CRA9TVsSAnZWagAAhRUP/2woIbiES7DXmAYVh3CI\nLX6QwXzzrsZxk8HWNxgDiWCqV+iJBpHNNuqfaGSnpKuehxaNJLkU4vTiOdPs\nosQYj0u2G+BcUIaLeSn6R1uyZu4El4p28aGbcgVYSxBnvxHU/H2EDHkEUReI\nm7VQ017xp+qjzigtKTdcSqOJniWrvp/yw4KcVSWXnyGo+faf4pJscSwqis6O\ngdW0ywVkXWSySDOiHjfp1sVymOv+C4LzU03ohUjVtqlv0DEXnka5GGHmxN7n\n5NKB+LwvH/7neEKRPb30kHs/+4iRwTTGCYBUEZn7Itn6MGG4aDJfqRhSvY80\nNcJIlmLD41sm78RGxtikSq1nCPqd6wAz+kyh4j4l7wg6qZPNAHksVeLn2Cf7\n5BEL5ht4EKeBpGyZI+19b84CjQeQyBdaJTINkVUDKNqjo36xRoOM9PTI7NWl\n0rAHElxkvfX1Nf95ahyEHfP33qIMOfotlRChkHMCBhe2niGaouDqJO6nPqY1\nDkESpkMfXr/yfQ3v1mWuPeOAlp4Y0GyXd+nm8GespYKy6Qstr0b+xL+qisNn\nQz5wfs1FCxK0IOMVE+OMSNdeC5L08eCSz1uOshiqKuWYMpwYRGu5Xt69HOLU\nt5rAPHxq32cko2q5fEFNHoJp6ZMARd61Dsk5EOQ/4c8c8Ceo8/Jk93UIGCyL\nAXYO\r\n=0f91\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"2b0730fbc7ee1de9de70785c43ac87a79e9698d3","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T02:56:59.478Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.10-joshbwlng-fix-2b0730fbc7ee1de9de70785c43ac87a79e9698d3_1641438006945_0.18069716794043766","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.10-joshbwlng-fix-69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d":{"name":"@balena/jellyfish-test-harness","version":"9.1.10-joshbwlng-fix-69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.10-joshbwlng-fix-69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"2dcdd8796a9f7f55c32e3f238ce95b0e7ba8e863","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.10-joshbwlng-fix-69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d.tgz","fileCount":28,"integrity":"sha512-QBGITMpPZvHD1YQHo2WGCVXolB2UDmn5BQ0Wg1jskLsA5eUIIdbuC2sIv6exjUumU9K6IZQQrpifum4758rnbw==","signatures":[{"sig":"MEUCIQDTsQHlwv32kzn33IUhfrsTMjWuissj64phMqGYXm1LPgIgXltRQApRr3iHXBeRMIMUXkaLF6II1iqByA+iBrxXUXI=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228342,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1m7ICRA9TVsSAnZWagAA2yUP/3jXR2Pjq5FJJ8yKuQ4h\nYg9WmjpW/vDXoiAqEV5+DPWaCGPY2GqCe3l9spx3r9u78agcKqDCwfx766fr\ni5YFkMi5fwM6ieNLhWPOhPIi+nHHyRF9h9bkyZ+srteeeD2bJL5Uu9eBDeUH\nvTb4gelYQGb38OphMVyPD1Mx+FY13R9bDxdU01a7+iGSbAoa7+lor2By1Jjj\nW1DRAL/X8xJoJJCZz1M0N16uaWOxNrW4tc35QSTYFhpxP+6mUzKS6rqQoDMM\nhmto+o7W7VZPMnt8ZVW7mVRqQmeMpmZWorl4l4pw4AF86TNvIpDvI+bJljso\n4UVmEkvfP+VnZ2l4DlBJ1SOo93YHcczaCMbAPwcWSCK9tRvTWvIqfIjhunQ/\naer49LzGqMSzA6Ls17eIGxpPziqWf2pCb0ikALfdazedUFYvKbmGiyYLxmev\nFm1jgNG2vfhyyq/sKE7GTPj4JndmWxi121U56xBna+EtskXXQVdIJKgkC8Nk\ndSexcfkdsUWgPFPbgPpaOwqhlYT9Szd9qC3ngUA3HTcI6DLUuxNkq/ivRttR\nEq9qX7XsG+WQ3HilQJ4yKaV9KCDtchyrG7+FALKwQSFp4PUW3gB002uz99pX\niCEFqo2nfMMGyOOTdpXqG1aUfzkqj9GoVur5EtZHkQs5+tWsOUHBhcxiFPbl\noBPz\r\n=+YiG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T04:21:02.176Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.10-joshbwlng-fix-69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d_1641443016575_0.3485132932025288","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.10-joshbwlng-fix-fb703c718e1b5c11c91c9b1d074479575c61c3fe":{"name":"@balena/jellyfish-test-harness","version":"9.1.10-joshbwlng-fix-fb703c718e1b5c11c91c9b1d074479575c61c3fe","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.10-joshbwlng-fix-fb703c718e1b5c11c91c9b1d074479575c61c3fe","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d48a460f2fa52aca52a6323ca2fd894fe072b912","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.10-joshbwlng-fix-fb703c718e1b5c11c91c9b1d074479575c61c3fe.tgz","fileCount":28,"integrity":"sha512-4f5IsrQPjQsykJ9l58i4OtdOmCx428ZFYW8gjyKTOUitYLoK4faKZDf3LatDeCuylgwuTs4EV2xrZfqlZAZoog==","signatures":[{"sig":"MEUCIFKhiq6pJ+Qrtg/1qbvwfwSUDHGqAGNXPZh8q3hJWl6VAiEA6S0xuSaKOOLDnjmxJXmzCfHq+GGaOYxz9SiU5PyVCIM=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226549,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1nFYCRA9TVsSAnZWagAALxQP+QH660PIrpUIeFSfFCpd\n/dKDPdRivY1UfbG56NwExcZh4EHXik0J2Q36Jse1OUJ+6p0STmVK/E1CeG7T\nUZJ7dIjjmfNzoQuGxeJwIwi7w2IIoovrWSBBK1J9pnGnmyYrPcFOLbu9kZyR\ngH50znzEHBeqHIystglG1h5Q1UJM149QWgIJ6w8rdsvmItNBk0z8wwEEprWN\nyocyLdU4QlmIKF1/1aBBAFi3Lp/jboanDdnDFpXMJYPNJMiEPfR67WcZSzLe\nueHtcBaZqAF29UfWP7t5Vkz95kNDtkfuYViGbVSB589NJjN/9BTN6k+ooiiQ\nCHyihZqTnUcIlW0gTRy/tjmWIZs3V++p0A12KECmbN010ipIXtk0t2jCHwqG\n0zY63Lg8j3y4A7wY2+WJ16fXL2hMtH7gUiZ897RgjoYnQFhEdMkx85dDl0pC\nJz7AFC5nZydJ5QFBPXmyWRSLp8OWwO8DXBPiUC3UDHuVt9cZWpKr8jSa+Cf4\nscMhEdsrXLDa2DH/wBVx0kzbhvdyM6iwNllpk1TA/2DpcRrpQ/M/ShbS5IaW\nSi8m67d+oLvsdPtOlDuF8zjcBpOCGX0OuN0q6U5Nyn4ZdVHHW6dIMiAidY9H\nnMFwV6cRy56K+vwW+kZ12L3KA0z9/cTiioIhdqlcC4E6jGNogkcv++9a7k42\nX0oi\r\n=csBa\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"fb703c718e1b5c11c91c9b1d074479575c61c3fe","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T04:31:32.662Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.10-joshbwlng-fix-fb703c718e1b5c11c91c9b1d074479575c61c3fe_1641443672408_0.1376553887691283","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.10":{"name":"@balena/jellyfish-test-harness","version":"9.1.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"1063d451ee58eebad7d759c2755e05c49ce012df","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.10.tgz","fileCount":28,"integrity":"sha512-mzKOLgsj2UgAqFato4spmJRJ7BB1ONGthKSnz5gMAkPWhxxQ5yFyr1LhFQ7atkCDO3+TcxSOa4tgeB3raupjdg==","signatures":[{"sig":"MEUCIQDxAqfJWWaAvfME9i4cZWV9Ubju7+EenMF6tt7F4HEPawIgSu7hbz2D8z5mNqIZBnTUz4Cnjc6ObvJYswGg5okzB/Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226494,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1nKpCRA9TVsSAnZWagAAt6MQAJjHwHjWtv9CiXAvRDOf\n9Sl6H+CbC/+JcKArlg/vxPlCiX8kJRUZpn6S/2hC2qTWpNIXvauC+XVoYz7V\nEN4TD9BGLvCsXbDwXY42jQspQ2Q6rqEtPoKzmiZXB8k9KJiIAskpk4IbeIki\nMymt3IeBL6pj3dC8nzmo0dWgvCoKT8CPTwhB1CruI2bxgNKzbEBZAI4ilTwM\npPNH5EPnkZh9k6uKewHFFqbn0Yqc4FpwFKlzPZQppXkl4/5QbSSBVUpAFoHg\nnZqoaCwZAQuU2NUFvbT+mOEEIJVflW2OPVdK5ZvQZM0Ix6a1rC60e4VOAsSG\nftlIAvS6S2QFLD3CFMj1pJhHafKRxg/95FaSKspCAI/3G4iD8n8bzwTZ4Egx\nkahZBdQel7nl/xWcMGN13gb2UhqNVBElPHjPgPaleG7DoD8R5uKNwr34fe5d\nknl1mjJf5PupEnTM+9SlDuJoIFwetoqEEe0K5UuC83xYSCsI3nsWBVpHbM0q\nI5l3SH2kbCGA1rQyj/9SaQrup9YhKd5vRGd6AcWKSzEBs2pLILz+sVU1zLSA\n1wddfziiX4NrmurhwZTXt6CIjE9HgDgcBGyUWSiiXvPKjepHqeFcuu21ux1D\n7Eaq0EysWXj5vEtCPnDkW5SvWuwlV/zxk8i6UrFd3/Vvp4Pgt0WL6/6X++nN\n3AFp\r\n=fsow\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6fc76ffa2010b1cc75b8e70b759c77dcf9966f81","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T04:37:59.233Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.10_1641444009138_0.8046546283450706","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.11-joshbwlng-fix-2-d4d41f103392c629f557bbac34db37c40bf7dff1":{"name":"@balena/jellyfish-test-harness","version":"9.1.11-joshbwlng-fix-2-d4d41f103392c629f557bbac34db37c40bf7dff1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.11-joshbwlng-fix-2-d4d41f103392c629f557bbac34db37c40bf7dff1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6f95f42d45386dba2db439a139d14d4208969aa6","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.11-joshbwlng-fix-2-d4d41f103392c629f557bbac34db37c40bf7dff1.tgz","fileCount":28,"integrity":"sha512-a+OA3yNZsV9ZuFb4oX3OoNtpoz36WcwQ3MaZx7oXzjbZGUx1DRU/UgmgZs8HTkrKdYLikhDucz8i60vV9LPxEw==","signatures":[{"sig":"MEQCIHSeYtqwgyO5LYuhJJEz4bHUdF9QLPDssSXJYdP/wYhNAiAg27PMHkY2LuiYwCDvmBvfP1SjYgAxIWlqn+oq9lBF8w==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226378,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1oE8CRA9TVsSAnZWagAAiMkQAJwNR+QYzGfmRTAXjmYb\njOYpcnfuujJknS0/TBqxDs6kPmqZZX4HxjEwP3BXSjbk4Me82U1lVNAPEEze\nlXho2sRA/twGGqOeJfb0JeNllXwMm6h5WmjZX+V9MG4a/FHqdXRhjdAnhA+O\nhg9tIdQ+eKEfB1pfc/xDmxWXzuCwlAB4ekn2q6u8YhbqgDweH4uIvF6AotyW\nLJUer3RRuTuMSznLeDLyEEjcHow+FXvDuMTBU5DBmhYJ13j8yiHkIjfte/QX\nQFw4YQEYN05Py7bR7mbhcYkbGN0mGnR8fM0/L3S4xUGcXMdSevfIAdoeYPXk\nMk2ln4vvM1iDot1DWaDnoA5qlyW07ShewfTGcimCdngPnb/sTqWnOxugND45\n3ob5i+qGLVH42Pjat9WsSHY/e4W66BdXE0nT8f2legyvfLcs0R7otWv1xwJE\nnSr0owrDRYWdaepDsAk3KkqXf4cQ+1alRgvRKupSQ3ch3/LQdIsSuDPA8GKM\n9swROyUHQzevrXF6QBDjDA+dhx0lWd2nbKC4UqxJ6JIx7lpul13vNSVcOY9u\n+2MLph6LYyZqMNmsfzHgQpFTfgskkeAcmZL04wouRtaslGHLNtQ6CmajKOrw\nGc/Hk0Jwcd4DPq8ruq5C7XrfxC5PJTRLIx7WoWx7PrfesR+JaijQdikv7A8F\nDt7O\r\n=8mAz\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d4d41f103392c629f557bbac34db37c40bf7dff1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T05:39:14.108Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.11-joshbwlng-fix-2-d4d41f103392c629f557bbac34db37c40bf7dff1_1641447740146_0.054302786028063155","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.1.11":{"name":"@balena/jellyfish-test-harness","version":"9.1.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.1.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d8423deb3bfba9a73847e24793af2e9a5b705822","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.1.11.tgz","fileCount":28,"integrity":"sha512-ISEQC+Wn/qPnCrwhKzqWBEAJp3bOA5ZSUuJXJFsXo/ZcIZOsCq8tbA77ZMMaF5dn9IIGpFSf3cY/2iepLOmPbA==","signatures":[{"sig":"MEYCIQCufE2T2JJ4jewGcP4utghO63GQ4hXhyQaykg4r1hzB+wIhAKaIPSj2HPUEqwXS3PJwGRkde9zLBf+bzbZv5kjQXoq1","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226321,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1oHyCRA9TVsSAnZWagAAfGkQAKKPteiGIHDTcAxzkN83\naQyaq4LRlQZImMbdkgd0xJb1Z7hSwT8ssZ9CAPjHbqZLdB4DFmjDfMz1RfwQ\nI1RYShZFIftDZlVLqjUOBS/fCwkKZmhVQ190UZ2TBjff5iLmp7KuRGNwt/ZK\nPEHfQhe6SUWoJmOx2xz4HZwD+emk/NpTk3QIgovfw8gy2f2qfzx0kfgWXDYn\neaadXNgTHOBQcibHC9gpoqYXN8JzF+8udQHGgjDeSirxB0fw+gVdWZjYablx\nhdlJ1V/Z7u/SqF2OZqdj9EYsTiX8JLKXmnHWlBn5DuDd1v98BTi1qnByg2Xd\nwQk6xxLPx31P9qYtjBNNc44S755DE57JcRGqce1lQf5ci2tWqvg3WEJ2UPwI\n1DT19J5MNwkPQpaZZjeoHCZYSHuvhhWV6WqTOc+JKNVUZ20369Pbu98gbWHn\nIHwJ4MEBCNa8dU15x8dHkaiCUt4E2U5qONLVxCfckTtE0neu8WQZJqi3N3Hi\nMwZj2YH1BxsAcetmtTo2V09n/n7rEEUzyXb8CGNFLHm3qDsKUE5OVwwr6ZAA\nZ4p0LOX0SgzxoSXXBywM0O9BEp773UgwyVjMj+Mwiydp1OsUhl7rn3s4xrx/\noQCIvSAEqNL/4Fmm/1FCMDauEs5OdTDjKmNk7dr4WUMDOXQIz0bW+TFsKUsc\n+BY0\r\n=YIja\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"7e53acd929cc17838563a55f559522b2fef74066","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T05:43:31.581Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.1.11_1641447922723_0.23936985150633783","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.0-joshbwlng-export-test-context-d9b3bbcdf32dbc863254f9ba845d4b06e154223f":{"name":"@balena/jellyfish-test-harness","version":"9.2.0-joshbwlng-export-test-context-d9b3bbcdf32dbc863254f9ba845d4b06e154223f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.0-joshbwlng-export-test-context-d9b3bbcdf32dbc863254f9ba845d4b06e154223f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"0a464593c953162f94cdd7744615e0db6b6f61e7","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.0-joshbwlng-export-test-context-d9b3bbcdf32dbc863254f9ba845d4b06e154223f.tgz","fileCount":28,"integrity":"sha512-JTFouZGYY0HZw9rHY7m0s6behIDvkvqyXva8KYUyrJ0Z/O0BSjDhOqkASlRy5vhvYnYriS0VebhcBwWm75JkOQ==","signatures":[{"sig":"MEQCIDF+NinMwwme6jdzbnV01dCBUWVuep02wSL60bTlJxHPAiBxkNsw9ocQRtBkahjYg1XtRz4Htsd5ASzYSdo95QqYow==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226467,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1o7lCRA9TVsSAnZWagAA/cAP/1N7ZbLq4js3/3h7hoiB\nmB/GBaz0OIh+pbikI3+BaK55FGZNyvdzzlTKPflX36mJik2q4MpTqQzlBphE\nho9ZGzhh1BUio1nKdV06zvjlHGserT5M+dyJk6+nI60PQCAKtM2TkMA3WRF8\nJJyfzHmNQu/pVbRtgfVqY5WIwqMupf4HoDIAR1R5PAETlMRJzidySx4VCO0n\neoNkTkdO75vXMQ427j17eqcLQxqu9im4gJTfuBdG1Sv1w6OmcGq6SISLzmFa\nD9hZPmgg8jYSIXAbTWNhvMd/ulrDrRTXImqeLvYmmAfxiB+YiyhOoEk26f+d\n8KzrAdWmrX14HyDs3bAm5T6nGM0CWjSjuCPUWoHHBt2rJsHrSXFow2enqdaC\ns0wDGBd2Jst2HMgBinNDFESifcJ0EL4OcadYz9cZkjQMYaCBjMnPIv5ccJvl\nXE1pVRoJDxIniQ66Jq1EOrXpJWCskjERHdNZ8TR/OsFLl0IzbwUDkxrK77/v\nsSBYXZ4wshqpAQXLhYQTlFk1S/D2VVqrn8droRCFJGx4i8l8To5i25RhgiOn\n06FVxzZmvuoBBfO92dwjz/3UBrhLPQJYLjazCjcyh47X+k+EUxu0sx9Owlom\nRnDqTPzJ9tVKRQzeqJ/DFGZqmepp8MgJuk63jwGycHgAV54aISYx21HwG5AE\nljkZ\r\n=c998\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d9b3bbcdf32dbc863254f9ba845d4b06e154223f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T06:37:59.862Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.0-joshbwlng-export-test-context-d9b3bbcdf32dbc863254f9ba845d4b06e154223f_1641451237543_0.2663872272157719","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.0":{"name":"@balena/jellyfish-test-harness","version":"9.2.0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f619cd0f5b93a9d669264b59c2c9317a7ca2608e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.0.tgz","fileCount":28,"integrity":"sha512-EzTvdi3X/NVvFl/QrMGqqaxBB9Yt25jzqGTiUx/dwcEMzy0dOpC2a7ULMocnLBZyVic9pygOuVq1D2LR9ui1XA==","signatures":[{"sig":"MEUCIQDwdGrZqQv5C/tXxO1TrtaSrilToZPy/Spjdb8JpS9WUAIgBAHb1iB0T61PMQP8Ayy18BVapP5YVAV4X09Qr9eMxlk=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226396,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1o/iCRA9TVsSAnZWagAA5TkP/jOMz9H1uFSJ3wYsjiT0\nSAxsIgaPeEL8MLISMvGSo4IU6jq9ST+zdcSwa8gE9mX8G1TgnIIamin6XtYz\nQ+0maNCYtZqK79uvybI2ofbLtwN1f2iHMG6NKYxwBHqU6cCkiIrlPLzw0E3j\nwWqXAEhHHxLrbEKmvRkKDC1crklVjNx1pRTr+kqhp5fleCYFonKgV/HI8GOt\nTIfk0qqeaIq8WbeSlG1mcEOyexB+K6Re1DBkd0Hrb1fxK5w4bYQT7OAxOjFz\n3g+DhGGYU+Ld/6zU98nyjtDf1wdNSAecpfryj+foeL7Rks509Ng+kiL20JxO\nHta8/FGJUVPg0PFG0tcLJSDASqzWyHIsg4dx3czobw1WVCSvyzZM6Yy8Pugm\napsE9LfFbN9pN0aU0qkzZoLsVumUdsGsB9GrKsZqrJgWFTnjOvhi5VvEMMqV\n1+ZcixZVT2Q6EXw+5DoDI2k/KVuO+0mU9j3hVPdvMw1s7/cx5EVGHsnjwtZG\nrFeyfNn2UuYladQLNPgsVdkr+gSRbJwmdLq8dwO7IYADZMwvWoM+k0YROaEe\nABeBStNQlT279uUETxkzDiAX7IfSw/zWKQDckcZg8TuBy6lm2EZVsCRVKqFi\nieAATtGpS6QrbsiGya67u3Yt7nwj8WTRXlr7CMujCXF0bg+NHV5VjJIGtwL3\nM7V+\r\n=xfWC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"384329facccc7852909ed8ecd222fb6afe993fbb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T06:42:49.470Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.6","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.10","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.0_1641451490417_0.3542835639173205","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.1-renovate-internal-patch-5872f2d40ee9bc398e452fd6d715876fbb05dc72":{"name":"@balena/jellyfish-test-harness","version":"9.2.1-renovate-internal-patch-5872f2d40ee9bc398e452fd6d715876fbb05dc72","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.1-renovate-internal-patch-5872f2d40ee9bc398e452fd6d715876fbb05dc72","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"f8b99aa92354a28ee7205acc4739bad91b7705bd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.1-renovate-internal-patch-5872f2d40ee9bc398e452fd6d715876fbb05dc72.tgz","fileCount":28,"integrity":"sha512-sSnyO0f8E1mvQeA1ZiSSAHL9BxewU8NdKQivBKAhOd8oiAbu23cxEXoI/pxIrOgiaS0ApJ6/C95uPrJOSuxP/g==","signatures":[{"sig":"MEYCIQDtBkxHhgGpcJI0ZEmoBuDM39rFxW+jD8zme7B74XN+4wIhALnxHbPAXnVaX/fjDH0fUHXMkZE8YNDCMZ0WDH6D1+jA","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226534,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1t5dCRA9TVsSAnZWagAAhx4P/2kNRuPu3DmMh+LNXHHO\nVu+oHuwWFAiw5VmiB61f6nLH9VW84OrftLbhbiJV/Njvlyo78gCcqfdD0iP2\n3gAuqi8ey9NRcq7Z+8nYe5WOD70MsCHK1towJXI2gzpFfq73n96Xc518oM2/\noMTPjCT2oyp/ynFrYuU3H/pyKbd3ByX+dUCQPOQckrjXDlsQKDG99zP1cZe/\nQymxR+HuNaw43jlhWrIe+Knia/MHaQJaCB2W8Gzg5Jj7MJ+KRz/tI5HtSmkN\nn5ADvO6xyy6bEYrWYfROHXQmjTXEki7tc+tpswfpAov/IoqZvDQ39w6RxPJi\ngtaVnx/fpQNmk/soLk6VSrtS5ugNKSegbrPaYMutbo/cz1ajkE4Tm6+iECJ5\nobAQ5TfRWMPuybmcH4CSn4Hfvj+awhdpMwMUTiJdGJZ4s5AXXc0FR6Sn0tI8\n1hkUTmay6TXdcNuX0t214HdjgudNWla/EPfbzUBHw6ssx1HqVCyDu/jjzZTR\nhTcKIMCuocLM97KymHsyY0cUYEOFHaQslnyp6W8W2J8IDZVEBz7SRDqQxSN+\neF+kHWEptPeQU2e//nHW0MUzbMlKqYv4vdigFFMwJ+13klCmFU+h5RqDbUGa\nFR+KFxfPadaMLtYCWYHAKRkjgBja/wMvx3M8St8Bz/3ehbHHzowpf3IditVt\nHLIH\r\n=nWOi\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5872f2d40ee9bc398e452fd6d715876fbb05dc72","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T12:16:22.357Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.1-renovate-internal-patch-5872f2d40ee9bc398e452fd6d715876fbb05dc72_1641471581032_0.3827219925254082","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.1":{"name":"@balena/jellyfish-test-harness","version":"9.2.1","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.1","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"551701e273f6c969ebfbd0476975f1455286fc50","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.1.tgz","fileCount":28,"integrity":"sha512-utALDRVyQDfS6SIqEDpkdq8ErkzxwOsJxHNjoqSvhlj2EiB0sHSM/5tHgA9mXutJSqBXg5hhakpFvy58Z8aSrg==","signatures":[{"sig":"MEYCIQC2wmx9Np/zFQ5+0WnPUbQ9wvKWzGpsgGsOc7aeZFZZSQIhANA0eaO2l6uomk9fAXfKzl06W9AJNprkpofkA98X3D0o","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226469,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1t+xCRA9TVsSAnZWagAAHcgQAIVZ/CoHe7qY1JArn/Gr\nMcp1HIPPQlELpo8sUjyg5SW9eqnVhq9D69tm26uloXeyY1q5+zTXgxyQ5fnf\nnveaMvyEzlyewpLEEhDDjk+kieNlLpFb3Hz/iFEMBLw5xAWyXfwRn+ycbTKx\njCM7INobbvlqz7nbvARJcRQFb5zDwWPRYSqX4NAhFz96eicxPmezbgN3fPSp\n83Q58LgNHgq3Dco+ZmYIPMKBftRnfttkRjfA8Ikz2Vl1Y1Aq9lyDn+GimFhW\ntTfWk59xQhl2hIMshd8lQ6yf+WeNaGl/KC4qM5qNexf3Bv5f3xKxC68GkLPV\nMwSc+PGFQ+skcp8lFwSweBT/+i9G/wl/+tiKMTMPRjOUsyTrE7hAu9O2WlDM\nkRUku7JEv+JZD3BRn9HKPhqKna239aBpE+45fRFHOc9GMfNmIOVA3QixIqo4\ncHdkD7LsjNoIywRuLLLwhENlifJwCnrZ9QaDpj9tzMLcV6tmObD+f6hlX9mN\nC0LCCwvhzjxH+I1tnnpldsIIago3u2bAoMAvUxOIq9SFTeRAFDkDWglKbtpX\nCE0gV5Pj+jqb3+tz9A1V0flaAL9XPQGtFE6QA6iByqoLY6D+ZxYb/5yODZuK\nz+JRANzgf4Phya+e5ZN7y+xi1s2vrXE0nUt9p6xhhLbeZ5vniMlssVzV/bEv\nmcAI\r\n=RD/S\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3e2a5779a31145c0382e9266bcceb9915f4fb71b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-06T12:22:07.176Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.1_1641471921176_0.2729033820113811","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.2-joshbwlng-fix-3-848469ed4a6b3cdc2f3df7480806972be2773854":{"name":"@balena/jellyfish-test-harness","version":"9.2.2-joshbwlng-fix-3-848469ed4a6b3cdc2f3df7480806972be2773854","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.2-joshbwlng-fix-3-848469ed4a6b3cdc2f3df7480806972be2773854","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"e0a3a14540f92276352b6b8ad839784261214a84","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.2-joshbwlng-fix-3-848469ed4a6b3cdc2f3df7480806972be2773854.tgz","fileCount":28,"integrity":"sha512-Im5Yy4cKP1ePU8AdL3yCwPgYQuGnWTTwKOha5qujNE2WhkhVhC2ms/rS7R+fuz7uKDT4OoTYT9tktmLk4lq4Cw==","signatures":[{"sig":"MEQCIFgNPaL+kzz/EujmGdTpMEpYzQJytqQEFzUiDuZ3Ta5hAiBYpphMelWxLYK/Jy4EAYZPy17M7UqmtCoe5f1fNoBynQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227196,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh17CXCRA9TVsSAnZWagAA4JMP/33yNVIbQLVKBSwr44Md\nDi9Eq0pmyTioPyKM3t71MksDfhoA1PmQhJ/CK2j3w+RecBccsep/Bnujco7x\n1vcQroYDDY5kPaKNtXYwMk2Erm4TRYLO+E184F4jcUfwmeIFxWfqg0rgGkJz\nZYNWn4gZCDoIbab2vAmR578kuYlHQKxpWP8cFQewOAIz8QZ8c/9kN8eLF9RR\nj0I+2Y4fZJwgZopjkTQicrfSowWu/XQccbBHIqh/Czco5fTGqT4p0OGroaU8\nV2QfMkeH7nL+R/U3RGq79ZQ9tYwz0zUl96JJrYxXqKpwSjGHapytDBhBmMXk\nPkcIQO61iakv8lYk4PRVv1bcWwT5yEd+WHMTJ9l15Qh40MUggyb0TdkzIeRF\nTqdPY5cvnxm5LmfleywGrshWY9nJkJ3ZSCRUuTr4OAS7sSY7BoeL1w+ctXS5\nxvMKnriu1DAYU9q+vHP0bSlNqBXOr/uAe9vPT/b9vWciSRZ4Vh2MaB5PTJHK\nr3yR70sV+/dAOhOatgAxxubGehsOHrSK8lLqdKo+fNThs/66SS5ncLvtHslt\nEIB8gVCKm2P5fk2tCd2X0S10tEASEZQTldSQ79MFyUY9I5EsJMjfuqPqn4/a\nETGJEs8X5+hgFm5m4/J1tjHRzcN9EwfRdxmcPbdjOpP1Ye7llGgVBVC4p9DQ\nWTXR\r\n=xo4o\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"848469ed4a6b3cdc2f3df7480806972be2773854","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-07T03:13:40.938Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.2-joshbwlng-fix-3-848469ed4a6b3cdc2f3df7480806972be2773854_1641525398905_0.00407390975086197","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.2-joshbwlng-fix-3-a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c":{"name":"@balena/jellyfish-test-harness","version":"9.2.2-joshbwlng-fix-3-a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.2-joshbwlng-fix-3-a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"051515024a3d3dfb4ab1bdcd3f00144fb1acbfeb","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.2-joshbwlng-fix-3-a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c.tgz","fileCount":28,"integrity":"sha512-HzqWvuawBRZrluRvLuZniccHiBuTUYgtZGpIdG3gxXddWZTfj9GNVuMh0NhkQLSwnb+dL6kcUS5jdAGYgOzfjw==","signatures":[{"sig":"MEYCIQCZeIJnL/Z5wT9ndDhTkLJhqQqkYGAkLUN8kLQsFTn8jQIhANcVaWOPCc6jXRU9zk1zHzU0Dr1u7OD3fbLj+9mB6jmx","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227017,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh17l5CRA9TVsSAnZWagAAZEYP+QFK7XacNbtrj1ZTqGPp\nT6ac4ZvYOvpsbcl1o+IswVW+KLG+G5c/uCpFLEiB0WRKsumhJWlCU/s2TkJB\ntcLSTFi+HF32TJmvyHNhOw6gPQKlS8b6y/3pBT9esxM6+obRQnkMVCDMtb1F\nW9CPlmgW6vm7EqI6v+MRnei9aDIbyzvhywJrE/p5+pH3POBMVdTsRFF8yyqg\n5VO98VunQaNDM1l0dxvRSCIJB+ltfeaIO5IWYJ+8KQvAbNzysAOOE+FaQEeu\n6WtoC5uUoTXkBtsL+NClNT6/YwhhxakNcweshIqrhxJeGPAlYSgZp6lzo0E5\nZPDhuXt605aIhM4fQG9V/ACPj8xeqaQeESa/OYiCJnYiOSVD7XVgmVn+wnAm\nyn+T+poGtqMRIxg8/5jopBxwivX+I9hO2zNOMllSc0rYPkeeTeId1EpMOxR2\nMuZOM43E2PFFaOcm3anauZHL3fVsdictejQg4aPEfCJq/i3g8oNY/XsfL8aH\n194PK69zlzrH3M/J7QlK7uKQYMmVs/w5aquoRI6oGWZOZ3qUbWTNOjMYbVHG\nAsxPzcr3LHlk44Y0jJeudWFs5RCB7+5saL62m68lMTmKWjUZI8Z5gmZwO7pP\nUxZAwEd0lOM6H/rMIDadphhmdSX/EQOGd8wmdI3zt3ezto6npIUJBpEcDB4O\noSAJ\r\n=kyO2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-07T03:51:18.822Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.2-joshbwlng-fix-3-a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c_1641527673375_0.39295583667482914","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.2":{"name":"@balena/jellyfish-test-harness","version":"9.2.2","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.2","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5660db1797c850c32e54984febd755b2a78a84e1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.2.tgz","fileCount":28,"integrity":"sha512-rXFudsQafBQW0h2XWDCUjRKw+sI/ElSwbUQ+Gqnb/3kGsu/wHLHK6fD/+zgqz3Bw0poAOBvIw+GFEO294iZw2g==","signatures":[{"sig":"MEUCIQCPF4w5r7ZUVniGFVfDdU1w1FQarwzcROuSelbpFZJx5AIgWhOPTupb4/KYRtfEGKpv3MM0+oz28U7lk6vVJhur15Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":226960,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh17wmCRA9TVsSAnZWagAArm4QAIC6uddS/emdZ7OEqDq4\nKaTCTzqpg1Us5WLuvJ5ZyTFFS50+ll8umw/IrmvJ7cPF39zT+spnI6U9FSxe\nFwmOREFyoZFfdp9hbTCs0THH37VqK3DlNjKsraJgS2aU+HqLzMzuTFtsNIvl\neV7ek9OOi58QbiiMpQGFztZaSzSpIQXghnq4+V0PzRST+8Ub72PRAI0h7h04\nr7hTx32Tk4kaT72a7GfhkwS5gdtSx42WTWMc2APzf288dc1JxHI1CQXah+nB\njbLZvcsFeMbiWKrWkA5dHHt4uw9q8/YGfFA7kx78hG9MZRHHbTbsWF+HMbaO\nCBAxrfRQo1fGTR1EXAixsxE4MclPWx0YW+ASk6yKhIPKbe7qYWfpXKVCZKFX\nWlK+1Jxfg5VihAf23Prkv8JxOuCrGkzmp7kUjBIwK0JaQqo1UWS2JbaQxwld\nJXHo0m1cEujTxHpuwoqrzXW0LcsHGW9RITNIrYGnLSFRWyF3an7D+op20OSd\nGFhtC4lkXoC7qy7OYK1CA41+bdJ7iClbXAXYmqX3+1inDscrQeQCEZKVHdge\nj9MF+44/AufiPP2j/pFn31THpDMgZaFip7w4EsAxx6xlo075LNCgibgbKlJX\nYAnJcP5TOvn0egTZUw8eQf/CHQp8XrWwfGdF6Vv9lSX1X9FnnRv2sFUhsSmi\n4FqJ\r\n=UK9Z\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8c3b22bde0e9f2320956c4fc6c1ba175549149b1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-07T04:04:04.403Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.2_1641528358037_0.8926716872775329","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.3-joshbwlng-update-types-654b2f9c4fda9811838dbb580933feb34f992255":{"name":"@balena/jellyfish-test-harness","version":"9.2.3-joshbwlng-update-types-654b2f9c4fda9811838dbb580933feb34f992255","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.3-joshbwlng-update-types-654b2f9c4fda9811838dbb580933feb34f992255","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"69e7bb7a7221db0a8eac3624009a828710dc664d","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.3-joshbwlng-update-types-654b2f9c4fda9811838dbb580933feb34f992255.tgz","fileCount":28,"integrity":"sha512-/GDEA18rnVBOnKNRKn0TkiDSoFEK20Pu3HnjbtfSs0uh0TiNsIjdPGA2lnnQWkYJqmYJ2SAr5F100TBg1l1vWA==","signatures":[{"sig":"MEUCIDwXgYpfq/ORKcPP6CVJ3/bXtuRMr5Opci9TOAVw9kb4AiEA438ussxBcRScmSsh+iW0hY03ROPx+6Tcv12RlTA1O/g=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh18MsCRA9TVsSAnZWagAA5FQQAI2Wv/spGgl5e/e5zJMa\nR0Ho6+9UB5IACiJ5+CFQtxEKo+qeZv1qUdSeLnrTnLCpG+uFtzRmXeUlBdRR\n32JYZf01IeyWN/IkOJxKUq1b3kUQbD4LwwprhJdgKtMJaAc5oAZwh2ChP7+P\n4PuNNcFH7KmkYR6p7PYBUEPTRUtYhjEwuob25vFFxrz5RD2t/27lSZ4SjZbU\nFeClg4sR5JZzJjxdNEPEn+CXpLq2geFxAVjCRRoPPrk0MLNB5jOAYW2dLD6R\ni39OK1/3H7ijIqg8dNKWlqC7bQUDtxo3aw4bc1Kx6KTOlIUHt8PgK7v74OnV\nm0+PvteTbcgblmVyoBSVgzQYN4FQ/cowPlx6LjQwian7Z5a+PP4GjpgIIIcc\nwIHIuLwIuMDYFJ8J2eEfsDvnf5ziqt2drj37M3WgFapMTJ3HKvzfQOUmpcwv\ntg5YxRwOO+JZ0jjXwNP0JeKDps06vR5pUnAGp8onRFcb6yJcIt/JChTS0qNl\nx0z8+EzIhemAr1HhBFhZY6F7l1JRl7YaYFylC3q/RzTN0XHDZXooMvhuFhpm\nf4p2eir5JwcR08duVO0zAeKHGaOGxrRJf8benDN9F5delu/yzKkPnL4J+U5w\nWQB/AE8+V1wP1SFUTfuYGWMXvJT/qGhoHm2htvhcEEaAlpT+kiAKapsIr1of\nRYpX\r\n=77Yb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"654b2f9c4fda9811838dbb580933feb34f992255","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-07T04:32:33.440Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.3-joshbwlng-update-types-654b2f9c4fda9811838dbb580933feb34f992255_1641530156479_0.48773592715659886","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.3":{"name":"@balena/jellyfish-test-harness","version":"9.2.3","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.3","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"fdb4270a3180a299044608daa0d231326120070f","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.3.tgz","fileCount":28,"integrity":"sha512-2F0hFFEhZwbweByxaM7XzHn1hNrzAe6wgKb2Z5aVDM251SgyT5qGMY3+riRWp+qByXZbr7/t3pXNP26OOs7fmA==","signatures":[{"sig":"MEUCIGNxkrK0MHKl55OK9mVDb3utpv1ihW4ZVl1eb3qMhRrkAiEA0uW2xMYPiuKSSj70Ce3EZeZ8abJl4I8ajcFw7Khtl5s=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227081,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh18S4CRA9TVsSAnZWagAAjbQP/j4Xqo9i0f5BRjTSEt4w\ndaY7AegJzS/hf0mjVh0nxyxTCskWaeiBjuhmUqiRs4aHX35JyBuWsrxBFOXm\ne4gs9GjtXWaiz7ZbB81DYb1kim/DBpcLXgCRuKpw2hyGyiqv0D6I9D3p7QL/\nSMuBJcVL70eUVZhN4YNcZ/koqCLSBYl2wS90H+F7OUEyUd/FR6PLXdv19GIY\nZHkugXYydXEXPrY2PsmGO5bplsMZKnplOL1nBldMWzYHhdKA3v3BaP0nCcLE\nw330mwd5m2+ID909XeWaITi2Wd/FoXLNTaiqR5Fzu8dEcnHXI4KjOCrmPosk\n4lHs3yOBHDHuWIo1o/7RGGkpdNHDNP/hvyGQyCJlyc32CkC4TdC5GO6cAvoU\nEOA8yUxOFISfDp6tbRpL/ZEJV4FL6l2wnM3PSBuVYJiw+Qmwltp2wCA0Cvi3\nijPg4Ctre+6bi6KFn47OLqzGy1ILF/bWvBSMrOwd3J5/m8V5tMvuCh/dn8Mn\nXRs1rW369/r97uvd9+QRy6JeYbQnXtdGIh0mdXYr6KO0ngS7fUGP0MAoKH/d\nhoSMIkjVpMNWO8EEJUDQ37CqLn2lwvElyR1se+w01MMuQxk6TC4R0rFuewzh\nmenA2HFrWfAliVFRpo42bORCHFHOQ0wr32V3CLJZKBfu+aaYvgIXQJPTk9aU\nOmqg\r\n=nBNI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"bc54cb58548f200d4bcdebb8b2508f41911d9d5b","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-07T04:40:25.811Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.3_1641530552030_0.7302926310081888","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.4-renovate-external-non-major-79daaf299b17b8da6bef5d2c23189f02ae05df3c":{"name":"@balena/jellyfish-test-harness","version":"9.2.4-renovate-external-non-major-79daaf299b17b8da6bef5d2c23189f02ae05df3c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.4-renovate-external-non-major-79daaf299b17b8da6bef5d2c23189f02ae05df3c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"157149b39d566fdfe9995d69e06c1b2f1f624950","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.4-renovate-external-non-major-79daaf299b17b8da6bef5d2c23189f02ae05df3c.tgz","fileCount":28,"integrity":"sha512-BNfaD+VYiyt+GmNkMFK4a6Bi/hhVzOh2Smhy6/9+4q37D0RJEx2P5WU42rcZqUSo0xfwgH0KCbE3i7x9f7BLxg==","signatures":[{"sig":"MEQCIBMkJgPcxaw7pI8DwLhxTUTMZIAUdL/E5lrc/awJ+SUdAiB1xbCqePxGI0cN9MpHvQBl7Clbc5TLF8VXM+8dTG8DnQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227227,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2Oo8CRA9TVsSAnZWagAAWsgP/0iFecudRHIlxVFMVCV0\ncBY2K/1z2qwYxntNrN1glWqSMVphnYoWJgHOSUOVk35LMqdojq9sJD/rD74J\nygd6VgEKXnrHFX6J1GAdtzv5ximiMtZyKQtnJuP9rnIVlDtjdv38wDwjHt9D\n5dywsgov7TdaZDqPMmYvmsaOvNKE1I+A7DAx/IKhvDWNaJPLeDd/zpsegr5G\nL+k7KaLCMNb2vrtJ0x/JT9nHQFdEEH0fA6Fy0L3bORucxFSHzfe9818NRjNy\ne26TiqzP7rXOyqbPD81W7o691zf5FyNorA30+PjG8bP3roWh0LDMElregZjD\ny8c0ORJVgwFiENRHXIwD3zejKBdLJo/eIRINUDldI71mh5MLLhXaRw/5AnJo\nQZa7cqqJ876dXtXxjuzsfJ8mVYc9U0sNMgUCryyar4XaxMeikVScgqnUJTMM\nsCzdBfxbfylZXuahsZGsLjoer9RpCn+FPnLqfRC1L2m/GVBCp5yfEH/ptZh4\nKWEDPR+2quasl6Hm3SDoLP/s8xVZr6OzVVFyCJCTwTrSywlZSQvHGc298wXr\nztL1UXptzLEyrL51Lkm30BenTyRowDg3OfbiP21t8pcweh5I8CE7LTsHuNzv\nxOBlJH78kt90qxxKVvWxDomrpbsW5jBTr251zTmt1j1PNwH/9V3O2zvnU8Nn\nll2Q\r\n=QrAd\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"79daaf299b17b8da6bef5d2c23189f02ae05df3c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T01:32:10.358Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.4-renovate-external-non-major-79daaf299b17b8da6bef5d2c23189f02ae05df3c_1641605691920_0.9963921607628443","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.4-renovate-internal-patch-e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6":{"name":"@balena/jellyfish-test-harness","version":"9.2.4-renovate-internal-patch-e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.4-renovate-internal-patch-e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6226a199b07dbdf296b611d0ca79ddd23bafc104","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.4-renovate-internal-patch-e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6.tgz","fileCount":28,"integrity":"sha512-wwmVwzLTdswoHyJ7herw/CUui1w3dwun9WXJ3NeR+aTsSdHG4LSm3MNlybiBsG4WF9HAY3V1ygVd6iir374EDg==","signatures":[{"sig":"MEUCIQDKtIAJmN4Zwa2/GztHELxrJLfIldZ7pr1nXf7pAvXx1AIgUPzAaPcBx3K2CodHaYxONqSK+Bz7gSn8UKGNmY2YZG4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227219,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2OpTCRA9TVsSAnZWagAA4zIP/0fT87dEaoIipaA85vBx\njvAfFKJwoZOwB+pNYRvu+gK1K63m2blIpb5u4KF/naKzt+2YWSrMEvojIx9d\ndCeiLQ4sBQtdYEgoq+GC2ixKpCjGvPmQS2isVbhFoh9zPMwg1ll/e66KzNW5\nEUIDYRbqOFwD3dDOxO25IvIJUSp6Fe99l7V48xkXw0trKKpVp5UXjEH1dsXX\nHBkHzPsv0A/3eIi+ilZpWQxjT5s0Hw7PNKfvq09L8tBWtjHen7wtj9PCax2H\nqnzi+pdrPVrXfAwdjSO4OzVrxHiOv7ZK9tpg1xsgTTtpXrfJvMeN9A4kujt5\nVSlPzsfzcZbkdvUGRxTzhQntGkcvFqAR0d0yqSp/5tJVgr/KsCacT/jI6OMg\nWiBOCcJ260xUsSVU7K2kZXnwrdedH7vCnwx7eHR873Laqj7qcGmhwczr0CcA\nmNoq8jw72gE7+dRoqqHGFZgVDp7edB4f4402CJdk1uK89BC4DgHUlmwgcuJe\n6kkt/C6uPh4AIRtZjtywWv81MdHfb3WOH/c0mw/x+kfdUdsUocNoS1sisoAC\n/F6Ik3lq4gYNaG3khkWuaNZXoC1ojPEQclC8VBRNoXZY2sB6C7DJVjmqmLVX\nJK+iVMnkNAFT+8ZUuQgcqw4QXFAHRaktvy4s1Qo9mV8rBIDCJjEBl2O1OcaE\nc5xv\r\n=mxuO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T01:31:47.165Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.15","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.13","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.17","@types/uuid":"^8.3.3","lint-staged":"^12.1.5","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.4-renovate-internal-patch-e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6_1641605714872_0.5165878351028188","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.4":{"name":"@balena/jellyfish-test-harness","version":"9.2.4","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.4","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"9121f5a83168ac1854c939b05d03d7c447ac93c1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.4.tgz","fileCount":28,"integrity":"sha512-u9W1cM5p+84XFJqo5Cpx6gWlLU0IHF97dqgeIaid/DRvLo6JPWNZ7uJcO0+dIxEk9204YwF2suexkXryTku+Sw==","signatures":[{"sig":"MEYCIQCgI4C9QNIF2qlJV4vyl88VI6acODqt4R6c8VIYSs1ghwIhANzkrO7IE+50IuoZd9BLTdUPxQkv2Eqn4GZu2hU5pxmW","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227158,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2OstCRA9TVsSAnZWagAAPFcP/ikFCXQyIev+ocWVZ2ti\n9+WMZfPRI8lap9/GItip15ZiGVladXhnRDpXteitGueU177oPORiM9PfkBmO\nxlVpu2+0BYXmFyAFp3hhH+FT1mTKwUZ20ouL5Cz7MHfyxg2k6f6XAuUeitj5\nm4xCxQ5FfRFYeqREsKJ1IYhsK2Dh7QdDOp/1P6cQPClhwaYuSZdWup4JK1UN\nABBRQgCKN9szlTVsFub/r/JTw3LkRA6Qz59medgj57IiwqQLnc5P+yVQYxN3\nw/9bdzUAKjMeGESGuEv9LYt3dQk2KJu8H5tmovgbM8795Xps/B5LXej5ORfo\nlSTnYCrAM2Icgejay/ca+5orUV8ecQEiRzEfve0kDtKO7Zs4HNRBJp5rPRLF\n8LT1Bd4st2yJ0WRAA5+6zZlRaAcgBgHTInegYO8m29X6SFtzqGZOun36iVJg\nJVFXwRddYGazE1WgreatgZIQVGtiKRgVdUoVyEF0Lh7gW8FexqSY6ySVp2jv\nYTPeg5k0A1nadK5eSMd4HLZ0th//0OOAP5HvkdqLa9mihOKMnmBd+rP0suHf\nWygQszmMW9FNa9J3Dgk+OiHn7zEU6fUW9r+xz59y9Fldz8/BNL67l0oBCb2F\nNYBR3Fbk6WrMMWc+/ES/afzF0AB8wGZ7XdgQUpzIrC6Lq1RxSeFdrALkOZoR\ns+a3\r\n=RfrX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"b0eb5e15ac68c20737da06fde26be42b4c6c87ca","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T01:36:37.492Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.14","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.12","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.4_1641605933276_0.2173025963034565","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.5-renovate-internal-patch-f9cfa0a96b671db6ae09d687429484dd4dbc5359":{"name":"@balena/jellyfish-test-harness","version":"9.2.5-renovate-internal-patch-f9cfa0a96b671db6ae09d687429484dd4dbc5359","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.5-renovate-internal-patch-f9cfa0a96b671db6ae09d687429484dd4dbc5359","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"d9f336f1cdde686034d4b0273d0311eadd520b33","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.5-renovate-internal-patch-f9cfa0a96b671db6ae09d687429484dd4dbc5359.tgz","fileCount":28,"integrity":"sha512-i2h1AlMZYQSv0XE/KLF2OvNqOx0euf/gyaqmuvduVcTvfOM2IiC+pi3tZTpbprZN3AMkPsXgHGWYdT0exdFdLA==","signatures":[{"sig":"MEYCIQCaHj7pmj5BYvp/tlRjlflR9O+jbLmsyQ6MIqu8CBWPegIhAIn06fschtYUoe8ZtddVpxbHB8I6NM+ko+sh1zt9M2VD","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227296,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2OzvCRA9TVsSAnZWagAA0mcP/jeu4nL9VXj7NoNpHu8M\naIoPSv6EFgZrIiOfJcMLWrJ06l+vJAX9Se1AsOD9Dv4j/dJqklFlo/efcIJp\n5iLvS8UlHB9WcKBWqbZ0uOVHrvDsxoKdeKIkYVHwANWoKdTpx3X+R3Km2g7m\nft3wKDhUwerHwGspcXwSeTg7TLNqKoEfZ90fnVLlxP/uvnz8XaCnyKUJu69Q\nT9u/qq4WSjwhtxCeqvwBz+/WxuT7IWtKRjd7YkBUTSiANvovkXYy+M3GHuOh\n8XWVYeb4OEuVfAJ4Cj2g1r3KxxmyArN/hhhEDI5L1Ep44NBSLz/FXpY8S2jF\n1UePkh87GlnHTqgEzXMtGRGIP5MYq84uf3zi/bPQylFfKaCJqKb6Y9lXO+Hx\n2etmeqUIpzInQDobKiojLC6UnX4u9eDgSvIkg+FicAq5astLiuYbbwta74eQ\nNJZgaUjvvoSxMaAqZk3I98+l43wKwmMh5LlpB9sX/H1yqg5yk9Y4AURuh0kj\n4LK1VbPGU8wBkC4+JIQcmS7lvNyj5yOMD3beiuqXgjtmOrVEWkyMWkGivvlH\np51JkPS+L9NX6X5I0BdXpvxTHsyNzI+wBNSwbeCHXL5sIbpSy9cxuPlHrZME\nnq95CLIMV8mf6t46X4IaRoHi344OFkNvPDBCbfkLHM16DjHuxSsxEzVBwPhy\n+I7g\r\n=FOUm\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"f9cfa0a96b671db6ae09d687429484dd4dbc5359","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T01:41:52.691Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.7","@balena/jellyfish-sync":"^6.2.15","@balena/jellyfish-queue":"^2.4.11","@balena/jellyfish-logger":"^4.0.13","@balena/jellyfish-worker":"^10.1.28","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.19"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.5-renovate-internal-patch-f9cfa0a96b671db6ae09d687429484dd4dbc5359_1641606382901_0.049222785162120974","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.5-renovate-internal-patch-0bd5805e767277b6d873bee8555a1b8c408e2ce0":{"name":"@balena/jellyfish-test-harness","version":"9.2.5-renovate-internal-patch-0bd5805e767277b6d873bee8555a1b8c408e2ce0","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.5-renovate-internal-patch-0bd5805e767277b6d873bee8555a1b8c408e2ce0","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c2b8819e2303aa56aab61fa93fb823e0c2e2db42","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.5-renovate-internal-patch-0bd5805e767277b6d873bee8555a1b8c408e2ce0.tgz","fileCount":28,"integrity":"sha512-fFo63CC6xlJxsDNap2BmQQIBbEzHSadeQOQVXW7KbeDbtrX0PKrppSDFxO7UNEM63gLa0iV0k5ps4y0L6RyUcg==","signatures":[{"sig":"MEUCIQC8A8KsW5tiw3G/c2DLXmI4MDx4AD1aElxuyh8zvyUvCAIgTUS/8yOiHtgzUnIxi4EXpJWBDO9//q3CBTPOfbIHOrs=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227296,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2QlnCRA9TVsSAnZWagAAfwsQAICyhosvRnMSx5uuNTgo\nMdujeiXMnGn8bb/vzWsAus8do/YldbrWcc/cJ1+qhJPUjeqlQhV8Sqwn78zx\nlHwueLMWFA7G76VqArX2QClrW/8NCQ2h9G2VDRGi8qK1GV2ASZueR13fdTaT\nTcotSDhe3X5gkxyc+DVI1y5YZxTETMNIXvtEUQpAMXXUJi1Rs7tFFjc3PBcO\nJyOoFfDpRPbK3h2pDCIRgp8taSApsO2Thlc1G2+e7+9EGgkTupN5vt+WwGAJ\nWjpATvFbvOmreMZtfqfgvbHboFl9mjee4P3aqPAiSqXXbxJC4C+KrsujCfFj\nBSOeHWScJmcsutVnsLPaDp06CHa6QME1iEp4vGC7C6Zkqie3QwtlpDrYa+Jm\nDcFUVRMQn8RqSFWEVZnmI+yEDHeRNb/MjGcnBAlE8+r4IMgTT2RhD4pK5Ilu\nTNjm+aK1h/12kr6H6SbmQJvZFhlhJnNDHd5tcQcaV1hIasXqs1I1dkG94cA+\naJaiIrHDaPG/JPFTz8r3xkq6jOdb2m0M3StkufUMAGWgBsRRFmQ2SOtqvDNn\n79MCojSn/jf+ULefratG2+hrKQ4T1R4se+dJy2psdrEesHkT9ivxaVj5H5CY\ntkE0obi8MEoEpdDGIj+tlXeIWEnnZuKyk5lTKnrSfowDnzNgHnE9H1acRK04\n/ISO\r\n=Lvkb\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0bd5805e767277b6d873bee8555a1b8c408e2ce0","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T03:44:45.164Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.9","@balena/jellyfish-sync":"^6.2.17","@balena/jellyfish-queue":"^2.4.13","@balena/jellyfish-logger":"^4.0.14","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.5-renovate-internal-patch-0bd5805e767277b6d873bee8555a1b8c408e2ce0_1641613670894_0.6303659206792274","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.5":{"name":"@balena/jellyfish-test-harness","version":"9.2.5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"6bd6023daf84db1c30733da2d93ac7683ca524dd","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.5.tgz","fileCount":28,"integrity":"sha512-ZF6WQ/8MprcRdT39omNn4MkcynecGPwdcsHO6yeF4zqbPc2fImImdtA7mmaMufdahZljdd41vj2Qt19iss45+w==","signatures":[{"sig":"MEUCIQDodEVbpV+IJ3HRezUQbmS+fy2sCyGk7W/vzvUeJb4BTQIgNqwmeC0tG5YcVl1TE29yqDY1fC0VelnkUFWJQqhvRI4=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227231,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2QpkCRA9TVsSAnZWagAAEBkP/3jZCadHZaHXO2/W3hRQ\nE3+CtdZtcF9xxR5XDDhOwsobKOK7v6jusj4LGxqCY7sfrXdosmoA8k+2Loay\nJgsEti51E5ye/sjVIfy+g764dUqnolcLpU29ZPqlKTAYo8diaUnNtZYfUTPi\nfCSCVSvhJ8NwdYbgVK0UkJt2qg98/R5gxXMrlhFlKLWgL03X90NVa50cloI5\nDS4HvwdTTevl7Q3huT7FHyl72gHgJCl0PMY8iBoSWVJt3zmGHTpPW2Pjb+xs\n8/2TI9STbmNit/r6Pnae3JWH41TS8iKUhFekY6gIs+oAoDo2Q6BgZ32SMSph\nDNlolvoBj/XhNHBdDfhzjzksfUQb7Z8wGL2Oz0BwMD4YbxBL4NC7asekoVNZ\nMgZ4J0Vh5Oj4prFklFe4c30XD8EC95+wC+agGTZXEW0OEHXxk0kMufe3X2+Y\nqMI/jOJ6VPo0t78udDeFdBcQYipbT8LYYrZ+qr2xaa75Y3GpnDj0UVMifuMK\npl2KKReQvAoYjXMBfAVHk4Wi3whTCZfQ0tpRuDzl+zAL6PoFhrHPj/1LTkmA\nF2j8k2hpIdLunUikK5Ixr3beCKAAGHqekE1EBsRZvhJQ6iU++nQ4n/pfU9ZI\nhidCtRpPQpcGjL2gKhWIAHBRp+TvdsdM2PjyPKnGPs9Cf8MBnhDOP2ZrIR12\nPYtt\r\n=iCwV\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"9bdd5ef849b12d9935cc012d1a6795b6dcc4d9b7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T03:49:31.955Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.9","@balena/jellyfish-sync":"^6.2.17","@balena/jellyfish-queue":"^2.4.13","@balena/jellyfish-logger":"^4.0.14","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.20"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.5_1641613924478_0.3104969789205745","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.6-renovate-internal-patch-d8ea40efff75e85055a771592ae16a7e2c709aa5":{"name":"@balena/jellyfish-test-harness","version":"9.2.6-renovate-internal-patch-d8ea40efff75e85055a771592ae16a7e2c709aa5","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.6-renovate-internal-patch-d8ea40efff75e85055a771592ae16a7e2c709aa5","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"c3ab22b61de8637dc8fb159067f8cf1f380ab432","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.6-renovate-internal-patch-d8ea40efff75e85055a771592ae16a7e2c709aa5.tgz","fileCount":28,"integrity":"sha512-/qOoxPUrNartwpBwk3YF+NZsd7G5UMPrchOP72jm4PCWOlGJM4TYJcTzcwyK17dsDEMQo+CfoUPValOKznxPVA==","signatures":[{"sig":"MEUCIDWeYuJ6i6eiEE80UFKCfzlKRUj74HXGrDEhknX4EvpUAiEA5d7lZKl5ShTjr/HHnZwg2UyvpZCpJudDlQVw4VtJ+YA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227369,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2SEnCRA9TVsSAnZWagAAWAYP/jyX4hKaq68l9OuC/MNc\nO0MVpEj18JWVj0ahRLgiQzhYgejounQAz4NL4IDkbXKQpUEgIwwPQFGwkH/5\nKSGVuawI/83C7mhnRnLq6uvsPEaa0KhXMXxxove2Z1fycweX6lmVEglDJ9aK\nBewHpZMwkW1Gz+9qWDv1NYMlKCuRDkb+/VogwtQvSSLs5F/V8/Lqi3utJefk\nVLkElWcAfOrqrpttmDqlR3Msnvd8blo5SdxWsZkm0lnrO1A8tkX3fwrEdTci\nf7OwHi/RfboiPNat1snQzSYdJldYF66NzQU9MJZFEEFyX2RuFUYU2ij2saPN\nB45RvRlPX7AyiiS2qcokyQ2RLcMBIa3YNwu/8YjPk7jPCYo+bsrqg51wx0Tn\nw41tv0DEsGqPkd/4Cx2wgi+uptlGi09+UsS+vf9QM32SYQQ9hPXJG7tUYmcR\nilWzBGmTKmA//4RQEtM1+2nP/SvfBJ+ZjaG/lEvSuCr4rzbuYpiTdDJs82uh\nBQpUSlSTU420AZsAf8YTmHNYnLNaX/LvWT01w4wETfePamMjzkAgdZYMHzFq\nm9bPGNbXKhhRkNHBnbTIeROj8fPGbaYnubHfrKhwMBuFlhev4zVVWKaWp8ry\nzlJJ1qEjWfd8LPpvZkhpWh2dPwE7RCoSVRLxpaVL0+nvOjLIz5r8kgj2R0jS\nqxhO\r\n=C9l3\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"d8ea40efff75e85055a771592ae16a7e2c709aa5","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T05:25:50.288Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.9","@balena/jellyfish-sync":"^6.2.18","@balena/jellyfish-queue":"^2.4.14","@balena/jellyfish-logger":"^4.0.14","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.6-renovate-internal-patch-d8ea40efff75e85055a771592ae16a7e2c709aa5_1641619750925_0.8302983089517546","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.6":{"name":"@balena/jellyfish-test-harness","version":"9.2.6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ecf8486c1cfb91a4d96d4b0ff9448fff544baa23","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.6.tgz","fileCount":28,"integrity":"sha512-wYu7+I3u8IhFgTt+6xmIsVN3DidDbQTK4VSenI7gHPApePzjKxZCCa6UfNIYBNwNUk0OAAt+LLsWf58Vui31cQ==","signatures":[{"sig":"MEQCIHuQ2JcnVdQjTwe+cxlpiEFPtdZKFIc6XlpRQarW2fUgAiBy9DARRH7z+czMgVsuteh/AN8u78gNnC1dRVaX0zyLSA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227304,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2SIICRA9TVsSAnZWagAAepAP/0rNGeq/sEOvKGPsDS8p\ntUZvjcYQeye7SjkLXW5davvsiz0esL+12+5d9aKhqdrbKkMyTb2LRz1/XsfX\nkgoTP3gWH3AA6I1Gk2+z6dS/6Vh/LGK0LDJzFxPUt/pxSQnaFvmM/LbQRAOt\nYmv8JP0M6qb7vsHHtFc6YmahgBLF7V9aZILLSuOW3WoK56FxuB/JCM/jiMgT\nUwazM698C5jF0rcfVrQ34gxlPKM1V4bvFcpFuTwr8WMEyedtTBAJ9Ez6e5ux\nN5YfIzyt7V9WUca7Fxp57EnuJKRG2AhQPmXVNRY/rBgTJkAOOzOTPollva9p\nEnaXJssqBB8BhEulOOgGjoaKI2ipXM5tCj8DhmuUe06+acC4E51HiZ7e+zSQ\nryUR3JoWuMNx7yXNmAg7IufMdvJO8O47j0X4WfmV62ysT9Q1PVBGmIWeX54/\n+BdShqCGiLLUhr/lTC9B3lVufW+G7/du0XfWCrfrKEhnQRD+px7vcZfS781d\nbQGQi5UqXKRd5+yMdF0hNhS1uE+m8svDBogn5XBUkUYAuAd6EAuUHjCNlqYU\ngkwCHGes4q9nstubrUe1zYeVmGaCcJ+ONjL85l6dWoHcLd3XDywrUZizdIzD\nqlmtRl63qeJo0+tGeYe+fbjWxg0INCvylecgsFZpVE0cX7DWrestLRfovw4k\nvHMS\r\n=hGUg\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a488c53a73f05dbb4aea14d7963380ccfcb6f11a","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T05:30:46.845Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.9","@balena/jellyfish-sync":"^6.2.18","@balena/jellyfish-queue":"^2.4.14","@balena/jellyfish-logger":"^4.0.14","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.20"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.6_1641619976177_0.5895177942013645","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.7-renovate-internal-patch-8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce":{"name":"@balena/jellyfish-test-harness","version":"9.2.7-renovate-internal-patch-8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.7-renovate-internal-patch-8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"755dc3dc2b33c5499b1a4d43afdd89aaf1f25e01","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.7-renovate-internal-patch-8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce.tgz","fileCount":28,"integrity":"sha512-kXFki2KwSoLkOncHObkV9Yxgz6eWEMyu0J3Nk//O3aTh0VSGk0Y61xnDT+LcO/lLcVKgthJbXWes8cXbx3J79Q==","signatures":[{"sig":"MEQCIBu+yrpseK/N7A9mIXpxRgurZ/3ytE4UuIjHofAvYXE7AiBNUoc28tFywhzSRn8+6+qxocs6fMA1XmzITAOCl66gFw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227472,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2VUFCRA9TVsSAnZWagAAlMUP/3lDBjptmbS8kiPLS1u5\nADK+ZiBFX9+HS18DOuKu096KRz0jHZCF9pcNoPsPP9r7/e1cxdLycq36L4bw\nBLdCdhnehGPZJtgKOeZJxElN+wRIWHDarUQhXOhdebhrnaBmzwd1MyTmOChq\no8efJjp53D+RkwkjVYHOZpWHvvW/GbzNzLlRWl5F7acLxiNSi5E58lVGlkB7\nHX77ObBO996koYJupebw0/AR9DQEEUb3Z+c1Vs2oj+v7NS23XN1nhQ++83yS\nuGunIxadZhKbsSouyxu1SqPOaTMH0Ub9mrLK9Ejel0rxKILore8CsbBWiywy\nRhsj3kG5RuIYnu46pi1yYRUV78DK/Jb0qXWoZ3dMq5ZtI3SWRYQnoW5FYS2Q\nRWbkSQu11/XA8bsDB7wP6RUQBpqeOP4I6s10vKB0joPVYWKKvlsN6JpoTiM3\nCCMA5kN1ifloPfUQ60TYMGV0d4Og/sNdrZvF0dnMoDHQcsVy+SrXFkjBEz8z\n3o1QA6TuTRnqd6p0UVWdA9H4w0eLy2LfGf36srXu8wHeeozETi3PwStxFwlc\na4yChFNvdk88NglX+sAoTc2igUoWA/hR8A7yX23aCCnbcObid0R5+lqlsaOx\nFzLoCbQcQnpv+/ITJ+Ld0ysuJPWbsX6cBl8wuF+58KUko4IbEl87wEy5Prwr\nuAH9\r\n=omx5\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T09:07:22.410Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.9","@balena/jellyfish-sync":"^6.2.20","@balena/jellyfish-queue":"^2.4.14","@balena/jellyfish-logger":"^4.0.14","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.20"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.7-renovate-internal-patch-8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce_1641633029365_0.397714932161348","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.7":{"name":"@balena/jellyfish-test-harness","version":"9.2.7","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.7","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"be5cd3f37ecb5f7f9eb4d2aabdde4308e4b633b5","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.7.tgz","fileCount":28,"integrity":"sha512-964yjjvdAJHunqIOThB4DDOSsByjN//Vrl3EEBL0a1VrUTH1DOFydbwtN/IMO06l2E1qvIEv3jzPpXGYYy+EcQ==","signatures":[{"sig":"MEUCIQCuVOeZdtDcbN0FSWRMG3COXvKPmxLlAo4A4VzqRwuZTgIgEY07+Bai50sZgpWHO2bPQBsyqBRqjoc7KmrTqZCv8to=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227407,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2VXpCRA9TVsSAnZWagAANA8P/jwofa3Pl59UuqZLSAsh\nEp9sjnl9Yh4bngh+aZQrT3hZAzT6g7xXWSG4kKRPvuWlR0Q8+12UT71BmYFD\n0ekMdGJTa3PAOftTrDe584k6CBKyUmdmRVNoFkxrxkRQ1UE3cWCOsncmKSgU\n4sktdtoKxUs/wfBh2/GCOWKxaGOmbuwm92G7D8Q1Sz0ctsg7eOV3TQPCY/wR\nCwGAjmEh7eztjiXnhUfUYEpE2IuGhtF3GtA+XcwhPVsO81cVoEFGMzzzjsWh\nLIT4Bq32zRPBdEaYqoL4z6LRDhu38hhtQMqnPTHcppJg1JFdAoQecsxi7zNV\n4TrHs6I1e9VWUo2aWlwMDTo/mGv2P0QDQ721uLnBGm8ZTK5aP5tkHTUHvFA/\nVmWZ9J3raOe9I3lKQ2EPT4zXjE/rUNlu+ysD+m4onNxxCFnQxNm5YaCNg4K8\nULGnBd1+6stYUCIOuxVC2wFTT0XjxCF4v2V2n+MP2kc6rU+hBIXj3mhT6eSQ\n2LeLYh8apW/v11kei0jx9my6rWk1+uMTuKRKlv+2ulNXZxt8XUvkZIaM84Mt\n6k4XgPUYKP/yP7SUO6hXerhxEzm2QcnH6eaZ5rJnh0wi53t2tpH/lVlLOMwJ\nN3VnkqN9WotgPu6sNp3OFyzLL6A4fXvTy1YBu0wF8pIoqDQBA5alXa+jgIze\nppKj\r\n=Bh5/\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"82cc011a91fac1c10b5381488438ba93989b49bb","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T09:12:10.223Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.9","@balena/jellyfish-sync":"^6.2.20","@balena/jellyfish-queue":"^2.4.14","@balena/jellyfish-logger":"^4.0.14","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.7","@balena/jellyfish-plugin-base":"^2.2.20"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.7_1641633257196_0.7217014440209037","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.8-renovate-internal-patch-03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6":{"name":"@balena/jellyfish-test-harness","version":"9.2.8-renovate-internal-patch-03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.8-renovate-internal-patch-03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"cf953c9a6881f070a9ee4b1f790fdfdc57f3c078","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.8-renovate-internal-patch-03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6.tgz","fileCount":28,"integrity":"sha512-BdUhcxHZPMZ2Xz7b3SVaTpCw4t9E/uXioUgbn/4pzzDq1g89yb7S4tjQGKwr6BQmDEsp2DYCOrz3bhvix4b3nw==","signatures":[{"sig":"MEUCIGjPOs+ZW24Ne+bfecpl5X59h+/BntdeCObR5wWUf8nAAiEA4UQCNk3rQkZyvFfDHaMk4yigg5heb8UTgbgWtvsI5qY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227546,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2YrTCRA9TVsSAnZWagAAAZkP/AwuW5wd1C5kcVFk5f+c\n6dmtezrL/c/P36Ih2COBpbEXmZYT4Omar55jqGmDsByAYwddpbJdlSvwLors\njk2b440yv3IQJB+NoafvdFh8xewHZULCRjs+PTdWYb59ycyHZHqoUv28pO9W\nwFIiFtnW1VN8QWXbW3jl/HygeSUA2+ti8tm+BLLvBfrOSiZM7FijvrWwNBoc\nFXK7Oo9/AR69QXsihFp0uaMRWXGXs1ous88558pBAx3/Esoi8WbV6EXpzXNR\n54fOydYrJsugmzM5/v1woQTWEP8V8u6CmOaNIl6EJ4ljgrW0V99igJWuzrH/\nqD/qU9ohLNPbGHTJotxWNOXgSOwgGXbfgpmYrEsPdYD4AEHllcuy6rnqldek\ntWS/4YsMzmZAUDOuEk7bCFmpMdMYLaAw2oFsRKnzW6x2/fml96TMUO0TWezr\nJgYwEjhrTHiobh8iHBx3kmx3Vf42HV8HXqAioDAVWFF2egFjve9r3ukcyB+q\nsw25GrCpaQHh+kIY6xJIa0MQj+PSJUN3ZeJucao/0VHYhPYHWgbayukWEQoH\n14j7A/UkmDam/76x8XLy+Fjr6Uo0e8riTcloRF0CLmJZgnpLmtNCt+Lpn2eB\nb+E1RcMZgPy+1JCfiVdmJaICfNDANq2wiQeXKsqqNv+A/RJW5le7FX/sNe4p\nvHNn\r\n=DVTL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T12:56:46.719Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.10","@balena/jellyfish-sync":"^6.2.20","@balena/jellyfish-queue":"^2.4.15","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.8-renovate-internal-patch-03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6_1641646802949_0.35098014682356027","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.8":{"name":"@balena/jellyfish-test-harness","version":"9.2.8","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.8","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"88d1d4f2e67fab71d61ac6e8891b53aa615412dc","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.8.tgz","fileCount":28,"integrity":"sha512-+xeMZsK0+nn/MBCrMruUiO9wfb7JqME2WkZW5B3bQ7FrLi6coDMfy28e3tLUR5mIVpT65aWYnPGoWRgVFYNKMA==","signatures":[{"sig":"MEUCIQCmmKWcfQis66ppfIYwRVkQ9VcUMmLQxPNCti2z6/Y1DAIgdxZNF46oPkvP3jKMwNcq6b33q9Wk8YEsay54MRzNa5Q=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227481,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2YuxCRA9TVsSAnZWagAAkhoQAIKmIYl4Jv9KaBGziFD1\nJQOYMIxawxnFgp12LRfCELn3E9bmF4+2mkoQ0JKidxZ3lYp5n9cVQyl1gFDe\n/jcMWN+FEkEwkhHeEGudsidpv2SMm++xQhxkukZT81qZtIhjXBgUVEOmJ7YZ\n/h2HdLkUOHqX2bFJEErMFdFWYcnXyiJ7lbB9wq+sErZe/NEXDu75WIlhHGs6\nu13/UriRj8R15nvpnveyYBHiZjrwqCIGG9huurIlOqH8t2imKQfdPRkXErvg\nfy78QLcV51okstzHqnJzycAzxWQaTMPOKRUg0WHK6mgZtx84ByaXyqxJOs7m\njEUSURjNpvfIF/WUGl0Y4z6KuSsHEGyBiJA79uzRH1R7z8+1jFerRSCNms4p\nHMWA7AzCXRqosNGygHY/bv06NySaFf8yFPExn0i6aPUp/wVmFVgDb1Di751W\nS2g9TlxfRZqAp38xBzYibWDh4IUZCNeojlL/fAeSz/WG8fPTv0SWaHEZgjxV\najIIV+FovqkTOHaQ9an2LgomGIBIEoyQWFE1FrKSEQFYxt1rzfvIlMINKZsN\no4FdTRIMJY+oqvhIk8mzmdAGKzmQ+IuKCMa6Ce+i4Lcw3siHJ1MXJKpB1wwQ\nXkIFq4m6WX3BRVW6+zgzNVbCHba07lVYxKjrzHIpRc4IX75Rz0UpFMN2ehgA\nJv8+\r\n=E3Jt\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"df3f7f2ef41e9205541f147086f02e3224a061e7","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T13:01:25.683Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.10","@balena/jellyfish-sync":"^6.2.20","@balena/jellyfish-queue":"^2.4.15","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.8_1641647025012_0.42110267859338846","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.9-renovate-internal-patch-6c39d6334db9b22f70f2109dc922cfa9bf453036":{"name":"@balena/jellyfish-test-harness","version":"9.2.9-renovate-internal-patch-6c39d6334db9b22f70f2109dc922cfa9bf453036","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.9-renovate-internal-patch-6c39d6334db9b22f70f2109dc922cfa9bf453036","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d27779775da895571c96e6d200e38e54d3db8f1","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.9-renovate-internal-patch-6c39d6334db9b22f70f2109dc922cfa9bf453036.tgz","fileCount":28,"integrity":"sha512-/A6cBhUqQTT+1grrQ/8U4uSLF0QFCtmFfwjFif8SV0XcEzgcx9JWcxFi1llfdyCHHrfD0FnPWTTL+lgAXI8o8w==","signatures":[{"sig":"MEUCIQDgmhJzQG1keLlqOFFNQm6WrAKWnXb2dKX273faRq2lqwIgLxeusgJroKQA6sF6yw+DNtdUJK6nxH3a5Nk/wKHTh04=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227619,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2bQLCRA9TVsSAnZWagAAC6wP/RAk2uzYSVLnsX1Knox/\nUvJQXeN8pB8QS2wiymuuHs6WOaHZirQrIdMRIRWcvNmk/Z4HlcUjSd0m8nun\n3PnBYHAB/fw+FT2nmsOmv/23qZ+Hj/GoukTI0bXfgyfBMADpghcOZE2lCHq2\nA5A960GhRTKytXK6yNg+QYv/2cbWxVLR1rzF5Ji9lidrqf7tnzCK7ZG/uAsH\nv+pWgPq/e40Stxn+MfKUib9CzSgq5GLF3ZpGV/tobI+hRevd+oR5i3P5UoDY\nxPO6Lr2Q+VjMMeKEyKHLXSxdIIO+nEzOD8aA9QQD5vLyicjBxz7bfz/fEJGW\nIEj1azwtBIXaH+azB2RYwKjhgITCsCDjrMR8Fqp17OJSZr4aJjnEvXxgLd6Z\nqN7p+G3PnHrfSYQtioETgXnYHcInZL0NDo9Z+lllFnnMmwacP5DUKW0mlAI2\n2yVIfITNF+1VixOpzf3HP2jyJ2iOdQVYHFMZUXmIbaVtOYFDL4m1txJkoCX9\nSl614jYVqh47QZOPMdqkDHfH0eTSWN+3eMgqGSHeaOY2Un2VUl9520vGsr78\nYyCm7/dXrS3wx0AWf42qgAhpACuR8O8z1SlhRqaAju/kQ49IGmRjX2+QQJs5\nMPwazuahDDdBAj1o8rzazRO7CQPL+TUr4cwehs8Eh7ch7xKgtsU0XWDBU3rs\n7vNT\r\n=x901\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"6c39d6334db9b22f70f2109dc922cfa9bf453036","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T15:52:32.631Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.2.21","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.9-renovate-internal-patch-6c39d6334db9b22f70f2109dc922cfa9bf453036_1641657355585_0.06828201224512642","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.9":{"name":"@balena/jellyfish-test-harness","version":"9.2.9","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.9","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7952d262e8e34806a235e186859917613225491c","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.9.tgz","fileCount":28,"integrity":"sha512-Gwtksh9ayreQuMHIij/7KlRfIT29cAZ5vPS3tfdYmGhRgA8bvrWLULM8xab/VaeU92ARr6rf93xooU3vReBHVg==","signatures":[{"sig":"MEQCIA1IeqE8RTB9nb/PgM4gI7pR4cNC1cwgQPr3RTNAOTuBAiBBz3LEGbF6v3hVq30qG3sruDk30aGkmJAQEV1YGJkwDg==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227554,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2bTDCRA9TVsSAnZWagAA0SsP/A7Wkuf0yNC+w/T4/kia\n9uUsvmx9uqYUsmahGwQugSX8cVZY4ZqptUGMXVGz4U3sDAPbkd8UyucSXwyo\nNv/4+NvITskPCigWCiMtB8fWTL3lnKhVDNxF+/xIVv+TKScSAppDMY5XEQX5\nfcxTd8/e/zuT0cQtXl5vRWZRMcapKEjUrSh0WUOVncRzDU5oetOEoTDBdT2S\nYn++6cjM7h4D6OO4ESiCEZlp59X/aM51M+XQVu/RIQKMiPRcogy+BSlO3fHb\nY1aoi3IeEUdgazGv3s3Sa118YhVu7W3eF0IiMJJyv3H7fseHaUY6Nwq7fm+Y\ngQfttpxlH8jnGN439EzKo+Jw6M4j6cuy4qIsFU3EAKXPIynyiGWSltWJS9QT\nDhZI8yaDq8berVsKdE91zP4RZgwVyQ3vEMu+acq/GZBbv8dqg8mc4MDOETXo\nLlyw/2hpBFGoGw8MvEiuT0/7zMAMkRYttREufmcr0PHwlWov9RRnHyc3mAin\nkZ3y7Ghzewmw/8MLEVH/XlXuRYeVx3rjX2oIcVGKNv9l0DtuJaEKsfBeuDHX\nvey/MoG+0XjJaPBIJjSc9pWGKbV1qSbMZ171LL8CGGJHlN6qsIVoq5iZfiyU\nVwD9wu2SnRtd/abTnqdyEk4Aqge07pw3Zb21UfFsD8qBB1VL3ovcJ2w9UZcc\nM/hg\r\n=dhgI\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"dcd1b41089ae142c3ae5f427023a49b8122d7199","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-08T15:56:41.898Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.2.21","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.9_1641657539295_0.6403802890986812","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.10-renovate-balena-jellyfish-sync-6-x-5e196ef54ad769268cfb6b2e1f05db69bc245639":{"name":"@balena/jellyfish-test-harness","version":"9.2.10-renovate-balena-jellyfish-sync-6-x-5e196ef54ad769268cfb6b2e1f05db69bc245639","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.10-renovate-balena-jellyfish-sync-6-x-5e196ef54ad769268cfb6b2e1f05db69bc245639","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"ace2b3e12e486206197d5f86bec8f3078bc1a486","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.10-renovate-balena-jellyfish-sync-6-x-5e196ef54ad769268cfb6b2e1f05db69bc245639.tgz","fileCount":28,"integrity":"sha512-dvooOvVZyHdAEylwoOvlmkRktRIrLt3jtLIworL1ucxkLwKjw6PtjTvKdrymoZzv7bpxpMCoteEc9JrmhDtKuA==","signatures":[{"sig":"MEQCIDPfYMOP11rOT4V2Uerd9/G4+Lv4bYNEFiH4wqQe5u8XAiAXshGh1pwWhqLT/J6WhWo1F+F6QM8PaEhx+QVqi28ORw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227733,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2/XkCRA9TVsSAnZWagAA4YEP/jJDYRyA+DJss88dcJHx\nHPkX3v0x7LLuIbWtiTNm7nmuL1OEJPjgz6TI9IZ1FdGqUlPamrqzZQxi11Lx\njn3OEs/MxcJ+NQd/QTgXmcMhIFbE2fJQuCheT/w9pa5jK/rRglxweOppf3o1\n29X59ES4BEMmWoYhP5cNKTFfiGKNBpgfKprv+5pLhKZfMGRcBxJgpxkuX83U\n7ZUxFC4bKKf4jsTx7SmV5E3kcZ32NDwAbDP/llMs6wnGQhzTP2W0LZ22WvyQ\njWEZ2+8QYAIgNk6Dzzyz+tMoVRoDjS2EUPGlmN2B78N0v3UP0xXy0yo2pwos\nIaOSVsP1jP8PU6NpJemJX8tPoSNtR2y2FcEtVsSyQUbt78BYQRWHdmVVc1wj\n7v3yrnToab9ghwUTt53GNCpfwVX41/Ct9xWpXtq/bophwirW9Oxn8XwGZ4os\nxgqLtOonnF5JvdBhle30R1lbTEVtBnM5nViEPf6jSxfWe6HWMjbGHMlwI6mM\n/37ZRrcpuFpEOzHn6FB2ovEowmmCJIMesqLkNuimn8OXUNdlM7Tato2vosid\nMRJPertRqeh4mVIKTpeKC9jfGOxpBoWJGXtFJ2zYKiylxcfx2RJAfCN4EswN\nCAGUVXdW/dQ9iORBSCFkhM5dx9X2eCO9EGaO9QswUtOPFx/JwSbsYdTAwric\n1zPu\r\n=Fe1u\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"5e196ef54ad769268cfb6b2e1f05db69bc245639","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-10T08:57:54.709Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.3.0","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.10-renovate-balena-jellyfish-sync-6-x-5e196ef54ad769268cfb6b2e1f05db69bc245639_1641805284071_0.6084853582071941","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.10":{"name":"@balena/jellyfish-test-harness","version":"9.2.10","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.10","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"90b43ac0d6cd5f46dae584ad19d5bdab8dde5858","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.10.tgz","fileCount":28,"integrity":"sha512-wGijALXxt9LlPq3T3SBMhMsdvt7m5JCMWdYNW4WtquzMZ6TWsNEZYElsRDKkH2NDE+dNkQkNeeIpfFdle4AjBA==","signatures":[{"sig":"MEUCIQD66FBlL3SncCC45J6lzF7X8PPqmbqj0NPLcxOBpo6dMQIgDvL+7R5l9ajUNmII7IyaI3Nflkj0/dTjVXFhpLpCCoc=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227657,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh2/bLCRA9TVsSAnZWagAAnXMQAJJPRhzT89kGumjoX+ZQ\nGEEclzaLXubouEQdmn2Dwp79lgpAvFDr1lSoaqokkkCx51wGpYI5nXEuAqYY\nNSrmaW9wKPOpXCeSxswlJmjJvvLoEiuCuXNn+iEjfwLQcDF0pNRDXyDySQ9/\nHcTAmM+FmPOr9QQN7BE9tcoHZ0afU6FCea38ZZkTL8Y2xdppGuuSbnrLximR\nPP5u0aQKTDGuWAbaANdQm35Hzuw2cChT5+vo89IC8vQVQfX51ujhXZWD4sbu\nyXu9fAf/NTpzju4l11FodVgXPuozxrVKcyxkfwSCpkZWB6sjrnzkrmm4KEQ2\n5QZL1VcP1Hx4EkCzN2WWvVeMkHf9pZvlY6UvvQt2W3v/m+vqFL8HlobWKTLh\npjXb1mEPru2d66CclPFDmHHCWjlN/lucTkYuHh1b2NNGehOfh4R9030vw7C+\nqep5T/6rSM5MCamVxJwCHyCQQqhn2LF7BZ1YuxK7Icn7HxPHmitnBZsoaTTr\nJwP1L5nRf4+doiHaRjHuuHr3UFn4s3WBLEXz858qggXTh3RKl/hTa8aJ+2Ti\nJM74twVRodf8xg11o2Ped3H/hRSCEOBYa42n8weEmCFllwsSufZfLxYXQ86H\nMS+egwNlZKvIlP2KKa49eq+DkGMtV5U/dbIRNSzYwpAhrzmoTqFW+nUa45Ww\n5rdL\r\n=u3d6\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"068b9bb7a21e85055a68815adf0c714ad42675f1","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-10T09:03:22.460Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.3.0","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.10_1641805515089_0.985188232372864","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.11-renovate-internal-patch-4140a50b821fba9ca034609886eba7acd203e47c":{"name":"@balena/jellyfish-test-harness","version":"9.2.11-renovate-internal-patch-4140a50b821fba9ca034609886eba7acd203e47c","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.11-renovate-internal-patch-4140a50b821fba9ca034609886eba7acd203e47c","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"74c66ce2ca96928467510f3137febc3af76735ef","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.11-renovate-internal-patch-4140a50b821fba9ca034609886eba7acd203e47c.tgz","fileCount":28,"integrity":"sha512-6mjcWd2PbAzVk+agSGbQKw9Z5qRH8i5ACoP8xd5eNbjFG0zpW8TGs/OwMvwcDnsIN5OKQZqwIbG7yrZy2WgTMw==","signatures":[{"sig":"MEQCIEnGli7Xdwsew7iAsnBS1ZSZgtY14ACbqOERBbnDjKYOAiBtv6p8jQo/2gD2VS/XLUbznxf5mLVNBYmt5XXKbJ7MpQ==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227825,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3PpPCRA9TVsSAnZWagAAVHMP/RVZxmG/ckEFpckSRg0C\nUJCtHp0epVwFCOKCzlgxiMLYLhdd/cudkfCMNeJlHOoaXe15KykH5p97AB8L\nfB2M0SOkzQtaNbZZDRv05K7wtHF2ydbYy5Sr1MWbfJcfaSHIyJsXLjIFQ6lu\nPCycCCpmBubb+lzJk1igKkxsaNNN3ivtNEbD3AGn8qlmBDW97gAFs0sh68QH\nRWaPn9OYDp2M8fkpLU5/gpjm17D1R9o986pAiqIEfET29wQ6qiqXdz36IhBx\nFyTi1kcCMscyZq2M6OJqMre8aAjhuJtSqV05kHe1aj/HNp1iyoBd6Bev98Oz\nnQpvFszhwCpLJhKDXQBXzS65cOH/gNzTxYjeT/74Rv+2IWOk0NjGepERUIby\nGdX/ydBSGs2HvqUljuqPmeiXzTwJ1bbHFkoDEfm8e/Hp3+vMifYgeG70WKnJ\n51rZjWd6ZAxt3QaLjeQ/ifX2fSeMT5hhqQa6l8Xn1e6X4ks4IE71LGwQjyIk\nuwdMZ0mCkRKhXYwX/HKAYkntHX4NwyCqmEGCMxd6m+JU13QjN4Y4ZYnAlVAM\npU7vo4RzxpowkQJ3Jlws/Klx8Vh+HACKDs3F6Npv+O5uyEuImevesmXHyt5r\n3cBvf6K08Si+AhyoFopjjHBGeKVrkozKiZDaa5PCy8jGbYaZPiNk2QpqjFYo\n10FO\r\n=i39O\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"4140a50b821fba9ca034609886eba7acd203e47c","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-11T03:29:36.224Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.3.1","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.11-renovate-internal-patch-4140a50b821fba9ca034609886eba7acd203e47c_1641871951577_0.08013262207326477","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.11":{"name":"@balena/jellyfish-test-harness","version":"9.2.11","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.11","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"7204bcf7cd9a40410a48eb55d9f9004217f58c31","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.11.tgz","fileCount":28,"integrity":"sha512-R+p3tNHlC7TzpZZzuEhas+z/GwOKTDLs/VQmoQUffHptLdURZPoX7MDvRSiWg+7w5aE3m9eMCKxPAb6twbJShw==","signatures":[{"sig":"MEUCIBVc080nber2hzB63/rDLqZ+GgExa+ElxJxyxaSdpIfaAiEA4VGRYMpmd9bhI9m7paspXsJNImKJL2HGnCCR5ApnxKw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":227760,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3PtGCRA9TVsSAnZWagAAflkP/iT63Dj5JKvew0chyceO\n5AO+hLIGt/rot8suES9b4Obyu5Gc0HJUtVciqola7X40UQ+tpc3FjmNL12pn\n9g7D7v7n8lIOhXi9AHCAeCMjEvMtDY5s/PV3puutSQphMpdCb4j31aun8w72\nu2+pripKpCghSrz2x0qq/1G86RXuA/eEiTxQi//QLYunwh1wxBpiHuSKlMWm\n7GFka4XN+9OZaw8pZ7WlNDgtWWl2eqxF7FzUcujjg0Fb4j5lFm5WGo9jJg0y\nYONHqGLintt5HRmsuiymF7Nj9vOdXkElRG1hEiuHy7If9xpwAmH6A95LHoHK\nxItD57yqDikXm9nwRb3NK7NrCGk+tMcOzmRg5vTSy+tDzyJTsX5RgOx19u+P\nOn4B8C+2fSXScbTgeVUn2CIuEjH0ciZ1Kxt1W1X2cPb8a76mxSbVgqu9NMDD\n4o1KKXwpovz5HhCchEM8Y8U6NNccAcN+xexoWQNsej9D5njR1lLtf807mGE4\n1EKrHAv4mLnCF9POwlVPtRsDd9jjumJ/hWDHTE4yh5TuyUZZ0GohvZ2JgDWq\nfSe6ucz7XLUVpdJX0SlI1BFTtQm7DxNjnvhKcAij6DhmQUT8uEP4dWcQNG8v\nS2/EVDCysVYYZSTgB5JM7jzX47jTnseQNQPHMJWOtHuacirTmoxpMpTjEfKy\nhOjO\r\n=+lh2\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"0d80e67ce3f29ee53f1d3c1e43b767b074f360d9","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-11T03:34:22.618Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.3.1","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.11_1641872197869_0.9119800552802122","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.12-joshbwlng-update-readme-a31ea03c39aadd83a89c20511ac691727ead930f":{"name":"@balena/jellyfish-test-harness","version":"9.2.12-joshbwlng-update-readme-a31ea03c39aadd83a89c20511ac691727ead930f","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.12-joshbwlng-update-readme-a31ea03c39aadd83a89c20511ac691727ead930f","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"5d5c75b5c6c1842145eae643b31286a2dbb7934e","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.12-joshbwlng-update-readme-a31ea03c39aadd83a89c20511ac691727ead930f.tgz","fileCount":28,"integrity":"sha512-AMiMCxl8R0r7d9pt65r1lUPcgPa15Fz/PToEPQuCc/o4w2iKilyXihjpXigGtLYWn6oCxUNNEnQi+oSlb4XzRQ==","signatures":[{"sig":"MEQCIHkwNVP09rjV3wouQTFAinq/TJj3taHfbAb6Li8oVvQYAiAtfqzUkpbyYpOB7DBEDAtO/jIOrT+DWp/9Da83BE1mSw==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228210,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9MnECRA9TVsSAnZWagAAo+wQAJaojV9x8bhFJTzAyFRG\nyQzFTx1S2QRIhp9esFMKMDyjVej49Yxwa/1cu+JyUYg4R4/dnuji1C/hZwYS\nNjGDKMKnjOzdBeyb3scrNWDWR1oHS+dFgDVGHPKkyHnzNZc1Vf7o0B1tqcAw\nSghAZyFNpM+5DZrVwqSCUnBR4VwUX/kPL25tW+e/uOiNXMgAmsy98AEXRkTa\nn5V4cABaha9vys9LrRQZ/AriyQCPjWiVhsxbRmENSHIN/NKmFu+16WHsCgo4\nrowQJOAucSOYB+3XvRoRMexjIkC3moBLL32Sly8AUUvwFEe1WFjBrWi4axvB\n+jo/I5dU3SGEdvMn1kwm/Vy4p02s3H+GXYohO2iL4nBnHDOOvJPRivQYYXDT\nHa5rOX2RiobTM9N+PPnhEs968rI0OKzvgSfHbr2blCzpi5hKSn0X+0iekPmR\nTon91yhIIm3kTc9y/aK3V+C2d4S+3Fo0C2Od0C2ckC/1azn6wTpyF2PirE9j\nqJiPA47GCY5aQSLQQtuOPSsLFO3eUm+0EEcQVHVHniBl4BO5KrT9gAy9YisD\nGpI4xeRlodM112qkJzm420BS1sfuCBVg4M8Q50indsqv2icgC6b65RLm8aG3\ncTKs5UF7QqmHTnQK4dXrMuB/jmfe0tFNybw9+ZelJC+XTs3LUvbtmoKb1PK9\nc8gR\r\n=GcqG\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","readme":"**Notice: This utility has been discontinued. Test utilities are now provided by the same modules that provide the functionality. See the test utilities exported by [`jellyfish-core`](https://github.com/product-os/jellyfish-core) and [`jellyfish-worker`](https://github.com/product-os/jellyfish-worker).**\n\n# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"a31ea03c39aadd83a89c20511ac691727ead930f","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-29T04:56:55.613Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.3.1","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.12-joshbwlng-update-readme-a31ea03c39aadd83a89c20511ac691727ead930f_1643432388119_0.355375167956663","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."},"9.2.12":{"name":"@balena/jellyfish-test-harness","version":"9.2.12","author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","_id":"@balena/jellyfish-test-harness@9.2.12","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"}],"homepage":"https://github.com/product-os/jellyfish-test-harness#readme","bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"dist":{"shasum":"b31a0f8dfc44fb272a0213a06be33d4e90fe5438","tarball":"https://registry.npmjs.org/@balena/jellyfish-test-harness/-/jellyfish-test-harness-9.2.12.tgz","fileCount":28,"integrity":"sha512-TcSrHdTrLsof75BsJf46cm1dYLtedxzFdA1xYNpDfgNv7nu47JT7VecB4UBHk2zKA7cTZ6d+bZFStK9PmZ+Hgg==","signatures":[{"sig":"MEYCIQDlvx5PIkCAm8xSl78b7u3r5X/WP4UWUpMta5ipyQexBAIhALMgjYUTuYFNxbH7sCfZ96iXQFPYAX/DkulKz32/biWe","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":228145,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9MrhCRA9TVsSAnZWagAA2WMP/Aj7ryYgHWUHyvBnmXZk\nMee5NaFzRDurPWjNknzmNwYQHl3YJj5pcQqdNIbmxTm5+AGWzE+uPERP9Cd6\ngMh6efihENZwQwwd2g6yr5XJanxsdoH6sOgBXRwnSkj6MmBaS0XtbYQYw6EL\nI5gbQt/TQ1VKSkiooUf9D2opfhXICCY2Y3jWBrmttVssMfgKdsIRXTLmk4oc\nn87aTEl31icGyn4JK7MUJAcBEpdjNbTtyrZ2CDw2Dlf/yXmZBeR5qgoLM04M\nEEVeWgrutKCvrDfC0D274At0sz4lDlO9clGcMkZhADnNARvi/mlFYqJitMKP\nhi/fdI+P8z0gHzUD20RcDC4kLSl66Walp4cG0N2gm52fSuHU4KSCoHSM4Uci\n/YzqOxqo5AI1HDkxsUIg/C4zj4P2vyU/3qf4RL4mAFTj6K6XUz8W8m4m00AI\nl3qxBzEuW+lVrr0CjXySZ4/s+PeEfyiBOhgvGuZkBTKfIy+nSBbtxrRKYxdh\nmvcpHoQp3vch7/5RfnoxZsGcc6ongnJfYnf63HFGf5/Iu1SPEi90Jpa/L+Qr\nQ7R88XAgeKD5kRQOV3bLy7DwLz/m/whdCvlGa9CVV4HoQGcRRg6NmXP+L61b\n8Q8XyB/kMjJjXeI/fPLBE4iS8x81RnRfZPIYlBUDtboofpLcgfPXFgSxOFPg\nRprd\r\n=hoJL\r\n-----END PGP SIGNATURE-----\r\n"},"main":"build/index.js","types":"build/index.d.ts","deplint":{"files":["lib/**/*.{ts}"],"modules":["lib"]},"engines":{"node":">=14.2.0"},"gitHead":"3bc84134205113bcd10f8f7c48c07296057a07be","scripts":{"doc":"typedoc lib/ && touch docs/.nojekyll","lint":"balena-lint lib && deplint","test":"npm run lint && npm run test:unit","build":"npm run clean && tsc -p tsconfig.build.json","clean":"rimraf build","prepack":"npm run build","lint:fix":"balena-lint --fix lib","test:unit":"jest"},"_npmUser":{"name":"balena.io","email":"accounts+npm@balena.io"},"repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"versionist":{"publishedAt":"2022-01-29T05:02:39.277Z"},"_npmVersion":"6.14.15","description":"Test harness helpers for Jellyfish repos","directories":{"lib":"lib"},"lint-staged":{"*.ts":["balena-lint --fix"]},"_nodeVersion":"14.17.1","dependencies":{"nock":"^13.2.1","uuid":"^8.3.2","errio":"^1.2.2","lodash":"^4.17.21","morgan":"^1.10.0","express":"^4.17.2","body-parser":"^1.19.1","random-words":"^1.1.1","js-combinatorics":"^1.5.4","@balena/jellyfish-core":"^11.1.11","@balena/jellyfish-sync":"^6.3.1","@balena/jellyfish-queue":"^2.4.16","@balena/jellyfish-logger":"^4.0.15","@balena/jellyfish-worker":"^10.1.30","@balena/jellyfish-environment":"^6.0.8","@balena/jellyfish-plugin-base":"^2.2.22"},"_hasShrinkwrap":false,"devDependencies":{"jest":"^27.4.7","rimraf":"^3.0.2","deplint":"^1.1.3","ts-jest":"^27.1.2","typedoc":"^0.22.10","typescript":"^4.5.4","@types/jest":"^27.4.0","@types/node":"^16.11.19","@types/uuid":"^8.3.4","lint-staged":"^12.1.7","@balena/lint":"^6.2.0","@types/morgan":"^1.9.3","simple-git-hooks":"^2.7.0","@balena/jellyfish-types":"^2.0.0","@balena/jellyfish-config":"^2.0.2"},"simple-git-hooks":{"pre-commit":"npx lint-staged"},"_npmOperationalInternal":{"tmp":"tmp/jellyfish-test-harness_9.2.12_1643432673002_0.8880739069284176","host":"s3://npm-registry-packages"},"deprecated":"Deprecated: no longer maintained. The GitHub repository has been archived and no further releases will be published."}},"time":{"created":"2021-02-16T10:02:18.659Z","modified":"2026-01-29T10:12:07.225Z","1.0.0-add-integration-test-harness-bbea8d6c0c9bac9d77e247c46ed32f105691bdd2":"2021-02-16T10:02:18.942Z","1.0.0-add-integration-test-harness-8fd12f132561e4fcca3ab38f4aa930d8f8132432":"2021-02-17T10:43:45.703Z","1.0.0":"2021-02-18T02:37:33.833Z","2.0.0-evaluating-links-40d43fc31c2e302eeaf104d01200f58fde7fd255":"2021-03-02T17:15:02.444Z","1.0.1-test-trigger-contract-matching-54aec625c55121119684c9d30e297f5db5be4b14":"2021-03-08T02:49:41.720Z","1.0.1-bump-dependencies-manually-f6ccc95027669bc5d0073a66fad16f724a1f841a":"2021-03-08T03:18:28.726Z","1.0.1":"2021-03-08T03:21:21.370Z","1.0.2-test-trigger-contract-matching-19cfc0d87965b7f364589b0575e6b95494d12e9b":"2021-03-08T03:27:07.072Z","1.0.2-update-renovate-config-1cb25560e0d4448707c994217fb8aa3a5e341e80":"2021-03-08T04:48:19.024Z","1.0.2":"2021-03-08T04:51:48.691Z","1.0.3-renovate-non-major-2bf0238d2bc416351bf91282bd8875f0b9c6b508":"2021-03-08T09:03:01.862Z","1.0.3-renovate-non-major-c221de5b461b5ac174ba271b852862652a33e590":"2021-03-09T04:02:52.377Z","1.0.3-renovate-non-major-7aa509c3140527ddac116f7e27905c66ad9a78ee":"2021-03-09T10:38:07.040Z","1.0.3":"2021-03-09T12:48:24.466Z","1.0.4-test-sync-1-da839bdf947b8b28f010c2c3ccf6ffbc09079425":"2021-03-09T12:56:00.386Z","1.0.4-test-sync-1-9c97d45e2955a8339aa409d484241679f6d83dee":"2021-03-09T15:13:25.517Z","1.1.0-update-sync-520-f86221a1577b87ed37e7ae6ac0f1e0e5095e5ba5":"2021-03-09T17:33:47.977Z","1.1.0":"2021-03-09T17:39:44.388Z","1.1.1-renovate-non-major-80a2b52ad0a14ea31139663be89d46f9b37297f1":"2021-03-10T08:07:50.501Z","1.1.1":"2021-03-10T08:10:53.789Z","1.1.2-renovate-non-major-d424a59cc9ffd7894e28baf97ed4f7d27015827b":"2021-03-10T12:16:50.657Z","1.1.2":"2021-03-10T12:21:27.141Z","1.1.3-renovate-non-major-3329635c2af5a393610bf3835dc1d49f48d20678":"2021-03-11T00:44:47.117Z","1.1.3-renovate-non-major-72e568779069ec8ddf67774cf9fd6192b4003a30":"2021-03-11T00:49:18.987Z","1.1.3-renovate-non-major-2a19c562b46e31d35d90c0285469ee6daf65c6f2":"2021-03-11T00:54:16.107Z","1.1.3":"2021-03-11T00:57:20.029Z","1.1.4-renovate-non-major-9ab154858f9571e0e59ca993b6c50642c807130b":"2021-03-11T02:20:08.192Z","1.1.4":"2021-03-11T02:23:22.011Z","1.1.5-renovate-non-major-5f8fc199a477f54bb52316efeb4cb9049f4a7546":"2021-03-11T05:00:51.971Z","1.1.5":"2021-03-11T05:04:04.353Z","1.1.6-renovate-non-major-066bd286f5095cdb59a07a7efc34625b74686ca8":"2021-03-11T12:18:15.344Z","1.1.6":"2021-03-11T12:21:48.239Z","1.1.7-renovate-non-major-cdda5bd97bca54c465769efd73d0565d327c6cea":"2021-03-11T14:52:50.391Z","1.1.7-renovate-non-major-41d947ed9ca1ea9e128870a0a1719285e3dacc87":"2021-03-11T14:58:41.790Z","1.1.7":"2021-03-11T15:02:19.077Z","1.1.8-renovate-non-major-c8893efe2ff5ddf1b0f4af10933420b48ea72146":"2021-03-12T00:37:22.152Z","1.1.8":"2021-03-12T00:40:31.494Z","1.1.9-renovate-non-major-7605f40b362a5a35f8cf61c95d778f0e5a77d3e7":"2021-03-12T02:55:28.247Z","1.1.9":"2021-03-12T02:59:05.742Z","1.1.10-renovate-non-major-cd2ac4624315b2d3292516a8761d5076645742bb":"2021-03-12T04:35:59.867Z","1.1.10":"2021-03-12T04:39:32.306Z","1.1.11-renovate-non-major-75a3f81da06dd2d228478f1fb53805a4c4f759f4":"2021-03-12T09:45:28.964Z","1.1.11":"2021-03-12T09:48:22.901Z","1.1.12-renovate-non-major-86a99eecf673ac8718fe3b4923f992522d4c6899":"2021-03-12T12:23:40.533Z","1.1.12":"2021-03-12T12:26:48.656Z","1.1.13-renovate-non-major-923428c21d7eb24cbc4972b4dd8698a865eccfb7":"2021-03-12T20:23:52.488Z","1.1.13":"2021-03-12T20:26:48.343Z","1.1.14-renovate-non-major-b87efc52a35118f9687ffe80124cbdb773ed862e":"2021-03-12T23:30:57.359Z","1.1.14":"2021-03-12T23:34:04.798Z","1.1.15-renovate-non-major-19f497b78f9bfc0abf84c18aeb28a8c215f7edb9":"2021-03-13T03:14:21.837Z","1.1.15":"2021-03-13T03:17:26.770Z","1.1.16-renovate-non-major-16dc0035038c7e988064b4bc4df0b382d7b47922":"2021-03-13T06:35:29.827Z","1.1.16":"2021-03-13T06:38:22.324Z","1.1.17-renovate-non-major-da3b5585c38b00c1dcb574437efeaa7c4d37f9b8":"2021-03-13T13:39:06.655Z","1.1.17":"2021-03-13T13:42:01.176Z","1.1.18-renovate-non-major-6c3b92e5f7a9caa6111d4a565c8fb88a4434aaf2":"2021-03-13T15:00:33.961Z","1.1.18":"2021-03-13T15:03:51.727Z","1.1.19-renovate-non-major-dab44b34c4fd7ed2bf54ef55ff6a42fb7b06777d":"2021-03-15T04:04:08.286Z","1.1.19":"2021-03-15T04:07:38.027Z","1.1.20-renovate-non-major-dd51ae4a5be6ccf30316097d02e0f18e8c1c8f59":"2021-03-15T12:02:03.152Z","1.1.20":"2021-03-15T12:05:09.106Z","1.1.21-renovate-non-major-a3b98f2459daa882fc2e7687c16c8bf69d64d54a":"2021-03-15T14:31:05.819Z","1.1.21":"2021-03-15T14:34:13.454Z","1.1.22-renovate-non-major-49ab71303e8a9b33fb042db735fbf293dfea6995":"2021-03-15T18:03:50.530Z","1.1.22":"2021-03-15T18:07:19.334Z","1.1.23-renovate-non-major-6b1622ebf5ef506156101bab0cf5cc598a1b5c78":"2021-03-15T20:53:37.136Z","1.1.23":"2021-03-15T20:57:34.863Z","1.1.24-test-env-c69025449cc29eb6de6caf43ab8d1811ae6a57e5":"2021-03-16T01:37:37.372Z","1.1.24-renovate-non-major-0d79e75f8907438d2915b65bfcbd0f9b62f427ae":"2021-03-16T04:42:42.146Z","1.1.24":"2021-03-16T04:46:17.784Z","1.1.25-test-env-2d5e3f1a80a299dee4b1c6c9da9fa153e6db6541":"2021-03-17T01:30:06.393Z","1.1.25-renovate-non-major-b3c2fc966b663bc2257dd0eda13b0ea3f2335a7e":"2021-03-17T03:20:16.773Z","1.1.25":"2021-03-17T03:23:02.327Z","1.1.26-renovate-balena-jellyfish-environment-3-x-0c733fc0224028804d6eab5d6fd1ffaa511c6467":"2021-03-17T09:22:37.140Z","1.1.26-renovate-non-major-138bcba370c5a4d8354b583534a1000c7b1bc743":"2021-03-17T17:47:16.417Z","1.1.26":"2021-03-17T17:50:45.431Z","1.1.27-renovate-balena-jellyfish-environment-3-x-766dc4c8663e332e61f683d94267063a0905f43f":"2021-03-17T17:53:13.789Z","1.1.27-renovate-non-major-e55c18e33c1fbe17b13365aa1c252384715a95df":"2021-03-17T19:47:22.254Z","1.1.27":"2021-03-17T19:52:16.511Z","1.1.28-renovate-balena-jellyfish-environment-3-x-b53b81b6b6df332571cda82fad2cb0f2a886b707":"2021-03-17T19:54:16.489Z","1.1.28-test-core-versions-2d95ddf0c88503712e1161ed50c1617586a574c5":"2021-03-18T00:41:03.037Z","1.1.28":"2021-03-18T00:45:47.151Z","1.1.29-renovate-non-major-40e89169131476ccba0502f515f3848574ff6371":"2021-03-18T00:51:58.537Z","1.1.29":"2021-03-18T00:55:08.818Z","1.1.30-renovate-non-major-1e02115211b25f9ee7fdd90a0fd9fb2b64f1ccc8":"2021-03-18T02:50:11.378Z","1.1.30-renovate-non-major-6d67c15125ceb0e6012fd8cf8dabff8a5d040f32":"2021-03-18T02:56:06.501Z","1.1.30-renovate-non-major-7585cc2d79ae4e98d65e79e8f6f59996fd06d8a6":"2021-03-18T03:02:05.609Z","1.1.30":"2021-03-18T03:05:20.617Z","1.1.31-renovate-non-major-eb84f65242a12fa4d363d23ce469521a862cac94":"2021-03-18T05:00:59.823Z","1.1.31":"2021-03-18T05:03:40.475Z","1.1.32-renovate-non-major-da538724686e60ff1978ad6f3da0772ed8b97f5c":"2021-03-18T09:27:11.979Z","1.1.32":"2021-03-18T09:30:03.079Z","1.1.33-renovate-non-major-9cae71d4fd3a51dc1b33bae8ef693c7228ca6b93":"2021-03-18T12:00:44.002Z","1.1.33":"2021-03-18T12:03:44.316Z","1.1.34-renovate-non-major-c44cabaf15164b2ad8d7c9e35a96d760f6c35e35":"2021-03-19T21:52:43.881Z","1.1.34":"2021-03-19T21:56:51.977Z","1.1.35-renovate-non-major-40dfa3a68a0e6ccfba0327010368bdbda951c327":"2021-03-21T20:55:00.733Z","1.1.35":"2021-03-21T20:58:01.283Z","1.1.36-renovate-non-major-0fd7d097d7640bab531e27fe3b1383b8a191e96b":"2021-03-21T22:56:07.693Z","1.1.36":"2021-03-21T22:59:24.513Z","1.1.37-renovate-non-major-e7aef7f59ef43885e599c254e34e3e5585dfb8f6":"2021-03-22T00:33:52.373Z","1.1.37":"2021-03-22T00:37:03.123Z","1.1.38-renovate-non-major-da11515f1708f0764182ef885eae6337c81d574c":"2021-03-22T02:52:33.146Z","1.1.38":"2021-03-22T02:55:37.331Z","1.1.39-renovate-non-major-207e7120aa1ec9a5abb970a342e2eff55e2c2737":"2021-03-22T05:10:18.804Z","1.1.39":"2021-03-22T05:13:14.038Z","1.1.40-renovate-non-major-854eb51cfcb16d21c09bb8f6a9f08fd6caa39a43":"2021-03-22T10:23:22.418Z","1.1.40":"2021-03-22T10:26:18.567Z","1.1.41-renovate-non-major-efe58e2f770249261d4cd96c35a08dcd77a26cd7":"2021-03-22T10:29:46.683Z","1.1.41-renovate-non-major-b75ebd1429e2c741ca77348e89075090613bc8a1":"2021-03-22T10:35:38.053Z","1.1.41":"2021-03-22T10:38:33.794Z","1.1.42-renovate-non-major-0aac8bdfeee6e9873430bdd06a969018220253f8":"2021-03-22T12:52:28.740Z","1.1.42":"2021-03-22T12:57:22.014Z","1.1.43-renovate-non-major-297c35186afaffb1319c4d1c4c4dde0cdb036f46":"2021-03-22T14:10:47.621Z","1.1.43":"2021-03-22T14:14:34.088Z","1.1.44-renovate-non-major-fbef477e6d8abe3049afc6b511edcf0bea8c713d":"2021-03-22T17:19:58.545Z","1.1.44":"2021-03-22T17:22:49.266Z","1.1.45-renovate-balena-jellyfish-environment-4-x-b1f2855a3b3920aceb47e70c9e927793e91aab33":"2021-03-23T01:29:31.459Z","1.1.45-renovate-non-major-01d9f89c34a1c0314f57f5f4cc091f6996801ec1":"2021-03-23T03:31:12.988Z","1.1.45-renovate-balena-jellyfish-plugin-base-2-x-a3d4db6e5f5dfa4c25c17d760bad2b898b2ee948":"2021-03-23T03:31:56.162Z","1.1.45":"2021-03-23T03:34:45.725Z","1.1.46-renovate-balena-jellyfish-environment-4-x-2118248f255b8460ff5fcc4bcf8fb3df9d3e6a70":"2021-03-23T03:37:55.396Z","1.1.46-renovate-balena-jellyfish-plugin-base-2-x-fc25de7ab241867a63f0fcb9a4c19adf75e5f539":"2021-03-23T03:40:31.648Z","1.1.46-renovate-balena-jellyfish-plugin-base-2-x-d70f4d998aa2a0f910792b6167694b47f43ca96a":"2021-03-24T05:49:26.703Z","1.1.46-renovate-balena-jellyfish-plugin-base-2-x-ffb0f92d9348d3d7c51a26c5af78f1ff8526cceb":"2021-03-24T10:39:57.715Z","1.1.46-renovate-non-major-83207af0351c4e8c05a36c37fad7c2e3ec1576fe":"2021-03-25T02:54:51.585Z","1.1.46-renovate-balena-jellyfish-environment-4-x-82a17582998aeb36f9d898b18b991f4dedbe3a5c":"2021-03-25T02:56:05.200Z","1.1.46":"2021-03-25T02:58:05.572Z","1.1.46-renovate-balena-jellyfish-environment-4-x-2807be8ebcf4689a07f5a0fb0c1203bd90dbaa9c":"2021-03-25T03:00:41.689Z","1.1.46-renovate-balena-jellyfish-plugin-base-2-x-bf7115deca1cbb69f7dfe2d8ed58f3f1397c513a":"2021-03-25T03:02:06.176Z","1.1.47-renovate-balena-jellyfish-environment-4-x-fc38f3be46e301d3d882160965575307b3b9bf49":"2021-03-25T03:04:47.247Z","1.1.47-renovate-balena-jellyfish-plugin-base-2-x-7861174f9bbdd543557b7fb439c3920d60707cd1":"2021-03-25T03:05:45.559Z","1.1.47-renovate-non-major-49d8c3f18508b784540549e5bc00156e5134135b":"2021-03-25T04:30:26.706Z","1.1.47-renovate-balena-jellyfish-environment-4-x-de4e18b5fc9359b30ea4482bf50b318209f7a6ec":"2021-03-25T04:31:40.697Z","1.1.47":"2021-03-25T04:33:13.717Z","1.1.48-renovate-balena-jellyfish-environment-4-x-b5706a787e99b62615b4cfca8810e2bf11e268d1":"2021-03-25T04:37:28.994Z","1.1.48-renovate-balena-jellyfish-plugin-base-2-x-d7b03201632ebd16eff13b4af0675c988314141e":"2021-03-25T04:38:19.043Z","1.1.48-renovate-non-major-e9b3398e2b8d39a572037681acdbcb040bef57de":"2021-03-25T10:09:30.164Z","1.1.48-renovate-balena-jellyfish-plugin-base-2-x-5dcdab1a5c4cb39881c54b6a67593a3b208bd75b":"2021-03-25T10:11:19.182Z","1.1.48":"2021-03-25T10:12:25.976Z","1.1.49-renovate-balena-jellyfish-environment-4-x-ef7f4d15755856d36058ef3ceb2215e255d038ab":"2021-03-25T10:16:19.546Z","1.1.49-renovate-balena-jellyfish-plugin-base-2-x-a34639b52ea4712fbd0e8f0a8ca257f9dbf568c1":"2021-03-25T10:16:39.017Z","1.1.49-renovate-non-major-96f7e5e401b10651fa877ab3e024d2051b052d8b":"2021-03-25T13:33:46.697Z","1.1.49":"2021-03-25T13:37:02.522Z","1.1.50-renovate-balena-jellyfish-environment-4-x-dd32c4aec9d36fec5aa0311dc4b48abe45153a95":"2021-03-25T13:40:59.392Z","1.1.50-renovate-balena-jellyfish-plugin-base-2-x-a67ef312829bc89dd165a7b9f4ebc239e9b66c03":"2021-03-25T13:41:28.042Z","1.1.50-renovate-non-major-392f3d11105eef22f83ccd34bb7eeda51d467ba0":"2021-03-25T16:43:36.997Z","1.1.50-renovate-balena-jellyfish-plugin-base-2-x-238cae02942601313de19255b20e22d764a45ac3":"2021-03-25T16:44:56.410Z","1.1.50":"2021-03-25T16:47:30.409Z","1.1.50-renovate-balena-jellyfish-environment-4-x-11a9422aa2b9972b95f2ec0c115b59373a171dd1":"2021-03-25T16:50:53.807Z","1.1.51-renovate-balena-jellyfish-plugin-base-2-x-746a5d5159ec36bc53ab3163947cf0818364c0fa":"2021-03-25T16:51:16.845Z","1.1.51-renovate-balena-jellyfish-environment-4-x-8158ef675895b31827f4712fbc66fa3ebee88960":"2021-03-25T16:53:26.752Z","1.1.51-renovate-non-major-b6c639f7321682f5e6f7a88172be917469e268d0":"2021-03-25T19:20:33.721Z","1.1.51":"2021-03-25T19:23:15.566Z","1.1.52-renovate-balena-jellyfish-environment-4-x-4277b18766a3a5f9f2fdb8dfff0f61853207b358":"2021-03-25T19:27:14.882Z","1.1.52-renovate-balena-jellyfish-plugin-base-2-x-85f55673aefeed3a5837b663915fcc187daa06b4":"2021-03-25T19:28:15.933Z","1.1.52-renovate-balena-jellyfish-environment-4-x-d0cd0bfa861180b89d088f4d87d22bc52ae1eb6f":"2021-03-25T19:32:19.288Z","1.1.52-renovate-non-major-f03196561448f6bb2eeaed110fc8b56253e2bf6f":"2021-03-25T22:10:28.986Z","1.1.52-renovate-balena-jellyfish-plugin-base-2-x-cf46240292be02d98d815ec5ad7d52562d669ff5":"2021-03-25T22:11:40.740Z","1.1.52":"2021-03-25T22:13:51.258Z","1.1.53-renovate-balena-jellyfish-environment-4-x-290c2f9e0c9aa7987764835d346d3f7b7b3f7d25":"2021-03-25T22:17:48.797Z","1.1.53-renovate-balena-jellyfish-plugin-base-2-x-9a0c122728c5fe973722c2dd1a907b6bf77bcf92":"2021-03-25T22:18:13.783Z","1.1.53-renovate-balena-jellyfish-plugin-base-2-x-2313641e147af2b2fd919cad1c837387e994ea16":"2021-03-26T01:23:43.753Z","1.1.53-renovate-non-major-2414f767e7213fd21bfa2bf01a464400653a9b05":"2021-03-26T04:07:34.567Z","1.1.53":"2021-03-26T04:11:02.439Z","1.1.54-renovate-balena-jellyfish-environment-4-x-12471b17de4c517ef529ad1505d04e71d38e8e5c":"2021-03-26T04:16:02.719Z","1.1.54-renovate-balena-jellyfish-plugin-base-2-x-d2c3d93f4a9b979770b982fcb7fb5a82462c863a":"2021-03-26T04:18:14.148Z","1.1.54-replace-husky-61714de10c467b4c6d519ab6fbe84eb25442e348":"2021-03-26T05:54:48.580Z","1.1.54":"2021-03-26T05:57:55.511Z","1.1.55-renovate-balena-jellyfish-environment-4-x-04624dadaae71ebc1ec354158cb76f03669ddab7":"2021-03-26T06:01:56.802Z","1.1.55-renovate-balena-jellyfish-plugin-base-2-x-cf4a85bd5c6e4d98ca8c03311a35a52ee4510502":"2021-03-26T06:03:06.332Z","1.1.55-renovate-non-major-1b6dc405d34eb900dc9a7fd125e13ed464346a7e":"2021-03-26T11:25:07.028Z","1.1.55":"2021-03-26T11:29:01.049Z","1.1.56-renovate-balena-jellyfish-environment-4-x-7914a5871de09ffc0bdbd232d7f3929d19c3f9ad":"2021-03-26T11:32:46.156Z","1.1.56-renovate-balena-jellyfish-plugin-base-2-x-c7b9d0713fb5588f15e53744591a2cad80d3546c":"2021-03-26T11:33:26.779Z","1.1.56-renovate-balena-jellyfish-plugin-base-2-x-74a9968b492332aaa607648588a08549a0c52416":"2021-03-26T16:14:56.140Z","1.1.56-renovate-non-major-9912464379e8e2ea76fc07774add00420bc43138":"2021-03-26T22:47:06.777Z","1.1.56":"2021-03-26T22:50:00.625Z","1.1.57-renovate-balena-jellyfish-plugin-base-2-x-255da6d7260ca9c543b9a8ba3cb7be71c9b5b87a":"2021-03-26T22:53:54.364Z","1.1.57-renovate-balena-jellyfish-environment-4-x-97af69eb1962c89e72229c696e74ce3d5f1f2a2d":"2021-03-26T22:55:30.263Z","1.1.57-renovate-non-major-eda2a735f70abcefd79e78fb1219984ee914b8aa":"2021-03-27T02:23:52.786Z","1.1.57":"2021-03-27T02:27:00.424Z","1.1.58-renovate-balena-jellyfish-plugin-base-2-x-f095fc71d6a542b6dcb13e838da12ea3b6d485b2":"2021-03-27T02:30:20.232Z","1.1.58-renovate-balena-jellyfish-environment-4-x-897205464811cb422e21aa17e1df31e0069a5f4f":"2021-03-27T02:32:13.957Z","1.1.58-renovate-balena-jellyfish-plugin-base-2-x-0819184cbe130f4db65f7e620366f56c83d224d0":"2021-03-29T13:27:03.534Z","1.1.58-renovate-balena-jellyfish-plugin-base-2-x-a0b24e663af0005d89968b1d9929c02eb5a525dd":"2021-03-29T21:02:06.385Z","1.1.58-renovate-balena-jellyfish-environment-4-x-ec2807f940160ce953f8ae9d134a19d722183f3a":"2021-03-30T10:55:25.570Z","1.1.58-renovate-balena-jellyfish-plugin-base-2-x-5475c7ced937d06cabe661c813b041a7055e066e":"2021-03-30T10:56:52.292Z","1.1.58-renovate-balena-jellyfish-plugin-base-2-x-1398396dbc4d48dff9692cd6b848083708aa5ad3":"2021-03-30T12:19:48.318Z","1.1.58-renovate-non-major-926b47bc7e4179a7bc7f71bbbce4c5c912d380e1":"2021-03-30T15:58:53.720Z","1.1.58-renovate-balena-jellyfish-plugin-base-2-x-66511eb2a00c69b57e34e34c060848dc8b50fc6d":"2021-03-30T16:00:00.474Z","1.1.58":"2021-03-30T16:02:32.131Z","1.1.59-renovate-balena-jellyfish-environment-4-x-14f087fec609331239f71ef0ec0b8a412f61f919":"2021-03-30T16:08:38.742Z","1.1.59-renovate-balena-jellyfish-plugin-base-2-x-a0407daa73aed232cf1a92e295e6b7e31aa14c5c":"2021-03-31T02:14:56.767Z","1.1.59-renovate-balena-jellyfish-environment-4-x-1849b2aa6e10667112e5df5f302cbcec040e7c4d":"2021-03-31T07:06:35.331Z","1.1.59-renovate-non-major-f3591b2ddabdb888f5eba926ff5a6532f20301d3":"2021-03-31T07:08:58.597Z","1.1.59":"2021-03-31T07:10:21.306Z","1.1.60-renovate-non-major-69f760670af6d5d5c80e1065816fa009a49ed32c":"2021-03-31T07:13:50.763Z","1.1.60-renovate-balena-jellyfish-plugin-base-2-x-c48c55d67a7d573d3b4d9fa1cab292016104d726":"2021-03-31T07:14:31.126Z","1.1.60-renovate-non-major-7e34a169ab7056226f4cf89f950ca045e12e9660":"2021-03-31T07:21:51.233Z","1.1.60":"2021-03-31T07:24:58.154Z","1.1.61-renovate-balena-jellyfish-plugin-base-2-x-dbbe9837f803582e950efee895542a074f2fedc2":"2021-03-31T07:28:51.457Z","1.1.61-renovate-non-major-efc4c51b0648509c584a38473ed65de9248ac0af":"2021-03-31T09:02:52.085Z","1.1.61":"2021-03-31T09:06:41.961Z","1.1.62-renovate-balena-jellyfish-plugin-base-2-x-629cff1bb85d0f4e81f58bbf0266e0b95c8a61b0":"2021-03-31T09:10:22.807Z","1.1.62-renovate-non-major-18a25a86ea920b03c9857bc81d6f67e3b3f5bd02":"2021-03-31T11:23:12.113Z","1.1.62-renovate-balena-jellyfish-plugin-base-2-x-50bcaaf6a02a4cd617bd60f571dbbc0a802023b7":"2021-03-31T11:23:38.823Z","1.1.62":"2021-03-31T11:26:28.125Z","1.1.63-renovate-balena-jellyfish-plugin-base-2-x-c4d5a03395099c17e54656b8101b65d0bc934843":"2021-03-31T11:29:50.983Z","1.1.63-renovate-non-major-f4902a4642f530df07bae136f1fd105f3a54a81f":"2021-03-31T12:39:04.328Z","1.1.63":"2021-03-31T12:42:16.041Z","1.1.64-renovate-balena-jellyfish-plugin-base-2-x-84bf88f17f2a0b885b7e5e2820f9ac49f7fe4183":"2021-03-31T12:44:52.244Z","1.1.64-renovate-non-major-ba5ed53168b252e579fecc7895e3f6b632191956":"2021-03-31T23:48:57.543Z","1.1.64":"2021-03-31T23:52:02.633Z","1.1.65-renovate-balena-jellyfish-plugin-base-2-x-c92318e3dafde19285b95506b3f388080925f3bf":"2021-03-31T23:54:46.355Z","1.1.65":"2021-04-01T00:47:19.720Z","1.1.66-renovate-non-major-62084e611f66f71208b0b6968fd626db27485720":"2021-04-01T00:52:57.426Z","1.1.66-renovate-non-major-7e4b28069a54f8e472e23b17c6dd4b624ca8ceff":"2021-04-01T00:59:03.903Z","1.1.66":"2021-04-01T01:03:04.121Z","1.1.67-renovate-non-major-7ec9bec730f9e6dffa9ab94334b70f5df95a0a14":"2021-04-01T01:05:55.121Z","1.1.67-renovate-non-major-3fa4f1f3f3b54d595e2ed2d2f24ea8c79cda0260":"2021-04-01T01:12:33.316Z","1.1.67":"2021-04-01T01:15:35.985Z","1.1.68-renovate-non-major-5cf5b6a868fcec610f2f74bd8344461260c7316b":"2021-04-01T05:30:15.508Z","1.1.68":"2021-04-01T05:33:46.230Z","1.1.69-renovate-non-major-2e37d6cf2dbe5ed0e8922e6b934e0ba91ed04204":"2021-04-01T14:00:24.883Z","1.1.69-renovate-non-major-a95fb6c79cc54ad231bedc9379ec2452f2bf8f94":"2021-04-01T14:05:13.816Z","1.1.69-renovate-non-major-679a7cfd1aaf2019d0f213b0e5c5af15b8139008":"2021-04-01T14:09:37.727Z","1.1.69":"2021-04-01T14:15:37.954Z","1.1.70-renovate-non-major-253f160c04eccc84a502c516378210cf8a29b4b6":"2021-04-01T16:32:35.011Z","1.1.70":"2021-04-01T16:35:42.352Z","1.1.71-renovate-non-major-9380da43360204474251f10bd09e91f30dbb94cd":"2021-04-01T23:24:57.890Z","1.1.71":"2021-04-01T23:28:15.045Z","1.1.72-renovate-non-major-3d06a73ec6129aac266896223e6bd4b188a982f4":"2021-04-02T00:43:02.137Z","1.1.72":"2021-04-02T00:46:05.130Z","1.1.73-renovate-non-major-1b339118edad495f0d6bbdb6716a9e39911f80c0":"2021-04-02T02:58:20.485Z","1.1.73":"2021-04-02T03:01:23.756Z","1.1.74-renovate-non-major-f2cac0a13268370622c75134efecd797a9e0609b":"2021-04-02T04:19:45.940Z","1.1.74":"2021-04-02T04:25:49.492Z","1.1.75-renovate-non-major-3797f2a9fcf5f8ba860e242fe4230c9e996a75ec":"2021-04-02T16:47:23.103Z","1.1.75":"2021-04-02T16:50:46.797Z","1.1.76-renovate-non-major-06fa859064a4c7b043edbd13ca4e32c64df789dd":"2021-04-02T17:54:32.487Z","1.1.76":"2021-04-02T17:57:14.678Z","1.1.77-renovate-non-major-9d0de6602a7cca801fb03bd36d625b9bf8c287f2":"2021-04-02T18:52:13.546Z","1.1.77":"2021-04-02T18:55:51.694Z","1.1.78-renovate-non-major-2b4dc31d64e36826545460c432e6a18da865805f":"2021-04-02T19:48:02.110Z","1.1.78":"2021-04-02T19:50:58.701Z","1.1.79-renovate-non-major-580fde790b72276c90a16856cade82c455198c80":"2021-04-02T19:55:10.889Z","1.1.79-renovate-non-major-a20b50e54e3dafce711a92b6ce0ad98bcea94d70":"2021-04-02T20:02:08.202Z","1.1.79":"2021-04-02T20:05:19.145Z","1.1.80-renovate-non-major-99de60af1fec9de85d3ce365991a2a0eeedef14b":"2021-04-02T21:39:21.033Z","1.1.80":"2021-04-02T21:42:13.347Z","1.1.81-renovate-non-major-b214218402b83078d291bf7aa4c913d87e0170f0":"2021-04-02T22:56:41.896Z","1.1.81-renovate-non-major-5869b947d5a89130842f03cca4d778b2731fe088":"2021-04-02T23:00:34.158Z","1.1.81":"2021-04-02T23:03:22.643Z","1.1.82-renovate-non-major-28534df28d942e3d3497125ad85f224f37da1c5b":"2021-04-02T23:43:22.307Z","1.1.82":"2021-04-02T23:46:02.439Z","1.1.83-renovate-non-major-8086d3630d5a5036289a25ca6c35c13e43219109":"2021-04-03T01:18:05.391Z","1.1.83-renovate-non-major-1f7b450b7665167e8927efaa511374147406cea0":"2021-04-03T01:23:01.794Z","1.1.83":"2021-04-03T01:26:52.387Z","1.1.84-renovate-non-major-55d0b0747427ca851a57911da26124327216048a":"2021-04-03T04:08:44.402Z","1.1.84":"2021-04-03T04:11:55.987Z","1.1.85-renovate-non-major-ea8b6634f19a157ba4b83005c8010557a1694cc1":"2021-04-03T11:35:54.628Z","1.1.85":"2021-04-03T11:38:53.341Z","1.1.86-renovate-non-major-adfe7e6572a2921c26584496087f7df37399bf22":"2021-04-03T15:51:32.176Z","1.1.86":"2021-04-03T15:54:37.421Z","1.1.87-renovate-non-major-c11da45dcd38ab485b1ba5615ef4e092c3645958":"2021-04-03T21:04:39.997Z","1.1.87-renovate-non-major-b14bab0dcb9544e60e05af892e7648ce10b8973c":"2021-04-03T21:09:48.737Z","1.1.87":"2021-04-03T21:12:33.542Z","1.1.88-renovate-non-major-65845ac21fe254201971be4323a96a708a00c1e2":"2021-04-03T23:14:20.123Z","1.1.88":"2021-04-03T23:17:09.858Z","1.1.89-renovate-non-major-00f698004a22bab26871a40bab7f88043dd5d32e":"2021-04-04T01:54:15.199Z","1.1.89":"2021-04-04T01:57:42.936Z","1.1.90-renovate-non-major-36215a9769b126e7fdaded0c43de5882b890864c":"2021-04-04T03:32:48.161Z","1.1.90":"2021-04-04T03:35:55.535Z","1.1.91-renovate-non-major-903353eb5d86bcdef7d9443be7a39780a1f5dd53":"2021-04-04T05:03:49.256Z","1.1.91":"2021-04-04T05:06:58.676Z","1.1.92-renovate-non-major-8a942b88ab92a9173e1d0f625187135ed0180a49":"2021-04-04T11:12:58.813Z","1.1.92":"2021-04-04T11:15:52.423Z","1.1.93-renovate-non-major-39ebb6051fedc10a8029ef4a4ffb9efd14ed2d55":"2021-04-04T12:26:49.036Z","1.1.93":"2021-04-04T12:29:52.419Z","1.1.94-renovate-non-major-39d521859aaa42e1a44c416376b9642e558e14aa":"2021-04-05T01:44:12.970Z","1.1.94-renovate-non-major-37e503064a5225c2dde047318df4e8dc2c90d3b7":"2021-04-05T01:48:32.621Z","1.1.94":"2021-04-05T01:51:13.368Z","1.1.95-renovate-non-major-2489bfc71c26f05fe6479562d6bb0ad20dd66610":"2021-04-06T13:59:44.006Z","1.1.95-renovate-non-major-5c96ea3f91f8d1aa712b6b5ca7271f7382983ac6":"2021-04-06T15:12:11.412Z","1.1.95-renovate-balena-jellyfish-worker-4-x-bbf5a5303c1bb4b86f738617e58c70d0114b6771":"2021-04-06T15:13:26.171Z","1.1.95":"2021-04-06T15:15:27.384Z","1.1.96-renovate-balena-jellyfish-worker-4-x-fec3fff06c416f5195e7512582ae44a9bd96f55d":"2021-04-06T15:21:06.037Z","1.1.96-renovate-non-major-5074b4482d3dab3de66cdc4710133802dd94f5c5":"2021-04-06T17:25:49.832Z","1.1.96":"2021-04-06T17:29:13.892Z","1.1.97-renovate-balena-jellyfish-worker-4-x-13bd70744238e9353364dac3a0c4cfffda42ab1f":"2021-04-06T17:32:53.374Z","1.1.97-renovate-non-major-9ef29441fbf7dfbe48baf00969d4a057ac2ee6cc":"2021-04-06T18:23:03.966Z","1.1.97-renovate-balena-jellyfish-worker-4-x-ed24e9316bef8d6c59d1ca73b4cdc0c0ae96fc51":"2021-04-06T18:24:16.289Z","1.1.97":"2021-04-06T18:26:25.538Z","1.1.98-renovate-balena-jellyfish-worker-4-x-27b03b501c0a0a03e173f6726db15e8b778d0190":"2021-04-06T18:30:34.173Z","1.1.98-renovate-non-major-94a6a3ea6592a7997a532852ea4483315833df02":"2021-04-06T19:29:25.599Z","1.1.98-renovate-balena-jellyfish-worker-4-x-21335dc3b981a1a1fb5af44c2c2491cb88292175":"2021-04-06T19:30:49.950Z","1.1.98":"2021-04-06T19:32:08.712Z","1.1.99-renovate-balena-jellyfish-worker-4-x-07f7e9b7806a53cf5e867bedd717e88e7c9cfa34":"2021-04-06T19:36:04.474Z","1.1.99-renovate-non-major-e6814d0989bdf6629a302575ae8bc89447d8800c":"2021-04-06T20:40:23.494Z","1.1.99-renovate-balena-jellyfish-worker-4-x-ab4476c6766fb6324b36a61fa4b9618a44284411":"2021-04-06T20:41:27.238Z","1.1.99":"2021-04-06T20:43:26.897Z","1.1.100-renovate-balena-jellyfish-worker-4-x-4355c9dd9ee2153e8dc5bf03d54301ee7961b584":"2021-04-06T20:47:32.793Z","1.1.100-renovate-non-major-70a5c2daf9a991694751b672975f1ecbc7b2a5ea":"2021-04-06T21:59:38.873Z","1.1.100-renovate-non-major-cab23f5352988d6d5d2948654e3a93c099b011de":"2021-04-06T22:05:02.390Z","1.1.100":"2021-04-06T22:08:05.958Z","1.1.101-renovate-balena-jellyfish-worker-4-x-4582b9fd3375a89fb01506dbcf90bd964cec69f5":"2021-04-06T22:11:50.769Z","1.1.101-renovate-non-major-7e8a2a4e97a63f023b2204d2aca66635617e3950":"2021-04-07T00:07:09.652Z","1.1.101-renovate-balena-jellyfish-worker-4-x-bf3861d0452b07781ac8dd332cb41adae7d935b7":"2021-04-07T00:07:58.451Z","1.1.101":"2021-04-07T00:10:17.574Z","1.1.102-renovate-non-major-3d9268138e46d5ab78148c713f26d4f325d82e9d":"2021-04-07T00:28:52.662Z","1.1.102-renovate-balena-jellyfish-worker-4-x-a520de999745fd22ada659bdd894327442cb1d37":"2021-04-07T00:30:16.711Z","1.1.102-renovate-non-major-20ea30fc8e8f2190581ec76acb97946789610fc1":"2021-04-07T00:33:30.603Z","1.1.102":"2021-04-07T00:36:41.914Z","1.1.103-renovate-balena-jellyfish-worker-4-x-3695bddea3f9cdcd2d36d3ec8f597d6efe3d028f":"2021-04-07T00:39:46.472Z","1.1.103":"2021-04-07T01:27:19.237Z","1.1.104-renovate-non-major-f8fa924695db671b5ac53a4a74566b9ebba018b7":"2021-04-07T01:30:58.236Z","1.1.104":"2021-04-07T01:36:51.392Z","1.1.105-renovate-non-major-eb31f7dfb3980d83a4226a9ae34be4f48f71b992":"2021-04-07T02:37:25.919Z","1.1.105":"2021-04-07T02:42:12.782Z","1.1.106-renovate-non-major-33c20aa5b82b0973dfc85f5a19d071474621e91d":"2021-04-07T03:34:40.908Z","1.1.106":"2021-04-07T03:37:30.072Z","1.1.107-renovate-non-major-b2a2d4f47a19b859085f04386ba9f38b96e83417":"2021-04-07T05:05:19.351Z","1.1.107-renovate-non-major-956e6812351d266caf6cf6d0f0d8f4f5e0976427":"2021-04-07T14:49:22.822Z","1.1.107":"2021-04-07T14:52:38.390Z","1.1.108-renovate-non-major-4e6ece9e6b9732b7433063b143dfd54967edcf5b":"2021-04-07T14:57:56.771Z","1.1.108":"2021-04-07T15:01:20.190Z","1.1.109-renovate-non-major-8ca05e816e6aae5e66213d596697ce5a82505a5f":"2021-04-07T23:26:44.536Z","1.1.109":"2021-04-07T23:29:39.668Z","1.1.110-renovate-non-major-c795faf104b229e28e4c2cff89cb50cd9f47cc6b":"2021-04-08T02:01:57.343Z","1.1.110":"2021-04-08T02:05:39.142Z","1.1.111-renovate-non-major-82a09acec3a1f73d3556306f672f66b0f7cf458b":"2021-04-08T07:17:35.956Z","1.1.111":"2021-04-08T07:20:51.146Z","1.1.112-renovate-non-major-095de296cb42cbbfe7cf74e94636cc485cd3ead8":"2021-04-08T09:26:00.799Z","1.1.112":"2021-04-08T09:29:45.563Z","1.1.113-renovate-non-major-56288de9ba2d1b7df9cdf4188518f682e0f2f688":"2021-04-08T21:06:44.064Z","1.1.113":"2021-04-08T21:10:53.104Z","1.1.114-renovate-non-major-ee2213231664f7c4741ad846c7dc7cb4f5d621e4":"2021-04-08T21:54:28.005Z","1.1.114":"2021-04-08T21:57:54.451Z","1.1.115-renovate-eslint-plugin-promise-5-x-04cb635e6b7b32c454453427f7476d54aba9b2d4":"2021-04-09T20:53:51.048Z","1.1.115-renovate-eslint-plugin-promise-5-x-45a9e67b38e9eadc6a90429f951eaa7b15205793":"2021-04-09T23:41:53.358Z","1.1.115-renovate-non-major-2389f8584b9880fd48e86b6bc8e779bd7bffecf8":"2021-04-09T23:46:38.816Z","1.1.115":"2021-04-09T23:50:03.387Z","1.1.116-renovate-eslint-plugin-promise-5-x-d4c07c8b497f432766cb7c7012a4690d5000d078":"2021-04-09T23:53:01.095Z","1.1.116":"2021-04-10T00:13:09.969Z","1.1.117-renovate-non-major-e906be80f271c88cc2d5cf359a665d77f7649f6f":"2021-04-10T00:18:28.247Z","1.1.117":"2021-04-10T00:23:07.888Z","1.1.117-renovate-non-major-bd8b3ef4dadf60cc283c316e5b3cc297e3078393":"2021-04-10T00:25:16.460Z","1.1.118-renovate-non-major-be2afe88d5c8313593786f4e2cea40810ab8fabc":"2021-04-10T00:29:18.540Z","1.1.118":"2021-04-10T00:32:47.044Z","1.1.119-renovate-non-major-cc7c406090e2b3e1199162e9b626a7735f128e12":"2021-04-10T00:36:44.694Z","1.1.119":"2021-04-10T00:41:01.321Z","1.1.120-renovate-non-major-b0e18c39f447913d0112fb77219b2f3f472ce491":"2021-04-10T02:04:46.632Z","1.1.120":"2021-04-10T02:08:16.302Z","1.1.121-renovate-non-major-e0c3676fd6396046d7a666992bf88fa5c1d2b509":"2021-04-10T09:19:39.864Z","1.1.121":"2021-04-10T09:23:22.430Z","1.1.122-renovate-non-major-caa89ffe987d72f808533a07f5c21e88a467b695":"2021-04-10T11:12:38.998Z","1.1.122-renovate-non-major-e6af08072473e804c33c1f8ee3cd74bb4a524201":"2021-04-10T11:18:59.804Z","1.1.122":"2021-04-10T11:25:02.845Z","1.1.123-renovate-non-major-19dc7a83194941854975180ed78d8a22f3ca2af7":"2021-04-10T12:58:10.701Z","1.1.123":"2021-04-10T13:00:47.509Z","1.1.124-renovate-non-major-759191aa2432a467980140e40558403a281b56a2":"2021-04-10T14:27:48.095Z","1.1.124":"2021-04-10T14:30:44.057Z","1.1.125-renovate-non-major-e56cee80696501cce1b78bee6f52cabdbc3f9767":"2021-04-10T19:10:01.813Z","1.1.125":"2021-04-10T19:13:12.682Z","1.1.126-renovate-non-major-51cf1a99580f76fddd211ab48a0a4518477ff445":"2021-04-10T21:23:21.204Z","1.1.126":"2021-04-10T21:26:34.681Z","1.1.127-renovate-non-major-388dee3421c04b8dc44f2adfadf7d5eaba6d8cc0":"2021-04-10T22:55:46.342Z","1.1.127":"2021-04-10T22:59:38.140Z","1.1.128-renovate-non-major-cd55163767b25bc7c2710ff7f38ed2aa6a14caff":"2021-04-11T02:19:52.591Z","1.1.128":"2021-04-11T02:23:40.302Z","1.1.129-renovate-non-major-a066aa59bae8317cb3734c7166e97010a295c1ce":"2021-04-11T04:07:52.346Z","1.1.129-renovate-non-major-654586ae19a43aa8ebeaf09096a760202b616c60":"2021-04-11T04:11:41.691Z","1.1.129-renovate-non-major-c39baf100311c2fbd22dd87edd595d15f87cf0d3":"2021-04-11T04:22:41.688Z","1.1.129":"2021-04-11T04:26:21.133Z","1.1.130-renovate-non-major-af357f773678b301193f658108ccdefdd45da862":"2021-04-11T08:49:13.988Z","1.1.130":"2021-04-11T08:52:26.363Z","1.1.131-renovate-non-major-d706ce784960f916811420d73a98b2cef01f2f3c":"2021-04-11T10:24:49.781Z","1.1.131":"2021-04-11T10:28:00.473Z","1.1.132-renovate-non-major-68c018d9163cec557f3eaa31295337c6587ef7ab":"2021-04-11T12:23:32.601Z","1.1.132":"2021-04-11T12:27:10.266Z","1.1.133-renovate-non-major-51351aa91ae5483f68257e8db1d878620a1e7f1b":"2021-04-11T14:29:11.475Z","1.1.133":"2021-04-11T14:34:04.228Z","1.1.134-renovate-non-major-f76d8f2fb81ac736fead82f270f3b0e69ff398e9":"2021-04-11T15:26:55.385Z","1.1.134":"2021-04-11T15:29:58.948Z","1.1.135-renovate-non-major-e617c6ac8a0652baa6805b006b612ea3f373f1ff":"2021-04-11T17:16:29.544Z","1.1.135":"2021-04-11T17:19:30.647Z","1.1.136-renovate-non-major-a119d7dc7a538fbaba0e894191830d83979e7e66":"2021-04-11T19:22:29.963Z","1.1.136":"2021-04-11T19:25:49.885Z","1.1.137-renovate-non-major-23091db5208846fb87190b60f2ff382b87e619a4":"2021-04-11T20:49:04.750Z","1.1.137":"2021-04-11T20:52:26.648Z","1.1.138-renovate-non-major-44a35641d4c2a99af425f78be0d22d0dec367f93":"2021-04-11T21:43:41.611Z","1.1.138":"2021-04-11T21:51:34.555Z","1.1.139-renovate-non-major-16b994465bae38fb2932caac2f3604c9260f849a":"2021-04-12T01:26:48.817Z","1.1.139-renovate-non-major-a04bfd34c11e282e8a078fddee54988043933eae":"2021-04-12T01:34:04.206Z","1.1.139-renovate-non-major-27ce6a20f5424764e425cbb4029a5ce32fba8f03":"2021-04-12T01:39:39.807Z","1.1.139":"2021-04-12T01:43:04.425Z","1.1.140-renovate-non-major-ab8b57046309e38c8b51b5e71b5af29fd97f54b8":"2021-04-12T05:12:46.574Z","1.1.140":"2021-04-12T05:15:57.111Z","1.1.141-renovate-non-major-7889e389d273d71d31b4313dd989cc88b0cbb466":"2021-04-12T05:21:53.531Z","1.1.141":"2021-04-12T05:25:50.231Z","1.1.142-replace-jellyfish-uuid-3c6ef623aa54e5ecb805d861f85792fee08f7d65":"2021-04-12T07:47:09.125Z","1.1.142-renovate-non-major-e72f21783a9c663aa37297da9dc8b331209423ca":"2021-04-12T08:56:53.655Z","1.1.142":"2021-04-12T09:00:32.472Z","1.1.143-renovate-non-major-ced34e4a93e3a123962cc6b106fb67f83be50e17":"2021-04-12T09:58:15.539Z","1.1.143-renovate-non-major-c1a5fb2723ca514581712c1305eb3eba264bf277":"2021-04-12T10:03:53.441Z","1.1.143":"2021-04-12T10:08:46.978Z","1.1.144-renovate-non-major-e8783899300ab5445bb9a412d0fc6a8f1e5f0947":"2021-04-12T10:54:10.097Z","1.1.144":"2021-04-12T10:57:38.477Z","1.1.145-renovate-non-major-02bdb682578e16797ce593972a4422aa1e34fe14":"2021-04-12T12:20:18.955Z","1.1.145":"2021-04-12T12:23:51.507Z","1.1.146-replace-jellyfish-uuid-aac111e4dd2320f7220099107e1b0bc426ecc8ab":"2021-04-12T12:46:56.283Z","1.1.146":"2021-04-12T12:50:06.562Z","1.1.147-renovate-non-major-d3f063466b93f818ce28614c1ca9cfc7266dcf49":"2021-04-12T14:09:06.642Z","1.1.147":"2021-04-12T14:14:14.207Z","1.1.148-renovate-non-major-e3dbf5dc0f91bed8c5c5e8874ab6113a0ffa550b":"2021-04-12T17:11:57.628Z","1.1.148-renovate-non-major-2a8d5c732c2b39bb0de9493f861442276b18eb53":"2021-04-12T17:16:48.662Z","1.1.148":"2021-04-12T17:20:03.707Z","1.1.149-renovate-non-major-3983743f26cc8794e3a1aeab1e9f1ba265c36300":"2021-04-12T17:30:27.077Z","1.1.149-renovate-non-major-d202693c060afdccb63d7203c3d3b85c5376d407":"2021-04-12T17:34:30.015Z","1.1.149":"2021-04-12T17:37:19.898Z","1.1.150-renovate-non-major-794c002532bfb881da877cf7fa9fc548a0b3501b":"2021-04-12T19:53:44.940Z","1.1.150":"2021-04-12T19:58:20.829Z","1.1.150-renovate-non-major-2a0127f8c1727956feb20b14e875b22d32c35aa6":"2021-04-12T20:00:27.043Z","1.1.151-renovate-non-major-5a9c92f664949563a068fbc7f0f2cca69fdb0ff2":"2021-04-12T20:04:31.678Z","1.1.151":"2021-04-12T20:07:45.098Z","1.1.152-renovate-non-major-7e7b1fcb79b176fdd07fb95c9b28e64e861ba12b":"2021-04-12T22:39:06.757Z","1.1.152":"2021-04-12T22:42:50.559Z","1.1.153-renovate-non-major-3e76d8a7cb005779ba2b477e0a42f365b47ac783":"2021-04-13T00:25:49.960Z","1.1.153":"2021-04-13T00:29:30.378Z","1.1.154-renovate-non-major-994b2cbf653e18b5c1818849a420158179d34777":"2021-04-13T03:41:54.829Z","1.1.154":"2021-04-13T03:45:01.327Z","1.1.155-renovate-non-major-1f1452da838cba30eab25d4bffdc66853b8b0e9e":"2021-04-13T05:41:06.696Z","1.1.155":"2021-04-13T05:44:21.126Z","1.1.156-renovate-non-major-b60d9b96e08cb5677738d9d0f66a4fc795b3bd0d":"2021-04-13T05:50:21.152Z","1.1.156":"2021-04-13T05:55:17.005Z","1.1.157-renovate-non-major-a53a2a3e7d17a0982e3dd341bfb913bd9d6dea2f":"2021-04-13T08:44:59.945Z","1.1.157":"2021-04-13T08:49:22.211Z","1.1.158-renovate-non-major-2df86322da89cc85acc4db136daceb73f0060d6b":"2021-04-13T10:33:56.110Z","1.1.158-renovate-non-major-8393ac8c1aba3f08041129f5d1086ef1c01ffb12":"2021-04-13T10:39:43.002Z","1.1.158":"2021-04-13T10:42:49.947Z","1.1.159-renovate-non-major-e44c53666453de5771457d697eb5b9b8356ff78a":"2021-04-13T12:35:37.891Z","1.1.159":"2021-04-13T12:39:12.930Z","1.1.160-renovate-non-major-b939d5c3d9a25f7023f744000e3af74283e01497":"2021-04-13T19:02:55.806Z","1.1.160":"2021-04-13T19:06:11.233Z","1.1.161-renovate-non-major-937f7482914a9a6d496d617ab63cda11b6ac81e7":"2021-04-14T02:26:22.102Z","1.1.161":"2021-04-14T02:29:45.950Z","1.1.162-renovate-non-major-1fa82fb4f9697b475c7b29b650d33e47218a218b":"2021-04-14T05:21:10.362Z","1.1.162-renovate-non-major-d7db726569859fe6a930a5cacffaa3faf4c35b35":"2021-04-14T05:26:32.621Z","1.1.162":"2021-04-14T05:30:03.081Z","1.1.163-renovate-non-major-c1693c25db474eeac10ad6792766e5d65cc425a4":"2021-04-14T08:40:06.161Z","1.1.163":"2021-04-14T08:42:56.998Z","1.1.164-renovate-non-major-5142f2ff9a05764bded043830c0e63e21541f552":"2021-04-14T10:24:40.186Z","1.1.164":"2021-04-14T10:28:22.077Z","1.1.165-renovate-non-major-32cccb493c1231b8f8dec8496edcfc2e8df8af08":"2021-04-14T12:09:06.474Z","1.1.165":"2021-04-14T12:12:39.311Z","1.1.166-renovate-non-major-f703e64d0127a98ac5dd59a08b9615c33d560bf1":"2021-04-14T12:16:28.548Z","1.1.166-renovate-non-major-579efcd44544a3b4ce382d3f8ed562b2a2ca2c06":"2021-04-14T12:18:45.169Z","1.1.166":"2021-04-14T12:24:55.596Z","1.1.167-renovate-non-major-7c7c651e97bec5b2fd6dc64901864bf42a096508":"2021-04-14T14:01:15.151Z","1.1.167-renovate-non-major-15baffc995dff9e9f40373b46beb6aa2a606646c":"2021-04-14T14:05:42.095Z","1.1.167":"2021-04-14T14:09:44.893Z","1.1.168-renovate-non-major-2a1fd8e23b56334db9fdd4e57dc7fc0ac1c435bd":"2021-04-14T15:31:45.892Z","1.1.168":"2021-04-14T15:34:55.802Z","1.1.169-renovate-non-major-2cb19c0a741da4196f3e9b4e38c8167482b4b966":"2021-04-14T18:30:38.848Z","1.1.169":"2021-04-14T18:34:07.200Z","1.1.170-renovate-non-major-404f573b3cb4049c8f4248bd5cf9e4ae60d9a538":"2021-04-14T20:49:10.939Z","1.1.170":"2021-04-14T20:52:26.286Z","1.1.171-renovate-non-major-1b80de9ebd1af4575d7863f054d7a75e1bdc35de":"2021-04-14T22:44:48.578Z","1.1.171":"2021-04-14T22:48:27.841Z","1.1.172-renovate-non-major-1a76fee21b7121e5402767336fd65026ee6fff38":"2021-04-15T01:02:34.234Z","1.1.172":"2021-04-15T01:06:00.622Z","1.1.173-renovate-non-major-6c8bd53407ad8af61ee12b830d226a7d646dc203":"2021-04-15T02:40:18.512Z","1.1.173-renovate-non-major-d705f021199f77d238f973c6405329b085f5f24b":"2021-04-15T02:46:04.050Z","1.1.173":"2021-04-15T02:50:11.550Z","1.1.174-renovate-non-major-aa8e659255f64eeaf0a93c22e0cd79e1e1cd52f9":"2021-04-15T04:33:00.317Z","1.1.174":"2021-04-15T04:37:26.070Z","2.0.0-typescript-e59e55ffc8d924c7a30438e2eb135501d13bbe82":"2021-04-15T05:32:37.368Z","1.1.175-renovate-non-major-de3ddfbfab3a828ed41553715e5cf750f331c064":"2021-04-15T08:54:42.277Z","1.1.175":"2021-04-15T08:58:16.449Z","1.1.176-renovate-non-major-e44b38310c36ba8b70d949ce30d13b59f9045329":"2021-04-15T10:39:48.063Z","1.1.176":"2021-04-15T10:44:34.052Z","1.1.176-renovate-balena-jellyfish-sync-6-x-a387ee49ad04f2a55ae7ee76f8f95f6f5ad8419e":"2021-04-15T10:46:59.799Z","1.1.177-renovate-balena-jellyfish-sync-6-x-d55c715cfa2251ac0fcb8a17c00df584a7d50b51":"2021-04-15T10:50:25.923Z","1.1.177-renovate-non-major-3c97d381332976ec30c78a4c4775cba42f5e9da4":"2021-04-15T12:29:12.471Z","1.1.177-renovate-balena-jellyfish-sync-6-x-5908847f4b30692a2063e25d0a950e2d039483f5":"2021-04-15T12:30:01.768Z","1.1.177":"2021-04-15T12:33:22.162Z","1.1.178-renovate-balena-jellyfish-sync-6-x-baf4372c721b58ff88c5b1dd1011307f81011eaf":"2021-04-15T12:36:29.183Z","1.1.178-renovate-non-major-c16a54d2f28a4a80d2997d12d8926e194bb6cc10":"2021-04-15T13:49:11.344Z","1.1.178":"2021-04-15T13:52:48.258Z","1.1.179-renovate-balena-jellyfish-sync-6-x-4554dfa735b00b9558e81fcb67a08a72b319ddf6":"2021-04-15T13:56:20.308Z","1.1.179-renovate-non-major-9b0fe102921cf8d04f45ee9ee213347d095c06f9":"2021-04-15T14:57:37.306Z","1.1.179-renovate-balena-jellyfish-sync-6-x-2303437879a6e80daced9fab01995b4a1b9feccf":"2021-04-15T14:59:12.245Z","1.1.179":"2021-04-15T15:01:05.529Z","1.1.180-renovate-balena-jellyfish-sync-6-x-d8886a27a275ccc7356c1ea40b3396fbab4b68e4":"2021-04-15T15:06:37.772Z","1.1.180-renovate-non-major-201663abc91a8f2dce169efffc68e295f5d8684c":"2021-04-15T16:15:56.814Z","1.1.180":"2021-04-15T16:19:31.103Z","1.1.180-renovate-balena-jellyfish-sync-6-x-da7ca5d4afc6f7355c4c2dad5bc0a9543b8441ce":"2021-04-15T16:22:36.891Z","1.1.181-renovate-balena-jellyfish-sync-6-x-3b2a7aff0818b44c6789c4e67dfd43c19b3ad594":"2021-04-15T16:26:14.311Z","1.1.181-renovate-balena-jellyfish-sync-6-x-d3b9011d1e229c17db0b2e2c03ae4b07455e5409":"2021-04-15T18:49:29.986Z","1.1.181-renovate-balena-jellyfish-sync-6-x-ff4a01f88e3f08c22b81d74299e93d8325e12328":"2021-04-15T20:44:55.943Z","1.1.181-renovate-balena-jellyfish-sync-6-x-a6e9a88fc6ccb76a5389cce8080cfe55c1f8f567":"2021-04-15T22:21:55.168Z","1.1.181-renovate-non-major-aff332c4d33e25747b5e105799c8bd41917a28da":"2021-04-16T00:31:02.308Z","1.1.181-renovate-balena-jellyfish-sync-6-x-0d21c53157123ebb274240abebe77fcd529a09f0":"2021-04-16T00:31:46.106Z","1.1.181":"2021-04-16T00:37:15.266Z","1.1.182-renovate-balena-jellyfish-sync-6-x-e81c1e2a61787cbd13886fdffa3780c6230da8ff":"2021-04-16T00:39:57.975Z","1.1.182":"2021-04-16T03:22:18.950Z","1.1.183-renovate-non-major-3c3b8a3a426029e9f3eb1030ae41c0d3f87bdb08":"2021-04-16T03:28:09.204Z","1.1.183":"2021-04-16T03:33:39.079Z","1.1.184-renovate-non-major-acc24cf7f92f8be176213c1c6b67b43e32fe2824":"2021-04-16T03:40:14.330Z","1.1.184":"2021-04-16T03:43:27.097Z","1.1.185-renovate-non-major-259aa171fdfa6b614ef5399fd80a8e2a8561119e":"2021-04-16T05:27:26.953Z","1.1.185":"2021-04-16T05:31:56.121Z","1.1.186-renovate-non-major-fb9c7882a01581aeb2ca55f5544f01fa2280c99b":"2021-04-16T10:46:20.072Z","1.1.186":"2021-04-16T10:49:59.268Z","1.1.187-renovate-non-major-b43baa7b998ee3dd664fd432fdf57da3f3620b47":"2021-04-16T10:58:02.202Z","1.1.187-renovate-non-major-f00dfef857f9da15d7e42184d73b266476de8a85":"2021-04-16T11:04:22.285Z","1.1.187-renovate-non-major-e28900bb7df7a28948ca1234769228f4ae37ff26":"2021-04-16T11:09:57.935Z","1.1.187":"2021-04-16T11:13:56.077Z","1.1.188-renovate-non-major-a917bf081b8623ac5bff18c50255e99e32194326":"2021-04-16T14:19:56.178Z","1.1.188":"2021-04-16T14:24:06.022Z","2.0.0-typescript-94cb8a5365109bd7569fd393a2995102ef99361b":"2021-04-16T14:52:41.469Z","1.1.189-sync-update-f877757e6466b323d4b2749d2b9fb4d96a92351e":"2021-04-16T16:46:13.682Z","1.1.189-renovate-non-major-d5fedc8a179c0d483ea56dc38671c4047c1c4e02":"2021-04-16T17:20:24.563Z","1.1.189":"2021-04-16T17:23:41.649Z","1.1.190-sync-update-a39246055ce9a037bf88c44991cc6442dd8c51c5":"2021-04-16T18:31:04.707Z","1.1.190-sync-update-f4d712f78634c79d637b4997c598f030deb48180":"2021-04-16T19:49:15.549Z","1.1.190":"2021-04-16T19:52:04.481Z","1.1.191-renovate-non-major-6c4b0fc6a9336227f0615e1fa6b95a1e4178be73":"2021-04-16T19:55:35.234Z","1.1.191":"2021-04-16T20:00:30.013Z","1.1.192-renovate-non-major-69410c28255f13a5a89ba7ebe9e8b5ac10beeded":"2021-04-16T22:26:06.760Z","1.1.192":"2021-04-16T22:29:09.876Z","1.1.193-renovate-non-major-303a470cab063a16b8976e6bd4c1368db8cd516f":"2021-04-17T01:20:42.795Z","1.1.193":"2021-04-17T01:23:45.446Z","2.0.0-typescript-75f4d67cfdbe006e623e49061b7685121534b72e":"2021-04-17T02:06:10.538Z","1.1.194-renovate-non-major-b54bb97387deecb7d2a792e6b114e294e87ad830":"2021-04-17T04:10:06.034Z","1.1.194":"2021-04-17T04:13:10.051Z","2.0.0-typescript-a67e5ead1a4abf916d707acef4152f382efff489":"2021-04-17T05:08:06.066Z","2.0.0-typescript-b4d6a0e56a6a74cf12c30184f8779f11916e7c2c":"2021-04-17T05:33:59.183Z","1.1.195-renovate-non-major-c31ad7082126472eebb5dd1dbece4fc4adeab13c":"2021-04-17T08:05:05.238Z","1.1.195":"2021-04-17T08:07:52.918Z","2.0.0-typescript-4a73e25242ce47743423b64a27bc74d824acd889":"2021-04-17T09:18:04.474Z","1.1.196-renovate-non-major-506bf931379be771f2da1f221f01b15d97d9b1b8":"2021-04-17T09:41:55.945Z","1.1.196":"2021-04-17T09:45:53.407Z","2.0.0-typescript-444f12a0850948b84af786f524f842862ab1ca7c":"2021-04-17T09:57:51.376Z","1.1.197-renovate-non-major-8cc0d7f3950fa0bf008525ff9cfb35339969ac8e":"2021-04-17T11:25:38.460Z","1.1.197-renovate-non-major-b2d55fa8dc46f5ebbc4416007230b392487e8d63":"2021-04-17T11:30:17.035Z","1.1.197":"2021-04-17T11:33:18.844Z","2.0.0-typescript-aacaa37abd0feb308128e54d2e2402fe422b66b3":"2021-04-17T12:41:41.708Z","1.1.198-renovate-non-major-59e3e6355432685a2fdcfffec71671eaf3155f7b":"2021-04-17T14:29:55.383Z","1.1.198":"2021-04-17T14:34:12.061Z","1.1.199-renovate-non-major-bf9ee64743bcfc75bf53410621f429251fcbf85f":"2021-04-17T16:12:15.054Z","1.1.199":"2021-04-17T16:15:22.506Z","1.1.200-renovate-non-major-9b82ea9894ff811912210f64017897e1bbb90d90":"2021-04-17T18:14:11.712Z","1.1.200":"2021-04-17T18:19:08.290Z","1.1.201-renovate-non-major-1fa94389a929de0608f10776e5473b890d87e5fa":"2021-04-17T20:39:28.688Z","1.1.201-renovate-non-major-00dd4cde3c240ec2f0b555c0839dfaaf1da9e697":"2021-04-17T20:44:34.982Z","1.1.201":"2021-04-17T20:47:42.373Z","1.1.202-renovate-non-major-0ff0a137f3e98d2b88953086946bc255ea4cd154":"2021-04-17T20:53:49.644Z","1.1.202":"2021-04-17T20:57:13.483Z","1.1.203-renovate-non-major-d49e9dd32e8f06a5d16a54ae7128931e46b057c9":"2021-04-17T22:25:57.653Z","1.1.203-renovate-non-major-e737c043b14d0d421d7d5464b2cce0f4650d4184":"2021-04-17T22:30:50.972Z","1.1.203-renovate-non-major-4643e52fee5dc2ce21f3c4f0dcec4f9e390da6ee":"2021-04-17T22:35:53.068Z","1.1.203":"2021-04-17T22:39:24.269Z","1.1.204-renovate-non-major-3deffeb24e975b509d9a1e5abf743ee6818da3c9":"2021-04-18T00:46:13.202Z","1.1.204":"2021-04-18T00:49:42.786Z","1.1.205-renovate-non-major-7d48f7cd562a49ae22dbca341e0244ae445d288a":"2021-04-18T02:50:26.749Z","1.1.205":"2021-04-18T02:53:37.943Z","1.1.206-renovate-non-major-5395c7fcf7c0de05172cc83bd7146cbcb672af69":"2021-04-18T04:54:31.691Z","1.1.206":"2021-04-18T04:57:43.617Z","2.0.0-typescript-aeecd675b6cec7b49ec6cce0e64ca1dc8cb0382b":"2021-04-18T05:44:29.675Z","2.0.0":"2021-04-18T05:48:13.242Z","2.0.1-renovate-non-major-522f36cea042b9fb0a1e6df4699821bbee2a4802":"2021-04-18T05:52:29.848Z","2.0.1":"2021-04-18T06:03:27.449Z","2.0.2-github-action-docs-85693f0c19cf113486a2f3c181d3cd4dadb0b519":"2021-04-18T10:02:51.130Z","2.0.2":"2021-04-18T10:06:16.202Z","2.0.3-renovate-non-major-b73c8234eba15f2dd016fc5a7ce9c258d2019417":"2021-04-18T12:47:50.290Z","2.0.3":"2021-04-18T12:51:34.852Z","2.0.4-renovate-non-major-1726e211c7695f698b7f84743d449574ececfadd":"2021-04-18T15:22:37.067Z","2.0.4":"2021-04-18T15:27:20.167Z","2.0.5-renovate-non-major-73c8f54087ef9acae5b91dd4b7379292a6cbcbfc":"2021-04-18T18:33:42.544Z","2.0.5":"2021-04-18T18:37:45.426Z","2.0.6-renovate-non-major-028274caa248a15901dfc49b4c4d1ce8846c7df0":"2021-04-18T18:44:03.057Z","2.0.6-renovate-non-major-d7a7c9e923daa2b58c5b9363d84c8cab4ad5c7d2":"2021-04-18T18:48:48.614Z","2.0.6":"2021-04-18T18:52:29.870Z","2.0.7-renovate-non-major-4fe5175d7ecb6a1b870814936b6e817776660ae1":"2021-04-18T21:18:38.724Z","2.0.7":"2021-04-18T21:22:22.997Z","2.0.8-renovate-non-major-deada33a5b36c6400ea9e0ba05d92b7af6ab2d82":"2021-04-18T21:25:56.733Z","2.0.8-renovate-non-major-5ee101b639fa76ee088a6ebf5829625c2f523d55":"2021-04-18T21:28:37.319Z","2.0.8":"2021-04-18T21:34:32.599Z","2.0.9-renovate-non-major-7f0e0dfc718d5bedff8801b6d2b8304151fd1392":"2021-04-19T01:06:27.664Z","2.0.9-renovate-non-major-248aba4f04763c0d2e4b50c5fd75a0dc492bb567":"2021-04-19T01:12:19.576Z","2.0.9":"2021-04-19T01:16:17.587Z","2.0.10-renovate-non-major-1f913c4019e05aa92cf37da4e866510aa8d155b7":"2021-04-19T01:23:04.371Z","2.0.10":"2021-04-19T01:27:08.545Z","2.0.11-renovate-non-major-45a6a0a7a3d43c981cf0339b5e4411d5477f92ac":"2021-04-19T05:22:14.226Z","2.0.11":"2021-04-19T05:25:46.109Z","2.0.12-renovate-non-major-c841264c8957f0f9aa01d44c37d81374264cde6b":"2021-04-20T00:18:55.582Z","2.0.12-renovate-non-major-92b341d99d5420b4c40df248c640cce965465c70":"2021-04-20T00:23:41.609Z","2.0.12":"2021-04-20T00:27:30.341Z","2.0.13-renovate-non-major-b4f37db3f497524dc78e20a0dc4ab8128dff7982":"2021-04-20T02:25:53.697Z","2.0.13":"2021-04-20T02:29:25.941Z","2.0.14-renovate-non-major-af3f1f8c03228a351f35734793039e322698856b":"2021-04-20T04:13:55.707Z","2.0.14":"2021-04-20T04:18:17.751Z","2.0.15-renovate-non-major-d83107571fdff3956eb5c11b37a75fdb32da8b24":"2021-04-20T04:23:14.288Z","2.0.15":"2021-04-20T04:29:39.275Z","2.0.16-renovate-non-major-bcfcc98cc41a4466c826b5ab67a7ae5da41f02ea":"2021-04-20T09:46:15.121Z","2.0.16":"2021-04-20T09:56:04.305Z","2.0.17-renovate-non-major-b3205727cc6bdc61d9be03b881204c8540bcd1dc":"2021-04-20T10:20:48.376Z","2.0.17":"2021-04-20T10:31:07.903Z","2.0.18-renovate-non-major-0ed581982ce31f9ee55cbf3d4ceb3e0851d6a3e7":"2021-04-20T10:47:26.951Z","2.0.18":"2021-04-20T11:06:24.911Z","2.0.19-renovate-non-major-b6d41a65d7d262d52be34738be2be18c50f873a2":"2021-04-20T11:29:28.232Z","2.0.19":"2021-04-20T11:45:01.348Z","2.0.20-renovate-non-major-bb4b2a45c0e79c569ca6325de4d7e65839676389":"2021-04-20T12:10:43.769Z","2.0.20-renovate-non-major-40f739af22a76cead8e5464f74b0cfd8fe16cefb":"2021-04-20T12:30:48.145Z","2.0.20":"2021-04-20T12:42:38.150Z","2.0.21-renovate-non-major-53e72b3af936a2310691ac3030da3c49cd279bc6":"2021-04-20T16:38:45.055Z","2.0.21":"2021-04-20T16:42:30.378Z","2.0.22-renovate-non-major-307098c86f02e416a4cdac5aefdb1a5ea34f9b16":"2021-04-20T20:58:44.522Z","2.0.22":"2021-04-20T21:03:08.830Z","2.0.23-renovate-non-major-abd1ba9ababc1602dc79822b3d7c0b9ebb194b27":"2021-04-20T22:18:20.600Z","2.0.23":"2021-04-20T22:22:20.525Z","2.0.24-renovate-non-major-4c6e76b8c442812fd857f26875336e02787f878d":"2021-04-21T00:21:15.458Z","2.0.24":"2021-04-21T00:24:55.188Z","2.0.25-renovate-non-major-81b674ae2c5095985a3d6bf943a2ad54413c9a3d":"2021-04-21T10:26:51.567Z","2.0.25":"2021-04-21T10:30:20.738Z","2.0.26-fix-actual-vs-expected-11b3afb1b0f86729764e8ebb165555151aa9e846":"2021-04-21T11:40:44.989Z","2.0.26-renovate-non-major-ac519d22cb4551fb78f248edf73f10844064f568":"2021-04-21T12:12:26.808Z","2.0.26":"2021-04-21T12:17:14.632Z","2.0.27-renovate-non-major-bac1d44e76ae50d823ac36e2ead97b1e8e66b015":"2021-04-21T16:29:48.362Z","2.0.27-renovate-non-major-a019146b488e22269acc3e728b222e16a537a877":"2021-04-21T16:40:00.719Z","2.0.27-renovate-non-major-c11004c1feaa8233eb0a34f57d3cac08e738595b":"2021-04-21T16:46:16.145Z","2.0.27":"2021-04-21T16:51:57.563Z","2.0.28-renovate-non-major-febebb2ce0a546701884f86826c4448e79a2ec67":"2021-04-21T17:00:40.836Z","2.0.28":"2021-04-21T17:06:38.818Z","2.0.29-renovate-non-major-9e43f95aa71f57ec9ab49c27c66f371cf0d0734f":"2021-04-21T20:21:36.268Z","2.0.29":"2021-04-21T20:25:20.491Z","2.0.30-renovate-non-major-0eaf644246f4e6385ffa13043479e77fe998a457":"2021-04-21T22:44:53.911Z","2.0.30":"2021-04-21T22:52:01.657Z","2.0.31-renovate-non-major-f84fbfe15ce2b934aea5a586f7a8d401e6957b42":"2021-04-21T23:00:05.012Z","2.0.31":"2021-04-21T23:03:56.752Z","2.0.32-fix-actual-vs-expected-eeea96fa41395fad499f5a384a24945af0199543":"2021-04-22T00:29:57.799Z","2.0.32":"2021-04-22T00:34:02.598Z","2.0.33-renovate-non-major-0bfb4e47a0f0fc569151c288066cca25fad9979d":"2021-04-22T00:48:52.011Z","2.0.33":"2021-04-22T00:54:43.510Z","2.0.33-renovate-non-major-e5ca4f6a2541c9bab5e566be2c5f618acdc7f8e8":"2021-04-22T00:58:13.781Z","2.0.34-renovate-non-major-99fcfaf45b7a6ede0f23d0feee76d04c0afed367":"2021-04-22T01:00:20.630Z","2.0.34":"2021-04-22T01:03:41.005Z","2.0.35-queue-update-d8041d79558474cf803e8e5af54d4e9294572dde":"2021-04-22T07:53:18.132Z","2.0.35-queue-update-b96564019348a6c2e7faf2a2553415e22183fe12":"2021-04-22T09:37:26.107Z","2.0.35":"2021-04-22T09:51:32.056Z","2.0.36-renovate-non-major-cec2958e9d44b31254ed631fe2a9363e01d9d30f":"2021-04-22T15:17:00.035Z","2.0.36":"2021-04-22T15:20:25.926Z","2.0.37-renovate-non-major-bd9d3f3d495cb0982b93c730dbd98c6880d70777":"2021-04-23T01:06:19.812Z","2.0.37":"2021-04-23T01:10:17.408Z","2.0.38-renovate-non-major-b37198ff7bdffc46b172f089526114e4b0b0fad0":"2021-04-23T05:05:10.565Z","2.0.38":"2021-04-23T05:08:58.513Z","2.0.39-renovate-non-major-bd107b5f9d43b2241661d3165a172033cfedf092":"2021-04-23T09:20:08.250Z","2.0.39":"2021-04-23T09:24:17.167Z","2.0.40-renovate-non-major-6e5382ae0bd27aceeacd78297fd1983dd88fce4c":"2021-04-23T15:22:32.805Z","2.0.40":"2021-04-23T15:26:07.099Z","2.0.41-renovate-non-major-1a7ad5e2c16eedf37dd1b1a47803341f4bfa0480":"2021-04-23T18:41:55.536Z","2.0.41-renovate-non-major-e23d46ec14887dd3189e784a945f4b515be75b12":"2021-04-23T18:47:02.839Z","2.0.41":"2021-04-23T18:50:43.073Z","2.0.42-renovate-non-major-37301ebc0e88abeb7eb1e9e53ce66b077a10422a":"2021-04-23T21:31:03.832Z","2.0.42":"2021-04-23T21:34:47.571Z","2.0.43-renovate-non-major-eae3d8a7cb1bf60b713502f61310839b481afa53":"2021-04-24T00:42:16.344Z","2.0.43":"2021-04-24T00:47:27.065Z","2.0.44-renovate-non-major-ff60dd43bad4cc925d3114aa54f424f9f172542e":"2021-04-24T03:52:45.356Z","2.0.44":"2021-04-24T03:56:33.546Z","2.0.45-renovate-non-major-d6dd763a0b5b4160af3ff97520c577d0cc510095":"2021-04-24T10:00:22.379Z","2.0.45-renovate-non-major-7bcfdd25b99cec427533d542f4c5189bd2e10c46":"2021-04-24T10:09:20.642Z","2.0.45":"2021-04-24T10:12:56.395Z","2.0.46-renovate-non-major-1136ea11a7d07741e146c481d6e3b639d666f5bc":"2021-04-24T14:55:01.763Z","2.0.46-renovate-non-major-3bdb54a63769817f07f8ca28a1af76c50791e90b":"2021-04-24T15:01:05.078Z","2.0.46":"2021-04-24T15:05:04.363Z","2.0.47-renovate-non-major-600ad76a423caa4cdb3986deb6a9427c383bf737":"2021-04-24T15:10:27.394Z","2.0.47":"2021-04-24T15:15:26.056Z","2.0.48-renovate-non-major-bfbe14f7744ebbfb73b9441452b2ac7c3e2fb256":"2021-04-24T20:10:57.614Z","2.0.48":"2021-04-24T20:14:51.711Z","2.0.49-renovate-non-major-bf4907e2aec4ac2afe42e3c24da6adc7b78940a8":"2021-04-25T01:41:54.024Z","2.0.49":"2021-04-25T01:45:29.446Z","2.0.50-add-uuid-types-24634c5e003886953073c55c690db2f6d52aaed4":"2021-04-25T22:47:15.766Z","2.0.50":"2021-04-25T22:50:39.956Z","2.0.51-renovate-non-major-665ff66b7455ea14f988ce1d48ea4a95e9bebdb2":"2021-04-25T22:54:15.862Z","2.0.51":"2021-04-25T23:04:36.265Z","2.0.52-renovate-non-major-a45ef63ec924c0b81d2d28828f6af5d72f4fddb4":"2021-04-26T00:05:08.658Z","2.0.52-renovate-non-major-cb7864b46f8c284bc319a17bbcb2d04d8fcff9e8":"2021-04-26T00:09:22.480Z","2.0.52":"2021-04-26T00:12:55.529Z","2.0.53-renovate-non-major-f7e3654153f6b606d7cc240646bd5cc924ff0e4a":"2021-04-26T02:01:16.392Z","2.0.53":"2021-04-26T02:05:43.415Z","2.0.54-renovate-non-major-81db8fbe2a18eb9abb12327eaa4306b90a6d169e":"2021-04-26T03:26:18.208Z","2.0.54":"2021-04-26T03:29:56.857Z","2.0.55-renovate-non-major-433e8f8638b9ae1525026f7dda345b09fde09db6":"2021-04-26T05:30:20.330Z","2.0.55":"2021-04-26T05:33:54.150Z","2.0.56-renovate-non-major-bd5d6a4d572b038c41a25883412859b5c500b1d1":"2021-04-26T08:11:51.229Z","2.0.56":"2021-04-26T08:16:09.257Z","2.0.57-renovate-non-major-98282c85f86564e328cf5189bd1adabc02267133":"2021-04-26T11:25:26.743Z","2.0.57":"2021-04-26T11:29:24.075Z","2.0.58-renovate-non-major-299d95b78a38db254913e506077657791eac5f35":"2021-04-26T18:27:03.763Z","2.0.58-renovate-non-major-31fec8f75cc5333c159cec52fe5bbe6c71f8a027":"2021-04-26T18:32:57.976Z","2.0.58":"2021-04-26T18:36:23.793Z","2.0.59-renovate-non-major-ad59efd47607ff5e79ddbd32a23df3667b43b579":"2021-04-26T20:24:00.159Z","2.0.59-renovate-non-major-0ef1a52cc698590b05c84cedb7252083a7dd8e41":"2021-04-26T22:29:16.765Z","2.0.59":"2021-04-27T00:19:06.526Z","2.0.60-renovate-non-major-7e7f39e6ede074932ac7007b4facc81f4a0a9a92":"2021-04-27T01:45:27.080Z","2.0.60":"2021-04-27T01:49:49.189Z","2.0.61-renovate-non-major-32552ab87ea360993bf44981aefb2eb93bc31e64":"2021-04-27T02:55:08.098Z","2.0.61-renovate-non-major-5501a24806f437db50d6af951db92e6969504d41":"2021-04-27T03:01:15.928Z","2.0.61":"2021-04-27T03:05:04.907Z","2.0.62-renovate-non-major-7ef11ac619c91457d7f353450826750951d3d165":"2021-04-27T04:00:24.592Z","2.0.62-renovate-non-major-1558427a8faea8fafde950d5b695149eb332ebd7":"2021-04-27T04:04:53.114Z","2.0.62":"2021-04-27T04:08:07.503Z","2.0.63-renovate-non-major-36e3efca09f07989923e7275004b475622bb6878":"2021-04-27T05:26:24.488Z","2.0.63":"2021-04-27T05:29:34.896Z","2.0.64-renovate-non-major-aa2fe42c7536d053144a5f3acaabe621d8c37fe4":"2021-04-27T15:21:21.996Z","2.0.64-renovate-non-major-1bff933eeec406a82e5e1f7904d32691058b452d":"2021-04-27T15:26:50.082Z","2.0.64":"2021-04-27T15:30:28.089Z","2.0.65-renovate-non-major-3e3933a172d5a50c7373387274ac49918cf9d8a1":"2021-04-27T16:55:56.866Z","2.0.65":"2021-04-27T16:59:27.143Z","2.0.66-renovate-non-major-e021d77d4fc7b4d1cc95fd65ae7f569aab7e2a7a":"2021-04-28T03:29:07.777Z","2.0.66":"2021-04-28T03:32:41.138Z","2.0.67-renovate-non-major-63cb0cfb665f0af5b64db6bf5676c84c78b3fd15":"2021-04-28T14:48:20.279Z","2.0.67":"2021-04-28T14:53:09.370Z","2.0.68-renovate-non-major-6f9a14c4e30bc67c8ca9d6e3ed6063689267f045":"2021-04-29T01:19:04.635Z","2.0.68":"2021-04-29T01:22:43.491Z","2.0.69-renovate-non-major-c0afea070568dc0f660cca4734cab45c59a6ae94":"2021-04-29T03:57:45.306Z","2.0.69-renovate-non-major-1fbab53dfebf07a836e09b214120bdb5963c275f":"2021-04-29T04:07:41.127Z","2.0.69":"2021-04-29T04:11:36.134Z","2.0.70-renovate-non-major-2fcd4ef2c8556ab3d7936c62c975305107b566d9":"2021-04-29T07:09:08.214Z","2.0.70":"2021-04-29T07:14:03.249Z","2.0.71-renovate-non-major-e5dbf2b43c4aca961cbb60f259f6b400d79bdc5a":"2021-04-29T07:22:35.868Z","2.0.71":"2021-04-29T07:29:09.938Z","2.0.72-renovate-non-major-e90a44d588ebbf8aa4223de82ea460826700751a":"2021-04-29T08:48:02.333Z","2.0.72":"2021-04-29T08:51:37.434Z","2.0.73-renovate-non-major-657d2d72572175ec97666cff9fb409a063e82b78":"2021-04-29T10:34:01.468Z","2.0.73":"2021-04-29T10:37:36.608Z","2.0.74-renovate-non-major-8135f73c8f3ed38763b761b5171f8595a09d08e9":"2021-04-29T10:43:57.237Z","2.0.74":"2021-04-29T10:48:02.224Z","2.0.75-renovate-non-major-9af530c5b6fe37f8f8edabc1e057481041cb2d99":"2021-04-29T12:25:22.671Z","2.0.75-renovate-non-major-07e91f5664db2b54bb96a0f65280ed4dbaadb10d":"2021-04-29T12:30:46.948Z","2.0.75":"2021-04-29T12:34:40.468Z","2.0.76-renovate-non-major-9b84b57d0fa956596ca742e604f1db4e1a99c334":"2021-04-29T15:44:41.835Z","2.0.76":"2021-04-29T15:48:20.805Z","2.0.77-renovate-non-major-ccc6b9aa85be21716e54aa774ea558bda38327e3":"2021-04-29T17:03:58.568Z","2.0.77":"2021-04-29T17:07:41.887Z","2.0.78-renovate-non-major-3fed5b7efc601def0c714f5c181b4f8d6e8356a0":"2021-04-29T17:58:24.390Z","2.0.78":"2021-04-29T18:02:22.804Z","2.0.79-renovate-non-major-7c173bdfa1fbaf9c15af535bc4bcc2804f7cdb86":"2021-04-29T18:06:18.806Z","2.0.79":"2021-04-29T18:12:32.716Z","2.0.80-renovate-non-major-4c8b1ed01122e84d97bbb35646ff2134842998dd":"2021-04-29T20:12:14.134Z","2.0.80-renovate-non-major-65ccd7d649b4b7586890ddb3d497cd619d30a31f":"2021-04-29T20:17:06.946Z","2.0.80-renovate-non-major-cbb14ff6153ae703b02ba5a884566df148351133":"2021-04-29T20:22:11.447Z","2.0.80":"2021-04-29T20:26:09.797Z","2.0.81-renovate-non-major-ab86ddb7340f89b4b9322b47022514cd78cea80d":"2021-04-29T22:36:04.148Z","2.0.81-renovate-non-major-726baab442a38e243e4eeb1e2ccde548fbf6ad03":"2021-04-30T01:16:35.991Z","2.0.81":"2021-04-30T01:19:54.942Z","2.0.82-renovate-non-major-67d0a67554a7f356e299fbc6d4deb489796c7f66":"2021-04-30T03:20:27.184Z","2.0.82-renovate-non-major-398cf9c0a8ae59fcdb9c8237823256661a1556a0":"2021-04-30T03:25:29.960Z","2.0.82":"2021-04-30T03:29:27.359Z","2.0.83-renovate-non-major-97e4ee02d8f385a1f39bc472561e38fb80b1f28c":"2021-04-30T03:35:02.962Z","2.0.83":"2021-04-30T03:38:18.686Z","2.0.84-renovate-non-major-e5f2f440bc5098f08274b2df6eb095a2fc8cd7ce":"2021-04-30T05:13:13.364Z","2.0.84":"2021-04-30T05:17:20.225Z","2.0.85-renovate-non-major-5ae99a7a75e08fd1dae97888859f9c8fd260ff42":"2021-04-30T05:23:22.678Z","2.0.85":"2021-04-30T05:27:09.112Z","2.0.86-renovate-non-major-30da07237d55fbbd5f4ece21dccaa58e7ed581df":"2021-04-30T09:27:55.318Z","2.0.86":"2021-04-30T09:31:35.241Z","2.0.87-renovate-non-major-f616cef691548beb0940fe4dd0e0b3c2277866d9":"2021-04-30T09:39:04.943Z","2.0.87":"2021-04-30T09:42:38.581Z","2.0.88-renovate-non-major-6a722751c967ac3a57b6df8bb9a394ef754ba8cd":"2021-04-30T11:43:12.178Z","2.0.88":"2021-04-30T11:47:15.942Z","2.0.89-renovate-non-major-a013133427b52a4b0f22b46457d8fc1d0dd9ff4f":"2021-04-30T15:48:30.012Z","2.0.89-renovate-non-major-9473fa84921de4aa994311193328ae095dc41490":"2021-04-30T15:57:52.465Z","2.0.89-renovate-non-major-b3f786d3fe0ebe2858ae2ab83a12883fcdbb43b8":"2021-04-30T17:52:04.311Z","2.0.89-renovate-non-major-eb6dbdf94ec75ce26418e4b90965501730b21fa7":"2021-04-30T20:06:14.257Z","2.0.89-renovate-non-major-66d60e157d6a6381a768e76ba748a08ea092f17e":"2021-05-01T01:57:59.373Z","2.0.89-renovate-non-major-8e572f20e4de18f50a660a3d94bb56d8001666f1":"2021-05-01T02:03:44.839Z","2.0.89-renovate-non-major-55354837b9181057de5f3b9b0c23fb584c6ebdf7":"2021-05-01T03:36:22.230Z","2.0.89-renovate-non-major-cd305340c60c6b4edba4be93eccc6e4c94946c36":"2021-05-01T05:42:33.385Z","2.0.89-renovate-non-major-14e0c71922ab3c8d0215af34f631d8319c83cf5b":"2021-05-01T08:47:36.666Z","2.0.89-renovate-non-major-2628d6fb1416b0d6a6e889b0dbd67b53229acab6":"2021-05-01T08:53:33.696Z","2.0.89-renovate-non-major-736788a64333b3e987bfe1200684b221397ee649":"2021-05-01T10:02:54.919Z","2.0.89-renovate-non-major-a90d86030e953f5931f37f33e193e51788f88161":"2021-05-01T10:09:51.546Z","2.0.89-renovate-non-major-ba70b983aed2fc175d6f5fd0c6c69a92f11c3683":"2021-05-01T11:18:18.781Z","2.0.89-renovate-non-major-b8dd86ff8c5f50a2759ff43376f22479ed0966cb":"2021-05-01T13:51:51.691Z","2.0.89":"2021-05-01T13:55:38.263Z","2.0.90-renovate-non-major-861b95dbe64695ba3bf151a446a8409598630a99":"2021-05-01T15:02:10.564Z","2.0.90":"2021-05-01T15:05:39.856Z","2.0.91-renovate-non-major-393bd27c74a18b0435bf7f62bfa3dc05fc6821dd":"2021-05-01T16:03:42.975Z","2.0.91":"2021-05-01T16:06:51.713Z","2.0.92-renovate-non-major-e4846fa248bafa732b4d4e2693cb9d715bb2666c":"2021-05-01T16:51:26.839Z","2.0.92":"2021-05-01T16:55:40.059Z","2.0.93-renovate-non-major-76e91f01ef500fa2560287e718d3388af6ad6303":"2021-05-01T18:03:54.834Z","2.0.93":"2021-05-01T18:07:22.311Z","2.0.94-renovate-non-major-cae44e40fa057dd815ced5f0f9b55f97d4a3c750":"2021-05-02T01:48:38.404Z","2.0.94-renovate-non-major-0dc45fe6c6efdf0015ca4c2a448ec059f152f917":"2021-05-02T01:54:46.188Z","2.0.94-renovate-non-major-12556f529e015ce7629b57d8c0c73c27cce6d455":"2021-05-02T01:59:43.064Z","2.0.94":"2021-05-02T02:03:59.245Z","2.0.95-renovate-non-major-035025ed8304f8033878593da4f4eaae01cf56e0":"2021-05-02T02:43:50.813Z","2.0.95":"2021-05-02T02:47:31.547Z","2.0.96-renovate-non-major-fa9feccf447e14b1623748df5f7614c41efa2d1d":"2021-05-02T03:28:01.542Z","2.0.96":"2021-05-02T03:31:58.027Z","2.0.97-renovate-non-major-18b8b24de08dd06dbd77749b6056b3dc083826e7":"2021-05-02T03:35:25.925Z","2.0.97":"2021-05-02T03:42:09.325Z","2.0.98-renovate-non-major-b5078cb3638d79688afb25af2955de46cdbaa647":"2021-05-02T04:52:07.109Z","2.0.98-renovate-non-major-6060cb8240bc064989a269ad0a012e4a42696d54":"2021-05-02T04:56:06.353Z","2.0.98":"2021-05-02T05:00:35.638Z","2.0.99-renovate-non-major-549ac0013c23ebe0c418e83f486c011565a81fe2":"2021-05-02T07:08:26.978Z","2.0.99":"2021-05-02T07:11:49.964Z","2.0.100-renovate-non-major-391594dd61043512132066cce47dfef0de19fe04":"2021-05-02T09:21:07.046Z","2.0.100":"2021-05-02T09:24:23.989Z","2.0.101-renovate-non-major-cd8719d3d17cdbf0944bbf3f9619995a1ef2efa8":"2021-05-02T11:07:52.471Z","2.0.101":"2021-05-02T11:10:51.919Z","2.0.102-renovate-non-major-fba720de96aa53585efec9dcbd4f071c4f22acdd":"2021-05-03T02:07:51.914Z","2.0.102-renovate-non-major-3bdd92fc17aaef877e4aef32de56c766fa1510c6":"2021-05-03T02:13:15.754Z","2.0.102-renovate-non-major-7280ccca6643af16a9dcb9aad9df8826d16d7e60":"2021-05-03T02:18:39.085Z","2.0.102":"2021-05-03T02:23:15.727Z","2.0.103-renovate-non-major-0b1fc21b05981fa8b030efa3f814e5fe00e7d863":"2021-05-03T04:35:18.831Z","2.0.103":"2021-05-03T04:39:52.729Z","2.0.104-renovate-non-major-7673ab0e9a9bc638b542c60e4db4465bb9fdb9ad":"2021-05-03T07:58:28.728Z","2.0.104":"2021-05-03T08:04:40.778Z","2.0.105-renovate-non-major-889304743d75aad80459d31d7a2cd1ab739bd9c3":"2021-05-03T09:13:46.354Z","2.0.105":"2021-05-03T09:17:18.324Z","2.0.106-renovate-non-major-ee8eba6216be2e45dfa3f3e9971cb7c77ef8af44":"2021-05-03T11:44:00.482Z","2.0.106":"2021-05-03T11:48:02.418Z","2.0.107-renovate-non-major-aecefd61becfb17519d74f61fe183e3d37a5d38e":"2021-05-03T12:32:48.102Z","2.0.107-renovate-non-major-06e7303abd166c9561e767f40e3d63576dd2f5cd":"2021-05-03T12:37:24.941Z","2.0.107-renovate-non-major-0ee5adff77509335d23b803ac1a2ac08ea4a0699":"2021-05-03T12:43:27.681Z","2.0.107":"2021-05-03T12:47:23.864Z","2.0.108-renovate-non-major-a3729c12f672fa1989f84489346706e02ed05421":"2021-05-03T13:27:42.738Z","2.0.108":"2021-05-03T13:32:14.051Z","2.0.109-renovate-non-major-c26b1c3406e0650192219da26fed4dea7f86682b":"2021-05-03T14:47:27.438Z","2.0.109-renovate-non-major-fb1c48d3db15f03306993789ac7e0884d1e291f3":"2021-05-03T14:52:41.299Z","2.0.109":"2021-05-03T14:56:16.120Z","2.0.110-renovate-non-major-c566e949c2509f47c4f963d86c2ec479a330658b":"2021-05-03T15:37:22.119Z","2.0.110":"2021-05-03T15:41:27.184Z","2.0.111-renovate-non-major-f92e61ba81f15698a84f215d4ce55f27d0ea09cd":"2021-05-03T17:25:54.601Z","2.0.111":"2021-05-03T17:29:07.391Z","2.0.112-renovate-non-major-88f853ebbc9c8f75f566c7a1d8817120e875b9e7":"2021-05-03T19:25:49.555Z","2.0.112":"2021-05-03T19:29:55.088Z","2.0.112-renovate-non-major-53a63d71bbca69eeb727119daba60c6b8a2245a3":"2021-05-03T19:35:45.990Z","2.0.113-renovate-non-major-c4f53a9e09c5a71f09669fd9647a4d427ba906fa":"2021-05-03T19:37:34.034Z","2.0.113":"2021-05-03T19:41:38.794Z","2.0.114-renovate-non-major-9a143ceef6ad2b522827f09762b5ee8f7b089a16":"2021-05-03T20:52:50.255Z","2.0.114":"2021-05-03T20:57:09.210Z","2.0.115-renovate-non-major-ca4f0894af35aaaa0c59060e96cd8511775e2cfb":"2021-05-03T22:32:49.795Z","2.0.115":"2021-05-03T22:36:58.626Z","2.0.116-renovate-non-major-57b0637f99065069b5967f293fafcc0a58372872":"2021-05-03T23:45:07.864Z","2.0.116-renovate-non-major-b4a86ded4f65785c64a6a56e90463164d85c158d":"2021-05-03T23:50:05.369Z","2.0.116":"2021-05-03T23:53:46.438Z","2.0.117-renovate-non-major-55f4f299a2c742b40df7d095b6bce23e2e10fd21":"2021-05-04T01:28:54.231Z","2.0.117-renovate-non-major-de120b47df13b292077181fbb80de2b01e7c9cd5":"2021-05-04T01:33:55.847Z","2.0.117":"2021-05-04T01:37:36.434Z","2.0.118-renovate-non-major-f36f3d3c7a5cdb8976fbf0002cc59ab98668e731":"2021-05-04T03:13:24.009Z","2.0.118-renovate-non-major-1d2165e7227846339e9be830dafec096e7191199":"2021-05-04T04:07:46.315Z","2.0.118":"2021-05-04T04:11:27.844Z","2.0.119-renovate-non-major-a8a1fbe3e9a2ef2a49af5f8aefef574851e91511":"2021-05-04T06:44:14.976Z","2.0.119":"2021-05-04T06:47:59.513Z","2.0.120-renovate-non-major-2f06a56e676fdf4703fe9e96adeb079c9f3457e9":"2021-05-04T08:05:59.076Z","2.0.120":"2021-05-04T08:09:26.158Z","2.0.121-renovate-non-major-49df384897c8406cfb2eec40bb235356de78d98f":"2021-05-04T08:16:11.090Z","2.0.121":"2021-05-04T08:19:54.222Z","2.0.122-renovate-non-major-9782dbc41811351a9ad3a0bc658c28c0ccfec17b":"2021-05-04T09:40:01.137Z","2.0.122":"2021-05-04T09:43:30.027Z","2.0.123-renovate-non-major-0d6a68c4dc38086a429fbeababf321cc57009116":"2021-05-04T10:27:04.527Z","2.0.123":"2021-05-04T10:30:49.877Z","2.0.124-renovate-non-major-dee2bd94bc48befb03fc235d77391b90f6860015":"2021-05-04T12:05:03.934Z","2.0.124":"2021-05-04T12:08:34.516Z","2.0.125-renovate-non-major-c966a4e3b7090d61f5a13d88269f45d28523b388":"2021-05-04T13:21:41.787Z","2.0.125":"2021-05-04T13:25:17.774Z","2.0.126-renovate-non-major-b0f28cc33f43ae8f758f97c258bd2e3023beba13":"2021-05-04T15:12:22.225Z","2.0.126":"2021-05-04T15:15:31.609Z","2.0.127-renovate-non-major-dd2345de668f256df2fe92dae5b22a696fcc6f55":"2021-05-04T16:36:55.827Z","2.0.127":"2021-05-04T16:40:31.985Z","2.0.128-renovate-non-major-35050d2af91a81eab89451a7bbae7f7212f74dfc":"2021-05-04T17:51:21.529Z","2.0.128-renovate-non-major-f77314bfc0175bbcaf190261876a485e783d4955":"2021-05-04T17:57:10.653Z","2.0.128":"2021-05-04T18:01:11.602Z","2.0.129-renovate-non-major-444f8fef94960163c9ee5e4f04bb105e564c7d3a":"2021-05-04T19:27:29.372Z","2.0.129":"2021-05-04T19:30:59.146Z","2.0.130-renovate-non-major-076f8f60b8b76a0030cc6921e9941702642f07e3":"2021-05-04T22:35:54.739Z","2.0.130":"2021-05-04T22:39:42.859Z","2.0.131-renovate-non-major-65b7d6ff953d639cf9f553371d65ce7bbdcc1490":"2021-05-05T00:26:40.271Z","2.0.131":"2021-05-05T00:31:12.062Z","2.0.132-renovate-non-major-2e16c7ab0fb7457170aaa5790bac558497193ec5":"2021-05-05T02:35:39.372Z","2.0.132":"2021-05-05T02:42:01.279Z","2.0.133-renovate-non-major-eec43023ec637500afbf4768d7cd9024b151c14b":"2021-05-05T08:42:26.994Z","2.0.133-renovate-non-major-119bec4973c69f21ba94be3eccb161503ceacacc":"2021-05-05T08:47:32.445Z","2.0.133":"2021-05-05T08:51:41.960Z","2.0.134-renovate-non-major-aca160e44d6f2ad0ea49b9bb6769e92e5c3190e7":"2021-05-05T10:43:10.215Z","2.0.134-renovate-non-major-0641e9834980999d48f3202742bdd55de7986411":"2021-05-05T12:31:42.472Z","2.0.134":"2021-05-05T12:35:27.736Z","2.0.135-renovate-non-major-4343ad571c36ad2e504f6b19046dd369c89b7361":"2021-05-05T15:09:47.760Z","2.0.135-renovate-non-major-edfaabfb457a9d7f2283ad49a8bfe513e55113bc":"2021-05-05T15:14:50.557Z","2.0.135":"2021-05-05T15:18:47.666Z","2.0.136-renovate-non-major-115f1a288d03ec53ccfa776b8a87e6afa8780b2b":"2021-05-05T17:05:47.520Z","2.0.136":"2021-05-05T17:09:14.739Z","2.0.137-renovate-non-major-523afebc5b9de8711293b57b75e7e57fc797d2b0":"2021-05-05T17:51:16.322Z","2.0.137":"2021-05-05T17:55:34.082Z","2.0.138-renovate-non-major-707f49515a7ce026518258dcb52300cee9df3bd0":"2021-05-05T19:26:56.562Z","2.0.138":"2021-05-05T19:30:26.819Z","2.0.139-renovate-catch-uncommitted-2-x-9c42205eceed44e91de53e95a175c1a389f5e499":"2021-05-05T20:39:13.998Z","2.0.139":"2021-05-05T23:17:06.089Z","2.0.140-renovate-non-major-66cb27c8badc0eb2e54f56153a52698e3098704a":"2021-05-05T23:30:40.617Z","2.0.140-renovate-non-major-5752720a217d5ce607b9ea86fff77fdda5b0ede0":"2021-05-05T23:36:51.092Z","2.0.140":"2021-05-05T23:40:55.054Z","2.0.141-renovate-non-major-b5d12d6dc64e5ced0b635fe3c90fb715a16c0a09":"2021-05-06T01:18:03.074Z","2.0.141":"2021-05-06T01:21:52.958Z","2.0.142-renovate-non-major-aa1b558e1cec16eabb03609cc5e00c590dbd9215":"2021-05-06T01:26:19.126Z","2.0.142":"2021-05-06T01:32:43.721Z","2.0.143-renovate-non-major-5bb5863c9ef67f21a3ab96ba12f26ed8795654b2":"2021-05-06T03:16:28.827Z","2.0.143":"2021-05-06T03:20:24.691Z","2.0.144-renovate-non-major-4e55875a864e458720cc33f06ccbd146133f37b1":"2021-05-06T13:13:02.517Z","2.0.144":"2021-05-06T13:16:08.636Z","2.0.145-renovate-non-major-17a6a8d0c10df78032b571e0f6c6309b60ea69dd":"2021-05-07T01:22:20.542Z","2.0.145":"2021-05-07T01:25:48.368Z","2.0.146-renovate-non-major-0fabee671cefc4c7d6ee7274a2a26325daa6474e":"2021-05-07T07:50:16.359Z","2.0.146":"2021-05-07T07:53:48.203Z","2.0.147-renovate-non-major-d5b8ec553b85d5bbfe85fbd34ef972fd10fa9198":"2021-05-07T14:55:35.002Z","2.0.147":"2021-05-07T15:01:55.770Z","2.0.148-renovate-non-major-595771cdc89e1c60fcf04fbf82f2cf11ace61cfb":"2021-05-07T16:52:36.356Z","2.0.148":"2021-05-07T16:56:36.785Z","2.0.149-renovate-lint-staged-11-x-f8f013c7431d5cd270eeb663d2f8bc1ef6cd6585":"2021-05-07T18:29:10.060Z","2.0.149":"2021-05-08T00:16:41.162Z","2.0.150-renovate-non-major-ff8e6cb73232f7a15e445bcaae109cbb3558b511":"2021-05-08T00:27:42.296Z","2.0.150-renovate-non-major-1c2ab136d03122aaa3de8730e16e895292cb849e":"2021-05-08T00:43:45.633Z","2.0.150":"2021-05-08T00:55:25.521Z","2.0.151-renovate-non-major-8da335370b1a61381135cf3f17e81e2ec20fcbb6":"2021-05-08T01:00:40.040Z","2.0.151-renovate-non-major-e27de48cc2af400cbb7f7f30e161e68171d18118":"2021-05-08T01:07:44.149Z","2.0.151-renovate-non-major-c8fa43f9af3d86311fcc683f133c91a56133c6ea":"2021-05-08T01:15:11.600Z","2.0.151-renovate-non-major-d4b347044df29d555087dc3588006d254ccf7c17":"2021-05-08T01:20:34.218Z","2.0.151":"2021-05-08T01:24:02.228Z","2.0.152-dependabot-npm-and-yarn-hosted-git-info-2-8-9-bc555b1f9323245b69f0ea2fa472089149f981ee":"2021-05-08T03:31:42.356Z","2.0.152-renovate-non-major-d720125a70b51a5c5834071e27394d79811c8f79":"2021-05-08T03:37:29.216Z","2.0.152":"2021-05-08T03:38:44.260Z","2.0.153-renovate-non-major-98d0c6986a5d0e0799cf8cb91c4a53b98c8c1d1e":"2021-05-08T03:44:33.170Z","2.0.153":"2021-05-08T03:48:03.972Z","2.0.154-renovate-non-major-b1e44a82e01d8eee6b16c8569288b58e534b69b2":"2021-05-08T03:55:55.328Z","2.0.154":"2021-05-08T03:59:22.769Z","2.0.155-renovate-non-major-1011da97a4ca9585781d08a25e96020204129773":"2021-05-08T04:58:32.272Z","2.0.155":"2021-05-08T05:02:21.345Z","2.0.156-renovate-non-major-48ebea06345d236d84f57128fe2847fecaedd6b8":"2021-05-08T07:39:53.597Z","2.0.156":"2021-05-08T07:43:05.186Z","2.0.157-renovate-non-major-f2cbac4213bd3481c9b17e1ab0de064c5f3bbf09":"2021-05-08T09:00:52.271Z","2.0.157":"2021-05-08T09:04:40.681Z","2.0.158-renovate-non-major-335c814f45381305dbac6707b8721e457b239277":"2021-05-08T09:11:01.454Z","2.0.158":"2021-05-08T09:15:04.278Z","2.0.159-renovate-non-major-37767223deef88e6a18a7309b8d161064b2e22a8":"2021-05-08T11:08:11.749Z","2.0.159":"2021-05-08T11:11:31.950Z","2.0.160-renovate-non-major-42fd16d4f08eefb82e0fd948bbee29f311c3c35a":"2021-05-09T00:43:35.985Z","2.0.160-renovate-non-major-37c1197bde3847e211e1dea595c590323241c2c9":"2021-05-09T00:48:44.500Z","2.0.160":"2021-05-09T00:51:56.831Z","2.0.161-renovate-non-major-420eac940647a40ba30b3de711eb21aa9bc968df":"2021-05-09T02:52:01.978Z","2.0.161":"2021-05-09T02:55:29.108Z","2.0.162-renovate-non-major-b19288c0d206ea0b5fb8c8a665a99de32445a149":"2021-05-09T08:27:58.189Z","2.0.162":"2021-05-09T08:31:28.705Z","2.0.163-renovate-non-major-79fd50751099602d1833a7d9041a3b7f1b2a92a5":"2021-05-09T10:13:07.253Z","2.0.163":"2021-05-09T10:16:17.460Z","2.0.164-renovate-non-major-2fa07161511779e5ab76b9dec0347f41dfe0f468":"2021-05-09T17:05:18.618Z","2.0.164":"2021-05-09T17:08:25.346Z","2.0.165-renovate-non-major-eab573464237b499e6bb8e4b300041f1fa543997":"2021-05-10T07:59:04.412Z","2.0.165":"2021-05-10T08:03:33.790Z","2.0.166-renovate-non-major-82abd83381deb6d43fdd9a14acabec1245bacb52":"2021-05-10T08:47:28.609Z","2.0.166":"2021-05-10T08:52:11.073Z","2.0.167-renovate-non-major-432b3fcad0ee31adb04db1f3df5e953378ebb318":"2021-05-10T09:46:21.128Z","2.0.167":"2021-05-10T09:49:56.995Z","2.0.168-renovate-non-major-67f1c3a4589b25a6d518b3b931f5981ba0cc5e44":"2021-05-10T10:47:03.087Z","2.0.168-renovate-non-major-6aad6ddf11c9223dadebecba20e3709a51d6fb5c":"2021-05-10T10:52:24.062Z","2.0.168":"2021-05-10T10:56:11.539Z","2.0.169-renovate-non-major-f4546117de53b5dce7c9a6e383abc4bbfc828619":"2021-05-10T12:18:53.304Z","2.0.169-renovate-non-major-eceefe2be9419e3654f410c5db2f604fa06eb47c":"2021-05-10T14:05:13.899Z","2.0.169":"2021-05-10T14:08:45.922Z","2.0.170-renovate-non-major-bbd2b91249648a6c341f3ad4ed4a02cbe621039b":"2021-05-10T15:51:06.531Z","2.0.170":"2021-05-10T15:54:48.950Z","2.0.170-dependabot-npm-and-yarn-postcss-8-2-14-f6556f2d2d35554cb1545716d3cdaa6dbf247535":"2021-05-10T16:04:04.560Z","2.0.171-renovate-non-major-097967d40bb09e48b5572392bad3435fa18cc340":"2021-05-10T16:35:05.183Z","2.0.171":"2021-05-10T16:38:46.053Z","2.0.172-renovate-non-major-9e3c7fee90e3b276868f774187b80aaceda72ea0":"2021-05-10T20:15:47.067Z","2.0.172":"2021-05-10T20:20:34.241Z","2.0.173-dependabot-npm-and-yarn-postcss-8-2-15-da1b0cc7deb9a222cc8c060234b957d1e99fc30d":"2021-05-10T23:28:17.202Z","2.0.173":"2021-05-10T23:51:57.990Z","2.0.174-renovate-non-major-0b849a3ee4900ee73461ebcb0d06fc5f325ce22b":"2021-05-11T09:26:10.419Z","2.0.174-renovate-non-major-53cdbf2e4cd383295b85489496e640e504938152":"2021-05-11T10:31:56.239Z","2.0.174":"2021-05-11T10:35:26.020Z","2.0.175-renovate-non-major-fc4cd24456d7e2a496b3328f355633f52f3a651f":"2021-05-11T15:35:48.012Z","2.0.175":"2021-05-11T15:39:06.195Z","2.0.176-renovate-non-major-3eedc4fd92bff463722c2e8288f5919217344c3c":"2021-05-12T00:57:48.489Z","2.0.176":"2021-05-12T01:01:07.324Z","2.0.177-renovate-non-major-470db4c9742eea5cd00990afd48bcf6fce6d8758":"2021-05-12T02:24:04.752Z","2.0.177-renovate-non-major-10839a8aaf776472cf9a1f38543e485065f47ad9":"2021-05-12T02:31:18.606Z","2.0.177":"2021-05-12T02:34:49.285Z","2.0.178-renovate-non-major-c8c8d3bf0557e9836c7968fb9cd36d4089f7b3b8":"2021-05-12T02:41:21.549Z","2.0.178":"2021-05-12T02:45:26.975Z","2.0.179-renovate-non-major-f954a407fe5d146aefa0c75444a3fd6d35c0ad21":"2021-05-12T09:31:08.721Z","2.0.179":"2021-05-12T09:35:36.058Z","2.0.180-renovate-non-major-cbc7953b346122ac60ef1cf1680675f3584dac00":"2021-05-12T10:52:25.332Z","2.0.180":"2021-05-12T10:55:51.606Z","2.0.181-renovate-non-major-1a8601e1403fafa6ac1302b23c65100274b91214":"2021-05-12T11:28:51.678Z","2.0.181":"2021-05-12T11:32:12.835Z","2.0.182-renovate-non-major-5c6907ed2744b7d128024fcf62bbad28c99b8818":"2021-05-12T20:27:49.090Z","2.0.182":"2021-05-12T20:31:19.785Z","2.0.183-renovate-non-major-6b51eee5ab431dc1cc6784badbe86a4fdd95d7d8":"2021-05-12T22:14:19.543Z","2.0.183":"2021-05-12T22:17:28.282Z","2.0.184-renovate-non-major-0478a423de788f3f8c9264a305877eea7f527f11":"2021-05-13T01:01:12.285Z","2.0.184":"2021-05-13T01:06:46.411Z","2.0.185-renovate-non-major-63b758e3dc52eacec1e442c716b1bfac56d2fe3c":"2021-05-13T02:18:06.228Z","2.0.185":"2021-05-13T02:22:13.691Z","2.0.186-renovate-non-major-35decd6c85f0379f96e9f030816272c86613b19a":"2021-05-13T12:55:16.070Z","2.0.186":"2021-05-13T12:58:48.763Z","2.0.187-renovate-non-major-6b2f53d0e5efe6f04f9dbac0b4261bd70e1126dc":"2021-05-13T13:04:12.643Z","2.0.187-renovate-non-major-387a19996486b89f11faa6885a5937e847e80fd3":"2021-05-13T13:11:51.193Z","2.0.187":"2021-05-13T13:15:07.508Z","2.0.188-renovate-non-major-97f9ac99f332fdfcef2315e89b9ebd16c91d331e":"2021-05-13T15:08:21.435Z","2.0.188":"2021-05-13T15:13:26.994Z","2.0.189-renovate-non-major-f6bf7a2af246babb5e5365f7a957a18a5dc6c180":"2021-05-13T19:31:40.151Z","2.0.189":"2021-05-13T19:35:22.319Z","2.0.190-renovate-non-major-b6daee2133a7b26bf917f0f26fd91964c53ca2c5":"2021-05-13T23:37:37.106Z","2.0.190":"2021-05-13T23:40:59.235Z","2.0.191-renovate-non-major-4ec5bf7778d4ad99a1a7108065b13b77e4588ead":"2021-05-14T00:53:28.082Z","2.0.191":"2021-05-14T00:57:04.261Z","2.0.192-renovate-non-major-8dffbb2fb9e61bc5391c179463bb9b68e4ffa8fe":"2021-05-14T04:22:58.059Z","2.0.192":"2021-05-14T04:27:33.972Z","2.0.193-renovate-non-major-055b1d26503076f196ed10111eeea41a7b74e93f":"2021-05-14T07:11:20.226Z","2.0.193":"2021-05-14T07:15:15.917Z","2.0.194-renovate-non-major-b857decb48f371a5ac9a2783cdc3c5444cb6c0a3":"2021-05-14T09:03:09.337Z","2.0.194":"2021-05-14T09:06:48.692Z","2.0.195-renovate-non-major-f047f493e5748b8844bb49ac92c9d6cbedf215f2":"2021-05-14T17:06:51.446Z","2.0.195":"2021-05-14T17:11:42.065Z","2.0.196-renovate-non-major-7e5d8d01a7947b62b6cb5c8268fb9338a248715c":"2021-05-14T18:26:55.371Z","2.0.196":"2021-05-14T18:30:19.137Z","2.0.197-renovate-non-major-f0e876026a2b7f13698673a3f17f59d15f64e647":"2021-05-15T08:30:55.417Z","2.0.197":"2021-05-15T08:34:09.122Z","2.0.198-renovate-non-major-b254e14af739d51e9a9a2d9abf3039fbc393afcf":"2021-05-15T17:34:12.204Z","2.0.198":"2021-05-15T17:37:36.137Z","2.0.199-renovate-non-major-d79bcf22e0e50237973ce935ec052cc3f4742656":"2021-05-15T18:29:55.799Z","2.0.199":"2021-05-15T18:33:24.803Z","2.0.200-renovate-non-major-6acfb2068204417219cdea9370a125a38d486d66":"2021-05-15T23:22:21.019Z","2.0.200":"2021-05-15T23:25:49.006Z","2.0.201-renovate-non-major-75aabdf6792a5415ab0adb129adcad07ac6dca72":"2021-05-16T01:01:23.920Z","2.0.201":"2021-05-16T01:04:31.865Z","2.0.202-renovate-non-major-e5648f8d72d18fa97523236f300bf9a4f581da70":"2021-05-16T02:32:21.081Z","2.0.202":"2021-05-16T02:36:30.132Z","2.0.203-renovate-non-major-9172f875cb933b097ae5cad5d51326ad53918812":"2021-05-16T17:08:38.125Z","2.0.203":"2021-05-16T17:13:14.345Z","2.0.204-renovate-non-major-9a1d635a540999c6e3b8f9395233175f4032d5df":"2021-05-16T19:05:31.300Z","2.0.204":"2021-05-16T19:09:57.590Z","2.0.205-renovate-non-major-cd28ab84e41c42c452bca2fe1294c9258ba6df95":"2021-05-16T19:47:42.289Z","2.0.205":"2021-05-16T19:51:38.652Z","2.0.206-renovate-non-major-84a8819fea53ec8780e1edaafda587b4cd711f06":"2021-05-17T10:15:53.286Z","2.0.206":"2021-05-17T10:19:38.339Z","2.0.207-renovate-non-major-bcbf9852b825d63ac9fa62d35b037abf860623da":"2021-05-17T12:04:57.169Z","2.0.207":"2021-05-17T12:08:45.479Z","2.0.208-renovate-non-major-7c85e49d9e44afcabe580c5119ffaba5455f0b94":"2021-05-17T15:17:41.909Z","2.0.208":"2021-05-17T15:20:53.902Z","2.0.209-typescript-core-c8961b1271d26c693b2788eb94f2ed14e7e6450f":"2021-05-17T16:23:09.347Z","2.0.209-typescript-core-287b1f4b718a2a9750ff3d25f41e4a5cc522d9be":"2021-05-17T16:32:18.731Z","2.0.209-renovate-non-major-69e03cf9e3b89ff3eab5b9503b5b4e668a4f31e6":"2021-05-17T20:00:05.381Z","2.0.209":"2021-05-17T20:04:13.936Z","2.0.210-renovate-non-major-b4a594d7cd4ade43924ce6a8ccacb07ea65ec4bf":"2021-05-18T01:31:04.395Z","2.0.210":"2021-05-18T01:34:36.740Z","2.0.211-renovate-non-major-6c24fe7a2086a4249cd36c51b07a1397a8d87e6d":"2021-05-18T01:38:22.995Z","2.0.211":"2021-05-18T01:43:48.578Z","2.0.212-typescript-core-18dad234db780fab16b59219b18bf6710abeb436":"2021-05-18T12:02:04.730Z","2.0.212-renovate-non-major-f0f8a063b8b8c91a3c3d5aba45415d91bc8daeec":"2021-05-18T18:31:10.708Z","2.0.212":"2021-05-18T18:34:32.344Z","2.0.213-renovate-non-major-07dc88d1780146221c99c2548c5d796f68f58f4d":"2021-05-18T18:38:54.524Z","2.0.213":"2021-05-18T18:45:14.822Z","2.0.214-renovate-non-major-6ad602d1b6d50095e33749b1da3cd10c444a79ec":"2021-05-18T19:46:32.165Z","2.0.214":"2021-05-18T19:49:50.210Z","2.0.215-renovate-non-major-3d20dceec247c880d98ac63387a547ed577f80d2":"2021-05-19T00:26:47.554Z","2.0.215":"2021-05-19T00:31:16.555Z","2.0.216-renovate-internal-non-major-114f5722128205d2a0edfa8ba158ec8994f0a0cc":"2021-05-21T09:56:38.430Z","2.0.216":"2021-05-21T10:00:18.336Z","2.0.217-renovate-internal-non-major-e414547e5c4f531d8586dceccf4b9af8dedcb24c":"2021-05-21T11:35:33.364Z","2.0.217":"2021-05-21T11:38:49.007Z","2.0.218-renovate-internal-non-major-523aefadf67b048fb65a7abd28e6e22ab5e3d626":"2021-05-21T11:43:34.483Z","2.0.218":"2021-05-21T11:47:59.737Z","2.0.219-renovate-internal-non-major-d11ecdc96d701f2e1c4cd853fdbfa9132c06e90f":"2021-05-21T13:03:00.129Z","2.0.219":"2021-05-21T13:06:40.991Z","2.0.220-renovate-balena-lint-6-x-cbbe57d2eb8cb1c9edbbdd519a5bf373aa5cfd95":"2021-05-21T19:06:49.863Z","2.0.220-renovate-internal-non-major-c64e1920a841d2703bd05493736d4b172dce8f2a":"2021-05-22T00:52:22.765Z","2.0.220":"2021-05-22T00:55:49.610Z","2.0.221-renovate-internal-non-major-508f059fcc9e207acdc433777825dedd63e26846":"2021-05-22T01:00:58.993Z","2.0.221-renovate-balena-lint-6-x-539ad87989ab99dcae4ce14c9765541d3fc052d0":"2021-05-22T01:03:53.014Z","2.0.221":"2021-05-22T01:07:53.400Z","2.0.222-renovate-balena-lint-6-x-37d9d8dabdbeefe768e9c8d71d43c3d91016ac69":"2021-05-22T01:12:45.942Z","2.0.222-renovate-internal-non-major-b99221647841b042cf5bb91db117f422fb5869b3":"2021-05-22T02:47:10.610Z","2.0.222-renovate-internal-non-major-ee886ab688f6543de72ff7283a0f4467ca762ba3":"2021-05-22T02:52:44.743Z","2.0.222":"2021-05-22T02:56:05.278Z","2.0.223-renovate-balena-lint-6-x-42dc2eed5ed340f43dc3f76ca9906f45f44d90ed":"2021-05-22T03:01:17.848Z","2.0.223-renovate-internal-non-major-d3306e6c613eeb6b054851125436686228793b81":"2021-05-22T03:03:21.013Z","2.0.223":"2021-05-22T03:07:25.370Z","2.0.224-renovate-balena-lint-6-x-27c5d073efb598f54e84251707930573dc63b30d":"2021-05-22T03:10:40.661Z","2.0.224-renovate-internal-non-major-74f596e6d5022b4d828ff639fc2b3bfa030e0ac8":"2021-05-23T02:44:03.991Z","2.0.224":"2021-05-23T02:47:47.910Z","2.0.225-renovate-balena-lint-6-x-8389ac6c09beca8075eda8e88a33520a31f2e736":"2021-05-23T02:52:01.185Z","2.0.225-renovate-internal-patch-3108f7873265c1c2520b80783cffff2d7e972fbb":"2021-05-23T04:02:13.306Z","2.0.225":"2021-05-23T04:06:14.279Z","2.0.226-renovate-balena-lint-6-x-215ddbc72c49b2aff6db6e0934208a4b2f4e4166":"2021-05-23T04:09:31.646Z","2.0.226-renovate-internal-patch-04592c8642d97122b3e82f64797979011433c60a":"2021-05-23T08:11:48.878Z","2.0.226":"2021-05-23T08:15:33.318Z","2.0.227-renovate-balena-lint-6-x-96ecbc2408ed010e0017fa2c0b4c34ddc996c4b0":"2021-05-23T08:19:30.591Z","2.0.227-renovate-internal-patch-85cb33e28d78923d2b6e002c2f2a1220aa1964ba":"2021-05-23T08:23:16.316Z","2.0.227":"2021-05-23T08:27:02.069Z","2.0.228-renovate-balena-lint-6-x-35b33be47c2debc00240fe1fcadc401875cd6dc3":"2021-05-23T08:31:27.272Z","2.0.228-renovate-internal-patch-50b6aaf2a6491eec82f1533f7f43456af8bad9f4":"2021-05-23T10:21:29.155Z","2.0.228":"2021-05-23T10:25:44.557Z","2.0.229-renovate-balena-lint-6-x-e07ed57a6d1054291c93fcc9d33fde027d53a272":"2021-05-23T10:29:10.196Z","2.0.229-renovate-internal-patch-e9330370bf12f9e724796ac71452ccc120d4e9c2":"2021-05-23T12:27:55.543Z","2.0.229":"2021-05-23T12:31:36.672Z","2.0.230-renovate-balena-lint-6-x-d4996b1701935aa6e1b3532de6de867fab456802":"2021-05-23T12:34:50.911Z","2.0.230-renovate-internal-patch-3b34e2c34e3f40b553500d7d86e15e6a471527b1":"2021-05-23T13:44:08.730Z","2.0.230":"2021-05-23T13:47:31.677Z","2.0.231-renovate-balena-lint-6-x-c51cb5b33fd7b476536bcab740fe0ae47c3885c7":"2021-05-23T13:51:14.568Z","2.0.231-renovate-internal-patch-4b81572a6e6683e4702679b4c7961ca22d8fc116":"2021-05-23T17:26:23.151Z","2.0.231":"2021-05-23T17:29:59.379Z","2.0.232-renovate-balena-lint-6-x-280e9b999b4e9cbcbf81abca060997fe4ce30e1f":"2021-05-23T17:34:21.739Z","2.0.232-renovate-internal-patch-c606761a35235ca93f8722a1d8404505cd6886f7":"2021-05-23T19:02:49.278Z","2.0.232":"2021-05-23T19:06:10.089Z","2.0.233-renovate-internal-patch-cafcfc4c9fd08009a531bb504eea21f9f2daad47":"2021-05-23T19:10:47.364Z","2.0.233-renovate-balena-lint-6-x-2e892013727abef45005ea6fb7162bbb5cfa48c7":"2021-05-23T19:11:26.663Z","2.0.233":"2021-05-23T19:15:49.294Z","2.0.234-renovate-balena-lint-6-x-9b4ff7823786e50bcaeb94d086c01cdb259908de":"2021-05-23T19:19:49.213Z","2.0.234-renovate-internal-patch-3cb43faaf47e27ef67aab1d81a35150a3f09e5a2":"2021-05-23T21:42:50.427Z","2.0.234":"2021-05-23T21:46:12.032Z","2.0.235-renovate-balena-lint-6-x-0f97f81085e921bc7c779a7defe6e0e4f3ee702c":"2021-05-23T21:49:39.337Z","2.0.235-renovate-internal-patch-6e7c2e73ed3697d2114b45843e11efd3b5c93e55":"2021-05-24T00:26:25.060Z","2.0.235":"2021-05-24T00:29:55.176Z","2.0.236-renovate-balena-lint-6-x-0641e359051991264e134f58ad159289f5e47523":"2021-05-24T00:33:51.507Z","2.0.236-renovate-internal-patch-e9d91803cecc2a11c52b8261d80eb0cf54b6e604":"2021-05-24T03:06:28.227Z","2.0.236":"2021-05-24T03:10:50.314Z","2.0.237-renovate-balena-lint-6-x-d261ff4f711fd7277ff838e56df799c657768f15":"2021-05-24T03:17:44.454Z","2.0.237-renovate-internal-patch-27af1d7386d7a7ca46d8fd6288ef1ef2289b9709":"2021-05-24T05:59:07.355Z","2.0.237-renovate-internal-patch-7dde260c49f88b5b2a65b6ebde23399ce306f29a":"2021-05-24T06:07:15.250Z","2.0.237-renovate-internal-patch-d75410be0825418283eb9dde0c1e985a8c87bc06":"2021-05-24T06:13:43.624Z","2.0.237-renovate-internal-patch-f5f20bd5f80470b5649aaafafe614aaac5c06a23":"2021-05-24T06:19:14.902Z","2.0.237":"2021-05-24T06:22:06.383Z","2.0.238-renovate-balena-lint-6-x-59be189821216e53f72d8035ee8bc05ac0ef2d18":"2021-05-24T07:05:24.232Z","2.0.238-renovate-internal-patch-83ef5104f1a383d9d14126a955f6eb081b60fe3d":"2021-05-24T07:07:49.025Z","2.0.238":"2021-05-24T07:09:45.827Z","2.0.238-renovate-internal-patch-3882c12f0e4699e981cf9ad26eb27f23c02c28ee":"2021-05-24T07:11:53.105Z","2.0.239-renovate-internal-patch-af77006aafe1cfdc5a2a383029258d0e254c9407":"2021-05-24T07:19:27.708Z","2.0.239":"2021-05-24T07:22:53.882Z","2.0.240-renovate-internal-patch-8526dcc317642d8e13be1a017fd8e90842e07fd3":"2021-05-24T09:28:46.451Z","2.0.240":"2021-05-24T09:34:54.956Z","2.0.241-renovate-balena-lint-6-x-33aadf6ffa4558b65921b08ecba7beab5fda6dbf":"2021-05-24T09:38:29.883Z","2.0.241-typescript-core-5a5de0f9631ff68d5fe2201cfdb937b0d1506481":"2021-05-24T11:45:49.489Z","2.0.241-typescript-core-1db2555d42a5ffa7ff7e43088741cba46895a12d":"2021-05-24T12:01:18.152Z","2.0.241-renovate-balena-lint-6-x-81940f00f2bdee39cd8da5669aaf0c97acf87817":"2021-05-24T13:07:21.809Z","2.0.241-renovate-internal-patch-1b325f8445271fe4a41c2e72cc23eec2e698c37e":"2021-05-24T18:13:14.339Z","2.0.241":"2021-05-24T18:16:07.421Z","2.0.242-renovate-balena-lint-6-x-94612a0e4048ccf24bc134720c8d5b70f4df41a1":"2021-05-24T18:22:53.373Z","2.0.242":"2021-05-25T00:08:59.281Z","2.0.242-dependabot-npm-and-yarn-browserslist-4-16-6-9a21970a9b5c26d3909798c8536429efbe8c790a":"2021-05-25T00:19:53.092Z","2.0.243-renovate-internal-patch-46a404a4f405d7a9fdf13d7ce1b6ce9f3af85d47":"2021-05-25T00:22:05.397Z","2.0.243-renovate-internal-patch-b5f557560dd0172442ded74e49f5b05b7bc73468":"2021-05-25T00:35:57.389Z","2.0.243-renovate-internal-patch-01225a0682bc4cf8c948a3b715066012e2bb2d06":"2021-05-25T02:06:47.983Z","2.0.243":"2021-05-25T02:12:01.554Z","2.0.244-renovate-internal-patch-dbbacf7ac9c61c8ab5acdd5783bc6f4c1f494b6a":"2021-05-25T02:19:12.045Z","2.0.244":"2021-05-25T02:22:53.243Z","2.0.245-dependabot-npm-and-yarn-browserslist-4-16-6-a835d869437e06e4da253e8ff5eda8e905c332be":"2021-05-25T03:47:48.823Z","2.0.245":"2021-05-25T03:51:38.008Z","2.0.246-renovate-internal-patch-c466d0e6006982bc7d990501bda610e11f4d4347":"2021-05-25T03:59:52.521Z","2.0.246-renovate-internal-patch-11ea74010421a9022fd8287ba2e0d4c683d755c1":"2021-05-25T04:05:26.646Z","2.0.246":"2021-05-25T04:09:05.792Z","2.0.247-renovate-internal-patch-4d4738e12804df112bf8868e6b3a76e9f65f8428":"2021-05-25T04:15:26.240Z","2.0.247":"2021-05-25T04:18:53.961Z","2.0.248-renovate-internal-patch-24022cbf9f8534228978cea5e05dd6b6635d5787":"2021-05-25T04:25:45.508Z","2.0.248-renovate-internal-patch-5a8a429505f2f3cce88787181f17a4fd898a0b15":"2021-05-25T04:31:29.454Z","2.0.248":"2021-05-25T04:34:31.219Z","2.0.249-use-jellyfish-config-e64feb1a5c5d0182b9c175d2524b1702a54c9d1f":"2021-05-25T05:38:46.757Z","2.0.249":"2021-05-25T05:42:11.597Z","2.0.250-renovate-internal-patch-31e316838dd8b710c6e3b835e18e303d45fec420":"2021-05-25T08:32:56.969Z","2.0.250":"2021-05-25T08:36:16.875Z","2.0.251-renovate-internal-patch-047db2cdaf6942e169b6b6a524480dcaa04b44c1":"2021-05-25T17:00:16.738Z","2.0.251":"2021-05-25T17:04:30.856Z","2.0.252-renovate-internal-patch-3a319d7fc084ed4c806e2934598b3b05fe924e6f":"2021-05-26T02:20:11.079Z","2.0.252":"2021-05-26T02:23:45.822Z","2.0.253-renovate-internal-patch-61456431b40fe36e8a7bbf28c969d8544363bf59":"2021-05-26T04:06:30.789Z","2.0.253":"2021-05-26T04:09:53.026Z","2.0.254-repo-sync-jellyfish-config-default-f258731e81571d988dc4f5efc5dde91c7d52f381":"2021-05-26T09:10:33.207Z","2.0.254-renovate-balena-jellyfish-config-1-x-1e6f03ad6fe2a6479066367ff5d52e59042741bf":"2021-05-26T09:17:40.177Z","2.0.254-renovate-internal-patch-4bdcdc6f8a51bb386b74880ad69a9afef5cd685d":"2021-05-27T02:32:40.653Z","2.0.254-renovate-balena-jellyfish-config-1-x-41ecbf445ed96ec68535c4ef8f325467d6ccfd66":"2021-05-27T02:33:00.939Z","2.0.254":"2021-05-27T02:36:40.794Z","2.0.255-renovate-balena-jellyfish-config-1-x-561760b73dbc06fca112c01c669d07fbb3d851db":"2021-05-27T02:41:19.740Z","2.0.255-renovate-internal-patch-a6e8690ce9fa330a6fdde639ccdacfb46218a234":"2021-05-27T02:48:55.305Z","2.0.255":"2021-05-27T02:50:42.547Z","2.0.256-renovate-internal-patch-2e118899ea178b7eead116b566dd57252d87dd25":"2021-05-27T03:01:07.686Z","2.0.256":"2021-05-27T03:04:53.211Z","2.0.257-repo-sync-jellyfish-config-default-30c05c8d95766c997a573a0558e052a0334eb3fd":"2021-05-27T03:20:30.520Z","2.0.257-repo-sync-jellyfish-config-default-07b50d91af5c7318af0f8dc9ee7da08a7e14653e":"2021-05-27T04:13:06.001Z","2.0.257-renovate-internal-patch-28b95aad7fd3f7039eecf874139b0a96d249d759":"2021-05-27T04:30:29.690Z","2.0.257-renovate-internal-patch-ad2a97d864189c317c91d1ca4d85186cdc3db4ea":"2021-05-27T04:35:07.407Z","2.0.257":"2021-05-27T04:38:39.987Z","2.0.258-repo-sync-jellyfish-config-default-378238b81e7dee649af7b9405b75dc107cd144f1":"2021-05-27T06:47:55.490Z","3.0.0-typescript-core-24f2603565f5bf64f666250c3493394c40ac5f1c":"2021-05-27T07:58:29.620Z","3.0.0":"2021-05-27T08:07:21.354Z","3.0.1-renovate-internal-patch-2074a5125f23630265b2aa3ca11d1f5140da90a0":"2021-05-27T08:12:47.530Z","3.0.1":"2021-05-27T08:16:26.898Z","3.0.2-repo-sync-jellyfish-config-default-5b2a39237bb96a90bbfb3409093a451b0289a009":"2021-05-27T08:31:31.271Z","3.0.2":"2021-05-27T08:38:41.479Z","3.0.3-renovate-internal-patch-70b1aa8640791acc33cdd54bd429673194a8658d":"2021-05-27T08:49:54.299Z","3.0.3-renovate-internal-patch-7ab795e8c00b5f0e2d751b05429200adf3c3c04e":"2021-05-27T10:27:59.060Z","3.0.3":"2021-05-27T10:31:45.572Z","3.0.4-renovate-internal-patch-3c6781f67543384a565e2abca91a7bf7efc06cbb":"2021-05-27T10:38:27.261Z","3.0.4-renovate-internal-patch-3a4a8a52aa80aa5bd2e3eff5ed2d8193d019b106":"2021-05-27T10:45:09.228Z","3.0.4-renovate-internal-patch-ed0594b7d815b83bfd9c0564dc41e9c1053fc9ee":"2021-05-27T12:20:26.376Z","3.0.4":"2021-05-27T12:24:05.596Z","3.0.5-renovate-internal-patch-31f6bd7ea5dd3f568cb4ffa75fe89652dc0efad2":"2021-05-27T12:30:32.407Z","3.0.5":"2021-05-27T12:36:51.346Z","3.0.6-renovate-internal-patch-5386992e01234c483aa543cb672761bf9034f3f1":"2021-05-27T14:00:45.523Z","3.0.6":"2021-05-27T14:04:38.326Z","3.0.7-renovate-internal-patch-46a38de39b81d5fa358423d4468b852e0dd07366":"2021-05-27T16:48:51.732Z","3.0.7":"2021-05-27T16:51:51.027Z","3.0.8-h32-evaluate-links-03f32ce2de5cfb27bf46aadf63a10ea3a38ca291":"2021-05-27T20:01:20.361Z","3.0.8-renovate-internal-patch-a8699ddd92299df03eb2f783c6efac2d5aa0ea87":"2021-05-28T00:35:37.511Z","3.0.8":"2021-05-28T00:40:06.978Z","3.0.9-dependabot-npm-and-yarn-browserslist-4-16-6-8817564f77e04d6634a30e0dec63bcb426f27fb9":"2021-05-28T00:53:28.196Z","3.0.9":"2021-05-28T00:56:52.214Z","3.0.10-renovate-internal-patch-4d83942c848463082d1c3114b3103da885e0c3ba":"2021-05-28T01:02:33.160Z","3.0.10":"2021-05-28T01:05:45.535Z","3.0.11-renovate-external-non-major-41b776db8c4ec619edbe06c73af415a34fe1f795":"2021-05-29T00:17:44.067Z","3.0.11-renovate-major-external-major-5cdce438da6e0abc664b7ef82bfc060c9341a5b8":"2021-05-29T00:18:03.715Z","3.0.11":"2021-05-29T00:21:14.703Z","3.0.12-renovate-major-external-major-cf9909052d6184e7c7690e0f57f1e05c8f4f0cf4":"2021-05-29T00:25:55.895Z","3.0.12-renovate-internal-patch-aeac43ba7dca94f6dacd7fe3c8c439ba51a87693":"2021-05-29T04:28:01.994Z","3.0.12":"2021-05-29T04:31:42.150Z","3.0.13-renovate-major-external-major-185db6d0c8f68ff8149bd26415aad5e568b4d496":"2021-05-29T04:36:46.349Z","3.0.13":"2021-05-29T06:22:57.759Z","3.0.13-renovate-internal-patch-80f2f13e5d9be52bd5c01addd3e238e64a3526af":"2021-05-29T06:26:05.477Z","3.0.13-dependabot-npm-and-yarn-ws-7-4-6-c50a8aad1f4f3131baade788de89939e0bdbb26f":"2021-05-29T06:26:51.051Z","3.0.14-renovate-internal-patch-a01045695b0365a94216a4f5af60ee2ce7231f64":"2021-05-29T06:30:57.849Z","3.0.14-dependabot-npm-and-yarn-ws-7-4-6-6e2066dc3d22ca6fb0ca6d7c6914e344f8762755":"2021-05-29T07:09:45.911Z","3.0.14":"2021-05-29T07:13:49.794Z","3.0.15-renovate-internal-patch-39d59a852b8338d9e66a1a922bc4c1868c7287fd":"2021-05-29T07:27:51.895Z","3.0.15-renovate-internal-patch-3af5c575e42b40c2b229397ec0d0b06133f3a3c3":"2021-05-29T08:28:12.711Z","3.0.15":"2021-05-29T08:31:55.674Z","3.0.16-renovate-internal-patch-f5c4cc244ba1403be9c72937f8bf17141d9410af":"2021-05-29T09:30:25.303Z","3.0.16":"2021-05-29T10:00:55.511Z","3.0.16-renovate-internal-patch-e77d4607c26218179eed54a9d012a342cc85e297":"2021-05-29T10:05:05.126Z","3.0.17-renovate-internal-patch-40c269bf0831a512525ea3cddaf75d613e19bead":"2021-05-29T10:22:46.920Z","3.0.17":"2021-05-29T10:44:42.307Z","3.0.18-renovate-internal-patch-957174566da50bce0487d6de0807be6fe7a190e5":"2021-05-29T10:51:35.280Z","3.0.18":"2021-05-29T10:55:52.409Z","3.0.19-renovate-internal-patch-87e23b89a7bc4e7d6a8cadc9155b7d2d600a25b5":"2021-05-29T12:09:38.567Z","3.0.19":"2021-05-29T12:13:16.241Z","3.0.20-renovate-external-non-major-714cbb8a224205bbdff6bc4ebc065e3f564c2adc":"2021-05-29T14:04:11.155Z","3.0.20-renovate-internal-patch-9ca8fb4367bf379b6443ba4d547eda0c65ce2de0":"2021-05-29T14:05:20.043Z","3.0.20":"2021-05-29T14:07:39.162Z","3.0.21-renovate-internal-patch-1b49ec3a89c74e10dcb842e5a85448bd471cf0bf":"2021-05-29T14:12:09.251Z","3.0.21":"2021-05-29T14:17:38.536Z","3.0.22-renovate-external-non-major-7f3a37ea28e42334fb809f60f6af26f597bc07be":"2021-05-29T18:20:51.736Z","3.0.22-renovate-internal-patch-3934793a6f596f7469a23610573e844c1d2e685f":"2021-05-29T19:56:18.294Z","3.0.22":"2021-05-29T20:00:45.896Z","3.0.23-renovate-external-non-major-c484fce64624f8b4894dc454caa3d1f6fa4fabef":"2021-05-29T20:05:22.323Z","3.0.23-renovate-internal-patch-6fea4fa2bb321b9f7b40bcc3e78e3038a97d9b2d":"2021-05-29T20:11:55.268Z","3.0.23":"2021-05-29T20:16:29.239Z","3.0.24-renovate-external-non-major-895152b799af3f5667d98b58045692268dbc1976":"2021-05-29T20:20:05.595Z","3.0.24-renovate-internal-patch-2895d293d240b881886271f498d3b574d9b9c424":"2021-05-29T22:26:23.202Z","3.0.24":"2021-05-29T22:29:33.189Z","3.0.25-renovate-external-non-major-85235b0f13282f47d46f2db3c6b76fc7dfedf193":"2021-05-29T22:36:17.775Z","3.0.25-renovate-internal-patch-545461b0cb39b8febec4ef3e4d34f51de7ff6d09":"2021-05-29T22:41:19.034Z","3.0.25":"2021-05-29T22:44:37.120Z","3.0.26-renovate-external-non-major-856b204777f11843bcc453cedc760806bce53d02":"2021-05-29T22:48:36.745Z","3.0.26":"2021-05-29T23:19:10.000Z","3.0.27-renovate-internal-patch-e7176a04aeed7cc78385eb3076a5f1312747f529":"2021-05-29T23:25:12.897Z","3.0.27":"2021-05-29T23:28:26.574Z","3.0.28-renovate-internal-patch-1f0a141d27b4123c111faf52db16ab5d8062cd7d":"2021-05-30T00:57:49.535Z","3.0.28":"2021-05-30T01:01:34.973Z","3.0.29-renovate-internal-patch-481a0f573d3a2eb945a459c8d1bc7123b3588d9c":"2021-05-30T03:04:49.385Z","3.0.29":"2021-05-30T03:07:39.292Z","3.0.30-renovate-internal-patch-f3563c590e60216e09aaeafe0c04d0aab4c495f8":"2021-05-31T01:10:22.782Z","3.0.30":"2021-05-31T01:13:58.089Z","3.0.31-renovate-internal-patch-761b294ad23e47b72eb63712526e513b072c4d6a":"2021-05-31T04:43:10.203Z","3.0.31-renovate-internal-patch-089df4e479e477ba16d4b4a456dfa4aaf538d9a0":"2021-05-31T04:47:37.259Z","3.0.31":"2021-05-31T04:51:26.327Z","3.0.32-renovate-internal-patch-a2360b6dd726b1fbfa657eeba8dd50b4a311cbe4":"2021-05-31T07:58:40.735Z","3.0.32":"2021-05-31T08:02:41.125Z","3.0.33-renovate-internal-patch-765280ce39590ea145475d4a4de3dd44f309fb9c":"2021-05-31T10:48:43.205Z","3.0.33":"2021-05-31T10:52:49.251Z","3.0.34-renovate-internal-patch-711f6cfcedbbc97ca1b9f4289fe36cc644f909e1":"2021-05-31T12:29:12.939Z","3.0.34-renovate-internal-patch-d49dc99dd0103142565f8f5cf0aff363aac2e3d1":"2021-05-31T12:33:39.574Z","3.0.34":"2021-05-31T12:36:51.453Z","3.0.35-renovate-balena-jellyfish-worker-5-x-d3a41f1f98feefa929ee964e0f8087bda99e95ce":"2021-05-31T20:07:59.559Z","3.0.35":"2021-05-31T21:22:03.923Z","3.0.36-renovate-internal-patch-33baf862988958d0ac5fe2de26d977d59937fea7":"2021-05-31T21:33:30.409Z","3.0.36":"2021-05-31T21:37:19.793Z","4.0.0-triggered-action-schedule-c44f253009d0c8b3a69071960917196246ccd4ba":"2021-06-02T11:23:53.990Z","3.0.37-remove-catch-uncommitted-f62786b6f4c381a2a0c86d0619f2d4a93fc5069e":"2021-06-03T00:08:12.432Z","3.0.37":"2021-06-03T00:11:32.081Z","4.0.0-triggered-action-schedule-ee5ef35ac1bd45aaccd7b2521b889a984bcd68f1":"2021-06-03T16:05:57.998Z","3.0.38-improve-lint-staged-fb5fef9eedfc80a16df8ba55974793068eac2753":"2021-06-04T00:23:20.465Z","3.0.38":"2021-06-04T00:27:13.578Z","3.0.39-renovate-internal-patch-da8df59e9e444e05ea7d7f4452c7b931bf2a0096":"2021-06-05T10:38:18.136Z","3.0.39":"2021-06-05T10:41:41.677Z","3.0.39-renovate-external-non-major-fa50f180e4430fa6c01e13998dc8978b37394f79":"2021-06-05T10:46:13.907Z","3.0.39-renovate-balena-jellyfish-types-0-x-fc142f9b25893d90dfc6665497d6ddea57bd12ab":"2021-06-05T10:47:16.041Z","3.0.40-renovate-external-non-major-15550305c406c5ccbf081adfa5461f5dc0b345c7":"2021-06-05T10:50:01.775Z","3.0.40-renovate-balena-jellyfish-types-0-x-d1e32045e38010a00657b6333eb878689baa482b":"2021-06-05T10:50:49.501Z","3.0.40-renovate-internal-patch-5919b169651d05a06e60357606689ee0d7a8f917":"2021-06-05T10:52:13.479Z","3.0.40":"2021-06-05T10:53:24.784Z","3.0.41-renovate-internal-patch-d5496f0eb184119940e4cb4b775a2056248e2b9e":"2021-06-05T10:58:28.543Z","3.0.41-renovate-balena-jellyfish-types-0-x-c803c00411c80e2120349f88903c72db39e81470":"2021-06-05T10:58:36.549Z","3.0.41":"2021-06-05T11:03:12.825Z","3.0.42-renovate-balena-jellyfish-types-0-x-485fee923511e7de87d0741918b9b74e9225c4ac":"2021-06-05T11:07:12.021Z","3.0.42":"2021-06-05T11:13:38.048Z","3.0.43-renovate-internal-patch-ee7e92a4208afbc40431cf627285328c447debc6":"2021-06-05T11:17:10.332Z","3.0.43":"2021-06-05T11:22:32.251Z","3.0.44-renovate-internal-patch-1c5146145baf42263e2632b166d76217d24eb43e":"2021-06-05T16:08:50.042Z","3.0.44":"2021-06-05T16:12:16.333Z","3.0.45-renovate-internal-patch-2c8adb5d02678e26035eac99852325b666f7809f":"2021-06-05T18:07:24.526Z","3.0.45":"2021-06-05T18:11:02.969Z","3.0.46-renovate-internal-patch-7b30c6f63c3b204d15a26803b34b043a10fa965b":"2021-06-06T00:22:06.232Z","3.0.46":"2021-06-06T00:25:30.903Z","3.0.47-bump-jellyfish-queue-8868869cbf7dd7657edece9832ae7584ecc3d0d8":"2021-06-06T01:56:26.758Z","3.0.47":"2021-06-06T01:59:40.194Z","3.0.48-renovate-internal-patch-3facb5957f484f0d9df35683048056eb7bb05219":"2021-06-06T02:05:09.612Z","3.0.48":"2021-06-06T02:08:58.338Z","3.0.49-renovate-internal-patch-4fe6311eb69a579e46e708aa04e726c78cb8f8e7":"2021-06-06T05:31:42.690Z","3.0.49":"2021-06-06T05:34:51.975Z","3.0.50-renovate-internal-patch-c5cb7905d6c3f6d220fe7ba7c3b902ed37bf8f48":"2021-06-06T10:45:01.382Z","3.0.50":"2021-06-06T10:48:03.970Z","3.0.51-renovate-internal-patch-23603ba29c95b1a5c7cc5ebdc9963554c0381cb5":"2021-06-06T12:31:18.636Z","3.0.51":"2021-06-06T12:34:04.135Z","3.0.52-renovate-internal-patch-a4e7d1c6579663fb480c4e46a5fdad38722868e7":"2021-06-06T14:44:27.085Z","3.0.52":"2021-06-06T14:48:25.735Z","3.0.53-renovate-external-non-major-2e1faa7edc547b008a09f44d66b240b5c6e46186":"2021-06-06T18:19:51.778Z","3.0.53-renovate-internal-patch-f5233acf209fd76be2e2c709c2d3b0f6e9490b41":"2021-06-06T18:20:46.475Z","3.0.53":"2021-06-06T18:23:42.285Z","3.0.54-renovate-internal-patch-fc1327dba7cb776a223ed8ca81fb015bab025b65":"2021-06-06T18:29:00.438Z","3.0.54-renovate-internal-patch-8b853123c7591ca60c2f3bcfb440b174208bfd3e":"2021-06-06T18:30:50.607Z","3.0.54-renovate-internal-patch-a89b7b5d53af0db345d0733602c1cd6ea8f4fed1":"2021-06-06T18:39:46.474Z","3.0.54":"2021-06-06T18:42:59.757Z","3.0.55-renovate-internal-patch-452de6793ee3ed73311ad2f6b0a8bc74b737f6ba":"2021-06-06T18:47:17.361Z","3.0.55":"2021-06-06T18:52:08.159Z","3.0.56-renovate-internal-patch-db159cb41995e3289d45b7370c03a0cfedcf6a09":"2021-06-07T00:11:19.891Z","3.0.56-renovate-internal-patch-e412c5ecb2ac50cc185be075d6641b9bafd5c327":"2021-06-07T00:16:44.100Z","3.0.56":"2021-06-07T00:20:01.404Z","3.0.57-renovate-internal-patch-40e52501d4f32a7f97613f2d36b4ec806afba52f":"2021-06-07T00:25:32.454Z","3.0.57":"2021-06-07T00:28:35.784Z","3.0.58-renovate-internal-patch-491ebaa5505b08f1f8bd2c4129d3a3913f0988ac":"2021-06-07T02:26:14.561Z","3.0.58-renovate-internal-patch-32c78c8d2c7dd5ac2feb66bbca4375fd9a97a685":"2021-06-07T02:30:57.831Z","3.0.58":"2021-06-07T02:34:20.436Z","3.0.59-renovate-internal-patch-a51db79ac411414b3c14f02057fe9acf1a6bc3a2":"2021-06-07T03:28:48.276Z","3.0.59":"2021-06-07T03:34:00.544Z","3.0.60-renovate-internal-patch-415809e3abc7468da39dc61c048b671f8987555b":"2021-06-07T04:19:56.555Z","3.0.60":"2021-06-07T04:23:32.691Z","3.0.61-renovate-internal-patch-624063124f44f0f0dab601856486fb9333d7a04c":"2021-06-07T07:06:22.787Z","3.0.61":"2021-06-07T07:09:19.721Z","3.0.62-renovate-internal-patch-2559f2b75e1d98376aee5eaaf33da55c5e8e9fa1":"2021-06-07T10:10:07.838Z","3.0.62":"2021-06-07T10:13:32.186Z","3.0.63-renovate-internal-patch-4bce7e5d6a1b4dea0b255bd8cdeccbbbd1e87fbb":"2021-06-08T00:20:41.125Z","3.0.63":"2021-06-08T00:24:19.073Z","3.0.64-renovate-balena-jellyfish-environment-4-x-1a55d5dbaef576c3b144487c234b72e91f982756":"2021-06-08T01:58:26.586Z","3.0.64":"2021-06-08T02:01:41.040Z","3.0.64-renovate-internal-patch-711e15efa9da7769be6412b134547cbbdfe6cf11":"2021-06-08T02:06:05.078Z","3.0.65-renovate-internal-patch-610bf9361b6f145d2cd122032036c83aa8819110":"2021-06-08T02:09:58.904Z","3.0.65-renovate-internal-patch-f2146253bc413318eb2034ba9b4c9566886b68c5":"2021-06-08T02:15:32.977Z","3.0.65":"2021-06-08T02:18:44.415Z","3.0.66-renovate-internal-patch-a017929eb5c0756b2b122d7c5849c419e2fea1e2":"2021-06-08T02:23:31.067Z","3.0.66":"2021-06-08T02:28:17.953Z","3.0.67-renovate-internal-patch-a3dceaa80ca0a98fd40b6f99b564e93b97e1c6b5":"2021-06-08T04:00:48.098Z","3.0.67-renovate-balena-jellyfish-core-3-x-284ed3aa415616499ee888b53e96135e119c1493":"2021-06-08T04:03:03.555Z","3.0.67":"2021-06-08T04:04:36.811Z","3.0.68-renovate-balena-jellyfish-core-3-x-7522eebd1e71ff9b8a21ae49b773d130e4a6807d":"2021-06-08T04:13:55.116Z","3.0.68-renovate-balena-jellyfish-config-1-x-62d6c9d94be060417fbb7627b31d2acd51fd7df6":"2021-06-08T04:20:43.448Z","3.0.68":"2021-06-08T04:22:45.341Z","3.0.69-renovate-internal-patch-b0298197b25212e04e925a4485f5304a5b0c85e7":"2021-06-08T04:28:39.738Z","3.0.69-renovate-balena-jellyfish-config-1-x-350320b415d3b1a3ea19ef714a82ed62744c14db":"2021-06-08T04:30:54.871Z","3.0.69-renovate-internal-patch-757b3a6e5573450aa6602097eb16f55943f222df":"2021-06-08T04:34:45.867Z","3.0.69":"2021-06-08T04:35:35.159Z","3.0.70-renovate-internal-patch-1db9811c3bc3b79da0947bb920663357af6edcaa":"2021-06-08T04:40:11.898Z","3.0.70-renovate-internal-patch-719fe30577c9afa0f63cca1c9010c83232bdfd5f":"2021-06-08T07:58:21.377Z","3.0.70":"2021-06-08T08:01:15.103Z","3.0.71-renovate-internal-patch-a8febab37ff03517239c3cdfd037c51d3ac2793f":"2021-06-08T09:31:33.836Z","3.0.71":"2021-06-08T09:34:56.384Z","3.0.72-renovate-internal-patch-9b60e6a4d96e11249503ae25a9b43f0c3e4f53a8":"2021-06-08T11:07:05.424Z","3.0.72":"2021-06-08T11:10:07.060Z","3.0.73-renovate-internal-patch-d2f7a9041999a5f7595bd611d8a399548561530d":"2021-06-09T02:22:52.125Z","3.0.73-dependabot-npm-and-yarn-glob-parent-5-1-2-9037f5d6a7a5c2f546bdcedb5756f6db777e9614":"2021-06-09T02:23:20.968Z","3.0.73":"2021-06-09T02:26:51.361Z","3.0.74-dependabot-npm-and-yarn-glob-parent-5-1-2-6bd7ccbd1233d1a031ff2a91565b44c7bf031dcc":"2021-06-09T04:00:36.546Z","3.0.74":"2021-06-09T04:04:18.038Z","3.0.75-renovate-internal-patch-63b0d87e71512a98459e8114c9a6c7ec2cb4eddb":"2021-06-09T04:08:02.744Z","3.0.75":"2021-06-09T04:15:25.264Z","3.0.76-renovate-internal-patch-f5b0991901b4ff4da0b4f237b0ba95835d7c20ad":"2021-06-09T08:02:50.449Z","3.0.76":"2021-06-09T08:08:55.252Z","3.0.77-renovate-internal-patch-1a6d5a65af0020a3f99cf3133afcad4a250dae8c":"2021-06-09T11:59:38.811Z","3.0.77":"2021-06-09T12:03:22.514Z","3.0.78-renovate-internal-patch-8defbf7337398b38f38c20dbc2c67b4f7e6c9c02":"2021-06-09T23:28:50.192Z","3.0.78":"2021-06-09T23:32:16.457Z","3.0.79-renovate-internal-patch-61ce5712c3fe4d09357a75c7e93781a57551faaa":"2021-06-10T02:21:31.498Z","3.0.79":"2021-06-10T02:24:30.599Z","3.0.80-test-loop-field-da6b2d2f08396173a917884472e076ce5f45ebae":"2021-06-10T04:19:30.840Z","3.0.80-renovate-internal-patch-ae83c678f41ae4fe9e7229b5d55d3b40daa3ac84":"2021-06-10T08:32:25.197Z","3.0.80":"2021-06-10T08:36:01.136Z","3.0.81-renovate-internal-patch-c2e7393bcafac1b06dfa2a3bc245b2baf6212b19":"2021-06-10T09:43:36.467Z","3.0.81":"2021-06-10T09:47:06.894Z","3.0.82-renovate-internal-patch-94a0dbfb7f3f1c4f8a420e2c481629f87a05e083":"2021-06-10T09:58:40.311Z","3.0.82":"2021-06-10T10:04:32.521Z","3.0.83-renovate-internal-patch-8a52fe50904764fd3ee64ea0ce816a89ba1c4fc3":"2021-06-11T03:02:26.413Z","3.0.83":"2021-06-11T03:05:55.510Z","3.0.84-repo-sync-jellyfish-config-default-03fbb8c60e78126e0b42b101d6fcde97d3ee67e7":"2021-06-11T05:00:38.788Z","3.0.84-renovate-internal-patch-3245bb41e4735687fac36b56ba6b365101dad723":"2021-06-11T07:10:37.273Z","3.0.84":"2021-06-11T07:13:59.817Z","3.0.85-renovate-internal-patch-48bb20227a47fb3eb5eaf976da4335a28a21c8a9":"2021-06-11T08:35:06.543Z","3.0.85":"2021-06-11T08:38:17.909Z","3.0.86-renovate-internal-patch-3fb94eb3d341c18de8d12423a91d63485a730fa2":"2021-06-11T10:06:46.447Z","3.0.86":"2021-06-11T10:09:58.375Z","3.0.87-renovate-internal-patch-b48c45d834531870f96eadcd874a99c035dc2dda":"2021-06-11T12:40:23.340Z","3.0.87":"2021-06-11T12:43:53.411Z","3.0.88-renovate-external-non-major-0abb9ede14ad7a723b56f3749fab7d42ab05b2a2":"2021-06-12T00:10:44.912Z","3.0.88":"2021-06-12T00:14:02.457Z","3.0.89-renovate-internal-patch-06078ce69d4ce327d4c1374c18b803689491e641":"2021-06-12T02:00:23.911Z","3.0.89":"2021-06-12T02:04:05.324Z","3.0.90-renovate-internal-patch-9d8e85c1164aa853a3707796e05ff0526ce5e8b5":"2021-06-12T05:23:34.563Z","3.0.90":"2021-06-12T05:27:37.971Z","3.0.91-renovate-internal-patch-9df792d27b2b95f616fb60f1dbeaa62bcd03831c":"2021-06-12T09:33:08.752Z","3.0.91":"2021-06-12T09:36:36.390Z","3.0.92-renovate-internal-patch-c1849037f2f8a8bb6bed2908b2d373f3c0d6b1e1":"2021-06-12T10:31:15.449Z","3.0.92":"2021-06-12T10:35:56.233Z","3.0.93-renovate-internal-patch-59634db0912753d8429d373337e05df03300651d":"2021-06-12T16:35:40.062Z","3.0.93":"2021-06-12T16:39:07.752Z","3.0.94-renovate-internal-patch-528167b5fa1e91b8bf273c083f87849d575e1b35":"2021-06-12T17:17:47.843Z","3.0.94":"2021-06-12T17:20:55.244Z","3.0.95-renovate-internal-patch-99c9f0ea1fc8daae23b225a58816f7522fbdac2a":"2021-06-13T03:54:23.072Z","3.0.95":"2021-06-13T03:57:43.846Z","3.0.96-renovate-internal-patch-d63074f23b23d00e10ce127e74c120718d8d24b9":"2021-06-13T04:31:54.552Z","3.0.96":"2021-06-13T04:35:45.752Z","3.0.97-renovate-internal-patch-a83f59dc3ebf23c6154396e9aedf6006c4ff82c6":"2021-06-13T23:08:25.889Z","3.0.97":"2021-06-13T23:11:38.379Z","3.0.98-renovate-internal-patch-3ee5825e8637ef1fbb3b2e26feaa80cff65b12f2":"2021-06-15T01:04:33.864Z","3.0.98-renovate-internal-patch-43cb9f9cb1635f2b89efaea24628b5e54fe2d8c1":"2021-06-15T01:11:08.397Z","3.0.98-renovate-internal-patch-f51ad568a5f1fbbbd3310a361d7c6ee850f01420":"2021-06-15T01:18:00.955Z","3.0.98-renovate-internal-patch-baa5cea3e985cd7784871b8b9921130b63131f2b":"2021-06-15T01:23:12.294Z","3.0.98-repo-sync-jellyfish-config-default-7b499aa2e8673f79784f47b67efa0ec0dde7bfa9":"2021-06-15T01:29:36.100Z","3.0.98-test-versioned-slug-24f741a30eb516b5d11cfbf5e88220fcf31cbaba":"2021-06-15T01:55:11.024Z","3.0.98-renovate-internal-patch-6bfba01329df30164f290a5e45a442b7678cbe77":"2021-06-15T02:48:58.847Z","3.0.98":"2021-06-15T02:52:35.016Z","3.0.99-renovate-internal-patch-030080ac5186d074fb94c4ee540d03ad26017683":"2021-06-15T02:57:05.091Z","3.0.99":"2021-06-15T03:02:51.304Z","3.0.100-test-versioned-slug-71ccf5d3a72c94da7b0f04becb2162c251b0d122":"2021-06-15T03:31:23.672Z","3.0.100-renovate-internal-patch-b00325c42b19b5711115103fcc938711d4917470":"2021-06-15T03:46:07.040Z","3.0.100":"2021-06-15T03:49:49.217Z","3.0.101-renovate-internal-patch-33dde08b2fd8b176d2199e2844f3ee427afc66d2":"2021-06-15T06:35:54.584Z","3.0.101":"2021-06-15T06:39:19.595Z","3.0.102-renovate-internal-patch-100c881da81a81e946829ac4a45809967203807d":"2021-06-15T06:43:26.217Z","3.0.102-renovate-internal-patch-9437aadc70573eb9c4ae7c80a823bcb14183fbdf":"2021-06-15T06:46:02.055Z","3.0.102":"2021-06-15T06:51:48.030Z","3.0.103-renovate-internal-patch-8706542e463738dff8320edb450731d7e0e2f6ed":"2021-06-15T12:02:36.300Z","3.0.103":"2021-06-15T12:05:32.337Z","3.0.104-renovate-internal-patch-805888008e3e23b22c70ffbb3bb897e2fb004e86":"2021-06-16T00:03:51.079Z","3.0.104":"2021-06-16T00:10:00.775Z","3.0.105-update-plugin-base-b85a99f565514aa08322e07bcb5e388af3510bfe":"2021-06-18T01:59:29.938Z","3.0.105-renovate-internal-patch-eb9228e6ef145b07731a1c3661ee6713a187851a":"2021-06-18T03:17:20.520Z","3.0.105":"2021-06-18T03:20:40.421Z","3.0.106-renovate-balena-jellyfish-core-3-x-892622d062fe1bda8fbb34c84c51fb592cb49f5a":"2021-06-18T17:49:46.284Z","3.0.106":"2021-06-18T17:52:48.083Z","3.0.107-renovate-internal-patch-bcc7ac5095978734bb64744230ef41df61a2c30e":"2021-06-19T00:44:20.761Z","3.0.107":"2021-06-19T00:48:02.182Z","3.0.108-renovate-external-non-major-10dac633d41d68733ce6ff5df0dcd97e403fbf3d":"2021-06-19T00:51:58.586Z","3.0.108-renovate-internal-patch-af03d2880a412032d1c41b255d6ad0576f18ce86":"2021-06-19T00:57:41.452Z","3.0.108":"2021-06-19T00:59:54.107Z","3.0.109-renovate-internal-patch-7a42a8474610227bbad1498d5151b8941fd4c89b":"2021-06-19T01:11:09.760Z","3.0.109-renovate-internal-patch-29962aec20e0191cc0854092643d484c5da3ae25":"2021-06-19T01:17:27.822Z","3.0.109-renovate-internal-patch-ea6529669375ff518447ea46eafaa14ec086827a":"2021-06-19T02:48:19.923Z","3.0.109":"2021-06-19T02:52:10.016Z","3.0.110-renovate-internal-patch-fb907b494f4c26b900cd4abb39171f711c273665":"2021-06-19T03:48:01.162Z","3.0.110":"2021-06-19T03:51:16.933Z","3.0.111-renovate-internal-patch-97dec795827aad49077354444ac43d88dd87b54c":"2021-06-19T04:48:12.354Z","3.0.111":"2021-06-19T04:51:37.268Z","3.0.112-renovate-internal-patch-a5027ec206811e2ef706deb9e26d160a6e118b51":"2021-06-19T08:08:37.893Z","3.0.112":"2021-06-19T08:12:16.846Z","3.0.113-renovate-internal-patch-9aa754bc0cf9797e5b36330ebc7839cf54050e56":"2021-06-19T09:35:52.515Z","3.0.113-renovate-internal-patch-66491acac102ea6baeacd9515fed3309718bafd0":"2021-06-19T09:41:12.456Z","3.0.113-renovate-internal-patch-5af3a3da88f529afc9bed751da7b627eda38abff":"2021-06-19T09:46:54.706Z","3.0.113-renovate-internal-patch-d38629f16a4dae0fc23d01aa3adc6c14617d339f":"2021-06-19T09:52:33.619Z","3.0.113":"2021-06-19T09:55:33.705Z","3.0.114-renovate-internal-patch-47002a6745ab84d780eef6af602eb302cd02ae5e":"2021-06-19T11:17:54.325Z","3.0.114":"2021-06-19T11:20:32.833Z","3.0.115-renovate-internal-patch-21b59241ec5fdf430592ba2d458999b5a01a7db5":"2021-06-19T12:24:30.246Z","3.0.115":"2021-06-19T12:27:39.792Z","3.0.116-renovate-internal-patch-f4f665c7044d71856da576bceea90071c6063f24":"2021-06-19T13:38:21.564Z","3.0.116":"2021-06-19T13:41:28.749Z","3.0.117-renovate-internal-patch-d8b2ecad420a177ba3818d8376acaf9b1483b421":"2021-06-19T14:38:27.354Z","3.0.117":"2021-06-19T14:41:48.283Z","3.0.118-renovate-internal-patch-5d681a517321e44dd7f8275364ec768f5a68a23f":"2021-06-19T15:36:45.405Z","3.0.118":"2021-06-19T15:40:18.967Z","3.0.119-renovate-internal-patch-e51ccfed3c22ef4ef454bba9b2cfad23cd7c1505":"2021-06-20T16:20:53.451Z","3.0.119":"2021-06-20T16:23:58.223Z","3.0.120-test-loop-field-a828e3fdc05959e40c97f00a11640ec8b7c883ce":"2021-06-22T05:20:29.455Z","3.0.120-renovate-internal-patch-ca1cc7cb18360ca73dbd6c73d8c82a5d4fb143fe":"2021-06-22T07:27:08.298Z","3.0.120":"2021-06-22T07:32:02.748Z","3.0.121-renovate-internal-patch-ec6ba0e956400fa0d4133615d29844cc0a86f371":"2021-06-22T07:37:24.845Z","3.0.121":"2021-06-22T07:45:15.258Z","3.0.122-renovate-internal-patch-711e4a097a47e8d8a8236a600cbc775b9a3963c5":"2021-06-22T08:38:50.554Z","3.0.122":"2021-06-22T08:42:52.580Z","3.0.123-renovate-balena-jellyfish-types-0-x-e483e6b1bf7aedb07839223e97e7d32b083a56d4":"2021-06-22T10:51:39.793Z","3.0.123":"2021-06-22T10:55:30.658Z","3.0.124-renovate-internal-patch-cdc5fe3d38ffa6a624181164776c196cc8d681ed":"2021-06-22T11:00:41.056Z","3.0.124":"2021-06-22T11:06:12.596Z","3.0.125-renovate-internal-patch-f05eb9319bbec545a3e1c8c3b5cae50bd3728760":"2021-06-22T12:33:11.425Z","3.0.125":"2021-06-22T12:37:06.168Z","3.0.126-renovate-internal-patch-37ec9a593d14fa4aad6c1174fcac265a3487b427":"2021-06-22T23:39:02.936Z","3.0.126-renovate-internal-patch-e08f0920bc5511d3dc7be0337b7a5ea2fcf6f3d4":"2021-06-22T23:44:27.660Z","3.0.126":"2021-06-22T23:49:45.647Z","3.0.127-renovate-internal-patch-2372fbd0ce8afa2b0ef5fe31019ca6e6f44f46ad":"2021-06-23T01:44:33.652Z","3.0.127":"2021-06-23T01:48:25.186Z","3.0.128-renovate-internal-patch-6ed370fd241b1bfb1ca4df0a249765be8b325232":"2021-06-23T08:12:50.981Z","3.0.128-renovate-internal-patch-fb0604ae493b0a2ed0f7d8fc91211771c957e4aa":"2021-06-23T08:19:16.060Z","3.0.128-renovate-internal-patch-8c8080f721132f02c270e2ab92418fb4330f6066":"2021-06-23T08:26:05.968Z","3.0.128":"2021-06-23T08:29:36.569Z","3.0.129-renovate-internal-patch-6c59c2b909b466bc8ebad95dbc7f8fad7dde5b47":"2021-06-24T00:45:23.086Z","3.0.129":"2021-06-24T00:49:22.107Z","4.0.0-fix-integration-parameter-07e18ddfdb6b10c553bfdd227207322335492210":"2021-06-24T00:59:48.950Z","3.0.130-renovate-internal-patch-504fe271a3f7d4f83300841cf59037b086da7b1c":"2021-06-24T01:42:18.229Z","3.0.130-renovate-internal-patch-45de9bc220b742118e76226c82c6f9445ce32a76":"2021-06-24T01:48:32.447Z","3.0.130":"2021-06-24T01:52:18.260Z","4.0.0-fix-integration-parameter-2e14bc22aac8d8fb7ceffa89728ea4bccc1e020a":"2021-06-24T02:14:10.459Z","4.0.0":"2021-06-24T02:26:11.734Z","4.0.1-test-loop-field-3ed69685d508efa16bc5f554bf3021b5beffe8c3":"2021-06-24T03:20:59.064Z","4.0.1":"2021-06-24T03:26:10.971Z","4.0.2-renovate-internal-patch-d499a47a1b9e02bf05547ebb4f224a5d79f774c6":"2021-06-24T09:32:44.708Z","4.0.2":"2021-06-24T09:36:27.542Z","4.0.3-renovate-internal-patch-19889cc153f022344b4014a3526c24efb01ea0dd":"2021-06-24T15:11:01.259Z","4.0.3-renovate-balena-jellyfish-environment-4-x-99cf2a4876b7f55ab4660ed55e901cbf5b593e4d":"2021-06-24T15:12:28.439Z","4.0.3":"2021-06-24T15:15:28.363Z","4.0.3-renovate-balena-jellyfish-environment-4-x-da0451e4aecbb5e2f3eeeb2896e5a74a096b575c":"2021-06-24T15:20:27.120Z","4.0.4-renovate-internal-patch-d64efde12dfd5905e41359a08546d0e6b9bce33c":"2021-06-24T15:23:14.385Z","4.0.4-renovate-balena-jellyfish-environment-4-x-3ae25bf3c0d85203eed2266b7de37abc51e2562a":"2021-06-24T15:23:41.352Z","4.0.4":"2021-06-24T15:27:50.297Z","4.0.5-renovate-internal-patch-e962c52a4979551855cf9baad0b6bd014c841078":"2021-06-24T15:32:47.834Z","4.0.5":"2021-06-24T15:37:44.399Z","4.0.6-renovate-internal-patch-c525af752ade1f165303c97c910c6f89fcf85ee9":"2021-06-24T16:54:33.290Z","4.0.6":"2021-06-24T16:59:09.948Z","4.0.7-renovate-internal-patch-e792bdc4b1d3fcd8d9d7e47f143f2450c5a908c0":"2021-06-24T17:42:44.086Z","4.0.7":"2021-06-24T17:46:25.534Z","4.0.8-renovate-internal-patch-1d89f48a638a7dc77574d5968a8f6df3a704710f":"2021-06-24T19:51:45.437Z","4.0.8-renovate-balena-jellyfish-worker-6-x-d90a5f7782b3eecbf6a76f0d67ef3f3a608a8869":"2021-06-24T19:52:19.452Z","4.0.8":"2021-06-24T23:03:05.499Z","4.0.9-renovate-internal-patch-e1c3fa4b07388cf4c48772d58a169bc78ae29cb2":"2021-06-24T23:08:57.877Z","4.0.9-renovate-internal-patch-ebc7a687cad5ff8bfa4be1ba769110ebd5716dc6":"2021-06-24T23:17:55.261Z","4.0.9":"2021-06-24T23:21:27.548Z","4.0.10-renovate-internal-patch-e43b9762e065ad1d94c052b2472cba985b2c6589":"2021-06-25T01:27:32.765Z","4.0.10":"2021-06-25T01:31:59.929Z","4.0.11-renovate-internal-patch-b73709bb397bc9135e1e6b14cbcf8043013377bc":"2021-06-25T02:47:21.076Z","4.0.11":"2021-06-25T02:53:13.697Z","4.0.12-renovate-internal-patch-63f22fa0517e772d1d4aa2a3c71632152d327858":"2021-06-25T02:57:56.774Z","4.0.12-renovate-internal-patch-9cbf00f7e3bdf823d3470cb02dc44775c5288065":"2021-06-25T03:05:38.406Z","4.0.12":"2021-06-25T03:10:40.486Z","4.0.13-renovate-internal-patch-6f641569b99d4177167b73e60c04966b7fafad13":"2021-06-25T08:32:04.315Z","4.0.13":"2021-06-25T08:35:09.173Z","4.0.14-renovate-internal-patch-938f03d33c29bd06f3724e8a273d1a50c7619378":"2021-06-25T09:40:48.162Z","4.0.14":"2021-06-25T09:44:14.758Z","4.0.15-renovate-internal-patch-af2833fa2c8f04d1179bb7c8e559d6c72bffdf6c":"2021-06-25T12:44:57.611Z","4.0.15":"2021-06-25T12:50:21.609Z","4.0.16-renovate-internal-patch-e48dbb7250a08ff5a5f0646ad8522eb2ba28985e":"2021-06-25T23:33:43.677Z","4.0.16":"2021-06-25T23:37:00.896Z","4.0.17-renovate-internal-patch-02d23aa8a536cd2468d322e36fd01c5959efcdce":"2021-06-25T23:43:52.608Z","4.0.17":"2021-06-25T23:47:49.619Z","4.0.18-renovate-external-non-major-22bdd8c7ae7b21579d6678f23c9ab0dca7e87ad9":"2021-06-26T01:04:14.221Z","4.0.18":"2021-06-26T01:08:00.529Z","4.0.18-renovate-internal-patch-408bdae9d6f39d699e5eb9f696f001de55a16749":"2021-06-26T01:10:33.479Z","4.0.19-renovate-internal-patch-12fb1198ca2f045ff6658c278c6f4f8b6e0957ec":"2021-06-26T01:15:04.359Z","4.0.19":"2021-06-26T01:18:56.221Z","4.0.20-renovate-internal-patch-35550090cc955f92c4c58ccd56a9db2bef44422d":"2021-06-26T01:26:24.387Z","4.0.20":"2021-06-26T01:30:07.954Z","4.0.21-renovate-internal-patch-2c5ac4ff1d71d24d671fac9596b22999c4c88b98":"2021-06-26T06:46:36.105Z","4.0.21":"2021-06-26T06:49:39.048Z","4.0.22-renovate-external-non-major-6308a1b63e1a339e72fb2f81a921c1cc1de1ef59":"2021-06-27T03:57:11.715Z","4.0.23-renovate-external-non-major-c1690995233e4b8b3a6402e39d0c984def3725c5":"2021-06-27T20:58:24.628Z","5.0.0-triggered-action-schedule-8975f5ca842b5280474acf92ca75b26b91c4aa9c":"2021-06-28T07:19:41.968Z","4.0.24-update-base-url-type-e35e66531df089ff269b3da285fccffb06a9d2d1":"2021-06-29T05:48:28.363Z","4.0.25-remove-package-lock-ab2a733cafe37be77415bf781f0199dff6a18e7d":"2021-06-29T08:21:13.412Z","4.0.26-repo-sync-jellyfish-config-default-ad7e336453680624ada1557b6618eb6350447121":"2021-06-29T10:02:22.627Z","4.0.26":"2021-06-29T10:12:15.076Z","4.0.27-renovate-balena-jellyfish-worker-7-x-cf23a419e5c74dc792319b75bd895490dd0ca1ff":"2021-06-29T12:11:49.727Z","5.0.0-triggered-action-schedule-3ed0b3325e36837182988e643497b96a73147e00":"2021-06-29T12:44:56.157Z","5.0.0":"2021-06-29T12:54:52.293Z","5.0.1-renovate-internal-patch-e3a0d32f6f727d5cd37b1b41d20e4bf67c900f1c":"2021-06-29T13:01:43.075Z","5.0.1":"2021-06-29T13:06:20.204Z","5.0.2-renovate-internal-patch-064b8c6867ac51a41c8f00f7fce044ec4589ebe5":"2021-06-29T14:13:13.817Z","5.0.2":"2021-06-29T14:17:36.104Z","5.0.3-remove-package-lock-f6d56ee8149c1938f6bd362ecdecc3091c625ad0":"2021-06-29T23:46:20.827Z","5.0.3":"2021-06-29T23:51:52.760Z","5.0.4-renovate-internal-patch-aeee01c69c77d775cd2d8aa981c9cb573767251d":"2021-06-30T01:15:27.525Z","5.0.4":"2021-06-30T01:20:28.196Z","5.0.5-renovate-internal-patch-e1b7ebb91624f4e820132d9f21a91cd21f4e0029":"2021-06-30T03:07:48.944Z","5.0.5":"2021-06-30T03:11:37.782Z","5.0.6-renovate-internal-patch-f9f62d25554a92d6aeb65756bee1db6f2b32b8af":"2021-06-30T05:05:21.536Z","5.0.6":"2021-06-30T05:08:24.990Z","5.0.7-renovate-internal-patch-a39503f9acf1ffa777316ca5dc8f04d31bf9e1eb":"2021-06-30T06:48:55.290Z","5.0.7":"2021-06-30T06:52:32.262Z","5.0.8-renovate-internal-patch-afd1bed9c04bb7d6169583f0c2c48822c1792235":"2021-06-30T16:20:56.070Z","5.0.8":"2021-06-30T16:25:46.004Z","5.0.9-renovate-internal-patch-13791efdf3f5673f3aab6a28ca543b1f000e1806":"2021-07-01T01:42:47.231Z","5.0.9":"2021-07-01T01:46:11.158Z","5.0.10-add-testcase-log-4ec5e14f9f5d94d9cb7537a7088c39777d90aaf7":"2021-07-01T05:47:20.879Z","5.0.10-add-testcase-log-f7dfa4371287ad6d588f6ecee261634c6dd7061c":"2021-07-01T06:40:15.076Z","5.0.10-add-flush-all-bf5e093fa9706674893006f8289131eefd421251":"2021-07-02T00:25:20.306Z","5.1.0-add-flush-all-86c4721192572955395bf29e78b9f7bf4a819bb6":"2021-07-02T00:46:19.912Z","5.1.0":"2021-07-02T01:27:44.734Z","5.1.1-scenario-flush-all-ddc3814d9d1adafb763d23146933c36e0d548bd4":"2021-07-02T03:53:05.080Z","5.1.1-renovate-internal-patch-f0236c8ec319a8ffd705494b514ff055d15ea705":"2021-07-02T04:42:22.354Z","5.1.1":"2021-07-02T04:46:07.089Z","5.1.2-renovate-balena-jellyfish-types-0-x-e5add1e0882c291f8a6e54d65d1e52c61a4f5868":"2021-07-02T06:55:00.604Z","5.1.2":"2021-07-02T06:59:22.064Z","5.1.3-renovate-balena-jellyfish-config-1-x-39c61b764598caba96f902212b2b5a70326f8621":"2021-07-02T07:02:09.057Z","5.1.3":"2021-07-02T07:09:11.041Z","5.1.4-renovate-internal-patch-5430aa8f138c8ae272990b8a91a767eaa1bd43f2":"2021-07-02T07:12:25.805Z","5.1.4":"2021-07-02T07:21:15.526Z","5.1.5-renovate-internal-patch-9785786c3f8e80c3523ed81ddaabc2aca1bc53c8":"2021-07-02T07:25:13.420Z","5.1.5-renovate-internal-patch-fde7806f209673ad3902c8cb26626b26b1194dd4":"2021-07-02T08:24:08.419Z","5.1.5-renovate-internal-patch-147998935f450bc211d167d39c5862e1154b8a79":"2021-07-02T08:28:41.169Z","5.1.5":"2021-07-02T08:32:08.312Z","5.1.6-renovate-internal-patch-1b52526edb7059916c0d4230e7a6f5804b06c12c":"2021-07-02T10:05:25.811Z","5.1.6":"2021-07-02T10:09:17.072Z","5.1.7-renovate-balena-jellyfish-core-5-x-9b84f1be6df59d6c93318d4fd06574b1d2b50539":"2021-07-02T15:35:47.999Z","5.1.7-renovate-internal-patch-f18b2b23b2072907eb7b2f19612c73fd0ebd0f48":"2021-07-02T16:22:19.966Z","5.1.7":"2021-07-02T16:25:37.724Z","5.1.8-renovate-balena-jellyfish-core-5-x-e9c5b143ed9f68b523263030f744381e107b7366":"2021-07-02T16:29:10.351Z","5.1.8":"2021-07-02T22:32:16.786Z","5.1.9-renovate-internal-patch-903f643eac3e452aa157bc01fe0c0dc5548123e4":"2021-07-02T22:39:17.719Z","5.1.9-renovate-internal-patch-86510459600d084cf9fff3c07d5f5d1306571ca2":"2021-07-02T22:44:34.826Z","5.1.9-renovate-internal-patch-52328ec537f42e729bebd0ff874cd96fe669afdd":"2021-07-02T22:51:35.489Z","5.1.9":"2021-07-02T22:55:13.344Z","5.1.10-renovate-internal-patch-e3147f5a092db65fe631bae269ed1afde3ebf406":"2021-07-03T01:26:25.854Z","5.1.10-renovate-internal-patch-1e0a94d712d63e61231aabcfcf5f9d6c21bfd4b8":"2021-07-03T01:31:44.585Z","5.1.10":"2021-07-03T01:35:37.824Z","5.1.11-renovate-internal-patch-95db8a011a7dde2d5804c1212fe7ba2f1130347d":"2021-07-03T01:40:08.631Z","5.1.11":"2021-07-03T01:46:13.046Z","5.1.12-renovate-external-non-major-4411d0364d7d5c705eb576d39cd3aafc6c7b32d1":"2021-07-03T01:49:23.220Z","5.1.12-renovate-internal-patch-0e18dca8185f8cbb99dfeff7387621e0af7d0d13":"2021-07-03T02:43:45.340Z","5.1.12":"2021-07-03T02:47:54.804Z","5.1.13-renovate-internal-patch-959b8711eb62004bb622876a43b1221348a0d5d0":"2021-07-03T02:51:55.701Z","5.1.13-renovate-external-non-major-8875402796b325e4bf8e37e1d653cc5301431087":"2021-07-03T02:54:36.896Z","5.1.13":"2021-07-03T02:58:30.532Z","5.1.13-renovate-internal-patch-57e6719c35c001d75a0f69af00704574809d6b69":"2021-07-03T02:59:09.360Z","5.1.14-renovate-internal-patch-d6cea6d4f94b461c2df36932c7b68ae330d57382":"2021-07-03T03:01:35.040Z","5.1.14":"2021-07-03T03:07:49.587Z","5.1.15-renovate-internal-patch-6fc205b4e38be6baef8155d57aec6328f45e0b17":"2021-07-03T04:42:55.497Z","5.1.15":"2021-07-03T04:47:41.459Z","5.1.16-renovate-internal-patch-4e960d87b7618e5c8366fb9c3cd4aa6e93b5801f":"2021-07-03T15:17:28.238Z","5.1.16":"2021-07-03T15:20:42.609Z","5.1.17-improve-no-stub-message-63b45d62383457d33cbabb210aba198d43a03915":"2021-07-03T22:26:04.724Z","5.1.17":"2021-07-03T22:29:47.742Z","5.1.18-renovate-external-non-major-4c589cf88e7a0a74a094ec3e20feefe0f9f59364":"2021-07-04T05:03:47.152Z","5.1.18":"2021-07-04T05:07:01.590Z","5.1.19-renovate-external-non-major-306d4eb4d13b08749fd5ad38d700377e68063bbb":"2021-07-04T07:24:24.295Z","5.1.19":"2021-07-04T07:28:06.600Z","5.1.20-renovate-external-non-major-1c4065454086b3d3af4c2f021d2789b8f4a35f1e":"2021-07-04T08:24:44.404Z","5.1.20":"2021-07-04T08:28:26.523Z","5.1.21-renovate-external-non-major-1d2953324e5717fead1504b221956b2b65e6ebe9":"2021-07-04T18:58:58.932Z","5.1.21":"2021-07-04T19:02:41.097Z","5.1.22-renovate-internal-patch-daeffc6bfa5db4a8d03350307f6419c1017df6f4":"2021-07-04T20:21:01.578Z","5.1.22":"2021-07-04T20:24:31.342Z","5.1.23-renovate-internal-patch-4899862b50848ecae40f7dbba481989196d57b8f":"2021-07-04T22:58:29.119Z","5.1.23":"2021-07-04T23:01:40.674Z","5.1.24-renovate-internal-patch-be3bea7d5db85591a8a146020e46473feb1c3a7b":"2021-07-05T01:12:48.578Z","5.1.24":"2021-07-05T01:16:12.210Z","5.1.25-renovate-internal-patch-6f2be548a19205df63a748d1b8015ff3d9b3899e":"2021-07-05T03:04:24.620Z","5.1.25":"2021-07-05T03:09:12.736Z","5.1.26-renovate-internal-patch-4684b61150c4e8e08c63bf3568581b5d0d359694":"2021-07-05T03:15:06.303Z","5.1.26":"2021-07-05T03:18:41.431Z","5.1.27-renovate-internal-patch-0dd3ec4b5afd347aeeb45c95b57981446b0c7fe7":"2021-07-05T04:41:21.665Z","5.1.27":"2021-07-05T04:45:11.450Z","5.1.28-renovate-internal-patch-2dc43b0d8e1e9d4b274e18e55592cfd7c623fcd1":"2021-07-05T06:53:52.476Z","5.1.28":"2021-07-05T06:57:28.103Z","5.1.29-renovate-internal-patch-f3c74d4442971e6ce715bd2b799d19d19bd224bd":"2021-07-05T09:56:54.749Z","5.1.29":"2021-07-05T10:00:40.432Z","5.1.30-renovate-internal-patch-c3c956775ea23222a805528459176c8a66c48792":"2021-07-05T16:41:35.774Z","5.1.30":"2021-07-05T16:45:01.477Z","5.1.31-renovate-internal-patch-c60173a5006b9e7c2fed31cd68c058bd9c03f2e9":"2021-07-05T17:44:51.273Z","5.1.31":"2021-07-05T17:49:34.568Z","5.1.32-renovate-internal-patch-ec383d9a3256c2cc1ffca3263e5a20fc402ca2ef":"2021-07-05T17:52:57.360Z","5.1.32":"2021-07-05T17:58:27.084Z","5.1.33-renovate-internal-patch-42239a733ee143b4b7553a9e1c354e86e60f718f":"2021-07-05T18:52:20.615Z","5.1.33":"2021-07-05T18:55:58.229Z","5.1.34-remove-whitesource-config-c726749212d7f627b3195ef801b224c20645878d":"2021-07-06T09:42:45.316Z","6.0.0-update-prepare-event-return-c7e99ff877a0c053cc8bbb5aef30976fc32c8c0e":"2021-07-06T09:46:08.460Z","5.1.34":"2021-07-06T09:49:38.493Z","6.0.0-update-prepare-event-return-17cfbdea887c3d9190545c7d4f0f527d27bbfd7b":"2021-07-06T10:58:25.776Z","5.1.35-renovate-internal-patch-b7a9882ccfe60464c2b6ae4209cdceeb0ffc9a57":"2021-07-06T12:54:10.916Z","5.1.35":"2021-07-06T12:57:52.758Z","6.0.0-update-prepare-event-return-ca6b23d990369189b8bcdd4889fe8ca9a1b4eb23":"2021-07-06T14:09:22.575Z","5.1.36-renovate-internal-patch-0d2b758929d31c9db45b87ffb4d7516b6c877e59":"2021-07-06T19:56:47.637Z","5.1.36":"2021-07-06T20:00:24.649Z","6.0.0-update-prepare-event-return-5b70143af5cdb6ebbfacae9eb7544ff19f582a58":"2021-07-06T23:38:04.029Z","6.0.0":"2021-07-06T23:41:21.120Z","6.0.1-renovate-internal-patch-4faf753d95b968620fe1e5e38200a3301cfc2d05":"2021-07-06T23:56:05.545Z","6.0.1":"2021-07-07T00:03:30.224Z","6.0.2-renovate-balena-jellyfish-core-5-x-77a93fd4d4a56f376396606a8c2e8802c5ce69a4":"2021-07-07T02:36:41.803Z","6.0.2":"2021-07-07T02:47:47.506Z","6.0.3-renovate-internal-patch-8b28cbc291736146ef420aca05bb5bbfacef6476":"2021-07-07T02:51:57.368Z","6.0.3":"2021-07-07T02:57:04.240Z","6.0.4-add-translate-test-doc-eeaa88e3d9be36733bce34f155bbdb5614d29b3b":"2021-07-07T07:03:20.019Z","6.0.4":"2021-07-07T07:08:32.551Z","6.0.5-update-readme-example-5abbcd5f7cbb8d597a84b98960acb80c6fea1e56":"2021-07-07T07:29:11.489Z","6.0.5":"2021-07-07T07:36:01.430Z","6.0.6-renovate-internal-patch-91443921670039d5387a76e1148446060348a588":"2021-07-07T23:03:17.237Z","6.0.6":"2021-07-07T23:06:57.697Z","6.0.7-renovate-internal-patch-63667433bd01732d1721cca0dd6ceb70f813d728":"2021-07-07T23:47:20.913Z","6.0.7":"2021-07-07T23:50:34.953Z","6.0.8-renovate-internal-patch-f792d7407b67d6bbf6c2522755d27dc83fe48edb":"2021-07-08T00:54:16.017Z","6.0.8":"2021-07-08T00:57:49.599Z","6.0.9-renovate-internal-patch-7d95097b3f466d9a1a4b2f4a3ba9fe4006d7bcc6":"2021-07-08T11:40:41.135Z","6.0.9":"2021-07-08T11:44:21.895Z","6.0.10-renovate-internal-patch-be04a8ab05e96d24ccbe75506fc4b473755f12ca":"2021-07-08T12:54:48.931Z","6.0.10":"2021-07-08T12:57:53.294Z","6.0.11-renovate-internal-patch-74ea0dbd4c951a1b4808b8d7dad02a12daa3f5d9":"2021-07-08T15:37:33.846Z","6.0.11":"2021-07-08T15:41:06.371Z","6.0.12-renovate-internal-patch-925edfe6e4c1044057ca347d961394811b2bc225":"2021-07-09T01:33:24.096Z","6.0.12":"2021-07-09T01:37:22.071Z","6.0.13-renovate-internal-patch-6104537f4d45dea9e4c2cc940b80edbbe4e1139d":"2021-07-09T03:07:10.316Z","6.0.13":"2021-07-09T03:11:31.138Z","6.0.14-renovate-internal-patch-808d65406926bc265a265412f4948381026512e0":"2021-07-09T04:02:17.549Z","6.0.14":"2021-07-09T04:05:39.493Z","6.0.15-renovate-internal-patch-1cca333bfcf3d3d92ca542d87a2b01c02bafb099":"2021-07-10T01:20:12.051Z","6.0.15-renovate-internal-patch-5f197d7158548b87d80bd6f8b0e59efd43dc7f7b":"2021-07-10T02:18:33.745Z","6.0.15":"2021-07-10T02:22:22.848Z","6.0.16-renovate-external-non-major-e6fff70c556fc066dbeaca4f34d2d75abb9ba372":"2021-07-10T02:27:09.056Z","6.0.16-renovate-internal-patch-72034b04e3f77eeb292c80f3170ed676bb95fa1a":"2021-07-10T02:30:19.519Z","6.0.16":"2021-07-10T02:33:33.976Z","6.0.17-renovate-external-non-major-8ff80e24c9539751b53f823285f44c7980e8a37f":"2021-07-10T02:37:52.133Z","6.0.17":"2021-07-10T02:43:55.435Z","6.0.18-renovate-internal-patch-7eb12faf2a3e83b180288d8e32ca48fa28bb16b3":"2021-07-10T02:50:12.997Z","6.0.18":"2021-07-10T02:53:49.578Z","6.0.19-renovate-internal-patch-800ef9e51283938c10ed27372869a57bf39b3281":"2021-07-10T09:43:15.957Z","6.0.19-renovate-internal-patch-317b24af92f8ff8923eee9f311cb03f3d5bd5e70":"2021-07-10T09:48:01.921Z","6.0.19":"2021-07-10T09:51:27.538Z","6.0.20-renovate-internal-patch-a311eface85d261ed926774700d6958bf6addb3e":"2021-07-10T11:08:57.555Z","6.0.20":"2021-07-10T11:12:42.004Z","6.0.21-renovate-external-non-major-3f50c241f4b39aff61173449dcbd8ec77ba9f61a":"2021-07-10T20:21:01.580Z","6.0.21":"2021-07-10T20:24:45.153Z","6.0.22-renovate-internal-patch-5b7765f7fad0486fce2b7e3c26d706976e2fe11d":"2021-07-10T20:32:21.382Z","6.0.22":"2021-07-10T20:36:01.435Z","6.0.23-renovate-internal-patch-3cc7bd506828491458c9767a2c3a2b1c8f33342b":"2021-07-10T21:23:51.933Z","6.0.23-renovate-internal-patch-d9ab01eb266d716787996a94f7784fb0803d90e7":"2021-07-10T21:29:27.181Z","6.0.23":"2021-07-10T21:33:04.001Z","6.0.24-renovate-internal-patch-a79b817334c53ab233931dc733a3fe7dc57daca9":"2021-07-10T23:02:45.797Z","6.0.24":"2021-07-10T23:06:31.280Z","6.0.25-renovate-internal-patch-fb3d2c0fe89be0400b05c1580ee74ca068d8e529":"2021-07-11T01:02:45.114Z","6.0.25":"2021-07-11T01:06:40.485Z","6.0.26-renovate-internal-patch-3b1bf884088a107b75b9830028f3060b2e171de0":"2021-07-11T01:39:39.149Z","6.0.26":"2021-07-11T01:43:38.893Z","6.0.27-renovate-internal-patch-22b29cde4e2723633b6b0fb738977bc125c8501b":"2021-07-11T02:57:03.282Z","6.0.27-renovate-internal-patch-879512a48c532b9b3a909dd1bf58e63303acd2c3":"2021-07-11T03:02:26.692Z","6.0.27":"2021-07-11T03:06:49.128Z","6.0.28-renovate-internal-patch-e0bb864f1e3abd06f1c866468e52751bca53f14d":"2021-07-11T07:25:14.478Z","6.0.28":"2021-07-11T07:29:46.528Z","6.0.29-renovate-internal-patch-d8df7966f04123dd2d7a52fa99f58f9b4e0262eb":"2021-07-11T08:24:54.014Z","6.0.29":"2021-07-11T08:28:33.921Z","6.0.30-renovate-internal-patch-96193d698786559ecf1c4f42732b5e369685c56c":"2021-07-12T12:50:26.865Z","6.0.30":"2021-07-12T12:54:50.343Z","6.0.31-renovate-internal-patch-25e578cb05db3f2d601853c4e943426e70946a4a":"2021-07-13T01:06:19.856Z","6.0.31":"2021-07-13T01:10:05.612Z","6.0.32-renovate-internal-patch-0b62af9d39c380b9e30c8b353900c14ab7d0c2da":"2021-07-13T10:29:50.921Z","6.0.32":"2021-07-13T10:33:33.595Z","6.0.33-renovate-internal-patch-edcd34d56f9602154e981b1b53e47ee3d18d9666":"2021-07-14T04:44:43.884Z","6.0.33-renovate-internal-patch-9f07d436511773b2c95e233beb99d7392ea4f1f3":"2021-07-14T08:58:20.366Z","6.0.33":"2021-07-14T09:19:48.321Z","6.0.34-renovate-internal-patch-8ab3d490b4c0e09725cdf85f6d792f4a286be691":"2021-07-14T09:26:47.994Z","6.0.34":"2021-07-14T09:31:54.990Z","6.0.35-renovate-internal-patch-ed2c4abb35ba9b4559cc29a01d1a929133dfb34e":"2021-07-14T11:28:09.807Z","6.0.35":"2021-07-14T11:33:51.689Z","6.0.36-renovate-internal-patch-c78093781f66b9d924b46f0afaefb566116a6380":"2021-07-16T05:22:11.583Z","6.0.36":"2021-07-16T05:25:31.490Z","6.0.37-renovate-internal-patch-e58605b9305d10f02515979da68749781bc81771":"2021-07-16T09:27:45.152Z","6.0.37":"2021-07-16T09:31:17.628Z","6.0.38-renovate-balena-jellyfish-sync-6-x-f43533ef355954f7afff017f266d9a7dc0e231f3":"2021-07-16T13:18:48.881Z","6.0.38":"2021-07-16T13:23:17.578Z","6.0.39-renovate-internal-patch-0708e2cc588256b5e861b30b34cc9a27d1171a23":"2021-07-17T02:27:33.559Z","6.0.39":"2021-07-17T02:31:12.243Z","6.0.40-renovate-external-non-major-d69ffde543ff89eb17f9707b28a5c01cbab1b59d":"2021-07-17T02:41:45.574Z","6.0.40":"2021-07-17T02:44:28.050Z","6.0.41-renovate-internal-patch-28247f934fbffcc5d3b75778f8dc8bca67186e88":"2021-07-17T06:50:15.179Z","6.0.41-renovate-internal-patch-ab3d1a7428715b6e1cd60aec3676633bd66dfe7f":"2021-07-17T06:53:38.573Z","6.0.41":"2021-07-17T06:57:25.199Z","6.0.42-renovate-internal-patch-07961a573ab2e9417a659ba18f1910154f17a266":"2021-07-17T08:35:29.901Z","6.0.42":"2021-07-17T08:38:55.509Z","6.0.43-renovate-internal-patch-ae59c017167bdfb8be23f759aeb8233154be59f2":"2021-07-19T12:06:04.361Z","6.0.43":"2021-07-19T12:09:17.607Z","7.0.0-jellyscript-v5-9fbdc4e3a78aa6023dc0667cf156d86911d25358":"2021-07-26T07:34:00.476Z","6.0.44-jellyscript-v5-5d6918fa54fc78f1e8203caf078cabddffaf753e":"2021-07-27T02:44:59.833Z","6.0.44":"2021-07-27T02:49:04.097Z","6.0.45-renovate-internal-patch-0596648cee3ac221baa7b608a1b21dac370728da":"2021-07-27T02:52:11.828Z","6.0.45":"2021-07-27T02:57:19.438Z","6.0.46-jellyscript-with-link-triggers-caca3a4f708a97f22698543071e6d1f2b48b55fa":"2021-07-28T04:28:13.278Z","6.0.46-jellyscript-with-link-triggers-c0e7a84250b2b11727d078df8bb6050c53425d96":"2021-07-28T09:22:07.656Z","6.0.46":"2021-07-28T09:25:42.257Z","6.0.47-renovate-internal-patch-d9e31f0bffc538d0f9efd23aaa0bdddaf95003b9":"2021-07-29T02:02:34.988Z","6.0.47":"2021-07-29T02:05:56.867Z","6.0.48-renovate-internal-patch-16e149dc3e2df41ea7710f0e6ac12b91d406fab6":"2021-07-29T02:39:19.590Z","6.0.48":"2021-07-29T02:42:24.232Z","6.0.49-renovate-internal-patch-75f32ec598a7e451d5efbb2b23a283f9779dcb3a":"2021-07-29T04:01:43.171Z","6.0.49":"2021-07-29T04:05:12.803Z","6.0.50-renovate-internal-patch-2ecebbd487b850df48953c258906cd827df12726":"2021-07-30T02:15:37.983Z","6.0.50":"2021-07-30T02:19:15.886Z","6.0.51-renovate-internal-patch-5633e4c1844aa42b24fded64cb434fe811e2b1eb":"2021-07-30T04:13:28.706Z","6.0.51":"2021-07-30T04:17:39.561Z","6.0.52-renovate-internal-patch-a1a526ce2c3326da4087608121e764cdd3da807f":"2021-07-30T04:21:37.450Z","6.0.52":"2021-07-30T04:26:16.101Z","6.0.53-renovate-external-non-major-cef1801df035ec9bd66dff97c6853605050a06de":"2021-07-31T01:18:59.433Z","6.0.53":"2021-07-31T01:22:53.363Z","6.0.54-renovate-internal-patch-2fb47414d4c525b7a53355989e21491a3a9da271":"2021-07-31T01:26:27.549Z","6.0.54-renovate-internal-patch-9e71a6be0d2077c50a9d8a0df1dd44a92ea32c9b":"2021-07-31T03:09:54.708Z","6.0.54":"2021-07-31T03:13:48.197Z","6.0.55-renovate-internal-patch-bf35044632fceb2a9d8aa0fcc20ae394454dda26":"2021-07-31T03:19:13.870Z","6.0.55":"2021-07-31T03:23:10.840Z","6.0.56-renovate-internal-patch-8fb1f237fe9a8e4b537aaa819e684511d76c6e62":"2021-07-31T05:17:34.400Z","6.0.56":"2021-07-31T05:20:55.243Z","6.0.57-renovate-external-non-major-fbe31f1c81cd2c106041832d6d01ca04bd41982c":"2021-07-31T17:27:43.130Z","6.0.57":"2021-07-31T17:31:20.703Z","6.0.58-renovate-internal-patch-60c0813302df2432bac0783614ca7e67c10f7b50":"2021-07-31T18:46:23.564Z","6.0.58":"2021-07-31T18:50:37.462Z","6.0.59-renovate-external-non-major-6e614eb82f8e02d5322f9eed17f5145e67767111":"2021-08-01T13:37:16.189Z","6.0.59-renovate-internal-patch-27868303239d549c960c037a6246a5eed44bd003":"2021-08-01T13:38:26.312Z","6.0.59":"2021-08-01T13:40:32.844Z","6.0.60-renovate-internal-patch-3d3e3f07d5a77bcc0a8efe1630c7e5e58cf2ab6b":"2021-08-01T13:44:28.825Z","6.0.60":"2021-08-01T13:50:19.081Z","6.0.61-renovate-internal-patch-001ca5d1e32d153b363a58fcf9d7987f0921e8d8":"2021-08-02T00:30:51.634Z","6.0.61":"2021-08-02T00:35:13.743Z","6.0.62-update-script-names-a1bc22188dceb7e490b72e585a42fd4bdb555d3e":"2021-08-04T23:45:17.912Z","6.0.62":"2021-08-05T00:11:36.829Z","6.0.63-renovate-internal-patch-d4252d9eb16626f3ad7161921225704292ac3b7c":"2021-08-05T00:15:10.619Z","6.0.63":"2021-08-05T00:20:48.370Z","6.0.64-renovate-internal-patch-2da29a45a0b875daae16bc53d533704f545dd986":"2021-08-05T00:24:52.003Z","6.0.64":"2021-08-05T00:31:24.525Z","6.0.65-renovate-internal-patch-74f834d6fa3bb65bfbd413f5138d74ebf11ba24a":"2021-08-05T00:37:36.346Z","6.0.65-renovate-internal-patch-43110bcce3082edcbdead6abe2c9c6c21fcdf9d7":"2021-08-05T00:42:54.674Z","6.0.65":"2021-08-05T00:46:41.765Z","6.0.66-renovate-internal-patch-2f1cf78cebd3735b9c07826544975a9792e97b77":"2021-08-05T03:05:57.200Z","6.0.66":"2021-08-05T03:09:01.649Z","6.0.67-renovate-internal-patch-cccd2dcd09e235e8c42c6c160100de34aaf1dce7":"2021-08-05T10:11:15.567Z","6.0.67":"2021-08-05T10:14:54.632Z","6.0.68-renovate-internal-patch-85b5111456b1b05a3e24275865cd270922927301":"2021-08-05T11:57:55.345Z","6.0.68":"2021-08-05T12:04:02.720Z","6.0.69-renovate-internal-patch-14e0189ae4b383b5a4016f1206d6e19ecc70cb18":"2021-08-06T00:00:28.202Z","6.0.69":"2021-08-06T00:03:32.797Z","6.0.70-renovate-internal-patch-0beac3af025bc8bc1083fc4f00d35fb3f2d27e1a":"2021-08-06T00:38:59.530Z","6.0.70":"2021-08-06T00:43:14.812Z","6.0.71-renovate-internal-patch-d57ae1a898341c56d1c989c3c0f0e63f631cf0ff":"2021-08-06T14:22:48.526Z","6.0.71":"2021-08-06T14:26:35.372Z","6.0.72-renovate-internal-patch-34df1de623dc972014bbcbcaa7cb1b1e86991337":"2021-08-06T16:30:29.723Z","6.0.72":"2021-08-06T16:33:50.762Z","6.0.73-renovate-internal-patch-f6641f9f0e57ccc545ebadca10e67f7601b001e1":"2021-08-06T17:45:52.380Z","6.0.73":"2021-08-06T17:49:16.952Z","6.0.74-renovate-internal-patch-4133b0f0984f5ba8fc25f701ad9706faca8098b6":"2021-08-06T19:07:05.611Z","6.0.74":"2021-08-06T19:10:20.033Z","6.0.75-renovate-internal-patch-c5dc0b079ef5423a0cc8fa9b1a1937ccf30abdea":"2021-08-07T00:11:25.305Z","6.0.75-renovate-external-non-major-483542a9e57f46f215d9424065f41ed7df919df6":"2021-08-07T00:12:01.476Z","6.0.75":"2021-08-07T00:14:17.812Z","6.0.76-renovate-external-non-major-fa68272c1230545fd985751029f23c568e0d12c8":"2021-08-07T00:19:27.238Z","6.0.76":"2021-08-07T00:22:53.728Z","6.0.77-renovate-internal-patch-c8d93523c278ed9c6d271320992acb9c32fa9fad":"2021-08-07T02:00:19.920Z","6.0.77":"2021-08-07T02:04:26.166Z","6.0.78-renovate-internal-patch-ac6679c559ee0f114d37a27b72a696f827597ad2":"2021-08-07T02:46:17.910Z","6.0.78":"2021-08-07T02:49:35.517Z","6.0.79-renovate-internal-patch-804b012e823b616fa23c74136bcf0a5a17b7b716":"2021-08-07T18:20:23.476Z","6.0.79":"2021-08-07T18:23:47.629Z","6.0.80-renovate-internal-patch-7ba2d4e84e3651457b981d5a212dabf5641d1832":"2021-08-09T10:15:19.227Z","6.0.80":"2021-08-09T10:18:38.925Z","6.0.81-renovate-balena-jellyfish-types-0-x-161696863228dd79d90e5e5e43cb182cbadf850d":"2021-08-09T10:22:42.959Z","6.0.81-renovate-internal-patch-30942afb7ab575c0e7b891e33c1a0377892e65c0":"2021-08-09T11:49:27.734Z","6.0.81":"2021-08-09T11:54:37.080Z","6.0.82-renovate-balena-jellyfish-types-0-x-2c9086e9274a8e05bf38fa522de3aa10fc35a05e":"2021-08-09T11:57:26.520Z","6.0.82":"2021-08-09T12:02:31.623Z","6.0.83-renovate-internal-patch-ae89dcae32ff9a8646fa6ff353ba1800ebad41a5":"2021-08-09T12:05:51.700Z","6.0.83":"2021-08-09T12:15:04.373Z","6.0.84-renovate-internal-patch-cbe34c3b3e62378f99476388c71279f000d6a922":"2021-08-09T14:13:08.661Z","6.0.84":"2021-08-09T14:16:31.846Z","6.0.85-renovate-internal-patch-3898cd6aecf3111bb2f0fd67762a6169e8010b4a":"2021-08-09T19:53:23.723Z","6.0.85":"2021-08-09T19:57:08.643Z","6.0.86-renovate-internal-patch-2f1307bc5735c077fba9d11806bb732213cb1843":"2021-08-10T11:57:36.561Z","6.0.86":"2021-08-10T12:01:54.203Z","6.0.87-renovate-internal-patch-e6edc45482d5256c0ad9729b28813778707276eb":"2021-08-10T13:10:09.793Z","6.0.87":"2021-08-10T13:13:48.127Z","6.0.88-renovate-internal-patch-bdadb2fe23b6ee7061d3ed9d0c9e3c7b01bc9e2f":"2021-08-10T14:43:20.654Z","6.0.88":"2021-08-10T14:47:03.431Z","6.0.89-renovate-internal-patch-7441fd7f79565ca6290118a748e8dc2caae9f86d":"2021-08-10T14:50:25.243Z","6.0.89":"2021-08-10T14:56:17.114Z","6.0.90-renovate-internal-patch-792448cc1a24f98633860688e29f6c57b19943f2":"2021-08-11T00:17:51.377Z","6.0.90":"2021-08-11T00:21:41.147Z","6.0.91-renovate-major-external-major-60591aeee983c4df283bd396a7b9c80c4df71ddd":"2021-08-15T01:44:57.178Z","6.0.91":"2021-08-15T01:51:36.295Z","6.0.92-renovate-internal-patch-94ac7b7018e61c382ff7b1055570801623440fe4":"2021-08-15T01:56:17.029Z","6.0.92-renovate-internal-patch-78c3f6537d220ab1a1f53d43f8578b79c58f5b28":"2021-08-15T03:34:23.804Z","6.0.92":"2021-08-15T03:38:10.396Z","6.0.93-renovate-balena-jellyfish-environment-4-x-ecb73e92a32490097296e09d4454bf74075088c9":"2021-08-15T03:41:08.056Z","6.0.93":"2021-08-15T03:46:46.198Z","6.0.94-renovate-internal-patch-5b6e44244b9b1bcacef2ff905bbaf5fb84a0b502":"2021-08-16T03:01:25.934Z","6.0.94":"2021-08-16T03:04:50.054Z","6.0.95-renovate-internal-patch-4b4bc7921ae775f179830643faa5ccfe8700b65a":"2021-08-16T06:55:13.776Z","6.0.95":"2021-08-16T06:58:48.406Z","6.0.96-renovate-internal-patch-6100e7945df3ae8d9ff878ba7855dd901efc6d38":"2021-08-16T18:37:16.371Z","6.0.96":"2021-08-16T18:40:33.806Z","6.0.97-pick-variable-750d17621b1f0fa8d60a50f8fcff12aaff4fea68":"2021-08-21T10:06:01.296Z","6.1.0-pick-variable-9209f2570cae9bcfe2a5885abcc760f21d64e011":"2021-08-21T11:42:12.270Z","6.1.0-pick-variable-f7249b224aa58e817b8fd986b08431b1ae86213d":"2021-08-21T13:19:30.396Z","6.1.0-pick-variable-c6c2e8d50f672a57b42744f7bf66967946e74c2d":"2021-08-21T13:40:37.344Z","6.1.0-pick-variable-01e34b6ba3ae42caf2f7da3645d7bd7c89fc6022":"2021-08-21T14:19:03.379Z","6.1.0":"2021-08-21T15:18:17.922Z","6.2.0-add-backend-setup-d27a3f6ed97c2e598433c0b8bc7de90f090e143a":"2021-09-03T06:59:16.742Z","6.2.0-add-backend-setup-336150699801721115096809498069e0a8a36876":"2021-09-03T07:48:02.800Z","6.2.0-add-backend-setup-d04ed8c9d903c02f5024ce93082bebcd44fc9bb3":"2021-09-03T08:19:32.905Z","6.2.0-add-backend-setup-98a1a1a6c6d924f12bd7861e4048dd0a13008354":"2021-09-03T08:33:13.419Z","6.1.1-drop-link2-on-reset-730475f8158b991fe9ed46f4cbb23d724496bba3":"2021-09-04T00:07:20.637Z","6.1.1":"2021-09-04T00:11:07.566Z","6.1.2-renovate-external-non-major-76c7e6122baea6cd3a39f0060eefd3a581c37d73":"2021-09-04T00:17:27.432Z","6.1.2-renovate-balena-jellyfish-environment-5-x-cd6602bea70a8ae8a25ea2913f0562edec5be302":"2021-09-04T00:18:13.109Z","6.1.2-renovate-balena-jellyfish-worker-9-x-330a02eb4542cabd8ada8729111109aed88f9912":"2021-09-04T00:18:49.114Z","6.1.2":"2021-09-04T00:20:57.201Z","6.1.3-renovate-internal-patch-dbd6787df7164c20e1d6f6c69c6f284b2849e514":"2021-09-04T00:24:26.790Z","6.1.3-renovate-balena-jellyfish-core-5-x-1c47ede92fe8785e9785ad7e50015c4d99e7df34":"2021-09-04T00:25:48.463Z","6.1.3-renovate-balena-jellyfish-environment-5-x-b731b53181e73d77f95a412097e07a88c273d274":"2021-09-04T00:26:05.317Z","6.1.3-renovate-balena-jellyfish-types-1-x-704cca1ab130072d952905856c1abcdd6fd18586":"2021-09-04T00:28:21.329Z","6.1.3-renovate-balena-jellyfish-worker-9-x-5c2c551fa3a6b8a3426f175bf7c84fbc6b06d94e":"2021-09-04T00:29:47.429Z","6.1.3":"2021-09-04T00:33:04.858Z","6.1.3-renovate-internal-patch-bedc0aae5aa3a2964aed149589283ccf357a319b":"2021-09-04T00:33:25.396Z","6.1.4-renovate-internal-patch-361b01d2c078224aa2371a17d2d9a9398b5cf6b9":"2021-09-04T00:39:47.918Z","6.1.4-renovate-balena-jellyfish-core-5-x-c1bbfb5df7892ca052685ee0e9b90aa36d05ddcb":"2021-09-04T00:39:57.269Z","6.1.4-renovate-balena-jellyfish-worker-9-x-72db0931eeb34613d52bf3d268647bfb76ad5b66":"2021-09-04T00:40:16.346Z","6.1.4":"2021-09-04T00:44:46.587Z","6.1.5-renovate-internal-patch-5d48217db2cd2d90669295d5893a0fdc4645fdc8":"2021-09-04T00:51:46.606Z","6.1.5-renovate-balena-jellyfish-worker-9-x-b6f949810f5ed267323384731ecf8a324c42eb0b":"2021-09-04T00:56:46.311Z","6.1.5-renovate-internal-patch-de049406c455a4578a307f00a30b6b220f2f9088":"2021-09-04T01:48:50.696Z","6.1.5":"2021-09-04T01:52:28.876Z","6.1.6-renovate-balena-jellyfish-core-5-x-03fb4f20b6fd2faa18a97fe004b8c2d1311208e2":"2021-09-04T01:56:35.512Z","6.1.6-renovate-balena-jellyfish-worker-9-x-f3f9afcf04aa7a29c8f4a2760d4d25a5fd0bbfd2":"2021-09-04T02:00:36.999Z","6.1.6":"2021-09-04T02:02:45.019Z","6.1.7-renovate-balena-jellyfish-environment-5-x-4d01a017d5838d4e7dad95d7fc307a433bec6645":"2021-09-04T02:06:50.192Z","6.1.7-renovate-balena-jellyfish-worker-9-x-daff3eeb39f862810e0320e8847821be8085abfb":"2021-09-04T02:10:28.696Z","6.1.7-renovate-internal-patch-c98d8589d08276b93d5859d070039527701f312d":"2021-09-04T03:32:43.820Z","6.1.7":"2021-09-04T03:37:43.375Z","6.1.8-renovate-balena-jellyfish-environment-5-x-151b3b6ec6512030f8019f4e216ad17d9ce03721":"2021-09-04T03:39:46.792Z","6.1.8-renovate-balena-jellyfish-worker-9-x-7f7660abbc8aefb8477dbf2c927fe3b7af0ec542":"2021-09-04T03:40:31.747Z","6.1.8-renovate-internal-patch-b4471ca1adb35ed67434b1f243f2fd1fded9176d":"2021-09-04T15:39:36.529Z","6.1.8":"2021-09-04T15:44:10.098Z","6.1.9-renovate-balena-jellyfish-environment-5-x-7c3cc57caf5b00d765d9ee12cef604184b902a8e":"2021-09-04T15:47:36.613Z","6.1.9-renovate-balena-jellyfish-worker-9-x-acbd1f1cc92b58d00e1e2c1ebc06dfb987a8d169":"2021-09-04T15:48:17.391Z","6.1.9":"2021-09-05T02:36:20.171Z","6.1.10-renovate-balena-jellyfish-environment-5-x-9ce9216412ebc44afeeeb9de5c4e57fea8c984ca":"2021-09-05T02:39:45.874Z","6.2.0-add-backend-setup-be3f24c4e0bdb393a382fff85ea0dcaec0450c80":"2021-09-05T02:48:35.853Z","6.2.0-add-backend-setup-8f496d952596c10a7f293a68a71c2c2adeaca62e":"2021-09-05T04:03:29.378Z","6.2.0-add-backend-setup-0edcbd6e7835bce7b225d207bab82e0a451166dd":"2021-09-05T04:09:02.207Z","6.1.10-renovate-balena-jellyfish-core-5-x-874f01576bbebfe8d6d09dd47c7322a49cfa0e21":"2021-09-05T09:42:22.144Z","6.1.10-renovate-balena-jellyfish-types-1-x-61277055fd6db2de4a831afc2dbc46ce04baa7e9":"2021-09-05T09:43:06.501Z","6.1.10":"2021-09-05T09:46:26.875Z","6.1.10-renovate-balena-jellyfish-core-5-x-05db676c97cb95a7929e7df23798f999ad575d2e":"2021-09-05T09:47:36.779Z","6.1.11-renovate-internal-patch-7bc541171c7fe5998a0d79a063554e2a1f2e2191":"2021-09-05T09:50:48.036Z","6.1.11-renovate-balena-jellyfish-core-5-x-0c301964e12bd7bdb9aebdb4402e3982387a4986":"2021-09-05T09:51:55.294Z","6.1.11-renovate-balena-jellyfish-environment-5-x-8a53a7514acb1aa43c68d22124fa51bd46cff29a":"2021-09-05T09:56:49.967Z","6.1.11":"2021-09-05T10:10:59.356Z","6.1.12-renovate-internal-patch-0150315bac6fef2f3f7e4068199bee8735263518":"2021-09-05T10:14:59.742Z","6.1.12-renovate-balena-jellyfish-core-5-x-177b00bb2d4ffcccf3498fa3edeb6a9e098f0841":"2021-09-05T10:18:16.698Z","6.1.12":"2021-09-05T10:21:47.029Z","6.1.13-renovate-balena-jellyfish-core-5-x-848cefa76847215f5b33e12945146ae4b1ede04c":"2021-09-05T10:26:11.356Z","6.1.13":"2021-09-05T12:07:48.612Z","6.1.13-renovate-internal-patch-255820da9995c57ff57283f05f1c616d32903dbe":"2021-09-05T12:08:27.023Z","6.1.14-renovate-internal-patch-a8cce6a64c35d26c2bc3217c95857e5736aeb2e7":"2021-09-05T12:10:28.464Z","6.1.14":"2021-09-05T12:17:08.174Z","6.2.0-add-backend-setup-72be5444c2901a833ba8b241701bb78f087309ba":"2021-09-05T12:29:04.276Z","6.2.0-add-backend-setup-889c4874457c23c08868ba9ab86f322fbc0fb9b5":"2021-09-05T14:46:45.326Z","6.2.0-add-backend-setup-d580fdbfe83a1ef85930cab8c40891e9686f6045":"2021-09-05T14:53:36.887Z","6.2.0-add-backend-setup-fbbd92a490c7ba86c7fd5945ea118fba93479452":"2021-09-05T15:27:17.184Z","6.2.0-add-backend-setup-e587a0ed46bf503a45ed53a781a353256ee1b965":"2021-09-05T23:38:02.456Z","6.2.0-add-backend-setup-5fec900bbdd30506645c42b3386b0a202c2eb7a2":"2021-09-06T01:35:00.943Z","6.2.0-add-backend-setup-04495174739e6279fc7baf0530537ad1d13c1ebb":"2021-09-06T02:35:59.016Z","6.2.0":"2021-09-06T02:39:21.550Z","6.2.1-renovate-internal-patch-2529ce6e020c094d950397f14dad823507a61e98":"2021-09-06T08:28:16.744Z","6.2.1":"2021-09-06T08:31:34.742Z","6.2.2-renovate-internal-patch-453ffa76193e0d2d3bb5a064d69a76518373f4db":"2021-09-06T10:08:31.686Z","6.2.2":"2021-09-06T10:12:40.077Z","6.2.3-renovate-balena-jellyfish-core-5-x-592fab04b20791d0ee023d57dab66c78eaa93a9d":"2021-09-06T16:30:14.386Z","6.2.3":"2021-09-06T16:33:33.556Z","6.2.4-renovate-internal-patch-de007e8c2e9d5dc0e53e7206cb7b65b67d931b17":"2021-09-06T17:56:51.461Z","6.2.4":"2021-09-06T18:00:53.961Z","6.2.5-renovate-internal-patch-f0417ab7f03348fa24ba659935b4ea7841309874":"2021-09-06T21:48:19.987Z","6.2.5":"2021-09-06T21:51:46.855Z","6.2.6-lucianbuzzo-remove-action-stub-b4c5b44e78b8d6a7b88f61cc1cbfd80a78c8a17d":"2021-09-07T14:18:08.121Z","6.2.6":"2021-09-07T14:23:42.673Z","6.2.7-renovate-internal-patch-518cb3880e7d7941b3ddfa6a6f27741ee8da42ac":"2021-09-07T14:30:09.215Z","6.2.7":"2021-09-07T14:33:46.218Z","6.2.8-lucianbuzzo-bootstrap-all-plugin-contracts-f8068eaa9773b7cf1016f9acdaa3bdeb759962bb":"2021-09-07T15:40:01.768Z","6.2.8":"2021-09-07T15:47:08.519Z","6.3.0-add-sync-9c866b37b9ad2abb21db85649b661842ab5c222e":"2021-09-08T08:06:54.013Z","6.3.0":"2021-09-08T08:47:29.718Z","6.3.1-update-get-sync-integrations-352205d3f826ca3303fa8f16d163ed1db3d8580b":"2021-09-09T01:28:04.323Z","6.3.1":"2021-09-09T01:31:03.250Z","6.3.2-renovate-internal-patch-8f29d706d39ebe19906b9000578e47c8bc8d9af7":"2021-09-09T13:17:08.656Z","6.3.2":"2021-09-09T13:20:45.325Z","6.3.3-renovate-internal-patch-c20dab05ab7e88b6ef54b6ad28c5387923dcc1ee":"2021-09-10T08:27:30.580Z","6.3.3":"2021-09-10T08:31:19.705Z","7.0.0-drop-links-0fca4ee7df6024d9440cdec23c87ebecbce36c9e":"2021-09-10T11:54:02.656Z","7.0.0":"2021-09-10T11:57:31.737Z","7.0.1-renovate-balena-jellyfish-worker-10-x-cd5e8dba175df006545a644bf83a0ddbec4b8ff1":"2021-09-10T13:05:59.219Z","7.0.1-renovate-external-non-major-6e67c9d68bf3cb9376d0c14fb72468649e548a30":"2021-09-11T00:23:51.985Z","7.0.1-renovate-external-non-major-cc864abfcb3031bf3276152ff8b7d1a614f43368":"2021-09-11T02:54:59.295Z","7.0.1":"2021-09-11T03:05:10.475Z","7.0.2-renovate-external-non-major-a67318f1c715a1c505db1354d67a27d45677937d":"2021-09-11T03:08:48.647Z","7.1.0-add-more-helpers-130244f7bac8001ce1bdc61095d15e74e4a69693":"2021-09-11T03:42:43.855Z","7.1.0-add-more-helpers-1f263fec0dc7f555ead390ef8fe44e0521a1441a":"2021-09-11T04:28:01.849Z","7.1.0-add-more-helpers-22a7c30811be8a572d186eb394930ae460e518ac":"2021-09-11T05:16:59.569Z","7.1.0-add-more-helpers-cb753ef0fd81293310f6c6c145af20e78332c3db":"2021-09-11T05:20:35.346Z","7.0.2-renovate-internal-patch-681b28d8ad3b139c485f9646aaba07fe47f15214":"2021-09-11T08:54:18.164Z","7.0.2":"2021-09-11T08:57:51.619Z","7.0.3-renovate-external-non-major-b0fa001c2888f9c932883b8097cfd83aeb3e7c62":"2021-09-11T09:01:23.051Z","7.0.3-renovate-internal-patch-50ac994e971043000df570f38ebc0c25890cd43d":"2021-09-11T14:33:51.333Z","7.0.3":"2021-09-11T14:37:26.173Z","7.0.4-renovate-external-non-major-9ea9e04f28181051cb282e8823b3f074fce41d5f":"2021-09-11T14:40:56.332Z","7.0.4-renovate-external-non-major-395259ffd93e4a27865cc1cde795fdef904c70a0":"2021-09-12T05:10:53.277Z","7.0.4-renovate-internal-patch-2395775a810d1d74d11932452e3cf291a6c91f3b":"2021-09-12T08:52:03.600Z","7.0.4":"2021-09-12T08:55:20.535Z","7.0.5-renovate-external-non-major-6ef5bd7a8f8be60b7f86946ec0e09797b8cd38d5":"2021-09-12T09:01:27.264Z","7.0.5-renovate-internal-patch-0b819284a29f1ef0c2e42839163c74ab03c046fc":"2021-09-12T11:28:57.641Z","7.0.5":"2021-09-12T11:32:15.465Z","7.0.6-renovate-external-non-major-a3e8892f4e07c4137aeb2a01492afa3de4fa5da3":"2021-09-12T11:37:38.408Z","7.0.6-renovate-internal-patch-dfae797e229417754c8528beb7fe6f28a03ecde4":"2021-09-12T14:21:57.720Z","7.0.6":"2021-09-12T14:25:52.281Z","7.0.7-renovate-external-non-major-a17316c86436bfc13eca4c62cafbaa7c51c5d811":"2021-09-12T14:28:57.743Z","7.1.0-add-more-helpers-a88c26d0ed3ef52ef95d2a3bd34df977fc5f66b4":"2021-09-13T08:10:21.497Z","7.1.0":"2021-09-13T08:13:48.981Z","7.1.1-renovate-external-non-major-9a3326894c2eae6703093f6d718bf08f28e64ec1":"2021-09-13T08:18:14.827Z","7.1.1-renovate-external-non-major-9217db39e19d32866496d8b81c2ff8b3ba1b3e11":"2021-09-13T08:20:34.837Z","7.1.1-lucianbuzzo-table-cleanup-21c238dd7c1e21fc6da70a8a61ef53f7d4b9db55":"2021-09-13T08:41:46.910Z","7.1.1":"2021-09-13T13:36:34.433Z","7.1.2-renovate-external-non-major-a38d6fcd5a2450c09e45af69149ca0f41372716c":"2021-09-13T13:43:22.092Z","7.1.2-renovate-balena-jellyfish-core-5-x-23f59fcd007351aaf63026fb1497af28b516b23c":"2021-09-13T18:18:26.794Z","7.1.2":"2021-09-13T18:22:32.301Z","7.1.3-renovate-internal-patch-0e7e84a0cec26d6ab23023350ec3e3a5e8a34f77":"2021-09-13T18:26:53.214Z","7.1.3-renovate-external-non-major-e89157ffdbd803199e867a10d03a94c345d64b03":"2021-09-13T18:28:52.103Z","7.1.3":"2021-09-13T18:32:19.774Z","7.1.4-renovate-external-non-major-d9ea71d5e7fb90b84d554d73ebb51b701e09a3c0":"2021-09-13T18:35:58.445Z","7.1.4-renovate-balena-jellyfish-core-6-x-58f44339003ae41626754e7f633f529b23d202ba":"2021-09-13T20:24:00.771Z","7.1.4":"2021-09-13T23:11:49.731Z","7.1.5-renovate-external-non-major-07796b0c82c2c512ad3fdd33cc4a589b796a9620":"2021-09-13T23:15:45.408Z","7.1.5-remove-links-cleanup-deb12291770d8768b328edc7f76b7ce0fb1d0fd7":"2021-09-14T01:05:02.664Z","7.1.5-renovate-internal-patch-095f454ae74d1fff952982ea82b99a6a2ce0a7f8":"2021-09-14T01:30:42.870Z","7.1.5":"2021-09-14T01:34:16.363Z","7.1.6-renovate-external-non-major-010d85d88ddb3c9a5f82db3d3517d4ae4f32e215":"2021-09-14T01:38:18.402Z","7.1.6-remove-links-cleanup-5dbd21cec34c7ae29b2318fa249a53c69b3c359a":"2021-09-14T01:42:23.521Z","7.1.6":"2021-09-14T01:46:02.340Z","7.1.7-renovate-external-non-major-d8f78ab3d9986f1c05a54ca0058613e9d7f90a99":"2021-09-14T01:52:10.223Z","7.2.0-add-helper-create-functions-8602a842238d140e27ceed0a63d6187aa8de979e":"2021-09-14T08:36:35.002Z","7.2.0":"2021-09-14T08:48:30.174Z","7.2.1-renovate-balena-jellyfish-core-6-x-a3fa7bc131dbe5491f4fb0f7d9e3e973717542d9":"2021-09-14T08:55:34.539Z","7.2.1":"2021-09-14T08:59:22.383Z","7.2.2-renovate-internal-patch-b07bfef5ff2b4b5a0488bf60a1f976c2fed8f5b6":"2021-09-14T09:03:42.109Z","7.2.2-renovate-external-non-major-1b1c9525fd82d573c57b1fefa888c35c99b15e59":"2021-09-14T09:07:14.707Z","7.2.2-renovate-internal-patch-f0eb2a3b0f2ef765f9841aa40f8571dbfbd13ccc":"2021-09-14T10:05:57.372Z","7.2.2":"2021-09-14T10:09:42.371Z","7.2.3-renovate-external-non-major-8578ecb39b13fdb74d320428910990759f75ab89":"2021-09-14T10:12:46.764Z","7.2.3-renovate-internal-patch-6dd7f229e944a0acd2f2724b8a738c80d5f2a3bf":"2021-09-14T16:22:01.048Z","7.2.3":"2021-09-14T16:26:39.993Z","7.2.4-renovate-external-non-major-01dd78e953b8993a915ec47749dc58c72c6daeda":"2021-09-14T16:29:28.642Z","7.2.4-renovate-external-non-major-506423f49a1d7ffa34acd69c96bead26a56947c0":"2021-09-14T21:34:22.190Z","7.2.4-update-create-support-thread-4b6058b2c13f6280ab901fd495c4417f3567ae51":"2021-09-15T02:01:35.593Z","7.2.4":"2021-09-15T03:53:41.526Z","7.2.5-add-more-create-helpers-f69d614a8159d0b5f3057fe5e82f0a2dd0e218ee":"2021-09-15T08:02:17.184Z","7.3.0-add-more-create-helpers-109c965439378c519d0f0b7940631a8d3accd927":"2021-09-15T08:07:58.223Z","7.3.0":"2021-09-15T08:31:08.987Z","7.3.1-renovate-internal-patch-ac3ac2eb0045097839946efeab9abad2ae3ea953":"2021-09-15T08:37:53.628Z","7.3.1-renovate-external-non-major-75358dc475d3b92d370c26f6259910a347a97fe9":"2021-09-15T08:38:33.351Z","7.3.1":"2021-09-15T08:41:09.089Z","7.3.2-renovate-external-non-major-7a9f4bf40e46197a9c6cc72c0ca145ce4e9f277c":"2021-09-15T08:46:19.734Z","7.3.2-renovate-internal-patch-b14cd5c3c633a7f8b3c95471061f6101fba6f490":"2021-09-15T16:18:19.117Z","7.3.2":"2021-09-15T16:22:09.225Z","7.3.3-renovate-external-non-major-f7f0afb568da0c1c0b0a3fa27bc897af865d118c":"2021-09-15T16:25:11.069Z","7.3.3-renovate-internal-patch-2e977e03fdb439d4f64e175604fa7bee0ab2b209":"2021-09-15T20:16:46.363Z","7.3.3":"2021-09-15T20:20:59.621Z","7.3.4-renovate-external-non-major-ee8dab6e72df8c8b47cc59a62feefaacced0ead3":"2021-09-15T20:27:29.141Z","7.3.4-worker-bootstrap-types-5b47269104cdadd0fae51961e92a4d6c2e4ec84d":"2021-09-16T02:29:36.691Z","7.3.4":"2021-09-16T02:38:16.363Z","7.3.5-renovate-external-non-major-201e40cf80ffa347a4b9396f3f9ccab334bf9f89":"2021-09-16T02:44:18.873Z","7.4.0-worker-dependency-injection-6669ba22b271901415950cebb38f126ac89adac5":"2021-09-16T04:50:57.906Z","7.4.0-worker-dependency-injection-82009c8dc86237bb24392e25e2bfc6849c3a3627":"2021-09-16T06:04:54.902Z","7.4.0":"2021-09-16T06:15:47.071Z","7.4.1-renovate-external-non-major-93b92ad5a6c8d42edd1413accccdd6c8dc25a5fa":"2021-09-16T10:23:35.502Z","7.4.1-renovate-internal-patch-ae03ca72e8724cffde101c74f217a7727e433437":"2021-09-16T10:23:48.222Z","7.4.1":"2021-09-16T10:28:06.962Z","7.4.2-renovate-external-non-major-49affce186af44642993a54f091a108585d593fe":"2021-09-16T10:31:09.753Z","7.4.2-renovate-internal-patch-d6e4fc39f0c160744b4fe5eee408dbfc00e7aa8d":"2021-09-16T12:23:05.718Z","7.4.2-renovate-external-non-major-98b72ffbb3e8a272746fdc1bf2363c3a0a6be9a7":"2021-09-16T22:23:49.793Z","7.4.2-renovate-internal-patch-7118ca891fdac7ef25a84ebe9f7f90ef795fb6db":"2021-09-17T08:12:31.998Z","7.4.2":"2021-09-17T08:16:35.750Z","7.4.2-renovate-external-non-major-c7666b9d31ec8b3143211254e440197c14ee03ff":"2021-09-17T08:19:52.985Z","7.4.3-renovate-external-non-major-d6255ff0c75d66892300edcf4f2b8bc7025cc0dd":"2021-09-17T08:22:14.480Z","7.4.3-renovate-internal-patch-31760c707d0a7eb0125d87cb766869562ee9ad29":"2021-09-18T02:09:04.961Z","7.4.3":"2021-09-18T02:13:48.522Z","7.4.4-renovate-external-non-major-76e4dc15f486bf8220bc68bf1f5f0bc0b6a4b436":"2021-09-18T02:19:56.108Z","7.4.4-renovate-internal-patch-d6e85975c7f276c4a66f5a40ffbaf24813669e15":"2021-09-18T04:10:06.926Z","7.4.4":"2021-09-18T04:15:14.580Z","7.4.5-renovate-external-non-major-94f641d8d811ed9fdddfe401f74cac608619209f":"2021-09-18T04:20:26.283Z","7.4.5-renovate-external-non-major-0766fa482a4e043445b4ba15fd82ae3102adf425":"2021-09-18T19:55:02.184Z","7.4.5-renovate-internal-patch-445eff9debbf897b0e951e96fbd38a58d6fd3eef":"2021-09-18T21:31:37.237Z","7.4.5":"2021-09-18T21:35:56.963Z","7.4.6-renovate-external-non-major-d25323bcd7521ce084ee4f3d204d6a5032f21438":"2021-09-18T21:39:15.096Z","7.4.6-renovate-internal-patch-3d2bd71ee0b23cc308d77137fd290a1d4a92d764":"2021-09-20T10:56:05.583Z","7.4.6-renovate-internal-patch-fc3b449453e54f14aa095a046ebef57493c4fc67":"2021-09-20T11:01:15.557Z","7.4.6":"2021-09-20T11:04:57.784Z","7.4.7-renovate-balena-jellyfish-types-1-x-e6da77b11a0e22ec4020fe2c4d12bca2eca93b59":"2021-09-20T11:09:08.410Z","7.4.7-renovate-internal-patch-56a3c70dbf9b5a8fa8fa6f2e3a2c615ca4548c4e":"2021-09-20T12:30:18.533Z","7.4.7":"2021-09-20T12:33:56.045Z","7.4.8-renovate-external-non-major-2794fb2c08ff24669158a12320568dd377917fa4":"2021-09-20T12:38:50.649Z","7.4.8-renovate-balena-jellyfish-types-1-x-00abd511045c42bbb3f1e17afccb68847a92c0f1":"2021-09-20T12:41:30.156Z","7.4.8":"2021-09-20T12:45:16.560Z","7.4.9-renovate-external-non-major-a4213d1679f153e05acc20c67cdbf8f501727e3e":"2021-09-20T12:50:11.878Z","7.4.9-renovate-internal-patch-2aae29b251182b1c5fdcdf6c9cc9be5fc3d96f04":"2021-09-20T14:07:03.255Z","7.4.9-renovate-external-non-major-8d7a328913c833dd53f55c1fc15c9669481cb97f":"2021-09-20T14:07:19.837Z","7.4.9":"2021-09-20T14:11:24.546Z","7.4.9-renovate-external-non-major-5e218833188ac7a7d9eace01c907fc1a9fe96bd9":"2021-09-20T14:14:21.437Z","7.4.10-renovate-external-non-major-df6855774370b48f265b7bca857cea2f2b5aaa04":"2021-09-20T14:18:14.495Z","7.5.0-add-action-test-originator-9c87b3726e54c4aa8b37e5a45e1d395d2f892b1f":"2021-09-21T05:07:35.122Z","7.4.10-renovate-internal-patch-db11a08d28e95c656bec9621c6f613b4339d37ee":"2021-09-21T08:14:12.220Z","7.4.10":"2021-09-21T08:18:10.047Z","7.4.11-renovate-external-non-major-57f7ae1cd584fcf5d9d8a0201d2ee5c8f7b66dc8":"2021-09-21T08:25:48.109Z","7.4.11-renovate-internal-patch-2deedc7bdd4471cb86413d2abb5e221e03c6f60e":"2021-09-21T09:44:14.496Z","7.4.11":"2021-09-21T09:47:25.126Z","7.4.12-renovate-external-non-major-ad969f975a43b7771bfefa7351b37dfd86702d27":"2021-09-21T09:54:08.670Z","8.0.0-update-optional-dep-injects-094689b1e58340e90eab72bd45426012cf464b5d":"2021-09-21T14:00:06.876Z","7.4.12-renovate-external-non-major-e5bf35a71acea4b654c0595085cd23d8687f8c47":"2021-09-21T20:14:41.073Z","8.0.0-update-optional-dep-injects-706693a7b9d2e3f77328c7008cabd1ef08b02d48":"2021-09-22T01:43:25.992Z","8.0.0":"2021-09-22T02:32:29.448Z","8.0.1-renovate-external-non-major-a69f976108473a78039610c3f6d2739c32fbd3ea":"2021-09-22T03:02:52.267Z","8.0.1":"2021-09-22T03:06:36.771Z","8.0.2-renovate-internal-patch-8b53ed95c663e26a568c255ba323824789088f15":"2021-09-22T10:00:32.366Z","8.0.2":"2021-09-22T10:03:41.856Z","8.1.0-test-user-password-45ca6c3375e02b4853b2ec852a6ff831aa8914d8":"2021-09-23T02:03:26.085Z","8.1.0":"2021-09-23T02:11:11.562Z","8.1.1-renovate-internal-patch-71b5af1b45f031019e625b50abfa66338fc30bf1":"2021-09-23T03:27:16.506Z","8.1.1":"2021-09-23T03:31:30.144Z","8.2.0-create-user-email-990e9ccd0c0eaabc8e621bd2347c2cf1ff91a1a9":"2021-09-23T20:24:30.012Z","8.1.2-renovate-internal-patch-7e6370915698d31fd91f44992ec7f7c2592871bb":"2021-09-25T01:10:04.315Z","8.1.2":"2021-09-25T01:13:33.675Z","8.1.3-renovate-internal-patch-f8a70f9c8d45662f405b9b2464413b64056a1fc5":"2021-09-25T03:39:43.949Z","8.1.3":"2021-09-25T03:43:26.924Z","8.1.4-renovate-internal-patch-75f2f9232ccd3b84106474be12c89fd4ada8cebc":"2021-09-25T05:05:25.750Z","8.1.4":"2021-09-25T05:09:00.957Z","8.1.5-renovate-internal-patch-3e666f90818d96bf44f6bf0a4efda2d3da365077":"2021-09-25T11:55:18.800Z","8.1.5-renovate-external-non-major-1c3fd3d5ccc1c64c55c35b4ea2f4b791083021c7":"2021-09-25T11:55:59.037Z","8.1.5":"2021-09-25T11:58:57.635Z","8.1.6-renovate-external-non-major-611e0d37c0587fced3b72a0d218da66b6488f07a":"2021-09-25T12:02:32.064Z","8.1.6":"2021-09-25T12:07:28.852Z","8.1.7-renovate-external-non-major-a8327fcaa11915838d8e0d2d55ce3512d2f0fb4f":"2021-09-25T16:09:39.387Z","8.1.7":"2021-09-25T16:13:27.232Z","8.1.8-renovate-internal-patch-160229bd0c92f32bf4955f79f4dddd52e9a26e49":"2021-09-25T16:17:47.519Z","8.1.8-renovate-internal-patch-d0a8c0a41c34d431f63a223dd05121f2cfdc295f":"2021-09-25T16:20:27.546Z","8.1.8":"2021-09-25T16:25:45.169Z","8.1.9-renovate-internal-patch-c854d97edd264d179cfb5ae32472aa24d3ad9292":"2021-09-25T18:36:10.469Z","8.1.9":"2021-09-25T18:39:47.527Z","8.1.10-renovate-internal-patch-056b6058f8895e1fde51f2a2f2bbab496f030bd0":"2021-09-26T05:00:40.606Z","8.1.10":"2021-09-26T05:04:33.885Z","8.1.11-renovate-internal-patch-752dffb52fb76e479782c1c3fd955815684c3a6b":"2021-09-29T07:41:24.448Z","8.1.11-renovate-internal-patch-e4d255637005c86264c05c3e66ca50d3c53fc95e":"2021-09-29T07:45:54.513Z","8.1.11":"2021-09-29T07:50:12.345Z","8.1.12-renovate-internal-patch-07dc8c797eee5e22bd3b9a7b30047a9d912a69ca":"2021-09-29T08:49:35.300Z","8.1.12":"2021-09-29T08:52:48.099Z","8.1.13-renovate-internal-patch-7d64656d6d2c4c54ad53159c975e938cf2b49e3a":"2021-10-02T01:26:38.869Z","8.1.13-renovate-external-non-major-65db104e8f8791f7fa94ff1a5ae94aebcbdbf0e3":"2021-10-02T01:27:16.792Z","8.1.13":"2021-10-02T01:30:37.159Z","8.1.14-renovate-internal-patch-e97ebdefb6afb2992769df97770bea55fd088e88":"2021-10-02T01:35:36.387Z","8.1.14-renovate-external-non-major-6ba3de71b96c213d3d2b1eaa7cb0ac070b69bc2f":"2021-10-02T01:35:45.034Z","8.1.14":"2021-10-02T01:41:22.234Z","8.1.15-renovate-external-non-major-7c3a64b5921373a34e1b645b6bac054a37758504":"2021-10-02T01:45:27.852Z","8.1.15-renovate-internal-patch-b04698aa6a857eee123aa57c4a855b43833f9e45":"2021-10-02T01:50:02.354Z","8.1.15":"2021-10-02T01:51:19.529Z","8.1.16-renovate-internal-patch-0c5ca65708b277826ae49df521057b2ec7749e6c":"2021-10-02T01:55:06.738Z","8.1.16":"2021-10-02T02:00:17.593Z","8.1.17-renovate-internal-patch-78fe1cbe42f1ab6f60f60fc659e12dab5fc19df7":"2021-10-02T03:41:51.652Z","8.1.17":"2021-10-02T03:45:26.648Z","8.1.18-renovate-external-non-major-042532947eb5a346810e72d2119904fd2db81916":"2021-10-02T19:17:59.924Z","8.1.18-renovate-internal-patch-bac967c69bc9b3555bb0ab5a09668f84edeb2133":"2021-10-02T19:18:38.355Z","8.1.18":"2021-10-02T19:21:20.925Z","8.1.19-renovate-internal-patch-dc213f6865dcd5f304d49a281d0e12ce18d37372":"2021-10-02T19:25:38.347Z","8.1.19":"2021-10-02T19:31:50.908Z","8.1.20-renovate-internal-patch-ddb38fa63267144c6512ea0d2d4661832005ee37":"2021-10-02T21:01:04.462Z","8.1.20":"2021-10-02T21:04:09.443Z","8.1.21-renovate-internal-patch-edca179cf2790b6e16a3ebfc1655a5d23959a674":"2021-10-02T21:58:36.296Z","8.1.21":"2021-10-02T22:02:39.168Z","8.1.22-renovate-balena-jellyfish-config-1-x-ea03332f81ab29186e1ce899397708a4c61de7bd":"2021-10-03T09:13:55.873Z","8.1.22":"2021-10-03T09:17:38.031Z","8.1.23-renovate-internal-patch-ce129789da4ff2bd67954ef331701134d7c1ffb1":"2021-10-03T11:43:02.676Z","8.1.23":"2021-10-03T11:47:09.957Z","8.1.24-repo-sync-jellyfish-config-default-0e8c7c71ef0f08cfb22767935eaa2ae15999c227":"2021-10-04T04:29:46.265Z","8.1.24-repo-sync-jellyfish-config-default-09b347193cc2f796dd08603ec1db01399215b5e2":"2021-10-05T00:13:42.596Z","8.1.24":"2021-10-05T00:19:06.416Z","8.1.25-joshbwlng-more-options-9b7312b174a0efbb4c18e40086896d7c8eb61a42":"2021-10-05T01:46:43.348Z","8.1.25":"2021-10-05T02:30:08.332Z","8.1.26-renovate-internal-patch-4d0a7d7456a987f6c787a7e5623c91807f288103":"2021-10-20T06:42:48.442Z","8.1.26-renovate-balena-jellyfish-core-7-x-3ae03e47dd7054ef498ba6dd5812f6696e78c3f2":"2021-10-20T06:43:40.140Z","8.1.26":"2021-10-20T06:47:48.096Z","8.1.27-renovate-balena-jellyfish-core-6-x-f0a3ea0e865467c9a7ff9f04bfbd1682103357e9":"2021-10-20T06:51:48.184Z","8.1.27-renovate-balena-jellyfish-core-7-x-cc62d4489a7f43dd95c57fac5ca31dc698be52f1":"2021-10-20T06:55:09.597Z","8.1.27":"2021-10-20T06:58:20.114Z","8.1.28-renovate-balena-jellyfish-core-7-x-06e13cb38b995d7bb18980a4e46de0afed1a7071":"2021-10-20T07:02:46.547Z","8.1.28-renovate-balena-jellyfish-core-7-x-accfc95e9d28109ff3ae64fc65ea6693394ef3a3":"2021-10-21T09:08:58.926Z","8.1.28":"2021-10-21T09:13:10.779Z","8.1.28-renovate-internal-patch-bfc5ff8c0a5f1a513107e76176d5e5f2e0801497":"2021-10-21T09:13:59.816Z","8.1.29-renovate-internal-patch-cb38611cb4dc2973efbadee735de971b7b3b165d":"2021-10-21T09:19:03.033Z","8.1.29":"2021-10-21T09:23:05.778Z","8.1.30-renovate-internal-patch-0ff8045c7c6f209dbf45358a24996041b25b0b94":"2021-10-21T23:46:17.441Z","8.1.30":"2021-10-21T23:49:27.632Z","8.1.31-renovate-external-non-major-1fa7be78d6afd5c2e8e0ea5fc72fbfd83b068188":"2021-10-23T00:30:47.493Z","8.1.31-renovate-internal-patch-ef58388b0f16a351f98b823ed85a105299ab37ca":"2021-10-23T00:31:17.191Z","8.1.31":"2021-10-23T00:35:18.653Z","8.1.32-renovate-internal-patch-f5445752aab7aeb34d00e52af448b6a77797d497":"2021-10-23T00:39:59.844Z","8.1.32":"2021-10-23T00:45:29.088Z","8.1.33-renovate-internal-patch-5f93be4c51cc2fa9a5e9ee51a656abe182756e4c":"2021-10-23T02:24:23.928Z","8.1.33":"2021-10-23T02:28:51.993Z","8.1.34-renovate-internal-patch-06d4229c021ec92650351077078631fb2d5459b6":"2021-10-23T02:33:21.673Z","8.1.34-renovate-internal-patch-2ad29e7da992b9076df93e4c31f11a0cf05bd636":"2021-10-23T02:43:15.660Z","8.1.34":"2021-10-23T02:47:24.766Z","8.1.35-renovate-internal-patch-e70e99b747fa8777724b9356ca4c985315c2ee67":"2021-10-23T04:19:46.392Z","8.1.35":"2021-10-23T04:23:30.149Z","8.1.36-renovate-internal-patch-dd15e2ff8b52524c9592250e36f19c32bef15dfb":"2021-10-23T08:03:59.033Z","8.1.36":"2021-10-23T08:09:13.098Z","8.1.37-renovate-internal-patch-b605a89c669afafa885b87bc3bd61c9985f13801":"2021-10-23T09:18:34.304Z","8.1.37":"2021-10-23T09:22:17.480Z","8.1.38-renovate-internal-patch-415abd690682cae5d31992b9a34ced0c3031d59b":"2021-10-23T11:28:54.901Z","8.1.38":"2021-10-23T11:32:40.731Z","8.1.39-renovate-internal-patch-c4af44c9bf1064b5cdfa1317d82c9cfde492967f":"2021-10-23T13:28:35.182Z","8.1.39":"2021-10-23T13:32:34.768Z","8.1.40-renovate-external-non-major-e09f03a64a1c8a253c20ce3f267dcddd5b954a52":"2021-10-23T20:06:49.664Z","8.1.40-renovate-internal-patch-f38141df58ad7b6a6e012d1082b8a600d9373096":"2021-10-23T20:07:16.029Z","8.1.40":"2021-10-23T20:10:19.632Z","8.1.41-renovate-internal-patch-a946865643ab5cb63260a26fe6a3428f5870de81":"2021-10-23T20:15:59.384Z","8.1.41":"2021-10-23T20:21:04.360Z","8.1.42-renovate-internal-patch-3a7d3ce195111c1da944194df3d04453dc861e80":"2021-10-23T22:32:41.777Z","8.1.42":"2021-10-23T22:37:05.393Z","8.1.43-renovate-internal-patch-4ef660d939530ca1a37180c50d56aed8752aac8a":"2021-10-24T00:45:02.095Z","8.1.43":"2021-10-24T00:48:52.998Z","8.1.44-renovate-internal-patch-211ac096a0ecf6704c79501717b737e72f3d2ba5":"2021-10-25T12:33:56.550Z","8.1.44-renovate-internal-patch-54669e3ca01dd897b7ff68e6aae5cb44aeaf8dc1":"2021-10-25T12:39:02.181Z","8.1.44":"2021-10-25T12:43:09.219Z","8.1.45-renovate-internal-patch-04c23fcb8b6535c016d1c47384161a43330bf1fa":"2021-10-28T01:40:09.309Z","8.1.45-renovate-internal-patch-3f7fed18f50c8593344e6f6cca068e0aa40fbe18":"2021-10-28T03:17:20.421Z","8.1.45":"2021-10-28T03:21:05.636Z","8.1.46-renovate-internal-patch-6a606f858496e7991c8a13e72feec235921a3d53":"2021-10-28T10:00:27.809Z","8.1.46":"2021-10-28T10:04:28.262Z","8.1.47-renovate-internal-patch-7020ebbf45a339fbb6bfbdd46f224e869ec37b84":"2021-10-28T13:23:22.174Z","8.1.47":"2021-10-28T13:27:53.564Z","8.1.48-renovate-internal-patch-a47c01822ae1f8d16f2fb4ee1d7398f34c0eda56":"2021-10-28T15:45:37.793Z","8.1.48":"2021-10-28T15:49:42.014Z","8.1.49-renovate-internal-patch-b558b8314e40a80fab3f6ebf878d7fe220d51840":"2021-10-28T17:42:29.798Z","8.1.49":"2021-10-28T17:47:16.260Z","8.1.50-renovate-internal-patch-b66da601e5f218d9d0bf5c89a12de463a490713f":"2021-10-29T16:01:40.629Z","8.1.50":"2021-10-29T16:05:21.983Z","8.1.51-renovate-external-non-major-3b6464109f99be594dffba2629381ac3691f1300":"2021-10-30T01:56:58.491Z","8.1.51-renovate-internal-patch-db17d4a2e43e7c2b017463e482d9f63e3132b472":"2021-10-30T01:57:28.493Z","8.1.51-renovate-internal-patch-3ec741c52357a3b5bbb3dec7405e9e59bd0f66b1":"2021-10-30T05:57:38.780Z","8.1.51-renovate-internal-patch-5cfb9262edbe1c0ca0b9cd4f2d20cf8b1207a813":"2021-10-30T06:03:45.581Z","8.1.51":"2021-10-30T06:07:41.735Z","8.1.52-renovate-external-non-major-3b42b7107ab2402a77903f3d016ac821c277a0e5":"2021-10-30T06:12:24.519Z","8.1.52-renovate-major-external-major-e4cb40e1450acb81f1bdeeea26de82d4704c0101":"2021-10-30T06:13:19.791Z","8.1.52":"2021-10-30T06:18:53.497Z","8.1.53-renovate-major-external-major-e436ff84ae54495b8dfbd8eea25c4fffccf10bce":"2021-10-30T06:22:45.600Z","8.1.53":"2021-10-30T10:08:33.102Z","8.1.54-renovate-internal-patch-31283adf672a8d7247e6f0188447d3e2ddba818c":"2021-10-30T11:06:59.600Z","8.1.54":"2021-10-30T11:10:47.110Z","8.1.55-renovate-internal-patch-04755922e16b4ed0de3639f8a8615f349715d835":"2021-10-30T12:04:38.989Z","8.1.55":"2021-10-30T12:08:11.848Z","8.1.56-renovate-internal-patch-6d66952a9988c54bf88d4a95429f5b0b43407d2a":"2021-10-30T13:52:50.976Z","8.1.56":"2021-10-30T13:56:37.269Z","8.1.57-renovate-internal-patch-2e8ea142679f83bab35070d85e62277e9acb4af9":"2021-10-31T22:36:32.331Z","8.1.57":"2021-10-31T22:40:03.930Z","8.1.58-renovate-internal-patch-c33b9874c74abbc07a4fe9575315306681880d53":"2021-11-03T11:35:10.720Z","8.1.58":"2021-11-03T11:39:40.552Z","8.1.59-renovate-internal-patch-afe5f1bdf5bbbf12ef007f9c1ec6d29253c64795":"2021-11-05T04:46:28.205Z","8.1.59":"2021-11-05T04:49:21.830Z","8.1.60-renovate-internal-patch-712f8192bf58fd46689209503b5432b6c9bbeef8":"2021-11-05T09:05:27.509Z","8.1.60":"2021-11-05T09:08:41.765Z","8.1.61-renovate-balena-jellyfish-core-8-x-24662d7748d5abe3bfde54588f1afe67788bc1e4":"2021-11-05T09:13:35.154Z","8.1.61":"2021-11-05T23:22:57.293Z","8.1.62-renovate-internal-patch-94c8d510036c1df67aa6b6ecf1be76e566744b45":"2021-11-05T23:26:04.009Z","8.1.62":"2021-11-05T23:29:52.838Z","8.1.63-renovate-internal-patch-6c503b06749305b886bba608c938d07d53272255":"2021-11-05T23:33:45.422Z","8.1.63":"2021-11-05T23:39:38.988Z","8.1.64-renovate-internal-patch-a7a4274f0f6796f1cd3c7e0d51a8b3e226a0433f":"2021-11-06T01:32:16.959Z","8.1.64":"2021-11-06T01:35:24.938Z","8.1.65-renovate-internal-patch-85f2ad65aabcb8471f3a58a7b7a78d65e5dcc698":"2021-11-06T04:19:11.345Z","8.1.65-renovate-internal-patch-cc2118c6a7cecba3f3b00b5027c1cd8e58077ca3":"2021-11-06T04:22:40.056Z","8.1.65":"2021-11-06T04:25:22.346Z","8.1.66-renovate-internal-patch-aa44532f4e90db2a0301d7cdefe8bcfdf743fb0d":"2021-11-06T08:26:39.691Z","8.1.66":"2021-11-06T08:30:31.802Z","8.1.67-renovate-internal-patch-d3ed914ad030f0b64b9b0ee50c9a7a00e317841b":"2021-11-06T10:41:11.063Z","8.1.67":"2021-11-06T10:45:19.454Z","8.1.68-renovate-external-non-major-47ca7a889afd0536042dd34ccc4d00838e1bdd21":"2021-11-07T00:58:17.843Z","8.1.68":"2021-11-07T01:03:08.168Z","8.1.69-renovate-internal-patch-da4a38d6f20e0fb430f61567a257484c2a9ff0c6":"2021-11-07T02:35:50.065Z","8.1.69":"2021-11-07T02:42:00.503Z","8.1.70-renovate-internal-patch-d74f093c19ff2a6cda6f7b3116bcafa370947a4a":"2021-11-07T02:49:00.136Z","8.1.70":"2021-11-07T02:53:21.054Z","8.1.71-renovate-internal-patch-79745ce6747d6cc7122533ab1ba42c9a2e1fe6c8":"2021-11-07T02:57:20.315Z","8.1.71":"2021-11-07T03:02:34.796Z","8.1.72-renovate-internal-patch-305f13587ff8bac59eadd55d296997485839be78":"2021-11-07T04:14:43.675Z","8.1.72-renovate-internal-patch-4226664cab27c87196b550db80d5347d84fd6f96":"2021-11-07T04:25:56.812Z","8.1.72":"2021-11-07T04:29:04.277Z","8.1.73-renovate-internal-patch-27e49706e44158b2ec416807f0ab1d3cfaab282d":"2021-11-09T15:23:51.064Z","8.1.73":"2021-11-09T15:28:43.678Z","8.1.74-renovate-internal-patch-fe92b0bb18c087af5e57ecac2386d8dddc19d774":"2021-11-09T18:02:08.218Z","8.1.74":"2021-11-09T18:06:57.220Z","8.1.75-renovate-balena-jellyfish-environment-5-x-0eb0b3f8d9655a049d1f5558353391b0a60e7c9d":"2021-11-10T23:13:43.222Z","8.1.75":"2021-11-10T23:17:54.495Z","8.1.76-renovate-internal-patch-603644619acd7f128568dda40f53a3b19613734d":"2021-11-10T23:23:42.953Z","8.1.76":"2021-11-10T23:26:58.829Z","8.1.77-renovate-internal-patch-51fdf1f8556dc4520411c685eafd4e549a6fa39f":"2021-11-11T01:29:58.970Z","8.1.77":"2021-11-11T01:33:56.886Z","8.1.78-renovate-internal-patch-d3e3613d5121863d164e828fc1d246e817c3e99f":"2021-11-11T03:34:33.023Z","8.1.78":"2021-11-11T03:38:27.270Z","8.1.79-renovate-internal-patch-3aa1c549628f33f1d6c08e0ea6cf90aa437bcee4":"2021-11-11T09:42:23.581Z","8.1.79":"2021-11-11T09:46:33.730Z","8.1.80-renovate-internal-patch-a9dee310af4141a72f0ba67f6c708e2b0668600b":"2021-11-12T02:09:08.406Z","8.1.80":"2021-11-12T02:11:58.181Z","8.1.81-renovate-internal-patch-1bfca58b990582eefe009826fa0ec5d5f3dc1341":"2021-11-12T05:15:18.230Z","8.1.81":"2021-11-12T05:19:28.993Z","8.1.82-renovate-internal-patch-20d72c8b0ca6cb91cdbff1392d34571dc68533d5":"2021-11-12T10:26:21.709Z","8.1.82":"2021-11-12T10:28:55.510Z","8.1.83-renovate-external-non-major-8c0418dc73160881a9bc8d0133bcc3924065bcda":"2021-11-13T00:20:10.570Z","8.1.83":"2021-11-13T00:23:49.328Z","8.1.84-renovate-internal-patch-eb6d2c24dc18f15c5c777dac1259c092ddb678de":"2021-11-13T02:24:48.487Z","8.1.84":"2021-11-13T02:28:31.373Z","8.1.85-renovate-internal-patch-7c4f3ae24acc37a8087cd3cb0843e560c779930d":"2021-11-13T02:31:01.660Z","8.1.85":"2021-11-13T02:37:06.355Z","8.1.85-renovate-internal-patch-bffcb8534526994c8dc17cdcee8c1b35bc0f9b9c":"2021-11-13T02:39:21.795Z","8.1.86-renovate-internal-patch-05227345dbc1cb7c92593db2c3327854142814d4":"2021-11-13T02:41:36.780Z","8.1.86":"2021-11-13T02:45:27.231Z","8.1.87-renovate-internal-patch-06daa97fc20bae655fcaa75611f5f0b964513635":"2021-11-13T02:51:33.886Z","8.1.87":"2021-11-13T02:55:38.266Z","8.1.88-renovate-internal-patch-0624a148b7571d3451c23dfaeec643d8d8f23ea1":"2021-11-13T04:57:05.217Z","8.1.88":"2021-11-13T05:01:35.854Z","8.1.89-renovate-internal-patch-9d0fd370da430b96568b6151e41f48ed2feb884d":"2021-11-13T09:02:53.640Z","8.1.89":"2021-11-13T09:06:15.065Z","8.1.90-renovate-internal-patch-7c6c5324902b2f500d0a2fb24ec6c0d975eecea9":"2021-11-13T11:09:27.181Z","8.1.90":"2021-11-13T11:12:40.852Z","8.1.91-renovate-internal-patch-65c6127848583ac3d99a3e3fa7db4d792285e4b0":"2021-11-13T11:15:44.349Z","8.1.91":"2021-11-13T11:22:47.767Z","8.1.92-renovate-internal-patch-2014d9acad3d6934208fc62c63e690488a935e90":"2021-11-13T13:53:21.453Z","8.1.92":"2021-11-13T13:57:05.965Z","8.1.93-renovate-major-external-major-d9509a7b29a4fb830bf1d77f9e25efacf70668ef":"2021-11-14T12:16:50.777Z","8.1.93-renovate-internal-patch-f23d2d9a6eb446c5fc86eb3d1521a3e80b8bfc2d":"2021-11-14T16:45:13.117Z","8.1.93":"2021-11-14T16:48:50.185Z","8.1.93-renovate-major-external-major-13376fe1f239e4fee7adabda43e223d46d34afb9":"2021-11-14T16:51:14.474Z","8.1.94-renovate-major-external-major-310efdbfc38d91d95e065257ed1688be5911835f":"2021-11-14T16:53:59.711Z","8.1.94-renovate-internal-patch-5d5b0b1703e6214298771b874f0bed4d3c4c5678":"2021-11-14T16:57:29.137Z","8.1.94":"2021-11-14T17:01:06.347Z","8.1.94-renovate-major-external-major-b114d33c7d9f40925195951703d7f53c7b6ba93e":"2021-11-14T17:03:20.581Z","8.1.95-renovate-major-external-major-79b6f7942f73d214138cdd21f3affbadc58b505c":"2021-11-14T17:05:36.761Z","8.1.95-renovate-external-non-major-6b8556fadebd181848f332806fc79d92631febed":"2021-11-14T23:32:26.709Z","8.1.95-renovate-internal-patch-4ebb6ab555882de0990d0d30d3311eaedbc22b6b":"2021-11-14T23:32:39.796Z","8.1.95":"2021-11-14T23:35:47.501Z","8.1.96-renovate-major-external-major-f7edea66fbc63a90f79fbe99dd94a62dd863bc9a":"2021-11-14T23:39:43.296Z","8.1.96-renovate-internal-patch-9a461b43916f38bb6fe72ac5140f35c217893553":"2021-11-15T02:43:58.253Z","8.1.96":"2021-11-15T02:46:36.752Z","8.1.97-renovate-major-external-major-a26ba42d625c2f71ae9c07dbba74676a3bebcdf4":"2021-11-15T02:51:28.805Z","8.1.97":"2021-11-15T03:20:47.493Z","8.1.98-renovate-internal-patch-3b85f051210f79f7312a06c13d3d12d9e158b722":"2021-11-15T03:27:08.701Z","8.1.98":"2021-11-15T03:30:47.326Z","8.1.99-renovate-internal-patch-d6804aa139553c5e515801293c38a5265ca825c4":"2021-11-15T05:51:22.158Z","8.1.99":"2021-11-15T05:54:09.501Z","8.1.100-renovate-internal-patch-916548533cfa6900233434de68e8c36dbd017c8f":"2021-11-15T10:19:09.148Z","8.1.100":"2021-11-15T10:22:47.206Z","8.1.101-renovate-internal-patch-d438349a50ff6e925d2df96fe7848adaba91a01d":"2021-11-15T12:35:16.960Z","8.1.101":"2021-11-15T12:39:00.367Z","8.1.102-renovate-internal-patch-af12bfc007e1a68611f1bbab36b57a5b38843a53":"2021-11-15T15:04:12.846Z","8.1.102":"2021-11-15T15:07:46.181Z","8.1.103-renovate-internal-patch-72259ddb9615d3e61a7df93c9e1adb78aa10a3a9":"2021-11-16T00:04:36.057Z","8.1.103":"2021-11-16T00:08:34.661Z","8.1.104-repo-sync-jellyfish-config-default-87601b9b091a09f29e584fc17e70f227d3a638e1":"2021-11-16T01:58:13.218Z","8.1.104-renovate-internal-patch-dc7bb55c9cef65a53e1f0f07510cf77b3bab6f9b":"2021-11-16T02:24:27.712Z","8.1.104":"2021-11-16T02:29:18.164Z","8.1.105-renovate-internal-patch-f000a5750bdc0da5c85f9af407a54aef1b631856":"2021-11-16T04:49:13.667Z","8.1.105":"2021-11-16T04:51:55.869Z","8.1.106-repo-sync-jellyfish-config-default-765461771440e90c96e58ed7a68d67d81d0370c2":"2021-11-16T05:47:46.515Z","8.1.106":"2021-11-16T05:51:30.348Z","8.1.107-renovate-internal-patch-9f8f17de13de389486ab57afb87773110e8adfba":"2021-11-16T05:56:39.212Z","8.1.107":"2021-11-16T05:59:33.891Z","8.1.108-joshbwlng-set-license-9d521d65aae636d9664177eb8e7b96a554e6b975":"2021-11-16T07:22:41.108Z","8.1.108":"2021-11-16T07:25:24.845Z","8.1.109-renovate-internal-patch-67288cf22cf7e434ed6b28b3894942aa6d811ed7":"2021-11-16T10:44:16.999Z","8.1.109":"2021-11-16T10:48:02.988Z","8.1.110-renovate-internal-patch-b6ba2952161d923de951c3aa9f14f13ad273b729":"2021-11-17T01:08:50.508Z","8.1.110":"2021-11-17T01:12:15.470Z","8.1.111-renovate-internal-patch-1f130968fd2812d56d327b173b3362842dc16162":"2021-11-17T03:41:32.733Z","8.1.111":"2021-11-17T03:45:46.585Z","8.1.112-renovate-internal-patch-70942204ec340c17933aa188345ac048876ee620":"2021-11-17T10:07:28.521Z","8.1.112":"2021-11-17T10:11:13.842Z","8.1.113-renovate-internal-patch-0ee9d6e242f1d74debe5c7e8096722b83e8cd2d6":"2021-11-18T08:30:43.905Z","8.1.113":"2021-11-18T08:34:22.986Z","8.1.114-renovate-internal-patch-0dcdfcdc900987dbf13bf9fc8c358fcdc77d9e45":"2021-11-19T10:44:59.906Z","8.1.114":"2021-11-19T10:48:34.096Z","8.1.115-renovate-internal-patch-80ae92c7c29cc446f1d73f5a28f832501e8ed588":"2021-11-19T12:21:44.817Z","8.1.115":"2021-11-19T12:25:13.185Z","8.1.116-renovate-internal-patch-1ed6d7e02b06d89a7bbd6faaa02183e34b816f73":"2021-11-19T16:37:08.417Z","8.1.116":"2021-11-19T16:40:25.892Z","8.1.117-renovate-balena-jellyfish-core-8-x-751183436d3e5ff720c9e441532bacef12be7ec8":"2021-11-19T21:04:43.149Z","8.1.117-renovate-internal-patch-f8f95c400125ca4dcaa3e9ce521e8956c15c7bc0":"2021-11-19T22:44:58.667Z","8.1.117-renovate-external-non-major-82e6a76d2c48f844c9b2ae08139347c2bba5aa59":"2021-11-20T00:14:14.462Z","8.1.117-renovate-balena-jellycheck-1-x-dd5fb5c10a8e99c292585c0c3da49138fcb11058":"2021-11-20T02:25:57.754Z","8.1.117-renovate-internal-patch-30f92d9ecabf14dfa814f10403d116485968be42":"2021-11-20T08:59:26.552Z","8.1.117":"2021-11-20T09:02:49.664Z","8.1.118-renovate-external-non-major-1b732ec4894928ea2fff35462c288fbeb964024f":"2021-11-20T09:05:55.755Z","8.1.118-renovate-internal-patch-89378911817d48f8197f8ed92eb979290bb3f51c":"2021-11-20T12:18:43.044Z","8.1.118-renovate-external-non-major-84562357f2424ba4a1e5a4589d81f98682261ffb":"2021-11-20T12:24:06.760Z","8.1.118-renovate-internal-patch-68332344f12084089dd1cf76d9c9e62ca66f10d5":"2021-11-20T17:10:58.103Z","8.1.118-renovate-external-non-major-d3c93d5167bdf75565c2d38b35d9f0b7e46876b5":"2021-11-20T17:16:31.176Z","8.1.118":"2021-11-20T23:57:51.103Z","8.1.119-joshbwlng-remove-license-headers-dedd05caf5a7207e711975f348ccdb96024a97ca":"2021-11-21T00:07:48.168Z","8.1.119":"2021-11-21T00:11:01.913Z","8.1.120-renovate-internal-patch-9eece54ed32649d9480639646b2fd03cae96a954":"2021-11-21T16:56:51.848Z","8.1.120-renovate-external-non-major-91a8c44621b8b871c193e13ad7206055f4e0ea9d":"2021-11-21T17:02:08.040Z","8.1.120-renovate-internal-patch-48ea7b9fd12fe41807a8ce971ecc6baced23e576":"2021-11-21T22:27:35.518Z","8.1.120":"2021-11-21T22:31:31.168Z","8.1.120-renovate-external-non-major-1be636f9bf86e8a673542cde40cd79bbd45a17b0":"2021-11-21T22:33:07.171Z","8.1.121-renovate-external-non-major-5cd9ca80695d44b77b40b8f7a7bad0d073bc8ef1":"2021-11-21T22:35:27.707Z","8.1.121-renovate-internal-patch-30d1cd0c47c81ae0af6485d0780a657ea5a5bd77":"2021-11-22T02:17:31.828Z","8.1.121":"2021-11-22T02:21:12.861Z","8.1.122-renovate-internal-patch-6e6ae2232611ffebb2a69d1381c709344ee89514":"2021-11-22T02:24:34.365Z","8.1.122-renovate-external-non-major-9d37ad0a0722598a50313c4fa658991119c83678":"2021-11-22T02:27:12.363Z","8.1.122":"2021-11-22T02:29:07.204Z","8.1.122-renovate-external-non-major-8231f455242a9fd04b7202d974987ffdc8063713":"2021-11-22T02:31:27.240Z","8.1.123-renovate-external-non-major-e726a63e8bdd68c1a8176746c21dcb591527b961":"2021-11-22T02:35:21.002Z","8.1.123-renovate-internal-patch-b1b25f89fa0fe4747373e81e4d0683cc3a92d091":"2021-11-22T06:28:02.929Z","8.1.123-renovate-external-non-major-59988fb2c0732b313984c18518414602519af234":"2021-11-22T06:33:43.003Z","8.1.123-renovate-external-non-major-847d47b2e2f9046fc97d0f52e323d40783e5186d":"2021-11-22T10:56:54.697Z","8.1.123-renovate-internal-patch-397b0ca020208cc50e95c1740c5ef428353d858e":"2021-11-22T15:32:50.348Z","8.1.123":"2021-11-22T15:36:27.825Z","8.1.124-renovate-external-non-major-f46e4c793f36d41adec711e1f1390b9fc288d385":"2021-11-22T15:39:35.761Z","8.1.124-joshbwlng-bump-deps-b293b0077a95ac51511f1b579f960eeac4ecfdfc":"2021-11-23T01:35:03.761Z","8.1.124":"2021-11-23T01:39:42.569Z","8.1.125-renovate-internal-patch-868430e2262885d601ca11060b67bc61ab91ed03":"2021-11-23T01:42:46.590Z","8.1.125-renovate-external-non-major-7e588c3c02249482eec2531387630750e783c237":"2021-11-23T01:44:22.684Z","8.1.125-renovate-typescript-4-x-06c7381fde53447c020ec6bbd5a3e1afc7c3b8e9":"2021-11-23T03:06:26.937Z","8.1.125-renovate-internal-patch-47513feea0f7b86b6eecb2edc0991cfe2a4e15ec":"2021-11-23T03:06:49.267Z","8.1.125":"2021-11-23T03:10:59.655Z","8.1.126-renovate-typescript-4-x-bbd0af1888850ce9a66cfaf9532e3558c92edd3a":"2021-11-23T03:15:56.771Z","8.1.126-renovate-internal-patch-ce99e5f6a202251386ee02240a84b5fd3aae9e11":"2021-11-23T05:20:02.624Z","8.1.126":"2021-11-23T05:23:16.876Z","8.1.127-renovate-typescript-4-x-605fc171821e6f853bc543ed66e33e138f3f92a9":"2021-11-23T05:26:12.187Z","8.1.127-renovate-internal-patch-add8a2a6cd444da82dece3def2fa0cb44c06c54d":"2021-11-23T09:20:14.418Z","8.1.127":"2021-11-23T09:24:28.102Z","8.1.127-renovate-typescript-4-x-0455710c4126a124c501e681431ecbe894399263":"2021-11-23T09:26:11.730Z","8.1.128-renovate-typescript-4-x-cb5ec2c910849b55b4f3a109edc78216dc0239fd":"2021-11-23T09:28:41.645Z","8.1.128-renovate-external-non-major-da190c5897b76f123a8618b81e5fe226d5e05acc":"2021-11-23T20:13:13.460Z","8.1.128":"2021-11-23T20:16:03.258Z","8.1.129-renovate-typescript-4-x-9ac69caee7ea34fb55c442f1eed363e6ba326448":"2021-11-23T20:18:59.878Z","8.1.129-renovate-internal-patch-9962a9382b929e268efe21303760f6573d7e2ebc":"2021-11-24T01:11:35.206Z","8.1.129":"2021-11-24T01:16:50.222Z","8.1.129-renovate-typescript-4-x-26c598d106ca9ce9c0f46a7e1ad43207d09b4603":"2021-11-24T01:18:00.832Z","8.1.130-renovate-typescript-4-x-8e3eaa202d992433c31ed27382915ad374e66d8c":"2021-11-24T01:21:53.726Z","8.1.130-repo-sync-jellyfish-config-default-666c4dc45591d6e87dcb83cfc6945228b0b878cc":"2021-11-24T03:10:40.654Z","8.1.130-renovate-internal-patch-dcf96bcb0089e4e32ddd9c0b636e73babf811d53":"2021-11-24T03:28:12.387Z","8.1.130":"2021-11-24T03:31:28.057Z","8.1.131-renovate-typescript-4-x-ccc13ac39c779993fc657b4b70ee0622768e5995":"2021-11-24T03:35:07.046Z","8.1.131-renovate-internal-patch-76ce03957370abec285cd823088ca6149983e64b":"2021-11-24T05:09:29.106Z","8.1.131":"2021-11-24T05:13:06.337Z","8.1.132-renovate-typescript-4-x-6fc39dab6cc6a6f09274206eb6918ea2c217a678":"2021-11-24T05:17:25.140Z","8.1.132-repo-sync-jellyfish-config-default-f94f85837147a576fe8fe0eb234804469f15a4e8":"2021-11-24T06:16:29.234Z","8.1.132":"2021-11-24T06:19:50.229Z","8.1.133-renovate-typescript-4-x-43c70ae9b74dfd81c5edd42234de0ff466085365":"2021-11-24T06:25:15.112Z","8.1.133-renovate-internal-patch-cf8751be8a85c7958bf2331a5f76e6f2b9091a2c":"2021-11-24T09:29:03.634Z","8.1.133":"2021-11-24T09:32:46.863Z","8.1.134-renovate-typescript-4-x-5c8ed88a3c1f8dc177de456e8dca419fceffea4f":"2021-11-24T09:36:54.622Z","8.1.134-renovate-internal-patch-8f6566b9531fed5ff12300ec040e82a852146bd6":"2021-11-24T11:05:19.169Z","8.1.134":"2021-11-24T11:09:20.999Z","8.1.134-renovate-typescript-4-x-67ba263ccdfff8b56e537606441097370090610e":"2021-11-24T11:11:09.568Z","8.1.135-renovate-typescript-4-x-47e6b76a69e5127e36e5e0c2610e42e98958a794":"2021-11-24T11:13:30.116Z","8.1.135-renovate-internal-patch-d76a823a7221d2eb35ee17ac1132bb0ebdf29da9":"2021-11-24T15:08:32.735Z","8.1.135":"2021-11-24T15:12:39.726Z","8.1.136-renovate-typescript-4-x-cee9cd90d5a7c984e6913b60566af6b95caa463f":"2021-11-24T15:16:13.120Z","8.1.136-renovate-internal-patch-68178e1a640fe2132adc9d827398da1ad5f382a5":"2021-11-24T17:43:38.022Z","8.1.136":"2021-11-24T17:47:14.459Z","8.1.137-renovate-typescript-4-x-ad31d0d49f753597a28ee8a567dca33afa7467d9":"2021-11-24T17:49:48.372Z","8.1.137-joshbwlng-remove-jellycheck-2ea669c8cf832c852dd92ca5c1a582fcccfed34f":"2021-11-25T02:44:19.058Z","8.1.137":"2021-11-25T02:48:08.387Z","8.1.138-renovate-internal-patch-28f0102c9529c989b1322173b1fee72b628c8487":"2021-11-25T08:18:09.351Z","8.1.138-renovate-internal-patch-218b8e6fc4f81661f695645539e64797a4920065":"2021-11-25T08:23:47.348Z","8.1.138":"2021-11-25T08:27:33.803Z","8.1.139-renovate-typescript-4-x-7b30a040c6446c43fa84434d89f796aef74e89e0":"2021-11-25T08:30:19.327Z","8.1.139-renovate-internal-patch-370b2b2236a5e9d9fe5e6eacd2b2693ada5f64c9":"2021-11-25T08:38:53.301Z","8.1.139":"2021-11-25T08:42:08.298Z","8.1.140-renovate-typescript-4-x-5ad5106ebef04cbabccd3bd53785b99ba70c1bb2":"2021-11-25T08:45:48.392Z","8.1.140-renovate-internal-patch-1a0d04aaea2d383d61b8be953d4be6a9dc65713d":"2021-11-25T10:54:09.214Z","8.1.140-renovate-typescript-4-x-d386feab28aa2367d91c9d8d75e8eaa1099d502f":"2021-11-25T11:02:08.522Z","8.1.140-renovate-internal-patch-9bd0c12b430ec08d8ff48a67dcf87e77868aadcf":"2021-11-25T16:34:23.711Z","8.1.140":"2021-11-25T16:39:47.760Z","8.1.140-renovate-typescript-4-x-5f1966466fe7ba648d242a402d898856187908cb":"2021-11-25T16:42:10.690Z","8.1.141-renovate-typescript-4-x-c8971c70e278ee066af08c8c50afababae9b6662":"2021-11-25T16:45:40.776Z","8.1.141":"2021-11-26T01:12:26.069Z","8.1.142-joshbwlng-use-renovate-config-2adcfdf509fbaa001c852475b2954ee0b908f052":"2021-11-26T05:12:26.084Z","8.1.142-renovate-internal-patch-4d0b5e43ee9a47005081a593cc1a937f2b0a5f54":"2021-11-26T10:16:44.315Z","8.1.142":"2021-11-26T10:20:53.120Z","8.1.143-renovate-balena-jellyfish-config-2-x-20913c87c79a81f0d16c0df45d1acefc57eff646":"2021-11-26T10:23:45.360Z","8.1.143-renovate-internal-patch-f221673a83177767190b0a835f121370aaf92ad9":"2021-11-26T17:17:13.764Z","8.1.143":"2021-11-26T17:21:10.278Z","8.1.144-renovate-balena-lint-6-x-50e866882b6bc6c2abfa8f2795da052f8d6afc4c":"2021-11-26T17:25:17.598Z","8.1.144":"2021-11-26T17:31:30.657Z","8.1.145-renovate-balena-jellyfish-config-2-x-d5a9f63e9f2f8245f780c059fe8c29e9d8f79d27":"2021-11-26T17:34:30.593Z","8.1.145-renovate-internal-patch-4e56258efd79cf3b2feb79054a993c99f9306d08":"2021-11-26T20:31:23.762Z","8.1.145":"2021-11-26T20:35:22.402Z","8.1.145-renovate-balena-jellyfish-config-2-x-f905e25b619860ac1a5a6c03db63437fa67ea3b9":"2021-11-26T20:39:02.927Z","8.1.146-renovate-balena-jellyfish-config-2-x-7c4c4dbd28dab9ee9d21a5623b982628a970cc59":"2021-11-26T20:40:39.156Z","8.1.146-renovate-internal-patch-cadfb9f4f4fdeeddfb67855390c586bd98f80742":"2021-11-26T23:18:33.214Z","8.1.146":"2021-11-26T23:22:03.986Z","8.1.147-renovate-balena-jellyfish-config-2-x-e860a0df88320f97f8497a4b95c910319ea0ef76":"2021-11-26T23:27:31.554Z","8.1.147-renovate-internal-patch-5d4e3c0a4722b74d1524f585f2d7109efe81415a":"2021-11-27T01:47:41.525Z","8.1.147":"2021-11-27T01:51:24.123Z","8.1.148-renovate-external-non-major-71007b78501f3ae1f7b367245e481d09e545fdd6":"2021-11-27T01:56:38.576Z","8.1.148-renovate-balena-jellyfish-config-2-x-178bf3510e3f581405a438e6f88c88cb722d3613":"2021-11-27T01:57:48.088Z","8.1.148-renovate-internal-patch-74368ede1b9f44302b344ee390f87642980e7120":"2021-11-27T02:03:41.880Z","8.1.148":"2021-11-27T02:08:43.989Z","8.1.149-renovate-balena-jellyfish-config-2-x-bb5660c157a136b8abb2f7719df58a8d8135d95d":"2021-11-27T02:13:06.164Z","8.1.149-renovate-external-non-major-5fb9eef15737fab5aa4b4e2da2cdacaa7a0fd008":"2021-11-27T02:15:00.781Z","8.1.149":"2021-11-27T02:19:11.244Z","8.1.149-renovate-balena-jellyfish-config-2-x-b12a79842ee7ad4e7802152fa8908c513231ba2e":"2021-11-27T02:22:24.238Z","8.1.150-renovate-internal-patch-58c086b2a1491fb3b017b782f66767519036e0de":"2021-11-27T04:56:05.334Z","8.1.150":"2021-11-27T04:59:29.299Z","8.1.151-renovate-balena-jellyfish-config-2-x-233da244ed512ee75db2b6dcb90579d6882d5732":"2021-11-27T05:05:04.867Z","8.1.151":"2021-11-27T14:45:07.879Z","8.1.152-renovate-internal-patch-9ec39ff510416e910789236963224a2165ebd32b":"2021-11-27T18:21:24.109Z","8.1.152":"2021-11-27T18:26:20.285Z","8.1.153-renovate-internal-patch-8aae5ea485aec665e719b845988caa35ac00a7e2":"2021-11-27T23:29:25.075Z","8.1.153":"2021-11-27T23:33:01.784Z","8.1.154-renovate-internal-patch-6bc5c15e26b649a130b4ac1f98f97ca1136a3277":"2021-11-29T04:16:48.415Z","8.1.154":"2021-11-29T04:21:01.086Z","8.1.155-renovate-internal-patch-6abe0ff0eae4d864f3f035668703f9e77bb5ed24":"2021-11-29T08:40:59.221Z","8.1.155-renovate-internal-patch-4daed099c112bb1365a5ef258fe0e7747c648dab":"2021-11-29T08:44:34.322Z","8.1.155":"2021-11-29T08:48:19.408Z","8.1.156-renovate-internal-patch-e57a12fd662a97520199f09d382da2ba620b6c1a":"2021-11-29T09:58:18.542Z","8.1.156":"2021-11-29T10:01:57.981Z","8.1.157-renovate-internal-patch-e8fa7f3026b362c43a12b143c40ad1baf7f0974e":"2021-11-29T14:24:55.135Z","8.1.157":"2021-11-29T14:28:45.164Z","8.1.158-renovate-internal-patch-94b2a09fef21b16d456032083d73d5f4dcbe5c22":"2021-11-29T16:57:44.765Z","8.1.158":"2021-11-29T17:01:51.738Z","8.1.159-renovate-internal-patch-fb53312e6de9d9103e9d1a02663dfe97dee9b0a4":"2021-12-01T10:27:35.477Z","8.1.159":"2021-12-01T10:32:36.744Z","8.1.160-renovate-balena-jellyfish-environment-5-x-efaf0cb595085ae7ef285ca7bf448f2d42cd6f17":"2021-12-01T10:35:24.534Z","8.1.159-renovate-internal-patch-bf78144914fb2333d0b2f9ba478b338343aff32c":"2021-12-01T10:35:58.039Z","8.1.160":"2021-12-01T10:42:44.113Z","8.1.161-renovate-internal-patch-d6555c929c96788958ddf764781ac1616679398f":"2021-12-01T10:46:21.587Z","8.1.161-renovate-internal-patch-4317345f4b73e13482b2544eaee9f582232af41c":"2021-12-01T10:48:02.878Z","8.1.161":"2021-12-01T10:53:41.469Z","8.1.162-renovate-internal-patch-937b66873599bbf5e474180a7aba0b6706d56b02":"2021-12-01T12:47:28.890Z","8.1.162":"2021-12-01T12:51:29.343Z","8.1.163-renovate-internal-patch-7980691127f569d543121235b7f50ccfd24bf088":"2021-12-01T15:09:39.686Z","8.1.163":"2021-12-01T15:13:18.831Z","8.1.164-renovate-internal-patch-a5606a13e33592bf0197ee25166cbba11dacf0dd":"2021-12-02T10:21:00.827Z","8.1.164":"2021-12-02T10:24:54.377Z","8.1.165-renovate-internal-patch-609ee60aa19ec5e798caa71c347e74cf2f418e17":"2021-12-02T10:31:44.387Z","8.1.165":"2021-12-02T10:34:46.331Z","8.1.166-renovate-internal-patch-20b6cce1db855a07bd025eecbb5953944b62b043":"2021-12-03T09:44:21.817Z","8.1.166":"2021-12-03T09:47:15.591Z","8.1.167-renovate-external-non-major-757179b7d53d1ee79487d658e2db9df79ce195ae":"2021-12-04T01:21:14.292Z","8.1.167":"2021-12-04T01:25:39.257Z","8.1.167-renovate-internal-patch-c2be726e1bb2a41ba758b0912d87dd453ef632f4":"2021-12-04T01:27:56.025Z","8.1.168-renovate-internal-patch-3ae23ec40dac02b24579b5e92b35602e514b9dd6":"2021-12-04T01:31:25.336Z","8.1.168-renovate-internal-patch-1a8f6e75323f87b2a25afafa9caacff680ee998b":"2021-12-04T01:36:27.596Z","8.1.168-renovate-internal-patch-2dd4bae67e3dafc967101b053067df1d18929f10":"2021-12-04T02:38:05.772Z","8.1.168":"2021-12-04T02:41:48.368Z","8.1.169-renovate-internal-patch-dd1a66f22bf52e9982cb7de814884254b4e86368":"2021-12-04T18:18:57.544Z","8.1.169":"2021-12-04T18:24:08.703Z","8.1.169-renovate-internal-patch-6f19d0bdffdb4aecbc53077f59e13a4e136e9a4a":"2021-12-04T18:26:17.938Z","8.1.170-renovate-internal-patch-9069940a5133e3be604aa34364e0a05e09afc4f8":"2021-12-04T18:29:56.582Z","8.1.170":"2021-12-04T18:34:08.083Z","8.1.171-renovate-internal-patch-bc02e5d1493c4105c01ab389bddb4ed541cb219c":"2021-12-04T21:09:10.538Z","8.1.171":"2021-12-04T21:12:51.534Z","8.1.172-renovate-internal-patch-090af89b3932dc0a563bd6c492205162d8c7005c":"2021-12-04T23:52:11.706Z","8.1.172":"2021-12-04T23:56:05.263Z","8.1.173-renovate-internal-patch-e674ec8bcff155121451dab43564bdb2636387c2":"2021-12-05T01:50:03.201Z","8.1.173":"2021-12-05T01:53:47.834Z","8.1.174-renovate-internal-patch-9171fa713f3d2aa1515afd96443bbae221628ce3":"2021-12-05T12:34:51.428Z","8.1.174-renovate-internal-patch-a9d6480e983c0e50519bb97515c73640ad811955":"2021-12-05T12:39:43.755Z","8.1.174-renovate-internal-patch-434feb55002987337556845fc6c56968fbb4b3ff":"2021-12-05T17:26:04.513Z","8.1.174":"2021-12-05T17:29:36.852Z","8.1.175-renovate-external-non-major-26e16c7759ed74535f2c8d47d7b22bb5df101c60":"2021-12-05T17:32:41.015Z","8.1.175-renovate-internal-patch-a2201078d65fe69990ebd209919b758bc05d679d":"2021-12-05T17:38:10.973Z","8.1.175":"2021-12-05T17:39:17.932Z","8.1.176-renovate-internal-patch-b649c632b98689a8c9e0fa50c73f1f058e004b01":"2021-12-05T17:45:12.623Z","8.1.176":"2021-12-05T17:49:38.145Z","8.1.177-renovate-internal-patch-3d65c57c771006e4ff5299eb1fcf9ce576ca5873":"2021-12-05T17:55:10.824Z","8.1.177":"2021-12-05T17:58:12.430Z","8.1.178-renovate-internal-patch-c4e6c0b1a83b910638d5c787a440da1e833b670d":"2021-12-05T19:39:43.286Z","8.1.178":"2021-12-05T19:43:29.082Z","8.1.179-renovate-internal-patch-5bb1169b6d88a52a63e62f4113343d04805be8c5":"2021-12-06T01:03:43.460Z","8.1.179":"2021-12-06T01:06:40.254Z","8.1.180-renovate-internal-patch-d84105bd9f471466e339c13b5985467fae845d72":"2021-12-06T03:08:37.764Z","8.1.180":"2021-12-06T03:12:45.369Z","8.1.181-renovate-internal-patch-00cc409a28e1144cb58ed7e141aeaef979d2a31c":"2021-12-07T11:07:42.233Z","8.1.181":"2021-12-07T11:11:51.870Z","8.1.182-renovate-internal-patch-f12e3710dc3ba9eab01f45531498e76126219c26":"2021-12-07T11:14:58.890Z","8.1.182":"2021-12-07T11:20:40.303Z","8.1.183-renovate-internal-patch-03d00070251bbad11d2900116653807136849ab2":"2021-12-07T11:26:44.947Z","8.1.183":"2021-12-07T11:30:19.545Z","8.1.184-renovate-internal-patch-33aa4f34ff4be8b833ac7acfa7f2a54ddf4299df":"2021-12-07T14:03:07.989Z","8.1.184":"2021-12-07T14:08:33.238Z","8.1.185-renovate-balena-jellyfish-worker-10-x-8288c9864accf597187524c839a5d66cd021bcd0":"2021-12-08T09:22:38.664Z","8.1.185":"2021-12-08T09:25:40.964Z","8.1.186-renovate-balena-jellyfish-environment-6-x-a595c22f2fedceec77d196a969008ebcbfa54d27":"2021-12-08T23:58:11.139Z","8.1.186-renovate-typescript-4-x-153580858b3a76154adf24cece4aca567790d7c5":"2021-12-09T22:55:03.636Z","8.1.186":"2021-12-10T02:04:41.564Z","8.1.187-renovate-balena-jellyfish-environment-6-x-4eff1b2a0094697109521104d4a324015ba3854e":"2021-12-10T02:07:48.797Z","8.1.187-joshbwlng-remove-bluebird-0c1f6419117097e8ab363d73483e704a71f69382":"2021-12-10T03:06:38.108Z","8.1.187":"2021-12-10T03:26:57.125Z","8.1.188-renovate-internal-patch-f4ff382447d18f9bfc4e7be3c3910801b453c104":"2021-12-10T03:30:34.033Z","8.1.188-renovate-balena-jellyfish-environment-6-x-3289a7ede882839a98ef491e90136a043e4b35f8":"2021-12-10T03:34:03.558Z","8.1.188-renovate-internal-patch-62e300650abad40e994f9d3ae548e7eb454bd8dd":"2021-12-10T05:47:44.356Z","8.1.188":"2021-12-10T05:51:57.506Z","8.1.189-renovate-balena-jellyfish-environment-6-x-1e1882e5e1bb0dd506916ef7855371f3d2621ac1":"2021-12-10T05:56:37.594Z","8.1.189-renovate-internal-patch-b719b46558e27a6c40ba5b5559f869897f6148bc":"2021-12-10T14:03:16.153Z","8.1.189-renovate-external-non-major-ca057820091f675116f9e131dabc1afb1df5b87a":"2021-12-11T00:22:06.388Z","8.1.189-renovate-internal-patch-a1ac54b0ec8dbbbdf0a6202f5f298d15010f7b66":"2021-12-11T02:11:15.321Z","8.1.189-renovate-balena-jellyfish-environment-6-x-236abbda0117c427a133291cb82a6bde6fc75597":"2021-12-11T02:12:41.564Z","8.1.189":"2021-12-11T02:16:36.178Z","8.1.190-joshbwlng-bump-deps-67b6b28a4bb7896b803423eb326608755fc4e472":"2021-12-11T04:52:41.482Z","8.1.190":"2021-12-11T04:56:42.297Z","8.1.191-renovate-external-non-major-47fbab1b7ec82de3dfccdc4b375b12c7c93d54e7":"2021-12-11T09:30:36.139Z","8.1.191":"2021-12-11T09:34:36.973Z","8.1.192-renovate-internal-patch-9cd53156437ee491fe8fc4a2cffbe47cb5f155e8":"2021-12-11T09:41:58.417Z","8.1.192":"2021-12-11T09:46:11.877Z","8.1.193-renovate-internal-patch-07c36d353adcde7adaa92d1831a6034373b9142e":"2021-12-11T09:52:56.072Z","8.1.193":"2021-12-11T09:56:48.289Z","8.1.194-renovate-internal-patch-6a4e3acc698b4a0027da3ae4e49b723649b9f2b6":"2021-12-12T15:31:01.296Z","8.1.194":"2021-12-12T15:34:56.111Z","8.1.195-renovate-internal-patch-978d7fc99a204a8dfceac8fdeda0c7d1dc5d8d70":"2021-12-13T02:56:53.584Z","8.1.195":"2021-12-13T03:00:52.552Z","8.1.196-joshbwlng-drop-depcheck-b5561b39d135fc52eb7ff069649241a2c6ad528c":"2021-12-14T02:57:28.079Z","8.1.196":"2021-12-14T03:01:20.309Z","8.1.197-renovate-internal-patch-cb8c481dce22e656b95075f7dd1bb938d5bbdcdd":"2021-12-14T12:49:34.187Z","8.1.197":"2021-12-14T12:52:39.801Z","8.1.198-renovate-balena-jellyfish-plugin-base-2-x-b92b6662b4344180867e0afb01e824a6bf5f4c27":"2021-12-14T16:42:41.229Z","8.1.198":"2021-12-14T16:46:39.209Z","8.1.199-renovate-internal-patch-3f2efadeaec0e2232e9b1f043781ad867c43862b":"2021-12-14T18:18:43.606Z","8.1.199":"2021-12-14T18:23:13.975Z","8.1.200-renovate-internal-patch-b8c03b04e9eef2d09ae2a1aabe38adfb1073da99":"2021-12-15T10:24:35.785Z","8.1.200":"2021-12-15T10:28:30.812Z","8.1.201-renovate-internal-patch-f50b379c01439dd0cb3d062f5cf7c9e09cab1e03":"2021-12-16T20:59:37.073Z","8.1.201":"2021-12-16T21:03:32.986Z","8.1.202-renovate-internal-patch-d84e9d2aa3577f2a27bca4421cd1251608008fd8":"2021-12-16T23:00:01.199Z","8.1.202":"2021-12-16T23:03:53.732Z","8.1.203-renovate-balena-jellyfish-core-8-x-09977d39231ddbc5366731abc3d242a089643a4d":"2021-12-18T03:11:05.594Z","8.1.203-renovate-balena-jellyfish-core-8-x-7eefd5932fae05bd7af461934d35b936e7ac2152":"2021-12-18T05:44:59.726Z","8.1.203":"2021-12-18T06:09:29.828Z","8.1.204-renovate-internal-patch-3fd35cf69ae4ce14cddd4b074ca9e814d25adb82":"2021-12-18T06:12:53.027Z","8.1.204-renovate-external-non-major-e4a307bead485c0faf3d84265c137bc0530cf248":"2021-12-18T06:13:47.964Z","8.1.204":"2021-12-18T06:16:36.600Z","8.1.205-renovate-internal-patch-4d17b038473586e5cb2d9f318bf61227e0db8043":"2021-12-18T08:27:12.965Z","8.1.205":"2021-12-18T08:31:50.904Z","8.1.206-joshbwlng-improve-core-context-53bc29cd26edb8a267a4fb8038a8b9fb2f43069d":"2021-12-18T09:40:58.771Z","8.1.206-renovate-internal-patch-08b26df2a2352241fa8be7739e8930e2364d6a42":"2021-12-18T10:31:12.353Z","8.1.206":"2021-12-18T10:35:08.392Z","8.1.207-renovate-internal-patch-017615c4a5b5d6dda5873d6b27a9361112aab111":"2021-12-18T12:20:29.765Z","8.1.207":"2021-12-18T12:23:47.299Z","8.1.208-renovate-external-non-major-74c108218ddccf31018d2bad6ae4fdbea6a20dc9":"2021-12-18T12:28:21.535Z","8.1.208-renovate-internal-patch-512c2e41182ee93531514537a8c21ee92f8f7bd4":"2021-12-18T14:25:27.472Z","8.1.208":"2021-12-18T14:29:37.606Z","8.1.209-renovate-external-non-major-b7cf3fd1b834ce91891b6070aab266536294e7d8":"2021-12-18T14:33:38.659Z","8.1.209":"2021-12-18T14:39:04.013Z","8.1.210-renovate-internal-patch-61794751daa7d9fae3f2a900b7b98ea383c6c4b7":"2021-12-18T16:01:28.534Z","8.1.210-renovate-internal-patch-7264859d44b993c62a5ff56e85bb4047e3ad072c":"2021-12-18T16:04:56.547Z","8.1.210":"2021-12-18T16:08:37.137Z","8.1.211-renovate-internal-patch-61fc75f01f2824bd7c64d2b4a553642b8149e9ce":"2021-12-19T03:46:57.701Z","8.1.211":"2021-12-19T03:50:06.856Z","8.1.212-renovate-internal-patch-d4bdc8edf146ffba7987aa192c1acfe98edf87ca":"2021-12-19T05:33:02.168Z","8.1.212":"2021-12-19T05:37:05.457Z","8.1.213-renovate-internal-patch-43d22cffd5ddfcb29b0db4dac04d1ee7fad430e1":"2021-12-20T11:37:25.760Z","8.1.213":"2021-12-20T11:41:24.676Z","8.1.214-renovate-internal-patch-badd17ab74d15b6193becb190389057aebe300b7":"2021-12-20T18:09:11.147Z","8.1.214":"2021-12-20T18:13:06.960Z","8.1.215-renovate-balena-jellyfish-types-2-x-fdfb9a7134e5c1aae9ea607e127af008e9482798":"2021-12-21T11:30:03.313Z","8.1.215-renovate-internal-patch-5b66d7baa1ff22aebfd63df8b7ae7426ab4df66e":"2021-12-21T15:38:50.773Z","8.1.215":"2021-12-21T15:42:54.012Z","8.1.215-renovate-balena-jellyfish-types-2-x-81ef35dc2e4a513792f86e13e0df6a4830aaefa8":"2021-12-21T15:46:08.681Z","8.1.216-renovate-balena-jellyfish-types-2-x-0bff3b3dd1e89743e685f7930ea77624ae3b879c":"2021-12-21T15:48:40.560Z","8.1.216-renovate-internal-patch-c4a6e851cba0f0407f0cb135b9679782d67f3baa":"2021-12-22T20:05:25.698Z","8.1.216":"2021-12-22T20:10:51.500Z","8.1.217-renovate-balena-jellyfish-types-2-x-e6216cbd82f73b268c094ccf207b6b9e9da16f91":"2021-12-22T20:15:18.575Z","8.1.217-renovate-internal-patch-302005497a086d524b95f51c86881bed2c0cdbc9":"2021-12-22T22:38:00.586Z","8.1.217":"2021-12-22T22:41:52.972Z","8.1.218-renovate-balena-jellyfish-sync-6-x-1f88cdc31cfad30f9bdd2c75517e2626cb201e75":"2021-12-22T22:44:57.850Z","8.1.218-renovate-balena-jellyfish-types-2-x-fb59c79c5738c92c298ba831f8a1fbaacc8d1398":"2021-12-22T22:45:28.067Z","8.1.218":"2021-12-22T22:51:28.213Z","8.1.219-renovate-balena-jellyfish-types-2-x-b3a2f7fa6be6e695c9e50f4c5718c1cd4d36ddea":"2021-12-22T22:55:16.128Z","9.0.0-update-dependencies-c719c9965e26acb37b5188fd27f77aaa42fcacb7":"2021-12-23T01:35:43.981Z","9.0.0-update-dependencies-87d9e9596a12d6326e2b715c84d546d35cb00a76":"2021-12-23T01:49:13.402Z","9.0.0-update-dependencies-4b5cc883727fac8845f86337370348d1fc99bc3a":"2021-12-23T03:01:59.547Z","9.0.0-update-dependencies-20a300e5c2215465dec06cd008ec87355c88ab3f":"2021-12-23T04:35:06.692Z","9.0.0":"2021-12-23T14:19:16.525Z","9.0.1-renovate-balena-jellyfish-types-2-x-dae7874acdf8d65f730c3d90f9cf8cc54b2fd004":"2021-12-23T14:22:51.521Z","9.0.1-fix-processaction-f291923ddbdb36e96080aea1352a3a1a71c16c47":"2021-12-23T15:39:14.177Z","9.0.1":"2021-12-23T15:43:11.648Z","9.0.2-renovate-balena-jellyfish-types-2-x-54e8ca93e06008ab02378faca31b55d67e3ae68e":"2021-12-23T15:48:56.403Z","9.0.2-renovate-balena-jellyfish-queue-2-x-1f962fc7eb9743b2f5f81059ffbd013f68fb7e78":"2021-12-23T17:29:40.112Z","9.0.2":"2021-12-23T17:33:32.181Z","9.0.2-renovate-internal-patch-17633c16c0ee6606ad12c89356428b6e1dc09842":"2021-12-23T17:35:44.050Z","9.0.2-renovate-balena-jellyfish-types-2-x-30ed4d7e3b7c10a11eead725d88ccccd5eaac10c":"2021-12-23T17:36:05.550Z","9.0.3-renovate-internal-patch-63cd7c4a8174948140a5e6b68acb73d545e49fd1":"2021-12-23T17:38:28.697Z","9.0.3-renovate-balena-jellyfish-types-2-x-e92a73fb3019991033e6f9f8fa5c74de0119c4b2":"2021-12-23T17:38:55.646Z","9.0.3":"2021-12-23T17:42:09.347Z","9.0.4-renovate-balena-jellyfish-types-2-x-3da017bb8c6d9d675c84161abaa865bacc748815":"2021-12-23T17:45:22.878Z","9.0.4":"2021-12-23T18:33:15.665Z","9.0.5-renovate-internal-patch-da858b0cefffb961a4da05211f12c63e756dee04":"2021-12-24T03:14:00.906Z","9.0.5":"2021-12-24T03:18:12.866Z","9.0.6-renovate-internal-patch-44b83f82376e33a3bbcc61d6983d534ca854dcf6":"2021-12-24T06:06:27.856Z","9.0.6":"2021-12-24T06:09:51.926Z","9.0.7-renovate-external-non-major-4d0adf002f93f8f929e8c3c2a3ea748f1c32f43e":"2021-12-25T00:06:35.853Z","9.0.7":"2021-12-25T00:10:58.402Z","9.0.8-renovate-internal-patch-f7f45b6a5c7139ba2447feaedba89d273ee629bf":"2021-12-25T00:16:29.397Z","9.0.8":"2021-12-25T00:21:20.426Z","9.0.9-renovate-internal-patch-22ea33c829d8d8e8d548d073f48d8df93a437ecb":"2021-12-25T02:34:53.150Z","9.0.9":"2021-12-25T02:41:13.572Z","9.0.10-renovate-internal-patch-cdff1a3d025bc2e38aff412a85f0c9efde192b10":"2021-12-25T02:52:14.931Z","9.0.10":"2021-12-25T02:58:38.190Z","9.0.10-renovate-internal-patch-caa16a16064f887618b5a44b5bf6083815de3137":"2021-12-25T03:00:16.227Z","9.0.11-renovate-internal-patch-3f32dea281fca9fa5cde6b25188b70498659fd5c":"2021-12-25T03:06:32.740Z","9.0.11":"2021-12-25T03:10:59.770Z","9.0.12-renovate-internal-patch-9bc8ea229e86d6a2d8b17c77df2ca6c76602d478":"2021-12-25T04:41:04.854Z","9.0.12":"2021-12-25T04:45:16.342Z","9.1.0-export-setup-options-a3a534ab7f4aaf83fb05706208426c9eb51ba2cf":"2021-12-27T13:29:54.771Z","9.1.0":"2021-12-27T13:32:57.209Z","9.1.1-renovate-external-non-major-d0354deb0b8c6de50e65d4c191afaaea539b5525":"2022-01-03T04:53:30.294Z","9.1.1":"2022-01-03T04:56:29.009Z","9.1.2-renovate-internal-patch-fb7397ca93727f4e48034ff52825e0a8f297dbd0":"2022-01-03T05:02:58.696Z","9.1.2":"2022-01-03T05:06:39.757Z","9.1.3-renovate-internal-patch-4674864b794b4ae75a14f12d16cc8239a3d608af":"2022-01-03T12:19:02.003Z","9.1.3":"2022-01-03T12:23:37.559Z","9.1.4-renovate-internal-patch-dc4ac14b062a965e9488af46c1c059a85434fd23":"2022-01-03T15:16:21.744Z","9.1.4":"2022-01-03T15:19:54.681Z","9.1.5-renovate-internal-patch-b0051bf15e09134597bb0d187d308b3ddbef62d3":"2022-01-03T15:24:43.163Z","9.1.5":"2022-01-03T15:29:20.237Z","9.1.6-renovate-internal-patch-4793eeddffce58e3acb63be4f2bd3da012a9165a":"2022-01-03T18:21:18.572Z","9.1.6":"2022-01-03T18:25:27.874Z","9.1.7-joshbwlng-fix-combinatorics-import-80d8c684f0e9b84b59b64b93023fa2a2353137af":"2022-01-04T07:55:11.649Z","9.1.7-joshbwlng-fix-combinatorics-import-4c3a4f102ba6efb94a469f79faeae83bc1c644e3":"2022-01-04T08:29:18.135Z","9.1.7":"2022-01-04T08:39:26.696Z","9.1.8-renovate-internal-patch-5d295b9062295ae3ba97aa6e4767dc6599c017f7":"2022-01-04T10:56:23.078Z","9.1.8":"2022-01-04T11:00:11.449Z","9.1.9-renovate-internal-patch-58ed8f3b55355485833646380a8a77a2e1cfb536":"2022-01-05T10:19:32.469Z","9.1.9":"2022-01-05T10:23:52.347Z","9.1.10-joshbwlng-fix-2b0730fbc7ee1de9de70785c43ac87a79e9698d3":"2022-01-06T03:00:07.116Z","9.1.10-joshbwlng-fix-69e1a5061dbc044c78ea4746bacf0a2e95f7cf2d":"2022-01-06T04:23:36.857Z","9.1.10-joshbwlng-fix-fb703c718e1b5c11c91c9b1d074479575c61c3fe":"2022-01-06T04:34:32.574Z","9.1.10":"2022-01-06T04:40:09.326Z","9.1.11-joshbwlng-fix-2-d4d41f103392c629f557bbac34db37c40bf7dff1":"2022-01-06T05:42:20.353Z","9.1.11":"2022-01-06T05:45:22.933Z","9.2.0-joshbwlng-export-test-context-d9b3bbcdf32dbc863254f9ba845d4b06e154223f":"2022-01-06T06:40:37.735Z","9.2.0":"2022-01-06T06:44:50.568Z","9.2.1-renovate-internal-patch-5872f2d40ee9bc398e452fd6d715876fbb05dc72":"2022-01-06T12:19:41.191Z","9.2.1":"2022-01-06T12:25:21.338Z","9.2.2-joshbwlng-fix-3-848469ed4a6b3cdc2f3df7480806972be2773854":"2022-01-07T03:16:39.074Z","9.2.2-joshbwlng-fix-3-a3ab2fd1b21bae3be199c85fc2c2386ba591bb3c":"2022-01-07T03:54:33.581Z","9.2.2":"2022-01-07T04:05:58.223Z","9.2.3-joshbwlng-update-types-654b2f9c4fda9811838dbb580933feb34f992255":"2022-01-07T04:35:56.613Z","9.2.3":"2022-01-07T04:42:32.236Z","9.2.4-renovate-external-non-major-79daaf299b17b8da6bef5d2c23189f02ae05df3c":"2022-01-08T01:34:52.094Z","9.2.4-renovate-internal-patch-e91943f91a039fbe4c67da978bb2d0f1e5bcd9d6":"2022-01-08T01:35:15.082Z","9.2.4":"2022-01-08T01:38:53.417Z","9.2.5-renovate-internal-patch-f9cfa0a96b671db6ae09d687429484dd4dbc5359":"2022-01-08T01:46:23.130Z","9.2.5-renovate-internal-patch-0bd5805e767277b6d873bee8555a1b8c408e2ce0":"2022-01-08T03:47:51.194Z","9.2.5":"2022-01-08T03:52:04.640Z","9.2.6-renovate-internal-patch-d8ea40efff75e85055a771592ae16a7e2c709aa5":"2022-01-08T05:29:11.120Z","9.2.6":"2022-01-08T05:32:56.329Z","9.2.7-renovate-internal-patch-8fe63ff4ccaa5303ddf565cc78c51ae50a6214ce":"2022-01-08T09:10:29.563Z","9.2.7":"2022-01-08T09:14:17.439Z","9.2.8-renovate-internal-patch-03c8c7bc21b48266ad785b9fe4cce41f0bd7cda6":"2022-01-08T13:00:03.332Z","9.2.8":"2022-01-08T13:03:45.203Z","9.2.9-renovate-internal-patch-6c39d6334db9b22f70f2109dc922cfa9bf453036":"2022-01-08T15:55:55.795Z","9.2.9":"2022-01-08T15:58:59.527Z","9.2.10-renovate-balena-jellyfish-sync-6-x-5e196ef54ad769268cfb6b2e1f05db69bc245639":"2022-01-10T09:01:24.290Z","9.2.10":"2022-01-10T09:05:15.252Z","9.2.11-renovate-internal-patch-4140a50b821fba9ca034609886eba7acd203e47c":"2022-01-11T03:32:31.773Z","9.2.11":"2022-01-11T03:36:38.017Z","9.2.12-joshbwlng-update-readme-a31ea03c39aadd83a89c20511ac691727ead930f":"2022-01-29T04:59:48.299Z","9.2.12":"2022-01-29T05:04:33.196Z"},"bugs":{"url":"https://github.com/product-os/jellyfish-test-harness/issues"},"author":{"name":"Balena.io.","email":"hello@balena.io"},"license":"AGPL-3.0","homepage":"https://github.com/product-os/jellyfish-test-harness#readme","repository":{"url":"git+https://github.com/product-os/jellyfish-test-harness.git","type":"git"},"description":"Test harness helpers for Jellyfish repos","maintainers":[{"name":"balena.io","email":"accounts+npm@balena.io"},{"name":"page","email":"page@balena.io"}],"readme":"**Notice: This utility has been discontinued. Test utilities are now provided by the same modules that provide the functionality. See the test utilities exported by [`jellyfish-core`](https://github.com/product-os/jellyfish-core) and [`jellyfish-worker`](https://github.com/product-os/jellyfish-worker).**\n\n# Jellyfish Test Harness\n\nTest harness helpers for Jellyfish repos.\n\n# Usage\n\nBelow are examples on how to use this library:\n\n## Sync integration translate tests\n\nBelow is an overview of how to call the scenario runner to execute translate tests.\nReal world examples can be found in many Jellyfish plugins as well.\n\n```js\nimport { syncIntegrationScenario } from '@balena/jellyfish-test-harness';\nimport webhooks from './webhooks/my-integration-name';\n\nsyncIntegrationScenario.run(\n  {\n    test,\n    before: beforeAll,\n    beforeEach,\n    after: afterAll,\n    afterEach,\n  }, {\n    // The directory in which your sync integration test and webhooks directory are located\n    basePath: __dirname,\n\n    // Optional additional test hooks\n    before: (test) => {},\n    beforeEach: (test) => {},\n    after: (test) => {},\n    afterEach: (test) => {},\n\n    // An optional method to be called to prepare card data before inserting it\n    prepareEvent: (event: any) => { return event },\n\n    // Additional options to pass to the webhook scenario runner\n    options: {},\n\n    // A list of plugin classes required to run the tests\n    plugins: [],\n\n    // A list of card slugs that must be loaded before running any tests\n    cards: [ ... ],\n\n    // The scenarios that will be run\n    scenarios: webhooks,\n\n    // The URL of the integration\n    baseUrl: 'https://<my-integration-endpoint>',\n\n    // The regular expression picking paths on the baseUrl to provide mock responses to\n    stubRegex: /.*/,\n\n    // The slug of the integration under test\n    source: '<my-integration>',\n\n    // A callback to verify if a request is authorized\n    isAuthorized: (request) => {\n      ...\n    },\n  },\n);\n```\n\n# Documentation\n\n[**Writing translate tests**](https://github.com/product-os/jellyfish-test-harness/blob/master/doc/writing-translate-tests.markdown)\n\n[![Publish Documentation](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml/badge.svg)](https://github.com/product-os/jellyfish-test-harness/actions/workflows/publish-docs.yml)\n\nVisit the website for complete documentation: https://product-os.github.io/jellyfish-test-harness\n\n","readmeFilename":"README.md"}